:root{--navy-950:#081c2d;--navy-900:#0d2b43;--navy-800:#123b59;--blue-600:#1677ee;--blue-500:#2f8cf4;--blue-100:#eaf3ff;--ink-950:#10213b;--ink-700:#536680;--ink-500:#8290a4;--line:#e2e9f2;--surface:#fff;--surface-soft:#f5f8fc;--green:#16a66b;--green-soft:#e7f8f0;--orange:#f59a23;--orange-soft:#fff4e3;--red:#e54b63;--red-soft:#fff0f2;--violet:#7d58dc;--shadow-sm:0 1px 3px #112a470f, 0 5px 18px #112a470a;--shadow-md:0 12px 30px #13365817;color:var(--ink-950);background:var(--surface-soft);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--surface-soft)}button{font:inherit}button:focus-visible{outline-offset:2px;outline:3px solid #1677ee40}.obras-shell{background:var(--surface-soft);min-height:100vh;display:flex}.obras-sidebar{z-index:30;color:#e5effa;background:linear-gradient(168deg, var(--navy-900) 0%, var(--navy-950) 68%, #071725 100%);flex-direction:column;width:254px;padding:24px 14px 16px;transition:width .22s,transform .22s;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:8px 0 26px #081c2d1a}.brand-lockup{align-items:center;gap:11px;padding:0 10px 25px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#1688f4,#2d5de3);border:1px solid #65b3ff59;border-radius:11px;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 7px 18px #0b65d047}.brand-copy{flex-direction:column;line-height:1;display:flex}.brand-copy strong{letter-spacing:-.045em;font-size:20px;font-weight:760}.brand-copy span{color:#7bbdff;letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:12px;font-weight:680}.mobile-close{color:#c5d8ea;cursor:pointer;background:0 0;border:0;margin-left:auto;display:none}.sidebar-context{background:#ffffff0d;border:1px solid #93bee126;border-radius:10px;margin:0 4px 20px;padding:13px 13px 12px}.context-label,.context-status{color:#8ba9c3;letter-spacing:.08em;text-transform:uppercase;font-size:10px;display:block}.context-company{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 8px;font-size:13px;font-weight:680;display:block;overflow:hidden}.context-status{color:#94d8b7;letter-spacing:0;text-transform:none;align-items:center;gap:6px;font-size:10px;display:flex}.status-dot{background:#38c98c;border-radius:999px;width:6px;height:6px;box-shadow:0 0 0 3px #38c98c21}.obras-nav{scrollbar-width:thin;scrollbar-color:#9dc4e338 transparent;flex:1;padding:0 1px;overflow-y:auto}.nav-group-toggle{color:#6f8ea9;cursor:pointer;letter-spacing:.12em;text-align:left;text-transform:uppercase;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;width:100%;min-height:28px;margin:0 0 4px;padding:0 12px;font-size:10px;font-weight:750;display:flex}.nav-group-toggle svg{color:#7fa1bc;flex:none;transition:transform .16s}.nav-group-label{color:#6f8ea9;letter-spacing:.12em;text-transform:uppercase;margin:0 12px 7px;font-size:10px;font-weight:750;display:block}.nav-item{color:#c8d8e8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;min-height:39px;margin:2px 0;padding:0 12px;font-size:13px;transition:color .16s,background .16s,transform .16s;display:flex}.nav-item svg{color:#88a9c7;flex:none}.nav-item:hover{color:#fff;background:#4f97dc21}.nav-item:hover svg{color:#b6dcff}.nav-item.is-active{color:#fff;background:linear-gradient(90deg,#1679ec,#1f62d8);box-shadow:0 7px 16px #0a6be538}.nav-item.is-active svg{color:#fff}.nav-skeleton{background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a) 0 0/220% 100%;border-radius:8px;height:29px;margin:5px 7px;animation:1.4s infinite shimmer;display:block}.sidebar-bottom{margin-top:16px}.sidebar-help{background:linear-gradient(145deg,#206ab545,#133f663d);border:1px solid #52a1eb57;border-radius:9px;align-items:center;gap:9px;min-height:65px;padding:11px 10px;display:flex}.help-icon{color:#fff;background:#2d8bf4;border-radius:8px;flex:none;place-items:center;width:29px;height:29px;display:grid}.sidebar-help div:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.sidebar-help strong{color:#fff;font-size:12px}.sidebar-help span{color:#9fb9d0;font-size:10px;line-height:1.25}.sidebar-help>svg{color:#9ec6ed}.user-lockup{align-items:center;gap:9px;padding:17px 8px 0;display:flex}.avatar{color:#0752af;background:#d7eaff;border-radius:50%;flex:none;place-items:center;font-weight:750;display:grid}.avatar-sidebar{width:31px;height:31px;font-size:10px}.user-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.user-copy strong{color:#e8f3fb;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.user-copy span{color:#7795af;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.user-lockup>svg{color:#7795af}.user-lockup.sidebar-user-context{background:#ffffff0d;border:1px solid #93bee129;border-radius:9px;min-width:0;margin:-10px 4px 14px;padding:9px}.sidebar-user-context .avatar-sidebar{width:29px;height:29px}.obras-main{flex:1;min-width:0;margin-left:254px;transition:margin-left .22s}.is-collapsed .brand-lockup{justify-content:center;padding-left:0;padding-right:0}.is-collapsed .brand-copy,.is-collapsed .sidebar-context,.is-collapsed .nav-group-label,.is-collapsed .nav-group-toggle span,.is-collapsed .nav-item span,.is-collapsed .sidebar-help div,.is-collapsed .sidebar-help>svg,.is-collapsed .user-copy,.is-collapsed .user-lockup>svg{display:none}.is-collapsed .nav-group-toggle,.is-collapsed .nav-item{justify-content:center;padding:0}.is-collapsed .sidebar-help{justify-content:center;padding:8px}.is-collapsed .user-lockup{justify-content:center;padding-left:0;padding-right:0}.obras-topbar{border-bottom:1px solid var(--line);background:#fffffff0;align-items:center;gap:16px;height:68px;padding:0 31px;display:flex}.mobile-menu,.collapse-menu{width:32px;height:32px;color:var(--ink-700);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;display:grid}.mobile-menu{display:none}.collapse-menu:hover,.mobile-menu:hover{color:var(--blue-600);background:var(--blue-100)}.global-search{color:#8190a5;background:#f5f8fc;border:1px solid #edf1f6;border-radius:9px;align-items:center;gap:10px;width:min(480px,48vw);height:38px;padding:0 11px;font-size:12px;display:flex}.global-search svg{color:#66809c;flex:none}.global-search span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}kbd{color:#8b9aab;background:#fff;border:1px solid #dfe7ef;border-radius:4px;padding:3px 5px;font-size:10px}.topbar-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.icon-button{color:#536b88;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;display:grid;position:relative}.icon-button:hover{color:var(--blue-600);background:var(--blue-100)}.has-notification span{color:#fff;background:var(--red);border:2px solid #fff;border-radius:999px;place-items:center;width:auto;min-width:16px;height:16px;padding:0 3px;font-size:9px;font-weight:750;display:grid;position:absolute;top:-2px;right:-1px}.notification-center{position:relative}.notification-popover{z-index:90;width:min(410px,100vw - 24px);max-height:min(72vh,570px);color:var(--ink-950);border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;margin:0;padding:0;display:flex;position:absolute;inset:calc(100% + 12px) -48px auto auto;overflow:hidden;box-shadow:0 16px 42px #081c2d33}.notification-popover-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.notification-popover-header>div{flex-direction:column;gap:3px;min-width:0;display:flex}.notification-popover-header strong{font-size:14px}.notification-popover-header small,.notification-item-copy small{color:var(--ink-500);font-size:10px}.notification-mark-all{color:var(--blue-600);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:5px 7px;font-size:10px}.notification-mark-all:hover{background:var(--blue-100)}.notification-list{margin:0;padding:0;list-style:none;overflow-y:auto}.notification-list li+li{border-top:1px solid var(--line)}.notification-item{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:flex-start;gap:10px;padding:13px 15px;display:flex}.notification-item:hover{background:var(--surface-soft)}.notification-item.is-unread{background:color-mix(in srgb, var(--blue-100) 55%, var(--surface))}.notification-item.is-unread:hover{background:var(--blue-100)}.notification-dot{background:0 0;border-radius:50%;flex:none;width:7px;height:7px;margin-top:5px}.notification-item.is-unread .notification-dot{background:var(--blue-600);box-shadow:0 0 0 3px #1677ee1f}.notification-item-copy{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.notification-item-copy strong{font-size:12px;line-height:1.35}.notification-item-copy>span{color:var(--ink-700);font-size:11px;line-height:1.4}.notification-item-copy small{line-height:1.4}.notification-empty,.notification-error{color:var(--ink-500);margin:0;padding:20px 16px;font-size:12px;line-height:1.5}.notification-error{color:var(--red);border-bottom:1px solid var(--line)}.topbar-company{color:#324b6c;border:1px solid #dfe7f0;border-radius:8px;align-items:center;gap:8px;max-width:200px;margin-left:5px;padding:9px 12px;font-size:12px;display:flex}.topbar-company span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.avatar-top{width:32px;height:32px;font-size:11px}.obras-content{max-width:1600px;margin:0 auto;padding:30px 31px 42px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:23px;display:flex}.eyebrow,.panel-kicker{color:var(--blue-600);letter-spacing:.13em;font-size:10px;font-weight:760;display:block}.page-heading h1{color:var(--ink-950);letter-spacing:-.045em;margin:6px 0 5px;font-size:clamp(27px,3vw,37px);font-weight:790;line-height:1.1}.page-heading p{color:var(--ink-700);margin:0;font-size:14px}.heading-quote{color:#70809a;text-align:right;max-width:300px;padding-bottom:4px;font-size:13px;font-style:italic;line-height:1.45}.page-heading.is-module-heading{align-items:center;margin-bottom:20px}.page-heading.is-module-heading .eyebrow{display:none}.page-heading.is-module-heading h1{letter-spacing:-.03em;margin:0 0 4px;font-size:22px}.page-heading.is-module-heading p{font-size:12px}.access-banner{min-height:64px;box-shadow:var(--shadow-sm);border:1px solid;border-radius:11px;align-items:center;gap:13px;margin-bottom:17px;padding:12px 15px;display:flex}.access-banner.is-blocked{background:linear-gradient(90deg,#fffaf2,#fffdf9);border-color:#f2d7b4}.access-banner.is-enabled{background:linear-gradient(90deg,#f0fbf6,#fbfffd);border-color:#bce7d3}.access-banner-icon{border-radius:9px;flex:none;place-items:center;width:37px;height:37px;display:grid}.is-blocked .access-banner-icon{color:#bd7117;background:#ffeed5}.is-enabled .access-banner-icon{color:#138958;background:#d9f5e7}.access-banner-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.access-banner-copy strong{color:#354966;font-size:13px}.access-banner-copy span{color:#75839a;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.access-pill{color:#986117;white-space:nowrap;background:#fff0db;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:720}.is-enabled .access-pill{color:#16865b;background:#ddf6e9}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.kpi-card{border:1px solid var(--line);background:var(--surface);min-height:108px;box-shadow:var(--shadow-sm);border-radius:10px;align-items:center;gap:12px;padding:17px 16px;display:flex;overflow:hidden}.kpi-icon{border-radius:9px;flex:none;place-items:center;width:40px;height:40px;display:grid}.kpi-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.kpi-copy span{color:#64758f;font-size:11px;font-weight:600}.kpi-copy strong{color:var(--ink-950);letter-spacing:-.04em;font-size:24px;font-weight:790;line-height:1}.kpi-copy small{color:#93a0b0;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.accent-blue .kpi-icon{color:var(--blue-600);background:var(--blue-100)}.accent-green .kpi-icon{color:#149866;background:var(--green-soft)}.accent-orange .kpi-icon{color:#d88415;background:var(--orange-soft)}.accent-red .kpi-icon{color:var(--red);background:var(--red-soft)}.dashboard-grid,.lower-grid{grid-template-columns:minmax(0,1.36fr) minmax(340px,.84fr);gap:16px;margin-bottom:16px;display:grid}.panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-radius:10px;padding:19px 17px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.panel-heading h2{color:var(--ink-950);letter-spacing:-.025em;margin:5px 0 0;font-size:16px;font-weight:760}.panel-link{color:var(--blue-600);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;padding:2px 0;font-size:11px;font-weight:650;display:inline-flex}.panel-link:disabled{color:#a8b5c4;cursor:not-allowed}.panel-count{color:#5f728d;background:#f2f6fa;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:700}.empty-chart{background:linear-gradient(135deg,#fbfdff,#f7fafc);border:1px dashed #dfe7ef;border-radius:9px;align-items:center;gap:27px;min-height:210px;padding:8px 22px 9px;display:flex}.empty-chart-ring{background:conic-gradient(#d9e4ef 0 100%);border-radius:50%;flex:none;place-items:center;width:152px;height:152px;display:grid;position:relative}.empty-chart-ring:after{content:"";background:#fff;border-radius:50%;width:112px;height:112px;position:absolute}.empty-chart-ring>div{z-index:1;flex-direction:column;align-items:center;display:flex}.empty-chart-ring strong{color:var(--ink-950);letter-spacing:-.05em;font-size:26px}.empty-chart-ring span{color:#71829a;font-size:11px}.empty-chart-copy{flex-direction:column;align-items:flex-start;max-width:290px;display:flex}.empty-icon{width:32px;height:32px;color:var(--blue-600);background:var(--blue-100);border-radius:8px;place-items:center;margin-bottom:10px;display:grid}.empty-chart-copy strong,.empty-list strong{color:#273e5c;font-size:13px}.empty-chart-copy p,.empty-list p{color:#7b8ba0;margin:6px 0 13px;font-size:11px;line-height:1.5}.secondary-button,.primary-button{cursor:pointer;border-radius:7px;align-items:center;gap:7px;min-height:34px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.secondary-button{color:#3970aa;background:#f3f8fe;border:1px solid #cbdff3}.secondary-button:hover:not(:disabled){background:#eaf4ff;border-color:#8dbced}.secondary-button:disabled{color:#98a8b8;cursor:not-allowed;background:#f7f9fb;border-color:#e0e7ee}.primary-button{color:#fff;background:#1677ee;border:1px solid #1677ee;box-shadow:0 5px 12px #1677ee2e}.primary-button:hover{background:#0867dc}.module-status-list{flex-direction:column;gap:3px;display:flex}.module-status-row{border-bottom:1px solid #f0f3f7;align-items:center;gap:8px;min-height:30px;padding:0 5px;display:flex}.module-status-row:last-child{border-bottom:0}.module-state-dot{border-radius:50%;width:7px;height:7px}.module-state-dot.is-enabled{background:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.module-state-dot.is-disabled{background:#c9d3de}.module-name{color:#4d617c;flex:1;font-size:11px}.module-state-label{font-size:10px;font-weight:700}.module-state-label.is-enabled{color:#179464}.module-state-label.is-disabled{color:#9ba8b7}.panel-footer-note{color:#96a3b2;border-top:1px solid #eef2f6;align-items:center;gap:6px;margin-top:14px;padding-top:12px;font-size:10px;display:flex}.empty-list{background:#fbfcfe;border:1px dashed #e0e7ef;border-radius:8px;align-items:center;gap:12px;min-height:112px;padding:0 10px;display:flex}.empty-list-icon{color:#6d89aa;background:#edf4fb;border-radius:9px;flex:none;place-items:center;width:37px;height:37px;display:grid}.empty-list p{margin-bottom:0}.activity-list{flex-direction:column;gap:2px;display:flex}.activity-row{border-bottom:1px solid #eef2f6;align-items:flex-start;gap:10px;min-height:48px;padding:8px 5px;display:flex}.activity-row:last-child{border-bottom:0}.activity-dot{width:28px;height:28px;color:var(--blue-600);background:var(--blue-100);border-radius:8px;flex:none;place-items:center;display:grid}.activity-row div:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.activity-row strong{color:#425975;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.activity-row span{color:var(--ink-500);font-size:10px}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.quick-action{color:#45617f;cursor:pointer;text-align:left;background:#fcfdff;border:1px solid #e1e8f0;border-radius:8px;align-items:center;gap:8px;min-height:53px;padding:9px 10px;font-size:11px;font-weight:650;display:flex}.quick-action svg:first-child{color:var(--blue-600)}.quick-action:hover:not(:disabled){background:#f2f8ff;border-color:#a7c8eb}.quick-action.is-disabled{color:#a2afbd;cursor:not-allowed}.quick-action.is-disabled svg:first-child{color:#aab8c6}.quick-action svg:last-child{color:#b7c2ce;margin-left:auto}.dashboard-footer-card{min-height:126px;box-shadow:var(--shadow-sm);background:linear-gradient(104deg,#123a5c,#155884 60%,#dbeaf4 60%,#f6fafc);border:1px solid #cfe0ef;border-radius:10px;align-items:stretch;display:flex;overflow:hidden}.footer-card-visual{color:#7ebff4;background:linear-gradient(155deg,#164a70,#102d48);flex:none;place-items:center;width:150px;display:grid;position:relative;overflow:hidden}.footer-building{z-index:1;background:linear-gradient(#1b74b14d,#061f3466);border:1px solid #8bccf840;border-radius:10px 10px 2px 2px;place-items:center;width:85px;height:78px;display:grid}.footer-grid-lines{opacity:.35;background-image:linear-gradient(#77bded2b 1px,#0000 1px),linear-gradient(90deg,#77bded2b 1px,#0000 1px);background-size:17px 17px;position:absolute;inset:0;transform:perspective(100px)rotateX(25deg)scale(1.5)}.footer-card-copy{color:#fff;max-width:450px;padding:22px 24px}.footer-card-copy .panel-kicker{color:#8dcef7}.footer-card-copy h2{letter-spacing:-.035em;margin:5px 0 7px;font-size:20px}.footer-card-copy p{color:#b7d5e9;max-width:390px;margin:0;font-size:11px;line-height:1.45}.footer-card-quote{color:#184567;flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:190px;padding:18px 22px;display:flex}.footer-card-quote svg{color:#2877b8}.footer-card-quote strong{font-size:13px}.footer-card-quote span{color:#66829b;font-size:10px}.state-card,.module-landing{border:1px solid var(--line);background:var(--surface);min-height:180px;box-shadow:var(--shadow-sm);border-radius:11px;align-items:center;gap:18px;padding:27px;display:flex}.state-card h2,.module-landing h2{color:var(--ink-950);letter-spacing:-.035em;margin:0 0 7px;font-size:20px}.state-card p,.module-landing p{max-width:560px;color:var(--ink-700);margin:0 0 15px;font-size:13px;line-height:1.5}.state-icon,.module-landing-icon{width:53px;height:53px;color:var(--blue-600);background:var(--blue-100);border-radius:13px;flex:none;place-items:center;display:grid}.state-icon-error{color:#cf5b68;background:var(--red-soft)}.error-state{background:#fffafb;border-color:#f1d5dc}.module-landing{align-items:flex-start}.module-landing-copy{flex:1}.module-landing-icon{color:var(--blue-600);background:var(--blue-100)}.module-landing.is-blocked .module-landing-icon{color:#ae7a29;background:#fff2dc}.module-landing-meta{border-left:1px solid var(--line);flex-direction:column;gap:4px;min-width:170px;padding:13px 0 0 17px;display:flex}.module-landing-meta span{color:#8b99aa;font-size:10px}.module-landing-meta strong{color:#405977;margin-bottom:9px;font-size:12px}.module-landing-actions{gap:8px;display:flex}.muted-copy{color:#8d9bac;font-size:12px}.loading-grid{grid-template-columns:1.4fr 1fr 1fr;gap:16px;display:grid}.loading-card{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;gap:13px;min-height:195px;padding:21px;display:flex}.loading-card span{background:linear-gradient(90deg,#eef3f8,#f9fbfd,#eef3f8) 0 0/220% 100%;border-radius:5px;height:13px;animation:1.4s infinite shimmer;display:block}.loading-card span:first-child{width:48%;height:21px}.loading-card span:nth-child(2){width:88%}.loading-card span:nth-child(3){width:70%}.loading-card span:nth-child(4){width:55%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}.sidebar-scrim{display:none}@media (max-width:1240px){.obras-content,.obras-topbar{padding-left:23px;padding-right:23px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.lower-grid{grid-template-columns:1fr}}@media (max-width:840px){.obras-sidebar{width:254px;transform:translate(-102%)}.obras-sidebar.is-open{transform:translate(0)}.obras-main,.is-collapsed .obras-main{margin-left:0;transition:none}.is-collapsed .obras-sidebar{width:254px}.is-collapsed .brand-copy,.is-collapsed .sidebar-context,.is-collapsed .nav-group-label,.is-collapsed .nav-item span,.is-collapsed .sidebar-help div,.is-collapsed .sidebar-help>svg,.is-collapsed .user-copy,.is-collapsed .user-lockup>svg{display:initial}.is-collapsed .brand-lockup{justify-content:initial;padding-left:10px;padding-right:10px}.is-collapsed .nav-item{justify-content:initial;padding-left:12px;padding-right:12px}.is-collapsed .sidebar-help{justify-content:initial;padding:11px 10px}.is-collapsed .user-lockup{justify-content:initial;padding-left:8px;padding-right:8px}.mobile-menu{display:grid}.collapse-menu{display:none}.mobile-close{display:block}.sidebar-scrim{z-index:20;background:#07172559;border:0;display:block;position:fixed;inset:0}.heading-quote{display:none}.global-search{width:min(420px,100%)}.topbar-company{display:none}}@media (max-width:620px){.obras-topbar{gap:5px;height:59px;padding:0 15px}.topbar-actions{gap:2px}.notification-popover{right:-38px}.global-search{flex:1;width:auto;margin-left:4px}.global-search kbd,.icon-button:nth-child(2){display:none}.avatar-top{margin-left:3px}.obras-content{padding:22px 15px 30px}.page-heading{margin-bottom:18px}.page-heading h1{font-size:27px}.page-heading p{font-size:12px}.access-banner{flex-wrap:wrap;align-items:flex-start}.access-banner-copy{min-width:calc(100% - 51px)}.access-banner-copy span{white-space:normal}.access-pill{margin-left:50px}.kpi-grid{grid-template-columns:1fr 1fr;gap:9px}.kpi-card{gap:8px;min-height:95px;padding:12px 10px}.kpi-icon{width:33px;height:33px}.kpi-copy strong{font-size:20px}.kpi-copy span{font-size:10px}.kpi-copy small{font-size:9px}.panel{padding:15px 13px}.empty-chart{text-align:center;flex-direction:column;justify-content:center;gap:16px;min-height:300px;padding:18px}.empty-chart-copy{align-items:center}.empty-chart-copy p{margin-bottom:11px}.quick-actions{gap:7px}.quick-action{min-height:48px;padding:8px;font-size:10px}.dashboard-footer-card{flex-direction:column}.footer-card-visual{width:100%;height:80px}.footer-card-copy{padding:17px}.footer-card-copy h2{font-size:17px}.footer-card-quote{padding:16px 17px}.module-landing,.state-card{flex-direction:column;align-items:flex-start;padding:20px}.module-landing-meta{border-top:1px solid var(--line);border-left:0;width:100%;min-width:0;padding:14px 0 0}.loading-grid{grid-template-columns:1fr}.loading-card{min-height:130px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.module-workspace{flex-direction:column;gap:15px;display:flex}.composite-module-workspace{flex-direction:column;gap:12px;display:flex}.module-submodule-tabs{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:9px;flex-wrap:wrap;gap:5px;padding:4px;display:flex}.module-submodule-tab{min-height:33px;color:var(--ink-700);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:0 12px;font-size:10px;font-weight:750}.module-submodule-tab:hover{color:var(--blue-600);background:var(--blue-100)}.module-submodule-tab.is-active{color:var(--blue-600);background:#edf6ff;border-color:#c8def4;box-shadow:0 2px 7px #1677ee17}.module-action-hub{grid-template-columns:minmax(0,1fr) 328px;align-items:stretch;gap:15px;display:grid}.module-intro-card{min-height:148px;box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#f5faff 0%,#ebf5ff 100%);border:1px solid #cfe2f3;border-radius:11px;align-items:center;padding:25px 26px;display:flex}.module-intro-copy{max-width:650px}.module-intro-copy h2{color:var(--ink-950);letter-spacing:-.035em;margin:6px 0 7px;font-size:21px}.module-intro-copy p{max-width:560px;color:var(--ink-700);margin:0;font-size:12px;line-height:1.5}.module-actions-card{border:1px solid var(--line);background:var(--surface);min-height:148px;box-shadow:var(--shadow-sm);border-radius:11px;flex-direction:column;justify-content:center;padding:19px 14px;display:flex}.module-actions-kicker{color:var(--blue-600);letter-spacing:.08em;text-transform:none;margin:0 0 7px;padding:0;font-size:10px;font-weight:760}.module-actions-card h3{color:var(--ink-950);letter-spacing:-.015em;margin:0 0 10px;font-size:14px}.module-action-button{color:#315473;background:var(--surface);cursor:pointer;text-align:left;border:1px solid #cfe0ef;border-radius:7px;justify-content:space-between;align-items:center;gap:9px;width:100%;min-height:35px;margin-top:6px;padding:0 10px;font-size:10px;font-weight:750;transition:color .16s,border-color .16s,background .16s,transform .16s;display:flex}.module-action-button:hover{color:var(--blue-600);background:var(--blue-100);border-color:#9fc8eb;transform:translateY(-1px)}.module-action-button.is-primary{color:#fff;background:linear-gradient(90deg,#1677ee,#1c65d8);border-color:#1c69cf;box-shadow:0 5px 12px #1677ee2e}.module-action-button.is-primary:hover{color:#fff;background:linear-gradient(90deg,#126bdd,#155ac9);border-color:#125bbd}.module-action-button svg{flex:none}.report-workspace,.assistant-workspace{flex-direction:column;gap:15px;display:flex}.report-module-workspace{gap:15px}.workspace-mode-tabs{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:10px;flex-wrap:wrap;gap:7px;padding:5px;display:flex}.workspace-mode-tab{min-height:39px;color:var(--ink-700);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:11px;font-weight:750;display:inline-flex}.workspace-mode-tab:hover{color:var(--blue-600);background:var(--blue-100)}.workspace-mode-tab.is-active{color:var(--blue-600);background:#edf6ff;border-color:#c8def4;box-shadow:0 3px 9px #1677ee1a}.purchase-approval-tabs{margin-bottom:14px}.workspace-mode-tab svg{flex:none}.report-toolbar,.assistant-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:21px;display:flex}.report-toolbar-actions{align-items:center;gap:8px;display:flex}.report-toolbar h2,.assistant-hero h2{color:var(--ink-950);letter-spacing:-.04em;margin:5px 0 6px;font-size:22px}.report-toolbar p,.assistant-hero p{max-width:600px;color:var(--ink-700);margin:0;font-size:12px;line-height:1.5}.report-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.report-metric{border:1px solid var(--line);background:var(--surface);min-height:117px;box-shadow:var(--shadow-sm);border-radius:10px;flex-direction:column;justify-content:center;gap:5px;padding:17px;display:flex}.report-metric span{color:var(--ink-700);font-size:11px;font-weight:700}.report-metric strong{color:var(--ink-950);letter-spacing:-.05em;font-size:26px}.report-metric small{color:var(--ink-500);font-size:10px}.report-note,.assistant-card{color:#41627f;background:#f6fbff;border:1px solid #cde1f1;border-radius:10px;align-items:flex-start;gap:11px;padding:17px;display:flex}.report-note svg{color:var(--blue-600);flex:none}.report-note strong,.assistant-card strong{color:#315473;font-size:12px}.report-note p,.assistant-card p{color:#6f849a;margin:5px 0 0;font-size:11px;line-height:1.45}.report-context{color:var(--ink-500);margin:0;font-size:10px}.assistant-hero{justify-content:flex-start}.assistant-icon{color:#fff;background:linear-gradient(135deg,#7d58dc,#4d82e8);border-radius:14px;flex:none;place-items:center;width:52px;height:52px;display:grid;box-shadow:0 8px 18px #5866d538}.assistant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.assistant-prompt,.assistant-answer{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:10px;padding:17px}.assistant-prompt label{color:var(--ink-700);margin-bottom:7px;font-size:11px;font-weight:700;display:block}.assistant-prompt>div{gap:9px;display:flex}.assistant-prompt input{min-width:0;min-height:38px;color:var(--ink-950);background:var(--surface);font:inherit;border:1px solid #d8e3ee;border-radius:7px;outline:0;flex:1;padding:0 11px;font-size:12px}.assistant-prompt input:focus{border-color:#72abe1;box-shadow:0 0 0 3px #1677ee1a}.assistant-answer{background:#f6fcf8;border-color:#bce7d3}.assistant-answer strong{color:#18734f;font-size:12px}.assistant-answer p{color:#426b58;margin:6px 0 0;font-size:12px;line-height:1.55}.assistant-card{flex-direction:column;gap:5px;min-height:145px}.assistant-card ul{color:#6f849a;flex-direction:column;gap:7px;margin:3px 0 0;padding-left:17px;font-size:11px;line-height:1.4;display:flex}.assistant-card b{color:#315473}.workspace-toolbar{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:11px;justify-content:space-between;align-items:center;gap:17px;padding:17px 19px;display:flex}.workspace-title,.workspace-actions,.form-heading,.form-actions,.data-panel-heading{align-items:center;display:flex}.workspace-title{gap:11px}.workspace-icon{width:41px;height:41px;color:var(--blue-600);background:var(--blue-100);border-radius:10px;place-items:center;display:grid}.workspace-title h2,.form-heading h3,.data-panel-heading h3{color:var(--ink-950);letter-spacing:-.035em;margin:4px 0 0;font-size:18px}.workspace-actions{justify-content:flex-end;gap:9px}.workspace-search{width:min(250px,36vw);height:35px;color:var(--ink-500);border:1px solid var(--line);background:var(--surface-soft);border-radius:7px;align-items:center;gap:7px;padding:0 10px;display:flex}.workspace-search input{width:100%;min-width:0;color:var(--ink-950);background:0 0;border:0;outline:0;font-size:12px}.workspace-message,.workspace-note{color:#21855d;background:#f0fbf6;border:1px solid #bde8d4;border-radius:8px;align-items:center;gap:8px;min-height:37px;padding:0 12px;font-size:11px;display:flex}.workspace-note{color:#54718f;background:#f5f9fd;border-color:#d6e5f4}.operational-form{box-shadow:var(--shadow-sm);background:#fbfdff;border:1px solid #bdd8f0;border-radius:11px;padding:19px}.project-finance-summary{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;margin-top:16px;padding:15px}.project-finance-summary-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.project-finance-summary-heading h4{color:var(--ink-950);margin:3px 0 0;font-size:14px}.project-finance-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.project-finance-metric{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:6px;min-width:0;padding:12px;display:grid}.project-finance-metric>span{color:var(--ink-700);font-size:11px}.project-finance-metric strong{overflow-wrap:anywhere;color:var(--ink-950);font-size:16px}.project-finance-metric small{color:var(--ink-500);font-size:10px;line-height:1.4}.project-finance-summary-note{color:var(--ink-500);margin:10px 0 0;font-size:10px;line-height:1.5}.daily-activities-editor{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;gap:10px;padding:13px}.daily-activities-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.daily-activities-title,.daily-activity-line label{color:var(--ink-700);margin-bottom:5px;font-size:11px;font-weight:700;display:block}.daily-activities-heading p{color:var(--ink-500);margin:3px 0 0;font-size:10px}.daily-activity-lines{gap:8px;display:grid}.daily-activity-line{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:34px minmax(220px,1.6fr) minmax(170px,1fr) 34px;align-items:end;gap:9px;padding:9px;display:grid}.daily-activity-number{color:var(--ink-500);font-variant-numeric:tabular-nums;text-align:center;align-self:center;font-size:11px}.daily-activity-select,.daily-activity-status{min-width:0}.daily-activity-remove{color:#b94452;cursor:pointer;background:0 0;border:1px solid #edc6ca;border-radius:7px;place-items:center;width:34px;height:38px;padding:0;display:grid}.daily-activity-remove:hover{background:#fff0f1}.project-daily-report-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:11px;gap:15px;padding:18px;display:grid}.project-daily-report-panel .data-panel-heading{margin:0}.project-daily-report-panel .data-panel-heading p{max-width:740px;color:var(--ink-500);margin:5px 0 0;font-size:11px;line-height:1.5}.project-report-filters{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;grid-template-columns:minmax(240px,1.6fr) repeat(2,minmax(145px,.7fr));align-items:end;gap:11px;padding:13px;display:grid}.project-report-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.project-report-actions .is-disabled{opacity:.5;cursor:not-allowed}.project-daily-report-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-daily-report-heading h4{color:var(--ink-950);margin:3px 0;font-size:16px}.project-daily-report-heading p{color:var(--ink-500);margin:0;font-size:10px}.daily-report-count{border:1px solid var(--line);color:var(--ink-700);background:var(--surface-soft);border-radius:999px;flex:none;padding:6px 9px;font-size:10px;font-weight:700}.project-report-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.project-report-metrics>div{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:5px;min-width:0;padding:11px;display:grid}.project-report-metrics span{color:var(--ink-700);font-size:10px}.project-report-metrics strong{overflow-wrap:anywhere;color:var(--ink-950);font-size:15px}.project-report-metrics small,.table-cell-detail{color:var(--ink-500);margin-top:3px;font-size:10px;line-height:1.4;display:block}.project-daily-report-table{max-height:540px}.project-daily-report-table table{min-width:980px}.project-daily-report-table td{vertical-align:top}.form-heading{justify-content:space-between;gap:12px;margin-bottom:16px}.form-required-note{color:var(--ink-500);font-size:12px}.purchase-readonly-form .form-required-note{border:1px solid var(--blue-600);background:var(--blue-100);color:var(--ink-950);letter-spacing:.02em;border-radius:8px;flex:none;padding:10px 16px;font-size:clamp(20px,2vw,28px);font-weight:750}.workspace-navigation{gap:12px;display:grid}.module-back-button{justify-self:start}.warehouse-reference-link{color:var(--blue-600);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;font-weight:700;text-decoration:underline}.warehouse-stock-location-dialog{max-width:520px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.procurement-items-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-direction:column;gap:11px;min-width:0;margin-top:17px;padding:15px;display:flex}.purchase-pending-empty{min-height:90px;color:var(--blue-600);border:1px dashed var(--line);background:var(--surface-soft);border-radius:8px;align-items:center;gap:12px;padding:17px;display:flex}.purchase-pending-empty>div{gap:4px;display:grid}.purchase-pending-empty strong{color:var(--ink-950);font-size:12px}.purchase-pending-empty span{color:var(--ink-500);font-size:11px;line-height:1.45}.procurement-items-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.procurement-items-heading h4{color:var(--ink-950);margin:3px 0 4px;font-size:14px}.procurement-items-heading p{color:var(--ink-500);margin:0;font-size:11px;line-height:1.45}.procurement-items-heading .secondary-button{flex:none}.procurement-items-wrap{width:100%}.procurement-items-table{min-width:980px}.procurement-items-table th{white-space:nowrap}.procurement-items-table td{vertical-align:top;min-width:90px;padding:8px}.procurement-items-table td:nth-child(2){min-width:190px}.procurement-items-table td:nth-child(3){min-width:215px}.procurement-items-table td:nth-child(4){min-width:155px}.procurement-items-table td:nth-child(5){min-width:145px}.procurement-product-catalog-selector{gap:5px;margin-bottom:6px;display:grid}.procurement-detail-choice{gap:5px;margin-bottom:7px;display:grid}.procurement-detail-choice label{color:var(--ink-500);font-size:10px;font-weight:650}.procurement-detail-choice select{width:100%;min-width:72px;min-height:38px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:6px;padding:7px 9px;font-size:12px}.procurement-detail-choice select:focus{border-color:#72abe1;outline:0;box-shadow:0 0 0 2px #1677ee1c}.procurement-brand-value{max-width:100%;min-height:32px;color:var(--ink-700);border:1px solid var(--line);background:var(--surface-soft);overflow-wrap:anywhere;border-radius:7px;align-items:center;padding:6px 9px;font-size:11px;line-height:1.35;display:inline-flex}.procurement-product-catalog-selector .field-help,.procurement-product-catalog-selector .field-error,.procurement-detail-choice .field-help{font-size:10px;line-height:1.35;display:block}.procurement-items-table td input,.procurement-items-table td textarea{width:100%;min-width:72px;min-height:38px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:6px;outline:0;padding:8px 9px;font-size:12px}.procurement-items-table td textarea{resize:vertical;min-height:56px}.procurement-items-table td input:focus,.procurement-items-table td textarea:focus{border-color:#72abe1;box-shadow:0 0 0 2px #1677ee1c}.procurement-items-table .searchable-select-control{min-height:38px;padding-inline:7px}.procurement-items-table .searchable-select-control input{min-height:32px;font-size:12px}.procurement-line-number{width:58px;color:var(--ink-500);font-variant-numeric:tabular-nums;text-align:center}.procurement-line-locked{background:color-mix(in srgb, var(--surface-soft) 68%, transparent)}.procurement-line-locked td{opacity:.76}.procurement-line-locked td:first-child{opacity:1}.procurement-ordered-note{color:var(--ink-500);margin:0 0 5px;font-size:10px;line-height:1.35;display:block}.procurement-items-table input:disabled,.procurement-items-table textarea:disabled,.procurement-items-table select:disabled{cursor:not-allowed;opacity:.72}.procurement-items-table .searchable-select-control:has(input:disabled){cursor:not-allowed;opacity:.72}.procurement-line-total{min-width:120px;color:var(--ink-950);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:700}.procurement-remove-button{color:#b94452;cursor:pointer;background:0 0;border:1px solid #edc6ca;border-radius:7px;place-items:center;width:34px;height:34px;padding:0;display:grid}.procurement-remove-button:hover{background:#fff0f1}.procurement-remove-button:disabled{cursor:not-allowed;opacity:.45}.procurement-totals{justify-content:flex-end;gap:10px;margin-top:13px;display:flex}.procurement-totals>div{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:5px;min-width:130px;padding:10px 13px;display:grid}.procurement-totals span{color:var(--ink-500);font-size:10px}.procurement-totals strong{color:var(--ink-950);text-align:right;font-size:13px}.procurement-totals .procurement-total{background:var(--blue-100);border-color:#9ec5ec}.procurement-totals .procurement-total strong{font-size:15px}.daily-report-attachment-link{color:var(--blue-600);align-items:center;gap:5px;font-size:11px;font-weight:650;text-decoration:none;display:inline-flex}.daily-report-attachment-link:hover{text-decoration:underline}.operational-field{flex-direction:column;gap:5px;min-width:0;display:flex}.operational-field.is-wide{grid-column:span 2}.operational-field>span,.operational-field>label{color:#536a84;font-size:12px;font-weight:700}.operational-field em{color:var(--red);font-style:normal}.operational-field input,.operational-field select,.operational-field textarea{width:100%;min-height:44px;color:var(--ink-950);font:inherit;background:#fff;border:1px solid #d8e3ee;border-radius:7px;outline:0;padding:9px 11px;font-size:14px}.operational-field textarea{resize:vertical}.operational-field input:focus,.operational-field select:focus,.operational-field textarea:focus{border-color:#72abe1;box-shadow:0 0 0 3px #1677ee1a}.field-help{color:var(--ink-500);font-size:12px;line-height:1.45}.field-help-error{color:#c43d50}.searchable-select{width:100%;min-width:0;position:relative}.searchable-select-control{min-width:0;min-height:44px;color:var(--ink-500);border:1px solid var(--line);background:var(--surface);border-radius:7px;align-items:center;gap:7px;padding:0 10px;display:flex}.searchable-select-control:focus-within{border-color:#72abe1;box-shadow:0 0 0 3px #1677ee1a}.searchable-select-control input,.operational-field .searchable-select-control input{width:100%;min-width:0;min-height:38px;color:var(--ink-950);box-shadow:none;font:inherit;background:0 0;border:0;border-radius:0;outline:0;padding:0;font-size:14px}.searchable-select-control input::placeholder{color:var(--ink-500)}.operational-field .searchable-select-control input:focus,.budget-item-field .searchable-select-control input:focus{box-shadow:none;border:0}.searchable-select-control.is-disabled{opacity:.65;cursor:not-allowed}.searchable-select-toggle{width:26px;height:28px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.searchable-select-toggle:hover{color:var(--ink-950);background:var(--surface-soft)}:is(.searchable-select-toggle:focus-visible,.searchable-select-option:focus-visible){outline-offset:1px;outline:2px solid #72abe1}.searchable-select-options{z-index:200;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:4px;position:fixed;overflow-y:auto;box-shadow:0 12px 28px #1e456633}.searchable-select-status{color:var(--ink-500);padding:7px 9px;font-size:11px}.searchable-select-option{width:100%;min-height:34px;color:var(--ink-950);font:inherit;text-align:left;white-space:normal;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 9px;font-size:12px;display:block}.searchable-select-option:hover,.searchable-select-option.is-highlighted,.searchable-select-option.is-selected{background:var(--surface-soft)}.searchable-select-option:disabled{color:var(--ink-500);cursor:not-allowed;opacity:.65}.client-selector-field{grid-column:span 2}.client-selector-field>label>span{color:#536a84;font-size:12px;font-weight:700}.client-selector-toolbar{align-items:stretch;gap:7px;min-width:0;display:flex}.client-selector-search-wrap{flex:1;min-width:0;position:relative}.client-selector-search{min-width:0;min-height:44px;color:var(--ink-500);background:#fff;border:1px solid #d8e3ee;border-radius:7px;flex:1;align-items:center;gap:7px;padding:0 10px;display:flex}.client-selector-search:focus-within{border-color:#72abe1;box-shadow:0 0 0 3px #1677ee1a}.client-selector-search input{min-width:0;min-height:40px;box-shadow:none;border:0;padding:0;font-size:14px}.client-selector-clear{width:24px;height:24px;color:var(--ink-500);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;display:grid}.client-selector-clear:hover{color:var(--ink-950);background:var(--surface-soft)}.client-selector-suggestions{z-index:30;background:#fff;border:1px solid #c9dced;border-radius:8px;max-height:230px;padding:4px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 28px #1e45662e}.client-suggestion{width:100%;color:var(--ink-950);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 9px;display:flex}.client-suggestion:hover,.client-suggestion.is-highlighted,.client-suggestion.is-selected{background:#edf6ff}.client-suggestion-name{font-size:12px;font-weight:700;line-height:1.25}.client-suggestion-meta,.client-suggestion-status{color:var(--ink-500);font-size:10px;line-height:1.35}.client-suggestion-status{padding:9px 8px}.client-new-button{white-space:nowrap;flex:none;min-height:44px}.ruc-lookup-row{align-items:stretch;gap:7px;min-width:0;display:flex}.ruc-lookup-row input{flex:1;min-width:0}.ruc-lookup-button{white-space:nowrap;flex:none;min-height:44px;padding:0 10px}.ruc-lookup-feedback{color:var(--ink-500);font-size:12px;line-height:1.45;display:block}.ruc-lookup-feedback.is-success{color:#21855d}.ruc-lookup-feedback.is-warning{color:#f0b84b}.ruc-lookup-feedback.is-error{color:#c43d50}.form-error{color:#c43d50;margin:13px 0 0;font-size:11px}.form-success{color:#24bd82;font-size:11px;font-weight:650}.form-actions{justify-content:flex-end;gap:8px;margin-top:17px}.purchase-readonly-fields{border:0;min-width:0;margin:0;padding:0}.purchase-readonly-fields:disabled :is(input,select,textarea,button){cursor:default}.purchase-view-actions{flex-wrap:wrap}.purchase-view-status{color:var(--ink-500);margin-right:auto;font-size:11px;font-weight:700}.data-panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-radius:11px;padding:18px 19px;overflow:hidden}.data-panel-heading{justify-content:space-between;gap:12px;margin-bottom:14px}.data-panel-heading h3{font-size:16px}.data-panel-hint{color:var(--ink-500);font-size:10px}.client-lifecycle-note{margin:-4px 0 12px;line-height:1.45}.data-table-wrap{overscroll-behavior-inline:contain;scrollbar-gutter:stable;border:1px solid #e5ebf2;border-radius:8px;max-width:100%;overflow-x:auto}.data-table-wrap:focus-visible{outline:3px solid var(--blue-500);outline-offset:3px}.table-scroll-hint{color:var(--ink-500);margin:0 0 8px;font-size:12px;line-height:1.45;display:none}.data-table-wrap::-webkit-scrollbar{height:8px}.data-table-wrap::-webkit-scrollbar-thumb{background:#b8c9da;border-radius:999px}.data-table{border-collapse:collapse;width:100%;min-width:680px}.data-table th{color:#72849a;letter-spacing:.03em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#f7fafd;border-bottom:1px solid #dfe8f1;padding:11px 12px;font-size:11px;font-weight:760}.data-table td{color:#425975;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #edf2f6;max-width:260px;padding:12px;font-size:13px;overflow:hidden}.data-table tbody tr:last-child td{border-bottom:0}.data-table td.data-table-actions{vertical-align:top;white-space:normal;max-width:none;overflow:visible}.data-table-actions{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.warehouse-workspace{gap:13px}.warehouse-summary{color:var(--ink-500);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;font-size:10px;display:flex}.warehouse-summary>*{border:1px solid var(--line);background:var(--surface-soft);border-radius:7px;padding:7px 9px}.warehouse-summary strong{color:var(--ink-950);font-size:12px}.warehouse-main-tabs{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);scrollbar-width:thin;border-radius:10px;flex-wrap:nowrap;gap:5px;padding:5px;display:flex;overflow-x:auto}.warehouse-main-tabs .workspace-mode-tab{white-space:nowrap;flex:none}.warehouse-tab-count{min-width:20px;height:20px;color:var(--blue-700);background:var(--blue-100);border-radius:999px;place-items:center;padding:0 5px;font-size:10px;display:inline-grid}.warehouse-subnav{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.warehouse-subnav button{min-width:0;color:var(--ink-700);border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.warehouse-subnav button span{font-size:12px;font-weight:750}.warehouse-subnav button small{color:var(--ink-500);flex:none;font-size:10px}.warehouse-subnav button:hover,.warehouse-subnav button.is-active{color:var(--blue-700);border-color:color-mix(in srgb, var(--blue-500) 50%, var(--line));background:var(--blue-100)}.warehouse-source-tabs{gap:7px;min-width:0;padding:0 1px;display:flex;overflow-x:auto}.warehouse-source-tabs button{min-height:35px;color:var(--ink-600);border:1px solid var(--line);background:var(--surface);cursor:pointer;white-space:nowrap;border-radius:7px;padding:0 12px;font-size:10px;font-weight:700}.warehouse-source-tabs button:hover,.warehouse-source-tabs button.is-active{color:var(--blue-700);border-color:color-mix(in srgb, var(--blue-500) 50%, var(--line));background:var(--blue-100)}.warehouse-entry-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:10px;gap:13px;padding:16px;display:grid}.warehouse-entry-heading h3{color:var(--ink-950);margin:3px 0 4px;font-size:15px}.warehouse-entry-heading p,.warehouse-data-panel .data-panel-heading p{color:var(--ink-500);margin:4px 0 0;font-size:10px;line-height:1.45}.warehouse-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:11px;display:grid}.warehouse-form-grid-purchase{grid-template-columns:repeat(2,minmax(0,1fr))}.warehouse-field{min-width:0;color:var(--ink-600);flex-direction:column;gap:5px;font-size:10px;font-weight:700;display:flex}.warehouse-field>span b{color:var(--red)}.warehouse-field input,.warehouse-field select,.warehouse-field textarea{width:100%;min-width:0;min-height:39px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface-soft);font:inherit;border-radius:7px;outline:0;padding:8px 10px;font-size:11px}.warehouse-field textarea{resize:vertical;min-height:55px}.warehouse-field input:focus,.warehouse-field select:focus,.warehouse-field textarea:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue-500) 15%, transparent)}.warehouse-field-wide{grid-column:span 2}.warehouse-availability{border:1px solid var(--line);background:var(--surface-soft);border-radius:7px;align-content:center;gap:3px;min-height:57px;padding:8px 10px;display:grid}.warehouse-availability span{color:var(--ink-500);font-size:9px}.warehouse-availability strong{color:var(--ink-950);font-size:13px}.warehouse-availability small{color:var(--ink-500);font-size:9px}.warehouse-inline-note{color:var(--ink-500);margin:0;font-size:10px}.warehouse-entry-panel .form-actions{margin-top:0}.warehouse-feedback{justify-content:space-between;gap:10px;padding:9px 12px}.warehouse-data-panel{grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;display:grid}.warehouse-data-panel .data-panel-heading{margin:0}.warehouse-search{width:min(230px,34vw);min-height:35px}.warehouse-query-tools{align-items:center;gap:8px;display:flex}.warehouse-query-tools .secondary-button{flex:none}.warehouse-kardex-result-count{color:var(--ink-500);margin-top:6px;font-size:10px;display:inline-block}.warehouse-kardex-filters{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;grid-template-columns:minmax(250px,1.65fr) repeat(2,minmax(145px,.85fr)) auto;align-items:end;gap:10px;padding:12px;display:grid}.warehouse-kardex-filter-actions{align-items:center;gap:7px;display:flex}.warehouse-kardex-filter-actions>button{white-space:nowrap;justify-content:center;min-height:39px}@media (max-width:760px){.warehouse-kardex-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.warehouse-kardex-filter-actions{grid-column:1/-1;justify-content:flex-end}.warehouse-movement-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.warehouse-kardex-filters{grid-template-columns:minmax(0,1fr)}.warehouse-kardex-filter-actions{grid-column:auto}.warehouse-kardex-filter-actions>button{flex:1}.warehouse-movement-facts{grid-template-columns:minmax(0,1fr)}.warehouse-movement-fact-notes{grid-column:auto}}.warehouse-table-wrap{width:100%}.warehouse-table{min-width:940px}.warehouse-table td{vertical-align:middle}.warehouse-table td strong,.warehouse-table td small{display:block}.warehouse-table td small{color:var(--ink-500);margin-top:3px;font-size:9px}.warehouse-table tfoot th,.warehouse-table tfoot td{border-top:1px solid var(--line);color:var(--ink-950);background:var(--surface-soft);text-align:right;padding:12px;font-size:11px}.warehouse-table tfoot th{text-align:right}.warehouse-actions{gap:5px;min-width:150px;display:flex}.warehouse-actions .table-action{min-height:31px;padding:5px 8px;font-size:10px}.warehouse-movement-badge{background:var(--surface-soft);min-width:62px;color:var(--ink-700);border-radius:999px;justify-content:center;padding:5px 7px;font-size:9px;font-weight:750;display:inline-flex}.warehouse-movement-badge.is-in{color:#16815c;background:#e7f8ef}.warehouse-movement-badge.is-out{color:#b44355;background:#fff0f1}.warehouse-table td:first-child strong{color:var(--ink-800)}.warehouse-resource-picker{position:relative}.warehouse-resource-picker-control{min-width:0;min-height:39px;color:var(--ink-500);border:1px solid var(--line);background:var(--surface-soft);border-radius:7px;align-items:center;gap:8px;padding:0 10px;display:flex}.warehouse-resource-picker-control:focus-within{border-color:var(--blue-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue-500) 15%, transparent)}.warehouse-resource-picker-control svg{flex:none}.warehouse-resource-picker-control input{min-height:36px;box-shadow:none;background:0 0;border:0;outline:0;padding:0}.warehouse-resource-picker-control input:focus{box-shadow:none;border:0}.warehouse-resource-options{z-index:25;border:1px solid var(--line);background:var(--surface);max-height:290px;box-shadow:var(--shadow-md);border-radius:9px;padding:5px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.warehouse-resource-options button{width:100%;color:var(--ink-700);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;padding:9px 10px;display:grid}:is(.warehouse-resource-options button:hover,.warehouse-resource-options button:focus-visible,.warehouse-resource-options button[aria-selected=true]){background:var(--blue-100);outline:0}.warehouse-resource-options button strong{color:var(--blue-700);white-space:nowrap;font-size:10px}.warehouse-resource-options button span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.warehouse-resource-options button small{color:var(--ink-500);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:9px;overflow:hidden}.warehouse-resource-options>p{color:var(--ink-500);margin:0;padding:12px 10px;font-size:11px}.warehouse-dialog-backdrop{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#081c2d9e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.warehouse-dialog{width:min(960px,100%);max-height:min(88vh,860px);color:var(--ink-950);border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:16px;margin:0;padding:20px;display:grid;position:relative;inset:auto;overflow:auto;box-shadow:0 24px 70px #081c2d47}.warehouse-dialog-heading{z-index:2;border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:flex-start;gap:15px;margin:-20px -20px 0;padding:18px 20px 13px;display:flex;position:sticky;top:-20px}.warehouse-dialog-heading h3{color:var(--ink-950);margin:4px 0 0;font-size:18px}.warehouse-purchase-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.warehouse-purchase-facts>div{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;min-width:0;padding:11px}.warehouse-purchase-facts span{color:var(--ink-500);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:750;display:block}.warehouse-purchase-facts strong{color:var(--ink-900);text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.warehouse-purchase-facts small{color:var(--ink-600);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:5px;font-size:9px;line-height:1.45;display:-webkit-box;overflow:hidden}.warehouse-dialog-table .warehouse-table{min-width:700px}.warehouse-movement-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.warehouse-movement-facts>div{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;align-content:start;gap:5px;min-width:0;padding:11px;display:grid}.warehouse-movement-facts>div>span{color:var(--ink-500);letter-spacing:.05em;text-transform:uppercase;font-size:9px;font-weight:750}.warehouse-movement-facts strong{overflow-wrap:anywhere;color:var(--ink-900);font-size:11px;line-height:1.4}.warehouse-movement-facts small{color:var(--ink-600);font-size:9px;line-height:1.45}.warehouse-movement-fact-notes{grid-column:1/-1}.warehouse-receipt-form{border-color:var(--line);box-shadow:none}.warehouse-receipt-form .form-actions{flex-wrap:wrap}.warehouse-purchase-table{min-width:1200px}.warehouse-purchase-table td:last-child,.warehouse-purchase-table th:last-child{z-index:1;background:var(--surface);position:sticky;right:0}.warehouse-purchase-table th:last-child{z-index:2;background:var(--surface-soft)}.warehouse-purchase-table tbody tr:hover td:last-child{background:var(--blue-100)}.data-table td.data-table-actions.is-menu-cell{vertical-align:middle;white-space:nowrap;width:158px;min-width:158px;padding:8px 10px;display:table-cell}.table-action{min-height:38px;color:var(--blue-600);background:var(--surface);cursor:pointer;white-space:nowrap;border:1px solid #cfe0f0;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:700;line-height:1.2}.table-action:hover{background:var(--blue-100)}.table-action.is-danger{color:#c54a5e;border-color:#f0ced6}.table-action.is-danger:hover{background:var(--red-soft)}.table-action.is-destructive{font-weight:800}.data-empty,.table-loading{min-height:150px;color:var(--ink-500);text-align:left;justify-content:center;align-items:center;gap:12px;font-size:12px;display:flex}.data-empty-icon{width:43px;height:43px;color:var(--blue-600);background:var(--blue-100);border-radius:10px;place-items:center;display:grid}.data-empty strong{color:var(--ink-700);font-size:13px}.data-empty p{max-width:410px;color:var(--ink-500);margin:5px 0 11px;font-size:11px;line-height:1.45}.budget-summary-table-wrap{border-color:#c9ddec}.budget-summary-table{min-width:1120px}.budget-summary-table td{text-overflow:clip;vertical-align:top;white-space:normal;max-width:none;line-height:1.35;overflow:visible}.budget-summary-table td:nth-child(2){min-width:160px;max-width:230px}.budget-summary-table td:nth-child(5){min-width:250px;max-width:330px}.budget-summary-table td.data-table-actions.is-menu-cell{width:158px;min-width:158px}.table-row-action-select,.budget-row-actions{box-sizing:border-box;width:100%;min-width:0;min-height:36px;color:var(--ink-700);border:1px solid var(--line);background:var(--surface-soft);cursor:pointer;font:inherit;border-radius:8px;padding:7px 30px 7px 10px;font-size:11px;font-weight:700;transition:border-color .15s,background-color .15s}.table-row-action-select:hover,.budget-row-actions:hover{border-color:var(--blue-500);background-color:var(--surface)}:is(.table-row-action-select:focus-visible,.budget-row-actions:focus-visible){outline:2px solid var(--blue-500);outline-offset:2px}.table-row-action-select option,.budget-row-actions option{color:var(--ink-700);background:var(--surface)}.apu-actions-hint{margin:0 0 10px;font-size:11px;line-height:1.5}.budget-summary-table th:last-child,.budget-summary-table td.data-table-actions{z-index:2;background:var(--surface);position:sticky;right:0;box-shadow:-8px 0 14px #081c2d14}.budget-summary-table th:last-child{z-index:3}.budget-detail-panel{overflow:hidden}.budget-detail-panel .panel-heading{border-bottom:1px solid var(--line);align-items:center;margin-bottom:19px;padding-bottom:15px}.budget-detail-panel .panel-heading h2{font-size:21px}.budget-detail-panel .muted-copy{overflow-wrap:anywhere;max-width:620px;margin:6px 0 0;font-size:13px;line-height:1.4}.budget-indicator-grid{grid-template-columns:minmax(220px,1.75fr) repeat(5,minmax(100px,1fr));gap:8px;margin-bottom:24px;display:grid}.budget-indicator-grid>span,.budget-indicator-grid>strong{overflow-wrap:anywhere;border:1px solid var(--line);background:var(--surface-soft);min-width:0;min-height:68px;color:var(--ink-950);border-radius:9px;flex-direction:column;justify-content:center;gap:5px;padding:11px 12px;font-size:13px;line-height:1.3;display:flex}.budget-indicator-grid b{color:var(--ink-500);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:760}.budget-indicator-grid>strong{color:var(--blue-600);background:var(--blue-100);border-color:#b8d8f3}.budget-detail-heading{justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:11px;display:flex}.budget-detail-heading-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.budget-detail-heading h3{color:var(--ink-950);letter-spacing:-.025em;margin:5px 0 0;font-size:17px}.budget-detail-heading .data-panel-hint{text-align:right;max-width:430px;line-height:1.45}.budget-items-table-wrap{margin-bottom:16px}.budget-items-table{min-width:1160px}.budget-items-table td{vertical-align:top;white-space:normal;max-width:none;overflow:visible}.budget-items-table th:nth-child(n+5),.budget-items-table td:nth-child(n+5){text-align:right}.budget-items-table td:first-child{color:var(--blue-600);white-space:nowrap;font-weight:720}.budget-item-actions-menu{width:142px;min-width:142px}.budget-items-table .budget-row-actions{width:132px;min-height:33px;margin:0 auto;padding:6px 28px 6px 9px;font-size:10px}.apu-composition-save-row{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;justify-content:space-between;align-items:center;gap:14px;margin:-5px 0 15px;padding:11px 13px;display:flex}.apu-composition-save-row p{color:var(--ink-500);margin:0;font-size:11px;line-height:1.45}.apu-composition-save-row .primary-button{flex:none;justify-content:center;min-width:155px}.apu-composition-save-row .primary-button:disabled{opacity:.56;cursor:not-allowed}.budget-item-description{overflow-wrap:anywhere;min-width:300px;max-width:470px;font-weight:650;line-height:1.4;color:var(--ink-950)!important}.budget-items-empty{border:1px dashed var(--line);background:var(--surface-soft);border-radius:10px;min-height:105px;margin-bottom:16px;padding:18px}.budget-hierarchy-section{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:11px;margin:0 0 23px;padding:14px;display:flex}.budget-snapshot-status{color:var(--ink-600);border:1px dashed var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:-13px 0 19px;padding:10px 12px;font-size:11px;display:flex}.budget-snapshot-status.is-frozen{color:#176444;background:#edf9f2;border-style:solid;border-color:#9bd8bd;justify-content:flex-start}.budget-snapshot-status span{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.budget-snapshot-status code{overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:10px}.budget-export-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:11px;grid-template-columns:minmax(220px,1fr) minmax(235px,.85fr) auto;align-items:center;gap:16px 22px;margin:-6px 0 19px;padding:16px 17px;display:grid}.budget-export-copy{min-width:0}.budget-export-copy h3{color:var(--ink-950);letter-spacing:-.02em;margin:4px 0 5px;font-size:15px}.budget-export-copy p{max-width:470px;color:var(--ink-500);margin:0;font-size:11px;line-height:1.5}.budget-export-choice{flex-direction:column;gap:5px;min-width:0;display:flex}.budget-export-choice label{color:var(--ink-600);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:760}.budget-export-choice select{width:100%;min-height:40px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;outline:0;padding:8px 34px 8px 11px;font-size:12px;font-weight:650}.budget-export-choice select:focus-visible{border-color:var(--blue-500);box-shadow:0 0 0 3px #1677ee24}.budget-export-choice p{min-height:30px;color:var(--ink-500);margin:0;font-size:10px;line-height:1.45}.budget-export-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.budget-export-link{white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 12px;font-size:11px;font-weight:720;text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s;display:inline-flex}.budget-export-link:hover{transform:translateY(-1px)}.budget-export-link:focus-visible{outline-offset:2px;outline:3px solid #1677ee40}.budget-export-link.is-preview{color:var(--ink-700);border-color:var(--line);background:var(--surface)}.budget-export-link.is-preview:hover{border-color:var(--blue-400);background:var(--blue-100)}.budget-export-link.is-pdf{color:#fff;border-color:var(--blue-600);background:var(--blue-600);box-shadow:0 4px 10px #1677ee2e}.budget-export-link.is-pdf:hover{background:var(--blue-700)}.budget-export-link.is-excel{color:#17684d;background:#effaf4;border-color:#a8d6c1}.budget-export-link.is-excel:hover{background:#e2f5eb;border-color:#69b88f}@media (max-width:1100px){.budget-export-panel{grid-template-columns:minmax(190px,1fr) minmax(220px,.9fr)}.budget-export-actions{grid-column:1/-1;justify-content:flex-start}}@media (max-width:520px){.budget-export-panel{grid-template-columns:minmax(0,1fr);gap:12px;padding:13px}.budget-export-actions{grid-template-columns:1fr;display:grid}.budget-export-link{justify-content:flex-start}}.apu-register-exports{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;justify-content:space-between;align-items:center;gap:14px 20px;margin:0 0 15px;padding:13px 14px;display:flex}.apu-register-exports-copy{min-width:220px}.apu-register-exports-copy p{max-width:660px;color:var(--ink-500);margin:4px 0 0;font-size:11px;line-height:1.45}.apu-register-export-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.apu-register-export-links a{white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:39px;padding:0 13px;text-decoration:none;display:inline-flex}.apu-register-export-links a:hover{border-color:var(--blue-500);background:var(--surface)}@media (max-width:760px){.apu-register-exports{flex-direction:column;align-items:stretch}.apu-register-export-links{justify-content:flex-start}}@media (max-width:520px){.apu-register-export-links{flex-direction:column;align-items:stretch}.apu-register-export-links a{justify-content:flex-start}}.budget-expense-mode-form{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) auto;align-items:end;gap:9px;padding:10px;display:grid}.budget-expense-mode-form>p{grid-column:1/-1;margin:0}.budget-expense-form{margin-top:4px}.budget-expense-section .data-table-wrap{margin-top:2px}.budget-subbudget-list{gap:6px;display:grid}.budget-subbudget-row{color:var(--ink-700);border:1px solid var(--line);background:var(--surface);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:12px;display:flex}.budget-subbudget-row b{color:var(--blue-600)}.budget-subbudget-row small{color:var(--ink-500);margin-top:3px;display:block}.budget-subbudget-row strong{color:var(--ink-950);white-space:nowrap}.budget-chapter-tree{gap:6px;display:grid}.budget-chapter-group{border:1px solid var(--line);background:var(--surface);border-radius:9px;min-width:0;position:relative}.budget-chapter-group.is-expanded{border-color:var(--blue-500);box-shadow:0 2px 8px #144a7a0f}.budget-chapter-group:focus-within{z-index:4}.budget-chapter-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:9px 10px;display:flex}.budget-chapter-row.is-parent{background:0 0;border:0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.budget-chapter-expand{min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:3px;display:flex}.budget-chapter-expand:hover{background:var(--surface-soft)}.budget-chapter-expand:focus-visible{outline-offset:2px;outline:3px solid #1677ee40}.budget-chapter-expand-icon{color:var(--blue-600);flex:none;transition:transform .16s}.budget-chapter-group.is-expanded .budget-chapter-expand-icon{transform:rotate(180deg)}.budget-chapter-expand .budget-chapter-identity{flex:1;align-items:center}.budget-chapter-identity>span{gap:3px;min-width:0;display:grid}.budget-chapter-total{color:var(--ink-950);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:12px}.budget-chapter-details{border-top:1px solid var(--line);gap:7px;margin:0 11px 10px 39px;padding:9px 0 0;display:grid}.budget-chapter-item-group{gap:7px;min-width:0;display:grid}.budget-chapter-items{gap:7px;min-width:0;margin-left:16px;display:grid}.budget-subchapter-heading{color:var(--ink-600);justify-content:space-between;align-items:center;gap:8px;padding:2px 3px;font-size:10px;display:flex}.budget-subchapter-heading span,.budget-ungrouped-items summary span{min-width:24px;min-height:22px;color:var(--blue-600);border:1px solid var(--line);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}.budget-partida-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:minmax(160px,1.1fr) minmax(280px,1.6fr) minmax(150px,.8fr) auto;align-items:center;gap:10px 12px;min-width:0;padding:10px;display:grid}.budget-partida-title{align-items:flex-start;gap:9px;min-width:0;display:flex}.budget-partida-title>code{color:var(--blue-600);border:1px solid var(--line);background:var(--surface-soft);border-radius:5px;flex:none;padding:3px 5px;font:700 10px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace}.budget-partida-title>div{gap:4px;min-width:0;display:grid}.budget-partida-title strong{color:var(--ink-950);overflow-wrap:anywhere;font-size:11px;line-height:1.4}.budget-partida-title small{color:var(--ink-500);overflow-wrap:anywhere;font-size:10px;line-height:1.35}.budget-partida-metrics{grid-template-columns:repeat(4,minmax(48px,1fr));gap:6px;min-width:0;margin:0;display:grid}.budget-partida-metrics>div{background:var(--surface-soft);border-radius:5px;min-width:0;padding:5px 6px}.budget-partida-metrics dt,.budget-partida-plan>span{color:var(--ink-500);letter-spacing:.035em;text-transform:uppercase;font-size:9px;font-weight:720}.budget-partida-metrics dd{color:var(--ink-900);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:3px 0 0;font-size:10px;font-weight:650}.budget-partida-metrics .is-total{background:var(--blue-100);border:1px solid #c7def4}.budget-partida-metrics .is-total dd{color:var(--blue-700);font-weight:760}.budget-partida-metrics .budget-quantity-source{text-align:left;margin-top:2px;font-size:9px}.budget-partida-plan{gap:4px;min-width:0;display:grid}.budget-partida-plan .budget-crew-plan{min-width:0;font-size:10px}.budget-partida-plan .budget-crew-plan[open]{max-width:min(440px,82vw)}.budget-partida-actions{justify-content:flex-end;display:flex}.budget-partida-actions .budget-row-actions{width:124px;min-height:36px;font-size:10px}.budget-ungrouped-items{border:1px dashed var(--line);background:var(--surface);border-radius:8px}.budget-ungrouped-items>summary{min-height:42px;color:var(--ink-700);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;font-size:11px;font-weight:700;list-style-position:inside;display:flex}.budget-ungrouped-items[open]>.budget-chapter-items{margin:0 10px 10px}.budget-chapter-row.is-subchapter{border-left:3px solid var(--blue-500);background:var(--surface-soft);margin-left:0}.budget-chapter-empty{color:var(--ink-500);margin:0;padding:8px 4px;font-size:11px}.budget-chapter-identity{align-items:flex-start;gap:11px;min-width:0;display:flex}.budget-chapter-identity code{min-width:50px;color:var(--blue-600);border:1px solid var(--line);background:var(--surface-soft);text-align:center;border-radius:5px;padding:3px 5px;font:700 11px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace}.budget-chapter-identity>div{gap:3px;min-width:0;display:grid}.budget-chapter-identity strong{color:var(--ink-900);overflow-wrap:anywhere;font-size:12px}.budget-chapter-identity small{color:var(--ink-500);font-size:10px;line-height:1.4}.budget-chapter-actions{z-index:1;flex:none;align-items:center;display:inline-flex;position:relative}.budget-chapter-actions[open]{z-index:5}.budget-chapter-actions>summary{width:36px;height:36px;color:var(--ink-600);border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;list-style:none;display:inline-flex}.budget-chapter-actions>summary::-webkit-details-marker{display:none}.budget-chapter-actions>summary:hover{color:var(--blue-600);border-color:var(--blue-500);background:var(--blue-100)}.budget-chapter-actions>summary:focus-visible{outline-offset:2px;outline:3px solid #1677ee40}.budget-chapter-menu{z-index:6;border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:3px;min-width:132px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 8px 22px #0417292e}.budget-chapter-menu button{min-height:34px;color:var(--ink-700);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:5px;padding:7px 9px;font-size:11px}.budget-chapter-menu button:hover:not(:disabled){background:var(--blue-100);color:var(--blue-600)}.budget-chapter-menu button.is-danger{color:#c54a5e}.budget-chapter-menu button.is-danger:hover:not(:disabled){background:var(--red-soft);color:#ad3348}.budget-chapter-menu button:disabled{opacity:.55;cursor:not-allowed}.budget-chapter-details[hidden]{display:none}.budget-chapter-edit-form{grid-template-columns:minmax(160px,1fr) auto auto;align-items:end;gap:7px;min-width:min(100%,440px);display:grid}.budget-chapter-row.is-parent>.budget-chapter-edit-form{grid-column:1/-1}.budget-chapter-edit-form label{gap:4px;display:grid}.budget-chapter-edit-form label span{color:var(--ink-600);font-size:10px;font-weight:720}.budget-chapter-edit-form input{width:100%;min-height:38px;color:var(--ink-900);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;padding:7px 9px;font-size:12px}.budget-hierarchy-forms{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.budget-hierarchy-form{border-top:1px solid var(--line);grid-template-columns:minmax(130px,1fr) minmax(130px,1fr) auto;align-items:end;gap:8px;padding-top:11px;display:grid}.budget-measurement-sheet{background:var(--surface-soft);border:1px solid #c9ddec;border-radius:10px;flex-direction:column;gap:12px;margin:0 0 18px;padding:15px;display:flex}.budget-resource-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:11px;margin:0 0 18px;padding:15px;display:flex}.budget-resource-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.budget-resource-summary article{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0;padding:10px 12px}.budget-resource-summary span,.budget-resource-summary strong{display:block}.budget-resource-summary span{color:var(--ink-500);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:720}.budget-resource-summary strong{color:var(--ink-950);font-variant-numeric:tabular-nums;margin-top:5px;font-size:15px}.budget-measurement-heading,.budget-measurement-footer{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.budget-measurement-heading h3{color:var(--ink-950);margin:5px 0;font-size:16px}.budget-quantity-source{color:var(--blue-600);text-align:right;margin-top:3px;font-size:10px;display:block}.budget-measurements-table-wrap{max-height:340px;overflow:auto}.budget-measurements-table{min-width:760px}.budget-measurements-table tfoot{background:var(--surface-soft);position:sticky;bottom:0}.budget-measurements-table tfoot th{color:var(--ink-950)}.budget-resource-table{min-width:720px}.budget-resource-table th:first-child{width:40%}.budget-resource-table th:nth-child(2){width:18%}.budget-resource-table th:nth-child(3){width:22%}.budget-resource-table th:nth-child(4){width:20%}.budget-resource-code{white-space:nowrap;font-variant-numeric:tabular-nums;display:inline-block}.budget-resource-name{color:var(--ink-600);margin-top:3px;display:block}.budget-resource-amount{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:720}.budget-resource-table tfoot th,.budget-resource-table tfoot td{border-top:2px solid var(--line);background:var(--surface-soft);color:var(--ink-950);font-weight:800}.budget-measurement-form-grid{grid-template-columns:minmax(190px,1.5fr) repeat(5,minmax(85px,.7fr)) minmax(150px,1fr) auto;align-items:end;gap:8px;display:grid}.budget-measurement-footer>div{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:8px;display:flex}.budget-manual-override-form{align-items:flex-end;gap:8px;display:flex}.budget-manual-override-form .budget-item-field{min-width:150px}@media (max-width:1050px){.project-finance-summary-grid,.project-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-hierarchy-forms{grid-template-columns:1fr}.budget-measurement-form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.budget-measurement-form-grid>label:first-child,.budget-measurement-form-grid>label:last-of-type,.budget-measurement-form-grid .budget-item-form-actions{grid-column:1/-1}.budget-partida-card{grid-template-columns:minmax(0,1fr) auto}.budget-partida-title{grid-area:1/1}.budget-partida-actions{grid-area:1/2}.budget-partida-metrics{grid-area:2/1/auto/-1}.budget-partida-plan{grid-area:3/1/auto/-1}}@media (max-width:640px){.budget-resource-summary{grid-template-columns:1fr}.budget-measurement-heading{align-items:flex-start}.budget-resource-panel{padding:11px}.budget-chapter-row{flex-direction:column;align-items:stretch}.budget-chapter-row.is-parent{align-items:center}.budget-chapter-expand{gap:7px}.budget-chapter-expand .budget-chapter-identity{align-items:flex-start;gap:7px}.budget-chapter-expand .budget-chapter-identity code{min-width:43px}.budget-chapter-total{font-size:11px}.budget-chapter-details{margin-left:16px}.budget-chapter-row.is-subchapter{margin-left:8px}.budget-chapter-actions{justify-content:flex-end}.budget-chapter-edit-form{grid-template-columns:minmax(0,1fr) auto auto}.budget-hierarchy-form,.budget-expense-mode-form{grid-template-columns:1fr}.budget-expense-mode-form>p{grid-column:auto}.budget-measurement-heading,.budget-measurement-footer{flex-direction:column;align-items:stretch}.budget-measurement-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-measurement-form-grid>label:first-child,.budget-measurement-form-grid>label:last-of-type,.budget-measurement-form-grid .budget-item-form-actions{grid-column:1/-1}.budget-measurement-footer>div,.budget-manual-override-form{flex-direction:column;justify-content:flex-start;align-items:stretch}.budget-chapter-items{margin-left:5px}.budget-partida-card{padding:8px}.budget-partida-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-partida-metrics>div{min-height:47px}}.budget-item-form{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;flex-direction:column;gap:11px;margin-top:20px;padding:15px;display:flex}.budget-item-form-grid{grid-template-columns:minmax(190px,1.25fr) minmax(250px,2fr) minmax(150px,1.1fr) minmax(170px,1.3fr) minmax(95px,.7fr) minmax(110px,.8fr) minmax(125px,.9fr) auto;align-items:end;gap:9px;display:grid}.budget-line-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.budget-line-denomination{grid-column:span 2;min-width:0}.budget-line-denomination>.budget-item-field{margin-bottom:10px}.budget-line-denomination .operational-field{background:0 0;border:0;grid-column:auto;margin:0;padding:0}.budget-item-field{flex-direction:column;gap:5px;min-width:0;display:flex}.budget-item-field>span,.budget-item-field>label{color:var(--ink-500);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:760}.budget-item-field input,.budget-item-field select,.budget-item-field output{width:100%;min-width:0;min-height:39px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;outline:0;padding:8px 10px;font-size:12px}.budget-item-field input:focus,.budget-item-field select:focus{border-color:#72abe1;box-shadow:0 0 0 3px #1677ee1a}.budget-item-field input:disabled{color:var(--ink-500);background:var(--surface-soft)}.budget-item-field .searchable-select-control{min-height:39px}.budget-item-field .searchable-select-control input{min-height:33px;font-size:12px}.budget-item-field output{background:var(--blue-100);align-items:center;font-weight:760;display:flex}.budget-item-field small{color:var(--ink-500);font-size:10px;line-height:1.35}.budget-crew-form-section{border:1px solid var(--line);background:var(--surface);border-radius:9px;grid-template-columns:minmax(220px,.9fr) minmax(0,1.6fr);align-items:start;gap:16px;padding:14px;display:grid}.budget-crew-form-section h4{color:var(--ink-950);margin:4px 0;font-size:14px}.budget-crew-form-section p{color:var(--ink-500);margin:0;font-size:11px;line-height:1.5}.budget-crew-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:10px;display:grid}.budget-crew-plan{min-width:220px;color:var(--ink-700);text-align:left;font-size:10px}.budget-crew-plan summary{color:var(--blue-700);cursor:pointer;font-weight:700;line-height:1.45}.budget-crew-plan[open]{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;min-width:300px;max-width:440px;padding:9px}.budget-crew-plan ul{gap:7px;max-height:220px;margin:9px 0;padding:0;list-style:none;display:grid;overflow-y:auto}.budget-crew-plan li{border-bottom:1px solid var(--line);gap:3px;padding-bottom:6px;display:grid}.budget-crew-plan li span{color:var(--ink-700)}.budget-crew-plan li b{color:var(--ink-950);font-size:10px}.budget-crew-plan p,.budget-crew-plan small{color:var(--ink-500);margin:8px 0 0;font-size:10px;line-height:1.45;display:block}.budget-crew-plan-empty{color:var(--ink-500);font-size:10px}.budget-item-code-row{align-items:center;gap:7px;min-width:0;display:flex}.budget-item-code-row>input{flex:1}.budget-item-check{color:var(--ink-700);white-space:nowrap;align-items:center;gap:4px;font-size:11px;display:inline-flex}.budget-item-check input{width:auto;min-height:auto}.budget-item-form-actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.budget-item-form-actions .secondary-button,.budget-item-form-actions .primary-button{min-height:39px}.budget-items-table td.data-table-actions{white-space:normal;min-width:160px}.budget-item-field-description input{font-weight:620}.budget-item-submit{white-space:nowrap;min-height:39px}.apu-detail-panel .panel-heading{flex-wrap:wrap}.apu-items-table{min-width:880px}.apu-items-table td.data-table-actions.is-menu-cell{vertical-align:middle;width:142px;min-width:142px;padding:7px 8px}.apu-component-action-select{min-height:34px;font-size:11px}.apu-items-table th:nth-child(n+3),.apu-items-table td:nth-child(n+3){text-align:right}.apu-items-table td:first-child{text-align:left}.apu-indicator-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.apu-items-table .apu-group-heading th{color:var(--blue-600);background:var(--surface-soft);letter-spacing:.08em;text-align:left;padding-top:14px;font-size:10px}.apu-items-table .apu-group-subtotal th,.apu-items-table .apu-group-subtotal td{color:var(--ink-700);background:var(--surface-soft);font-size:11px;font-weight:760}.apu-items-table .apu-group-subtotal th,.apu-items-table .apu-group-subtotal th:first-child{text-align:right}.apu-items-table .budget-item-description{min-width:220px}.apu-item-form{gap:13px}.apu-component-section{border:1px solid var(--line);background:var(--surface);border-radius:9px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}.apu-component-section-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.apu-component-section-heading h3{color:var(--ink-950);margin:0;font-size:14px}.apu-component-section-heading p{color:var(--ink-500);margin:4px 0 0;font-size:11px;line-height:1.45}.apu-component-section-heading>span{color:var(--ink-500);font-size:10px}.apu-component-source-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.apu-component-measure-fields{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:12px;display:grid}.apu-component-cost-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.apu-component-form-actions{margin-top:0}.apu-component-form-actions .form-success{margin-right:auto}.schedule-gantt{--gantt-header-bg:#eaf1f7;--gantt-header-ink:#24445e;--gantt-header-month:#e5eef6;--gantt-row-hover:#f0f6fd;--gantt-sunday:#f0f3f6;--gantt-holiday:#fff0cc;flex-direction:column;gap:13px;min-width:0;display:flex}.gantt-project-header{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(255px,330px);align-items:start;gap:22px;padding-bottom:14px;display:grid}.gantt-project-title h2{color:var(--ink-950);letter-spacing:-.035em;margin:4px 0 5px;font-size:19px;font-weight:780}.gantt-project-name{max-width:880px;color:var(--ink-700);margin:0;font-size:14px;font-weight:700;line-height:1.45}.gantt-project-meta{color:var(--ink-500);flex-wrap:wrap;align-items:center;gap:7px 14px;margin-top:10px;font-size:10px;display:flex}.gantt-project-meta b{color:var(--ink-700);margin-right:3px;font-weight:720}.gantt-project-code{color:#1559a6;letter-spacing:.02em;background:#f0f6fd;border:1px solid #c9ddf2;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:800}.gantt-project-selector{flex-direction:column;gap:5px;min-width:0;display:flex}.gantt-project-selector>label{color:var(--ink-500);font-size:10px;font-weight:750}.gantt-project-selector .searchable-select{min-width:0}.gantt-range-label{color:var(--ink-500);text-align:right;font-size:10px}.gantt-range-control{box-sizing:border-box;width:100%;border:0;gap:5px;min-inline-size:0;margin:3px 0 0;padding:0;display:grid}.gantt-range-control legend{float:none;width:auto;color:var(--ink-500);padding:0;font-size:10px;font-weight:750}.gantt-range-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.gantt-range-fields label{min-width:0;color:var(--ink-500);gap:3px;font-size:10px;font-weight:700;display:grid}.gantt-range-fields input{box-sizing:border-box;width:100%;min-width:0;height:34px;color:var(--ink-700);border:1px solid var(--line);background:var(--surface);font:inherit;font-variant-numeric:tabular-nums;border-radius:6px;padding:0 6px;font-size:11px}.gantt-range-fields input:focus-visible{outline-offset:1px;outline:2px solid #1677ee61}.gantt-range-reset{color:#1559a6;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:end;padding:2px 0;font-size:10px;font-weight:700;text-decoration:underline}.gantt-range-help{color:var(--ink-500);font-size:10px;line-height:1.4}.gantt-range-help.is-warning{color:#9a5a16}.gantt-summary-strip{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.gantt-summary-strip>span{min-height:30px;color:var(--ink-700);border:1px solid var(--line);background:var(--surface-soft);border-radius:6px;align-items:center;gap:5px;padding:0 9px;font-size:10px;display:inline-flex}.gantt-summary-strip strong{color:var(--ink-950);font-size:11px;font-weight:780}.gantt-summary-strip .gantt-period-chip{color:#245c91;background:#f0f6fd;margin-left:auto}.gantt-summary-toolbar{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.gantt-export-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:7px;display:flex}.gantt-export-actions .secondary-button{white-space:nowrap;gap:6px;min-height:34px;padding-inline:10px;font-size:10px}.gantt-state{min-height:110px;color:var(--ink-500);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.gantt-empty{justify-content:flex-start;margin:0}.gantt-inline-note{color:var(--ink-500);margin:0;font-size:10px;line-height:1.5;display:block}.gantt-inline-note.is-warning{color:#9a5a16}.gantt-scroll{border:1px solid var(--line);background:var(--surface);scrollbar-color:#9eafc1 var(--surface-soft);scrollbar-width:thin;border-radius:8px;max-width:100%;max-height:min(68vh,680px);overflow:auto}.gantt-scroll:focus-visible{outline-offset:2px;outline:3px solid #1677ee59}.gantt-table{--gantt-code-width:88px;--gantt-activity-width:230px;--gantt-unit-width:52px;--gantt-duration-width:56px;--gantt-date-width:92px;--gantt-day-width:36px;border-spacing:0;border-collapse:separate;table-layout:fixed;width:max-content;min-width:100%;color:var(--ink-700);font-size:10px}.gantt-col-code{width:var(--gantt-code-width)}.gantt-col-name{width:var(--gantt-activity-width)}.gantt-col-unit{width:var(--gantt-unit-width)}.gantt-col-duration{width:var(--gantt-duration-width)}.gantt-col-date{width:var(--gantt-date-width)}.gantt-col-day{width:var(--gantt-day-width)}.gantt-table th,.gantt-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 8px}.gantt-table thead th{z-index:5;color:var(--gantt-header-ink);background:var(--gantt-header-bg);text-align:center;font-size:9px;font-weight:760;position:sticky}.gantt-table thead .gantt-month-row th{height:34px;top:0}.gantt-table thead .gantt-month-row .gantt-month-heading{color:var(--gantt-header-ink);background:var(--gantt-header-month);text-transform:uppercase;font-size:10px}.gantt-table thead .gantt-date-row th{z-index:4;height:42px;padding:2px 1px;top:34px}.gantt-table thead .gantt-date-row span,.gantt-table thead .gantt-date-row strong{display:block}.gantt-table thead .gantt-date-row span{color:var(--ink-500);text-transform:capitalize;font-size:8px;font-weight:650;line-height:1.15}.gantt-table thead .gantt-date-row strong{color:var(--gantt-header-ink);margin-top:2px;font-size:10px;font-weight:780}.gantt-table thead .gantt-sticky{z-index:7;background:var(--gantt-header-bg);height:76px!important}.gantt-table thead .gantt-sticky small{color:#6b8092;margin-top:2px;font-size:8px;font-weight:600;display:block}.gantt-sort-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:4px;margin:0 auto;padding:4px 5px;display:inline-flex}.gantt-sort-button:hover{color:#1559a6;background:#1677ee12}.gantt-sort-button:focus-visible{outline-offset:1px;outline:2px solid #1677ee8c}.gantt-sort-indicator{color:#2877b8;min-width:10px;font-size:13px;font-weight:850;line-height:1}.gantt-sticky{background:var(--surface);position:sticky!important}.gantt-sticky-code{left:0}.gantt-sticky-name{left:var(--gantt-code-width)}.gantt-sticky-unit{left:calc(var(--gantt-code-width) + var(--gantt-activity-width))}.gantt-sticky-duration{left:calc(var(--gantt-code-width) + var(--gantt-activity-width) + var(--gantt-unit-width))}.gantt-sticky-start{left:calc(var(--gantt-code-width) + var(--gantt-activity-width) + var(--gantt-unit-width) + var(--gantt-duration-width))}.gantt-sticky-finish{left:calc(var(--gantt-code-width) + var(--gantt-activity-width) + var(--gantt-unit-width) + var(--gantt-duration-width) + var(--gantt-date-width))}.gantt-table tbody th,.gantt-table tbody td{background:var(--surface);height:36px}.gantt-table tbody tr:nth-child(2n) th,.gantt-table tbody tr:nth-child(2n) td{background:var(--surface-soft)}.gantt-table tbody tr:hover th,.gantt-table tbody tr:hover td{background:var(--gantt-row-hover)}.gantt-table tbody .gantt-sticky{z-index:3}.gantt-table tbody .gantt-item-code{color:#315978;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:9px;font-weight:720}.gantt-task-name{color:var(--ink-950);text-overflow:ellipsis;white-space:nowrap;font-weight:660;overflow:hidden}.gantt-task-unit,.gantt-task-duration{text-align:center}.gantt-task-duration{font-variant-numeric:tabular-nums;font-weight:740}.gantt-task-date{color:var(--ink-500);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:9px}.gantt-calendar-cell{padding:0!important}.gantt-lane{grid-template-columns:repeat(var(--gantt-day-count), var(--gantt-day-width));grid-template-rows:35px;width:max-content;min-width:100%;display:grid;position:relative}.gantt-day-cell{background:0 0;border-left:1px solid #c9d5e08c;grid-row:1;min-width:0;height:35px}.gantt-date-heading.is-sunday,.gantt-day-cell.is-sunday{background-color:var(--gantt-sunday)!important}.gantt-date-heading.is-holiday,.gantt-day-cell.is-holiday{background-color:var(--gantt-holiday)!important}.gantt-bar{z-index:2;border-radius:4px;align-self:center;height:19px;margin:0 2px;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #10213b29}.gantt-bar.is-critical,.gantt-swatch.is-critical{background:#c8453b}.gantt-bar.has-float,.gantt-swatch.has-float{background:#2586c3}.gantt-bar.is-unlinked{background:#90aac1}.gantt-bar i{border-radius:inherit;background:#0a314e38;height:100%;display:block;position:absolute;inset:0 auto 0 0}.gantt-legend{border:1px solid var(--line);background:var(--surface-soft);color:var(--ink-700);border-radius:7px;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 12px;font-size:10px;display:flex}.gantt-legend>span{align-items:center;gap:6px;display:inline-flex}.gantt-legend .gantt-legend-title{color:var(--ink-950);margin-right:3px;font-weight:760}.gantt-swatch{border-radius:3px;width:15px;height:12px;display:inline-block}.gantt-swatch.is-sunday{background:#e8edf2;border:1px solid #d9e0e7}.gantt-swatch.is-holiday{background:#ffefc4;border:1px solid #e7be61}.gantt-method-note{color:var(--ink-500);margin:-5px 0 0;font-size:9px;line-height:1.45}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (max-width:840px){.workspace-toolbar{flex-direction:column;align-items:flex-start}.warehouse-summary{justify-content:flex-start}.warehouse-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-actions{justify-content:stretch;width:100%}.table-scroll-hint{display:block}.workspace-search{flex:1;width:auto}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.procurement-totals{flex-wrap:wrap}.report-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-action-hub{grid-template-columns:1fr}.budget-indicator-grid,.apu-indicator-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.budget-detail-heading{flex-direction:column;align-items:flex-start}.budget-detail-heading-actions{flex-wrap:wrap;justify-content:flex-start;align-items:flex-start}.budget-detail-heading .data-panel-hint{text-align:left;max-width:none}.budget-item-form-grid,.budget-line-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-crew-form-section{grid-template-columns:1fr}.budget-crew-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.apu-component-measure-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-item-code-field,.budget-item-field-description,.budget-item-form-actions,.budget-item-field-description{grid-column:span 2}.budget-item-submit{justify-self:start}.gantt-project-header{grid-template-columns:minmax(0,1fr) minmax(230px,290px);gap:14px}.gantt-summary-toolbar{flex-direction:column;align-items:flex-start}.gantt-export-actions{justify-content:flex-start}.gantt-table{--gantt-code-width:76px;--gantt-activity-width:205px;--gantt-unit-width:46px;--gantt-duration-width:48px;--gantt-date-width:82px;--gantt-day-width:32px}}@media (max-width:620px){.workspace-toolbar,.operational-form,.data-panel{padding:15px 13px}.warehouse-main-tabs{align-items:stretch}.warehouse-main-tabs .workspace-mode-tab{min-height:42px;padding:0 11px;font-size:10px}.warehouse-subnav{grid-template-columns:1fr}.warehouse-subnav button{min-height:46px}.warehouse-form-grid,.warehouse-form-grid-purchase{grid-template-columns:1fr}.warehouse-field-wide{grid-column:auto}.warehouse-query-tools{align-items:stretch;width:100%}.warehouse-search{flex:1;width:auto}.warehouse-feedback{flex-direction:column;align-items:flex-start}.warehouse-actions{flex-wrap:wrap}.warehouse-entry-panel{padding:13px}.warehouse-dialog-backdrop{align-items:end;padding:8px}.warehouse-dialog{border-radius:13px 13px 8px 8px;gap:12px;max-height:92vh;padding:14px}.warehouse-dialog-heading{margin:-14px -14px 0;padding:13px 14px 11px;top:-14px}.warehouse-dialog-heading h3{font-size:16px}.warehouse-purchase-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.warehouse-receipt-form .form-actions>button{flex:1;justify-content:center}.workspace-mode-tabs{width:100%}.workspace-mode-tab{flex:1}.project-finance-summary-grid,.project-report-filters{grid-template-columns:1fr}.project-report-actions{flex-direction:column;grid-column:auto;align-items:stretch}.project-report-actions>*{justify-content:center}.project-report-metrics{grid-template-columns:1fr}.project-daily-report-heading{flex-direction:column;align-items:flex-start}.daily-activities-heading{flex-direction:column;align-items:stretch}.daily-activities-heading .secondary-button{align-self:flex-start}.daily-activity-line{grid-template-columns:28px minmax(0,1fr) 36px}.daily-activity-select{grid-column:2/-1}.daily-activity-status{grid-column:2}.daily-activity-remove{grid-area:2/3}.workspace-actions{flex-wrap:wrap}.workspace-search{min-width:100%}.operational-field input,.operational-field select,.operational-field textarea,.client-selector-search input{font-size:16px}.table-action,.table-row-action-select,.budget-row-actions{min-height:44px}.form-grid{grid-template-columns:1fr}.procurement-items-heading{flex-direction:column;align-items:stretch}.procurement-items-heading .secondary-button{align-self:flex-start}.procurement-totals{grid-template-columns:1fr 1fr;display:grid}.procurement-totals .procurement-total{grid-column:1/-1}.operational-field.is-wide,.client-selector-field{grid-column:auto}.client-selector-toolbar{flex-direction:column;align-items:stretch}.form-heading,.data-panel-heading{flex-direction:column;align-items:flex-start}.data-empty{justify-content:flex-start}.report-toolbar,.assistant-hero{flex-direction:column;align-items:flex-start}.report-toolbar-actions{flex-wrap:wrap;width:100%}.report-card-grid,.assistant-grid{grid-template-columns:1fr}.assistant-prompt>div{flex-direction:column;align-items:stretch}.budget-indicator-grid,.apu-indicator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-item-form-grid,.budget-line-form-grid{grid-template-columns:1fr}.budget-line-denomination{grid-column:auto}.budget-crew-form-grid,.apu-component-source-fields,.apu-component-measure-fields,.apu-component-cost-fields{grid-template-columns:1fr}.budget-item-field-description,.budget-item-code-field,.budget-item-form-actions{grid-column:auto}.gantt-project-header{grid-template-columns:1fr;gap:12px}.gantt-project-title h2{font-size:17px}.gantt-project-meta{gap:6px 9px}.gantt-range-label{text-align:left}.gantt-summary-strip .gantt-period-chip{margin-left:0}.gantt-export-actions{width:100%}.gantt-export-actions .secondary-button{flex:1;justify-content:center}.gantt-table{--gantt-code-width:68px;--gantt-activity-width:170px;--gantt-unit-width:42px;--gantt-duration-width:44px;--gantt-date-width:78px;--gantt-day-width:30px}.gantt-table thead .gantt-date-row th{padding-inline:0}.gantt-lane{grid-template-rows:33px}.gantt-day-cell{height:33px}.gantt-legend{gap:9px 13px}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink-950:#e9f1f9;--ink-700:#adc0d5;--ink-500:#8196ad;--line:#28445d;--surface:#102b42;--surface-soft:#0b2033;--blue-100:#173d63;--green-soft:#123d31;--orange-soft:#4a3519;--red-soft:#481f2b;--shadow-sm:0 1px 3px #00000038, 0 5px 18px #00000021}:root:not([data-theme=light]) .obras-topbar,:root:not([data-theme=light]) .workspace-search,:root:not([data-theme=light]) .operational-field input,:root:not([data-theme=light]) .operational-field select,:root:not([data-theme=light]) .operational-field textarea,:root:not([data-theme=light]) .client-selector-search,:root:not([data-theme=light]) .client-selector-suggestions,:root:not([data-theme=light]) .loading-card{background:#102b42}:root:not([data-theme=light]) .global-search,:root:not([data-theme=light]) .data-table th,:root:not([data-theme=light]) .data-empty,:root:not([data-theme=light]) .empty-list,:root:not([data-theme=light]) .quick-action{background:#0f2940}:root:not([data-theme=light]) .global-search,:root:not([data-theme=light]) .topbar-company,:root:not([data-theme=light]) .operational-field input,:root:not([data-theme=light]) .operational-field select,:root:not([data-theme=light]) .operational-field textarea,:root:not([data-theme=light]) .client-selector-search,:root:not([data-theme=light]) .client-selector-suggestions,:root:not([data-theme=light]) .data-table-wrap{border-color:#2b4963}:root:not([data-theme=light]) .table-scroll-hint{color:#a5bad0}:root:not([data-theme=light]) .client-suggestion:hover,:root:not([data-theme=light]) .client-suggestion.is-highlighted,:root:not([data-theme=light]) .client-suggestion.is-selected{background:#17364f}:root:not([data-theme=light]) .global-search,:root:not([data-theme=light]) .workspace-search{color:#9bb0c5}:root:not([data-theme=light]) .data-table th{color:#9bb0c5;border-bottom-color:#2b4963}:root:not([data-theme=light]) .data-table td{color:#bad0e4;border-bottom-color:#203c55}:root:not([data-theme=light]) .data-table tbody tr:hover{background:#17364f}:root:not([data-theme=light]) .activity-row{border-bottom-color:#203c55}:root:not([data-theme=light]) .operational-form{background:#0e2941;border-color:#315a7d}:root:not([data-theme=light]) .project-finance-summary,:root:not([data-theme=light]) .daily-activities-editor,:root:not([data-theme=light]) .project-report-filters,:root:not([data-theme=light]) .project-report-metrics>div{background:#102b42;border-color:#315a7d}:root:not([data-theme=light]) .daily-activity-line,:root:not([data-theme=light]) .project-daily-report-panel{background:#0e2941;border-color:#315a7d}:root:not([data-theme=light]) .daily-activities-heading label,:root:not([data-theme=light]) .daily-activity-line label,:root:not([data-theme=light]) .project-report-metrics span,:root:not([data-theme=light]) .project-daily-report-heading h4{color:#d5e6f5}:root:not([data-theme=light]) .project-report-metrics strong{color:#e1edf8}:root:not([data-theme=light]) .project-finance-metric{background:#0e2941;border-color:#2b4963}:root:not([data-theme=light]) .project-finance-summary-heading h4,:root:not([data-theme=light]) .project-finance-metric strong{color:#e1edf8}:root:not([data-theme=light]) .project-finance-metric>span{color:#b5cce2}:root:not([data-theme=light]) .project-finance-metric small,:root:not([data-theme=light]) .project-finance-summary-note{color:#91abc4}:root:not([data-theme=light]) .assistant-prompt input{background:#102b42;border-color:#2b4963}:root:not([data-theme=light]) .assistant-answer{background:#123b31;border-color:#21684c}:root:not([data-theme=light]) .assistant-answer strong,:root:not([data-theme=light]) .assistant-answer p{color:#a4e0bf}:root:not([data-theme=light]) .workspace-note{color:#a8c1d9;background:#122f49;border-color:#31516c}:root:not([data-theme=light]) .workspace-message{color:#9ee0be;background:#123b31;border-color:#21684c}:root:not([data-theme=light]) .workspace-mode-tab.is-active{color:#8fc5ff;background:#153c60;border-color:#315a7d}:root:not([data-theme=light]) .workspace-mode-tab:hover{color:#b9ddff;background:#17364f}:root:not([data-theme=light]) .module-submodule-tab.is-active{color:#8fc5ff;background:#153c60;border-color:#315a7d}:root:not([data-theme=light]) .module-submodule-tab:hover{color:#b9ddff;background:#17364f}:root:not([data-theme=light]) .module-intro-card{background:linear-gradient(135deg,#12344f 0%,#153c60 100%);border-color:#315a7d}:root:not([data-theme=light]) .module-actions-card{background:#102b42}:root:not([data-theme=light]) .module-action-button{color:#c5d9eb;background:#102b42;border-color:#31516c}:root:not([data-theme=light]) .module-action-button:hover{color:#b9ddff;background:#17364f;border-color:#4d83b1}:root:not([data-theme=light]) .module-action-button.is-primary{color:#fff;background:linear-gradient(90deg,#1677ee,#1c65d8);border-color:#1c69cf}:root:not([data-theme=light]) .access-banner.is-blocked{background:#382d1c;border-color:#71552c}:root:not([data-theme=light]) .access-banner.is-enabled{background:#123b31;border-color:#21684c}:root:not([data-theme=light]) .empty-chart-ring:after{background:#102b42}:root:not([data-theme=light]) .schedule-gantt{--gantt-header-bg:#17364f;--gantt-header-ink:#d7e7f5;--gantt-header-month:#143149;--gantt-row-hover:#17364f;--gantt-sunday:#183149;--gantt-holiday:#4a3a22}:root:not([data-theme=light]) .gantt-project-code{color:#aad4ff;background:#153c60;border-color:#315a7d}:root:not([data-theme=light]) .gantt-summary-strip .gantt-period-chip{color:#b9ddff;background:#153c60;border-color:#315a7d}:root:not([data-theme=light]) .gantt-bar.is-unlinked{background:#667f96}:root:not([data-theme=light]) .gantt-range-help.is-warning{color:#f0bc65}:root:not([data-theme=light]) .gantt-swatch.is-sunday{background:#183149;border-color:#3b566d}:root:not([data-theme=light]) .gantt-swatch.is-holiday{background:#4a3a22;border-color:#8b6a33}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink-950:#e9f1f9;--ink-700:#adc0d5;--ink-500:#8196ad;--line:#28445d;--surface:#102b42;--surface-soft:#0b2033;--blue-100:#173d63;--green-soft:#123d31;--orange-soft:#4a3519;--red-soft:#481f2b;--shadow-sm:0 1px 3px #00000038, 0 5px 18px #00000021}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark] body{background:var(--surface-soft)}:root[data-theme=dark] .obras-topbar,:root[data-theme=dark] .workspace-search,:root[data-theme=dark] .operational-field input,:root[data-theme=dark] .operational-field select,:root[data-theme=dark] .operational-field textarea,:root[data-theme=dark] .client-selector-search,:root[data-theme=dark] .client-selector-suggestions,:root[data-theme=dark] .loading-card{background:#102b42}:root[data-theme=dark] .global-search,:root[data-theme=dark] .data-table th,:root[data-theme=dark] .data-empty,:root[data-theme=dark] .empty-list,:root[data-theme=dark] .quick-action{background:#0f2940}:root[data-theme=dark] .schedule-gantt{--gantt-header-bg:#17364f;--gantt-header-ink:#d7e7f5;--gantt-header-month:#143149;--gantt-row-hover:#17364f;--gantt-sunday:#183149;--gantt-holiday:#4a3a22}:root[data-theme=dark] .gantt-project-code{color:#aad4ff;background:#153c60;border-color:#315a7d}:root[data-theme=dark] .gantt-summary-strip .gantt-period-chip{color:#b9ddff;background:#153c60;border-color:#315a7d}:root[data-theme=dark] .gantt-bar.is-unlinked{background:#667f96}:root[data-theme=dark] .gantt-range-help.is-warning{color:#f0bc65}:root[data-theme=dark] .gantt-swatch.is-sunday{background:#183149;border-color:#3b566d}:root[data-theme=dark] .gantt-swatch.is-holiday{background:#4a3a22;border-color:#8b6a33}:root[data-theme=dark] .global-search,:root[data-theme=dark] .topbar-company,:root[data-theme=dark] .operational-field input,:root[data-theme=dark] .operational-field select,:root[data-theme=dark] .operational-field textarea,:root[data-theme=dark] .client-selector-search,:root[data-theme=dark] .client-selector-suggestions,:root[data-theme=dark] .data-table-wrap{border-color:#2b4963}:root[data-theme=dark] .table-scroll-hint{color:#a5bad0}:root[data-theme=dark] .client-suggestion:hover,:root[data-theme=dark] .client-suggestion.is-highlighted,:root[data-theme=dark] .client-suggestion.is-selected{background:#17364f}:root[data-theme=dark] .data-table th{color:#9bb0c5;border-bottom-color:#2b4963}:root[data-theme=dark] .data-table td{color:#bad0e4;border-bottom-color:#203c55}:root[data-theme=dark] .activity-row{border-bottom-color:#203c55}:root[data-theme=dark] .operational-form{background:#0e2941;border-color:#315a7d}:root[data-theme=dark] .assistant-prompt input{background:#102b42;border-color:#2b4963}:root[data-theme=dark] .assistant-answer{background:#123b31;border-color:#21684c}:root[data-theme=dark] .assistant-answer strong,:root[data-theme=dark] .assistant-answer p{color:#a4e0bf}:root[data-theme=dark] .workspace-note{color:#a8c1d9;background:#122f49;border-color:#31516c}:root[data-theme=dark] .workspace-message{color:#9ee0be;background:#123b31;border-color:#21684c}:root[data-theme=dark] .workspace-mode-tab.is-active{color:#8fc5ff;background:#153c60;border-color:#315a7d}:root[data-theme=dark] .workspace-mode-tab:hover{color:#b9ddff;background:#17364f}:root[data-theme=dark] .module-submodule-tab.is-active{color:#8fc5ff;background:#153c60;border-color:#315a7d}:root[data-theme=dark] .module-submodule-tab:hover{color:#b9ddff;background:#17364f}:root[data-theme=dark] .module-intro-card{background:linear-gradient(135deg,#12344f 0%,#153c60 100%);border-color:#315a7d}:root[data-theme=dark] .module-actions-card{background:#102b42}:root[data-theme=dark] .module-action-button{color:#c5d9eb;background:#102b42;border-color:#31516c}:root[data-theme=dark] .module-action-button:hover{color:#b9ddff;background:#17364f;border-color:#4d83b1}:root[data-theme=dark] .module-action-button.is-primary{color:#fff;background:linear-gradient(90deg,#1677ee,#1c65d8);border-color:#1c69cf}:root[data-theme=dark] .access-banner.is-blocked{background:#382d1c;border-color:#71552c}:root[data-theme=dark] .access-banner.is-enabled{background:#123b31;border-color:#21684c}:root[data-theme=dark] .empty-chart-ring:after{background:#102b42}@media (max-width:720px){.apu-composition-save-row{flex-direction:column;align-items:stretch}.apu-composition-save-row .primary-button{width:100%}}.supplier-detail-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;gap:13px;margin-top:16px;padding:15px;display:grid}.purchase-form-panel{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;gap:13px;margin-top:15px;padding:15px;display:grid}.purchase-form-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.purchase-form-heading h4{color:var(--ink-950);margin:3px 0 4px;font-size:14px}.purchase-form-heading p{color:var(--ink-500);margin:0;font-size:11px;line-height:1.45}.purchase-form-heading .secondary-button{flex:none}.purchase-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:11px;display:grid}.purchase-quote-panel{gap:10px}.purchase-quote-panel .supplier-detail-heading{margin-bottom:1px}.purchase-quote-panel .required-marker{color:var(--red)}.purchase-quote-picker{color:var(--ink-700);gap:6px;font-size:11px;font-weight:700;display:grid}.purchase-quote-picker input{width:100%;min-width:0;min-height:40px;color:var(--ink-700);border:1px dashed var(--line);background:var(--surface);font:inherit;border-radius:8px;padding:7px 9px;font-size:11px}.purchase-quote-picker input:focus-visible{outline:2px solid var(--blue-500);outline-offset:2px}.purchase-quote-help{color:var(--ink-500);font-size:10px;line-height:1.45}.purchase-quote-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.purchase-quote-list>li{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.purchase-quote-list>li>a,.purchase-quote-file{min-width:0;color:var(--blue-600);align-items:center;gap:9px;text-decoration:none;display:flex}.purchase-quote-list>li>a:hover{text-decoration:underline}.purchase-quote-list>li>a>span,.purchase-quote-file>span{gap:2px;min-width:0;display:grid}.purchase-quote-list strong{overflow-wrap:anywhere;color:var(--ink-950);font-size:11px}.purchase-quote-list small{color:var(--ink-500);font-size:9px}.purchase-quote-list em{color:var(--green);border:1px solid var(--line);background:var(--green-soft);border-radius:999px;flex:none;padding:4px 7px;font-size:9px;font-style:normal}.purchase-quote-list .supplier-remove-row{flex:none;width:32px;height:32px}.purchase-issuer-select{grid-column:1/-1}.purchase-readonly-field{border:1px solid var(--line);background:var(--surface);border-radius:7px;align-content:center;gap:5px;min-width:0;min-height:60px;padding:8px 10px;display:grid}.purchase-readonly-field>span{color:var(--ink-500);font-size:10px}.purchase-readonly-field>strong{overflow-wrap:anywhere;color:var(--ink-900);font-size:12px;font-weight:620}.purchase-responsibility-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.purchase-responsibility-panel .purchase-readonly-field{min-height:70px}.purchase-approval-note{color:var(--ink-500);margin:0;font-size:10px;line-height:1.45}.purchase-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.purchase-supplier-grid{grid-template-columns:minmax(240px,1.1fr) minmax(150px,.75fr) minmax(220px,1.2fr)}.purchase-supplier-grid>.operational-field{min-width:0}.purchase-issuer-modal{grid-template-rows:auto auto auto minmax(130px,1fr) auto auto}.purchase-issuer-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.purchase-issuer-fields label{min-width:0;color:var(--ink-700);gap:5px;font-size:11px;font-weight:680;display:grid}.purchase-issuer-fields label:first-child,.purchase-issuer-fields label:nth-child(3),.purchase-issuer-fields>.supplier-class-create{grid-column:1/-1}.purchase-issuer-fields input{width:100%;min-width:0;min-height:38px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;outline:0;padding:8px 10px;font-size:12px}.purchase-issuer-fields input:focus{border-color:#72abe1;box-shadow:0 0 0 2px #1677ee1c}.purchase-issuer-catalog-row>div{flex:1;gap:2px;min-width:0;display:grid}.purchase-issuer-catalog-row>div strong{overflow-wrap:anywhere;color:var(--ink-950);font-size:12px}.purchase-issuer-catalog-row>div small{color:var(--ink-500);font-size:10px}.purchase-issuer-catalog-row.is-archived>div strong{color:var(--ink-500)}.purchase-issuer-editing-label{color:var(--blue-600);flex:none;font-size:10px;font-weight:700}.supplier-detail-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.supplier-detail-heading h4{color:var(--ink-950);margin:3px 0 4px;font-size:14px}.supplier-detail-heading p{color:var(--ink-500);margin:0;font-size:11px;line-height:1.45}.supplier-detail-heading .secondary-button{flex:none}.supplier-bank-rows,.supplier-class-rows{gap:8px;margin:0;padding:0;list-style:none;display:grid}.supplier-bank-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:minmax(175px,1.15fr) minmax(135px,.82fr) minmax(180px,1.2fr) minmax(165px,1fr) 36px;align-items:end;gap:9px;padding:11px;display:grid}.supplier-bank-row label,.supplier-class-row label{min-width:0;color:var(--ink-700);gap:5px;font-size:11px;font-weight:680;display:grid}.supplier-bank-row input,.supplier-bank-row select,.supplier-class-row select,.supplier-class-catalog-row input{width:100%;min-width:0;min-height:38px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;outline:0;padding:8px 10px;font-size:12px}.supplier-bank-row input:focus,.supplier-bank-row select:focus,.supplier-class-row select:focus,.supplier-class-catalog-row input:focus{border-color:#72abe1;box-shadow:0 0 0 2px #1677ee1c}.supplier-bank-row label small{color:var(--ink-500);font-size:10px;font-weight:450}.supplier-remove-row{color:#b94452;cursor:pointer;background:0 0;border:1px solid #edc6ca;border-radius:7px;place-items:center;width:36px;height:38px;padding:0;display:grid}.supplier-remove-row:hover{background:var(--red-soft)}.supplier-class-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:minmax(200px,.72fr) minmax(280px,1.35fr) 36px;align-items:end;gap:9px;padding:10px;display:grid}.supplier-class-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.supplier-class-footer>span{color:var(--ink-500);font-size:10px;line-height:1.45}.supplier-class-footer .secondary-button{flex:none}.supplier-modal-backdrop{z-index:120;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0514229e;place-items:center;padding:22px;display:grid;position:fixed;inset:0;overflow-y:auto}.supplier-class-modal{width:min(700px,100%);max-height:min(790px,100vh - 44px);color:var(--ink-950);border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-rows:auto auto auto minmax(120px,1fr) auto auto;gap:14px;margin:0;padding:21px;display:grid;position:relative;inset:auto;overflow:hidden;box-shadow:0 24px 70px #04142452}.supplier-class-modal-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.supplier-class-modal-header h2{color:var(--ink-950);letter-spacing:-.03em;margin:4px 0;font-size:19px}.supplier-class-modal-header p{color:var(--ink-500);margin:0;font-size:11px;line-height:1.5}.supplier-modal-close{width:36px;height:36px;color:var(--ink-700);border:1px solid var(--line);background:var(--surface-soft);cursor:pointer;border-radius:8px;flex:none;place-items:center;display:grid}.supplier-class-tabs{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;gap:7px;padding:4px;display:flex}.supplier-class-tabs button{min-height:36px;color:var(--ink-700);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;padding:0 13px;font-size:12px;font-weight:680;display:flex}.supplier-class-tabs button.is-active{color:var(--blue-600);border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.supplier-class-tabs button span{min-width:21px;height:21px;color:var(--ink-700);background:var(--surface-soft);border-radius:999px;place-items:center;padding:0 5px;font-size:10px;display:inline-grid}.supplier-class-create{gap:7px;display:grid}.supplier-class-create>label{color:var(--ink-700);font-size:11px;font-weight:700}.supplier-class-create>div{gap:8px;display:flex}.supplier-class-create input{width:100%;min-width:0;min-height:40px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;outline:0;padding:9px 11px;font-size:12px}.supplier-class-create input:focus{border-color:#72abe1;box-shadow:0 0 0 2px #1677ee1c}.supplier-class-catalog{min-height:120px;padding-right:3px;overflow-y:auto}.supplier-class-catalog-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-height:49px;padding:6px 4px;display:flex}.supplier-class-catalog-row>span{color:var(--ink-950);flex:1;font-size:12px;line-height:1.4}.supplier-class-catalog-row input{flex:1}.supplier-class-catalog-row .secondary-button,.supplier-class-catalog-row .primary-button,.supplier-class-archive{flex:none;min-height:34px;padding-inline:10px;font-size:11px}.supplier-class-archive{color:#b94452;cursor:pointer;background:0 0;border:1px solid #edc6ca;border-radius:7px}.supplier-class-archive:hover{background:var(--red-soft)}.supplier-class-empty{min-height:115px;color:var(--ink-500);text-align:center;place-items:center;padding:15px;font-size:12px;display:grid}.supplier-class-notice{color:#21855d;background:var(--green-soft);border:1px solid #bde8d4;border-radius:7px;margin:0;padding:9px 11px;font-size:11px;display:block}.supplier-archived-classes{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;max-height:155px;padding:8px 10px;overflow-y:auto}.supplier-archived-classes summary{color:var(--ink-700);cursor:pointer;font-size:11px;font-weight:700}.supplier-class-catalog-row.is-archived>span{color:var(--ink-500)}.supplier-class-modal-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:11px;display:flex}.supplier-class-modal-footer>span{color:var(--ink-500);font-size:10px;line-height:1.45}:root[data-theme=dark] .supplier-detail-panel,:root[data-theme=dark] .supplier-bank-row,:root[data-theme=dark] .supplier-class-row,:root[data-theme=dark] .supplier-class-modal,:root[data-theme=dark] .supplier-bank-row input,:root[data-theme=dark] .supplier-bank-row select,:root[data-theme=dark] .supplier-class-row select,:root[data-theme=dark] .supplier-class-catalog-row input,:root[data-theme=dark] .supplier-class-create input,:root[data-theme=dark] .purchase-form-panel,:root[data-theme=dark] .purchase-readonly-field,:root[data-theme=dark] .purchase-issuer-modal,:root[data-theme=dark] .purchase-issuer-fields input{background:#102b42}:root[data-theme=dark] .purchase-readonly-field>strong,:root[data-theme=dark] .purchase-issuer-catalog-row>div strong{color:#d7e7f5}:root[data-theme=dark] .supplier-class-tabs,:root[data-theme=dark] .supplier-modal-close,:root[data-theme=dark] .supplier-archived-classes{background:#0b2033}@media (max-width:980px){.purchase-form-grid,.purchase-meta-grid,.purchase-responsibility-grid,.purchase-supplier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-supplier-grid>.operational-field{grid-column:1/-1}.supplier-bank-row{grid-template-columns:repeat(2,minmax(0,1fr)) 36px}.supplier-bank-row label:nth-child(3){grid-column:1}.supplier-bank-row label:nth-child(4){grid-column:2}.supplier-bank-row .supplier-remove-row{grid-area:1/3/span 2;align-self:center}}@media (max-width:620px){.supplier-detail-panel,.purchase-form-panel{padding:12px}.purchase-form-heading{flex-direction:column;align-items:stretch}.purchase-form-heading .secondary-button{justify-content:center;width:100%}.purchase-form-grid,.purchase-meta-grid,.purchase-supplier-grid,.purchase-responsibility-grid{grid-template-columns:1fr}.purchase-issuer-select,.purchase-supplier-grid>.operational-field{grid-column:1}.purchase-issuer-fields{grid-template-columns:1fr}.purchase-issuer-fields label:first-child,.purchase-issuer-fields label:nth-child(3),.purchase-issuer-fields>.supplier-class-create{grid-column:1}.purchase-issuer-catalog-row{align-items:flex-start}.purchase-issuer-catalog-row>div{flex-basis:100%}.supplier-detail-heading,.supplier-class-footer{flex-direction:column;align-items:stretch}.supplier-detail-heading .secondary-button,.supplier-class-footer .secondary-button{justify-content:center;width:100%}.supplier-bank-row,.supplier-class-row{grid-template-columns:minmax(0,1fr) 36px}.supplier-bank-row label,.supplier-class-row label{grid-column:1}.supplier-bank-row .supplier-remove-row,.supplier-class-row .supplier-remove-row{grid-area:1/2/span 4;align-self:center}.supplier-modal-backdrop{padding:10px}.supplier-class-modal{max-height:calc(100vh - 20px);padding:15px}.supplier-class-create>div{flex-direction:column;align-items:stretch}.supplier-class-catalog-row{flex-wrap:wrap;align-items:flex-start}.supplier-class-catalog-row>span{flex-basis:100%}.supplier-class-modal-footer{flex-direction:column;align-items:stretch}.supplier-class-modal-footer .primary-button{justify-content:center}}.brand-mark.has-brand-image{background:#fff;padding:3px;overflow:hidden}.brand-image{background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:8px;width:100%;height:100%;display:block}.admin-settings-workspace{gap:14px;display:grid}.admin-settings-toolbar{align-items:center}.admin-settings-secure{color:var(--ink-500);align-items:center;gap:6px;font-size:11px;display:inline-flex}.admin-settings-grid{grid-template-columns:minmax(0,1.7fr) minmax(270px,.8fr);align-items:start;gap:14px;display:grid}.admin-settings-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-radius:11px;gap:15px;padding:18px;display:grid}.admin-settings-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-settings-card-heading h3{color:var(--ink-950);letter-spacing:-.025em;margin:4px 0;font-size:17px}.admin-settings-card-heading p{max-width:620px;color:var(--ink-500);margin:0;font-size:11px;line-height:1.5}.admin-settings-count{color:var(--blue-600);border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;flex:none;padding:6px 9px;font-size:10px;font-weight:700}.admin-issuer-form{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:14px;display:grid}.admin-issuer-form label{min-width:0;color:var(--ink-700);gap:5px;font-size:11px;font-weight:680;display:grid}.admin-issuer-form label span b{color:#d04c5b}.admin-issuer-form input{width:100%;min-width:0;min-height:39px;color:var(--ink-950);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;outline:0;padding:9px 10px;font-size:12px}:is(.admin-issuer-form input:focus,.admin-logo-file input:focus-visible){border-color:#72abe1;box-shadow:0 0 0 2px #1677ee1c}.admin-issuer-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.admin-issuer-list{gap:2px;display:grid}.admin-issuer-list-heading{justify-content:space-between;align-items:baseline;gap:10px;padding:0 2px 5px;display:flex}.admin-issuer-list-heading strong{color:var(--ink-900);font-size:12px}.admin-issuer-list-heading span{color:var(--ink-500);font-size:10px}.admin-issuer-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-width:0;padding:10px 2px;display:flex}.admin-issuer-row>div{flex:1;gap:3px;min-width:0;display:grid}.admin-issuer-row strong{overflow-wrap:anywhere;color:var(--ink-950);font-size:12px}.admin-issuer-row span,.admin-issuer-row small{overflow-wrap:anywhere;color:var(--ink-500);font-size:10px;line-height:1.4}.admin-issuer-row .secondary-button{flex:none;min-height:32px;padding:0 10px;font-size:10px}.admin-archive-button,.admin-logo-remove{color:#b94452;cursor:pointer;min-height:32px;font:inherit;background:0 0;border:1px solid #edc6ca;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:10px;font-weight:680;display:inline-flex}.admin-archive-button:hover,.admin-logo-remove:hover{background:var(--red-soft)}.admin-archive-button:disabled,.admin-logo-remove:disabled{opacity:.6;cursor:not-allowed}.admin-empty-state{min-height:78px;color:var(--ink-500);border:1px dashed var(--line);text-align:center;border-radius:8px;place-items:center;margin:0;padding:14px;font-size:11px;display:grid}.admin-archived-list{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;padding:10px}.admin-archived-list summary{color:var(--ink-700);cursor:pointer;font-size:11px;font-weight:700}.admin-issuer-row.is-archived strong{color:var(--ink-500)}.admin-brand-card{position:sticky;top:16px}.admin-logo-preview{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;align-items:center;gap:11px;min-height:76px;padding:12px;display:flex}.admin-logo-frame{width:52px;height:52px;color:var(--blue-600);border:1px solid var(--line);background:var(--surface);border-radius:10px;flex:none;place-items:center;display:grid;overflow:hidden}.admin-logo-image{background-position:50%;background-repeat:no-repeat;background-size:contain;width:100%;height:100%;display:block}.admin-logo-preview>div:last-child{gap:4px;min-width:0;display:grid}.admin-logo-preview strong{color:var(--ink-900);font-size:12px}.admin-logo-preview span{overflow-wrap:anywhere;color:var(--ink-500);font-size:10px;line-height:1.4}.admin-logo-file{color:var(--ink-700);gap:7px;font-size:11px;font-weight:680;display:grid}.admin-logo-file input{width:100%;min-width:0;color:var(--ink-700);border:1px solid var(--line);background:var(--surface);font:inherit;border-radius:7px;padding:8px;font-size:10px}.admin-logo-file small{color:var(--ink-500);font-size:10px;font-weight:450;line-height:1.45}.admin-logo-save{justify-content:center;width:100%}.admin-brand-footnote{color:var(--ink-500);border-top:1px solid var(--line);margin:0;padding-top:11px;font-size:10px;line-height:1.5}:root[data-theme=dark] .admin-settings-card,:root[data-theme=dark] .admin-issuer-form,:root[data-theme=dark] .admin-issuer-form input,:root[data-theme=dark] .admin-logo-preview,:root[data-theme=dark] .admin-logo-frame,:root[data-theme=dark] .admin-logo-file input,:root[data-theme=dark] .admin-archived-list{background:#102b42}@media (max-width:980px){.admin-settings-grid{grid-template-columns:minmax(0,1fr)}.admin-brand-card{position:static}}@media (max-width:620px){.admin-settings-card{padding:13px}.admin-settings-toolbar{flex-direction:column;align-items:flex-start}.admin-settings-secure{font-size:10px}.admin-settings-card-heading{align-items:flex-start}.admin-issuer-form{grid-template-columns:1fr;padding:11px}.admin-issuer-actions{flex-direction:column-reverse;grid-column:1;align-items:stretch}.admin-issuer-actions button{justify-content:center}.admin-issuer-list-heading{flex-direction:column;align-items:flex-start;gap:3px}.admin-issuer-row{flex-wrap:wrap;align-items:flex-start}.admin-issuer-row>div{flex-basis:100%}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ds-background:#f4f7fb;--ds-surface:#fff;--ds-surface-secondary:#eef4fa;--ds-border:#d8e3ef;--ds-text-primary:#102f55;--ds-text-secondary:#52677d;--ds-text-muted:#718399;--ds-primary:#0b63f6;--ds-primary-hover:#084fc4;--ds-success:#16a66a;--ds-warning:#f59e0b;--ds-danger:#dc4c64;--ds-info:#0eb7e9;--ds-disabled:#aab8c7;--ds-sidebar:#f4f7fb;--ds-sidebar-surface:#fff;--ds-sidebar-border:#d8e3ef;--ds-sidebar-text:#102f55;--ds-sidebar-muted:#718399;--ds-sidebar-hover:#eef4fa;--ds-sidebar-card:#fff;--ds-font-family:Inter, "Segoe UI", Roboto, Arial, sans-serif;--ds-sidebar-width:248px;--ds-topbar-height:68px;--ds-content-max-width:1680px;--ds-radius-control:8px;--ds-radius-card:12px;--ds-shadow-soft:0 8px 24px #061e3814;--ds-shadow-card:0 2px 10px #061e380f;--ds-shadow-focus:0 0 0 3px #0eb7e942;--navy-950:var(--ds-sidebar);--navy-900:var(--ds-sidebar-surface);--navy-800:#12416b;--blue-600:var(--ds-primary);--blue-500:#1680ff;--blue-100:color-mix(in srgb, var(--ds-primary) 9%, var(--ds-surface));--ink-950:var(--ds-text-primary);--ink-900:var(--ds-text-primary);--ink-700:var(--ds-text-secondary);--ink-500:var(--ds-text-muted);--line:var(--ds-border);--surface:var(--ds-surface);--surface-soft:var(--ds-background);--green:var(--ds-success);--green-soft:color-mix(in srgb, var(--ds-success) 11%, var(--ds-surface));--orange:var(--ds-warning);--orange-soft:color-mix(in srgb, var(--ds-warning) 12%, var(--ds-surface));--red:var(--ds-danger);--red-soft:color-mix(in srgb, var(--ds-danger) 10%, var(--ds-surface));--violet:#7d58dc;--shadow-sm:var(--ds-shadow-card);--shadow-md:var(--ds-shadow-soft)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ds-background:#061626;--ds-surface:#0a2036;--ds-surface-secondary:#0e2a43;--ds-border:#1e4567;--ds-text-primary:#f4f8fc;--ds-text-secondary:#afc3d6;--ds-text-muted:#7f9ab3;--ds-primary:#1680ff;--ds-primary-hover:#3d9bff;--ds-success:#27d48b;--ds-warning:#ffb72e;--ds-danger:#ff657b;--ds-info:#21c3ef;--ds-disabled:#597188;--ds-sidebar:#041321;--ds-sidebar-surface:#0b2945;--ds-sidebar-border:#1e4567;--ds-sidebar-text:#f4f8fc;--ds-sidebar-muted:#7f9ab3;--ds-sidebar-hover:#12334f;--ds-sidebar-card:#0b2945;--ds-shadow-soft:0 8px 24px #0000003d;--ds-shadow-card:0 2px 10px #0003;--ds-shadow-focus:0 0 0 3px #21c3ef47;--navy-800:#123b59;--blue-500:var(--ds-primary-hover);--green-soft:#123d31;--orange-soft:#4a3519;--red-soft:#481f2b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ds-background:#061626;--ds-surface:#0a2036;--ds-surface-secondary:#0e2a43;--ds-border:#1e4567;--ds-text-primary:#f4f8fc;--ds-text-secondary:#afc3d6;--ds-text-muted:#7f9ab3;--ds-primary:#1680ff;--ds-primary-hover:#3d9bff;--ds-success:#27d48b;--ds-warning:#ffb72e;--ds-danger:#ff657b;--ds-info:#21c3ef;--ds-disabled:#597188;--ds-sidebar:#041321;--ds-sidebar-surface:#0b2945;--ds-sidebar-border:#1e4567;--ds-sidebar-text:#f4f8fc;--ds-sidebar-muted:#7f9ab3;--ds-sidebar-hover:#12334f;--ds-sidebar-card:#0b2945;--ds-shadow-soft:0 8px 24px #0000003d;--ds-shadow-card:0 2px 10px #0003;--ds-shadow-focus:0 0 0 3px #21c3ef47;--navy-800:#123b59;--blue-500:var(--ds-primary-hover);--green-soft:#123d31;--orange-soft:#4a3519;--red-soft:#481f2b}}:root,body,button,input,select,textarea{font-family:var(--ds-font-family)}body,.obras-shell{color:var(--ds-text-primary);background:var(--ds-background)}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline-color:var(--ds-info);box-shadow:var(--ds-shadow-focus)}.obras-sidebar{width:var(--ds-sidebar-width);background:linear-gradient(168deg, var(--ds-sidebar-surface), var(--ds-sidebar) 76%);padding:20px 12px 16px;box-shadow:4px 0 18px #061e381a}.brand-lockup{padding-bottom:24px}.brand-mark,.sidebar-context{border-radius:12px}.nav-group{margin-top:16px}.nav-item{border-radius:8px;min-height:40px}.nav-group-toggle{min-height:32px}.sidebar-help{border-radius:12px}.obras-main{margin-left:var(--ds-sidebar-width)}.is-collapsed .obras-sidebar{width:76px}.is-collapsed .obras-main{margin-left:76px}.obras-topbar{height:var(--ds-topbar-height);border-color:var(--ds-border);background:var(--ds-surface);padding-inline:24px}.mobile-menu,.collapse-menu,.icon-button{width:40px;height:40px}.global-search{min-height:40px;color:var(--ds-text-secondary);border-color:var(--ds-border);border-radius:var(--ds-radius-control);background:var(--ds-surface-secondary)}.topbar-company{min-height:40px;color:var(--ds-text-secondary);border-color:var(--ds-border);border-radius:var(--ds-radius-control);background:var(--ds-surface)}.obras-content{max-width:var(--ds-content-max-width);padding:24px 28px 40px}.page-heading{gap:24px;margin-bottom:24px}.page-heading h1{letter-spacing:-.035em;font-size:clamp(28px,2.2vw,32px);font-weight:650}.page-heading p{color:var(--ds-text-secondary)}.page-heading.is-module-heading{margin-bottom:20px}.page-heading.is-module-heading h1{font-size:28px;font-weight:650}.heading-quote{color:var(--ds-text-muted)}.panel,.data-panel,.kpi-card,.module-intro-card,.module-actions-card,.state-card,.module-landing,.report-metric{border-color:var(--ds-border);border-radius:var(--ds-radius-card);background:var(--ds-surface);box-shadow:var(--ds-shadow-card)}.kpi-card{min-height:112px;padding:18px}.kpi-copy span{color:var(--ds-text-secondary)}.kpi-copy strong,.panel-heading h2,.data-panel-heading h3{color:var(--ds-text-primary)}.panel-link{color:var(--ds-primary)}.module-workspace,.composite-module-workspace{gap:16px}.module-submodule-tabs,.workspace-mode-tabs{border-color:var(--ds-border);border-radius:var(--ds-radius-card);background:var(--ds-surface);box-shadow:none;gap:6px;padding:5px}.module-submodule-tab,.workspace-mode-tab{border-radius:var(--ds-radius-control);min-height:40px;color:var(--ds-text-secondary);font-size:12px}.module-submodule-tab.is-active,.workspace-mode-tab.is-active{color:var(--ds-primary);border-color:color-mix(in srgb, var(--ds-primary) 24%, var(--ds-border));background:color-mix(in srgb, var(--ds-primary) 9%, var(--ds-surface));box-shadow:none}.module-intro-card{background:var(--ds-surface-secondary);min-height:136px;padding:24px}.module-intro-copy h2{color:var(--ds-text-primary);font-size:22px;font-weight:650}.module-intro-copy p{color:var(--ds-text-secondary)}.module-action-button{border-radius:var(--ds-radius-control);min-height:44px}.primary-button,.secondary-button{border-radius:var(--ds-radius-control);min-height:40px;padding-inline:14px;font-size:12px}.primary-button{border-color:var(--ds-primary);background:var(--ds-primary);box-shadow:none}.primary-button:hover:not(:disabled){background:var(--ds-primary-hover)}.secondary-button{color:var(--ds-primary);border-color:var(--ds-border);background:var(--ds-surface)}.secondary-button:hover:not(:disabled){border-color:var(--ds-primary);background:var(--ds-surface-secondary)}.operational-form{border-color:var(--ds-border);border-radius:var(--ds-radius-card);background:var(--ds-surface);padding:24px}.form-grid{gap:16px}.form-heading{margin-bottom:20px}.form-heading h2{color:var(--ds-text-primary);font-size:20px;font-weight:650}.operational-field{gap:6px}.operational-field>span,.operational-field>label{color:var(--ds-text-secondary);font-size:12px;font-weight:600}.operational-field input,.operational-field select,.operational-field textarea,.supplier-bank-row input,.supplier-bank-row select,.supplier-class-row select{border-color:var(--ds-border);border-radius:var(--ds-radius-control);background:var(--ds-surface)}.data-panel{padding:20px}.data-panel-heading{margin-bottom:16px}.data-table-wrap{border-color:var(--ds-border);border-radius:10px}.data-table th{color:var(--ds-text-muted);border-bottom-color:var(--ds-border);background:var(--ds-surface-secondary)}.data-table td{color:var(--ds-text-secondary);border-bottom-color:var(--ds-border)}.data-table tbody tr:hover{background:color-mix(in srgb, var(--ds-primary) 5%, var(--ds-surface))}.data-empty,.table-loading{color:var(--ds-text-muted)}.access-banner,.workspace-note,.workspace-message,.assistant-answer{border-radius:var(--ds-radius-card)}@media (max-width:840px){.obras-sidebar,.is-collapsed .obras-sidebar{width:var(--ds-sidebar-width)}.obras-main,.is-collapsed .obras-main{margin-left:0}.obras-topbar{padding-inline:16px}.obras-content{padding-inline:20px}}@media (max-width:620px){.obras-topbar{min-height:60px;padding-inline:10px}.mobile-menu,.icon-button{width:44px;height:44px}.global-search{min-width:0;min-height:40px}.obras-content{padding:20px 14px 28px}.page-heading{gap:12px}.page-heading h1{font-size:28px}.page-heading.is-module-heading h1{font-size:24px}.panel,.data-panel,.operational-form{padding:16px}.primary-button,.secondary-button{min-height:44px}}:root[data-theme=dark] .obras-topbar,:root[data-theme=dark] .global-search,:root[data-theme=dark] .topbar-company,:root[data-theme=dark] .panel,:root[data-theme=dark] .data-panel,:root[data-theme=dark] .kpi-card,:root[data-theme=dark] .module-intro-card,:root[data-theme=dark] .module-actions-card,:root[data-theme=dark] .state-card,:root[data-theme=dark] .module-landing,:root[data-theme=dark] .report-metric,:root[data-theme=dark] .operational-form,:root[data-theme=dark] .operational-field input,:root[data-theme=dark] .operational-field select,:root[data-theme=dark] .operational-field textarea,:root[data-theme=dark] .data-table-wrap,:root[data-theme=dark] .supplier-detail-panel,:root[data-theme=dark] .supplier-bank-row,:root[data-theme=dark] .supplier-class-row,:root[data-theme=dark] .purchase-form-panel,:root[data-theme=dark] .purchase-readonly-field{color:var(--ds-text-primary);border-color:var(--ds-border);background:var(--ds-surface)}:root[data-theme=dark] .global-search,:root[data-theme=dark] .module-intro-card,:root[data-theme=dark] .module-actions-card,:root[data-theme=dark] .data-table th,:root[data-theme=dark] .data-empty,:root[data-theme=dark] .empty-list,:root[data-theme=dark] .quick-action,:root[data-theme=dark] .workspace-search,:root[data-theme=dark] .client-selector-suggestions{background:var(--ds-surface-secondary)}:root[data-theme=dark] .data-table th,:root[data-theme=dark] .data-table td,:root[data-theme=dark] .page-heading h1,:root[data-theme=dark] .form-heading h2,:root[data-theme=dark] .panel-heading h2,:root[data-theme=dark] .data-panel-heading h3,:root[data-theme=dark] .module-intro-copy h2,:root[data-theme=dark] .kpi-copy strong,:root[data-theme=dark] .purchase-readonly-field>strong{color:var(--ds-text-primary)}:root[data-theme=dark] .data-table th,:root[data-theme=dark] .data-table td{border-bottom-color:var(--ds-border)}:root[data-theme=dark] .data-table td,:root[data-theme=dark] .page-heading p,:root[data-theme=dark] .operational-field>span,:root[data-theme=dark] .operational-field>label{color:var(--ds-text-secondary)}:root[data-theme=dark] .data-table tbody tr:hover{background:color-mix(in srgb, var(--ds-primary) 12%, var(--ds-surface))}:root[data-theme=dark] .workspace-mode-tab.is-active,:root[data-theme=dark] .module-submodule-tab.is-active{color:#a8d1ff;border-color:var(--ds-border);background:#153c60}:root[data-theme=dark] .secondary-button{color:#a8d1ff;border-color:var(--ds-border);background:var(--ds-surface-secondary)}:root[data-theme=dark] .secondary-button:hover:not(:disabled){border-color:var(--ds-primary-hover);background:#153c60}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .obras-topbar,:root:not([data-theme=light]) .global-search,:root:not([data-theme=light]) .topbar-company,:root:not([data-theme=light]) .panel,:root:not([data-theme=light]) .data-panel,:root:not([data-theme=light]) .kpi-card,:root:not([data-theme=light]) .module-intro-card,:root:not([data-theme=light]) .module-actions-card,:root:not([data-theme=light]) .state-card,:root:not([data-theme=light]) .module-landing,:root:not([data-theme=light]) .report-metric,:root:not([data-theme=light]) .operational-form,:root:not([data-theme=light]) .operational-field input,:root:not([data-theme=light]) .operational-field select,:root:not([data-theme=light]) .operational-field textarea,:root:not([data-theme=light]) .data-table-wrap{color:var(--ds-text-primary);border-color:var(--ds-border);background:var(--ds-surface)}:root:not([data-theme=light]) .global-search,:root:not([data-theme=light]) .module-intro-card,:root:not([data-theme=light]) .module-actions-card,:root:not([data-theme=light]) .data-table th,:root:not([data-theme=light]) .data-empty,:root:not([data-theme=light]) .empty-list,:root:not([data-theme=light]) .quick-action,:root:not([data-theme=light]) .workspace-search{background:var(--ds-surface-secondary)}}.obras-sidebar{color:var(--ds-sidebar-text);border-right:1px solid var(--ds-sidebar-border)}.brand-copy strong,.context-company,.sidebar-help strong,.user-copy strong{color:var(--ds-sidebar-text)}.brand-copy span{color:var(--ds-primary)}.mobile-close,.nav-group-toggle svg,.nav-item svg,.sidebar-help>svg,.user-lockup>svg{color:var(--ds-sidebar-muted)}.sidebar-context{border-color:var(--ds-sidebar-border);background:var(--ds-sidebar-card)}.context-label,.context-status,.nav-group-toggle,.nav-group-label,.nav-item,.user-copy span,.sidebar-help span{color:var(--ds-sidebar-muted)}.context-status{color:var(--ds-success)}.nav-group-toggle:hover,.nav-item:hover:not(.is-active){color:var(--ds-primary);background:var(--ds-sidebar-hover)}.nav-item:hover:not(.is-active) svg{color:var(--ds-primary)}.obras-sidebar .nav-item.is-active,.obras-sidebar .nav-item.is-active svg{color:#fff}.sidebar-help{border-color:var(--ds-sidebar-border);background:var(--ds-sidebar-card)}.obras-nav{scrollbar-color:color-mix(in srgb, var(--ds-sidebar-muted) 38%, transparent) transparent}
