:root{--paper:#f3f5f9;--card:#fff;--panel:#f7f9fc;--line:#e2e8f1;--line-soft:#ecf0f6;--ink:#243349;--muted:#5f6c84;--navy:#1b3a6b;--navy-deep:#12264a;--navy-hover:#24498a;--sky:#22a0e0;--sky-ink:#1276ae;--sky-soft:#e7f4fc;--sky-line:#b9d6ea;--st-not-started:#6b7a93;--st-not-started-bg:#eff2f7;--st-not-started-line:#e2e8f1;--st-rough-in:#1276ae;--st-rough-in-bg:#e7f4fc;--st-rough-in-line:#b9d6ea;--st-pressure-testing:#0b7c7c;--st-pressure-testing-bg:#e2f3f1;--st-pressure-testing-line:#b5dcd8;--st-fit-off:#6f42c1;--st-fit-off-bg:#efe9fa;--st-fit-off-line:#d5c6f0;--st-commissioning:#b04a0f;--st-commissioning-bg:#fbede2;--st-commissioning-line:#efcdb4;--st-defects:#a96d10;--st-defects-bg:#fcf0d8;--st-defects-line:#ecd096;--st-complete:#178a5b;--st-complete-bg:#e6f4ed;--st-complete-line:#bfe0ce;--st-blocked:#c23a3a;--st-blocked-bg:#f9e7e7;--st-blocked-line:#edc6c6;--good:#178a5b;--good-bg:#e6f4ed;--good-line:#bfe0ce;--warn:#a96d10;--warn-bg:#fcf0d8;--warn-line:#ecd096;--crit:#c23a3a;--crit-bg:#f9e7e7;--crit-line:#edc6c6;--done:#6b7a93;--done-bg:#eff2f7;--sb:#12264a;--sb-2:#1b3a6b;--sb-ink:#e4edf9;--sb-mute:#8aa2c6;--sb-line:#24406e;--shadow:0 1px 2px #12264a0a, 0 6px 18px #12264a0d;--shadow-float:0 6px 16px #12264a1a, 0 20px 48px #12264a29;--radius:10px;--ease:cubic-bezier(.4, 0, .2, 1);--fbody:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fmono:"SF Mono", "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--fbody);-webkit-font-smoothing:antialiased;margin:0;font-size:14.5px;line-height:1.5}button{font-family:inherit}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--fmono)}.app{height:100%;display:flex}.sidebar{background:var(--sb);width:236px;color:var(--sb-ink);flex-direction:column;flex:none;height:100%;display:flex}.sb-top{border-bottom:1px solid var(--sb-line);flex:none;align-items:center;gap:10px;height:58px;padding:0 16px;display:flex}.logotile{background:#fff;border-radius:8px;flex:none;align-items:center;padding:5px 8px;display:flex}.logotile img{height:18px;display:block}.sb-top .os{letter-spacing:.08em;text-transform:uppercase;color:var(--sb-mute);font-size:9px;font-weight:600;line-height:1.25}.sb-nav{flex:1;padding:12px 10px;overflow-y:auto}.grp{margin-bottom:4px}.grp-h{cursor:pointer;letter-spacing:.09em;text-transform:uppercase;width:100%;color:var(--sb-mute);text-align:left;background:0 0;border:none;align-items:center;gap:7px;padding:9px 8px 6px;font-size:10px;font-weight:700;display:flex}.grp-h:hover{color:var(--sb-ink)}.grp-h:focus-visible{outline:2px solid var(--sky);outline-offset:-2px;border-radius:5px}.grp-h .caret{opacity:.75;margin-left:auto;font-size:9px;transition:transform .18s}.grp.closed .caret{transform:rotate(-90deg)}.grp.closed .grp-items{display:none}.grp-items{flex-direction:column;gap:1px;display:flex}.nav-i{cursor:pointer;text-align:left;color:#e4edf9bd;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;width:100%;padding:8px 9px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-i:hover{background:var(--sb-2);color:#fff}.nav-i:focus-visible{outline:2px solid var(--sky);outline-offset:-2px}.nav-i.on{background:var(--sb-2);color:#fff;font-weight:600}.nav-i.on svg{color:var(--sky)}.nav-i svg{opacity:.9;flex:none;width:15px;height:15px}.nav-i .lbl{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.nav-badge{background:var(--sky);color:#04203a;font-variant-numeric:tabular-nums;border-radius:100px;flex:none;padding:1px 7px;font-size:10.5px;font-weight:700;line-height:1.5}.sb-foot{border-top:1px solid var(--sb-line);flex:none;align-items:center;gap:10px;padding:11px 12px;display:flex}.av{width:32px;height:32px;color:var(--sky);background:#22a0e02e;border-radius:50%;flex:none;place-items:center;font-size:12.5px;font-weight:700;display:grid}.sb-foot .nm{flex:1;min-width:0}.sb-foot .nm b{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;display:block;overflow:hidden}.sb-foot .nm span{color:var(--sb-mute);font-size:10px;font-weight:500;display:block}.sb-out{color:var(--sb-mute);cursor:pointer;background:0 0;border:none;border-radius:5px;flex:none;padding:4px}.sb-out:hover{color:#fff}.sb-out svg{width:15px;height:15px;display:block}.maincol{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:14px;height:58px;padding:0 22px;display:flex}.menu-btn{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:none}.tb-brand{flex:none;align-items:center;gap:8px;display:none}.tb-brand .logotile{border:1px solid var(--line-soft)}.tb-os{letter-spacing:.08em;text-transform:uppercase;color:var(--navy);font-size:8.5px;font-weight:700;line-height:1.25}@media (width<=900px){.app.lh-tabs .tb-brand{display:flex}.app.lh-tabs .crumbs .grp-c,.app.lh-tabs .crumbs .sep{display:none}}.menu-btn svg{width:17px;height:17px}.crumbs{white-space:nowrap;align-items:center;gap:7px;min-width:0;font-size:13.5px;display:flex;overflow:hidden}.crumbs .grp-c{color:var(--muted)}.crumbs .sep{color:var(--muted);opacity:.5;font-size:11px}.crumbs .cur{text-overflow:ellipsis;font-weight:600;overflow:hidden}.tb-right{align-items:center;gap:10px;margin-left:auto;display:flex}.lh-preview-exit{border:1px solid var(--line);background:var(--card);color:var(--navy);font:inherit;white-space:nowrap;cursor:pointer;border-radius:8px;padding:6px 9px;font-size:11px;font-weight:700;display:none}.lh-preview-exit:hover{border-color:var(--sky);color:var(--sky-ink)}.entsw{background:var(--panel);border:1px solid var(--line);border-radius:100px;gap:2px;padding:2px;display:flex}.entsw button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:100px;padding:5px 11px;font-size:11.5px;font-weight:600}.entsw button.on{background:var(--navy);color:#fff}.entsw button:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.entsw-pick{cursor:pointer;background:var(--navy);border-color:var(--navy);align-items:center;gap:9px;padding:6px 30px 6px 14px;position:relative;box-shadow:0 1px 4px #0b223859}.entsw-pick:hover{filter:brightness(1.15)}.entsw-pick svg{color:#fffc;flex:none;width:17px;height:17px}.entsw-pick select{color:#fff;cursor:pointer;letter-spacing:.01em;appearance:none;background:0 0;border:none;max-width:240px;padding:2px 0;font-family:inherit;font-size:14px;font-weight:800}.entsw-pick select option{color:var(--navy);background:#fff;font-weight:600}.entsw-pick:after{content:"▾";color:#ffffffd9;pointer-events:none;font-size:13px;position:absolute;top:50%;right:12px;transform:translateY(-52%)}.entsw-pick select:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.projects-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;display:flex}.projects-toolbar .srch{flex:220px;min-width:180px}.proj-sort{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:inline-flex}.project-group{margin-bottom:18px}.project-group-head{z-index:2;background:var(--bg);border-bottom:2px solid var(--line);align-items:center;gap:8px;margin-bottom:8px;padding:7px 10px;font-size:12.5px;display:flex;position:sticky;top:0}.project-group-head b{font-size:13px}.project-group-head .ct{background:var(--panel);border:1px solid var(--line);border-radius:100px;padding:1px 8px;font-size:11px;font-weight:700}.project-group-head .project-group-total{font-variant-numeric:tabular-nums;margin-left:auto;font-weight:700}.ready-dot{background:#c81e1e;border-radius:50%;flex:none;width:9px;height:9px;margin-right:7px;display:inline-block;box-shadow:0 0 0 3px #c81e1e26}.who-chip{background:var(--panel);border:1px solid var(--line);min-width:22px;height:22px;color:var(--muted);letter-spacing:.03em;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;margin-left:7px;padding:0 4px;font-size:10px;font-weight:800;display:inline-flex}.who-chip.pm{background:var(--navy);border-color:var(--navy);color:#fff}.project-facts{background:var(--card);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin:2px 0 16px;padding:10px 14px;display:flex}.project-fact{flex-direction:column;gap:1px;display:inline-flex}.project-fact small{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10.5px}.project-fact b{font-size:13px}.project-fact-desc{color:var(--muted);flex-basis:100%;max-width:75ch;margin:4px 0 0;font-size:12.5px}.schedwrap{border-top:2px solid var(--navy);padding:12px 16px 14px}.schedhead{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.schedhead b{font-size:13px}.schedhead span{color:var(--muted);font-size:11.5px}.schedtbl{width:100%;font-size:12.5px}.schedtbl th,.schedtbl td{padding:5px 8px}.schedtbl tbody tr:nth-child(odd){background:var(--card)}.schedpct{text-align:right;width:64px;padding:3px 6px;font-size:12.5px}.schedact{align-items:center;gap:12px;margin-top:10px;display:flex}.refb{border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.refb svg{width:14px;height:14px}.refb:hover{color:var(--sky-ink);border-color:var(--sky)}.refb.spin svg{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.notif-wrap,.notif-btn{position:relative}.notif-count{border:2px solid var(--card);background:var(--crit);color:#fff;text-align:center;font-variant-numeric:tabular-nums;border-radius:100px;min-width:17px;height:17px;padding:0 4px;font-size:9px;font-weight:800;line-height:13px;position:absolute;top:-7px;right:-7px}.notif-menu{z-index:70;border:1px solid var(--line);background:var(--card);border-radius:12px;width:min(330px,100vw - 28px);position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 16px 42px #0a142838}.notif-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:12px;padding:13px 14px 10px;display:flex}.notif-head b{font-size:13px}.notif-head span{color:var(--muted);font-size:10.5px}.notif-item{border-bottom:1px solid var(--line-soft);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-size:12.5px;font-weight:600;text-decoration:none;display:flex}.notif-item:hover,.notif-item:focus-visible{background:var(--panel)}.notif-item.alert{color:var(--warn);background:var(--warn-bg)}.notif-item b{background:var(--navy);color:#fff;text-align:center;border-radius:100px;min-width:22px;padding:2px 6px;font-size:10px}.notif-item.alert b{background:var(--warn)}.notif-empty{color:var(--muted);padding:15px 14px;font-size:12px}.notif-all{color:var(--navy);text-align:center;padding:10px 14px;font-size:12px;font-weight:750;text-decoration:none;display:block}.notif-all:hover,.notif-all:focus-visible{background:var(--sky-soft);color:var(--sky-ink)}@media (width<=480px){.notif-menu{right:-50px}}.wn-wrap{position:relative}.wn-btn svg{color:var(--sky-ink)}.wn-spotlight{z-index:71;white-space:nowrap;border:1px solid var(--sky-line);background:var(--sky-soft);color:var(--sky-ink);box-shadow:var(--shadow-float);cursor:pointer;animation:wn-pop .18s var(--ease);border-radius:100px;align-items:center;gap:6px;padding:7px 12px;font-size:11.5px;font-weight:700;display:flex;position:absolute;top:calc(100% + 8px);right:-6px}.wn-spotlight svg{width:13px;height:13px}@keyframes wn-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.wn-menu{z-index:70;border:1px solid var(--line);background:var(--card);border-radius:12px;flex-direction:column;width:min(380px,100vw - 28px);max-height:min(560px,100vh - 120px);display:flex;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 16px 42px #0a142838}.wn-list{overflow-y:auto}.wn-card{border-bottom:1px solid var(--line-soft);padding:12px 14px}.wn-card:last-child{border-bottom:none}.wn-card.unseen{background:var(--sky-soft)}.wn-card-h{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:none;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 4px;padding:0;display:flex}.wn-card-t{color:var(--ink);align-items:center;gap:6px;font-size:12.5px;font-weight:750;display:flex}.wn-dot{background:var(--sky-ink);border-radius:100px;flex:none;width:7px;height:7px}.wn-card-d{color:var(--muted);white-space:nowrap;font-size:10.5px}.wn-card-s{color:var(--muted);margin:0 0 8px;font-size:12px;line-height:1.45}.wn-steps{flex-direction:column;gap:8px;margin:0 0 8px;display:flex}.wn-step{border:1px solid var(--line-soft);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.wn-step-b{flex-direction:column;gap:2px;display:flex}.wn-step-b b{color:var(--ink);font-size:11.5px}.wn-step-b span{color:var(--muted);font-size:11.5px}.wn-goto{background:var(--navy);color:#fff;white-space:nowrap;border-radius:100px;flex:none;padding:4px 10px;font-size:10.5px;font-weight:700;text-decoration:none}.wn-goto:hover,.wn-goto:focus-visible{background:var(--navy-hover)}.wn-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wn-act{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:100px;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.wn-act svg{width:12px;height:12px}.wn-act.done{border-color:var(--good-line);background:var(--good-bg);color:var(--good)}.wn-act-note{color:var(--good);align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.wn-act-note svg{width:12px;height:12px}.wn-audience{flex-wrap:wrap;gap:12px;padding:2px 0;display:flex}.wn-audience-opt{color:var(--ink);align-items:center;gap:6px;font-size:12.5px;display:flex}.wn-edit-row{grid-template-columns:1fr 1fr 1fr auto;gap:6px;margin-bottom:6px;display:grid}.wn-edit-remove{border:1px solid var(--line);background:var(--card);width:32px;color:var(--crit);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;display:flex}@media (width<=480px){.wn-menu{right:-70px}.wn-edit-row{grid-template-columns:1fr}}.canvas{background:var(--paper);flex:1;padding:24px 26px 60px;overflow:auto}.canvas-inner{max-width:1120px;margin:0 auto}.canvas-inner.is-wide{max-width:1600px}.scrim{display:none}@media (width<=900px){.menu-btn{display:flex}.sidebar{z-index:40;width:264px;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app.drawer-open .sidebar{transform:none}.app.drawer-open .scrim{z-index:39;background:#0a142873;display:block;position:fixed;inset:0}.canvas{padding:16px 14px 90px}.entsw{display:none}.lh-preview-exit{display:inline-flex}.app.lh-tabs .sidebar,.app.lh-tabs .menu-btn{display:none}}.bottom-tabs{display:none}@media (width<=900px){.app.lh-tabs .bottom-tabs{z-index:40;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-tabs a{text-align:center;color:var(--muted);flex:1;padding:8px 4px 10px;font-size:10px;font-weight:600;text-decoration:none}.bottom-tabs a svg{width:18px;height:18px;margin:0 auto 2px;display:block}.bottom-tabs a.on{color:var(--sky-ink)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.h1{letter-spacing:-.01em;margin:0 0 3px;font-size:23px;font-weight:700}.lead{color:var(--muted);margin:0 0 18px;font-size:13.5px}.subhead{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px;font-size:11.5px;font-weight:700}.section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:24px 0 10px;display:flex}.section-heading h2{letter-spacing:-.01em;margin:0;font-size:17px;line-height:1.25}.section-heading p{color:var(--muted);margin:3px 0 0;font-size:12.5px}.section-count,.data-freshness{color:var(--muted);white-space:nowrap;font-size:11.5px;font-weight:600}.project-health-head{margin-top:0}.project-health-actions{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.project-list-heading{align-items:flex-start;margin-top:0}.project-list-heading .lead{margin-bottom:0}.project-list-kpis{margin-bottom:16px}.project-title-row{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:4px;display:flex}.project-title-row .lead{margin-bottom:0}.project-row-open{min-width:0;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:13px;padding:0;display:flex}.project-row-open:hover .t1{color:var(--sky-ink)}.project-row-open:focus-visible{outline:2px solid var(--sky);outline-offset:4px;border-radius:5px}.project-row-open .mid{display:grid}.project-lifecycle-control{flex:none}.project-lifecycle-select{border:1px solid var(--line);background:var(--panel);width:178px;max-width:100%;color:var(--ink);font-family:var(--fbody);cursor:pointer;border-radius:100px;padding:6px 31px 6px 11px;font-size:11.5px;font-weight:700}.project-lifecycle-select:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.project-lifecycle-select:disabled{cursor:progress;opacity:.65}.project-lifecycle-detail{justify-items:end;gap:4px;padding-top:2px;display:grid}.project-lifecycle-detail label{color:var(--muted);font-size:10.5px;font-weight:650}.lifecycle-awarded{--lc:#445a78}.lifecycle-setup{--lc:#1276ae}.lifecycle-procurement{--lc:#0b7c7c}.lifecycle-ready_for_site{--lc:#178a5b}.lifecycle-live{--lc:#1b3a6b}.lifecycle-commissioning{--lc:#b04a0f}.lifecycle-closeout{--lc:#263a55}.lifecycle-complete{--lc:#6e7d95}.lifecycle-on_hold{--lc:#9c6508}.lifecycle-cancelled{--lc:#c0392b}.project-lifecycle-control[class*=lifecycle-] .project-lifecycle-select,.project-lifecycle-detail[class*=lifecycle-] .project-lifecycle-select{background:var(--lc,var(--panel));border-color:var(--lc,var(--line));color:#fff;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.project-lifecycle-control.lifecycle-live .project-lifecycle-select,.project-lifecycle-detail.lifecycle-live .project-lifecycle-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E"),linear-gradient(135deg,#1b3a6b,#1276ae)}.project-lifecycle-select option{background:var(--card);color:var(--ink)}.project-order-value{font-variant-numeric:tabular-nums;justify-items:end;min-width:94px;display:grid}.project-order-value small{color:var(--muted);font-size:10px}.project-order-value b{font-size:12.5px}@media (width<=760px){.project-title-row{flex-direction:column;align-items:stretch}.project-lifecycle-detail{justify-items:start}.project-lifecycle-select{width:100%}.project-row{flex-wrap:wrap;align-items:flex-start}.project-row .project-row-open{flex-basis:100%;width:100%}.project-row .project-row-open .mid{min-width:0}.project-row .project-lifecycle-control{flex:1;min-width:170px}}.si-page{gap:16px;display:grid}.si-page.embedded{margin-top:2px}.si-hero{box-shadow:var(--shadow);background:linear-gradient(135deg,#f5faff 0%,#fff 68%);border:1px solid #cbdceb;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px;display:flex}.si-hero h1{color:var(--navy-deep);margin:5px 0 6px;font-size:27px;line-height:1.12}.si-page.embedded .si-hero h1{font-size:23px}.si-hero p{max-width:720px;color:var(--muted);margin:0;font-size:12.5px;line-height:1.5}.si-eyebrow{color:var(--sky-ink);letter-spacing:.8px;text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:800;display:inline-flex}.si-eyebrow svg{width:14px;height:14px}.si-boundary,.si-capture-note{color:#285b45;background:#f1faf6;border:1px solid #b8d7c9;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:11.5px;line-height:1.45;display:flex}.si-boundary svg,.si-capture-note svg{flex:none;width:18px;height:18px}.si-boundary span,.si-capture-note span{gap:1px;display:grid}.si-capture-note{color:#765119;background:#fff9eb;border-color:#ecd194;margin-bottom:16px}.si-toolbar{justify-content:flex-end;display:flex}.si-toolbar label{min-width:min(300px,100%);color:var(--muted);gap:4px;font-size:10px;font-weight:700;display:grid}.si-kpis{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.si-kpis>div{border:1px solid var(--line);background:var(--card);min-height:74px;box-shadow:var(--shadow);border-radius:11px;align-items:center;gap:12px;padding:13px 15px;display:flex}.si-kpis>div>svg{box-sizing:content-box;background:var(--sky-soft);width:20px;height:20px;color:var(--navy);border-radius:9px;padding:9px}.si-kpis span{gap:2px;display:grid}.si-kpis small{color:var(--muted);font-size:9.5px;font-weight:650}.si-kpis b{color:var(--navy-deep);font-variant-numeric:tabular-nums;font-size:22px}.si-list-head,.si-section-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.si-list-head h2,.si-section-head h3{color:var(--navy-deep);margin:0;font-size:15px}.si-list-head p,.si-section-head p{color:var(--muted);margin:3px 0 0;font-size:10.5px}.si-visits{gap:8px;display:grid}.si-visit{border:1px solid var(--line);background:var(--card);width:100%;color:inherit;box-shadow:var(--shadow);font:inherit;text-align:left;cursor:pointer;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.si-visit:hover{background:#f9fcff;border-color:#a9cbe3}.si-visit:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.si-visit-icon{background:var(--sky-soft);width:38px;height:38px;color:var(--navy);border-radius:9px;place-items:center;display:grid}.si-visit-icon svg{width:18px}.si-visit-main{min-width:0;color:var(--muted);gap:3px;font-size:10.5px;display:grid}.si-visit-main small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.si-visit-topline{justify-content:space-between;align-items:center;gap:8px;display:flex}.si-visit-topline b{color:var(--navy-deep);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.si-visit-chevron{width:17px;color:var(--muted)}.si-create-dialog{max-width:900px}.si-detail-dialog{max-width:1050px}.si-detail-dialog .dlg-b{padding:0}.si-detail{gap:0;display:grid}.si-detail>section,.si-report{border-top:1px solid var(--line);padding:20px 24px}.si-review-banner{background:#f2f7fc;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px 24px;display:grid}.si-review-banner>svg{width:22px;height:22px;color:var(--navy)}.si-review-banner>span{gap:2px;display:grid}.si-review-banner b{color:var(--navy-deep);font-size:12px}.si-review-banner small{color:var(--muted);font-size:10px;line-height:1.4}.si-meta-grid{background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.si-meta-grid>span{background:var(--card);gap:4px;min-width:0;padding:12px 24px;display:grid}.si-meta-grid small{color:var(--muted);letter-spacing:.4px;text-transform:uppercase;font-size:9px;font-weight:750}.si-meta-grid b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.si-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:11px;display:grid}.si-evidence{border:1px solid var(--line);background:var(--card);color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;display:grid}.si-evidence:hover{border-color:var(--sky);background:var(--sky-soft)}.si-evidence>svg{width:17px;color:var(--sky-ink)}.si-evidence>svg:last-child{width:14px;color:var(--muted)}.si-evidence span{gap:2px;min-width:0;display:grid}.si-evidence b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.si-evidence small{color:var(--muted);text-transform:capitalize;font-size:9px}.si-copy,.si-transcript{color:var(--body);white-space:pre-wrap;margin-top:10px;font-size:11.5px;line-height:1.6}.si-transcript{border:1px solid var(--line);background:#f8fafc;border-radius:8px;max-height:300px;padding:13px;overflow:auto}.si-report-section{border-bottom:1px solid var(--line);padding:13px 0}.si-report-section:last-of-type{border-bottom:0}.si-report-section h4{color:var(--navy-deep);letter-spacing:.45px;text-transform:uppercase;margin:0 0 6px;font-size:10px}.si-report-section p,.si-report-section li{color:var(--body);font-size:11.5px;line-height:1.55}.si-report-section p{margin:0}.si-report-section ul{gap:4px;margin:0;padding-left:18px;display:grid}.si-empty-small{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:8px;margin-top:10px;padding:13px;font-size:10.5px}.si-empty-state{text-align:center;background:#f7fbfe;border:1px dashed #aec9dd;border-radius:11px;justify-items:center;gap:7px;margin:22px 24px;padding:28px;display:grid}.si-empty-state>svg{width:25px;color:var(--sky-ink)}.si-empty-state b{color:var(--navy-deep);font-size:13px}.si-empty-state span{max-width:500px;color:var(--muted);font-size:10.5px}.si-items{gap:9px;margin-top:12px;display:grid}.si-item{border:1px solid var(--line);border-left:3px solid var(--warn);background:var(--card);border-radius:9px;padding:13px}.si-item.status-approved{border-left-color:var(--good)}.si-item.status-rejected{border-left-color:var(--muted);opacity:.72}.si-item-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.si-item-head>span{gap:2px;display:grid}.si-item-head b{color:var(--navy-deep);font-size:11.5px}.si-item-head small,.si-item-meta{color:var(--muted);font-size:9.5px}.si-item>p{color:var(--body);margin:9px 0;font-size:10.5px;line-height:1.5}.si-item-edit{border-top:1px solid var(--line);gap:9px;margin-top:11px;padding-top:11px;display:grid}.si-item-edit>label,.si-form-grid label,.si-create-dialog .dlg-b>label{color:var(--muted);gap:4px;font-size:9.5px;font-weight:700;display:grid}.si-actions{justify-content:flex-end;gap:7px;margin-top:10px;display:flex}.si-actions .btn,.si-actions .btn2{min-height:32px;padding:7px 11px;font-size:10px}.si-actions svg,.si-detail-dialog .dlg-f svg{width:14px;height:14px}.btn2.danger{color:var(--crit);border-color:#edc7c7}.si-form-grid{grid-template-columns:repeat(2,1fr);gap:11px;margin-bottom:11px;display:grid}.si-form-grid.compact{grid-template-columns:1.2fr 1fr 160px;margin-bottom:0}.si-form-grid.notes{margin-top:11px}.si-level-picker{border:1px solid var(--line);background:#fafcfe;border-radius:9px;margin:12px 0;padding:12px}.si-level-picker>b{color:var(--navy-deep);font-size:11px}.si-level-picker>p{color:var(--muted);margin:2px 0 9px;font-size:9.5px}.si-level-picker>div{flex-wrap:wrap;gap:6px;display:flex}.si-level-picker label{border:1px solid var(--line);background:var(--card);color:var(--body);border-radius:7px;align-items:center;gap:5px;padding:6px 8px;font-size:10px;display:flex}.si-drop{cursor:pointer;text-align:center;background:#f6fbff;border:1px dashed #95bcd8;border-radius:10px;justify-items:center;margin-top:12px;padding:22px;color:var(--navy)!important;gap:4px!important;display:grid!important}.si-drop input{opacity:0;width:1px;height:1px;position:absolute}.si-drop svg{width:23px;height:23px}.si-drop b{font-size:11.5px}.si-drop span{color:var(--muted);font-size:9.5px;font-weight:500}.si-file-list{gap:6px;margin-top:9px;display:grid}.si-file-list>div{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;display:grid}.si-file-list svg{width:16px;color:var(--sky-ink)}.si-file-list span{gap:1px;min-width:0;display:grid}.si-file-list b{color:var(--body);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.si-file-list small{color:var(--muted);text-transform:capitalize;font-size:8.5px}.si-file-list button{cursor:pointer;background:0 0;border:0;place-items:center;padding:4px;display:grid}.si-file-list button svg{color:var(--muted)}.si-timeline{gap:0;margin-top:11px;display:grid}.si-timeline>div{grid-template-columns:12px 1fr;gap:8px;min-height:42px;display:grid}.si-timeline i{background:var(--navy);border-radius:50%;width:7px;height:7px;margin-top:4px;position:relative}.si-timeline i:after{background:var(--line);content:"";width:1px;position:absolute;top:8px;bottom:-35px;left:3px}.si-timeline>div:last-child i:after{display:none}.si-timeline span{align-content:start;gap:1px;display:grid}.si-timeline b{color:var(--body);text-transform:capitalize;font-size:10.5px}.si-timeline small{color:var(--muted);font-size:9px}.spin{animation:.9s linear infinite si-spin}@keyframes si-spin{to{transform:rotate(360deg)}}@media (width<=900px){.si-kpis{grid-template-columns:repeat(2,1fr)}.si-evidence-grid{grid-template-columns:1fr}.si-form-grid.compact{grid-template-columns:1fr 1fr}}@media (width<=650px){.si-hero{flex-direction:column;align-items:stretch;padding:18px}.si-hero .btn{width:100%}.si-kpis{grid-template-columns:1fr}.si-kpis>div{min-height:62px}.si-visit{grid-template-columns:auto minmax(0,1fr)}.si-visit-chevron{display:none}.si-visit-topline{flex-direction:column;align-items:flex-start}.si-visit-topline b,.si-visit-main small{white-space:normal}.si-form-grid,.si-form-grid.notes,.si-form-grid.compact,.si-meta-grid{grid-template-columns:1fr}.si-meta-grid>span{padding:10px 18px}.si-review-banner{grid-template-columns:auto minmax(0,1fr);padding:12px 18px}.si-review-banner .pill{grid-column:2;justify-self:start}.si-detail>section,.si-report{padding:17px 18px}.si-actions{flex-direction:column-reverse;align-items:stretch}.si-actions .btn,.si-actions .btn2{width:100%}.si-detail-dialog .dlg-f{flex-direction:column-reverse;align-items:stretch}.si-detail-dialog .dlg-f button{width:100%}}.toolrow{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;display:flex}.spacer{flex:1}.backlink{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-bottom:14px;padding:7px 13px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.backlink:hover{background:var(--panel)}.demo-flag{background:var(--sky-soft);border:1px solid var(--line);color:var(--sky-ink);border-radius:8px;align-items:center;gap:7px;margin-bottom:16px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.btn{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover{background:var(--navy-hover)}.btn:disabled{background:var(--line);color:var(--muted);cursor:default}.btn:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.btn.good{background:var(--good)}.btn.good:hover{filter:brightness(1.06)}.btn.danger{background:var(--crit)}.btn2{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:7px 13px;font-size:12.5px;font-weight:600;display:inline-flex}.btn2:hover{background:var(--panel);border-color:#c4cfdf}.btn2:disabled{color:var(--muted);cursor:default;background:var(--panel)}.btn2.crit{color:var(--crit);border-color:var(--crit-line);background:var(--crit-bg)}.btn2:focus-visible,.tbtn:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.tbtn{color:var(--sky-ink);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:12.5px;font-weight:600}.tbtn:hover{background:var(--sky-soft)}.srch,.sel,.inp,.tarea{border:1px solid var(--line);font-family:var(--fbody);background:var(--card);color:var(--ink);border-radius:8px;padding:8px 11px;font-size:13px}.srch{width:220px}.sel{cursor:pointer;font-weight:600}.inp{width:100%}.tarea{resize:vertical;width:100%;min-height:72px;font-size:13.5px}.workflow-recipient-summary{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:2px;margin-bottom:10px;padding:8px 10px;display:grid}.workflow-recipient-summary b{color:var(--navy);font-size:11.5px}.workflow-recipient-summary span{color:var(--muted);font-size:10.5px;line-height:1.4}.workflow-composer-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.workflow-commitment-help{margin:-8px 0 10px;font-size:11.5px}.workflow-approval-preview{border:1px solid var(--line);background:#fff;border-radius:10px;padding:16px;overflow-x:auto}.workflow-approval-editor{min-height:300px;line-height:1.55}.workflow-availability{border:1px solid var(--line);background:var(--panel);border-radius:10px;margin:0 0 14px;overflow:hidden}.workflow-availability-head{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:10px;padding:11px 12px;list-style:none;display:flex}.workflow-availability-head::-webkit-details-marker{display:none}.workflow-availability-head b,.workflow-availability-head span{display:block}.workflow-availability-head b{color:var(--navy);font-size:12.5px}.workflow-availability-head span{color:var(--muted);margin-top:2px;font-size:10.5px;line-height:1.4}.workflow-availability-head strong{background:var(--warn-bg);color:var(--warn);white-space:nowrap;border-radius:99px;padding:4px 7px;font-size:10px}.workflow-availability-head i{color:var(--sky-ink);font-size:10px;font-style:normal;font-weight:750}.workflow-availability-body{border-top:1px solid var(--line-soft);gap:10px;padding:0 12px 12px;display:grid}.workflow-availability-guidance{color:var(--muted);margin:9px 0 -1px;font-size:10px}.workflow-availability-form{grid-template-columns:1.25fr .8fr .9fr .8fr;align-items:end;gap:9px;display:grid}.workflow-availability-form label>span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:750;display:block}.workflow-availability-form .wide{grid-column:1/-2}.workflow-availability-form .sel{width:100%}.workflow-availability-list{gap:5px;display:grid}.workflow-availability-list>div,.workflow-approval-availability-row,.workflow-month-packages>div{border:1px solid var(--line);background:var(--card);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.workflow-availability-list b,.workflow-availability-list small,.workflow-approval-availability-row b,.workflow-approval-availability-row small,.workflow-month-packages b,.workflow-month-packages small{display:block}.workflow-availability-list b,.workflow-approval-availability-row b,.workflow-month-packages b{color:var(--ink);font-size:11.5px}.workflow-availability-list small,.workflow-approval-availability-row small,.workflow-month-packages small{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.4}.workflow-approval-availability{background:#fffaf0;border:1px solid #efd59d;border-radius:10px;gap:7px;margin-bottom:14px;padding:12px;display:grid}.workflow-approval-availability-row .sel{min-width:175px}.workflow-month-packages{gap:6px;display:grid}.workflow-month-packages strong{color:var(--navy);white-space:nowrap;font-size:11px}.workflow-direction{background:linear-gradient(145deg,#f8fcff 0%,#eef7fd 100%);border:1px solid #b9d8ec;border-radius:14px;margin:14px 0 18px;overflow:hidden;box-shadow:0 8px 24px #1c496f14}.workflow-direction.awaiting{border-color:var(--warn-line);background:linear-gradient(145deg,#fffdf8 0%,#fff8ea 100%)}.workflow-direction-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;padding:16px 18px 14px;display:grid}.workflow-direction-mark{background:var(--navy);border-radius:10px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 5px 12px #1336602e}.workflow-direction-mark span{border:3px solid #fff;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 2px #ffffff59}.workflow-direction.awaiting .workflow-direction-mark{background:var(--warn)}.workflow-direction-copy{min-width:0}.workflow-direction-kicker{color:var(--sky-ink);letter-spacing:.09em;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:800;display:block}.workflow-direction.awaiting .workflow-direction-kicker{color:var(--warn)}.workflow-direction-copy h2{color:var(--navy-deep);margin:0;font-size:18px;line-height:1.2}.workflow-direction-copy p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.45}.workflow-direction-status{white-space:nowrap;border-radius:99px;padding:5px 8px;font-size:9px;font-weight:800}.workflow-direction-status.ready{background:var(--good-bg);color:var(--good)}.workflow-direction-status.waiting{background:var(--warn-bg);color:var(--warn)}.workflow-direction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 18px 15px;display:grid}.workflow-direction-item{background:#ffffffeb;border:1px solid #74a5c759;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:11px 12px;display:flex}.workflow-direction-item>span{min-width:0}.workflow-direction-item b,.workflow-direction-item small{display:block}.workflow-direction-item b{color:var(--navy-deep);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.workflow-direction-item small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;line-height:1.35;overflow:hidden}.workflow-direction-item strong{background:var(--sky-soft);color:var(--sky-ink);white-space:nowrap;border-radius:7px;flex:none;padding:4px 7px;font-size:10px}.workflow-direction-item strong.complete{background:var(--good-bg);color:var(--good)}.workflow-direction-brief{background:#ffffffeb;border:1px solid #74a5c759;border-radius:10px;gap:3px;margin:0 18px 15px;padding:11px 12px;display:grid}.workflow-direction-brief b{color:var(--navy-deep);font-size:12px}.workflow-direction-brief span{color:var(--muted);font-size:10.5px;line-height:1.4}.workflow-direction-foot{background:#ffffff7a;border-top:1px solid #74a5c73d;justify-content:space-between;align-items:center;gap:12px;padding:9px 18px;display:flex}.workflow-direction-foot>span{color:var(--muted);font-size:9.5px}.workflow-direction-foot>div{gap:4px;display:flex}.workflow-direction-history{border-top:1px solid #74a5c73d;gap:6px;padding:10px 18px 15px;display:grid}.workflow-direction-history-row{border:1px solid var(--line);background:var(--card);color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:150px minmax(0,1fr);gap:10px;padding:9px 10px;display:grid}.workflow-direction-history-row:hover,.workflow-direction-history-row.expanded{border-color:var(--sky);background:#f8fbfe}.workflow-direction-history-row b,.workflow-direction-history-row small{display:block}.workflow-direction-history-row b{color:var(--navy);font-size:11px}.workflow-direction-history-row small{color:var(--muted);margin-top:2px;font-size:9px}.workflow-direction-history-row>strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.workflow-direction-history-row .site-forecast-levels{grid-column:1/-1;margin-top:2px}.workflow-secondary-section{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:10px;margin:10px 0;overflow:hidden}.workflow-secondary-section>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;list-style:none;display:flex}.workflow-secondary-section>summary::-webkit-details-marker{display:none}.workflow-secondary-section>summary span{gap:1px;display:grid}.workflow-secondary-section>summary b{color:var(--navy);font-size:12px}.workflow-secondary-section>summary small{color:var(--muted);font-size:9.5px}.workflow-secondary-section>summary i{color:var(--sky-ink);font-size:10px;font-style:normal;font-weight:750}.workflow-secondary-section[open]>summary{border-bottom:1px solid var(--line);background:var(--panel)}.workflow-secondary-content{padding:12px}.workflow-secondary-content.rows{gap:7px}.approval-type-tabs{border-bottom:1px solid var(--line);padding-bottom:4px}.srch::placeholder,.inp::placeholder,.tarea::placeholder{color:var(--muted)}.srch:focus-visible,.sel:focus-visible,.inp:focus-visible,.tarea:focus-visible{outline:2px solid var(--sky);outline-offset:0}.ff{text-align:left}.ff label{color:var(--muted);margin-bottom:4px;font-size:12.5px;font-weight:600;display:block}.fgrid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=640px){.fgrid{grid-template-columns:1fr}}.kpis{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}@media (width<=900px){.kpis{grid-template-columns:repeat(2,1fr)}}.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:flex-start;gap:10px;padding:15px 17px;display:flex}.kpi .k{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:500}.kpi .v{letter-spacing:-.015em;font-variant-numeric:tabular-nums;font-size:21px;font-weight:650}.kpi .v.good{color:var(--good)}.kpi .v.warn{color:var(--warn)}.kpi .v.crit{color:var(--crit)}.kpi .d{color:var(--muted);margin-top:2px;font-size:12px}.chip{border-radius:9px;flex:none;place-items:center;width:36px;height:36px;display:grid}.chip svg{width:16px;height:16px}.chip.sky{background:var(--sky-soft);color:var(--sky-ink)}.chip.warn{background:var(--warn-bg);color:var(--warn)}.chip.good{background:var(--good-bg);color:var(--good)}.chip.done{background:var(--done-bg);color:var(--done)}.project-health{margin-bottom:12px}.commercial-section{margin:18px 0 8px}.commercial-kpis{margin-bottom:10px}.commercial-scope{color:var(--muted);border-left:3px solid var(--sky);background:var(--sky-soft);border-radius:0 8px 8px 0;padding:8px 11px;font-size:11.5px;line-height:1.45}.data-scope{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--ink);border-radius:9px;align-items:flex-start;gap:10px;margin:0 0 16px;padding:11px 13px;font-size:12.5px;line-height:1.45;display:flex}.data-scope>svg{width:17px;height:17px;color:var(--warn);flex:none;margin-top:1px}.data-scope b{margin-bottom:1px;display:block}.data-scope span{color:var(--muted)}.project-settings{margin-bottom:18px;overflow:hidden}.project-settings>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:13px 16px;list-style:none;display:flex}.project-settings>summary::-webkit-details-marker{display:none}.project-settings>summary:hover{background:var(--panel)}.project-settings>summary span:first-child{gap:2px;display:grid}.project-settings>summary b{font-size:13.5px}.project-settings>summary small{color:var(--muted);font-size:11.5px}.project-settings-action{color:var(--sky-ink);font-size:12px;font-weight:650}.project-settings-body{border-top:1px solid var(--line-soft);padding:15px 16px 16px}.project-quick-links{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:18px;margin:0 0 14px;padding:11px 12px 11px 15px;display:flex}.project-quick-links-title{gap:2px;min-width:125px;display:grid}.project-quick-links-title>span{color:var(--ink);font-size:12.5px;font-weight:700}.project-quick-links-title small{color:var(--muted);font-size:10.5px}.project-quick-links-actions{flex:1;grid-template-columns:repeat(3,minmax(145px,1fr));gap:7px;max-width:640px;display:grid}.project-quick-links-actions.leading-hand{grid-template-columns:repeat(2,minmax(145px,1fr));max-width:430px}.project-quick-link{min-width:0;color:var(--ink);border:1px solid var(--line-soft);background:var(--panel);border-radius:9px;grid-template-columns:30px minmax(0,1fr) 14px;align-items:center;gap:8px;padding:8px 9px;text-decoration:none;transition:border-color .15s,background .15s,transform .15s;display:grid}a.project-quick-link:hover{border-color:var(--sky);background:var(--sky-soft);transform:translateY(-1px)}a.project-quick-link:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.project-quick-link-icon{background:var(--card);width:30px;height:30px;color:var(--sky-ink);border-radius:8px;place-items:center;display:grid}.project-quick-link-icon svg{width:15px;height:15px}.project-quick-link>span:nth-child(2){gap:1px;min-width:0;display:grid}.project-quick-link b,.project-quick-link small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-quick-link small{color:var(--muted);font-size:9.5px}.project-quick-link-open{width:13px;height:13px;color:var(--muted)}.project-quick-link.unavailable{opacity:.55}.project-links-editor{border-top:1px solid var(--line-soft);margin-top:15px;padding-top:15px}.project-links-editor-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px;display:flex}.project-links-editor-head b{font-size:12.5px;display:block}.project-links-editor-head p{color:var(--muted);margin:2px 0 0;font-size:11px}.project-link-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.project-link-fields .inp{width:100%}@media (width<=850px){.project-quick-links{flex-direction:column;align-items:flex-start}.project-quick-links-actions{width:100%;max-width:none}.project-link-fields{grid-template-columns:1fr}}@media (width<=580px){.project-quick-links-actions,.project-quick-links-actions.leading-hand{grid-template-columns:1fr}.project-links-editor-head{flex-direction:column;align-items:stretch}.project-links-editor-head .btn{align-self:flex-start}}.procurement-lifecycle-strip{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.procurement-lifecycle-step{background:var(--panel);color:var(--muted);border:1px solid var(--line-soft);border-radius:999px;padding:6px 11px;font-size:11px;font-weight:650}.procurement-lifecycle-step.is-done{background:var(--sky-soft);color:var(--sky-ink);border-color:var(--sky-soft)}.procurement-lifecycle-step.is-current{background:var(--navy);color:#fff;border-color:var(--navy)}.procurement-gate-banner{border:1px solid var(--line-soft);border-radius:10px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;font-size:13px;display:flex}.procurement-gate-banner.is-pending{color:#92620a;background:#fff7e6;border-color:#f3d8a0}.procurement-gate-banner.is-signed{background:var(--sky-soft);color:var(--sky-ink)}.procurement-gate-banner span{flex:1}.procurement-package-row{flex-wrap:wrap}.procurement-package-open{text-align:left;cursor:pointer;min-width:220px;color:inherit;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:0;display:flex}.rowi.is-recommended{border-color:var(--sky);background:var(--sky-soft)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.cardh{justify-content:space-between;align-items:center;gap:10px;padding:15px 18px 10px;display:flex}.cardh .t{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:700}.cardb{padding:4px 18px 16px}.card.pad{padding:16px 18px}.pill{white-space:nowrap;border-radius:100px;flex:none;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.pill.ok{background:var(--good-bg);color:var(--good);border:1px solid var(--good-line)}.pill.pend{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn-line)}.pill.crit{background:var(--crit-bg);color:var(--crit);border:1px solid var(--crit-line)}.pill.done{background:var(--done-bg);color:var(--done);border:1px solid var(--line)}.pill.noted{background:var(--sky-soft);color:var(--sky-ink);border:1px solid var(--line)}.stage-chip{white-space:nowrap;color:#fff;border-radius:4px;flex:none;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-block}.stage-chip.stage-not_started{background:var(--st-not-started)}.stage-chip.stage-rough_in{background:var(--st-rough-in)}.stage-chip.stage-pressure_testing{background:var(--st-pressure-testing)}.stage-chip.stage-fit_off{background:var(--st-fit-off)}.stage-chip.stage-commissioning{background:var(--st-commissioning)}.stage-chip.stage-defects{background:var(--st-defects)}.stage-chip.stage-complete{background:var(--st-complete)}.stage-chip.stage-blocked{background:var(--st-blocked)}.stage-fill-not_started{background:var(--st-not-started)!important}.stage-fill-rough_in{background:var(--st-rough-in)!important}.stage-fill-pressure_testing{background:var(--st-pressure-testing)!important}.stage-fill-fit_off{background:var(--st-fit-off)!important}.stage-fill-commissioning{background:var(--st-commissioning)!important}.stage-fill-defects{background:var(--st-defects)!important}.stage-fill-complete{background:var(--st-complete)!important}.stage-fill-blocked{background:var(--st-blocked)!important}.level-updated-stale{color:var(--warn);font-weight:600}.capture-badge-wrap{flex:none;align-items:center;gap:6px;display:inline-flex}.capture-badge{font-family:var(--fmono);letter-spacing:.02em;white-space:nowrap;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:3px;flex:none;padding:2.5px 7px;font-size:10px;font-weight:600;display:inline-block}.capture-badge.vo{color:#6f42c1;background:#f4f0fb;border-color:#ded3f1}.capture-badge.rw{color:#b04a0f;background:#fcf2ea;border-color:#f0d5c1}.capture-badge.rfi{color:#0b7c7c;background:#eaf5f4;border-color:#c4e1de}.capture-status{white-space:nowrap;background:var(--done);color:#fff;border-radius:4px;flex:none;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-block}.capture-status.captured,.capture-status.sent{background:var(--st-rough-in)}.capture-status.bounced,.capture-status.knocked_back,.capture-status.send_failed{background:var(--crit)}.capture-status.approved,.capture-status.client_approved,.capture-status.answered,.capture-status.in_claim,.capture-status.addressed{background:var(--good)}.capture-status.quoted,.capture-status.pricing,.capture-status.converted{background:var(--st-fit-off)}.capture-status.closed{background:var(--done)}.capture-status.acknowledged{background:var(--sky)}.capture-status.submitted{background:var(--st-commissioning)}.capture-status.rejected{background:var(--crit)}.capture-status.response_received{background:var(--warn)}.register-lanes{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:4px 0 16px;display:grid}@media (width<=900px){.register-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}}.register-lane{border:1px solid var(--line);background:var(--card);border-top:3px solid var(--line);border-radius:10px;padding:12px 14px}.register-lane-label{color:var(--muted);min-height:28px;font-size:11px;font-weight:700;line-height:1.3}.register-lane-count{color:var(--ink);margin-top:4px;font-size:20px;font-weight:800}.register-lane-value{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:1px;font-size:12.5px}.lane-identified_pricing{border-top-color:var(--done)}.lane-pending_client{border-top-color:var(--sky)}.lane-approved_claimed{border-top-color:var(--good)}.lane-ammo_unclaimed{border-top-color:var(--warn)}.lane-rejected{border-top-color:var(--crit)}.register-group-row .t1{text-transform:none}.mail-unread-dot{background:var(--crit);border-radius:50%;flex:none;align-self:flex-start;width:8px;height:8px;margin:5px 0 0 -4px}.rowi.capture-row{align-items:center;gap:12px;padding:14px 16px}.rowi.capture-row:hover{background:var(--panel);border-color:var(--sky)}.rowi.capture-row .capture-badge-wrap{align-self:flex-start;margin-top:1px}.rowi.capture-row .mid{gap:3px;min-width:0;display:grid}.rowi.capture-row .t1{white-space:normal;text-overflow:clip;line-height:1.35;overflow:visible}.rowi.capture-row .t2{white-space:normal;text-overflow:clip;line-height:1.45;overflow:visible}.rowi.capture-row .num{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:12.5px}.rowi.capture-row .chev{align-self:center}@media (width<=640px){.rowi.capture-row{flex-wrap:wrap}.rowi.capture-row .mid{min-width:calc(100% - 120px)}}.project-inbox{border:1px solid var(--line);background:var(--card);border-radius:12px;grid-template-columns:200px minmax(0,1fr) minmax(0,1.4fr);gap:0;min-height:480px;display:grid;overflow:hidden}.project-inbox-rail{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:2px;padding:10px;display:flex}.project-inbox-folder{text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-size:13px;display:flex}.project-inbox-folder span:first-child{flex:none}.project-inbox-folder span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.project-inbox-folder .ct{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.project-inbox-folder:hover{background:var(--card)}.project-inbox-folder.on{background:var(--navy);color:#fff}.project-inbox-folder.on .ct{color:#ffffffb3}.unread-badge{background:var(--crit);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:inline-flex}.project-inbox-list{border-right:1px solid var(--line);flex-direction:column;max-height:640px;display:flex;overflow-y:auto}.project-inbox-compose{margin:10px 10px 4px}.project-inbox-thread{text-align:left;border:none;border-bottom:1px solid var(--line);background:var(--card);cursor:pointer;grid-template-columns:auto 1fr;gap:2px 8px;padding:10px 12px;display:grid}.project-inbox-thread .t1{color:var(--ink);grid-column:2;font-size:13px;font-weight:700}.project-inbox-thread .t2{color:var(--body,var(--ink));grid-column:2;font-size:12.5px}.project-inbox-thread .t3{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:12px;overflow:hidden}.project-inbox-thread .t4{color:var(--muted);grid-column:2;align-items:center;gap:6px;margin-top:2px;font-size:11px;display:flex}.project-inbox-thread.unread .t1{font-weight:800}.project-inbox-thread:hover{background:var(--panel)}.project-inbox-thread.on{background:var(--sky)}.project-inbox-thread .mail-unread-dot{grid-area:1/1;margin:5px 0 0}.project-inbox-pane{flex-direction:column;max-height:640px;padding:16px;display:flex;overflow-y:auto}.project-inbox-pane-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.project-inbox-participants{color:var(--muted);margin-top:2px;font-size:12px;display:block}.project-inbox-pane-actions{flex-wrap:wrap;gap:6px;display:flex}.project-inbox-file-menu{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.project-inbox-messages{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.project-inbox-message{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:10px 12px}.project-inbox-message.out{background:var(--card)}.project-inbox-message-meta{color:var(--muted);margin-bottom:6px;font-size:11.5px}.project-inbox-message-text{color:var(--ink);white-space:pre-wrap;font-size:13px}.project-inbox-message-html{color:var(--ink);font-size:13px;overflow-x:auto}.project-inbox-message-html img{border-radius:6px}.project-inbox-message-html a{color:var(--sky,#1b3a6b)}.project-inbox-attachment-modal{z-index:60;background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.project-inbox-attachment-modal-panel{background:var(--card);border-radius:12px;flex-direction:column;gap:10px;width:min(720px,100%);height:min(80vh,720px);padding:14px;display:flex;box-shadow:0 20px 60px #00000059}.project-inbox-attachment-modal-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.project-inbox-attachment-modal-frame{border:1px solid var(--line);background:#fff;border-radius:8px;flex:1;width:100%}.project-inbox-reply{border-top:1px solid var(--line);gap:8px;margin-top:auto;padding-top:12px;display:grid}@media (width<=900px){.project-inbox{grid-template-columns:1fr}.project-inbox-rail{border-right:none;border-bottom:1px solid var(--line);flex-flow:wrap}.project-inbox-list,.project-inbox-pane{max-height:none}}.capture-detail-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.capture-detail-kind{color:var(--muted);font-size:12px;font-weight:650}.capture-detail-urgent{color:var(--crit);align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.capture-detail-title{color:var(--ink);margin:0 0 12px;font-size:15px;font-weight:700}.capture-detail-grid{margin-bottom:14px}.capture-detail-grid .v{font-size:13px;font-weight:600}.capture-detail-note{white-space:pre-wrap;margin:4px 0 12px;font-size:13.5px;line-height:1.55}.capture-detail-note small{color:var(--muted);margin-top:4px;font-size:11.5px;display:block}.capture-detail-files{margin:6px 0 12px}.capture-detail-record{margin-top:8px}.capture-detail .banner{margin:10px 0}.capture-hero{background:var(--navy-deep);color:#fff;border-radius:10px;margin-bottom:16px;padding:16px 18px}.capture-hero .capture-detail-kind{color:#b9d6ea}.capture-hero .capture-detail-title{color:#fff}.capture-hero-figures{flex-wrap:wrap;gap:20px;margin:4px 0 14px;display:flex}.capture-hero-figures .k{letter-spacing:1px;text-transform:uppercase;color:#9fc4e8;font-size:10px}.capture-hero-figures .v{color:#fff;margin-top:2px;font-size:17px;font-weight:800}.capture-journey{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.capture-journey-step{color:#ffffff8c;cursor:default;background:0 0;border:none;align-items:center;gap:6px;padding:4px 8px 4px 4px;font-family:inherit;font-size:11px;font-weight:650;display:flex}.capture-journey-dot{background:#ffffff4d;border-radius:50%;flex:none;width:8px;height:8px}.capture-journey-step.done{color:#ffffffd9}.capture-journey-step.done .capture-journey-dot{background:var(--good)}.capture-journey-step.on{color:#fff}.capture-journey-step.on .capture-journey-dot{background:var(--sky)}.capture-journey-step.next{cursor:pointer;color:#fffc}.capture-journey-step.next .capture-journey-dot{background:0 0;border:1.5px solid #fff9}.capture-journey-step.next:hover:not(:disabled){color:#fff}.capture-journey-step.next:hover:not(:disabled) .capture-journey-dot{border-color:#fff}.capture-journey-step:disabled{opacity:.7}.capture-photo-thumb{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:8px;flex-direction:column;gap:4px;width:100px;padding:0;display:flex;overflow:hidden}.capture-photo-thumb img{object-fit:cover;width:100%;height:80px;display:block}.capture-photo-thumb span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;padding:3px 6px 5px;font-size:10.5px;overflow:hidden}.capture-lightbox{z-index:1200;background:#0a101ceb;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.capture-lightbox img{object-fit:contain;border-radius:6px;max-width:90vw;max-height:78vh}.capture-lightbox-caption{color:#fff;text-align:center;margin-top:14px;font-size:13px}.capture-lightbox-close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex;position:absolute;top:18px;right:18px}.capture-lightbox-nav{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.capture-lightbox-nav.prev{left:18px}.capture-lightbox-nav.next{right:18px}.capture-thread{flex-direction:column;gap:10px;margin:6px 0 14px;display:flex}.capture-thread-msg{border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:13px}.capture-thread-msg.outbound{border-color:var(--sky-line);background:#f4f8fd}.capture-thread-msg.inbound{background:var(--panel)}.capture-thread-meta{color:var(--muted);justify-content:space-between;gap:10px;margin-bottom:4px;font-size:11px;display:flex}.capture-thread-meta b{color:var(--ink);font-size:12px}.capture-thread-subject{margin-bottom:3px;font-weight:650}.capture-thread-msg p{white-space:pre-wrap;margin:0;line-height:1.5}.capture-letter-preview{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:480px;margin-top:6px}.dlg-error{background:var(--crit-bg);color:var(--crit);border:1px solid var(--crit-line);border-radius:4px;margin-bottom:14px;padding:10px 14px;font-size:13px;font-weight:600;line-height:1.5}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip-row button{appearance:none;touch-action:manipulation;border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;border-radius:4px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:600}.chip-row button.on{font-weight:700}.ff-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=560px){.ff-grid{grid-template-columns:1fr}}.ff-grid input[type=date]{appearance:none;min-height:38px}.chip-row button:hover:not(:disabled){border-color:var(--sky);color:var(--ink)}.chip-row button.on{background:var(--navy);border-color:var(--navy);color:#fff}.chip-row button:disabled{opacity:.45;cursor:not-allowed}.chip-row button:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.select-sheet-field{position:relative}.select-sheet-trigger{text-align:left;appearance:none;border:1px solid var(--line);width:100%;font-family:var(--fbody);background:var(--card);color:var(--ink);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 11px;font-size:13px;display:flex}.select-sheet-trigger:hover:not(:disabled){border-color:var(--sky)}.select-sheet-trigger:disabled{opacity:.55;cursor:not-allowed}.select-sheet-trigger:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.select-sheet-trigger-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-sheet-trigger-text.placeholder{color:var(--muted);font-weight:400}.select-sheet-trigger svg{color:var(--muted);flex:none}.select-sheet-backdrop{z-index:56;background:0 0;position:fixed;inset:0}.select-sheet-panel{z-index:57;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-float);max-height:340px;animation:dlg-in .15s var(--ease);flex-direction:column;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0}.select-sheet-search{border-bottom:1px solid var(--line-soft);align-items:center;gap:8px;padding:8px 10px;display:flex}.select-sheet-search svg{color:var(--muted);flex:none}.select-sheet-search input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1}.select-sheet-list{padding:4px;overflow-y:auto}.select-sheet-row{text-align:left;width:100%;font-family:var(--fbody);color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:11px 12px;font-size:13px;display:flex}.select-sheet-row:hover{background:var(--line-soft)}.select-sheet-row.on{font-weight:700}.select-sheet-row svg{color:var(--navy);flex:none}.select-sheet-empty{text-align:center;color:var(--muted);padding:14px;font-size:12.5px}.select-sheet-footer{border-top:1px solid var(--line-soft);justify-content:flex-end;padding:8px 10px;display:flex}@media (width<=640px){.select-sheet-backdrop{background:#0a142873}.select-sheet-panel{max-height:72vh;animation:select-sheet-up .18s var(--ease);padding-bottom:env(safe-area-inset-bottom,0px);border-radius:16px 16px 0 0;position:fixed;inset:auto 0 0}.select-sheet-search input{font-size:16px}}@keyframes select-sheet-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.fprow{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.fpb{border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;border-radius:100px;padding:6px 13px;font-size:12px;font-weight:600}.fpb:hover{border-color:var(--sky);color:var(--ink)}.fpb.on{background:var(--navy);border-color:var(--navy);color:#fff}.fpb:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.fpb span{opacity:.72;font-variant-numeric:tabular-nums;margin-left:4px}.project-section{margin-top:2px}.levels-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.levels-toolbar .fprow{margin:0}.levels-table th:first-child{width:20%}.levels-table th:nth-child(2),.levels-table th:nth-child(3){width:23%}.levels-table th:nth-child(4){width:16%}.levels-table th:nth-child(5){width:13%}.level-row{cursor:pointer}.level-row:focus-visible{outline:2px solid var(--sky);outline-offset:-2px}.level-row td.nm{align-items:flex-start;gap:8px;display:flex}.level-row td.nm small{color:var(--muted);margin-top:2px;font-size:10.5px;font-weight:500;display:block}.level-caret{color:var(--muted);flex:none;width:10px}.level-metric{min-width:150px}.level-primary{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:8px;font-size:11px;display:flex}.level-primary b{color:var(--ink);font-size:12.5px;font-weight:650}.level-primary span,.level-secondary,.level-unmapped{color:var(--muted)}.level-secondary{font-variant-numeric:tabular-nums;margin:1px 0 5px;font-size:10.5px}.level-unmapped{font-size:11.5px}.level-detail>td{background:var(--panel);padding:14px 16px}.level-detail-actions{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding-bottom:12px;display:flex}.level-detail-actions b{color:var(--navy);font-size:12.5px;display:block}.level-detail-actions span{color:var(--muted);margin-top:2px;font-size:11px;display:block}.order-history-head{margin-top:24px}@media (width<=720px){.section-heading{align-items:flex-start}.project-order-value{display:none}.levels-toolbar{flex-direction:column;align-items:stretch}.levels-toolbar .srch{width:100%}.levels-toolbar .fprow{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.levels-table{box-shadow:none;background:0 0;border:0;overflow-x:visible}.levels-table>table,.levels-table>table>thead,.levels-table>table>tbody{display:block}.levels-table>table>thead{display:none}.levels-table .level-row{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:1fr 1fr;gap:12px;margin-bottom:8px;padding:13px 14px;display:grid}.levels-table .level-row td{border:0;padding:0;display:block}.levels-table .level-row td.nm{grid-column:1/-1}.levels-table .level-row td:nth-child(4),.levels-table .level-row td:nth-child(5){align-self:end}.levels-table .level-row td:last-child{display:none}.levels-table .level-detail{margin:-4px 0 8px;display:block}.levels-table .level-detail>td{border:1px solid var(--line);border-radius:var(--radius);display:block}}.level-progress-door{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:12px 14px;display:flex}.level-progress-door span:first-child{display:block}.level-progress-door b{color:var(--navy);font-size:13.5px;display:block}.level-progress-door small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.material-brief-context{color:var(--ink);margin-bottom:10px;font-size:12.5px;font-weight:700}.material-brief-secondary{margin-top:10px}.material-level-picker{gap:6px;margin:0 0 16px;display:grid}.material-level-picker>span{color:var(--muted);font-size:11px;font-weight:650}.material-level-picker .inp{width:100%}.material-brief-group{margin:0 0 16px}.material-brief-group .subhead{margin-bottom:7px}.material-brief-source{margin-top:16px}.material-brief-source a{color:var(--sky-ink);font-weight:650}.site-level-briefs{margin-top:20px}.site-level-briefs-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px;display:flex}.site-level-kicker{color:var(--sky-ink);letter-spacing:.075em;text-transform:uppercase;margin-bottom:2px;font-size:10px;font-weight:800;display:block}.site-level-briefs-heading h2{color:var(--navy-deep);margin:0;font-size:19px;line-height:1.25}.site-level-briefs-heading p{color:var(--muted);margin:3px 0 0;font-size:12px}.site-level-count{border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:100px;flex:none;padding:5px 9px;font-size:10.5px;font-weight:700}.site-level-data-note{border:1px solid var(--line);border-left:3px solid var(--sky);background:var(--sky-soft);color:var(--sky-ink);border-radius:8px;margin-bottom:10px;padding:9px 11px;font-size:11.5px}.site-level-data-note.warning{border-color:var(--warn-line);border-left-color:var(--warn);background:var(--warn-bg);color:var(--warn)}.site-level-list{flex-direction:column;gap:12px;display:flex}.site-level-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);content-visibility:auto;contain-intrinsic-size:360px;border-radius:13px;overflow:hidden}.site-level-card.blocked{border-color:var(--crit-line)}.site-level-card-head{justify-content:space-between;align-items:flex-start;gap:18px;padding:15px 16px 13px;display:flex}.site-level-card-head>div:first-child{min-width:0}.site-level-card-head h3{color:var(--navy-deep);margin:0;font-size:15px}.site-level-card-head p{color:var(--muted);margin:4px 0 0;font-size:11.5px;line-height:1.45}.site-level-card-state{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.site-order-status{border:1px solid var(--line);background:var(--done-bg);width:max-content;color:var(--done);white-space:nowrap;border-radius:100px;align-items:center;padding:4px 8px;font-size:9.5px;font-weight:750;display:inline-flex}.site-order-status.warning{border-color:var(--warn-line);background:var(--warn-bg);color:var(--warn)}.site-order-status.ordered{border-color:var(--sky-line);background:var(--sky-soft);color:var(--sky-ink)}.site-order-status.delivered{border-color:var(--good-line);background:var(--good-bg);color:var(--good)}.site-order-status.compact{padding:2px 6px;font-size:8.5px}.site-level-quantities{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:var(--panel);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.site-level-quantity{border-right:1px solid var(--line-soft);min-width:0;padding:11px 12px}.site-level-quantity:last-child{border-right:0}.site-level-quantity>span:first-child{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;display:block;overflow:hidden}.site-level-quantity strong{color:var(--navy-deep);font-variant-numeric:tabular-nums;margin:2px 0 5px;font-size:18px;line-height:1.2;display:block}.site-level-no-materials{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:var(--panel);color:var(--muted);padding:10px 16px;font-size:11px}.site-level-no-materials.detail{background:0 0;border:0;padding:10px 0}.site-level-hours{padding:12px 16px}.site-level-hours-title{color:var(--navy);align-items:center;gap:6px;margin-bottom:8px;font-size:10.5px;font-weight:750;display:flex}.site-level-hours-values{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:8px;display:grid}.site-level-hours-values span{min-width:0}.site-level-hours-values small{color:var(--muted);font-size:8.5px;font-weight:650;display:block}.site-level-hours-values b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:12.5px;display:block}.site-level-hours-missing{color:var(--muted);font-size:11px}.site-level-raw-spent{margin:0 0 12px}.site-level-labour-bar{display:flex}.site-level-labour-bar i.downtime-segment{background-color:#0000;background-image:repeating-linear-gradient(45deg, var(--muted) 0, var(--muted) 2px, transparent 2px, transparent 6px)}.downtime-log-button{margin-top:10px}.downtime-log-button.compact{padding:6px 11px;font-size:11.5px}.site-level-blocker,.site-level-latest-note{border-radius:8px;align-items:flex-start;gap:8px;margin:0 16px 11px;padding:9px 10px;font-size:11px;line-height:1.45;display:flex}.site-level-blocker{border:1px solid var(--crit-line);background:var(--crit-bg);color:var(--crit)}.site-level-latest-note{border:1px solid var(--line);background:var(--panel);color:var(--ink)}.site-level-blocker svg,.site-level-latest-note svg{flex:none;margin-top:1px}.site-level-blocker span,.site-level-latest-note span{min-width:0}.site-level-blocker b,.site-level-latest-note b{margin-bottom:1px;font-size:10px;display:block}.site-level-latest-note b{color:var(--navy)}.site-level-latest-note small{color:var(--muted);margin-top:3px;font-size:9px;display:block}.site-level-expand{border:0;border-top:1px solid var(--line-soft);width:100%;color:var(--sky-ink);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;font-size:11px;font-weight:750;display:flex}.site-level-expand:hover{background:var(--sky-soft)}.site-level-expand:focus-visible{outline:2px solid var(--sky);outline-offset:-2px}.site-level-expand svg{transition:transform .18s}.site-level-expand[aria-expanded=true] svg{transform:rotate(180deg)}.site-level-expanded{border-top:1px solid var(--line);background:var(--panel);padding:14px 16px 16px}.site-level-order-summary{border:1px solid var(--line);background:var(--card);border-radius:8px;align-items:center;gap:9px;margin-bottom:13px;padding:9px 10px;display:flex}.site-level-order-summary svg{color:var(--sky-ink);flex:none}.site-level-order-summary span{min-width:0}.site-level-order-summary b{color:var(--navy);font-size:11px;display:block}.site-level-order-summary small{color:var(--muted);margin-top:1px;font-size:9.5px;display:block}.site-level-detail-group+.site-level-detail-group{margin-top:13px}.site-level-detail-group h4{color:var(--muted);letter-spacing:.065em;text-transform:uppercase;margin:0 0 5px;font-size:9px;font-weight:800}.site-level-detail-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;padding:7px 0;font-size:11px;display:flex}.site-level-detail-row span{min-width:0}.site-level-detail-row b{color:var(--navy);font-variant-numeric:tabular-nums;flex:none}.site-level-commercial{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:15px;display:grid;overflow:hidden}.site-level-commercial>div{background:var(--card);min-width:0;padding:9px 10px}.site-level-commercial span{color:var(--muted);font-size:8.5px;font-weight:650;display:block}.site-level-commercial b{color:var(--navy-deep);overflow-wrap:anywhere;margin-top:2px;font-size:11px;display:block}.site-level-history-button{align-items:center;gap:7px;margin-top:14px;display:inline-flex}.site-level-source{margin-top:12px}.site-level-source a{color:var(--sky-ink);font-weight:650}.level-progress-hero{color:#fff;background:linear-gradient(130deg, var(--navy-deep), var(--navy));box-shadow:var(--shadow);border-radius:13px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;padding:17px 18px;display:flex}.level-progress-hero>div:first-child>span{color:#ffffffb8;letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:750;display:block}.level-progress-hero>div:first-child>b{margin-top:3px;font-size:29px;line-height:1;display:block}.level-progress-hero>div:first-child>small{color:#ffffffb8;margin-top:6px;font-size:10.5px;display:block}.level-progress-hero-counts{gap:9px;display:flex}.level-progress-hero-counts span{text-align:center;background:#ffffff14;border:1px solid #ffffff2b;border-radius:9px;min-width:74px;padding:9px 10px;font-size:10.5px}.level-progress-hero-counts span.blocked{background:#bf3e3e59}.level-progress-hero-counts b{font-size:18px;display:block}.level-progress-rows .rowi{min-height:83px}.level-progress-rows .rowi .t1,.level-progress-rows .rowi .t2{display:block}.level-progress-rows .rowi .t2{margin-top:2px}.level-delivery-bar{max-width:280px;margin-top:8px;display:block}.level-progress-badge{flex-wrap:wrap;align-items:center;gap:7px;display:inline-flex}.level-progress-badge>b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:12px}.level-progress-badge.compact{gap:5px}.level-progress-badge.compact .pill{padding:3px 7px;font-size:9.5px}.level-progress-badge.compact>b{font-size:10.5px}.level-blocked{color:var(--crit);align-items:center;gap:3px;font-size:10px;font-weight:750;display:inline-flex}.level-diary-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.level-diary-compose{min-width:0}.level-diary-history{border-left:1px solid var(--line-soft);min-width:0;padding-left:18px}.level-progress-fields{grid-template-columns:minmax(0,1fr) 100px}.level-progress-input{position:relative}.level-progress-input .inp{font-variant-numeric:tabular-nums;padding-right:26px}.level-progress-input span{color:var(--muted);font-size:12px;position:absolute;top:9px;right:9px}.level-progress-range{width:100%;accent-color:var(--navy);margin:7px 0 14px}.level-block-toggle{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:9px;align-items:center;gap:9px;margin-bottom:12px;padding:10px 11px;display:flex}.level-block-toggle.on{background:var(--crit-bg);color:var(--crit);border-color:#e8aaaa}.level-block-toggle input{width:16px;height:16px;accent-color:var(--crit);flex:none}.level-block-toggle span{min-width:0}.level-block-toggle b{font-size:12px;display:block}.level-block-toggle small{color:var(--muted);margin-top:1px;font-size:10px;line-height:1.3;display:block}.level-note-fields{grid-template-columns:minmax(0,180px);margin-top:14px}.level-note{resize:vertical;min-height:92px}.level-files .client-file-grid{grid-template-columns:1fr}.level-files .client-file-card{grid-template-columns:60px minmax(0,1fr)}.level-files .client-file-thumb,.level-files .client-file-doc{width:60px;height:60px}.level-diary-history-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.level-diary-history-head .subhead{margin:3px 0 0}.level-timeline{flex-direction:column;gap:10px;display:flex}.level-timeline-entry{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:11px 12px;position:relative}.level-timeline-meta{margin-bottom:7px}.level-timeline-meta b{color:var(--navy);font-size:11.5px;display:block}.level-timeline-meta span{color:var(--muted);margin-top:1px;font-size:9.5px;display:block}.level-timeline-entry>p{color:var(--ink);white-space:pre-wrap;margin:8px 0 0;font-size:11.5px;line-height:1.48}.level-timeline-blocked{color:var(--crit);background:var(--crit-bg);border-radius:7px;align-items:flex-start;gap:5px;margin-top:8px;padding:7px 8px;font-size:10.5px;font-weight:650;display:flex}.level-timeline-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px;display:grid}.level-timeline-files a{border:1px solid var(--line);min-width:0;color:var(--ink);background:var(--card);border-radius:7px;text-decoration:none;display:block;overflow:hidden}.level-timeline-files img{object-fit:cover;background:var(--line-soft);width:100%;height:82px;display:block}.level-timeline-files a>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:5px 6px;font-size:9.5px;display:block;overflow:hidden}.level-timeline-files a.document{color:var(--sky-ink);align-items:center;gap:6px;padding:8px;display:flex}.level-timeline-files a.document>span{color:inherit;padding:0}@media (width<=720px){.site-level-briefs-heading{gap:10px}.site-level-briefs-heading h2{font-size:17px}.site-level-card-head{flex-direction:column;align-items:flex-start;gap:9px;padding:14px}.site-level-card-state{flex-flow:wrap;align-items:center}.site-level-quantities{grid-template-columns:repeat(2,minmax(0,1fr))}.site-level-quantity{border-bottom:1px solid var(--line-soft)}.site-level-quantity:nth-child(2n){border-right:0}.site-level-quantity:nth-last-child(-n+2){border-bottom:0}.site-level-hours{padding:12px 14px}.site-level-blocker,.site-level-latest-note{margin-left:14px;margin-right:14px}.site-level-expand{padding-left:14px;padding-right:14px}.site-level-expanded{padding:13px 14px 15px}.site-level-commercial{grid-template-columns:1fr}.level-detail-actions{flex-direction:column;align-items:flex-start}.level-diary-layout{grid-template-columns:1fr}.level-diary-history{border-left:0;border-top:1px solid var(--line-soft);padding:18px 0 0}.level-progress-hero{flex-direction:column;align-items:flex-start}.level-progress-hero-counts{width:100%}.level-progress-hero-counts span{flex:1}.level-progress-rows .rowi{flex-wrap:wrap;align-items:flex-start}.level-progress-rows .level-progress-badge{width:100%}.level-progress-rows .rowi .t1,.level-progress-rows .rowi .t2{white-space:normal}}.rows{flex-direction:column;gap:8px;display:flex}.rowi{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);cursor:pointer;color:var(--ink);align-items:center;gap:13px;padding:13px 16px;font-size:14px;text-decoration:none;display:flex}.rowi:hover{border-color:var(--sky)}.rowi:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.rowi.static{cursor:default}.rowi.static:hover{border-color:var(--line)}.ent{letter-spacing:.03em;background:var(--sky-soft);color:var(--sky-ink);border:1px solid var(--line);border-radius:6px;flex:none;padding:3px 8px;font-size:10.5px;font-weight:700}.rowi .mid{flex:1;min-width:0}.rowi .t1{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.rowi .t1 .lv2{color:var(--sky-ink);margin-left:7px;font-size:12.5px;font-weight:600}.rowi .t2{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.amt{text-align:right;font-variant-numeric:tabular-nums;flex:none;font-weight:650}.chev{color:var(--muted);flex:none}.chev svg{width:15px;height:15px;display:block}.minibar{background:var(--line-soft);border-radius:4px;flex:none;width:74px;height:6px;overflow:hidden}.minibar i{background:var(--navy);height:100%;display:block}.minibar.wide{width:100%}.onboarding-section.open>.rowi{border-radius:var(--radius) var(--radius) 0 0;box-shadow:none}.onboarding-number{font-size:12px}.onboarding-actions{flex:none;align-items:center;gap:8px;display:flex}.onboarding-quiz{background:var(--card);border:1px solid var(--line);border-top-color:var(--line-soft);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);padding:18px 20px 20px}.onboarding-quiz-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:13px;display:flex}.onboarding-quiz-head b{font-size:14px;display:block}.onboarding-quiz-head>div>span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.onboarding-quiz-progress{border:1px solid var(--line);background:var(--panel);color:var(--muted);font-variant-numeric:tabular-nums;border-radius:100px;flex:none;padding:4px 10px;font-size:11.5px;font-weight:650}.onboarding-question{padding:17px 0 2px}.onboarding-question+.onboarding-question{border-top:1px solid var(--line-soft);margin-top:16px}.onboarding-question-title{align-items:flex-start;gap:9px;font-size:14px;display:flex}.onboarding-question-title>span{background:var(--sky-soft);width:22px;height:22px;color:var(--sky-ink);border-radius:50%;flex:none;place-items:center;font-size:10.5px;font-weight:750;display:grid}.onboarding-question-title>b{padding-top:1px}.onboarding-options{gap:7px;margin:10px 0 0 31px;display:grid}.onboarding-option{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:13px;display:flex}.onboarding-option:hover{border-color:var(--sky);background:var(--sky-soft)}.onboarding-option:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.onboarding-option:disabled{cursor:default;opacity:1}.onboarding-option.correct{border-color:var(--good-line);background:var(--good-bg);color:var(--good)}.onboarding-option.incorrect{border-color:var(--crit-line);background:var(--crit-bg);color:var(--crit)}.onboarding-option.muted{color:var(--muted);background:var(--panel)}.onboarding-explanation{border-left:3px solid var(--good);background:var(--good-bg);color:var(--ink);border-radius:0 7px 7px 0;margin:9px 0 0 31px;padding:9px 11px;font-size:12.5px}.onboarding-explanation.incorrect{border-left-color:var(--warn);background:var(--warn-bg)}.onboarding-explanation.correct>b{color:var(--good)}.onboarding-explanation.incorrect>b{color:var(--warn)}.onboarding-quiz-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding-top:15px;display:flex}.onboarding-quiz-footer>span{color:var(--muted);font-size:12px}.onboarding-section .rowi .t1,.onboarding-section .rowi .t2{white-space:normal;display:block}.onboarding-section .rowi .t2{margin-top:2px}@media (width<=700px){.onboarding-section .rowi{flex-wrap:wrap;align-items:flex-start;padding:12px}.onboarding-section .mid{min-width:calc(100% - 48px)}.onboarding-section .rowi .t1,.onboarding-section .rowi .t2{white-space:normal;display:block}.onboarding-actions{flex-wrap:wrap;width:100%;padding-left:45px}.onboarding-quiz{padding:15px 13px 16px}.onboarding-quiz-head,.onboarding-quiz-footer{flex-direction:column;align-items:stretch}.onboarding-quiz-progress{align-self:flex-start}.onboarding-options,.onboarding-explanation{margin-left:0}.onboarding-quiz-footer .btn{justify-content:center}}.tblwrap{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--panel);padding:11px 15px;font-size:11px;font-weight:600}td{border-bottom:1px solid var(--line-soft);padding:11px 15px}tbody tr:last-child td{border-bottom:none}tbody tr.hov:hover{background:var(--panel)}th.n,td.n{text-align:right;font-variant-numeric:tabular-nums}td.nm{font-weight:600}td.mut{color:var(--muted)}td.cno{font-family:var(--fmono);font-size:12px;font-weight:600}tfoot td{border-top:1px solid var(--line);background:var(--panel);padding:11px 15px;font-weight:700}.tnote{color:var(--muted);margin-top:10px;font-size:12px}.stp{background:var(--panel);border:1px solid var(--line);border-radius:9px;align-items:center;gap:4px;padding:2px;display:inline-flex}.stp button{width:30px;height:30px;color:var(--sky-ink);cursor:pointer;background:0 0;border:none;border-radius:7px;font-size:18px;font-weight:700;line-height:1}.stp button:hover{background:var(--sky-soft)}.stp button:disabled{color:var(--line);cursor:default;background:0 0}.stp input.q{border:0;border-left:1px solid var(--line-soft);border-right:1px solid var(--line-soft);background:var(--card);width:52px;min-width:0;height:30px;color:var(--ink);font:inherit;text-align:center;font-variant-numeric:tabular-nums;border-radius:0;padding:0 5px;font-size:13.5px;font-weight:700}.stp input.q:focus-visible{outline:2px solid var(--sky);outline-offset:0;position:relative}.stp input.q:disabled{background:var(--panel);color:var(--muted)}.order-review{margin-top:16px}.order-review .subhead{margin:0 0 3px}.order-review .tnote{margin:0}.order-review-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;display:flex}.order-review-head>b{color:var(--navy);white-space:nowrap;font-size:16px}.order-review-level{padding:13px 0 2px}.order-review-level+.order-review-level{border-top:1px solid var(--line)}.order-review-level-head{color:var(--sky-ink);text-transform:uppercase;letter-spacing:.03em;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;font-size:12.5px;font-weight:700;display:flex}.order-review-level-head span{color:var(--muted);text-transform:none;letter-spacing:normal;font-size:11.5px;font-weight:650}.order-review-supplier{padding:13px 0 2px}.order-review-supplier+.order-review-supplier{border-top:1px solid var(--line-soft)}.order-review-supplier-head{color:var(--navy);justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;font-size:13px;display:flex}.order-review-supplier-head span{color:var(--muted);font-size:11.5px}.order-review-line{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding:8px 0;display:grid}.order-review-line b{text-overflow:ellipsis;color:var(--ink);font-size:12.5px;display:block;overflow:hidden}.order-review-line small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.order-review-line>.num{font-size:12.5px;font-weight:700}.order-review-remove{color:var(--crit);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px;font-size:11px;font-weight:650}.order-review-remove:hover{text-decoration:underline}.ogh{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);justify-content:space-between;margin:14px 0 5px;font-size:11px;font-weight:700;display:flex}.ototals{width:min(300px,100%);margin-left:auto;padding:8px 0 0}.ototals .r{justify-content:space-between;padding:2px 0;font-size:13px;display:flex}.ototals .r .v{font-variant-numeric:tabular-nums}.ototals .big{border-top:1px solid var(--line);margin-top:5px;padding-top:8px;font-size:15.5px;font-weight:700}.oact{border-top:1px solid var(--line);background:var(--panel);border-radius:0 0 var(--radius) var(--radius);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 18px;display:flex}.order-add-items{border:1px solid var(--line);background:var(--card);text-align:left;border-radius:10px;margin-bottom:14px;padding:13px}.order-add-items-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.order-add-items-head b{font-size:13px;display:block}.order-add-items-head p{color:var(--muted);margin:2px 0 0;font-size:11px}.order-add-items-head strong{color:var(--sky-ink);white-space:nowrap;font-size:14px}.order-add-suppliers{margin-bottom:8px}.order-add-search{width:100%}.order-add-note{margin:8px 0 0}.order-add-results{border:1px solid var(--line-soft);border-radius:9px;margin-top:8px;overflow:hidden}.order-add-result{background:var(--card);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:54px;padding:8px 10px;display:grid}.order-add-result+.order-add-result{border-top:1px solid var(--line-soft)}.order-add-result>div{min-width:0}.order-add-result b,.order-add-result small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.order-add-result b{font-size:12px}.order-add-result small{color:var(--muted);margin-top:2px;font-size:10.5px}.order-add-result>.num,.order-add-result>.rate-missing{white-space:nowrap;font-size:11.5px;font-weight:650}.order-add-result>.rate-missing{color:var(--warn)}.order-add-existing{color:var(--muted);white-space:nowrap;font-size:10.5px;font-weight:650}.order-added-review{border-top:1px solid var(--line-soft);margin-top:11px;padding-top:10px}.order-added-review>b{margin-bottom:5px;font-size:11.5px;display:block}.order-added-review>div{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:6px 0;display:grid}.order-added-review span{min-width:0;font-size:11.5px;font-weight:600}.order-added-review small{color:var(--muted);margin-top:1px;font-size:10px;font-weight:400;display:block}.order-added-review button{color:var(--crit);font:inherit;cursor:pointer;background:0 0;border:0;font-size:10.5px}@media (width<=620px){.order-add-result{grid-template-columns:minmax(0,1fr) auto;gap:5px 9px}.order-add-result>.stp,.order-add-existing{grid-column:1/-1;justify-self:start}.order-added-review>div{grid-template-columns:minmax(0,1fr) auto}.order-added-review button{grid-column:1/-1;justify-self:start;padding:0}.order-review-line{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px}.order-review-remove{grid-column:1/-1;justify-self:start;padding-left:0}}.banner{background:var(--good-bg);border:1px solid var(--good-line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:13px;margin-bottom:18px;padding:13px 16px;display:flex}.banner.warn{background:var(--warn-bg);border-color:var(--warn-line)}.banner .bi{color:var(--good);flex:none;display:flex}.banner.warn .bi{color:var(--warn)}.banner .bi svg{width:17px;height:17px}.banner .bg2{flex:1;min-width:200px;font-size:13px}.banner .bt{color:var(--good);font-weight:700}.banner.warn .bt{color:var(--warn)}.banner .bd{color:var(--muted);font-size:12.5px}.hero{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:18px;padding:20px 22px;display:flex}.gauge{border-radius:50%;flex:none;place-items:center;width:104px;height:104px;display:grid}.gauge .in{background:var(--card);text-align:center;border-radius:50%;place-items:center;width:78px;height:78px;display:grid}.gauge .gn{font-variant-numeric:tabular-nums;font-size:19px;font-weight:700;line-height:1}.gauge .gl{letter-spacing:.1em;color:var(--muted);margin-top:3px;font-size:9px;font-weight:600}.hero .big{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:25px;font-weight:700}.hero .big small{color:var(--muted);font-size:13px;font-weight:400}.hero .sub{color:var(--muted);margin-top:3px;font-size:12.5px}.glance{gap:12px;display:grid}.glrow{grid-template-columns:minmax(110px,150px) 1fr 1fr;align-items:center;gap:14px;display:grid}.glname{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.glcell .gl-l{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:11px;display:flex}.glcell .gl-l b{color:var(--ink);font-weight:650}.gl-head{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);grid-template-columns:minmax(110px,150px) 1fr 1fr;gap:14px;margin-bottom:2px;font-size:11px;font-weight:600;display:grid}@media (width<=720px){.glrow,.gl-head{grid-template-columns:1fr;gap:6px}.gl-head span+span{display:none}.glrow{border-bottom:1px solid var(--line-soft);padding-bottom:10px}.glrow:last-child{border-bottom:none;padding-bottom:0}}.sgrid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width<=640px){.sgrid{grid-template-columns:repeat(2,1fr)}}.sgrid .k{color:var(--muted);font-size:11px;font-weight:500}.sgrid .v{font-variant-numeric:tabular-nums;font-size:16px;font-weight:650}.sgrid .v.good{color:var(--good)}.dlg-scrim{z-index:50;background:#0a142873;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.dlg{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-float);width:100%;max-width:520px;max-height:88vh;animation:dlg-in .18s var(--ease);overflow:auto}@keyframes dlg-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.dlg.wide{max-width:760px}.dlg.cr-request-detail{max-width:1120px}.dlg-h{padding:16px 20px 6px}.dlg-h .t{font-size:17px;font-weight:700}.dlg-h .s{color:var(--muted);margin-top:2px;font-size:12.5px}.dlg-b{padding:10px 20px 16px}.dlg-f{border-top:1px solid var(--line-soft);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 20px 16px;display:flex}.update-bar{z-index:55;left:50%;bottom:calc(74px + env(safe-area-inset-bottom,0px));background:var(--sky);color:#04203a;cursor:pointer;font-family:var(--fbody);box-shadow:var(--shadow);border:none;border-radius:100px;padding:11px 20px;font-size:13px;font-weight:700;position:fixed;transform:translate(-50%)}@media (width>=901px){.update-bar{bottom:26px}}.toast{z-index:60;background:var(--navy-deep);color:#fff;box-shadow:var(--shadow);pointer-events:none;opacity:0;border-radius:100px;padding:11px 20px;font-size:13px;font-weight:600;transition:opacity .18s,transform .18s;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.toast.show{opacity:1;transform:translate(-50%)translateY(-4px)}.empty{text-align:center;color:var(--muted);padding:34px;font-size:13.5px}.skel{background:linear-gradient(100deg, var(--line-soft) 35%, var(--card) 48%, var(--line-soft) 61%);background-size:220% 100%;border-radius:8px;animation:1.3s linear infinite shimmer}@keyframes shimmer{0%{background-position:130% 0}to{background-position:-90% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.dz{border:1.5px dashed var(--line);border-radius:var(--radius);text-align:center;color:var(--muted);background:var(--panel);margin-top:8px;padding:20px;font-size:12.5px}.client-files{border-top:1px solid var(--line-soft);margin-top:16px;padding-top:14px}.client-files-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:10px;display:flex}.client-files-heading .subhead{color:var(--navy);align-items:center;gap:6px;margin:0 0 2px;display:flex}.client-files-heading .tnote{margin:0}.client-files-count{background:var(--sky-bg);color:var(--sky-ink);white-space:nowrap;border-radius:100px;flex:none;padding:5px 9px;font-size:11px;font-weight:700}.client-file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:10px;display:grid}.client-file-card{border:1px solid var(--line);background:var(--card);border-radius:10px;grid-template-columns:72px minmax(0,1fr);gap:10px;min-width:0;padding:9px 35px 9px 9px;display:grid;position:relative}.client-file-thumb{object-fit:cover;background:var(--line-soft);border-radius:7px;width:72px;height:72px}.client-file-doc{width:72px;height:72px;color:var(--sky-ink);background:var(--sky-bg);border-radius:7px;place-items:center;display:grid}.client-file-body{min-width:0}.client-file-body>b{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:12px;display:block;overflow:hidden}.client-file-body>small{color:var(--muted);margin:1px 0 6px;font-size:10.5px;display:block}.client-file-body .sel,.client-file-body .inp{border-radius:6px;width:100%;min-height:29px;padding:4px 7px;font-size:11px}.client-file-body .inp{margin-top:5px}.client-file-remove{width:25px;height:25px;color:var(--muted);background:var(--line-soft);cursor:pointer;border:0;border-radius:100px;place-items:center;display:grid;position:absolute;top:7px;right:7px}.client-file-remove:hover{color:var(--crit);background:var(--crit-bg)}.client-file-remove:disabled{cursor:default;opacity:.5}.client-file-drop{border:1.5px dashed var(--line);min-height:68px;color:var(--sky-ink);background:var(--panel);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:12px 16px;display:flex}.client-file-drop:hover,.client-file-drop:focus-within{border-color:var(--sky);background:var(--sky-bg)}.client-file-drop.disabled{opacity:.55;cursor:default}.client-file-drop span{display:block}.client-file-drop b{color:var(--navy);font-size:12.5px;display:block}.client-file-drop small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.client-file-drop input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=700px){.client-file-grid{grid-template-columns:1fr}.client-files-heading{align-items:flex-start}.client-file-card{grid-template-columns:64px minmax(0,1fr)}.client-file-thumb,.client-file-doc{width:64px;height:64px}}.login{background:radial-gradient(120% 90% at 50% -10%, #22a0e01a, transparent 60%), var(--paper);place-items:center;min-height:100vh;padding:20px;display:grid}.loginbox{background:var(--card);border:1px solid var(--line);width:100%;max-width:360px;box-shadow:var(--shadow);text-align:center;border-radius:16px;padding:28px 26px}.loginbox .logotile{border:1px solid var(--line-soft);margin-bottom:6px;padding:8px 12px;display:inline-flex}.loginbox .logotile img{height:26px}.loginbox .sub2{letter-spacing:.1em;text-transform:uppercase;color:var(--sky-ink);margin-bottom:20px;font-size:11.5px;font-weight:700}.loginbox .ff{margin-bottom:12px}.loginerr{color:var(--crit);background:var(--crit-bg);border:1px solid var(--crit-line);border-radius:8px;margin-bottom:10px;padding:8px 11px;font-size:12.5px}.loginbox .hint{color:var(--muted);margin-top:14px;font-size:11.5px}.loginbox .hint a{color:var(--sky-ink);cursor:pointer;font-weight:600;text-decoration:none}.qgrid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (width<=900px){.qgrid{grid-template-columns:repeat(2,1fr)}}.qact{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;text-align:left;color:var(--ink);padding:14px 15px;text-decoration:none;display:block}.qact:hover{border-color:var(--sky)}.qact .qi{color:var(--sky-ink);margin-bottom:7px;display:flex}.qact .qi svg{width:17px;height:17px}.qact .ql{font-size:13px;font-weight:600}.ccard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;text-align:left;width:100%;color:var(--ink);padding:18px 20px}.ccard:hover{border-color:var(--sky)}.ccard .ch2{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:3px;display:flex}.ccard .ct{font-size:15.5px;font-weight:700}.ccard .cs{color:var(--muted);font-size:12px}.cstats{flex-wrap:wrap;gap:26px;margin-top:14px;display:flex}.cstat .l{color:var(--muted);font-size:11.5px}.cstat .w{font-variant-numeric:tabular-nums;font-size:14.5px;font-weight:650}.cprog{margin-top:14px}.cprog .pl{color:var(--muted);justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.grid2{grid-template-columns:1fr 2fr;gap:14px;margin-bottom:20px;display:grid}@media (width<=900px){.grid2{grid-template-columns:1fr}}.statrow{justify-content:space-between;align-items:center;padding:7px 0;display:flex}.statrow .n2{font-variant-numeric:tabular-nums;font-size:14px;font-weight:650}.rclaim{border-bottom:1px solid var(--line-soft);align-items:center;gap:14px;padding:11px 0;display:flex}.rclaim:last-child{border-bottom:none}.rclaim .g{flex:1;min-width:0}.rclaim .cn{font-family:var(--fmono);font-size:12.5px;font-weight:600}.rclaim .dt{color:var(--muted);font-size:12px}.rclaim .amt2{font-variant-numeric:tabular-nums;flex:none;font-size:13.5px;font-weight:650}.cc-workbook-tabs{scrollbar-width:thin;background:#d7e0ec;border:1px solid #bbc9db;border-radius:8px;align-items:stretch;gap:1px;margin:-8px 0 22px;display:flex;overflow-x:auto}.cc-workbook-tabs a{color:#40516a;background:#f4f7fb;align-items:center;gap:7px;min-width:max-content;padding:9px 12px;font-size:11.5px;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex}.cc-workbook-tabs a:hover{color:var(--navy);background:#e8f4fa}.cc-workbook-tabs a.on{background:var(--navy-deep);color:#fff}.cc-workbook-tabs a span{color:#4b5d76;background:#d8e2ef;border-radius:4px;place-items:center;width:18px;height:18px;font-size:9.5px;font-weight:800;display:grid}.cc-workbook-tabs a.on span{background:var(--sky);color:#08223a}.cc-sheet-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;display:flex}.cc-eyebrow{color:var(--sky-ink);letter-spacing:.11em;text-transform:uppercase;margin-bottom:3px;font-size:9.5px;font-weight:800}.cc-sheet-heading h1{color:var(--navy-deep);letter-spacing:-.025em;margin:0;font-size:25px;line-height:1.18}.cc-sheet-heading p{color:var(--muted);margin:4px 0 0;font-size:12.5px}.cc-heading-actions{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.cc-summary-strip{border:1px solid #c4d0e0;border-top:4px solid var(--navy-deep);box-shadow:var(--shadow);background:#fff;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px;display:grid;overflow:hidden}.cc-summary-strip>div{border-right:1px solid #d9e1ec;min-width:0;padding:11px 14px}.cc-summary-strip>div:last-child{border-right:0}.cc-summary-strip span{color:#64738a;letter-spacing:.065em;text-transform:uppercase;font-size:9.5px;font-weight:800;display:block}.cc-summary-strip b{color:var(--navy-deep);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:20px;line-height:1.2;display:block;overflow:hidden}.cc-summary-strip small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.cc-summary-strip .crit b{color:var(--crit)}.cc-summary-strip .warn b{color:var(--warn)}.cc-summary-strip.cc-summary-metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.cc-monthly-position{margin-bottom:20px}.cc-monthly-position-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:12px;display:flex}.cc-monthly-position-heading h2{color:var(--navy-deep);letter-spacing:-.02em;margin:0;font-size:22px}.cc-monthly-position-heading p{color:var(--muted);margin:4px 0 0;font-size:11.5px}.cc-monthly-position-select{flex:0 0 210px}.cc-monthly-position-kpis{border-top-color:var(--sky);grid-template-columns:repeat(4,minmax(0,1fr))}.cc-monthly-position-kpis>div:nth-child(2){background:linear-gradient(145deg,#f4fbf7,#fff)}.cc-monthly-position-kpis b{font-size:24px}.cc-leading-indicator{color:var(--navy-deep);letter-spacing:.01em;font-variant-numeric:tabular-nums;font-size:1.08em;font-weight:850}.cc-monthly-position-kpis .cc-leading-indicator{color:var(--navy);font-size:1.15em}.cc-monthly-project-table th,.cc-monthly-project-table td{min-width:150px}.cc-monthly-project-table .cc-sticky-col{min-width:210px}.cc-monthly-project-table td b,.cc-monthly-project-table td small{display:block}.cc-monthly-project-table td small{color:var(--muted);white-space:nowrap;margin-top:3px;font-size:9px;font-weight:500}.cc-monthly-project-table td:last-child{min-width:126px}.cc-monthly-project-table tfoot td{border-top:2px solid #213d67}.cc-actual-variance-table th,.cc-actual-variance-table td{min-width:72px;padding-left:7px;padding-right:7px}.cc-actual-variance-table .cc-sticky-col{min-width:180px}.cc-actual-variance-table th:nth-child(2),.cc-actual-variance-table td:nth-child(2){min-width:86px}.cc-component-control{border:1px solid #b8c7da;border-top:4px solid var(--navy-deep);box-shadow:var(--shadow);background:#fff;border-radius:8px;margin-bottom:16px;overflow:hidden}.cc-component-heading{background:#f8fafd;border-bottom:1px solid #d7e0ea;justify-content:space-between;align-items:center;gap:18px;padding:13px 14px 11px;display:flex}.cc-component-heading h3{color:var(--navy-deep);margin:1px 0 0;font-size:16px}.cc-component-heading p{color:var(--muted);margin:3px 0 0;font-size:10.5px}.cc-component-scroll{scrollbar-width:thin;max-width:100%;overflow-x:auto}.cc-component-table{border-collapse:separate;border-spacing:0;color:#293a52;font-variant-numeric:tabular-nums;width:100%;min-width:760px;font-size:11px}.cc-component-table caption{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.cc-component-table th,.cc-component-table td{vertical-align:middle;background:#fff;border-bottom:1px solid #dce4ee;border-right:1px solid #dce4ee;padding:9px 12px}.cc-component-table tr>:last-child{border-right:0}.cc-component-table tbody tr:last-child>*{border-bottom:0}.cc-component-table thead th{color:#52637a;letter-spacing:.055em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#e8eef6;font-size:9px;font-weight:800}.cc-component-table th:first-child{z-index:2;min-width:150px;color:var(--navy-deep);text-align:left;position:sticky;left:0;box-shadow:1px 0 #cad5e3}.cc-component-table thead th:first-child{z-index:3;background:#e1eaf4}.cc-component-table .n{text-align:right;white-space:nowrap}.cc-component-table td small{margin-top:1px;font-size:9px;display:block}.cc-component-total th,.cc-component-total td{background:#edf4fa;font-weight:800}.cc-component-total th:first-child{background:#e3edf7}.cc-budget-usage{align-items:center;gap:8px;min-width:145px;display:flex}.cc-budget-usage>div{background:#e2e8f0;border-radius:999px;width:92px;height:7px;overflow:hidden}.cc-budget-usage>div span{border-radius:inherit;height:100%;display:block}.cc-budget-usage>div.favourable span{background:#18875c}.cc-budget-usage>div.adverse span{background:var(--crit)}.cc-budget-usage b{color:#40516a;min-width:42px;font-size:9.5px}.cc-component-footnote{color:var(--muted);background:#f8fafd;border-top:1px solid #d7e0ea;flex-wrap:wrap;align-items:center;gap:5px 14px;padding:8px 12px;font-size:9.5px;display:flex}.cc-component-footnote b{color:#7a4b00;font-weight:700}.cc-sheet-panel{box-shadow:var(--shadow);background:#fff;border:1px solid #bccadd;border-radius:7px;margin-bottom:20px;overflow:hidden}.cc-sheet-band{background:var(--navy-deep);color:#fff;border-bottom:4px solid #00b4d8;justify-content:space-between;align-items:center;gap:20px;min-height:42px;padding:8px 12px;display:flex}.cc-sheet-band>div{min-width:0}.cc-sheet-band b{letter-spacing:.01em;font-size:12.5px;display:block}.cc-sheet-band span{color:#bfd0e8;font-size:9.5px;display:block}.cc-sheet-band>span{color:#d8e4f3;text-transform:uppercase;letter-spacing:.07em;flex:none}.cc-grid-scroll{scrollbar-width:thin;background:#fff;max-width:100%;overflow:auto}.cc-sheet-table{border-collapse:separate;border-spacing:0;color:#293a52;width:max-content;min-width:100%;font-size:11px;line-height:1.25}.cc-sheet-table th,.cc-sheet-table td{vertical-align:middle;font-variant-numeric:tabular-nums;background:#fff;border-bottom:1px solid #d7e0ea;border-right:1px solid #d7e0ea;min-width:96px;height:34px;padding:6px 9px}.cc-sheet-table th{color:#263c5c;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;background:#e6edf5;font-size:9.5px;font-weight:800}.cc-sheet-table thead tr:first-child th{border-top:0}.cc-sheet-table tbody tr:last-child td{border-bottom:0}.cc-sheet-table tr>:last-child{border-right:0}.cc-sheet-table tbody tr:hover td{background:#f7fafd}.cc-sheet-table td.n,.cc-sheet-table th.n{text-align:right;white-space:nowrap}.cc-sheet-table td.nm{color:var(--navy-deep);white-space:nowrap;font-weight:650}.cc-sheet-table .cc-sticky-col{z-index:2;background:#fff;min-width:198px;max-width:230px;position:sticky;left:0;box-shadow:1px 0 #bfcbda}.cc-sheet-table th.cc-sticky-col{z-index:4;background:#dce6f1}.cc-sheet-table .cc-end-col{border-right:2px solid #9aaac0}.cc-project-link a{color:var(--navy-deep);font-weight:700;text-decoration:none}.cc-project-link a:hover{color:var(--sky-ink);text-underline-offset:2px;text-decoration:underline}.cc-project-link small{color:#718097;margin-top:2px;font-size:9px;font-weight:500;display:block}.cc-muted{color:var(--muted);font-size:10px}.cc-total-row td{color:var(--navy-deep);border-top:2px solid #213d67;font-weight:800;background:#eaf0f7!important}.cc-total-row td.cc-sticky-col{background:#dce6f1!important}.cc-claim-history-divider td{height:42px;color:var(--navy-deep);text-align:left;border-top:4px solid #cbd5e1;padding:8px 12px;background:#eef3f8!important}.cc-claim-history-divider b{letter-spacing:.045em;text-transform:uppercase;font-size:10.5px;display:block}.cc-claim-history-divider span{color:#65758b;margin-top:2px;font-size:9px;display:block}.cc-claim-history-row td{color:#516178;background:#fafcfe}.cc-claim-history-row td.cc-sticky-col{background:#f3f7fa}.cc-sheet-table .cc-claim-history-row:hover td{background:#f5f8fb}.cc-sheet-table .cc-claim-history-row:hover td.cc-sticky-col{background:#edf3f8}.cc-all-projects-total td{border-top-color:#58708f;background:#dfe8f2!important}.cc-all-projects-total td.cc-sticky-col{background:#cfdce9!important}.cc-month-band{background:#f2f7fb}.cc-sheet-table th.cc-month-band{color:#1f5468;background:#dce9f2}.cc-sheet-table .cc-band-start{border-left:2px solid #9aaac0}.cc-sheet-table .cc-band-end{border-right:2px solid #9aaac0}.cc-dash{color:#a5b1c2;font-weight:500}.cc-th-assumed{color:#8a570c;letter-spacing:.06em;margin-top:1px;font-size:8px;display:block}.cc-group-row th{background:#f0f5fa;height:20px}.cc-group-row .cc-group-label{text-align:center;color:#1f5468;letter-spacing:.08em;background:#dce9f2;font-size:8.5px}.cc-three-month-table th,.cc-three-month-table td{min-width:82px}.cc-three-month-table .cc-sticky-col{min-width:190px}.cc-margin-table .cc-sticky-metric{z-index:2;background:#f1f5f9;min-width:94px;position:sticky;left:198px;box-shadow:1px 0 #bfcbda}.cc-margin-table th.cc-sticky-metric{z-index:4;background:#dce6f1}.cc-margin-table .cc-rowspan{vertical-align:top;padding-top:10px}.cc-margin-end td{border-bottom:2px solid #9eadbf}.cc-margin-table .cc-gp-label{color:var(--navy);font-weight:800}.cc-ctc-table th,.cc-ctc-table td,.cc-level-editor th,.cc-level-editor td,.cc-level-position th,.cc-level-position td{min-width:112px}.cc-ctc-table .cc-sticky-col,.cc-level-editor .cc-sticky-col,.cc-level-position .cc-sticky-col{min-width:210px}.cc-claim-breakdown th,.cc-claim-breakdown td{min-width:96px}.cc-claim-breakdown .cc-sticky-col{min-width:210px}.cc-claim-cell small{color:#718097;white-space:nowrap;margin-top:2px;font-size:8.5px;font-weight:650;display:block}.cc-claim-toolbar{background:#f5f8fc;border-bottom:1px solid #d7e0ea;justify-content:space-between;align-items:center;gap:16px;padding:9px 11px;display:flex}.cc-claim-toolbar>div:first-child{gap:1px;display:grid}.cc-claim-toolbar b{color:var(--navy-deep);font-size:11px}.cc-claim-toolbar span{color:var(--muted);font-size:9.5px}.cc-claim-actions{flex:none;align-items:center;gap:7px;display:flex}.cc-claim-breakdown.is-editing .cc-grid-scroll{background:#fffdf2}.cc-claim-breakdown.is-editing .cc-claim-cell{background:#fffbe0;padding:3px 5px}.cc-progress-input{gap:2px;min-width:84px;display:grid}.cc-progress-input>span{justify-content:flex-end;align-items:center;gap:3px;display:flex}.cc-progress-input input{color:#1459ad;width:55px;font:inherit;text-align:right;background:#fff9b8;border:1px solid #d6c84f;border-radius:3px;outline:none;padding:5px 4px;font-weight:800}.cc-progress-input input:focus{background:#fffed4;border-color:#1c76c8;box-shadow:0 0 0 1px #1c76c8}.cc-progress-input i{color:#52647a;font-size:9px;font-style:normal}.cc-progress-input small{color:#718097;text-align:right;min-height:11px}.cc-progress-input small.cc-negative{color:var(--crit)}.cc-rate-table th,.cc-rate-table td{min-width:125px}.cc-rate-table th:first-child,.cc-rate-table td:first-child{min-width:200px}.cc-month-matrix th,.cc-month-matrix td{min-width:86px}.cc-sheet-status{color:#607086;text-transform:uppercase;letter-spacing:.035em;background:#f0f3f7;border:1px solid #d6dfea;border-radius:3px;align-items:center;min-width:max-content;padding:3px 7px;font-size:9px;font-weight:800;line-height:1.2;display:inline-flex}.cc-status-good{color:#12633f;background:#dff3e8;border-color:#b6ddc8}.cc-status-warn{color:#81510b;background:#fff0c7;border-color:#e6c971}.cc-status-crit{color:#982f2f;background:#f8dede;border-color:#e7b5b5}.cc-status-neutral{color:#5a6980;background:#eef2f6;border-color:#d3dce7}.cc-cell-good{font-weight:700;color:#126b45!important;background:#e8f5ed!important}.cc-cell-warn{font-weight:700;color:#8a570c!important;background:#fff4d8!important}.cc-cell-crit{font-weight:700;color:#a42f2f!important;background:#fbe7e7!important}.cc-input-ink{color:#1459ad;font-weight:750}.cc-rule-note{border:1px solid #c9d5e4;border-left:4px solid var(--sky);color:#506079;background:#f4f8fc;border-radius:5px;align-items:flex-start;gap:9px;margin:0 0 12px;padding:9px 11px;font-size:11px;display:flex}.cc-rule-note svg{width:15px;height:15px;color:var(--sky-ink);flex:none;margin-top:1px}.cc-rule-note b{color:var(--navy-deep)}.cc-error,.cc-empty{align-items:flex-start;gap:13px;max-width:720px;display:flex}.cc-error>svg,.cc-empty>svg{width:22px;height:22px;color:var(--warn);flex:none;margin-top:1px}.cc-error b,.cc-empty b{font-size:14px;display:block}.cc-error p,.cc-empty p{color:var(--muted);margin:3px 0 12px;font-size:12.5px}.cc-alerts{gap:7px;margin-bottom:16px;display:grid}.cc-alert{border:1px solid var(--line);border-radius:8px;align-items:flex-start;gap:9px;padding:9px 11px;font-size:12px;display:flex}.cc-alert svg{flex:none;width:15px;height:15px;margin-top:1px}.cc-alert.info{color:var(--sky-ink);background:var(--sky-soft)}.cc-alert.warning{color:var(--warn);background:var(--warn-bg);border-color:var(--warn-line)}.cc-alert.critical{color:var(--crit);background:var(--crit-bg);border-color:var(--crit-line)}.cc-project-tabs{border-bottom:1px solid #c9d3e0;align-items:center;gap:18px;margin-bottom:16px;padding:0 2px;display:flex;overflow-x:auto}.cc-project-tabs a,.cc-project-tabs button{color:#607087;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:8px 2px 9px;font-size:11.5px;font-weight:700;text-decoration:none}.cc-project-tabs a.on,.cc-project-tabs button.on{color:var(--navy-deep);border-bottom-color:var(--sky)}.cc-section-toolbar{justify-content:space-between;align-items:flex-end;gap:16px;margin:18px 0 10px;display:flex}.cc-section-toolbar h2{color:var(--navy-deep);margin:0;font-size:16px}.cc-section-toolbar p{color:var(--muted);margin:2px 0 0;font-size:11px}.cc-actions{margin:0}.cc-input-cell{background:#fff59a!important;padding:3px!important}.cc-sheet-input{color:#1459ad;width:100%;min-width:98px;font:inherit;text-align:right;background:#fff9b8;border:1px solid #d6c84f;border-radius:2px;outline:none;padding:6px 7px;font-size:11px;font-weight:700}.cc-sheet-input:focus{background:#fffed4;border-color:#1c76c8;box-shadow:inset 0 0 0 1px #1c76c8}.cc-sheet-input.text{text-align:left;min-width:170px}.cc-context-cell{color:#5d6e85;background:#f0f3f7!important}.cc-estimate{color:var(--warn);font-size:8.5px;font-weight:700;line-height:1.1;display:block}.cc-forecast-assumptions{border:1px solid #c4d0e0;border-left:4px solid var(--sky);box-shadow:var(--shadow);background:#f7fafd;border-radius:7px;grid-template-columns:minmax(260px,1.4fr) minmax(220px,1fr) auto;align-items:center;gap:18px;margin:0 0 14px;padding:13px 14px;display:grid}.cc-forecast-assumptions>div{min-width:0}.cc-forecast-assumptions span{color:#64738a;letter-spacing:.065em;text-transform:uppercase;margin-bottom:4px;font-size:9.5px;font-weight:800;display:block}.cc-forecast-assumptions strong{color:var(--navy-deep);font-variant-numeric:tabular-nums;font-size:19px;display:block}.cc-forecast-assumptions small{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.4;display:block}.cc-assumption-input{align-items:center;gap:8px;display:flex}.cc-assumption-input .cc-sheet-input{width:86px;min-width:86px}.cc-assumption-input b{color:var(--navy-deep);white-space:nowrap;font-size:11px}.cc-capacity-row td{background:#f3f6fa;font-weight:700}.cc-unallocated{margin-top:18px}.cc-embedded .cc-sheet-heading h1{font-size:18px}.cc-embedded .cc-eyebrow,.cc-embedded .cc-workbook-tabs{display:none}@media (width<=900px){.cc-monthly-position-kpis,.cc-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-summary-strip>div:nth-child(2){border-right:0}.cc-summary-strip>div:nth-child(-n+2){border-bottom:1px solid #d9e1ec}.cc-forecast-assumptions{grid-template-columns:1fr 1fr}.cc-forecast-assumptions>button{justify-self:start}}@media (width<=700px){.cc-monthly-position-heading{flex-direction:column;align-items:stretch;gap:10px}.cc-monthly-position-select{flex-basis:auto}.cc-monthly-position-kpis b{font-size:18px}.cc-workbook-tabs{margin-top:-3px;margin-bottom:16px}.cc-workbook-tabs a{padding:8px 10px;font-size:10.5px}.cc-sheet-heading{flex-direction:column;align-items:flex-start;gap:8px}.cc-heading-actions{align-items:flex-start}.cc-sheet-heading h1{font-size:21px}.cc-summary-strip b{font-size:17px}.cc-component-heading{flex-direction:column;align-items:flex-start;gap:8px}.cc-component-table{min-width:700px}.cc-component-table th,.cc-component-table td{padding:8px 10px}.cc-component-footnote{flex-direction:column;align-items:flex-start;gap:4px}.cc-sheet-band{align-items:flex-start}.cc-sheet-band>span{display:none}.cc-sheet-table .cc-sticky-col{min-width:166px;max-width:190px}.cc-claim-toolbar{flex-direction:column;align-items:flex-start}.cc-margin-table .cc-sticky-metric{left:166px}.cc-section-toolbar{flex-direction:column;align-items:flex-start}.cc-forecast-assumptions{grid-template-columns:1fr;gap:12px}.project-health-actions{align-items:flex-start}}@media (width<=480px){.cc-summary-strip{grid-template-columns:1fr 1fr}.cc-summary-strip>div{padding:9px 10px}.cc-summary-strip b{font-size:15px}.cc-summary-strip small{font-size:9px}.cc-component-heading{padding:11px 10px 9px}.cc-component-heading h3{font-size:14px}.cc-sheet-table{font-size:10px}}.report-btn{color:var(--navy)}.nav-badge{background:var(--crit);color:#fff;text-align:center;border-radius:100px;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10.5px;font-weight:800;line-height:18px}.bottom-tabs a{position:relative}.nav-badge.tab{min-width:15px;height:15px;margin:0;padding:0 4px;font-size:9.5px;line-height:15px;position:absolute;top:2px;right:calc(50% - 20px)}.cr-form{flex-direction:column;gap:12px;display:flex}.cr-types{grid-template-columns:1fr 1fr;gap:6px;display:grid}.cr-type{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;text-align:center;border-radius:8px;padding:8px 10px;font-size:12.5px;font-weight:650}.cr-type.on{border-color:var(--navy);background:var(--navy);color:#fff}.cr-type:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.cr-files{flex-direction:column;gap:6px;margin-bottom:6px;display:flex}.cr-file{border:1px solid var(--line);background:var(--card);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:flex}.cr-file img{object-fit:cover;border-radius:5px;width:28px;height:28px}.cr-file .nm{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:650;overflow:hidden}.cr-file small{color:var(--muted)}.cr-file button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:3px;display:flex}.cr-file-add{border:1.5px dashed var(--line);text-align:center;color:var(--navy);cursor:pointer;border-radius:8px;padding:9px 12px;font-size:12.5px;font-weight:650;display:block}.cr-file-add.disabled{color:var(--muted);cursor:default}.cr-file-add input{display:none}.cr-drop-hint{color:var(--muted);margin-top:2px;font-size:10.5px;font-weight:500;display:block}.cr-form.cr-dragging{outline:2px dashed var(--sky);outline-offset:-4px;background:#f4fafe;border-radius:10px}.cr-form.cr-dragging .cr-file-add{border-color:var(--sky);color:var(--sky-ink)}@media (hover:none){.cr-drop-hint{display:none}}.cr-context{color:var(--muted);margin:0;font-size:12px}.cr-context span{opacity:.75}.cr-sent p{margin:0 0 8px;font-size:13.5px;line-height:1.5}.cr-attach-warn{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn);border-radius:8px;padding:8px 10px;font-size:12.5px}.cr-row{gap:8px}.cr-row .pill{flex:none}.cr-dup{background:var(--done-bg);color:var(--done);border:1px solid var(--line);text-transform:uppercase;letter-spacing:.03em;border-radius:100px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:750}.cr-toolbar{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.cr-tabs{flex-wrap:wrap;gap:4px;display:flex}.cr-tab{border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;border-radius:100px;align-items:center;gap:5px;padding:6px 10px;font-size:12px;font-weight:650;display:inline-flex}.cr-tab.on{background:var(--navy);border-color:var(--navy);color:#fff}.cr-tab .ct{text-align:center;background:#7f7f7f2e;border-radius:100px;min-width:16px;padding:0 4px;font-size:10px;font-weight:800;line-height:15px}.cr-tab.on .ct{background:#ffffff38}.cr-detail-body{flex-direction:column;gap:14px;display:flex}.cr-status-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cr-status-line .sel{width:auto}.cr-actions{flex-wrap:wrap;gap:6px;display:flex}.cr-block .subhead{margin-bottom:4px}.cr-text{white-space:pre-wrap;margin:0 0 8px;font-size:13.5px;line-height:1.5}.cr-rejected{border:1px solid var(--crit-line);background:var(--crit-bg);border-radius:8px;padding:10px 12px}.cr-rejected .cr-text{margin:0}.cr-criteria{margin:0;padding-left:18px;font-size:13px;line-height:1.6}.cr-attachments{flex-direction:column;gap:6px;display:flex}.cr-attachment{border:1px solid var(--line);background:var(--card);cursor:pointer;text-align:left;color:var(--navy);border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;display:flex}.cr-attachment .nm{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:650;overflow:hidden}.cr-attachment small{color:var(--muted)}.cr-comments{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.cr-comment{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:8px 10px}.cr-comment.admin{background:var(--warn-bg);border-color:var(--warn-line)}.cr-comment .meta{color:var(--muted);align-items:center;gap:8px;margin-bottom:3px;font-size:11.5px;display:flex}.cr-comment .meta b{color:var(--ink)}.cr-comment .flag{background:var(--warn);color:#fff;text-transform:uppercase;letter-spacing:.04em;border-radius:100px;padding:0 6px;font-size:9.5px;font-weight:800}.cr-comment .body{white-space:pre-wrap;font-size:13px;line-height:1.5}.cr-reply{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.cr-reply .tarea{width:100%}.cr-private-toggle{color:var(--muted);align-items:center;gap:6px;font-size:12.5px;display:flex}.cr-timeline{margin:0;padding:0;list-style:none}.cr-timeline li{border-left:2px solid var(--line);margin-left:5px;padding:0 0 10px 16px;font-size:12.5px;position:relative}.cr-timeline li:before{content:"";background:var(--navy);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;left:-5px}.cr-timeline b{text-transform:capitalize}.cr-timeline .who{color:var(--muted)}.cr-timeline .when{color:var(--muted);font-size:11px;display:block}.cr-timeline .why{color:var(--ink);margin-top:2px;font-size:12.5px}.cr-dev-summary{border:1px solid var(--line);background:var(--panel);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:260px;padding:10px 12px;font-size:11.5px;line-height:1.5;overflow:auto}@media (width>=720px){.cr-toolbar{flex-direction:row;justify-content:space-between;align-items:center}.cr-toolbar .srch{width:260px}}.labour-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:17px;display:flex}.labour-heading .lead{margin:3px 0 0}.labour-kicker{color:var(--sky-ink);letter-spacing:.075em;text-transform:uppercase;margin-bottom:3px;font-size:10.5px;font-weight:800;display:block}.labour-heading-actions{align-items:center;gap:9px;display:flex}.labour-embedded-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-bottom:13px;padding-bottom:12px;display:flex}.labour-embedded-head>div{gap:2px;display:grid}.labour-embedded-head b{color:var(--navy);font-size:15px}.labour-embedded-head span{color:var(--muted);font-size:11.5px}.labour-kpis .kpi{min-width:0}.labour-toolbar{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:11px;display:flex}.labour-views{margin:0 auto 0 0}.labour-date-nav{align-items:center;gap:5px;display:flex}.labour-date-nav .btn2{min-height:33px}.labour-available{border:1px solid var(--line);border-left:4px solid var(--sky);background:var(--card);box-shadow:var(--shadow);border-radius:10px;margin-bottom:12px;padding:11px 13px}.labour-available-title{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:8px;display:flex}.labour-available-title>span{color:var(--navy);align-items:center;gap:6px;font-size:12px;font-weight:750;display:inline-flex}.labour-available-title small{color:var(--muted);font-size:10.5px}.labour-available-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.labour-none{color:var(--muted);font-size:11.5px}.labour-avatar{background:var(--sky-soft);width:22px;height:22px;color:var(--sky-ink);letter-spacing:-.02em;border-radius:50%;flex:none;place-items:center;font-size:8.5px;font-weight:800;display:grid}.labour-person-chip{border:1px solid var(--line);background:var(--card);min-width:0;color:var(--ink);font:inherit;cursor:grab;text-align:left;border-radius:100px;align-items:center;gap:5px;padding:4px 7px 4px 3px;font-size:10.5px;font-weight:650;display:inline-flex}.labour-person-chip:hover{border-color:var(--sky);background:var(--sky-soft)}.labour-person-chip:active{cursor:grabbing}.labour-person-chip:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.labour-person-chip>svg{width:10px;height:10px;color:var(--muted)}.labour-person-chip>span:nth-of-type(2){text-overflow:ellipsis;white-space:nowrap;max-width:98px;overflow:hidden}.labour-person-chip>b{color:var(--sky-ink);margin-left:2px;font-size:9.5px}.labour-timeline{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);scrollbar-gutter:stable;margin-bottom:12px;overflow:auto}.labour-timeline:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.labour-grid{grid-template-columns:224px repeat(var(--labour-weeks), minmax(176px, 1fr));min-width:calc(224px + var(--labour-weeks) * 176px);display:grid}.labour-grid-head{z-index:4;border-bottom:1px solid var(--line);background:var(--panel);position:sticky;top:0}.labour-grid-head>button{border:0;border-left:1px solid var(--line-soft);min-height:51px;color:var(--muted);font:inherit;cursor:pointer;text-align:left;background:0 0;padding:7px 10px}.labour-grid-head>button:hover,.labour-grid-head>button.focus{background:var(--sky-soft);color:var(--sky-ink)}.labour-grid-head>button span,.labour-grid-head>button b{display:block}.labour-grid-head>button span{letter-spacing:.06em;text-transform:uppercase;font-size:8.5px;font-weight:750}.labour-grid-head>button b{margin-top:2px;font-size:11.5px}.labour-project-sticky{z-index:3;background:var(--panel);border-right:1px solid var(--line);letter-spacing:.05em;text-transform:uppercase;padding:11px 13px;font-size:10.5px;font-weight:750;position:sticky;left:0}.labour-project-line+.labour-project-line{border-top:1px solid var(--line)}.labour-project-name{background:var(--card);flex-direction:column;justify-content:flex-start;display:flex}.labour-project-name a{color:var(--navy);text-transform:none;letter-spacing:normal;font-size:12.5px;font-weight:750;line-height:1.25;text-decoration:none}.labour-project-name a:hover{color:var(--sky-ink)}.labour-project-name span{color:var(--muted);text-transform:capitalize;letter-spacing:normal;margin-top:4px;font-size:9.5px;font-weight:600}.labour-week-cell{border-left:1px solid var(--line-soft);background:var(--card);min-height:112px;padding:7px;transition:background .12s,box-shadow .12s}.labour-week-cell:hover{box-shadow:inset 0 0 0 1px var(--sky);background:#f8fbfe}.labour-week-cell.has-gap{background:#fff9f7}.labour-week-cell.missing{background:var(--panel)}.labour-requirement{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;margin:0 0 6px;padding:0;font-size:9.5px;font-weight:700;display:block}.labour-mobile-week{display:none}.labour-requirement:hover{color:var(--sky-ink);text-decoration:underline}.labour-cell-people{flex-direction:column;align-items:stretch;gap:4px;display:flex}.labour-cell-people .labour-person-chip{width:100%}.labour-gap{border:1px dashed var(--crit-line);background:var(--crit-bg);width:100%;color:var(--crit);font:inherit;cursor:pointer;border-radius:6px;margin-top:5px;padding:5px 6px;font-size:9.5px;font-weight:750}.labour-gap:hover{border-style:solid}.labour-missing,.labour-covered{color:var(--warn);margin-top:7px;font-size:9.5px;font-weight:700;display:inline-block}.labour-covered{color:var(--good)}.labour-people-view{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);margin-bottom:12px;overflow:auto}.labour-person-row{grid-template-columns:210px minmax(1100px,1fr);min-width:1310px;display:grid}.labour-person-row+.labour-person-row{border-top:1px solid var(--line)}.labour-person-name{z-index:2;border-right:1px solid var(--line);background:var(--card);align-items:center;gap:8px;padding:10px 12px;display:flex;position:sticky;left:0}.labour-person-name>span:last-child{gap:2px;min-width:0;display:grid}.labour-person-name b{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.labour-person-name small{color:var(--muted);font-size:9.5px}.labour-person-weeks{grid-template-columns:repeat(13,minmax(120px,1fr));display:grid}.labour-person-weeks button{border:0;border-left:1px solid var(--line-soft);background:var(--card);min-height:67px;color:var(--muted);font:inherit;text-align:left;cursor:pointer;padding:7px 8px}.labour-person-weeks button:hover{background:var(--sky-soft)}.labour-person-weeks button.assigned{background:var(--good-bg);color:var(--good)}.labour-person-weeks button.over{background:var(--crit-bg);color:var(--crit)}.labour-person-weeks span,.labour-person-weeks b,.labour-person-weeks small{display:block}.labour-person-weeks span{font-size:8.5px}.labour-person-weeks b{margin-top:2px;font-size:11px}.labour-person-weeks small{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8.5px;overflow:hidden}.labour-gap-view{flex-direction:column;gap:7px;margin-bottom:12px;display:flex}.labour-gap-card{border:1px solid var(--crit-line);background:var(--card);box-shadow:var(--shadow);border-radius:10px;grid-template-columns:minmax(240px,1fr) 130px auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.labour-gap-card.missing{border-color:var(--warn-line)}.labour-gap-card>div:first-child span,.labour-gap-card>div:first-child b,.labour-gap-card>div:first-child small{display:block}.labour-gap-card>div:first-child span{color:var(--muted);margin-bottom:2px;font-size:9.5px;font-weight:700}.labour-gap-card>div:first-child b{color:var(--navy);font-size:13px}.labour-gap-card>div:first-child small{color:var(--muted);margin-top:2px;font-size:10.5px}.labour-gap-number{justify-items:end;display:grid}.labour-gap-number b{color:var(--crit);font-variant-numeric:tabular-nums;font-size:17px}.labour-gap-card.missing .labour-gap-number b{color:var(--warn)}.labour-gap-number span{color:var(--muted);font-size:9.5px}.labour-footnote{color:var(--muted);align-items:flex-start;gap:6px;margin:8px 0 18px;font-size:10.5px;line-height:1.45;display:flex}.labour-footnote svg{flex:none;margin-top:1px}.labour-publish-summary{background:var(--panel);border-radius:8px;gap:4px;padding:12px;display:grid}.labour-publish-summary b{color:var(--navy);font-size:16px}.labour-publish-summary span{color:var(--muted);font-size:11.5px}@media (width<=900px){.labour-heading{flex-direction:column;align-items:stretch}.labour-heading-actions{justify-content:space-between}.labour-toolbar .srch{width:100%}}@media (width<=700px){.labour-kpis{grid-template-columns:1fr 1fr}.labour-kpis .kpi{padding:12px}.labour-kpis .kpi .v{font-size:17px}.labour-toolbar{align-items:stretch}.labour-views{flex-wrap:nowrap;width:100%;overflow-x:auto}.labour-date-nav{width:100%}.labour-date-nav .btn2:nth-child(2){flex:1;justify-content:center}.labour-available-title{flex-direction:column;align-items:flex-start;gap:3px}.labour-available-list{flex-wrap:nowrap;padding-bottom:3px;overflow-x:auto}.labour-available-list .labour-person-chip{flex:none}.labour-timeline{box-shadow:none;background:0 0;border:0;overflow:visible}.labour-grid-head{display:none}.labour-project-line{background:var(--card);min-width:0;box-shadow:var(--shadow);border-radius:11px;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:9px;padding:0 0 8px;display:grid;overflow:hidden;border:1px solid var(--line)!important}.labour-project-line .labour-project-name{border:0;border-bottom:1px solid var(--line);background:var(--panel);grid-column:1/-1;padding:11px 12px 9px;position:static}.labour-project-line .labour-week-cell{border:1px solid var(--line-soft);border-radius:8px;min-height:104px;margin:0 7px}.labour-project-line .labour-week-cell:nth-child(n+6){display:none}.labour-project-line .labour-week-cell:nth-child(2n){margin-right:0}.labour-project-line .labour-week-cell:nth-child(odd){margin-left:0}.labour-mobile-week{color:var(--navy);margin-bottom:3px;font-size:9.5px;font-weight:750;display:block}.labour-person-chip>svg{display:none}.labour-gap-card{grid-template-columns:minmax(0,1fr) auto;gap:9px}.labour-gap-card>button{grid-column:1/-1;justify-self:start}.labour-gap-number{justify-items:end}.labour-embedded-head{flex-direction:column;align-items:flex-start}.labour-embedded-head .btn2{align-self:flex-start}}.plabour-forecast{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:12px;display:grid}.plabour-forecast-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);text-align:left;font:inherit;cursor:pointer;border-radius:10px;padding:10px 12px}.plabour-forecast-card.on{border-color:var(--sky);box-shadow:inset 0 0 0 1px var(--sky)}.plabour-forecast-card.short{border-color:var(--crit-line);background:var(--crit-bg)}.plabour-forecast-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:750;display:block}.plabour-forecast-card>b{color:var(--navy);margin:4px 0 2px;font-size:18px;display:block}.plabour-forecast-card>small{color:var(--muted);font-size:10px}.plabour-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-bottom:14px;display:grid}.plabour-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:12px;padding:13px 14px}.plabour-card-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:9px;display:flex}.plabour-card-head a{color:var(--navy);font-size:14px;font-weight:750;text-decoration:none}.plabour-card-head a:hover{color:var(--sky-ink)}.plabour-card-head small{color:var(--muted);text-transform:capitalize;margin-top:2px;font-size:10px;display:block}.plabour-finish-flag{color:var(--warn);align-items:center;gap:4px;margin-top:5px;font-size:10.5px;font-weight:750;display:inline-flex}.plabour-card-crew{flex-wrap:wrap;gap:6px;min-height:26px;margin-bottom:10px;display:flex}.plabour-card-empty{color:var(--muted);font-size:11px}.plabour-card-health{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;font-size:11px;display:flex}.plabour-card-health b{color:var(--ink)}.plabour-card-hint{color:var(--muted);margin-top:6px;font-size:10.5px;font-style:italic}.plabour-card-foot{justify-content:flex-end;margin-top:9px;display:flex}.plabour-grid-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);margin-bottom:14px;overflow:auto}.plabour-grid-row{grid-template-columns:190px repeat(var(--plabour-months), minmax(120px, 1fr)) 200px;min-width:max-content;display:grid}.plabour-grid-row+.plabour-grid-row{border-top:1px solid var(--line)}.plabour-grid-row.head{z-index:2;background:var(--panel);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:9.5px;font-weight:750;position:sticky;top:0}.plabour-grid-row.head>div{padding:9px 10px}.plabour-person-cell{z-index:1;background:var(--card);border-right:1px solid var(--line);align-items:center;gap:8px;padding:9px 10px;display:flex;position:sticky;left:0}.plabour-person-cell button{text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;min-width:0;padding:0}.plabour-person-cell b{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;display:block;overflow:hidden}.plabour-person-cell small{color:var(--muted);font-size:9.5px}.plabour-month-cell{border-left:1px solid var(--line-soft);align-items:center;padding:6px 8px;display:flex}.plabour-site-chip{border:1px solid var(--sky-line);background:var(--sky-soft);width:100%;color:var(--sky-ink);font:inherit;cursor:pointer;text-align:left;border-radius:7px;padding:6px 8px;font-size:10.5px;font-weight:650}.plabour-site-chip span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.plabour-unallocated{border:1px dashed var(--crit-line);background:var(--crit-bg);width:100%;color:var(--crit);font:inherit;cursor:pointer;text-align:center;border-radius:7px;padding:6px 8px;font-size:10px;font-weight:750}.plabour-movement-cell{border-left:1px solid var(--line-soft);color:var(--muted);align-items:center;padding:8px 10px;font-size:10.5px;line-height:1.35;display:flex}@media (width<=900px){.plabour-cards{grid-template-columns:1fr}}.stage-tabs{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.stage-tab{border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;border-radius:100px;align-items:center;gap:5px;padding:6px 10px;font-size:12px;font-weight:650;display:inline-flex}.stage-tab .dot{background:var(--lc,var(--line));border-radius:50%;flex:none;width:8px;height:8px}.stage-tab.on{background:var(--lc,var(--navy));border-color:var(--lc,var(--navy));color:#fff}.stage-tab.on .dot{background:#ffffffd9}.stage-tab:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.stage-tab .ct{text-align:center;background:#7f7f7f2e;border-radius:100px;min-width:16px;padding:0 4px;font-size:10px;font-weight:800;line-height:15px}.stage-tab.on .ct{background:#ffffff38}.delivery-forecast-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin:2px 0 12px;display:flex}.delivery-forecast-heading h2{color:var(--navy-deep);margin:2px 0;font-size:20px;line-height:1.25}.delivery-forecast-heading p{color:var(--muted);margin:0;font-size:12px}.delivery-forecast-source{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:5px;margin-top:6px;font-size:10.5px;display:flex}.delivery-forecast-source b{color:var(--warn)}.delivery-forecast-kicker{color:var(--sky-ink);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.delivery-forecast-total{border:1px solid var(--line);background:var(--card);border-radius:9px;flex:none;justify-items:end;padding:8px 11px;display:grid}.delivery-forecast-total span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:750}.delivery-forecast-total b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:15px}.delivery-forecast-spotlight{box-shadow:var(--shadow);background:linear-gradient(135deg,#fff 0%,#f1f7fc 100%);border:1px solid #c9dcee;border-radius:12px;margin-bottom:12px;padding:17px 18px 13px}.delivery-forecast-spotlight-copy h3{color:var(--navy-deep);margin:3px 0 2px;font-size:17px}.delivery-forecast-spotlight-copy p{max-width:850px;color:var(--muted);margin:0;font-size:12.5px}.delivery-forecast-metrics{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px;display:grid}.delivery-forecast-metrics>div{border:1px solid var(--line);background:#fffc;border-radius:8px;gap:1px;padding:9px 11px;display:grid}.delivery-forecast-metrics span{color:var(--muted);font-size:9.5px;font-weight:700}.delivery-forecast-metrics b{color:var(--navy-deep);font-variant-numeric:tabular-nums;font-size:21px}.delivery-forecast-metrics small{color:var(--muted);font-size:9px}.delivery-progress-track{background:var(--line);border-radius:100px;height:7px;margin-top:12px;overflow:hidden}.delivery-progress-track>span{border-radius:inherit;background:linear-gradient(90deg, var(--navy), var(--sky));height:100%;display:block}.delivery-progress-labels{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:9.5px;display:flex}.delivery-progress-labels b{color:var(--navy)}.delivery-forecast-warning{border:1px solid var(--crit-line);background:var(--crit-bg);color:var(--crit);border-radius:7px;margin-top:9px;padding:7px 9px;font-size:10.5px;font-weight:650}.delivery-row-selected{background:var(--sky-soft)}.delivery-row-progress,.delivery-row-brief{gap:1px;display:grid}.delivery-row-progress b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:12.5px}.delivery-row-progress span,.delivery-row-brief span{color:var(--muted);font-size:10.5px}.delivery-row-brief{max-width:390px}.delivery-row-brief b{color:var(--ink);font-size:12px}.delivery-row-brief span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.delivery-month-button{color:var(--navy);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:750}.delivery-month-button:hover{color:var(--sky-ink);text-decoration:underline}.delivery-month-button:focus-visible{outline:2px solid var(--sky);outline-offset:3px;border-radius:2px}.delivery-target-editor{scroll-margin-top:74px}.delivery-target-context{grid-template-columns:repeat(3,1fr);gap:8px;margin:-2px 0 10px;display:grid}.delivery-target-context>div{border:1px solid var(--line);background:var(--sky-soft);border-radius:8px;gap:1px;padding:9px 11px;display:grid}.delivery-target-context span{color:var(--muted);font-size:9.5px;font-weight:650}.delivery-target-context b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:17px}.site-target-metrics{grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0;display:grid}.site-target-metrics>div{background:var(--sky-soft);border-radius:8px;gap:2px;padding:9px;display:grid}.site-target-metrics span{color:var(--muted);font-size:9.5px}.site-target-metrics b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:18px}.site-month-levels{border:1px solid var(--line);border-radius:9px;overflow:hidden}.site-month-level-head,.site-month-level{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.site-month-level-head{background:var(--sky-soft);color:var(--muted);letter-spacing:.6px;text-transform:uppercase;padding:7px 11px;font-size:9px;font-weight:750}.site-month-level{border-top:1px solid var(--line);background:var(--card);padding:10px 11px}.site-month-level>span{color:var(--ink);gap:2px;font-size:12px;display:grid}.site-month-level small{color:var(--muted);font-size:10.5px;font-weight:500}.site-month-level strong{color:var(--navy);font-variant-numeric:tabular-nums;font-size:18px}.site-forecast-help{margin:-9px 0 9px;font-size:11px}.site-forecast-list{gap:7px;margin-bottom:20px;display:grid}.site-forecast-row{border:1px solid var(--line);background:var(--card);width:100%;color:inherit;box-shadow:var(--shadow);font:inherit;text-align:left;cursor:pointer;border-radius:9px;grid-template-columns:150px 118px minmax(220px,1fr) 125px;align-items:center;gap:12px;padding:11px 13px;display:grid}.site-forecast-row:hover{background:#f8fbfe;border-color:#b9d4ea}.site-forecast-row:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.site-forecast-row.current{border-color:var(--sky);background:var(--sky-soft)}.site-forecast-row.expanded{border-color:var(--sky)}.site-forecast-row.site-plan-row{grid-template-columns:150px minmax(220px,1fr) auto}.site-forecast-month,.site-forecast-percent,.site-forecast-brief{gap:1px;display:grid}.site-forecast-month span,.site-forecast-brief b{color:var(--navy-deep);font-size:12px;font-weight:750}.site-forecast-month b{width:fit-content;color:var(--sky-ink);text-transform:uppercase;font-size:8.5px}.site-forecast-percent b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:17px}.site-forecast-percent span,.site-forecast-brief span,.site-forecast-lift{color:var(--muted);font-size:9.5px}.site-forecast-brief span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-forecast-lift{color:var(--sky-ink);justify-self:end;font-weight:700}.site-forecast-detail{border-top:1px solid var(--line);grid-column:1/-1;padding-top:11px}.site-forecast-detail-metrics{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.site-forecast-detail-metrics>div{background:var(--sky-soft);border-radius:7px;gap:1px;padding:8px 10px;display:grid}.site-forecast-detail-metrics span{color:var(--muted);font-size:9px}.site-forecast-detail-metrics b{color:var(--navy);font-variant-numeric:tabular-nums;font-size:16px}.site-forecast-detail p{color:var(--muted);margin:9px 0 0;font-size:11px}.site-forecast-levels{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.site-forecast-levels span{background:var(--done-bg);color:var(--ink);border-radius:100px;padding:3px 7px;font-size:9.5px;font-weight:650}.target-history{margin-top:20px}.target-history-help{margin:-9px 0 9px;font-size:11px}.target-history-row{text-align:left;align-items:flex-start}.target-history-changes{color:var(--sky-ink);margin-top:3px;font-size:10.5px;font-weight:650;display:block}.target-history-snapshot{border:1px solid var(--line);background:var(--sky-soft);color:var(--body);border-radius:8px;gap:4px;margin-top:9px;padding:10px;font-size:11px;line-height:1.45;display:grid}.target-history-snapshot>b{color:var(--navy-deep);font-size:12px}.target-history-levels{flex-wrap:wrap;gap:5px;margin-top:3px;display:flex}.target-history-levels em{background:var(--card);color:var(--ink);border-radius:100px;padding:3px 7px;font-size:9.5px;font-style:normal;font-weight:650}@media (width<=760px){.delivery-forecast-heading{flex-direction:column;align-items:stretch}.delivery-forecast-total{justify-items:start}.delivery-forecast-metrics{grid-template-columns:1fr}.delivery-forecast-table{box-shadow:none;background:0 0;border:0;overflow:visible}.delivery-forecast-table table,.delivery-forecast-table tbody{display:block}.delivery-forecast-table thead,.delivery-forecast-table tfoot{display:none}.delivery-forecast-table tr{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:10px;grid-template-columns:1fr auto;gap:8px;margin-bottom:8px;padding:12px;display:grid}.delivery-forecast-table tr.delivery-row-selected{background:var(--sky-soft);border-color:var(--sky)}.delivery-forecast-table td{border:0;padding:0;display:block;text-align:left!important}.delivery-forecast-table td:nth-child(2),.delivery-forecast-table td:nth-child(3){grid-column:1/-1}.delivery-forecast-table td:nth-child(4){display:none}.delivery-forecast-table td:nth-child(5){grid-column:1}.delivery-forecast-table td:nth-child(6){grid-area:1/2}.delivery-row-brief{max-width:none}.delivery-row-brief span{white-space:normal}.delivery-target-context,.site-target-metrics{grid-template-columns:1fr}.site-forecast-row{grid-template-columns:1fr auto;gap:7px 10px}.site-forecast-row.site-plan-row{grid-template-columns:1fr auto}.site-forecast-percent{justify-items:end}.site-forecast-brief{grid-column:1/-1}.site-forecast-brief span{white-space:normal}.site-forecast-lift{grid-column:1/-1;justify-self:start}.site-forecast-detail-metrics{grid-template-columns:1fr}}.tgrp{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px}.tgrp-head{align-items:center;gap:10px;padding:5px 12px 5px 6px;display:flex}.tgrp-head .btn2{flex:none;align-items:center;gap:5px;display:inline-flex}.tgrp-toggle{cursor:pointer;min-width:0;font:inherit;color:var(--ink);text-align:left;border-radius:var(--radius);background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:10px 4px 10px 8px;display:flex}.tgrp-toggle:focus-visible{outline:2px solid var(--sky);outline-offset:-2px}.tgrp-chev{color:var(--muted);flex:none;transition:transform .15s}.tgrp.open .tgrp-chev{transform:rotate(90deg)}.tgrp-dot{border-radius:50%;flex:none;width:9px;height:9px}.tgrp-title{flex:none;font-size:13.5px;font-weight:700}.tgrp-count{color:var(--muted);background:var(--panel);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:100px;flex:none;padding:1px 8px;font-size:11px;font-weight:700}.tgrp-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.tgrp-body{border-top:1px solid var(--line);padding:2px 16px 8px}.tgrp-tools{flex-wrap:wrap;align-items:center;gap:8px;padding:12px 0 2px;display:flex}.tgrp-body .rows{gap:0}.tgrp-body .rowi{box-shadow:none;border:0;border-radius:0;padding:12px 2px}.tgrp-body .rowi+.rowi{border-top:1px solid var(--line)}.tgrp-body .tnote{margin:0;padding:12px 2px}@media (width<=700px){.tgrp-sub{display:none}}.itp-sect{align-items:center;gap:8px;margin:4px 0 8px;font-size:14.5px;font-weight:700;display:flex}.itp-sect-n{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:9px;padding:1px 8px;font-size:11.5px;font-weight:650}.itp-ring{flex:none}.itp-sheet-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.itp-sheet-meta{flex:1;min-width:0}.itp-sheet-meta .t1{font-weight:700}.itp-sheet-meta .t2{color:var(--muted);margin-top:2px;font-size:12px}.itp-rev{color:var(--muted);margin-left:4px;font-size:12px;font-weight:500}.itp-items{flex-direction:column;gap:10px;display:flex}.itp-item{border:1px solid var(--line);background:var(--card,#fff);border-radius:11px;gap:10px;padding:12px;display:flex}.itp-item-passed{border-color:var(--good-line);background:var(--good-bg)}.itp-item-failed{border-color:var(--crit-line);background:var(--crit-bg)}.itp-item-na{opacity:.62}.itp-item-no{background:var(--navy);color:#fff;border-radius:12px;flex:none;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.itp-item-passed .itp-item-no{background:var(--good)}.itp-item-failed .itp-item-no{background:var(--crit)}.itp-item-body{flex:1;min-width:0}.itp-item-text{font-size:13.5px;font-weight:600;line-height:1.45}.itp-item-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:5px;font-size:11.5px;display:flex}.itp-ref{font-style:italic}.itp-item-note{border-left:3px solid var(--sky,#22a0e0);background:var(--panel);border-radius:0 7px 7px 0;margin-top:7px;padding:7px 10px;font-size:12.5px}.itp-item-foot{flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;display:flex}.itp-item-foot .btn,.itp-item-foot .btn2{padding:7px 14px;font-size:12.5px}.itp-pass{background:var(--good)}.itp-fail{color:var(--crit);border-color:var(--crit-line)}.itp-photo{align-items:center;gap:5px;display:inline-flex}.itp-await{color:var(--muted);font-size:12px}.itp-signed{flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;font-weight:650;display:inline-flex}.itp-signed-passed{color:var(--good)}.itp-signed-failed{color:var(--crit)}.itp-signed-na{color:var(--muted)}.itp-photos{color:var(--muted);align-items:center;gap:3px;font-weight:500;display:inline-flex}.itp-type{border-radius:7px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.itp-type-hold{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn-line,var(--line))}.itp-type-witness{background:var(--sky-soft,var(--panel));color:var(--sky-ink,var(--navy));border:1px solid var(--line)}.itp-type-surveillance{background:var(--panel);color:var(--muted);border:1px solid var(--line)}.itp-dialog .dlg-b{max-height:68vh;overflow-y:auto}@media (width<=700px){.itp-item{padding:10px}.itp-item-foot .btn,.itp-item-foot .btn2{flex:auto}}.btn,.btn2,.tbtn,.fpb,.sel,.srch,.inp,.project-quick-link,.backlink{transition:background-color .16s var(--ease), color .16s var(--ease), border-color .16s var(--ease), box-shadow .16s var(--ease), transform .16s var(--ease)}.btn:hover,.btn2:hover{transform:translateY(-1px);box-shadow:0 3px 10px #12264a1f}.btn:active,.btn2:active{box-shadow:none;transform:translateY(0)}button.rowi,a.rowi{transition:border-color .16s var(--ease), transform .16s var(--ease), box-shadow .16s var(--ease), background-color .16s var(--ease)}button.rowi:hover,a.rowi:hover{border-color:var(--sky);transform:translateY(-2px);box-shadow:0 5px 16px #12264a1a}.rowi.static{box-shadow:var(--shadow)!important;transform:none!important}.project-quick-link:hover{border-color:var(--sky);transform:translateY(-1px)}.kpi{transition:box-shadow .16s var(--ease)}.dlg-scrim{animation:.15s scrim-in}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}.tab-fade{animation:rise-in .22s var(--ease)}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.health-freshness{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.freshness-chip{letter-spacing:.01em;background:var(--line-soft);color:var(--muted);border:1px solid var(--line-soft);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:650}.freshness-chip.amber{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}.quiet{color:#a5b1c2;font-weight:500}.minibar i{transition:width .6s var(--ease);border-radius:4px}.levels-table .level-row td{transition:background-color .15s var(--ease)}.levels-table .level-row:hover td{background:var(--sky-soft)}.levels-table .level-row:hover td:first-child{box-shadow:inset 3px 0 0 var(--sky)}.level-caret{transition:transform .18s var(--ease), color .18s var(--ease)}.level-row:hover .level-caret{color:var(--sky-ink);transform:translate(2px)}.meta-chips{flex-wrap:wrap;gap:8px;margin:4px 0 14px;display:flex}.meta-chip{background:var(--card);border:1px solid var(--line);border-radius:8px;align-items:baseline;gap:6px;padding:5px 11px;font-size:12px;display:inline-flex}.meta-chip small{letter-spacing:.06em;color:var(--muted);text-transform:uppercase;font-size:9.5px;font-weight:700}.meta-chip b{color:var(--ink);white-space:nowrap;font-weight:700}.project-quick-links{padding:8px 12px}.project-quick-links-title small{display:none}.project-quick-links-actions{flex-wrap:wrap;max-width:none;display:flex}.project-quick-link{border-radius:8px;align-items:center;gap:8px;padding:6px 12px}.project-quick-link>span:not(.project-quick-link-icon) small{display:none}.project-quick-link b{font-size:12px}.project-quick-link .project-quick-link-icon{width:22px;height:22px}.project-quick-link .project-quick-link-icon svg{width:13px;height:13px}.project-quick-link .project-quick-link-open{width:12px;height:12px}.tender-quick-links .project-quick-link>span:not(.project-quick-link-icon) small{display:block}.quiet-sep{color:var(--muted);margin-left:4px;font-size:11.5px;font-weight:500}.level-primary b.over{color:var(--crit)}.level-delivery-open{font:inherit;cursor:pointer;background:0 0;border:0;border-radius:100px;padding:0}.level-delivery-open:hover .stage-chip{box-shadow:0 0 0 2px var(--sky-soft)}.level-delivery-open:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.level-timeline-meta{position:relative}.level-entry-delete{cursor:pointer;color:#a5b1c2;transition:color .15s var(--ease), background-color .15s var(--ease);background:0 0;border:0;border-radius:5px;margin-left:auto;padding:3px;line-height:0}.level-entry-delete:hover{color:var(--crit);background:var(--crit-bg)}.level-entry-delete:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.level-entry-confirm{gap:6px;margin-left:auto;display:inline-flex}.level-entry-confirm .btn,.level-entry-confirm .btn2{padding:3px 10px;font-size:11px}.cr-timeline .cr-email-proof{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.order-add-own-open{margin-top:10px}.order-add-own{border:1px solid var(--line);background:var(--panel);border-radius:10px;margin-top:12px;padding:14px}.order-add-own>b{margin-bottom:4px;display:block}.order-add-own-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.order-add-own-grid label{color:var(--muted);flex-direction:column;gap:4px;font-size:12.5px;display:flex}.order-add-own-grid label.wide{grid-column:1/-1}.order-add-own-grid label small{opacity:.75;font-weight:400}.order-add-own-err{color:var(--crit)}.order-add-own-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}@media (width<=640px){.order-add-own-grid{grid-template-columns:1fr}}.pc-cols{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}@media (width<=900px){.pc-cols{grid-template-columns:1fr}}.pc-figs{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px;display:grid}.pc-figs>div{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:9px 12px}.pc-figs b{letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-bottom:2px;font-size:11px;font-weight:650;display:block}.pc-figs span{font-size:15px;font-weight:700}.pc-next{border-left:3px solid var(--sky,#22a0e0);background:var(--sky-soft,var(--panel));border-radius:0 8px 8px 0;margin-bottom:14px;padding:9px 12px;font-size:13.5px}.pc-next b{margin-right:6px}.pc-act-h{letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:11.5px;font-weight:700}.pc-acts{flex-direction:column;gap:8px;display:flex}.pc-act{gap:10px;font-size:13px;display:flex}.pc-act-when{width:58px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.pc-act-what small{color:var(--muted);margin-top:1px;display:block}.pc-board{align-items:flex-start;gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.pc-col{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;flex:0 0 240px;gap:8px;padding:10px;display:flex}.pc-col-h{border-bottom:2px solid var(--line);align-items:center;gap:7px;padding:2px 2px 6px;font-size:13px;font-weight:700;display:flex}.pc-col-won .pc-col-h{border-bottom-color:var(--good)}.pc-col-lost .pc-col-h{border-bottom-color:var(--crit)}.pc-col-negotiation .pc-col-h,.pc-col-submitted .pc-col-h{border-bottom-color:var(--warn,#c89b3c)}.pc-col-estimating .pc-col-h{border-bottom-color:var(--sky,#22a0e0)}.pc-col-n{background:var(--card,#fff);border:1px solid var(--line);color:var(--muted);border-radius:8px;padding:0 7px;font-size:11px}.pc-col-sum{color:var(--muted);margin-left:auto;font-size:11.5px;font-weight:600}.pc-card{text-align:left;border:1px solid var(--line);background:var(--card,#fff);cursor:pointer;font:inherit;color:inherit;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;display:flex;box-shadow:0 1px 2px #0f172a0f}.pc-card:hover{border-color:var(--sky,#22a0e0)}.pc-card b{font-size:13px;line-height:1.35}.pc-card>span{color:var(--muted);font-size:12px}.pc-card-foot{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.pc-card-foot .num{color:var(--ink);font-size:12.5px;font-weight:700}.pc-prob{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:7px;padding:1px 7px;font-size:11px;font-weight:650}.pc-empty{color:var(--muted);text-align:center;padding:10px 0 6px;font-size:13px}.pc-won{background:var(--good)}.pc-lost{color:var(--crit);border-color:var(--crit-line)}.pc-form .ff{margin-bottom:10px}.pc-blocker{border-left:3px solid var(--warn,#c89b3c);background:var(--warn-bg,var(--panel));color:var(--warn,inherit);border-radius:0 8px 8px 0;margin-bottom:14px;padding:9px 12px;font-size:13.5px;font-weight:600}.pc-blocker-chip{color:var(--warn,#a06b00);background:var(--warn-bg,var(--panel));border:1px solid var(--warn-line,var(--line));border-radius:7px;align-self:flex-start;padding:1px 7px;font-size:11px;font-weight:650}.monthly-labour{gap:16px;width:100%;min-width:0;max-width:100%;display:grid}.monthly-labour>*{min-width:0}.monthly-labour.embedded{margin-top:2px}.monthly-labour-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.monthly-labour-heading h2{color:var(--navy-deep);margin:4px 0 5px;font-size:21px}.monthly-labour-heading .lead{margin-bottom:0}.monthly-labour-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.monthly-labour-month{min-width:176px}.monthly-labour-mode-tabs{margin-bottom:18px}.monthly-labour-kpis{margin-bottom:0}.monthly-commercial-snapshot{background:var(--card);border:1px solid #cad8e8;border-radius:14px;overflow:hidden;box-shadow:0 10px 28px #112e5214}.monthly-commercial-title{border-bottom:1px solid var(--line);background:linear-gradient(90deg,#f7faff,#fff);justify-content:space-between;align-items:center;gap:18px;padding:13px 17px;display:flex}.monthly-commercial-title p{color:var(--muted);margin:0;font-size:11px}.monthly-commercial-primary{background:var(--line);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1px;display:grid}.monthly-commercial-metric{background:var(--card);min-width:0;padding:20px 22px 18px;position:relative}.monthly-commercial-metric>small{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:750;display:block}.monthly-commercial-metric>strong,.monthly-commercial-gp-value strong{color:var(--navy-deep);letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:clamp(28px,3.4vw,40px);line-height:1.05;display:block}.monthly-commercial-metric p{color:var(--muted);margin:8px 0 0;font-size:11px}.monthly-commercial-icon{background:var(--sky-soft);width:34px;height:34px;color:var(--navy);border-radius:10px;place-items:center;display:grid;position:absolute;top:18px;right:19px}.monthly-commercial-icon svg{width:18px;height:18px}.monthly-commercial-metric.plan-gp{background:linear-gradient(135deg, var(--navy-deep), #224d7f)}.monthly-commercial-metric.plan-gp>small,.monthly-commercial-metric.plan-gp p{color:#ffffffb8}.monthly-commercial-metric.plan-gp .monthly-commercial-icon{color:#fff;background:#ffffff21}.monthly-commercial-gp-value{align-items:center;gap:13px;min-width:0;padding-right:40px;display:flex}.monthly-commercial-metric.plan-gp .monthly-commercial-gp-value strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monthly-commercial-gp-rate{color:#14714b;font-variant-numeric:tabular-nums;background:#dff4e8;border-radius:999px;flex:none;padding:6px 10px;font-size:18px;font-style:normal;font-weight:800;line-height:1}.monthly-commercial-metric.plan-gp.is-negative{background:linear-gradient(135deg, var(--crit), #8a2424)}.monthly-commercial-metric.plan-gp.is-negative .monthly-commercial-gp-rate{color:#ae382f;background:#ffe6e3}.monthly-commercial-costs{grid-template-columns:repeat(var(--stat-cols,5), minmax(0, 1fr));border-top:1px solid var(--line);background:var(--line);gap:1px;display:grid}.monthly-commercial-costs>span{background:#fbfcfe;min-width:0;padding:12px 15px 13px}.monthly-commercial-costs small,.monthly-commercial-costs b,.monthly-commercial-costs em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.monthly-commercial-costs small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:750}.monthly-commercial-costs b{color:var(--navy-deep);font-variant-numeric:tabular-nums;margin-top:5px;font-size:17px}.monthly-commercial-costs em{color:var(--muted);margin-top:3px;font-size:9.5px;font-style:normal}.monthly-commercial-cost-value{align-items:center;gap:8px;min-width:0;display:flex}.monthly-commercial-cost-value b{min-width:0}.monthly-commercial-cost-rate{color:#14714b;font-variant-numeric:tabular-nums;background:#e2f2e9;border-radius:999px;flex:none;margin-top:5px;padding:4px 7px;font-size:12px;font-style:normal;font-weight:800;line-height:1}.monthly-commercial-costs>.is-warning .monthly-commercial-cost-rate{color:#9a6510;background:#fff0d3}.monthly-commercial-costs>.is-good{box-shadow:inset 0 3px #62b387}.monthly-commercial-costs>.is-warning{box-shadow:inset 0 3px #dda640}.monthly-commercial-costs>.is-critical{box-shadow:inset 0 3px 0 var(--crit)}.monthly-commercial-costs>.is-critical .monthly-commercial-cost-rate{background:var(--crit-bg);color:var(--crit)}.monthly-commercial-secondary-kpis .kpi{box-shadow:none}.monthly-labour-source-strip{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:9px;flex-wrap:wrap;gap:10px 24px;padding:11px 14px;font-size:12px;display:flex}.monthly-labour-source-strip b{color:var(--ink)}.monthly-labour-scope .cardh,.monthly-labour-portfolio-table .cardh,.monthly-labour-assumptions .cardh,.monthly-labour-history .cardh{justify-content:space-between;align-items:center;gap:16px;display:flex}.monthly-labour-scope .cardh small,.monthly-labour-portfolio-table .cardh small,.monthly-labour-assumptions .cardh small,.monthly-labour-history .cardh small{color:var(--muted);font-weight:500}.monthly-claim-actions{align-items:center;gap:8px;display:flex}.monthly-claim-table{min-width:1100px}.monthly-claim-table .monthly-labour-input-unit{width:92px;margin-left:auto}.monthly-claim-table tfoot td{border-top:2px solid var(--line);background:var(--panel);border-bottom:0;font-weight:700}.monthly-claim-table tr.monthly-claim-consolidated td:first-child{box-shadow:inset 3px 0 #49a7d8}.monthly-claim-table tr.monthly-claim-variation{background:#f4faf7}.monthly-claim-table tr.monthly-claim-variation td:first-child{box-shadow:inset 3px 0 0 var(--good)}.monthly-claim-stage-stack{gap:4px;min-width:72px;display:grid}.monthly-claim-stage-stack>span,.monthly-claim-stage-stack>label{justify-content:flex-end;align-items:center;gap:6px;display:flex}.monthly-claim-stage-stack small{min-width:43px;color:var(--muted);text-align:left;text-transform:uppercase;margin:0;font-size:9px;font-weight:700;display:inline}.monthly-claim-stage-stack em{color:var(--ink);font-style:normal}.monthly-claim-stage-stack.is-input{gap:7px}.monthly-claim-stage-stack.is-input .monthly-labour-input-unit{margin:0}.monthly-labour-scope.is-editing{border-color:#d8c77e;box-shadow:0 0 0 3px #d8c77e24}.monthly-labour-table-wrap{width:100%;min-width:0;max-width:100%;overflow-x:auto}.monthly-labour-table{border-collapse:collapse;width:100%;min-width:780px;font-size:12.5px}.monthly-labour-table th{border-bottom:1px solid var(--line);color:var(--muted);text-align:right;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:9px 12px;font-size:10px}.monthly-labour-table th:first-child,.monthly-labour-table td:first-child{text-align:left}.monthly-labour-table td{border-bottom:1px solid var(--line);color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;vertical-align:middle;padding:12px}.monthly-labour-table tr:last-child td{border-bottom:0}.monthly-labour-table tbody tr:hover{background:#f8fafd}.monthly-labour-table td small{color:var(--muted);margin-top:3px;font-size:10.5px;display:block}.monthly-labour-table .monthly-labour-missing{color:var(--warn)}.monthly-labour-table tr.has-gap td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.monthly-labour-team .cardh{justify-content:space-between;align-items:center;gap:14px;display:flex}.crew-month-summary{border-top:1px solid var(--line);background:var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.crew-month-summary>span{background:#f8fafd;padding:11px 14px}.crew-month-summary small,.crew-month-summary b{display:block}.crew-month-summary small{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:750}.crew-month-summary b{color:var(--navy-deep);font-variant-numeric:tabular-nums;font-size:16px}.monthly-labour-team-head,.monthly-labour-person{grid-template-columns:minmax(170px,1.35fr) 80px 100px 94px 90px 108px 62px;align-items:center;gap:9px;display:grid}.capacity-bridge{background:#f2faf5;border:1px solid #bfdaca;border-radius:10px;grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr) minmax(150px,.8fr);align-items:center;gap:14px;margin:0 14px 14px;padding:13px 15px;display:grid}.capacity-bridge.has-gap{background:#fff8eb;border-color:#efcf98}.capacity-bridge span{min-width:0}.capacity-bridge small,.capacity-bridge b{display:block}.capacity-bridge small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:650}.capacity-bridge b{color:var(--navy-deep);margin-top:4px;font-size:17px}.capacity-bridge-arrow{color:var(--muted);font-size:20px}.capacity-bridge-result{border-left:1px solid #14325221;padding-left:14px}.capacity-bridge.has-gap .capacity-bridge-result b{color:var(--warn)}.capacity-bridge.is-covered .capacity-bridge-result b{color:var(--good)}.monthly-labour-team-head{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel);color:var(--muted);letter-spacing:.07em;text-transform:uppercase;padding:8px 14px;font-size:9.5px;font-weight:700}.monthly-labour-team-rows{display:grid}.monthly-labour-person{border-bottom:1px solid var(--line);padding:10px 14px}.monthly-labour-person:last-child{border-bottom:0}.monthly-labour-person label>span:first-child{display:none}.monthly-labour-person .inp{text-align:right;font-variant-numeric:tabular-nums;width:100%;min-width:0;padding:7px 8px;font-size:12px}.monthly-labour-person-name,.monthly-labour-person>span{min-width:0}.monthly-labour-person-name b{color:var(--navy-deep);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.monthly-labour-person small{color:var(--muted);font-size:10.5px;display:block}.monthly-labour-person em{color:var(--muted);font-size:9.5px;font-style:normal;display:block}.monthly-labour-remove{appearance:none;color:var(--crit);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:10.5px}.monthly-labour-input-unit{display:block;position:relative}.monthly-labour-input-unit .inp{width:100%;padding-right:25px}.monthly-labour-input-unit i{color:var(--muted);pointer-events:none;font-size:11px;font-style:normal;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.monthly-labour-bottom-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:16px;display:grid}.monthly-labour-card-kicker{color:var(--navy);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;font-size:10px;font-weight:750;display:flex}.monthly-labour-guidance p{color:var(--ink);margin:13px 0 15px;font-size:14px;line-height:1.6}.monthly-labour-notes textarea{resize:vertical;width:100%;margin-top:12px}.monthly-labour-director-fields,.monthly-labour-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.monthly-labour-director-fields label>span{color:var(--muted);margin-bottom:5px;font-size:10.5px;font-weight:650;display:block}.monthly-labour-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;min-height:38px;display:flex}.monthly-labour-published{color:var(--good);align-items:center;gap:7px;font-size:12px;font-weight:650;display:inline-flex}.monthly-labour-published svg{width:16px;height:16px}.monthly-labour-history .cardh .t{align-items:center;gap:7px;display:flex}.monthly-labour-history .rowi{grid-template-columns:minmax(0,1fr) auto auto}.monthly-labour-history .rm{color:var(--muted);font-size:11px}.monthly-labour-history .ri{flex:1;min-width:0}.monthly-labour-history .rt{font-weight:600}.monthly-labour-history .rs{color:var(--muted);margin-top:2px;font-size:12px}.monthly-labour-history-actions{align-items:center;gap:12px;display:flex}.monthly-labour-history-actions small{color:var(--muted);font-weight:500}.monthly-labour-revision-marker{appearance:none;cursor:pointer;background:0 0;border:0;padding:0}.revision-detail-back{margin-bottom:12px}.revision-detail-head{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.revision-detail-title{align-items:center;gap:8px;font-size:15px;display:flex}.revision-detail-head small{color:var(--muted);font-size:12px}.revision-detail .monthly-labour-table-wrap+.monthly-labour-table-wrap{margin-top:16px}.revision-compare-pickers{align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.revision-compare-pickers label{flex:1;gap:5px;min-width:0;display:grid}.revision-compare-pickers label>span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:650}.revision-compare-pickers svg{color:var(--muted);flex:none;margin-bottom:9px}.revision-compare-section{margin-top:18px}.revision-compare-note{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;gap:6px;margin-top:14px;padding:12px 14px;display:flex}.revision-compare-note-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:10.5px;font-weight:700;display:flex}.revision-compare-note p{color:var(--ink);margin:0;font-size:13px;line-height:1.5}.revision-compare-section h4{color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:12.5px;font-weight:700}.revision-diff-table td:first-child small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:10px;display:block}.revision-diff-table tr.revision-diff-added td:first-child{box-shadow:inset 3px 0 0 var(--good)}.revision-diff-table tr.revision-diff-removed td:first-child{box-shadow:inset 3px 0 0 var(--crit)}.revision-diff-table tr.revision-diff-changed td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.monthly-labour-assumption-grid{background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.monthly-labour-assumption{appearance:none;background:var(--card);min-height:64px;color:var(--ink);text-align:left;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:14px;padding:11px 13px;display:flex}.monthly-labour-assumption:hover{background:#f6f9fd}.monthly-labour-assumption span:last-child{text-align:right}.monthly-labour-assumption b,.monthly-labour-assumption small{display:block}.monthly-labour-assumption small{color:var(--muted);margin-top:3px;font-size:10px}.monthly-labour-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.pm-control-card .cardh{justify-content:space-between;align-items:center;gap:16px;display:flex}.pm-control-card .cardh small{color:var(--muted);margin-top:3px;font-weight:500;display:block}.pm-control-list{display:grid}.pm-control-project{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 86px auto;align-items:center;gap:15px;padding:13px 15px;display:grid}.pm-control-project>span:first-child b,.pm-control-project>span:first-child small,.pm-control-progress b,.pm-control-progress small{display:block}.pm-control-project>span:first-child small{color:var(--muted);margin-top:3px;font-size:11px}.pm-control-progress{text-align:right}.pm-control-progress b{color:var(--navy-deep);font-size:16px}.pm-control-progress small{color:var(--muted);text-transform:uppercase;font-size:9px}.pm-control-complete{color:var(--good);align-items:center;gap:9px;padding:18px;font-weight:650;display:flex}.pm-control-complete svg{width:18px;height:18px}.project-controls .cardh{justify-content:space-between;align-items:center;gap:14px;display:flex}.project-controls .cardh small{color:var(--muted);margin-top:3px;font-weight:500;display:block}.project-controls-grid{background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.project-control-item{background:var(--card);min-width:0;color:var(--ink);align-items:center;gap:10px;padding:12px 13px;text-decoration:none;display:flex}.project-control-item:hover{background:#f5f8fc}.project-control-item.overdue{background:#fff7f3}.project-control-item.complete{background:#f5faf7}.project-control-icon{background:var(--panel);width:26px;height:26px;color:var(--muted);border-radius:50%;flex:none;place-items:center;display:grid}.project-control-item.complete .project-control-icon{background:var(--good-bg);color:var(--good)}.project-control-item.overdue .project-control-icon{background:var(--crit-bg);color:var(--crit)}.project-control-icon svg{width:15px;height:15px}.project-control-item b,.project-control-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-control-item b{font-size:12px}.project-control-item small{color:var(--muted);margin-top:3px;font-size:9.5px}.project-control-prompt{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:10px 13px;font-size:11px}.portfolio-outlook .cardh{justify-content:space-between;align-items:center;display:flex}.portfolio-outlook .cardh small{color:var(--muted);margin-top:3px;font-weight:500;display:block}.portfolio-outlook-grid{background:var(--line);grid-template-columns:repeat(6,minmax(110px,1fr));gap:1px;display:grid}.portfolio-outlook-month{appearance:none;background:var(--card);min-width:0;color:var(--ink);text-align:left;cursor:pointer;border:0;grid-template-rows:auto 74px auto;gap:8px;padding:12px;display:grid}.portfolio-outlook-month:hover,.portfolio-outlook-month.on{background:#f2f7fd}.portfolio-outlook-month.on{box-shadow:inset 0 3px 0 var(--navy)}.portfolio-outlook-month span b,.portfolio-outlook-month span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.portfolio-outlook-month span small{color:var(--muted);margin-top:3px;font-size:9.5px}.portfolio-outlook-month>i{background:#edf2f8;border-radius:5px;align-items:flex-end;width:100%;display:flex;position:relative;overflow:hidden}.portfolio-outlook-month>i em{background:linear-gradient(180deg, #3d7ab4, var(--navy));border-radius:5px 5px 0 0;width:100%;min-height:8px;display:block}@media (width<=1050px){.monthly-commercial-costs{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-labour-team-head{display:none}.monthly-labour-person{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.capacity-bridge{grid-template-columns:1fr auto 1fr}.capacity-bridge-result{border-top:1px solid #14325221;border-left:0;grid-column:1/-1;padding:10px 0 0}.monthly-labour-person-name{grid-column:1/-1}.monthly-labour-person label>span:first-child{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:700;display:block}.monthly-labour-person>span:not(.monthly-labour-person-name){align-self:center}.monthly-labour-assumption-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-outlook-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.project-controls-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.monthly-labour-heading{display:grid}.monthly-labour-heading-actions{justify-content:flex-start}.monthly-labour-month{width:100%}.monthly-labour-kpis{grid-template-columns:1fr}.monthly-labour-kpis .kpi{min-width:0}.monthly-commercial-title{gap:5px;display:grid}.monthly-commercial-primary{grid-template-columns:1fr}.monthly-commercial-metric{padding:18px}.monthly-commercial-gp-value{flex-direction:column;align-items:flex-start;gap:9px;padding-right:36px}.monthly-commercial-costs{grid-template-columns:1fr 1fr}.monthly-labour-bottom-grid{grid-template-columns:1fr}.monthly-labour-team .cardh,.monthly-claim-actions{flex-direction:column;align-items:stretch}.monthly-claim-actions .btn,.monthly-claim-actions .btn2{justify-content:center}.crew-month-summary,.monthly-labour-person{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-bridge{grid-template-columns:1fr}.capacity-bridge-arrow{display:none}.pm-control-project{grid-template-columns:1fr auto}.pm-control-project .btn2{grid-column:1/-1;justify-content:center}.monthly-labour-person>span:nth-of-type(2),.monthly-labour-person>span:nth-of-type(3){padding:7px 0}.monthly-labour-assumption-grid,.monthly-labour-director-fields,.monthly-labour-settings-grid{grid-template-columns:1fr}.portfolio-outlook-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}.project-controls-grid{grid-template-columns:1fr}.monthly-labour-actions{justify-content:stretch}.monthly-labour-actions .btn,.monthly-labour-actions .btn2{flex:1;justify-content:center}.monthly-labour-history .rowi{grid-template-columns:1fr auto}.monthly-labour-history .rm{grid-column:1/-1}}.delivery-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.monthly-labour-materials .cardh,.delivery-health-title{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.delivery-material-summary{background:var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(130px,1fr));gap:1px;display:grid}.delivery-material-summary>div,.delivery-material-summary>label{background:var(--card);align-content:center;min-height:76px;padding:12px 14px;display:grid}.delivery-material-summary small,.delivery-material-summary label>span,.delivery-health-fields label>span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.delivery-material-summary b{color:var(--navy-deep);font-variant-numeric:tabular-nums;font-size:16px}.delivery-material-summary>.delivery-material-input{grid-column:1/-1;min-height:66px}.delivery-material-table{min-width:980px}.delivery-material-table .sel{min-width:135px}.delivery-health-title p{color:var(--muted);align-items:center;gap:8px;margin:10px 0 0;font-size:12px;display:flex}.delivery-health-title>.sel{min-width:150px}.delivery-health-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.delivery-health-fields .wide{grid-column:1/-1}.delivery-health-fields textarea{resize:vertical}.delivery-control-alert{color:#80520a;background:#fff8e8;border:1px solid #f1d18b;border-radius:8px;align-items:flex-start;gap:8px;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.45;display:flex}.delivery-control-alert.critical{color:#982d2d;background:#fff1f1;border-color:#f2b4b4}.delivery-control-alert svg{flex:none;width:15px;height:15px;margin-top:1px}.hours-over-budget-alert{border:1px solid var(--crit-line);background:var(--crit-bg);color:var(--crit);border-radius:10px;align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 14px;font-size:12px;line-height:1.5;display:flex}.hours-over-budget-alert.compact{margin:12px 0 0}.hours-over-budget-alert svg{flex:none;width:18px;height:18px;margin-top:1px}.hours-over-budget-alert span,.hours-over-budget-alert b{display:block}.hours-over-budget-alert b{margin-bottom:2px;font-size:13px}.site-level-card.over-budget{border-color:var(--crit-line);box-shadow:0 0 0 1px #ad2d2d0f,0 8px 20px #ad2d2d12}.site-level-hours-overrun{border:1px solid var(--crit-line);background:var(--crit-bg);color:var(--crit);border-radius:8px;align-items:flex-start;gap:8px;margin-top:10px;padding:9px 10px;font-size:11px;line-height:1.45;display:flex}.site-level-hours-overrun svg{flex:none;margin-top:1px}.site-level-hours-overrun span,.site-level-hours-overrun b{display:block}.site-level-hours-overrun b{margin-bottom:1px}.downtime-summary{margin-top:24px}.downtime-category-totals{margin-bottom:14px}.downtime-entries{gap:8px}.downtime-entry-row{flex-wrap:wrap;align-items:flex-start;gap:10px}.downtime-entry-row .t1,.downtime-entry-row .t2{white-space:normal;display:block}.downtime-entry-row .t2{margin-top:2px}.downtime-entry-actions{align-items:center;gap:2px;margin-left:auto;display:inline-flex}.downtime-edited-tag{background:var(--warn-bg);color:var(--warn);letter-spacing:.03em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:7px;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.level-entry-edit{cursor:pointer;color:#a5b1c2;transition:color .15s var(--ease), background-color .15s var(--ease);background:0 0;border:0;border-radius:5px;padding:3px;line-height:0}.level-entry-edit:hover{color:var(--sky);background:var(--sky-soft)}.level-entry-edit:focus-visible{outline:2px solid var(--sky);outline-offset:1px}.downtime-ritual-prompt{border:1px solid var(--sky);background:var(--sky-soft);color:var(--navy-deep);border-radius:9px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;font-size:12.5px;font-weight:650;display:flex}.downtime-ritual-actions{gap:8px;display:inline-flex}.site-level-downtime{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.site-level-downtime-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.site-level-downtime-head .subhead{align-items:center;gap:6px;margin:0;display:flex}.site-level-downtime .downtime-log-button.compact{margin-top:0}.downtime-staff-row button{font-size:12px}.overtime-log-button{margin-top:10px}.overtime-log-button.compact{padding:6px 11px;font-size:11.5px}.overtime-summary{margin-top:24px}.overtime-category-totals{margin-bottom:14px}.overtime-entries{gap:8px}.overtime-entry-row{flex-wrap:wrap;align-items:flex-start;gap:10px}.overtime-entry-row .t1,.overtime-entry-row .t2{white-space:normal;display:block}.overtime-entry-row .t2{margin-top:2px}.site-level-overtime{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.site-level-overtime-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.site-level-overtime-head .subhead{align-items:center;gap:6px;margin:0;display:flex}.site-level-overtime .overtime-log-button.compact{margin-top:0}.overtime-worker-row button{font-size:12px}.overtime-ai-row{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.overtime-ai-note{color:var(--muted);font-size:11.5px}.overtime-indicative{color:var(--muted);font-style:italic}.overtime-decision-card .odc-block{margin-bottom:12px}.overtime-decision-card .odc-block:last-of-type{margin-bottom:0}.overtime-rate-disclosure{margin-top:16px}.sgrid .v.crit{color:var(--crit)}.delivery-project-picker{border:1px solid var(--line);background:var(--card);border-radius:9px;align-items:center;gap:10px;margin-bottom:16px;padding:9px 12px;display:inline-flex}.delivery-project-picker label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:750}.delivery-project-picker .sel{min-width:260px}.delivery-weekly-form{gap:4px;display:grid}.delivery-portfolio-table{min-width:1220px}@media (width<=1180px){.delivery-kpis,.delivery-material-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-material-summary>label{grid-column:1/-1}}@media (width<=680px){.delivery-kpis,.delivery-material-summary,.delivery-health-fields{grid-template-columns:1fr}.delivery-health-fields .wide,.delivery-material-summary>label{grid-column:auto}.delivery-health-title{flex-direction:column;align-items:stretch}.delivery-project-picker{width:100%;display:grid}.delivery-project-picker .sel{width:100%;min-width:0}}.daily-plan-controls{border-top:1px solid var(--line);background:#f8fafc;grid-template-columns:minmax(210px,.7fr) minmax(260px,1.3fr);gap:12px;padding:14px;display:grid}.daily-plan-controls label>span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:750;display:block}.daily-plan-controls .sel{width:100%}.daily-scope-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(6,minmax(100px,1fr));gap:1px;display:grid}.daily-scope-summary>span{background:var(--card);min-height:70px;padding:12px}.daily-scope-summary small,.daily-scope-summary b{display:block}.daily-scope-summary small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:9px;font-weight:750}.daily-scope-summary b{color:var(--navy-deep);font-variant-numeric:tabular-nums;font-size:15px}.daily-plan-scroll{overflow-x:auto}.daily-plan-grid{border-bottom:1px solid var(--line);grid-template-columns:minmax(175px,1.25fr) repeat(5,minmax(125px,1fr)) minmax(70px,.55fr);min-width:940px;display:grid}.daily-plan-grid>*{border-right:1px solid var(--line);min-width:0;padding:9px}.daily-plan-head{background:var(--panel);color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:750}.daily-person b,.daily-person small{display:block}.daily-person small{color:var(--muted);margin-top:3px;font-size:10px}.daily-person button{color:var(--navy);cursor:pointer;background:0 0;border:0;margin:7px 7px 0 0;padding:0;font-size:10px;font-weight:700}.daily-person button.remove{color:#a13b3b}.daily-cell{background:var(--card);align-content:start;gap:5px;display:grid}.daily-cell.outside{color:var(--muted);background:#f7f8fa;place-items:center}.daily-cell select{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fff;border-radius:6px;padding:5px 4px;font-size:10px}.daily-hours{display:block;position:relative}.daily-hours input{border:1px solid var(--line);width:100%;min-width:0;font:inherit;font-variant-numeric:tabular-nums;border-radius:6px;padding:6px 21px 6px 7px}.daily-hours i{color:var(--muted);font-size:10px;font-style:normal;position:absolute;top:6px;right:7px}.daily-cell>small{color:var(--muted);font-size:9px;line-height:1.3}.daily-week-total{text-align:center;font-variant-numeric:tabular-nums;place-content:center;display:grid}.daily-week-total small{color:var(--muted);text-transform:uppercase;font-size:9px}.daily-plan-note{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:7px;margin:0;padding:11px 14px;font-size:11px;line-height:1.45;display:flex}.daily-plan-note svg{flex:none;margin-top:1px}.weekly-level-add{border-bottom:1px solid var(--line);background:#fbfcfe;grid-template-columns:minmax(240px,1.4fr) minmax(180px,1fr) auto;align-items:end;gap:10px;padding:14px;display:grid}.weekly-level-add label>span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:750;display:block}.weekly-level-add .sel{width:100%}.month-actual-strip{background:#b9d7cd;border:1px solid #b9d7cd;border-radius:9px;grid-template-columns:1.5fr repeat(3,1fr);gap:1px;margin:12px 0;display:grid;overflow:hidden}.month-actual-strip>span{background:#f1faf7;min-height:66px;padding:11px 13px}.month-actual-strip b,.month-actual-strip small{display:block}.month-actual-strip small{color:var(--muted);margin-top:4px;font-size:10px}.material-plan-input{min-width:105px;max-width:135px}.project-control-nav{border:1px solid var(--line);background:var(--card);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;padding:6px;display:flex}.project-control-primary,.project-control-secondary{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.project-control-nav button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 13px;font-size:13px;font-weight:650}.project-control-primary button{color:var(--ink);font-size:14px}.project-control-nav button.on{background:var(--navy);color:#fff;box-shadow:0 2px 8px #12346129}@media (width<=950px){.daily-scope-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.month-actual-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.daily-plan-controls,.daily-scope-summary,.month-actual-strip{grid-template-columns:1fr}.project-control-nav{flex-direction:column;align-items:stretch}.project-control-primary,.project-control-secondary{grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.project-control-nav button{padding:9px 6px}.weekly-level-add,.workflow-availability-form{grid-template-columns:1fr}.workflow-availability-form .wide{grid-column:auto}.workflow-direction-head{grid-template-columns:auto minmax(0,1fr);padding:14px}.workflow-direction-status{grid-column:2;justify-self:start}.workflow-direction-grid{grid-template-columns:1fr;padding:0 14px 13px}.workflow-direction-item{align-items:flex-start}.workflow-direction-foot{flex-direction:column;align-items:flex-start;padding:9px 14px}.workflow-direction-foot>div{justify-content:space-between;width:100%}.workflow-direction-history{padding:10px 14px 13px}.workflow-direction-history-row{grid-template-columns:1fr}.workflow-direction-history-row>strong{white-space:normal}.workflow-approval-availability-row,.workflow-month-packages>div{flex-direction:column;align-items:stretch}.workflow-approval-availability-row .sel{width:100%;min-width:0}}.write-assist{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 2px;display:flex}.rich-composer{gap:6px;display:grid}.rich-toolbar{flex-wrap:wrap;gap:4px;display:flex}.rich-toolbar .btn2{padding:6px 9px}.rich-editor{border:1px solid var(--line);color:var(--ink);background:var(--card,#fff);border-radius:8px;max-height:260px;padding:8px 10px;font-size:13.5px;overflow-y:auto}.rich-editor:focus{outline:2px solid var(--sky);outline-offset:-1px}.rich-editor:empty:before{content:attr(data-placeholder);color:var(--muted)}.rich-editor ul,.rich-editor ol{margin:4px 0 4px 20px;padding:0}.rich-editor a{color:var(--sky,#1b3a6b)}.rich-composer-attachments{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rich-composer-attachment-chip{border:1px solid var(--line);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:inline-flex}.rich-composer-attachment-chip button{color:var(--muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.rich-composer-attachment-chip button:hover{color:var(--ink)}.estimating-prototype{gap:16px;max-width:1540px;margin:0 auto;display:grid}.estimating-prototype .demo-flag{margin:0}.estimate-header{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.estimate-header h1{color:var(--navy-deep);letter-spacing:-.025em;margin:5px 0 2px;font-size:clamp(25px,2.4vw,34px);line-height:1.12}.estimate-header p{color:var(--muted);margin:0;font-size:13px}.estimate-kicker{color:var(--sky-ink);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;font-size:10px;font-weight:800;display:inline-flex}.estimate-header-actions{flex:none;gap:9px;display:flex}.estimate-header-actions .btn,.estimate-header-actions .btn2{justify-content:center;align-items:center;gap:7px;min-height:38px;display:inline-flex}.estimate-workflow{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:12px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.estimate-workflow button{border:0;border-right:1px solid var(--line);min-height:54px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 14px;display:grid;position:relative}.estimate-workflow button:last-child{border-right:0}.estimate-workflow button:hover{background:var(--panel);color:var(--navy)}.estimate-workflow button i{border:1px solid var(--line);background:var(--panel);width:25px;height:25px;color:var(--muted);border-radius:50%;place-items:center;font-size:11px;font-style:normal;font-weight:800;display:grid}.estimate-workflow button span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.estimate-workflow button>svg{color:#a8b2c2}.estimate-workflow button.active{background:var(--sky-soft);color:var(--navy-deep);box-shadow:inset 0 -3px 0 var(--sky)}.estimate-workflow button.active i{border-color:var(--sky);background:var(--sky);color:#fff}.estimate-workflow button.done{color:var(--good)}.estimate-workflow button.done i{border-color:var(--good);background:var(--good-bg);color:var(--good)}.estimate-metrics{border:1px solid var(--line);border-top:3px solid var(--sky);background:var(--line);box-shadow:var(--shadow);border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.estimate-metric{background:var(--card);min-height:101px;padding:16px 17px}.estimate-metric small,.estimate-metric strong,.estimate-metric span{display:block}.estimate-metric small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.estimate-metric strong{color:var(--navy-deep);font-variant-numeric:tabular-nums;letter-spacing:-.025em;margin:7px 0 3px;font-size:clamp(19px,1.65vw,26px);line-height:1.05}.estimate-metric span{color:var(--muted);font-size:10.5px}.estimate-metric.is-good{background:linear-gradient(145deg, var(--card), #f1faf7)}.estimate-metric.is-good strong{color:var(--good)}.estimate-metric.is-warn{background:linear-gradient(145deg, var(--card), #fff9ee)}.estimate-metric.is-warn strong{color:var(--warn)}.estimate-workspace-grid{grid-template-columns:minmax(310px,.75fr) minmax(0,2fr);align-items:start;gap:16px;display:grid}.estimate-scope-surface{gap:16px;display:grid}.estimate-scope-toolbar{justify-content:space-between;align-items:center;gap:20px;padding:16px 18px;display:flex}.estimate-scope-toolbar small{color:var(--sky-ink);letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:800}.estimate-scope-toolbar h2{color:var(--navy-deep);margin:4px 0;font-size:17px}.estimate-scope-toolbar p{color:var(--muted);margin:0;font-size:11px}.estimate-scope-view-toggle{border:1px solid var(--line);background:var(--panel);border-radius:9px;flex:none;grid-template-columns:1fr 1fr;padding:3px;display:inline-grid;overflow:hidden}.estimate-scope-view-toggle button{min-width:118px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 12px;font-size:11px;font-weight:800}.estimate-scope-view-toggle button.active{background:var(--navy);color:#fff;box-shadow:var(--shadow)}.estimate-scope-surface .estimate-package-list{position:sticky;top:12px}.estimate-scope-main,.estimate-package-stack{gap:18px;min-width:0;display:grid}.estimate-package-card{scroll-margin-top:14px}.estimate-package-card.is-focused{border-color:var(--sky);box-shadow:0 0 0 2px var(--sky-soft), var(--shadow)}.estimate-cost-plan-overview{overflow:hidden}.estimate-cost-plan-overview>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:17px 18px;display:flex}.estimate-cost-plan-overview>header small{color:var(--sky-ink);letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:800}.estimate-cost-plan-overview>header h2{color:var(--navy-deep);margin:4px 0;font-size:17px}.estimate-cost-plan-overview>header p{color:var(--muted);margin:0;font-size:11px}.estimate-cost-plan-overview>header>span{background:var(--sky-soft);color:var(--sky-ink);white-space:nowrap;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800}.estimate-cost-plan-totals{border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid}.estimate-cost-plan-totals>span{background:var(--panel);padding:12px 14px}.estimate-cost-plan-totals small,.estimate-cost-plan-totals b{display:block}.estimate-cost-plan-totals small{color:var(--muted);text-transform:uppercase;font-size:8.5px;font-weight:800}.estimate-cost-plan-totals b{color:var(--navy-deep);font-variant-numeric:tabular-nums;margin-top:4px;font-size:14px}.estimate-cost-plan-totals b.good,.estimate-cost-plan-table .good{color:var(--good)}.estimate-cost-plan-totals b.bad,.estimate-cost-plan-table .bad{color:var(--crit)}.estimate-cost-plan-table{border-collapse:collapse;width:100%;min-width:930px}.estimate-cost-plan-table th{color:var(--muted);letter-spacing:.07em;text-align:left;text-transform:uppercase;background:#eef3f9;padding:9px 10px;font-size:8px;font-weight:800}.estimate-cost-plan-table td{border-top:1px solid var(--line-soft);color:var(--ink);padding:9px 10px;font-size:10.5px}.estimate-cost-plan-table td:first-child{grid-template-columns:auto minmax(150px,1fr);align-items:center;gap:8px;display:grid}.estimate-cost-plan-table td.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.estimate-cost-plan-table .btn2{padding:6px 9px;font-size:10px}.estimate-package-list{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.estimate-panel-title{justify-content:space-between;align-items:flex-start;gap:20px;padding:17px 18px 14px;display:flex}.estimate-panel-title>span:not(.pill){background:var(--sky-soft);min-width:27px;height:27px;color:var(--sky-ink);border-radius:99px;place-items:center;font-size:11px;font-weight:800;display:grid}.estimate-panel-title small{color:var(--sky-ink);letter-spacing:.09em;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:800;display:block}.estimate-panel-title h2{color:var(--navy-deep);margin:0;font-size:17px;line-height:1.25}.estimate-panel-title p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.45}.estimate-package-scroll{border-top:1px solid var(--line);max-height:660px;overflow-y:auto}.estimate-package-scroll button{border:0;border-bottom:1px solid var(--line-soft);background:var(--card);width:100%;color:var(--ink);cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.estimate-package-scroll button:hover{background:var(--panel)}.estimate-package-scroll button.selected{background:var(--sky-soft);box-shadow:inset 3px 0 0 var(--sky)}.estimate-package-scroll button>span:nth-child(2){min-width:0}.estimate-package-scroll b,.estimate-package-scroll small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.estimate-package-scroll b{font-size:11.5px}.estimate-package-scroll small{color:var(--muted);margin-top:2px;font-size:9.5px}.estimate-package-scroll strong{color:var(--navy-deep);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11.5px}.estimate-package-code{background:var(--navy-deep);color:#fff;min-width:38px;height:23px;font-family:var(--fmono);border-radius:5px;place-items:center;font-size:9px;font-weight:700;display:inline-grid}.estimate-detail-panel{overflow:hidden}.estimate-detail-panel .estimate-panel-title{border-bottom:1px solid var(--line)}.estimate-package-summary{background:var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid}.estimate-package-summary span{background:var(--panel);padding:13px 16px}.estimate-package-summary small,.estimate-package-summary b{display:block}.estimate-package-summary small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:700}.estimate-package-summary b{color:var(--navy-deep);font-variant-numeric:tabular-nums;margin-top:4px;font-size:15px}.estimate-package-summary b.good{color:var(--good)}.estimate-table-wrap{overflow-x:auto}.estimate-table{border-collapse:collapse;width:100%;min-width:760px}.estimate-table th{color:var(--muted);letter-spacing:.07em;text-align:left;text-transform:uppercase;background:#eef3f9;padding:10px 12px;font-size:8.5px;font-weight:800}.estimate-table td{border-top:1px solid var(--line-soft);color:var(--ink);padding:12px;font-size:11px}.estimate-table td.num,.estimate-table th:last-child{text-align:right}.estimate-table tfoot td{border-top:2px solid var(--navy);background:var(--panel);color:var(--navy-deep);font-weight:800}.estimate-source-note{border:1px solid var(--sky-line);background:var(--sky-soft);color:var(--muted);border-radius:8px;align-items:flex-start;gap:9px;margin:14px;padding:12px 14px;font-size:10.5px;line-height:1.5;display:flex}.estimate-source-note svg{color:var(--sky-ink);flex:none;margin-top:2px}.estimate-source-note b{color:var(--navy)}.estimate-quote-layout{grid-template-columns:minmax(0,1fr) 275px;align-items:start;gap:16px;display:grid}.estimate-quote-overview{overflow:hidden}.estimate-quote-overview>.estimate-panel-title{border-bottom:1px solid var(--line)}.estimate-quote-packages{display:grid}.estimate-quote-package{border-bottom:1px solid var(--line);padding:16px 18px 19px}.estimate-quote-package:last-child{border-bottom:0}.estimate-quote-package header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:10px;display:flex}.estimate-quote-package header small{color:var(--sky-ink);font-family:var(--fmono);font-size:9px;font-weight:800}.estimate-quote-package h3{color:var(--navy-deep);margin:2px 0 0;font-size:14px}.estimate-quote-package header>strong{color:var(--navy);font-variant-numeric:tabular-nums;font-size:12px}.estimate-quote-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.estimate-quote-card{border:1px solid var(--line);background:var(--card);min-height:250px;color:var(--ink);text-align:left;border-radius:9px;justify-items:start;padding:13px;display:grid;position:relative}.estimate-quote-card:hover{border-color:var(--sky);box-shadow:0 4px 13px #12264a14}.estimate-quote-card.chosen{border:2px solid var(--good);background:#f5fbf8;padding:12px}.estimate-quote-cards b{padding-right:25px;font-size:11px}.estimate-quote-cards strong{color:var(--navy-deep);font-variant-numeric:tabular-nums;margin-top:4px;font-size:17px}.estimate-quote-cards small{color:var(--muted);font-size:9px}.estimate-quote-cards p{color:var(--muted);margin:10px 0;font-size:9.5px;line-height:1.4}.estimate-quote-cards em{color:var(--sky-ink);align-self:end;font-size:9.5px;font-style:normal;font-weight:750}.estimate-quote-card.chosen em{color:var(--good)}.estimate-quote-check{color:var(--good);position:absolute;top:10px;right:10px}.estimate-quote-check svg{width:18px;height:18px}.estimate-agent-panel{border-top:3px solid var(--sky);position:sticky;top:0}.estimate-agent-panel h3{color:var(--navy-deep);margin:11px 0 5px;font-size:16px}.estimate-agent-panel ul{color:var(--muted);margin:11px 0 16px;padding-left:17px;font-size:11px;line-height:1.6}.estimate-agent-panel li+li{margin-top:7px}.estimate-review-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:16px;display:grid}.estimate-tender-form{overflow:hidden;padding:0!important}.estimate-tender-form>.estimate-panel-title{border-bottom:1px solid var(--line)}.estimate-review-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:16px 18px;display:grid}.estimate-review-inputs label>span,.estimate-wording-grid label>span{color:var(--navy-deep);margin-bottom:6px;font-size:10px;font-weight:750;display:block}.estimate-review-inputs label>div{position:relative}.estimate-review-inputs input{padding-right:58px}.estimate-review-inputs i{color:var(--muted);font-size:10px;font-style:normal;position:absolute;top:10px;right:12px}.estimate-review-inputs label>small{color:var(--muted);margin-top:4px;font-size:9px;display:block}.estimate-review-totals{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--navy-deep);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.estimate-review-totals span{border-right:1px solid #ffffff1f;padding:14px 12px}.estimate-review-totals span:last-child{border-right:0}.estimate-review-totals small,.estimate-review-totals b{display:block}.estimate-review-totals small{color:#a9bad3;letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:800}.estimate-review-totals b{color:#fff;font-variant-numeric:tabular-nums;margin-top:5px;font-size:14px}.estimate-wording-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:17px 18px 19px;display:grid}.estimate-wording-grid textarea{resize:vertical;width:100%;font-size:11px;line-height:1.55}.estimate-readiness{border-top:3px solid var(--navy);overflow:hidden}.estimate-readiness-head{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:17px;display:flex}.estimate-readiness-head>svg{background:var(--sky-soft);width:31px;height:31px;color:var(--sky-ink);border-radius:8px;padding:7px}.estimate-readiness-head small{color:var(--muted);text-transform:uppercase;font-size:8.5px;font-weight:750}.estimate-readiness-head h3{color:var(--navy-deep);margin:2px 0 0;font-size:14px}.estimate-check{border-bottom:1px solid var(--line-soft);color:var(--ink);align-items:center;gap:8px;padding:10px 16px;font-size:10.5px;display:flex}.estimate-check svg{width:15px;height:15px;color:var(--good);flex:none}.estimate-check.pending{background:var(--warn-bg);color:var(--warn)}.estimate-check.pending svg{color:var(--warn)}.estimate-readiness>.btn,.estimate-readiness>.btn2{justify-content:center;gap:7px;width:calc(100% - 32px);margin:14px 16px 0;display:flex}.estimate-readiness>.btn2{margin-top:8px;margin-bottom:16px}.estimate-handover-grid{grid-template-columns:minmax(0,1fr) 315px;align-items:start;gap:16px;display:grid}.estimate-handover-grid>.card:first-child{overflow:hidden;padding:0!important}.estimate-handover-grid>.card:first-child>.estimate-panel-title{border-bottom:1px solid var(--line)}.estimate-handover-flow{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:12px;padding:18px;display:grid}.estimate-handover-flow>svg{color:#9aa7ba;width:18px}.estimate-handover-flow article{border:1px solid var(--line);background:var(--panel);border-radius:10px;min-height:148px;padding:15px}.estimate-handover-flow article>span{background:var(--card);width:32px;height:32px;color:var(--navy);border-radius:8px;place-items:center;margin-bottom:13px;display:grid}.estimate-handover-flow article>span svg{width:16px}.estimate-handover-flow article small{color:var(--muted);text-transform:uppercase;font-size:8.5px;font-weight:750}.estimate-handover-flow article h3{color:var(--navy-deep);margin:4px 0;font-size:12px}.estimate-handover-flow article p{color:var(--muted);margin:0;font-size:9.5px;line-height:1.45}.estimate-handover-flow article.complete{border-color:var(--good-line);background:var(--good-bg)}.estimate-handover-flow article.complete>span{color:var(--good)}.estimate-handover-flow article.next{border-style:dashed}.estimate-handover-table{border-top:1px solid var(--line)}.estimate-handover-row{grid-template-columns:minmax(260px,1.55fr) repeat(3,minmax(120px,.7fr));display:grid}.estimate-handover-row>span{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:9px 12px;font-size:9.5px}.estimate-handover-row>span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.estimate-handover-row.head{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#eef3f9;font-size:8px;font-weight:800}.estimate-handover-row.head>span{font-size:8px}.estimate-lock-panel{border-top:3px solid var(--good);text-align:left;position:sticky;top:0}.estimate-lock-panel>svg{background:var(--good-bg);width:38px;height:38px;color:var(--good);border-radius:10px;padding:9px}.estimate-lock-panel>small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:16px;font-size:9px;font-weight:800;display:block}.estimate-lock-panel h3{color:var(--navy-deep);margin:4px 0 7px;font-size:18px;line-height:1.25}.estimate-lock-panel p{color:var(--muted);margin:0 0 17px;font-size:11px;line-height:1.55}.estimate-lock-panel .btn{justify-content:center;gap:7px;width:100%;display:flex}.estimate-lock-note{background:var(--panel);color:var(--muted);border-radius:7px;margin-top:10px;padding:9px 11px;font-size:9px;line-height:1.45}@media (width<=1180px){.estimate-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.estimate-metric:nth-child(n+4){border-top:1px solid var(--line)}.estimate-review-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.estimate-review-totals span:nth-child(n+4){border-top:1px solid #ffffff1f}.estimate-handover-flow{grid-template-columns:1fr}.estimate-handover-flow>svg{justify-self:center;transform:rotate(90deg)}}@media (width<=920px){.estimate-header{flex-direction:column;align-items:stretch}.estimate-workspace-grid,.estimate-quote-layout,.estimate-review-grid,.estimate-handover-grid{grid-template-columns:1fr}.estimate-package-scroll{max-height:345px}.estimate-scope-surface .estimate-package-list{position:static}.estimate-cost-plan-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.estimate-agent-panel,.estimate-lock-panel{position:static}.estimate-handover-flow{grid-template-columns:1fr auto 1fr auto 1fr}.estimate-handover-flow>svg{transform:none}}@media (width<=680px){.estimate-header-actions{grid-template-columns:1fr 1fr;display:grid}.estimate-workflow{grid-template-columns:1fr}.estimate-workflow button{border-right:0;border-bottom:1px solid var(--line)}.estimate-workflow button:last-child{border-bottom:0}.estimate-workflow button.active{box-shadow:inset 3px 0 0 var(--sky)}.estimate-metrics{grid-template-columns:1fr 1fr}.estimate-metric{min-height:90px}.estimate-package-summary{grid-template-columns:1fr 1fr}.estimate-scope-toolbar{flex-direction:column;align-items:stretch}.estimate-scope-view-toggle{width:100%}.estimate-scope-view-toggle button{min-width:0}.estimate-cost-plan-totals{grid-template-columns:1fr 1fr}.estimate-quote-cards,.estimate-review-inputs,.estimate-wording-grid{grid-template-columns:1fr}.estimate-quote-package header{flex-direction:column;align-items:flex-start;gap:5px}.estimate-review-totals{grid-template-columns:1fr 1fr}.estimate-handover-flow{grid-template-columns:1fr}.estimate-handover-flow>svg{justify-self:center;transform:rotate(90deg)}.estimate-handover-table{overflow-x:auto}.estimate-handover-row{min-width:760px}}.estimate-delivery-row{border-bottom:1px solid var(--line);background:#f8fafc;grid-template-columns:minmax(190px,.65fr) minmax(260px,1.4fr) auto;align-items:end;gap:14px;padding:14px 16px;display:grid}.estimate-delivery-row label>span,.estimate-delivery-row small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:800;display:block}.estimate-delivery-row .sel{width:100%}.estimate-delivery-row>div b{color:var(--navy-deep);font-size:11px;line-height:1.4;display:block}.estimate-delivery-row .btn2{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.estimate-source-note.is-good{border-color:var(--good-line);background:var(--good-bg)}.estimate-source-note.is-good svg,.estimate-source-note.is-good b{color:var(--good)}.estimate-source-note.is-warning{border-color:var(--warn-line);background:var(--warn-bg)}.estimate-source-note.is-warning svg,.estimate-source-note.is-warning b{color:var(--warn)}.estimate-quote-card{min-height:264px}.estimate-quote-scope{width:100%;color:var(--muted);margin-top:7px;font-size:9px;line-height:1.35;display:block}.estimate-quote-scope i{color:var(--navy);letter-spacing:.05em;text-transform:uppercase;font-size:8px;font-style:normal;font-weight:800;display:block}.estimate-pricing-driver{border-bottom:1px solid var(--line);background:var(--sky-soft);grid-template-columns:minmax(170px,.8fr) minmax(290px,1.5fr) minmax(210px,.8fr);align-items:end;gap:16px;padding:17px 18px;display:grid}.estimate-pricing-driver>div:first-child small,.estimate-section-heading small{color:var(--sky-ink);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:800;display:block}.estimate-pricing-driver h3,.estimate-section-heading h3{color:var(--navy-deep);margin:0;font-size:14px}.estimate-section-heading p{max-width:560px;color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.45}.estimate-driver-tabs{border:1px solid var(--sky-line);background:var(--card);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.estimate-driver-tabs button{border:0;border-right:1px solid var(--line);min-height:36px;color:var(--muted);cursor:pointer;background:0 0;padding:6px 8px;font-size:9.5px;font-weight:750}.estimate-driver-tabs button:last-child{border-right:0}.estimate-driver-tabs button:hover{color:var(--navy);background:var(--panel)}.estimate-driver-tabs button.active{color:#fff;background:var(--navy)}.estimate-pricing-driver>label>span{color:var(--navy);margin-bottom:5px;font-size:9px;font-weight:750;display:block}.estimate-pricing-driver>label>div{align-items:center;display:flex;position:relative}.estimate-pricing-driver>label input{text-align:right;padding-left:26px;padding-right:28px;font-weight:800}.estimate-pricing-driver>label i{z-index:1;color:var(--muted);font-size:10px;font-style:normal;position:absolute}.estimate-pricing-driver>label i:first-child{left:11px}.estimate-pricing-driver>label i:last-child{right:11px}.estimate-commercial-inputs{border-bottom:0}.estimate-review-totals{grid-template-columns:repeat(4,minmax(0,1fr))}.estimate-review-totals span:nth-child(n+5){border-top:1px solid #ffffff1f}.estimate-project-fields{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px;display:grid}.estimate-project-fields .estimate-section-heading{grid-column:1/-1}.estimate-project-fields label>span{color:var(--navy-deep);margin-bottom:5px;font-size:9.5px;font-weight:750;display:block}.estimate-project-fields input{width:100%}.estimate-wording-grid{border-bottom:1px solid var(--line)}.estimate-ai-actions{border-bottom:1px solid var(--line);background:#f8fafc;align-items:center;gap:8px;padding:12px 18px;display:flex}.estimate-ai-actions>span{color:var(--muted);align-items:center;gap:7px;margin-right:auto;font-size:10px;display:inline-flex}.estimate-ai-actions>span svg{color:var(--sky-ink)}.estimate-ai-actions .btn2{align-items:center;gap:6px;display:inline-flex}.estimate-documents{padding:18px}.estimate-section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.estimate-section-heading .btn2{align-items:center;gap:6px;display:inline-flex}.estimate-document-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.estimate-document-list button{border:1px solid var(--line);background:var(--card);min-height:58px;color:var(--ink);cursor:pointer;text-align:left;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.estimate-document-list button:hover{border-color:var(--sky)}.estimate-document-list button.client{border-color:var(--good-line);background:var(--good-bg)}.estimate-document-list svg{width:18px;color:var(--sky-ink)}.estimate-document-list b,.estimate-document-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.estimate-document-list b{font-size:10.5px}.estimate-document-list small{color:var(--muted);margin-top:2px;font-size:8.5px}.estimate-document-list em{background:var(--panel);color:var(--muted);white-space:nowrap;border-radius:99px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:800}.estimate-document-list .client em{color:var(--good);background:#d8f1e6}.estimate-readiness>.btn,.estimate-readiness>.btn2{align-items:center}.dlg.estimate-preview-dialog{max-width:1120px}.dlg.estimate-email-dialog,.dlg.estimate-history-dialog{max-width:920px}.estimate-preview-dialog .dlg-b{background:#e8edf4;padding:10px 30px 24px}.estimate-preview-shell{color:#26364f;background:#fff;outline:none;max-width:790px;margin:0 auto;font-family:Arial,sans-serif;box-shadow:0 8px 30px #0f234121}.estimate-preview-cover{color:#fff;background:#173865;grid-template-columns:70px 1fr auto;align-items:center;gap:20px;min-height:160px;padding:28px 36px;display:grid}.estimate-preview-cover img{background:#fff;width:65px;padding:5px}.estimate-preview-cover span{color:#8ed3eb;letter-spacing:.14em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.estimate-preview-cover h2{color:#fff;margin:7px 0 2px;font-size:28px}.estimate-preview-cover p{color:#dbe7f7;margin:0;font-size:14px}.estimate-preview-cover em{color:#fff;text-transform:uppercase;border:1px solid #ffffff42;border-radius:99px;align-self:start;padding:6px 10px;font-size:9px;font-style:normal;font-weight:800}.estimate-preview-shell>section{border-bottom:1px solid #e7edf5;padding:21px 36px}.estimate-preview-shell section h3{color:#173865;margin:0 0 9px;font-size:14px}.estimate-preview-shell section h4{color:#173865;margin:16px 0 5px;font-size:11px}.estimate-preview-shell section p,.estimate-preview-shell section li{color:#495a72;font-size:11px;line-height:1.65}.estimate-preview-intro{background:#f7f9fc;grid-template-columns:1fr 1fr;gap:35px;display:grid}.estimate-preview-intro small,.estimate-preview-intro strong,.estimate-preview-intro span{display:block}.estimate-preview-intro small{color:#6e7d92;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:8px;font-weight:800}.estimate-preview-intro strong{color:#173865;font-size:12px}.estimate-preview-intro span{color:#6e7d92;margin-top:3px;font-size:9px}.estimate-preview-badges{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.estimate-preview-badges span{color:#0e6f98;text-transform:uppercase;background:#edf7fb;border-radius:5px;padding:6px 9px;font-size:8px;font-weight:800}.estimate-preview-process{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.estimate-preview-process span{color:#173865;background:#f4f7fb;border-left:3px solid #1ba6d2;padding:10px;font-size:9px;font-weight:750}.estimate-preview-process b{color:#1ba6d2;margin-bottom:3px;font-size:8px;display:block}.estimate-preview-price{background:#284a78;grid-template-columns:1.5fr 1fr;gap:1px;display:grid;padding:0!important}.estimate-preview-price>div{background:#173865;padding:21px 36px}.estimate-preview-price small,.estimate-preview-price strong,.estimate-preview-price span{display:block}.estimate-preview-price small{color:#9db1ce;letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800}.estimate-preview-price strong{color:#fff;margin:5px 0 2px;font-size:24px}.estimate-preview-price span{color:#c8d7eb;font-size:9px}.estimate-preview-columns{grid-template-columns:1fr 1fr;gap:28px;display:grid}.estimate-preview-columns ul,.estimate-preview-shell>section>ul{margin:0;padding-left:16px}.estimate-preview-sign{grid-template-columns:1fr 1.6fr .7fr;gap:20px;margin-top:20px;display:grid}.estimate-preview-sign span{color:#7b899c;text-transform:uppercase;border-bottom:1px solid #9aa8b8;min-height:35px;font-size:8px}.estimate-preview-attachments{gap:6px;margin-top:13px;display:grid}.estimate-preview-attachments span{color:#334966;background:#f4f7fb;border-radius:5px;align-items:center;gap:7px;padding:7px 9px;font-size:9px;display:flex}.estimate-preview-attachments svg{width:13px}.estimate-preview-photos{grid-template-columns:1fr 1fr;gap:10px;display:grid}.estimate-preview-photos figure{background:#f4f7fb;border-radius:5px;margin:0;overflow:hidden}.estimate-preview-photos img{object-fit:cover;width:100%;height:170px;display:block}.estimate-preview-photos figcaption{color:#61718a;padding:7px 9px;font-size:8px}.estimate-preview-shell footer{color:#6f7f94;background:#f1f5f9;padding:14px 36px;font-size:8px}.estimate-email-preview{gap:14px;display:grid}.estimate-email-fields{grid-template-columns:1fr 1fr;gap:9px;display:grid}.estimate-email-fields label:last-child{grid-column:1/-1}.estimate-email-fields label>span{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:750;display:block}.estimate-email-preview>article{border:1px solid var(--line);color:#394b65;background:#fff;border-radius:10px;padding:24px;font-size:12px;line-height:1.65}.estimate-email-attachments{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:6px;padding:12px 14px;display:grid}.estimate-email-attachments b{color:var(--navy);margin-bottom:3px;font-size:10px}.estimate-email-attachments span{color:var(--muted);align-items:center;gap:7px;font-size:10px;display:flex}.estimate-email-attachments svg{width:13px}.estimate-email-warning{color:var(--warn);align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.estimate-email-warning svg{width:15px}.estimate-email-preview>.btn{justify-self:end;align-items:center;gap:7px;display:inline-flex}.estimate-revision-history{gap:9px;display:grid}.estimate-revision-history article{border:1px solid var(--line);border-radius:8px;grid-template-columns:90px minmax(150px,.7fr) minmax(220px,1.3fr) auto;align-items:center;gap:12px;padding:13px 14px;display:grid}.estimate-revision-history article.current{border-color:var(--sky);background:var(--sky-soft)}.estimate-revision-history article>span{color:var(--sky-ink);text-transform:uppercase;font-size:9px;font-weight:800}.estimate-revision-history article>strong{color:var(--navy);font-size:11px}.estimate-revision-history article>p{color:var(--muted);margin:0;font-size:10px;line-height:1.4}.estimate-revision-history article>small{color:var(--muted);white-space:nowrap;font-size:8.5px}.estimate-revision-history article>.btn2{grid-column:4}.estimate-handover-row .sel{width:100%;min-width:130px;font-size:9px}.estimate-handover-row>span:nth-child(2){text-align:left}@media (width<=1180px){.estimate-pricing-driver{grid-template-columns:1fr 1.6fr}.estimate-pricing-driver>label{grid-column:1/-1}.estimate-project-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=920px){.estimate-delivery-row{grid-template-columns:1fr 1fr}.estimate-delivery-row .btn2{grid-column:1/-1;justify-self:start}.estimate-document-list{grid-template-columns:1fr}.estimate-ai-actions{flex-direction:column;align-items:stretch}.estimate-ai-actions>span{margin-right:0}}@media (width<=680px){.estimate-delivery-row,.estimate-pricing-driver,.estimate-project-fields,.estimate-preview-intro,.estimate-preview-price,.estimate-preview-columns,.estimate-preview-photos,.estimate-email-fields{grid-template-columns:1fr}.estimate-pricing-driver>label,.estimate-email-fields label:last-child{grid-column:auto}.estimate-driver-tabs{grid-template-columns:1fr 1fr}.estimate-driver-tabs button:nth-child(2){border-right:0}.estimate-driver-tabs button:nth-child(-n+2){border-bottom:1px solid var(--line)}.estimate-review-totals{grid-template-columns:1fr 1fr}.estimate-document-list button{grid-template-columns:auto minmax(0,1fr)}.estimate-document-list em{grid-column:2;justify-self:start}.estimate-preview-dialog .dlg-b{padding:8px}.estimate-preview-cover{grid-template-columns:52px 1fr;padding:22px}.estimate-preview-cover img{width:48px}.estimate-preview-cover em{grid-column:1/-1}.estimate-preview-shell>section,.estimate-preview-price>div{padding:18px 22px}.estimate-preview-process{grid-template-columns:1fr 1fr}.estimate-revision-history article{grid-template-columns:1fr}.estimate-revision-history article>.btn2{grid-column:1;justify-self:start}}.estimate-quote-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:7px;width:100%;margin-top:12px;padding-top:11px;display:grid}.estimate-quote-actions .btn,.estimate-quote-actions .btn2{white-space:nowrap;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:6px 8px;font-size:9px;display:inline-flex}.estimate-quote-actions button:disabled{opacity:.7;cursor:default}.estimate-wording-workspace{border-bottom:1px solid var(--line)}.estimate-proposal-ai{background:#f2f9fd;border-bottom:1px solid #b9d9ec;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 18px;display:grid}.estimate-proposal-ai>svg{width:28px;height:28px;color:var(--sky-ink);background:#fff;border-radius:7px;padding:6px}.estimate-proposal-ai span,.estimate-proposal-ai b,.estimate-proposal-ai small{display:block}.estimate-proposal-ai b{color:var(--navy-deep);font-size:11px}.estimate-proposal-ai small{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.4}.estimate-proposal-ai i{color:#9a671c;margin-top:5px;font-size:8.5px;font-style:normal;font-weight:700;display:block}.estimate-proposal-ai .btn{white-space:nowrap;justify-content:center}.estimate-aroflo-map{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:11px 18px;display:grid}.estimate-aroflo-map>span{border:1px solid var(--line);background:#f8fafc;border-radius:7px;min-width:0;padding:9px 11px}.estimate-aroflo-map b,.estimate-aroflo-map small{display:block}.estimate-aroflo-map b{color:var(--navy-deep);font-size:9.5px}.estimate-aroflo-map small{color:var(--muted);margin-top:2px;font-size:8.5px}.estimate-aroflo-map>svg{width:14px;color:var(--sky-ink)}.estimate-description-field{border-bottom:1px solid var(--line);background:#fbfcfe;padding:18px;display:block}.estimate-description-field>span,.estimate-list-editor header span{color:var(--navy-deep);font-size:10px;font-weight:800;display:block}.estimate-description-field>small{color:var(--muted);margin:3px 0 8px;font-size:9px;display:block}.estimate-description-field textarea{resize:vertical;width:100%;font-size:11px;line-height:1.55}.estimate-list-grid{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.estimate-list-editor{background:var(--card);min-width:0;padding:15px 16px}.estimate-list-editor:first-child{grid-column:1/-1}.estimate-list-editor header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.estimate-list-editor header small{color:var(--muted);margin-top:2px;font-size:8.5px;display:block}.estimate-list-editor header .btn2{align-items:center;gap:5px;min-height:29px;padding:5px 9px;font-size:8.5px;display:inline-flex}.estimate-list-editor>div{gap:6px;display:grid}.estimate-list-editor label{border:1px solid var(--line);background:#fbfcfe;border-radius:7px;grid-template-columns:28px minmax(0,1fr) 30px;align-items:center;display:grid;overflow:hidden}.estimate-list-editor label:focus-within{border-color:var(--sky);box-shadow:0 0 0 2px var(--sky-soft)}.estimate-list-editor label i{color:var(--muted);font-family:var(--fmono);text-align:center;font-size:8px;font-style:normal}.estimate-list-editor label input{border:0;border-right:1px solid var(--line);border-left:1px solid var(--line);height:34px;box-shadow:none;background:#fff;border-radius:0;padding:7px 8px;font-size:9.5px}.estimate-list-editor label>button{color:#9aa7b8;cursor:pointer;background:0 0;border:0;place-items:center;height:34px;display:grid}.estimate-list-editor label>button:hover{background:var(--crit-bg);color:var(--crit)}.estimate-list-editor label>button svg{width:13px}.estimate-proposal-editor{border-bottom:1px solid var(--line);background:#fff;padding:18px}.estimate-proposal-editor>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.estimate-proposal-editor>header span,.estimate-proposal-editor>header small{display:block}.estimate-proposal-editor>header span{color:var(--navy-deep);font-size:11px;font-weight:800}.estimate-proposal-editor>header small{color:var(--muted);margin-top:3px;font-size:9px}.estimate-proposal-groups{gap:10px;display:grid}.estimate-proposal-groups>article{border:1px solid var(--line);border-left:3px solid var(--sky);background:#fbfcfe;border-radius:8px;overflow:hidden}.estimate-proposal-editor.is-excluded .estimate-proposal-groups>article{border-left-color:#c79339}.estimate-proposal-group-head{border-bottom:1px solid var(--line);background:#f4f7fb;grid-template-columns:28px minmax(0,1fr) 32px;align-items:center;display:grid}.estimate-proposal-group-head>i{color:var(--sky-ink);font-family:var(--fmono);text-align:center;font-size:9px;font-style:normal;font-weight:850}.estimate-proposal-editor.is-excluded .estimate-proposal-group-head>i{color:#8a5b13}.estimate-proposal-group-head input{border:0;border-right:1px solid var(--line);border-left:1px solid var(--line);height:36px;color:var(--navy-deep);background:0 0;border-radius:0;padding:7px 8px;font-size:10px;font-weight:800}.estimate-proposal-group-head>button,.estimate-proposal-items label>button{color:#9aa7b8;cursor:pointer;background:0 0;border:0;place-items:center;height:100%;display:grid}.estimate-proposal-group-head>button:disabled{opacity:.3;cursor:default}.estimate-proposal-group-head>button:not(:disabled):hover,.estimate-proposal-items label>button:hover{background:var(--crit-bg);color:var(--crit)}.estimate-proposal-group-head svg,.estimate-proposal-items svg{width:13px}.estimate-proposal-items{background:var(--line-soft);gap:1px;display:grid}.estimate-proposal-items label{background:#fff;grid-template-columns:34px minmax(0,1fr) 32px;align-items:stretch;min-height:50px;display:grid}.estimate-proposal-items label>b{color:var(--good);place-items:start center;padding-top:10px;font-size:13px;display:grid}.estimate-proposal-editor.is-excluded .estimate-proposal-items label>b{color:#8a5b13}.estimate-proposal-items textarea{border:0;border-right:1px solid var(--line);border-left:1px solid var(--line);resize:vertical;background:#fff;border-radius:0;min-height:50px;padding:9px 8px;font-size:9.5px;line-height:1.45}.estimate-add-line{color:var(--sky-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin:7px 10px;padding:4px 6px;font-size:8.5px;font-weight:750;display:inline-flex}.estimate-add-line:hover{text-decoration:underline}.dlg.estimate-import-dialog{max-width:1180px}.estimate-import-review{gap:14px;display:grid}.estimate-import-drop{border:1px dashed var(--sky);background:var(--sky-soft);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px;display:grid}.estimate-import-drop>svg{width:34px;height:34px;color:var(--sky-ink);background:#fff;border-radius:8px;padding:8px}.estimate-import-drop h3{color:var(--navy-deep);margin:0 0 3px;font-size:14px}.estimate-import-drop p{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.estimate-import-drop label{cursor:pointer;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.estimate-import-drop input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.estimate-import-summary{border:1px solid var(--line);background:var(--line);border-radius:9px;grid-template-columns:1.6fr repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.estimate-import-summary span{background:#fff;min-width:0;padding:11px 12px}.estimate-import-summary small,.estimate-import-summary b{display:block}.estimate-import-summary small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:8px;font-weight:800}.estimate-import-summary b{color:var(--navy-deep);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;overflow:hidden}.estimate-import-table-wrap{border:1px solid var(--line);border-radius:9px;max-height:390px;overflow:auto}.estimate-import-table{border-collapse:collapse;width:100%;min-width:940px}.estimate-import-table th{z-index:1;border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;background:#edf3f9;padding:9px;font-size:8px;position:sticky;top:0}.estimate-import-table td{border-bottom:1px solid var(--line-soft);color:var(--ink);padding:9px;font-size:9.5px}.estimate-import-table tr:last-child td{border-bottom:0}.estimate-import-table tr.empty td{color:#9aa7b8;background:#fafbfc}.estimate-import-table td.num{text-align:right;font-variant-numeric:tabular-nums}.estimate-import-table td small{color:var(--muted);font-size:8.5px}.estimate-import-error,.estimate-import-warnings{border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--warn);border-radius:8px;align-items:flex-start;gap:9px;padding:11px 13px;font-size:10px;line-height:1.45;display:flex}.estimate-import-error{border-color:var(--crit-line);background:var(--crit-bg);color:var(--crit)}.estimate-import-error svg,.estimate-import-warnings svg{flex:none;width:16px}.estimate-import-error b,.estimate-import-warnings b,.estimate-import-warnings span{display:block}.estimate-import-warnings span{margin-top:2px}.estimate-import-empty{border:1px solid var(--line);min-height:90px;color:var(--muted);border-radius:9px;align-items:center;gap:11px;padding:20px;font-size:10px;display:flex}.estimate-import-empty svg{width:25px;color:var(--sky-ink)}.estimate-import-empty b{color:var(--navy);margin-bottom:3px;font-size:11px;display:block}.estimate-import-apply{border:1px solid var(--good-line);background:var(--good-bg);border-radius:8px;justify-content:space-between;align-items:center;gap:15px;padding:12px 14px;display:flex}.estimate-import-apply>span{color:var(--good);align-items:center;gap:7px;font-size:9.5px;display:flex}.estimate-import-apply svg{flex:none}.dlg.estimate-quote-detail-dialog{max-width:840px}.estimate-quote-detail{gap:12px;display:grid}.estimate-quote-detail>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:13px;display:flex}.estimate-quote-detail header small{color:var(--sky-ink);font-family:var(--fmono);font-size:9px;font-weight:800}.estimate-quote-detail header h3{color:var(--navy-deep);margin:3px 0;font-size:20px}.estimate-quote-detail header p{color:var(--muted);margin:0;font-size:10px}.estimate-quote-detail header>strong{color:var(--navy-deep);white-space:nowrap;font-size:23px}.estimate-quote-detail-meta{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:.7fr .9fr 1.5fr;gap:1px;display:grid;overflow:hidden}.estimate-quote-detail-meta span{background:#f8fafc;min-width:0;padding:10px 11px}.estimate-quote-detail-meta small,.estimate-quote-detail-meta b{display:block}.estimate-quote-detail-meta small{color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:800}.estimate-quote-detail-meta b{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.estimate-quote-detail>section{border-left:3px solid var(--sky);background:#f7f9fc;padding:12px 14px}.estimate-quote-detail>section.exclusions{background:#fffaf0;border-left-color:#c79339}.estimate-quote-detail h4{color:var(--navy-deep);margin:0 0 6px;font-size:11px}.estimate-quote-detail section p,.estimate-quote-detail section ul{color:var(--muted);margin:0;font-size:10px;line-height:1.55}.estimate-quote-detail section ul{padding-left:16px}.estimate-quote-document{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.estimate-quote-document>svg{width:20px;color:var(--sky-ink)}.estimate-quote-document b,.estimate-quote-document small{display:block}.estimate-quote-document b{font-size:10px}.estimate-quote-document small{color:var(--muted);margin-top:2px;font-size:8.5px}.estimate-quote-detail-action{justify-content:space-between;align-items:center;gap:15px;padding-top:4px;display:flex}.estimate-quote-detail-action>span{color:var(--muted);font-size:9.5px;line-height:1.45}.estimate-preview-cover{min-height:180px}.estimate-preview-cover h2{max-width:470px;font-size:25px}.estimate-preview-cover em{letter-spacing:.07em;border-radius:3px}.estimate-preview-intro{background:#dfe7f0;grid-template-columns:repeat(3,1fr);gap:1px;padding:0!important}.estimate-preview-intro>div{background:#f7f9fc;min-height:88px;padding:20px 24px}.estimate-preview-letter{padding-top:28px!important;padding-bottom:28px!important}.estimate-preview-heading{align-items:center;gap:10px;margin-bottom:10px;display:flex}.estimate-preview-heading span{color:#173865;border:1px solid #a9bfd8;place-items:center;width:26px;height:26px;font-size:8px;font-weight:800;display:grid}.estimate-preview-heading h3{margin:0!important;font-size:15px!important}.estimate-preview-list{counter-reset:proposal-list;margin:0;list-style:none;padding:0!important}.estimate-preview-list li{counter-increment:proposal-list;border-bottom:1px solid #e7edf5;padding:8px 10px 8px 38px;position:relative}.estimate-preview-list li:last-child{border-bottom:0}.estimate-preview-list li:before{content:counter(proposal-list, decimal-leading-zero);color:#75869c;font-size:8px;font-weight:800;position:absolute;top:9px;left:8px}.estimate-preview-exclusions{background:#fff;border-left:4px solid #c79339}.estimate-preview-section-note{color:#776342!important;margin:-2px 0 13px!important;font-size:9px!important}.estimate-preview-section-note.neutral{color:#66768b!important}.estimate-preview-scope-opening{color:#33445a!important;margin:0 0 18px!important}.estimate-preview-groups{gap:17px;display:grid}.estimate-preview-groups article h4{color:#173865;border-bottom:1px solid #dce5ef;margin:0 0 7px;padding:0 0 6px;font-size:10px;font-weight:800}.estimate-preview-exclusion-group h4{display:none}.estimate-preview-bullets{gap:6px;margin:0;list-style:none;display:grid;padding:0!important}.estimate-preview-bullets li{padding-left:17px;position:relative}.estimate-preview-bullets li:before{color:#45627f;content:"•";font-size:12px;font-weight:900;position:absolute;top:-.05em;left:2px}.estimate-preview-bullets.included li:before{color:#45627f}.estimate-preview-bullets.excluded li:before{color:#8a5b13}.estimate-preview-price>div:last-child{background:#1f416d}.estimate-preview-cover{color:#173865;background:#fff;border-top:8px solid #173865;border-bottom:1px solid #dfe7f0;grid-template-columns:minmax(0,1fr) 130px;min-height:188px;padding:34px 38px 30px}.estimate-preview-cover>div{align-self:end}.estimate-preview-cover img{background:0 0;justify-self:end;width:112px;padding:0}.estimate-preview-cover span{color:#0d8fbd}.estimate-preview-cover h2{color:#173865;max-width:520px;margin:12px 0 5px;font-size:30px;line-height:1.08}.estimate-preview-cover p{color:#53657d;font-size:13px}.estimate-preview-cover small{color:#75849a;text-transform:uppercase;margin-top:16px;font-size:8.5px;font-weight:700;display:block}.estimate-preview-hero{background:#e9eef4;border-bottom:8px solid #173865;height:270px;margin:0;position:relative;overflow:hidden}.estimate-preview-hero img{object-fit:cover;width:100%;height:100%;display:block}.estimate-preview-hero:after{content:"";background:linear-gradient(#0000,#0c1f398c);height:35%;position:absolute;inset:auto 0 0}.estimate-preview-hero figcaption{z-index:1;color:#fff;font-size:8px;font-weight:700;position:absolute;bottom:14px;right:22px}.estimate-preview-price-section{padding-bottom:28px!important}.estimate-preview-price{border-radius:4px;overflow:hidden}.estimate-preview-price>div{padding:18px 22px}.estimate-preview-credentials{background:#f7f9fc;border-top:5px solid #1ba6d2;grid-template-columns:1.2fr 1fr;gap:34px;display:grid}.estimate-preview-credentials small{color:#0e789f;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:8px;font-weight:800;display:block}.estimate-preview-credentials h3{margin-bottom:7px!important}.estimate-preview-credentials p{margin:4px 0;font-size:9px!important}.estimate-preview-credentials a{color:#0a6f9a;text-decoration:none}.estimate-preview-licences{gap:6px;display:grid}.estimate-preview-licences>span{background:#fff;border:1px solid #dde5ee;border-radius:4px;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;min-height:34px;padding:5px 7px;display:grid}.estimate-preview-licences img{object-fit:contain;width:30px;max-height:28px}.estimate-preview-licences b{color:#30445f;font-size:8px}.estimate-preview-licences em{color:#66778d;font-size:8px;font-style:normal;font-weight:700}@media (width<=680px){.estimate-list-grid,.estimate-import-summary,.estimate-quote-detail-meta{grid-template-columns:1fr}.estimate-proposal-ai{grid-template-columns:auto 1fr}.estimate-proposal-ai .btn{grid-column:1/-1}.estimate-aroflo-map{grid-template-columns:1fr}.estimate-aroflo-map>svg{display:none}.estimate-list-editor:first-child{grid-column:auto}.estimate-import-drop{grid-template-columns:auto 1fr}.estimate-import-drop label{grid-column:1/-1;justify-content:center}.estimate-import-apply,.estimate-quote-detail-action{flex-direction:column;align-items:stretch}.estimate-quote-detail>header{flex-direction:column}.estimate-quote-document{grid-template-columns:auto 1fr}.estimate-quote-document .btn2{grid-column:1/-1;justify-content:center}.estimate-preview-intro{grid-template-columns:1fr}.estimate-preview-cover{grid-template-columns:1fr 82px;padding:24px 22px}.estimate-preview-cover img{width:74px}.estimate-preview-cover h2{font-size:24px}.estimate-preview-hero{height:190px}.estimate-preview-credentials{grid-template-columns:1fr}}@media print{@page{size:A4;margin:12mm}body:has(.estimate-preview-shell){background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) #root{background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) #root>*{background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) .maincol{background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) .canvas{background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) .canvas-inner{background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) .estimating-prototype{background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}body:has(.estimate-preview-shell) .sidebar{display:none!important}body:has(.estimate-preview-shell) .topbar{display:none!important}body:has(.estimate-preview-shell) .scrim{display:none!important}body:has(.estimate-preview-shell) .bottom-tabs{display:none!important}body:has(.estimate-preview-shell) .estimating-prototype>:not(.dlg-scrim){display:none!important}body *{visibility:hidden!important}.dlg-scrim{background:#fff!important;padding:0!important;display:block!important;position:static!important;inset:auto!important}.dlg.estimate-preview-dialog{max-width:none!important;max-height:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;animation:none!important;overflow:visible!important}.estimate-preview-dialog>.dlg-h,.estimate-preview-dialog>.dlg-f{display:none!important}.estimate-preview-dialog .dlg-b{background:#fff!important;padding:0!important}.estimate-preview-shell,.estimate-preview-shell *{visibility:visible!important}.estimate-preview-shell{width:100%;max-width:none;box-shadow:none;position:static!important}.estimate-preview-cover,.estimate-preview-price,.estimate-preview-intro,.estimate-preview-heading,.estimate-preview-groups article,.estimate-preview-sign,.estimate-preview-credentials,.estimate-preview-hero,.estimate-preview-photos figure{break-inside:avoid;page-break-inside:avoid}.estimate-preview-credentials{gap:22px;padding:8px 36px!important}.estimate-preview-credentials small{margin-bottom:5px}.estimate-preview-credentials h3{margin-bottom:3px!important}.estimate-preview-credentials p{margin:2px 0}.estimate-preview-licences{gap:3px}.estimate-preview-licences>span{min-height:27px;padding:2px 6px}.estimate-preview-shell footer{padding-top:4px;padding-bottom:4px;font-size:7px}}.pc-estimate-health{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:8px;font-size:11px;display:inline-flex}.pc-estimate-health span{gap:4px;display:inline-flex}.pc-estimate-health b{color:var(--ink)}.pc-estimate-health em{color:var(--good);font-style:normal;font-weight:700}.pc-estimate-health em:first-letter{text-transform:uppercase}.estimate-back-link{color:var(--blue);margin-bottom:8px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.estimate-back-icon{transform:rotate(180deg)}.estimate-register .estimate-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.estimate-register-table-wrap{overflow:hidden}.estimate-register-table-wrap>header{padding:20px 22px 10px}.estimate-register-table-wrap>header small{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.estimate-register-table-wrap>header h2{color:var(--ink);margin:4px 0}.estimate-register-table-wrap>header p{color:var(--muted);margin:0}.estimate-register-table{border-collapse:collapse;width:100%}.estimate-register-table th{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2);color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:11px 12px;font-size:10px}.estimate-register-table td{border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle;padding:13px 12px}.estimate-register-table td>b,.estimate-register-table td>small{display:block}.estimate-register-table td>small{max-width:230px;color:var(--muted);margin-top:3px;font-size:10px}.estimate-register-table td>small.good{color:var(--good)}.estimate-register-table td>small.bad{color:var(--crit)}.estimate-register-table tbody tr:hover{background:#0e8fbd09}.estimate-register-table .btn2{white-space:nowrap}.estimate-rfq-workspace{gap:14px;display:grid}.estimate-rfq-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.estimate-rfq-grid{grid-template-columns:minmax(260px,.72fr) minmax(520px,1.55fr) minmax(220px,.55fr);align-items:start;gap:14px;display:grid}.estimate-rfq-package-list,.estimate-rfq-detail{overflow:hidden}.estimate-rfq-package-list>.estimate-panel-title,.estimate-rfq-detail>header{padding:18px}.estimate-rfq-package-list .estimate-panel-title{align-items:flex-start}.estimate-rfq-rows{border-top:1px solid var(--line);max-height:760px;overflow:auto}.estimate-rfq-rows>button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;grid-template-columns:38px minmax(0,1fr) auto 14px;align-items:center;gap:9px;padding:11px 12px;display:grid}.estimate-rfq-rows>button:hover,.estimate-rfq-rows>button.selected{background:var(--blue-soft)}.estimate-rfq-rows>button.selected{box-shadow:inset 3px 0 var(--blue)}.estimate-rfq-rows>button>span:nth-child(2) b,.estimate-rfq-rows>button>span:nth-child(2) small{display:block}.estimate-rfq-rows>button>span:nth-child(2) small{color:var(--muted);margin-top:2px;font-size:10px}.estimate-rfq-count{text-align:right}.estimate-rfq-count b,.estimate-rfq-count small{display:block}.estimate-rfq-count small{color:var(--muted);font-size:9px}.estimate-rfq-detail>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.estimate-rfq-detail>header small{color:var(--blue);letter-spacing:.07em;text-transform:uppercase;font-weight:800}.estimate-rfq-detail>header h2{color:var(--ink);margin:4px 0}.estimate-rfq-detail>header p{color:var(--muted);margin:0}.estimate-rfq-meta{border-bottom:1px solid var(--line);background:var(--bg2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.estimate-rfq-meta span{border-right:1px solid var(--line);padding:13px 16px}.estimate-rfq-meta span:last-child{border-right:0}.estimate-rfq-meta small,.estimate-rfq-meta b{display:block}.estimate-rfq-meta small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:9px;font-weight:800}.estimate-rfq-meta b{color:var(--ink);margin-top:4px}.estimate-rfq-scope{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.estimate-rfq-scope small{color:var(--blue);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.estimate-rfq-scope h3{max-width:720px;color:var(--ink);margin:5px 0;font-size:14px;line-height:1.45}.estimate-rfq-scope p{color:var(--muted);margin:0;font-size:11px}.estimate-rfq-documents{border-bottom:1px solid var(--line);padding:16px 18px}.estimate-rfq-documents>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.estimate-rfq-documents>div:last-child>span{border:1px solid var(--line);background:var(--bg2);border-radius:7px;grid-template-columns:20px minmax(0,1fr);column-gap:6px;padding:9px;display:grid}.estimate-rfq-documents svg{width:16px;color:var(--blue);grid-row:1/3}.estimate-rfq-documents b,.estimate-rfq-documents small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.estimate-rfq-documents b{color:var(--ink);font-size:10px}.estimate-rfq-documents small{color:var(--muted);font-size:9px}.estimate-rfq-detail>.estimate-quote-cards{padding:18px}.estimate-rfq-empty{color:var(--muted);text-align:center;grid-column:1/-1;padding:36px 24px}.estimate-rfq-empty>svg{width:26px;color:var(--blue)}.estimate-rfq-empty h3{color:var(--ink);margin:8px 0 4px}.estimate-rfq-empty p{max-width:430px;margin:0 auto 14px}.estimate-package-scope{border-top:1px solid var(--line);gap:4px;padding:16px 18px;display:grid}.estimate-package-scope>span{color:var(--ink);text-transform:uppercase;font-size:11px;font-weight:800}.estimate-package-scope>small{color:var(--muted)}.estimate-table td .inp,.estimate-table td .sel{width:100%;min-width:82px;padding:7px 8px;font-size:11px}.estimate-table td:first-child .inp{min-width:100px}.estimate-table td:nth-child(2) .inp{min-width:180px}.estimate-line-remove{width:30px;height:30px;color:var(--crit);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.estimate-line-remove svg{width:15px}.estimate-line-remove:disabled{opacity:.3;cursor:not-allowed}.estimate-package-commercial{border:1px solid var(--line);border-radius:9px;margin:18px;overflow:hidden}.estimate-package-commercial>header{border-bottom:1px solid var(--line);background:var(--bg2);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.estimate-package-commercial>header small{color:var(--blue);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.estimate-package-commercial>header h3{color:var(--ink);margin:4px 0 0}.estimate-package-commercial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;display:grid}.estimate-package-commercial-grid label{gap:6px;display:grid}.estimate-package-commercial-grid label>span{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.estimate-input-suffix{grid-template-columns:1fr auto;align-items:center;display:grid}.estimate-input-suffix i{color:var(--muted);pointer-events:none;margin-left:-28px;padding-right:10px;font-style:normal}.estimate-package-commercial-results{border-top:1px solid var(--line);background:var(--bg2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.estimate-package-commercial-results span{border-right:1px solid var(--line);padding:14px 16px}.estimate-package-commercial-results span:last-child{border-right:0}.estimate-package-commercial-results small,.estimate-package-commercial-results b{display:block}.estimate-package-commercial-results small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:800}.estimate-package-commercial-results b{color:var(--ink);margin-top:4px;font-size:17px}.estimate-package-commercial-results .good{color:var(--good)}.estimate-package-commercial-results .bad{color:var(--crit)}@media (width<=1180px){.estimate-rfq-grid{grid-template-columns:minmax(240px,.7fr) minmax(0,1.5fr)}.estimate-rfq-grid>.estimate-agent-panel{grid-column:1/-1}.estimate-register-table{min-width:1050px}}@media (width<=820px){.estimate-register .estimate-metrics,.estimate-rfq-summary,.estimate-package-commercial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-rfq-grid{grid-template-columns:1fr}.estimate-rfq-rows{max-height:360px}.estimate-rfq-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-rfq-documents>div:last-child{grid-template-columns:1fr}}@media (width<=560px){.estimate-register .estimate-metrics{grid-template-columns:1fr}.estimate-metrics>.estimate-metric:last-child:nth-child(odd){grid-column:1/-1}.estimate-rfq-summary,.estimate-package-commercial-grid,.estimate-package-commercial-results{grid-template-columns:1fr}.estimate-rfq-detail>header,.estimate-rfq-scope,.estimate-package-commercial>header{flex-direction:column}.estimate-rfq-meta{grid-template-columns:1fr 1fr}.estimate-package-commercial-results span{border-right:0;border-bottom:1px solid var(--line)}}
