.reporting-inclusion{margin-top:24px}.reporting-inclusion>label{max-width:440px;display:block}.inclusion-user-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:12px 0;display:flex}.inclusion-user-row>span:first-child{gap:4px;display:grid}.inclusion-user-row>span:last-child{align-items:center;gap:10px;display:flex}.inclusion-user-row small{color:var(--muted)}.inclusion-user-row input[role=switch]{appearance:none;cursor:pointer;border:1px solid var(--border-interactive);background:radial-gradient(circle at 11px 11px, var(--ink) 7px, transparent 8px) var(--field-surface);border-radius:20px;flex:0 0 38px;width:38px;height:24px}.inclusion-user-row input[role=switch]:checked{background:radial-gradient(circle at 25px 11px, #fff 7px, transparent 8px) var(--forest-500)}.inclusion-user-row input[role=switch]:focus-visible{outline:2px solid var(--status-steady);outline-offset:3px}.inclusion-user-row input[role=switch]:disabled{opacity:.5;cursor:wait}.charge-person-filter{border-bottom:1px solid var(--line);background:var(--surface-subtle);flex-wrap:wrap;align-items:start;gap:12px;padding:16px 32px;display:flex}.charge-person-filter label{color:var(--muted);gap:6px;font-size:13px;display:grid}.charge-person-filter input,.charge-person-filter select{background:var(--field-surface);min-width:200px;max-width:100%;color:var(--ink);border:1px solid var(--border-interactive);font:inherit;border-radius:10px;padding:9px 12px}.charge-person-filter>span{color:var(--muted);font-size:13px}.charge-person-options{width:320px;max-width:100%;color:var(--ink);font-size:13px}.charge-person-options>label>input{width:100%}.charge-person-options>div{border:1px solid var(--line);background:var(--field-surface);border-radius:10px;max-height:240px;margin-top:8px;padding:8px;overflow-y:auto}.charge-person-options>div>label{color:var(--ink);align-items:center;gap:8px;padding:6px;display:flex}.charge-person-options input[type=checkbox]{width:16px;min-width:0;height:16px;accent-color:var(--ink)}@media (max-width:600px){.charge-person-filter{padding:16px}.charge-person-filter label{width:100%}}:root{--forest-950:#102e28;--forest-900:#173d35;--forest-800:#215348;--forest-700:#2a6658;--forest-100:#e8f0ed;--blue-700:#27678b;--blue-100:#e5f1f7;--amber-700:#a85b18;--amber-500:#dd8a33;--amber-100:#fff2df;--green-700:#357254;--green-100:#e6f3eb;--ink:#1f2926;--muted:#68736f;--line:#dbe2df;--canvas:#f5f7f6;--white:#fff;--heading:#102e28;--surface-raised:#fff;--surface-subtle:#eef5f2;--section-surface:#eef5f2;--row-surface:#fff;--field-surface:#fff;--border-subtle:#e2e9e6;--border-interactive:#b8cfca;--track-surface:#e9eeec;--group-outline:#1f594b29;--group-rail:#1f594b2e;--status-attention:#a85b18;--status-steady:#27678b;--status-success:#357254;--warning-border:#f4d8b1;--warning-muted:#98704e;--surface-danger:#fff2f0;--surface-warning:#fff3e2;--surface-translucent:#ffffffc7;--accent-text:#173d35;--positive-text:#215348;--warning-text:#6f431e;--shadow:0 18px 48px #15302a14}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#edf4f1;--muted:#b9cbc5;--line:#36564d;--canvas:#0e1b18;--white:#152722;--heading:#edf4f1;--surface-raised:#152722;--surface-subtle:#0e1b18;--section-surface:#11231f;--row-surface:#1a302a;--field-surface:#11231f;--border-subtle:#29483f;--border-interactive:#4b6a61;--track-surface:#29443c;--group-outline:#76c0aa40;--group-rail:#76c0aa47;--status-attention:#f3b56c;--status-steady:#76c0e6;--status-success:#83d2a4;--warning-border:#9a6739;--warning-muted:#d7aa77;--surface-danger:#3b2421;--surface-warning:#422f1d;--surface-translucent:#152722f0;--accent-text:#b9ded2;--positive-text:#9bd7b5;--warning-text:#f3c78e;--forest-100:#1c3a32;--blue-100:#163445;--amber-100:#422f1d;--green-100:#193729;--shadow:0 18px 48px #00000057}:root[data-theme=dark] body{background:radial-gradient(circle at 80% 0%, #27678b2e, transparent 28rem), var(--canvas)}:root[data-theme=dark] .welcome-row h1,:root[data-theme=dark] .settings-header h1{color:#edf4f1}:root[data-theme=dark] .welcome-row p,:root[data-theme=dark] .settings-header p,:root[data-theme=dark] .reporting-context span,:root[data-theme=dark] footer{color:#b9cbc5}:root[data-theme=dark] .welcome-row .eyebrow,:root[data-theme=dark] .settings-header .eyebrow{color:#76c0e6}:root[data-theme=dark] .reporting-context strong{color:#c8e5dc}:root[data-theme=dark] .settings-header a{color:#8bcce9}:root[data-theme=dark] .settings-version{color:#afbfba}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{color:var(--ink);background:radial-gradient(circle at 80% 0%, #e5f1f7b8, transparent 28rem), var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #27678b52}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--surface-raised);border:1px solid var(--line);border-top:5px solid var(--amber-500);width:min(100%,520px);box-shadow:var(--shadow);border-radius:20px;padding:clamp(28px,6vw,52px)}.auth-card h1{margin:8px 0 12px}.auth-copy,.auth-status{color:var(--muted);line-height:1.6}.primary-button,.secondary-button,.theme-toggle,.account-signout,.access-panel button{border:1px solid var(--line);cursor:pointer;border-radius:9px;min-height:40px}.primary-button{color:#fff;background:var(--forest-800);justify-content:center;align-items:center;padding:10px 16px;text-decoration:none;display:inline-flex}.build-stamp{color:var(--muted);margin-top:24px;font-size:12px}.auth-build{margin-top:20px}.auth-iteration-pill{border:1px solid var(--line);background:var(--surface-subtle);color:var(--ink);border-radius:999px;align-items:center;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.theme-toggle,.account-signout{color:inherit;background:0 0;padding:7px 10px}.theme-toggle{align-items:center;gap:6px;display:inline-flex}.header-pill{white-space:nowrap;border-radius:999px;min-height:40px}.account-controls{color:#eef7f4;justify-content:flex-end;align-items:center;gap:9px;display:flex}.account-controls a{color:#eef7f4}.account-identity{background:#ffffff0f;border:1px solid #adc3bd52;min-width:120px;padding:6px 13px;display:grid}.account-identity small{color:#b9cfc8;text-transform:capitalize}.settings-account-bar{background:var(--forest-950);border-bottom:3px solid var(--amber-500);padding:12px max(20px,50vw - 590px)}.access-page{min-height:100vh;padding-bottom:56px}.access-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px;width:min(1180px,100% - 32px);margin:28px auto;display:grid}.access-panel{background:var(--surface-raised);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:24px}.access-mapping-list,.access-search-results{gap:10px;margin-top:16px;display:grid}.access-mapping-card,.access-search-results article{border:1px solid var(--line);border-radius:12px;align-items:end;gap:10px;padding:14px;display:flex}.access-mapping-card>div,.access-search-results article>div{margin-right:auto;display:grid}.access-mapping-card small,.access-search-results small{color:var(--muted)}.access-mapping-card label{gap:3px;font-size:12px;display:grid}.access-mapping-card select,.access-search input{min-height:40px;color:var(--ink);background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:7px 9px}.access-panel button{color:#fff;background:var(--forest-800);padding:8px 12px}.access-panel button:disabled{cursor:not-allowed;opacity:.48}.access-search label{margin-bottom:6px;display:block}.access-search>div{gap:8px;display:flex}.access-search input{flex:1;min-width:0}.access-status{min-height:24px;color:var(--muted)}.access-audit{grid-column:1/-1}.access-audit ol{gap:8px;padding:0;list-style:none;display:grid}.access-audit li{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr auto;gap:12px;padding:10px 0;display:grid}@media (max-width:820px){.access-grid{grid-template-columns:1fr;width:min(100% - 24px,620px)}.access-mapping-card,.access-search-results article{flex-direction:column;align-items:stretch}.access-audit{grid-column:auto}.access-audit li{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{min-height:100vh}.firm-surface{transition:filter .16s}.firm-surface.is-focused{filter:blur(6px);-webkit-user-select:none;user-select:none}.app-header{color:#fff;background:var(--forest-950);border-bottom:3px solid var(--amber-500);justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:0 max(24px,50vw - 590px);display:flex}.brand-lockup,.header-meta,.team-identity,.detail-heading,.memberships>div{align-items:center;display:flex}.brand-lockup{gap:11px}.brand-mark{color:#102e28;background:var(--amber-500);border-radius:12px 4px;place-items:center;width:38px;height:38px;font-family:Georgia,serif;font-size:24px;font-weight:800;display:grid}.brand-lockup>span:last-child{letter-spacing:.13em;line-height:1;display:grid}.brand-lockup strong{font-size:17px}.brand-lockup small{color:#b9cfc8;letter-spacing:.2em;margin-top:4px;font-size:9px}.header-meta{flex-wrap:nowrap;gap:12px}.data-badge,.version-stamp,.scope-pill{letter-spacing:.02em;border-radius:999px;font-size:12px;font-weight:750}.data-badge{color:#f7e6c8;background:#dd8a3326;border:1px solid #f0b5666b;align-items:center;gap:7px;padding:7px 11px;display:inline-flex}.data-badge.live{color:#dff3e7;background:#4e996f2b;border-color:#82c8a06b}.status-dot{background:#f0b566;border-radius:999px;width:7px;height:7px;box-shadow:0 0 0 3px #f0b5661f}.data-badge.live .status-dot{background:#81c99f;box-shadow:0 0 0 3px #81c99f1f}.version-stamp{color:#adc3bd;white-space:nowrap;background:#ffffff0f;border:1px solid #adc3bd52;justify-content:center;align-items:center;padding:7px 11px;display:inline-flex}main,footer{width:min(1180px,100% - 48px);margin-inline:auto}main{padding:46px 0 56px}.welcome-row,.period-panel,.metric-heading,.section-heading,.detail-heading.split,footer{justify-content:space-between;align-items:center;gap:24px;display:flex}.welcome-row{margin-bottom:18px}.welcome-row h1{margin-bottom:0}.welcome-row+.dashboard-view-tabs,h1,h2,h3,p{margin-top:0}h1{color:var(--heading);letter-spacing:-.035em;margin-bottom:9px;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,5vw,48px);line-height:1.05}h2,h3{color:var(--heading)}.welcome-row p,.metric-heading p,.detail-heading p,.state-card p{color:var(--muted);margin-bottom:0;line-height:1.6}.eyebrow{color:var(--blue-700);letter-spacing:.13em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:800;display:block}.reporting-context{border:1px solid var(--line);background:var(--surface-subtle);text-align:right;border-radius:14px;gap:4px;padding:12px 18px;display:grid}.reporting-context span{color:var(--muted);font-size:12px}.reporting-context strong{color:var(--positive-text);font-size:14px}.period-panel{background:var(--surface-translucent);border:1px solid var(--line);border-radius:15px;margin-bottom:18px;padding:9px;box-shadow:0 7px 22px #15302a0a}.period-tabs{flex-wrap:wrap;flex:auto;align-items:center;gap:4px;display:flex}.period-tabs button,.text-button,.apply-button,.state-card button{cursor:pointer;border:0}.period-tabs button{min-height:38px;color:var(--muted);background:0 0;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.period-tabs button:hover{background:var(--forest-100)}.week-selector select{min-width:245px;color:var(--accent-text);background:var(--white);border:1px solid var(--line);font:inherit;border-radius:9px;padding:9px 34px 9px 11px}.period-tabs button.active{color:#fff;background:var(--forest-800);box-shadow:0 5px 12px #21534833}.period-tabs button.current-quarter:not(.active){color:var(--positive-text);background:var(--forest-100);box-shadow:inset 0 0 0 1px #bfd5cf}.period-tabs button small{color:var(--positive-text);letter-spacing:.04em;text-transform:uppercase;background:#ffffffb8;border-radius:99px;padding:2px 5px;font-size:8px;font-weight:850;line-height:1.2}.period-tabs button:disabled{color:#a2aaa7;box-shadow:none;cursor:not-allowed;opacity:.64;background:0 0}.period-tabs button:disabled:hover{background:0 0}.date-controls{color:var(--muted);align-items:center;gap:9px;font-size:12px;font-weight:700;display:flex}.date-controls input{min-height:38px;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:9px;padding:0 10px}.custom-dates label{align-items:center;gap:6px;display:flex}.apply-button,.state-card button{color:#fff;background:var(--blue-700);border-radius:9px;min-height:38px;padding:0 15px;font-weight:750}.metric-card,.state-card{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px}.metric-card{transition:opacity .16s;overflow:hidden}.metric-card.refreshing{opacity:.68}.metric-heading{border-bottom:1px solid var(--border-subtle);padding:29px 32px 24px}.metric-heading h2{margin-bottom:7px;font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,4vw,32px);line-height:1.1}.scope-pill{color:var(--positive-text);background:var(--forest-100);white-space:nowrap;padding:7px 12px}.summary-grid{grid-template-columns:minmax(210px,1.5fr) .72fr .72fr minmax(230px,1.35fr);align-items:center;gap:24px;padding:30px 32px;display:grid}.comparison-summary{min-height:37px;color:var(--accent-text);background:var(--surface-subtle);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:12px;padding:10px 13px;font-size:12px;line-height:15px;display:flex}.comparison-summary span,.comparison-summary small,.row-comparison,.detail-comparison small{color:var(--muted);font-size:11px}.attainment-block{border-right:1px solid var(--line);padding-right:28px}.attainment{color:var(--positive-text);letter-spacing:-.04em;margin:-2px 0 13px;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,6vw,60px);font-weight:700;display:block}.attention{color:var(--status-attention)!important}.steady{color:var(--status-steady)!important}.success{color:var(--status-success)!important}.neutral{color:var(--muted)!important}.progress-track{background:var(--track-surface);border-radius:99px;width:100%;height:7px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--amber-500), #e7aa61);border-radius:inherit;height:100%;display:block}.metric-stat{gap:6px;display:grid}.metric-stat span,.detail-metrics span,.memberships>span{color:var(--muted);font-size:12px;font-weight:650}.metric-stat strong{color:var(--heading);letter-spacing:-.025em;font-size:25px}.variance-callout{min-height:84px;color:var(--warning-text);background:linear-gradient(135deg, var(--amber-100), var(--surface-warning));border:1px solid var(--warning-border);border-radius:14px;align-items:center;gap:13px;padding:18px;display:flex}.variance-icon{color:#fff;background:var(--amber-500);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.variance-callout div{gap:4px;display:grid}.variance-callout strong{font-size:15px}.variance-callout span:last-child{color:var(--warning-muted);font-size:11px;line-height:1.3}.coverage-note{color:var(--muted);background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:10px;min-height:37px;margin:0 32px 18px;padding:10px 13px;font-size:12px;line-height:15px}.team-section{background:var(--section-surface);border-top:1px solid var(--border-subtle);padding:26px 32px 32px}.inactive-section{background:var(--section-surface);padding:0 32px 32px}.section-heading{margin-bottom:15px}.section-heading h3{margin-bottom:0;font-size:17px}.section-heading .eyebrow{margin-bottom:5px}.team-sort-control{width:min(220px,100%);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:5px;font-size:10px;font-weight:800;display:grid}.team-sort-control select{width:100%;min-height:38px;color:var(--heading);background:var(--row-surface);border:1px solid var(--border-interactive);font:inherit;letter-spacing:normal;text-transform:none;border-radius:9px;padding:8px 34px 8px 11px;font-size:13px;font-weight:700}.team-sort-control select:focus-visible{border-color:var(--blue-700);outline-offset:1px;outline:3px solid #2a739729}.team-sort-control select:disabled{color:var(--muted);background:var(--surface-subtle);cursor:not-allowed}.team-list,.people-list{gap:8px;display:grid}.charge-row-heading{color:var(--muted);grid-template-columns:minmax(120px,1.1fr) minmax(110px,1fr) 82px 60px 85px 105px 16px;gap:12px;padding:0 15px 7px;font-size:11px;font-weight:800;display:grid}.charge-row-heading span{text-align:right;grid-column:3;justify-self:end}.charge-row-heading-people{grid-template-columns:42px minmax(120px,1fr) minmax(75px,.5fr) 82px 60px 85px 105px 16px}.charge-row-heading-people span{grid-column:4}.charge-row-heading .charge-leave-heading{grid-column:5}.charge-row-heading .charge-client-heading,.charge-row-heading-people .charge-leave-heading{grid-column:6}.charge-row-heading-people .charge-client-heading{grid-column:7}.charge-extra-hours{text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.charge-extra-hours small{display:none}.charge-time-info{margin:12px 32px}.team-row,.person-row{text-align:left;background:var(--row-surface);border:1px solid var(--border-subtle);cursor:pointer;border-radius:12px;grid-template-columns:minmax(120px,1.1fr) minmax(110px,1fr) 82px 60px 85px 105px 16px;align-items:center;gap:12px;width:100%;min-height:70px;padding:11px 15px;transition:transform .14s,border-color .14s,box-shadow .14s;display:grid}.team-row:hover,.person-row:hover{border-color:var(--border-interactive);transform:translateY(-1px);box-shadow:0 7px 18px #1b453b12}.team-identity{gap:12px;min-width:0}.team-identity>span:nth-child(2),.person-identity,.team-progress,.person-hours{gap:4px;display:grid}.person-name-line{align-items:center;gap:8px;min-width:0;display:flex}.inactive-badge{color:#8b3d0f;background:var(--surface-warning);letter-spacing:.04em;text-transform:uppercase;border:1px solid #f0cfaa;border-radius:99px;flex:none;padding:3px 7px;font-size:10px;font-weight:800;line-height:1.2}.team-identity strong,.person-identity strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-identity small,.team-progress small,.person-identity small,.person-hours small{color:var(--muted);font-size:11px}.team-marker{background:var(--amber-500);border-radius:99px;flex:none;width:9px;height:36px}.team-marker.steady{background:var(--status-steady)}.team-marker.success{background:var(--status-success)}.team-marker.neutral{background:#929d99}.team-progress .progress-track{height:5px}.team-attainment,.person-attainment{justify-self:end;font-size:15px}.row-arrow{color:var(--muted);font-size:25px}.empty-note{color:var(--muted);text-align:center;margin:0;padding:24px}.detail-heading{gap:15px}.detail-heading .eyebrow{margin-bottom:5px}.detail-person-name{color:var(--heading);font-family:Georgia,Times New Roman,serif;font-size:25px}.detail-attainment{font-family:Georgia,Times New Roman,serif;font-size:36px}.focused-overlay-backdrop{z-index:100;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0b1d1966;position:fixed;inset:0}.focused-detail-overlay{z-index:101;width:min(960px,100vw - 48px);max-height:calc(100dvh - 48px);color:var(--ink);background:var(--white);border:1px solid #dbe2dfeb;border-radius:22px;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 30px 90px #081f1a47}.focused-detail-header{z-index:1;background:var(--surface-raised);border-bottom:1px solid var(--line);flex:none;padding:18px 24px 20px;position:sticky;top:0}.focused-detail-toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;display:grid}.focused-back-button,.focused-close-button,.focused-team-navigation button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:7px;min-height:40px;display:inline-flex}.focused-back-button{color:var(--blue-700);background:0 0;justify-self:start;padding:0;font-size:13px;font-weight:750}.focused-position{color:var(--muted);letter-spacing:.02em;font-size:12px;font-weight:750}.focused-close-button{width:40px;color:var(--accent-text);background:var(--forest-100);border-radius:12px;justify-self:end;font-size:26px;line-height:1}.focused-detail-title-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-top:12px;display:flex}.focused-detail-title-row h2{color:var(--heading);margin:3px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,4vw,40px);line-height:1.08}.focused-detail-title-row p{color:var(--muted);margin:0;font-size:13px}.focused-team-navigation{gap:8px;display:flex}.focused-team-navigation button{color:var(--positive-text);background:var(--forest-100);border-radius:10px;padding:0 14px;font-size:12px;font-weight:750}.focused-team-navigation button:disabled{color:var(--muted);cursor:not-allowed;opacity:.58}.focused-detail-body{overscroll-behavior:contain;min-height:0;padding:24px;overflow-y:auto}.detail-metrics{border:1px solid var(--line);border-radius:13px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:22px 0;display:grid}.detail-metrics>div{border-right:1px solid var(--line);gap:7px;min-width:0;padding:18px;display:grid}.detail-metrics>div:last-child{border-right:0}.detail-metrics strong{overflow-wrap:anywhere;color:var(--accent-text);font-size:17px}.person-row{grid-template-columns:42px minmax(120px,1fr) minmax(75px,.5fr) 82px 60px 85px 105px 16px}.avatar{width:38px;height:38px;color:var(--positive-text);background:var(--forest-100);border-radius:11px;place-items:center;font-size:12px;font-weight:800;display:grid}.avatar.large{border-radius:16px;width:54px;height:54px;font-size:16px}.person-hours{justify-items:end}.memberships{gap:8px;margin-top:20px;display:grid}.memberships>div{flex-wrap:wrap;gap:7px}.membership{color:var(--blue-700);background:var(--blue-100);border-radius:99px;padding:6px 10px;font-size:12px;font-weight:750}.state-card{justify-content:center;align-items:center;gap:20px;min-height:260px;padding:40px;display:flex}.state-card h2{margin-bottom:7px}.state-card button{margin-top:17px}.state-icon,.loading-pulse{border-radius:15px;flex:none;place-items:center;width:50px;height:50px;display:grid}.state-icon{color:var(--amber-700);background:var(--amber-100);font-size:26px;font-weight:900}.loading-pulse{background:var(--forest-100);animation:1.1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45;transform:scale(.92)}}footer{color:var(--muted);border-top:1px solid var(--line);letter-spacing:.04em;padding:22px 0 32px;font-size:11px;font-weight:700}.dashboard-view-tabs{background:var(--surface-translucent);border:1px solid var(--line);border-radius:14px;gap:5px;margin:22px 0 0;padding:6px;display:inline-flex;box-shadow:0 8px 24px #0e342c0f}.dashboard-view-tabs+.charge-hours-section .period-panel{margin-top:14px}.metric-heading-actions{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.charge-refresh-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.metric-heading-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.metric-heading-badges .data-badge,.metric-heading-badges .scope-pill{border:1px solid #0000;padding:7px 12px}.metric-heading-badges .data-badge{color:var(--status-attention);background:var(--surface-warning);border-color:var(--warning-border)}.metric-heading-badges .data-badge.cached{color:var(--status-steady);background:var(--blue-100);border-color:var(--border-interactive)}.metric-heading-badges .data-badge.cached .status-dot{background:var(--status-steady)}.metric-heading-badges .data-badge.live{color:var(--positive-text);background:var(--forest-100);border-color:var(--border-interactive)}.settings-link{color:var(--forest,#173f35);align-items:center;gap:6px;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.settings-link:hover,.settings-link:focus-visible{color:var(--orange,#d97724);text-decoration:underline}.header-settings-link{color:#f7e6c8;white-space:nowrap;background:#dd8a3326;border:1px solid #f0b5666b;border-radius:999px;justify-content:center;padding:7px 11px;line-height:1}.header-settings-link:hover,.header-settings-link:focus-visible{color:#fff4df;background:#dd8a3340;text-decoration:none}.charge-team-group{border:1px solid var(--group-outline);border-radius:16px;overflow:hidden}.charge-team-group>.team-row{background:var(--parent-row-surface,var(--row-surface));border-radius:0;font-weight:700}.charge-team-children{border-left:3px solid var(--group-rail);gap:8px;margin:8px 10px 10px 20px;padding-left:12px;display:grid}.settings-shell{color:#173f35;max-width:1180px;min-height:100vh;margin:0 auto;padding:40px 28px 80px}.settings-shell a{color:#1f5f77;font-weight:700;text-decoration:none}.settings-navigation-shell{gap:14px;margin-bottom:24px;display:grid}.settings-back-link{width:fit-content}.settings-section-navigation{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.settings-section-link{background:var(--white);border:1px solid var(--line);color:var(--accent-text);border-radius:999px;gap:3px;min-width:0;padding:14px 20px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.settings-back-link{color:var(--blue-700);font-weight:700;text-decoration:none}.settings-section-link span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:500;overflow:hidden}.settings-section-link:hover,.settings-section-link:focus-visible,.settings-section-link.selected{border-color:var(--amber-500);text-decoration:none;box-shadow:0 8px 24px #a85b1824}.settings-section-link.selected{background:var(--amber-100);color:var(--accent-text)}.integration-card{max-width:820px;margin-inline:auto}.integration-state{border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:800}.integration-state.not-configured{background:var(--forest-100);color:var(--positive-text)}.integration-state.connected{background:var(--green-100);color:var(--green-700)}.integration-state.attention-required{background:var(--amber-100);color:var(--amber-700)}.integration-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 24px;display:grid}.integration-summary div{background:var(--canvas);border:1px solid var(--line);border-radius:12px;gap:4px;padding:13px;display:grid}.integration-summary dt{color:var(--muted);font-size:.74rem;font-weight:700}.integration-summary dd{overflow-wrap:anywhere;margin:0;font-weight:800}.integration-form{gap:10px;display:grid}.integration-form p{color:var(--muted);margin:0 0 6px}.integration-form button{justify-self:start;margin-top:6px}:root[data-theme=dark] .settings-section-link,:root[data-theme=dark] .settings-card,:root[data-theme=dark] .settings-toolbar{background:var(--surface-raised);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .settings-section-link span,:root[data-theme=dark] .integration-form p,:root[data-theme=dark] .integration-summary dt{color:#b9cbc5}:root[data-theme=dark] .settings-section-link.selected{background:#4c341e}:root[data-theme=dark] .integration-summary div{background:var(--surface-subtle);border-color:var(--line)}:root[data-theme=dark] .integration-state.not-configured{color:#b9ded2}:root[data-theme=dark] .integration-state.connected,:root[data-theme=dark] .active-state,:root[data-theme=dark] .mapping-state{color:#9bd7b5!important}:root[data-theme=dark] .integration-state.attention-required{color:#f3c78e}:root[data-theme=dark] .inactive-state{color:#f0a097!important}.settings-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.settings-header h1,.settings-unlock h1{margin:10px 0 8px;font-family:Georgia,serif;font-size:clamp(2.1rem,5vw,3.5rem)}.settings-card,.settings-toolbar{background:var(--surface-raised);border:1px solid #1f594b2b;border-radius:18px;margin-bottom:20px;padding:24px;box-shadow:0 12px 32px #14342d0f}.settings-unlock{max-width:620px;padding-top:80px}.settings-unlock .settings-card{margin-top:28px}.settings-gear{background:var(--surface-subtle);border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:inline-flex}.settings-unlock form,.settings-toolbar,.csv-actions{flex-wrap:wrap;align-items:end;gap:14px;display:flex}.settings-shell label{gap:6px;font-size:.78rem;font-weight:700;display:grid}.settings-shell input,.settings-shell select{background:var(--field-surface);border:1px solid var(--line);color:var(--ink);border-radius:9px;min-height:42px;padding:9px 11px}.settings-shell button{color:#fff;cursor:pointer;background:#1f5f4f;border:0;border-radius:9px;min-height:42px;padding:10px 16px;font-weight:800}.settings-shell button:disabled{cursor:not-allowed;opacity:.45}.settings-shell .secondary-button{background:var(--surface-subtle);color:var(--ink)}.settings-toolbar{justify-content:space-between}.revision-pill{background:var(--surface-subtle);border-radius:999px;padding:9px 13px;font-size:.78rem;font-weight:800}.settings-section-heading{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.settings-section-heading h2,.settings-card h2{margin:4px 0 8px}.employment-roster,.audit-list{gap:10px;display:grid}.employment-person{border:1px solid #1f594b24;border-radius:13px;grid-template-columns:minmax(220px,1.5fr) minmax(145px,.8fr) minmax(145px,.8fr) minmax(185px,1fr);align-items:center;gap:14px;padding:15px;display:grid}.employment-person.inactive{background:var(--surface-danger);border-color:#e4aaa1}.employment-person-identity,.employment-row-action,.audit-list article>div{gap:4px;display:grid}.employment-person-identity span,.employment-row-action small,.audit-list span{color:var(--muted);font-size:.76rem}.inactive-state{font-weight:800;color:#a33a2c!important}.active-state{font-weight:800;color:#2b6f5d!important}.audit-list article{border-top:1px solid #1f594b1f;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.mapping-heading-row{align-items:flex-start;gap:20px}.mapping-status-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:28px;display:grid}.mapping-status-grid>div{background:var(--surface-subtle);border-radius:12px;gap:4px;min-width:0;padding:13px;display:grid}.mapping-status-grid span,.mapping-person span,.mapping-person small,.mapping-warning span,.mapping-snapshot span,.mapping-snapshot small{color:var(--muted);font-size:.76rem}.mapping-status-grid strong,.mapping-person strong,.mapping-snapshot strong{overflow-wrap:anywhere}.mapping-section{border-top:1px solid #1f594b1f;padding-top:22px}.mapping-section+.mapping-section{margin-top:22px}.mapping-section h3{margin:0 0 14px}.mapping-people,.mapping-warning-list,.mapping-snapshots{gap:10px;display:grid}.mapping-person{border:1px solid #1f594b24;border-radius:13px;grid-template-columns:minmax(190px,1.3fr) repeat(3,minmax(135px,1fr));gap:14px;padding:15px;display:grid}.mapping-person.inactive{background:var(--surface-danger);border-color:#e4aaa1}.mapping-person>div,.mapping-warning>div,.mapping-snapshot>div{gap:4px;display:grid}.mapping-warning-toolbar{justify-content:space-between;align-items:end;gap:20px;margin-bottom:14px;display:flex}.mapping-warning-switch{color:inherit;white-space:nowrap;background:0 0;border:0;align-items:center;gap:.6rem;display:inline-flex}.mapping-warning-switch[role=switch],.mapping-warning-switch[role=switch][aria-checked=true]{background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line);border-radius:12px}.employment-section-nav{flex-wrap:wrap;gap:8px;margin:12px 0 24px;display:flex}.employment-section-nav a{border:1px solid var(--line);background:var(--field-surface);color:var(--ink);border-radius:999px;padding:10px 16px;font-weight:700;text-decoration:none}.employment-section-nav a[aria-current=page]{color:#fff;background:#1769ba;border-color:#1769ba}.employment-section-nav a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.mapping-warning-switch-track{color:inherit;border:1px solid;border-radius:999px;align-items:center;width:2.6rem;height:1.5rem;padding:.2rem;display:inline-flex}.mapping-warning-switch-track>span{color:inherit;background:currentColor;border-radius:50%;width:1rem;height:1rem;transition:transform .12s}.mapping-warning-switch[aria-checked=true] .mapping-warning-switch-track{color:#fff;background:#27668d}.mapping-warning-switch:focus-visible{outline-offset:4px;outline:2px solid}.mapping-warning-switch .mapping-warning-switch-track{background:#737b85;border:0;border-radius:999px;flex:0 0 51px;width:51px;height:31px;padding:0;display:inline-block;position:relative}.mapping-warning-switch .mapping-warning-switch-track>span{background:#fff;width:25px;height:25px;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0004}.mapping-warning-switch[aria-checked=true] .mapping-warning-switch-track{background:#2688ef}.mapping-warning-switch[aria-checked=true] .mapping-warning-switch-track>span{transform:translate(20px)}.ios-switch{flex-shrink:0;width:51px;height:31px;display:inline-block;position:relative}.inclusion-user-row .ios-switch>input[role=switch]{opacity:0;z-index:1;cursor:pointer;width:51px;height:31px;margin:0;position:absolute;inset:0}.ios-switch-track{pointer-events:none;background:#737b85;border-radius:999px;position:absolute;inset:0}.ios-switch-track:after{content:"";background:#fff;border-radius:50%;width:25px;height:25px;transition:transform .12s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0004}.ios-switch>input:checked+.ios-switch-track{background:#2688ef}.ios-switch>input:checked+.ios-switch-track:after{transform:translate(20px)}.ios-switch>input:focus-visible+.ios-switch-track{outline:2px solid var(--ink);outline-offset:4px}.ios-switch>input:disabled+.ios-switch-track{opacity:.55}.inclusion-switch-control{align-items:center;gap:12px;display:inline-flex}.employment-subsection{border:1px solid var(--line);background:var(--surface-raised);border-radius:16px;margin-top:24px;padding:20px}.budget-loading-progress{width:100%;color:var(--ink);background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px;padding:16px}.budget-loading-progress>div{justify-content:space-between;gap:12px;display:flex}.budget-loading-progress progress{accent-color:#2688ef;width:100%;height:12px;margin:10px 0;display:block}.loading-progress-unknown{background:var(--track-surface);border-radius:999px;width:100%;height:12px;margin:10px 0;overflow:hidden}.loading-progress-unknown>span{background:repeating-linear-gradient(90deg, var(--status-steady) 0 10px, transparent 10px 18px);opacity:.55;width:100%;height:100%;display:block}.budget-loading-progress small{display:block}.mapping-refresh-progress{margin:16px 0}.mapping-warning-toolbar h3,.mapping-warning-toolbar p{margin:0}.mapping-warning,.mapping-snapshot{border:1px solid #1f594b24;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;display:flex}.mapping-state{background:var(--surface-subtle);border-radius:999px;padding:8px 12px;font-weight:800;color:#2b6f5d!important}.settings-message{min-height:1.4em}.mapping-validation-result{border:1px solid var(--warning-border,var(--border-interactive));background:var(--warning-surface,var(--field-surface));border-radius:14px;margin-top:18px;padding:18px}.mapping-validation-result ol{gap:8px;margin:14px 0 0;padding-left:24px;display:grid}.mapping-validation-result li,.mapping-validation-result>p{color:var(--ink)}.settings-version{color:var(--muted);font-size:.72rem;position:fixed;bottom:14px;right:18px}@media (max-width:800px){.settings-shell{padding:24px 16px 64px}.settings-version{text-align:right;margin:0 16px 14px;display:block;position:static}.settings-header{display:grid}.employment-person{grid-template-columns:1fr;align-items:stretch}.mapping-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mapping-person{grid-template-columns:1fr}.mapping-heading-row,.mapping-warning-toolbar,.mapping-warning,.mapping-snapshot{align-items:stretch;display:grid}}.dashboard-view-tabs button{min-height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:0 18px;font-size:13px;font-weight:800}.dashboard-view-tabs button[aria-pressed=true]{color:#fff;background:var(--forest-800);box-shadow:0 5px 12px #0c3e332e}.past-due-section,.job-budget-section,.tax-budget-section,.realization-section{margin-top:24px}.realization-card{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;overflow:hidden}.realization-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:28px 32px 24px;display:flex}.realization-heading .eyebrow{color:var(--status-steady)}.realization-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.report-updated-at{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500;line-height:1.5}.report-additional-info{margin:20px 32px}.report-additional-info summary{border:1px solid var(--border-interactive);background:var(--surface-subtle);width:fit-content;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:700;list-style:none;display:flex}.report-additional-info summary::-webkit-details-marker{display:none}.report-additional-info summary:after{content:"▸"}.report-additional-info[open] summary:after{content:"▾"}.report-additional-info summary:focus-visible{outline:2px solid var(--status-steady);outline-offset:3px}.report-info-content{border:1px solid var(--line);background:var(--surface-subtle);color:var(--ink);border-radius:12px;margin-top:12px;padding:4px 16px;font-size:13px;line-height:1.6}.realization-filter-actions{grid-column:1/-1;justify-content:flex-end;display:flex}.realization-loading,.realization-coverage{border:1px solid var(--line);background:var(--surface-subtle);border-radius:12px;margin:20px 32px;padding:16px}.realization-loading{gap:12px;display:grid}.realization-loading progress{width:100%;accent-color:var(--status-steady)}.realization-coverage p{margin:6px 0;line-height:1.5}.realization-results caption{text-align:left;padding:20px 16px 12px;font-weight:700}.realization-detail-heading .realization-back{margin-right:12px}.realization-heading h2{margin:4px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:30px}.realization-heading p{color:var(--muted);margin:0;font-size:13px}.realization-source{color:var(--positive-text);background:var(--forest-100);text-align:center;border:1px solid #bdd5cd;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800}.realization-source.sample{color:#72551d;background:var(--amber-100);border-color:#e6d2a7}.realization-warning,.realization-empty{color:var(--warning-text);margin:16px 32px 0;font-size:12px;font-weight:700}.realization-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:24px 32px;display:grid}.realization-summary>div{background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px;min-width:0;padding:14px}.realization-summary span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.realization-summary strong{color:var(--heading);margin-top:7px;font-size:18px;display:block}.realization-views{flex-wrap:wrap;gap:8px;margin:0 32px 14px;display:flex}.realization-views button,.realization-clear{min-height:38px;color:var(--muted);background:var(--white);cursor:pointer;border:1px solid #cad7d3;border-radius:9px;padding:0 12px;font-size:12px;font-weight:800}.realization-views button[aria-pressed=true]{color:#fff;background:var(--forest-800);border-color:var(--positive-text)}.realization-views button:disabled{opacity:.5;cursor:not-allowed}.revenue-multiselect{min-width:0;position:relative}.revenue-multiselect summary{box-sizing:border-box;width:100%;min-height:42px;color:var(--ink);background:var(--white);border:1px solid var(--border-interactive);cursor:pointer;border-radius:9px;align-items:center;padding:0 10px;font-size:13px;font-weight:600;display:flex}.revenue-multiselect summary:focus-visible{outline:2px solid var(--forest-800);outline-offset:2px}.revenue-multiselect-options{z-index:10;background:var(--surface-raised);border:1px solid var(--border-interactive);border-radius:9px;max-height:240px;padding:7px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 20px #0002}.realization-filters .revenue-multiselect-options label{cursor:pointer;align-items:center;gap:8px;padding:6px;font-size:12px;font-weight:500;display:flex}.realization-filters .revenue-multiselect-options input[type=checkbox]{width:16px;height:16px;min-height:16px;accent-color:var(--forest-800);flex:none;margin:0}.dashboard-tab-list{gap:8px;margin-top:20px;display:grid}.dashboard-tab-row{border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:12px 16px;display:flex}.dashboard-tab-row>span{font-weight:700}.dashboard-tab-row button[role=switch]{appearance:none;cursor:pointer;background:0 0;border:0;padding:0}.dashboard-tab-switch-track{box-sizing:border-box;background:#737b85;border-radius:999px;align-items:center;width:51px;height:31px;padding:3px;transition:background .12s;display:flex}.dashboard-tab-switch-track>span{background:#fff;border-radius:50%;width:25px;height:25px;transition:transform .12s;box-shadow:0 1px 3px #0004}.dashboard-tab-row button[aria-checked=true] .dashboard-tab-switch-track{background:#2688ef}.dashboard-tab-row button[aria-checked=true] .dashboard-tab-switch-track>span{transform:translate(20px)}.dashboard-tab-row button:focus-visible{outline:2px solid var(--forest-800);outline-offset:4px;border-radius:999px}.dashboard-tab-row button:disabled{opacity:.55;cursor:wait}.realization-filters,.realization-period-controls{background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,minmax(125px,1fr));align-items:end;gap:12px;margin:16px 32px 20px;padding:16px;display:grid}.realization-filters label,.realization-period-controls label{min-width:0;color:var(--muted);gap:6px;font-size:11px;font-weight:800;display:grid}.realization-filters select,.realization-filters input,.realization-period-controls select,.realization-period-controls input{width:100%;height:42px;min-height:42px;color:var(--ink);background:var(--white);border:1px solid var(--border-interactive);font:inherit;box-sizing:border-box;border-radius:9px;padding:0 10px;font-size:13px;font-weight:500}.realization-filters select,.realization-period-controls select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23788787' stroke-width='1.5' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.realization-card .realization-clear{min-height:42px;color:var(--ink);border-color:var(--border-interactive);font-size:13px}.realization-card .realization-clear:disabled{opacity:.55;cursor:not-allowed}.realization-period-controls .realization-clear{background:var(--forest-800);color:#fff}@media (max-width:900px){.realization-period-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.realization-actions{justify-content:flex-start}}@media (max-width:600px){.realization-period-controls{grid-template-columns:1fr;margin:16px}.report-additional-info{margin:16px}}.realization-results{border:1px solid var(--line);border-radius:12px;margin:0 32px 32px;overflow-x:auto}.realization-results table{border-collapse:collapse;width:100%;min-width:920px}.realization-row-link,.realization-back{font:inherit;color:var(--ink);cursor:pointer;font-weight:700}.realization-row-link{text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:6px 0;display:inline-flex}.realization-row-link:hover{text-underline-offset:4px;text-decoration:underline}.realization-row-link:focus-visible,.realization-back:focus-visible{outline:2px solid var(--amber-500);outline-offset:3px}.realization-detail-heading{padding:20px}.realization-detail-heading h3{margin:16px 0 8px}.realization-detail-heading p{color:var(--muted);margin:0;line-height:1.5}.revenue-client-invoices{margin-top:20px}.revenue-client-invoices-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.revenue-client-invoices-heading h3{margin:0 0 6px}.revenue-client-invoices-heading p{color:var(--muted);margin:0;line-height:1.5}.revenue-client-invoices-heading label{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.realization-back{border:1px solid var(--line);background:var(--surface-subtle);border-radius:999px;padding:9px 16px}.realization-results th,.realization-results td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:13px 14px}.realization-results th:first-child{text-align:left}.realization-results thead th{background:var(--surface-subtle)}.realization-results thead button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:800}.realization-results tbody th,.realization-results tbody td{color:var(--ink);font-size:13px}.realization-results tbody tr:last-child th,.realization-results tbody tr:last-child td{border-bottom:0}@media (max-width:900px){.realization-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.realization-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.realization-heading{flex-direction:column;align-items:flex-start;padding:22px 18px}.realization-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}.realization-views,.realization-filters,.realization-results{margin-inline:18px}.realization-filters{grid-template-columns:1fr}}.tax-budget-filters{background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;margin:0 32px;padding:16px;display:grid}.tax-budget-filters label{min-width:0;color:var(--muted);gap:6px;font-size:11px;font-weight:800;display:grid}.tax-budget-filters select{width:100%;min-height:40px;color:var(--ink);background:var(--white);border:1px solid #cad7d3;border-radius:9px;padding:0 10px}.tax-budget-filters button{min-height:40px;color:var(--blue-700);background:var(--blue-100);cursor:pointer;border:1px solid #c2d9e5;border-radius:9px;padding:0 13px;font-size:12px;font-weight:800}.tax-budget-filters button:disabled{cursor:default;opacity:.55}.job-budget-card{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;transition:opacity .16s;overflow:hidden}.job-budget-card.refreshing{opacity:.78}.job-budget-heading,.job-budget-heading-actions,.job-budget-results-heading,.job-budget-scope{align-items:center;display:flex}.job-budget-heading{border-bottom:1px solid #e8ecea;justify-content:space-between;gap:24px;padding:28px 32px 24px}.job-budget-heading h2{margin-bottom:7px;font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,4vw,32px);line-height:1.1}.job-budget-heading p,.job-budget-refreshed{color:var(--muted);margin:0;font-size:12px}.job-budget-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.job-budget-heading-actions .data-badge{color:#7b4318;background:var(--surface-warning);border-color:#edc897}.job-budget-heading-actions .data-badge.live{color:var(--green-700);background:#edf7f1;border-color:#bfdcca}.job-budget-heading-actions .data-badge.cached{color:#163e54;background:#e7f2f7;border-color:#c2d9e5}.job-budget-heading-actions .data-badge.stale{color:#7b4318;background:var(--amber-100);border-color:#edc897}.job-budget-refresh,.job-budget-views button,.job-budget-scope button{cursor:pointer;border:0;font-weight:800}.job-budget-refresh{color:#fff;background:var(--blue-700);border-radius:9px;min-height:38px;padding:0 15px}.job-budget-refresh:disabled{cursor:wait;opacity:.64}.job-budget-summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.job-budget-metric{border-right:1px solid var(--line);gap:7px;min-width:0;padding:25px 28px;display:grid}.job-budget-metric:last-child{border-right:0}.job-budget-metric span{color:var(--muted);font-size:12px;font-weight:700}.job-budget-metric strong{color:var(--heading);font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,3vw,34px)}.job-budget-metric.negative strong,.job-budget-row-metrics .negative strong{color:#a84620}.job-budget-metric.positive strong,.job-budget-row-metrics .positive strong{color:var(--green-700)}.job-budget-controls{background:var(--surface-subtle);grid-template-columns:minmax(0,1fr);align-items:end;gap:20px;padding:22px 32px;display:grid}.budget-hours-filter-deck{background:var(--surface-subtle);border:1px solid var(--line);border-radius:14px;gap:12px;margin:18px 32px 0;padding:16px;display:grid}.budget-hours-filter-tier{align-items:end;gap:12px;display:grid}.budget-hours-filter-tier.primary{grid-template-columns:minmax(150px,.8fr) minmax(170px,1fr) minmax(190px,1.2fr) auto}.budget-hours-filter-tier.secondary{grid-template-columns:repeat(4,minmax(150px,1fr)) minmax(190px,1.2fr) auto}.budget-hours-filter{min-width:0;color:var(--muted);gap:6px;font-size:11px;font-weight:800;display:grid}.budget-hours-filter select,.budget-hours-filter input{width:100%;min-height:40px;color:var(--ink);background:var(--white);border:1px solid #cad7d3;border-radius:9px;padding:0 10px}.budget-hours-over-toggle{min-height:40px;color:var(--heading);white-space:nowrap;background:#edf7f1;border:1px solid #bfdcca;border-radius:9px;align-items:center;gap:8px;padding:0 12px;font-size:12px;font-weight:800;display:flex}.budget-hours-over-toggle input{width:16px;height:16px;accent-color:var(--positive-text)}.budget-hours-clear{color:#163e54;cursor:pointer;white-space:nowrap;background:#e7f2f7;border:1px solid #c2d9e5;border-radius:9px;min-height:40px;padding:0 13px;font-size:12px;font-weight:800}.budget-hours-clear:disabled{cursor:default;opacity:.55}.job-budget-views{background:var(--forest-100);border-radius:12px;flex-wrap:wrap;gap:4px;padding:5px;display:flex}.job-budget-views button{min-height:36px;color:var(--positive-text);background:0 0;border-radius:8px;padding:0 12px;font-size:12px}.job-budget-views button[aria-pressed=true]{color:#fff;background:var(--forest-800)}.job-budget-search{color:var(--muted);gap:6px;font-size:11px;font-weight:800;display:grid}.job-budget-search input{width:100%;min-height:40px;color:var(--ink);background:var(--white);border:1px solid #cad7d3;border-radius:9px;padding:0 12px}.job-budget-scope{color:var(--positive-text);background:var(--blue-100);border:1px solid #c9e0eb;border-radius:10px;justify-content:space-between;gap:16px;margin:0 32px;padding:10px 13px;font-size:12px}.job-budget-scope button{color:var(--blue-700);background:0 0}.job-budget-results-heading{flex-wrap:wrap;justify-content:space-between;gap:20px;padding:24px 32px 14px}.job-budget-results-heading .budget-hours-filter{min-width:190px;margin-left:auto}.job-budget-results-heading h3,.job-budget-results-heading .eyebrow{margin-bottom:0}.job-budget-results-heading>span{color:var(--muted);font-size:12px;font-weight:700}.job-budget-rows{gap:8px;padding:0 32px 30px;display:grid}.budget-hours-sort-headings{color:var(--muted);grid-template-columns:minmax(180px,1.2fr) repeat(4,minmax(74px,.5fr)) 16px;align-items:center;gap:18px;margin:0 32px 10px;padding:0 15px;display:grid}.budget-hours-sort-headings button{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:11px;font-weight:800}.budget-hours-sort-headings button[aria-pressed=true]{color:var(--heading)}.budget-hours-sort-headings button:hover{color:var(--blue-700)}.budget-hours-sort-headings button:focus-visible{outline:2px solid var(--blue-700);outline-offset:2px}.budget-hours-sort-headings button:nth-child(4){grid-column:4}.budget-hours-month-multiselect{position:relative}.budget-hours-month-multiselect summary{background:var(--white);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:10px 12px}.budget-hours-month-options{z-index:10;background:var(--white);border:1px solid var(--line);min-width:220px;max-height:320px;box-shadow:var(--shadow);border-radius:10px;padding:8px;position:absolute;top:calc(100% + 5px);left:0;overflow-y:auto}.budget-hours-month-options label{cursor:pointer;align-items:center;gap:9px;padding:7px;display:flex}.budget-hours-month-options input{width:16px;height:16px}.budget-hours-month-actions{gap:8px;padding:5px;display:flex}.budget-hours-month-actions button{color:var(--blue-700);cursor:pointer;background:0 0;border:0;font-weight:700}.job-budget-row{width:100%;min-width:0;min-height:78px;color:inherit;text-align:left;background:var(--white);border:1px solid #e4e9e7;border-radius:12px;grid-template-columns:minmax(180px,1.2fr) minmax(420px,2fr) 16px;align-items:center;gap:18px;padding:13px 15px;display:grid}button.job-budget-row{cursor:pointer;transition:border-color .14s,box-shadow .14s,transform .14s}button.job-budget-row:hover{border-color:#b8cfca;transform:translateY(-1px);box-shadow:0 7px 18px #1b453b12}.job-budget-row.detail{grid-template-columns:minmax(180px,1.2fr) minmax(420px,2fr)}.job-budget-row.has-actions{grid-template-columns:minmax(0,1fr) auto;gap:0;padding:0}.job-budget-row-main{min-width:0;min-height:76px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:minmax(180px,1.2fr) minmax(420px,2fr) 16px;align-items:center;gap:18px;padding:13px 15px;display:grid}button.job-budget-row-main{cursor:pointer}.job-budget-row-main.detail{grid-template-columns:minmax(180px,1.2fr) minmax(420px,2fr)}.job-budget-row.has-actions:has(button.job-budget-row-main:hover){border-color:#b8cfca;transform:translateY(-1px);box-shadow:0 7px 18px #1b453b12}.job-budget-link{color:var(--blue-700);background:var(--blue-100);white-space:nowrap;border:1px solid #c2d9e5;border-radius:8px;margin-right:15px;padding:9px 11px;font-size:12px;font-weight:800;line-height:1.2;text-decoration:none}.job-budget-link:hover{color:var(--heading);border-color:#8eb8ca}.job-budget-link:focus-visible{outline-offset:2px;outline:3px solid #27678b52}.job-budget-row-identity{gap:4px;min-width:0;display:grid}.job-budget-row-identity strong{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.job-budget-row-identity small,.job-budget-row-metrics small{color:var(--muted);font-size:10px}.job-budget-row-metrics{grid-template-columns:repeat(4,minmax(74px,1fr));gap:10px;display:grid}.job-budget-row-metrics>span{gap:3px;min-width:0;display:grid}.job-budget-row-metrics strong{color:var(--heading);font-size:14px}.job-budget-inline-error{color:#8b3d0f;background:var(--amber-100);border:1px solid #f0cfaa;border-radius:9px;margin:14px 32px 0;padding:10px 12px;font-size:12px}.capacity-section{margin-top:24px}.capacity-notices{color:#8b3d0f;background:var(--amber-100);border:1px solid #f0cfaa;border-radius:9px;gap:4px;margin:14px 32px 0;padding:10px 12px 10px 28px;font-size:12px;display:grid}.capacity-basis{color:var(--muted);margin:12px 32px;font-size:12px}.capacity-snapshot-progress{border:1px solid var(--line);background:var(--surface-subtle);color:var(--ink);border-radius:9px;margin:14px 32px;padding:12px 14px;font-size:12px}.capacity-snapshot-progress progress{width:100%;margin-top:8px;display:block}.capacity-controls{grid-template-columns:auto minmax(160px,220px) auto;justify-content:start}@media (max-width:680px){.capacity-controls{grid-template-columns:minmax(0,1fr)}}@media (max-width:1240px) and (min-width:681px){.budget-hours-filter-tier.primary{grid-template-columns:repeat(3,minmax(150px,1fr))}.budget-hours-over-toggle{grid-column:1/-1;justify-content:center}.budget-hours-filter-tier.secondary{grid-template-columns:repeat(3,minmax(150px,1fr))}}.past-due-card{overflow:visible}.past-due-heading,.past-due-heading-actions,.past-due-filter-group>div,.past-due-active-filters{align-items:center;display:flex}.past-due-heading{justify-content:space-between;gap:24px}.past-due-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.past-due-heading-actions .data-badge{color:#7b4318;background:var(--surface-warning);border-color:#edc897}.past-due-heading-actions .data-badge.live{color:var(--green-700);background:#edf7f1;border-color:#bfdcca}.past-due-heading-actions .data-badge.cached{color:var(--blue-700);background:var(--blue-100);border-color:#c2d9e5}.past-due-heading-actions .data-badge.stale{color:#7b4318;background:var(--amber-100);border-color:#edc897}.past-due-refresh{min-height:38px;color:var(--blue-700);background:var(--blue-100);cursor:pointer;border:0;border-radius:10px;padding:0 14px;font-size:12px;font-weight:800}.past-due-refresh:disabled{cursor:wait;opacity:.66}.data-badge.cached .status-dot{background:var(--blue-700)}.data-badge.stale .status-dot{background:var(--amber-700)}.past-due-warning{color:#71370f;background:var(--amber-100);border:1px solid #f0cfaa;border-radius:10px;margin:0 28px 18px;padding:12px 14px;font-size:12px;font-weight:700}.past-due-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 28px 26px;display:grid}.past-due-kpi{min-width:0;min-height:136px;color:var(--accent-text);background:linear-gradient(135deg, var(--forest-100), var(--surface-raised));cursor:pointer;text-align:left;border:1px solid #cfdfda;border-radius:15px;align-content:center;justify-items:start;gap:4px;padding:20px;display:grid}.past-due-kpi.waiting{color:var(--warning-text);background:linear-gradient(135deg, var(--amber-100), var(--surface-warning));border-color:var(--warning-border)}:root[data-theme=dark] .past-due-kpi.waiting strong{color:#ffd36a}.past-due-kpi[aria-pressed=true]{border-color:var(--forest-700);box-shadow:0 0 0 2px #1c5b4b1f}.past-due-kpi span,.past-due-kpi small{font-size:12px;font-weight:750}.past-due-kpi small{color:var(--muted)}.past-due-kpi strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(34px,5vw,48px);line-height:1}.past-due-controls{background:var(--surface-subtle);border:1px solid var(--line);border-radius:15px;grid-template-columns:minmax(200px,.8fr) minmax(260px,1.2fr) minmax(320px,1.5fr);align-items:start;gap:18px;margin:0 28px;padding:20px;display:grid}.past-due-controls.client-only{grid-template-columns:minmax(240px,520px)}.past-due-client-search,.past-due-filter-group{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;gap:8px;font-size:11px;font-weight:800;display:grid}.past-due-client-search input{width:100%;min-height:40px;color:var(--ink);background:var(--white);font:inherit;letter-spacing:0;text-transform:none;border:1px solid #cfd8d5;border-radius:10px;padding:0 12px;font-size:13px;font-weight:600}.past-due-filter-group>div{flex-wrap:wrap;gap:6px}.past-due-filter-group button,.past-due-active-filters button{min-height:34px;color:var(--positive-text);background:var(--white);cursor:pointer;border:1px solid #d4ddda;border-radius:9px;padding:0 10px;font-size:11px;font-weight:750}.past-due-filter-group button[aria-pressed=true]{color:#fff;background:var(--forest-800);border-color:var(--positive-text)}.past-due-filter-group button strong{margin-left:3px}.past-due-active-filters{flex-wrap:wrap;gap:7px;margin:12px 28px 0}.past-due-active-filters button{color:var(--blue-700);background:var(--blue-100);border-color:#0000;border-radius:99px}.past-due-active-filters .clear-all{color:var(--muted);background:0 0;text-decoration:underline}.past-due-breakdowns{margin:24px 28px 0}.section-heading.compact{padding:0 0 10px}.past-due-client-list{overscroll-behavior:contain;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:178px;display:grid;overflow-y:auto}.past-due-client-list button{min-width:0;min-height:40px;color:var(--accent-text);background:var(--surface-subtle);border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:0 12px;display:flex}.past-due-client-list button[aria-pressed=true]{background:var(--forest-100);border-color:var(--forest-700)}.past-due-client-list button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.past-due-team-section{padding-bottom:28px}.past-due-team-hierarchy{gap:14px;display:grid}.past-due-team-group,.past-due-fallback-teams{background:var(--surface-subtle);border:1px solid var(--line);border-radius:16px;padding:12px}.past-due-team-group>.past-due-team-card.parent-team{background:var(--parent-row-surface,var(--forest-100));border-color:var(--border-interactive)}.past-due-child-team-grid{border-left:2px solid #c7d8d2;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 0 18px;padding-left:16px;display:grid}.past-due-team-card.child-team{background:var(--white)}.past-due-fallback-teams{border-style:dashed}.past-due-group-label{margin-bottom:10px}.past-due-group-label h4{color:var(--heading);margin:2px 0 0;font-size:16px}.past-due-team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.past-due-team-card{min-width:0;color:var(--ink);background:var(--white);border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:13px;grid-template-columns:9px minmax(0,1fr);gap:5px 12px;padding:16px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.past-due-team-card:hover,.past-due-team-card:focus-visible{border-color:#b7ccc5;transform:translateY(-1px);box-shadow:0 10px 24px #0e342c17}.past-due-team-card .team-marker{grid-row:1/-1;height:100%;min-height:58px}.past-due-team-name,.past-due-team-card strong,.past-due-team-card small,.past-due-rollup-owner,.past-due-aging-mini{grid-column:2}.past-due-team-name{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.past-due-team-card strong{color:var(--positive-text);font-size:18px}.past-due-team-card small{color:var(--muted)}.past-due-rollup-owner{color:var(--blue-700);flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.past-due-aging-mini{border-radius:99px;gap:2px;height:4px;margin-top:6px;display:flex;overflow:hidden}.past-due-aging-mini i{background:var(--amber-500);min-width:2px}.past-due-aging-mini i:nth-child(2){background:#dd873d}.past-due-aging-mini i:nth-child(3){background:#c76b31}.past-due-aging-mini i:nth-child(4){background:#a94b25}.past-due-aging-mini i:nth-child(5){background:#7d311c}.past-due-detail-metrics{grid-template-columns:repeat(2,1fr)}.past-due-owner-note{color:var(--accent-text);background:var(--blue-100);border:1px solid #c2d9e5;border-radius:11px;align-items:center;gap:8px;padding:12px 14px;font-size:12px;display:flex}.past-due-owner-note>span:first-child{color:var(--muted);font-weight:750}.past-due-person-row{grid-template-columns:42px minmax(160px,1fr) minmax(110px,.5fr) 16px}.past-due-work-list{gap:14px;display:grid}.past-due-assignee-statuses{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.past-due-assignee-statuses button{min-height:36px;color:var(--positive-text);background:var(--white);cursor:pointer;border:1px solid #d4ddda;border-radius:9px;padding:0 11px;font-size:11px;font-weight:750}.past-due-assignee-statuses button[aria-pressed=true]{color:#fff;background:var(--forest-800);border-color:var(--positive-text);box-shadow:0 0 0 2px #1c5b4b1f}.past-due-work-row{background:var(--surface-subtle);border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(220px,1.15fr) minmax(360px,1.85fr);gap:24px;padding:20px;display:grid}.past-due-work-row h3,.past-due-work-row p,.past-due-work-row dl,.past-due-work-row dd{margin:0}.past-due-work-row h3{color:var(--heading);margin-top:4px;font-size:17px}.past-due-work-row p{color:var(--muted);margin-top:6px;font-size:12px}.past-due-work-link{color:var(--blue-700);text-underline-offset:3px;margin-top:12px;font-size:12px;font-weight:800;text-decoration-thickness:1px;display:inline-flex}.past-due-work-row dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 18px;display:grid}.past-due-work-row dl>div{gap:3px;min-width:0;display:grid}.past-due-work-row dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.past-due-work-row dd{overflow-wrap:anywhere;color:var(--accent-text);font-size:12px;font-weight:750}.past-due-aging-section{background:var(--surface-subtle);border:1px solid var(--line);border-radius:15px;margin:18px 28px 28px;padding:18px 20px}@media (min-width:681px) and (max-width:1100px){.team-row,.charge-row-heading{grid-template-columns:minmax(110px,1fr) 95px 78px 0 75px 90px 12px;gap:8px}.person-row,.charge-row-heading-people{grid-template-columns:38px minmax(110px,1fr) 65px 78px 0 75px 90px 12px;gap:8px}.team-row .row-comparison,.person-row .row-comparison{visibility:hidden}}@media (max-width:920px){.period-panel{flex-direction:column;align-items:stretch}.period-tabs{grid-template-columns:repeat(5,1fr);display:grid}.date-controls{justify-content:flex-end}.week-selector select{width:100%;min-width:0}.row-comparison{visibility:hidden}.summary-grid{grid-template-columns:1.4fr .7fr .7fr}.variance-callout{grid-column:1/-1}.past-due-controls{grid-template-columns:1fr 1fr}.past-due-client-search{grid-column:1/-1}.past-due-team-grid,.past-due-child-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.past-due-work-row{grid-template-columns:1fr}}@media (max-width:900px) and (min-width:681px){.app-header{gap:12px;padding-inline:12px}.brand-lockup>span:last-child{display:none}.header-meta,.account-controls{gap:6px}.account-identity{min-width:0;padding-inline:9px}.header-pill{min-height:36px}.data-badge,.version-stamp,.header-settings-link{padding:6px 8px;font-size:11px}.theme-toggle,.account-signout{padding:6px 8px}}@media (max-width:680px){.app-header{flex-wrap:wrap;min-height:0;padding-block:12px;padding-inline:18px}.settings-section-navigation{grid-template-columns:1fr}.settings-section-link{border-radius:18px}.integration-summary{grid-template-columns:1fr}.header-meta{flex-wrap:wrap;justify-content:flex-end;gap:9px;width:100%}.version-stamp,.header-settings-link{padding:6px 9px;font-size:11px}main,footer{width:min(100% - 28px,1180px)}main{padding-top:30px}.welcome-row{flex-direction:column;align-items:flex-start}.dashboard-view-tabs{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.dashboard-view-tabs button{padding-inline:8px}.reporting-context{text-align:left}.period-tabs{grid-template-columns:repeat(3,1fr)}.period-tabs button{padding-inline:8px}.date-controls,.custom-dates,.custom-dates label{flex-direction:column;align-items:stretch;width:100%}.apply-button{width:100%}.metric-heading,.section-heading,.detail-heading.split{flex-direction:column;align-items:flex-start}.team-sort-control{width:100%}.metric-heading,.summary-grid,.team-section{padding-inline:18px}.past-due-heading{align-items:flex-start}.past-due-heading,.past-due-heading-actions{flex-direction:column}.job-budget-heading,.job-budget-heading-actions{flex-direction:column;align-items:stretch}.job-budget-heading,.job-budget-controls,.job-budget-results-heading,.job-budget-rows{padding-inline:18px}.job-budget-heading-actions .data-badge,.job-budget-refresh{justify-content:center;width:100%}.job-budget-summary,.job-budget-controls{grid-template-columns:1fr}.job-budget-metric{border-right:0;border-bottom:1px solid var(--line)}.job-budget-metric:last-child{border-bottom:0}.job-budget-views{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.job-budget-scope{margin-inline:18px}.tax-budget-filters{grid-template-columns:1fr;margin-inline:18px}.budget-hours-filter-deck{margin-inline:18px}.budget-hours-filter-tier.primary,.budget-hours-filter-tier.secondary{grid-template-columns:1fr}.budget-hours-filter.month,.budget-hours-over-toggle{order:-1}.job-budget-row,.job-budget-row.detail{grid-template-columns:minmax(0,1fr) 12px}.job-budget-row.detail,.job-budget-row.has-actions,.job-budget-row.detail.has-actions{grid-template-columns:minmax(0,1fr)}.job-budget-row-main,.job-budget-row-main.detail{grid-template-columns:minmax(0,1fr) 12px}.job-budget-row-main.detail{grid-template-columns:minmax(0,1fr)}.job-budget-row-main .job-budget-row-metrics{grid-column:1/-1}.job-budget-link{justify-self:start;margin:0 15px 13px}.job-budget-row-metrics{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.past-due-heading-actions,.past-due-heading-actions .data-badge,.past-due-refresh{width:100%}.past-due-heading-actions{align-items:stretch}.past-due-kpis{grid-template-columns:1fr;padding-inline:18px}.past-due-controls{grid-template-columns:1fr;margin-inline:18px}.past-due-client-search{grid-column:auto}.past-due-active-filters,.past-due-breakdowns,.past-due-aging-section{margin-inline:18px}.past-due-client-list,.past-due-team-grid,.past-due-child-team-grid{grid-template-columns:1fr}.past-due-child-team-grid{margin-left:8px;padding-left:10px}.past-due-work-row dl{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr 1fr;gap:20px 14px}.attainment-block{border-right:0;border-bottom:1px solid var(--line);grid-column:1/-1;padding-bottom:20px;padding-right:0}.variance-callout{grid-column:1/-1}.coverage-note{margin-inline:18px}.team-row{grid-template-columns:minmax(0,1fr) auto 12px;gap:10px}.charge-row-heading,.charge-row-heading-people{justify-content:flex-end;display:flex}.team-progress{display:none}.detail-metrics{grid-template-columns:1fr 1fr}.detail-metrics>div:nth-child(2){border-right:0}.detail-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.person-row{grid-template-columns:38px minmax(0,1fr) auto 12px;gap:10px}.person-hours,.team-row .row-comparison,.person-row .row-comparison{display:none}.team-row .row-arrow,.person-row .row-arrow{grid-area:1/-2}.charge-extra-hours{text-align:left;grid-row:2;gap:4px;display:grid}.charge-extra-hours small{color:var(--muted);font-size:10px;display:block}.team-row .charge-leave{grid-column:1}.team-row .charge-client{grid-column:2/-1}.person-row .charge-leave{grid-column:2}.person-row .charge-client{grid-column:3/-1}.charge-row-heading .charge-leave-heading,.charge-row-heading .charge-client-heading{display:none}.person-attainment,.team-attainment{font-size:13px}.state-card{min-height:230px;padding:28px}.focused-detail-overlay{border:0;border-radius:0;width:100vw;height:100dvh;max-height:none;inset:0;transform:none}.focused-detail-header{padding:14px 16px 16px}.focused-detail-toolbar{gap:8px}.focused-detail-title-row{flex-direction:column;align-items:flex-start;gap:14px}.focused-team-navigation,.focused-team-navigation button{width:100%}.focused-team-navigation button{flex:1 1 0}.focused-detail-body{padding:18px 16px 28px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root[data-palette=classic]{--parent-row-surface:#d6e5dd}:root[data-palette=white]{--parent-row-surface:#dce2e9}:root[data-palette=cloud]{--parent-row-surface:#cadcee}:root[data-palette=charcoal]{--parent-row-surface:#343b43}:root[data-palette=slate]{--parent-row-surface:#354760}.theme-picker{flex:none;position:relative}:root[data-palette] .theme-picker summary{align-items:center;gap:8px;width:max-content;max-width:none;padding:7px 12px;font-size:14px;font-weight:600;list-style:none;display:flex}.theme-picker summary::-webkit-details-marker{display:none}.theme-options{z-index:200;width:240px;max-width:calc(100vw - 32px);color:var(--ink);background:var(--surface-raised);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin:0;padding:12px;position:absolute;top:calc(100% + 9px);right:0}.theme-options legend{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.theme-group-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:8px 8px 4px;font-size:11px}.theme-option{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 8px;font-size:14px;display:flex}.theme-option:hover{background:var(--surface-subtle)}.theme-option input{appearance:none;border:1px solid var(--border-interactive);background:var(--track-surface);cursor:pointer;border-radius:99px;flex:0 0 34px;width:34px;height:20px;margin:0}.theme-option input:before{content:"";background:var(--muted);border-radius:50%;width:14px;height:14px;margin:2px;transition:transform .12s;display:block}.theme-option input:checked{background:var(--forest-800);border-color:var(--forest-800)}.theme-option input:checked:before{background:#fff;transform:translate(14px)}.theme-option input:focus-visible{outline:3px solid var(--status-steady);outline-offset:3px}:root[data-palette=classic]{--canvas:#f2f6f3;--white:#fff;--surface-raised:#fff;--surface-subtle:#eaf1ed;--section-surface:#eaf1ed;--row-surface:#fff;--field-surface:#fff;--line:#d5e0da;--border-subtle:#d5e0da;--border-interactive:#68736f;--track-surface:#d5e0da;--group-outline:#d5e0da;--group-rail:#d5e0da;--ink:#102e28;--heading:#102e28;--muted:#68736f;--header-surface:#102e28;--header-ink:#fff;--surface-translucent:#fff}:root[data-palette=white]{--canvas:#f3f4f6;--white:#fff;--surface-raised:#fff;--surface-subtle:#edf0f3;--section-surface:#edf0f3;--row-surface:#fff;--field-surface:#fff;--line:#d9dee5;--border-subtle:#d9dee5;--border-interactive:#59636e;--track-surface:#d9dee5;--group-outline:#d9dee5;--group-rail:#d9dee5;--ink:#20262d;--heading:#20262d;--muted:#59636e;--header-surface:#fff;--header-ink:#20262d;--surface-translucent:#fff}:root[data-palette=cloud]{--canvas:#eaf0f7;--white:#f8fbff;--surface-raised:#f8fbff;--surface-subtle:#e4edf7;--section-surface:#e4edf7;--row-surface:#fff;--field-surface:#fff;--line:#cbd7e5;--border-subtle:#cbd7e5;--border-interactive:#52677d;--track-surface:#cbd7e5;--group-outline:#cbd7e5;--group-rail:#cbd7e5;--ink:#203449;--heading:#203449;--muted:#52677d;--header-surface:#f2f6fc;--header-ink:#203449;--surface-translucent:#f8fbff}:root[data-palette=charcoal]{--canvas:#151719;--white:#22262a;--surface-raised:#22262a;--surface-subtle:#1b1e22;--section-surface:#1b1e22;--row-surface:#2b3035;--field-surface:#2b3035;--line:#3d444b;--border-subtle:#3d444b;--border-interactive:#b9c0c9;--track-surface:#3d444b;--group-outline:#3d444b;--group-rail:#3d444b;--ink:#edf0f4;--heading:#edf0f4;--muted:#b9c0c9;--header-surface:#1b1e22;--header-ink:#edf0f4;--surface-translucent:#22262a}:root[data-palette=slate]{--canvas:#111827;--white:#1f2937;--surface-raised:#1f2937;--surface-subtle:#172131;--section-surface:#172131;--row-surface:#293548;--field-surface:#293548;--line:#425168;--border-subtle:#425168;--border-interactive:#bac8d9;--track-surface:#425168;--group-outline:#425168;--group-rail:#425168;--ink:#edf2f8;--heading:#edf2f8;--muted:#bac8d9;--header-surface:#172131;--header-ink:#edf2f8;--surface-translucent:#1f2937}:root[data-palette] body{background:var(--canvas)}:root[data-palette] .app-header,:root[data-palette] .settings-account-bar{background:var(--header-surface);color:var(--header-ink)}:root[data-palette] .account-controls,:root[data-palette] .account-controls a{color:var(--header-ink)}:root[data-palette] .theme-toggle{max-width:155px;font:inherit;border:1px solid var(--border-interactive);cursor:pointer;font-size:12px}:root[data-palette] .theme-toggle option,:root[data-palette] .theme-toggle optgroup{color:var(--ink);background:var(--surface-raised)}:root[data-palette=white] .brand-lockup small,:root[data-palette=cloud] .brand-lockup small,:root[data-palette=white] .account-identity small,:root[data-palette=cloud] .account-identity small,:root[data-palette=white] .version-stamp,:root[data-palette=cloud] .version-stamp{color:var(--muted)}:root[data-palette=white] .header-settings-link,:root[data-palette=cloud] .header-settings-link{color:#75480e;background:#fff1da}:root[data-palette=white] .data-badge.live,:root[data-palette=cloud] .data-badge.live{color:#27603d;background:#e7f4ec}:root[data-palette=white],:root[data-palette=cloud]{--accent-text:#203449;--positive-text:#27603d;--forest-100:#e5edf4}:root[data-palette=charcoal],:root[data-palette=slate]{--forest-100:var(--row-surface);--accent-text:var(--ink);--positive-text:#a7dabc}:root[data-palette] .metric-card .eyebrow,:root[data-palette] .settings-back-link{color:var(--status-steady)}:root[data-palette=classic] .metric-card{border-radius:14px;box-shadow:0 6px 20px #102e280f}:root[data-palette=classic] .team-row,:root[data-palette=classic] .person-row{border-radius:10px}:root[data-palette=charcoal] .period-tabs button small,:root[data-palette=slate] .period-tabs button small{background:var(--row-surface);color:var(--ink)}@media (min-width:681px) and (max-width:1100px){:root[data-palette] .brand-lockup>span:last-child{display:none}:root[data-palette] .header-meta{gap:6px}:root[data-palette] .app-header{gap:12px;padding-inline:12px}}:root .admin-data-refresh>label{gap:.5rem;max-width:20rem;margin-block:1.25rem;display:grid}.admin-refresh-row{border-top:1px solid var(--border,#cddbd7);justify-content:space-between;align-items:flex-start;gap:1.5rem;padding-block:1.25rem;display:flex}.admin-refresh-row>div{flex:1;min-width:0}.admin-refresh-row h2{margin:0 0 .4rem;font-size:1.1rem}.admin-refresh-row p{margin-block:.5rem}.admin-refresh-row>button{flex-shrink:0}.admin-refresh-row progress{width:100%}@media (max-width:700px){.admin-refresh-row{flex-direction:column}}.mem-sync-pill{white-space:nowrap;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:6px 12px;font-size:11px;line-height:1.2;display:inline-flex}.mem-sync-pill.synced{color:#e4fff1;background:#205546;border:1px solid #80c6aa}.mem-sync-pill.pending{color:#fff0ca;background:#55451f;border:1px solid #d5b967}
