:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#14243a;background:#f3f6fa;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:0;border-radius:8px;background:#1669d2;color:#fff;padding:10px 15px;font-weight:650;cursor:pointer}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:not-allowed}.secondary{background:#e5edf7;color:#25456a}.ghost{background:transparent;color:inherit;padding:8px}.danger{background:#c44141}.hidden{display:none!important}.shell{display:flex;min-height:100vh}.sidebar{width:230px;flex:none;background:#102b4d;color:#edf6ff;padding:24px 14px;display:flex;flex-direction:column}.brand{font-size:23px;font-weight:800;letter-spacing:-.8px;margin:0 12px 8px}.side-sub{color:#86acd3;text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:800;margin:0 12px 28px}.sidebar nav{display:grid;gap:3px}.sidebar nav button{width:100%;text-align:left;background:transparent;color:#b9cde4;border-radius:7px;font-weight:500;padding:10px 12px}.sidebar nav button.active,.sidebar nav button:hover{background:#23496f;color:#fff}.sidebar-foot{margin-top:auto;padding:20px 10px 0;border-top:1px solid #315172;color:#b9cde4;display:flex;align-items:center;justify-content:space-between}main{min-width:0;flex:1;padding:30px 36px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.topbar h1{font-size:29px;letter-spacing:-.7px;margin:3px 0}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#6990b9}.card{background:white;border:1px solid #dae4ef;box-shadow:0 2px 12px #1e3e6410;border-radius:12px;padding:20px;margin-bottom:18px}.toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:16px}.toolbar input,.toolbar select{min-width:150px}label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#49637f}input,select,textarea{width:100%;border:1px solid #cbd9e8;border-radius:7px;background:#fff;padding:9px 10px;color:#1d3148;outline:none}input:focus,select:focus,textarea:focus{border-color:#1669d2;box-shadow:0 0 0 3px #1669d21c}textarea{min-height:90px;resize:vertical}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#69819a;font-size:11px;letter-spacing:.7px;text-transform:uppercase;border-bottom:1px solid #dbe5ee;padding:10px}td{border-bottom:1px solid #ecf1f6;padding:11px 10px;vertical-align:middle}tr:last-child td{border-bottom:0}tr:hover td{background:#f8fbfe}.badge{display:inline-block;border-radius:99px;background:#e6f0ff;color:#1d62b3;padding:4px 8px;font-size:11px;font-weight:800}.badge.off{background:#fce9e9;color:#ad3737}.badge.good{background:#e1f6eb;color:#207851}.muted{color:#7890a7}.small{font-size:12px}.row-actions{display:flex;gap:5px}.row-actions button{padding:6px 9px;font-size:12px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.metric strong{display:block;font-size:29px;margin:5px 0}.metric span{font-size:12px;color:#7890a7;text-transform:uppercase;letter-spacing:1px}.notice{background:#e8f1ff;border:1px solid #b7d4f4;color:#174c86;padding:12px 16px;border-radius:8px;margin-bottom:18px}.notice.error{background:#fff0f0;border-color:#efb6b6;color:#a83939}.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#102b4d,#286295)}.login-card{width:min(380px,90vw);padding:32px}.login-card .brand{color:#1669d2;margin:0}.login-card h1{margin:22px 0 4px}.login-card p{color:#6e849b}.login-card label{margin:15px 0}.login-card button{width:100%;margin-top:7px}.error{color:#b83737!important}dialog{border:0;border-radius:12px;padding:0;width:min(720px,95vw);box-shadow:0 18px 70px #0d284c50}dialog::backdrop{background:#10233a99}dialog form{padding:24px}.modal-head,.modal-actions{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0 0 18px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid label.wide{grid-column:1/-1}.timeline{border-left:2px solid #c9d9ea;margin:8px 0 8px 10px;padding-left:22px}.timeline-item{position:relative;padding:0 0 19px}.timeline-item:before{content:'';position:absolute;left:-28px;top:4px;width:10px;height:10px;border-radius:50%;background:#2774c7}.timeline-item time{color:#7890a7;font-size:11px}.timeline-item strong{display:block}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:13px}.detail-grid div{border-bottom:1px solid #edf2f7;padding:7px 0}.detail-grid span{display:block;color:#7890a7;font-size:11px;text-transform:uppercase}.detail-grid strong{font-size:13px;overflow-wrap:anywhere}.actions-inline{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.empty{padding:30px;text-align:center;color:#7890a7}.pill{border-radius:8px;padding:6px 10px;background:#edf4fb;color:#375b83}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:850px){.sidebar{width:175px}main{padding:20px}.form-grid{grid-template-columns:1fr}}@media(max-width:620px){.shell{display:block}.sidebar{width:auto;padding:12px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap}.sidebar-foot{display:none}main{padding:16px}.topbar h1{font-size:23px}}
:root{color-scheme:light;font-family:'DM Sans',ui-sans-serif,system-ui,sans-serif;--bg:#f5f6f9;--surface:#fff;--surface-alt:#f8f9fc;--hover:#f1f3f9;--ink:#172039;--muted:#79839a;--line:#e6e9f0;--line-strong:#d6dce8;--accent:#6459df;--accent-strong:#5245cd;--accent-soft:#efedff;--accent-ink:#5146bd;--mint:#21b796;--mint-soft:#e2f8f0;--coral:#f17279;--coral-soft:#fff0ef;--amber:#e5a64d;--shadow:0 12px 36px #232c530b;color:var(--ink);background:var(--bg)}
:root[data-theme=dark]{--bg:#101321;--surface:#1a2032;--surface-alt:#22293d;--hover:#293249;--ink:#f0f2fb;--muted:#9ba7bd;--line:#30394e;--line-strong:#43506a;--accent:#958cff;--accent-strong:#8277f4;--accent-soft:#302b55;--accent-ink:#c3bdff;--mint:#4bd7b4;--mint-soft:#173c39;--coral:#ff999e;--coral-soft:#4a303b;--amber:#edba69;--shadow:0 16px 36px #0002}
button{background:var(--accent);border-radius:10px;transition:background .15s,transform .15s}button:hover{background:var(--accent-strong);transform:translateY(-1px)}button:disabled{transform:none}.secondary{background:var(--surface-alt);color:var(--accent-ink);border:1px solid var(--line)}.secondary:hover{background:var(--accent-soft)}.ghost{background:transparent;color:inherit}.ghost:hover{background:var(--hover)}.danger{background:var(--coral)}button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.sidebar{width:248px;background:#171d35;color:#f5f5ff;padding:31px 14px 20px}.brand,.login-logo{font-family:Manrope,ui-sans-serif,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.9px}.sidebar .brand{margin:0 13px 5px}.brand-mark{color:#9a90ff;font-size:26px;vertical-align:-2px;margin-right:4px}.logo-dot{color:#9a90ff}.side-sub{color:#838da8;font-size:10px;letter-spacing:2px;font-weight:800;margin:0 17px 55px}.nav-label{color:#707c98;font-size:10px;font-weight:800;letter-spacing:2px;margin:0 17px 13px}.sidebar nav button{color:#a9b1c9;border-radius:9px;font-weight:600;padding:10px 16px}.sidebar nav button.active{background:#36355e;color:#fff;box-shadow:inset 3px 0 #a69eff}.sidebar nav button:hover{background:#2a314c;color:#fff}.sidebar nav button.active:hover{background:#36355e}.sidebar-foot{padding:22px 8px 0;border-color:#313950;color:#c5cbe0;gap:9px}.sidebar-foot #who{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.profile-dot{width:30px;height:30px;display:grid;place-items:center;flex:none;border-radius:50%;background:#6f64d9;color:#fff;font-weight:800}
main{padding:38px clamp(22px,3vw,48px) 60px;max-width:1800px}.topbar{gap:24px;margin-bottom:31px}.topbar h1{font:800 clamp(25px,2.6vw,35px)/1.2 Manrope,sans-serif;letter-spacing:-1.4px}.eyebrow{font-size:10px;letter-spacing:2.25px;color:var(--accent-ink)}.topbar-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}#top-actions{display:flex;gap:8px;flex-wrap:wrap}.live-indicator{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:700;font-size:12px;margin-right:8px;white-space:nowrap}.live-indicator span{width:8px;height:8px;background:var(--mint);border-radius:50%;box-shadow:0 0 0 4px var(--mint-soft)}.theme-toggle{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow)}.theme-toggle:hover{background:var(--hover)}
.card{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow);border-radius:17px;padding:24px;margin-bottom:20px}.card h2{font:800 17px Manrope,sans-serif;letter-spacing:-.4px;margin:0 0 18px}.card-sub{color:var(--muted);font-size:12px;margin:-12px 0 18px}label{color:var(--muted)}input,select,textarea{background:var(--surface);border-color:var(--line-strong);border-radius:9px;color:var(--ink)}input::placeholder{color:var(--muted);opacity:.7}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}th{color:var(--muted);border-color:var(--line)}td{border-color:var(--line)}tr:hover td{background:var(--hover)}.badge{background:var(--accent-soft);color:var(--accent-ink)}.badge.off{background:var(--coral-soft);color:var(--coral)}.badge.good{background:var(--mint-soft);color:var(--mint)}.muted{color:var(--muted)}.notice{background:var(--accent-soft);border-color:var(--line-strong);color:var(--accent-ink)}.notice.error{background:var(--coral-soft);border-color:var(--coral);color:var(--coral)}.empty{color:var(--muted)}.pill{background:var(--accent-soft);color:var(--accent-ink)}.timeline{border-color:var(--line-strong)}.timeline-item:before{background:var(--accent)}.timeline-item time,.detail-grid span{color:var(--muted)}.detail-grid div{border-color:var(--line)}dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:17px}dialog::backdrop{background:#0c1323a8}
.metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:16px;margin-bottom:20px}.metric{position:relative;overflow:hidden;min-height:135px;margin-bottom:0}.metric:after{content:'';position:absolute;width:80px;height:80px;right:-35px;top:-35px;border-radius:50%;background:var(--accent-soft)}.metric strong{font:800 33px/1.15 Manrope,sans-serif;letter-spacing:-1px;margin:14px 0 5px}.metric span{font-size:11px;color:var(--muted);font-weight:800}.metric small{color:var(--muted);font-size:11px}.metric.accent{background:#655adc;border-color:#655adc;color:#fff}.metric.accent span,.metric.accent small{color:#dcd9ff}.metric.accent:after{background:#ffffff1b;box-shadow:0 0 0 24px #ffffff0a,0 0 0 48px #ffffff08}
.dashboard-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(112deg,#212440,#3d3c78 55%,#5b53af);color:#fff;border:0;min-height:154px;padding:30px 34px;overflow:hidden;position:relative}.dashboard-hero:after{content:'';position:absolute;width:250px;height:250px;right:12%;top:-130px;border:1px solid #ffffff40;border-radius:50%;box-shadow:0 0 0 45px #ffffff0b,0 0 0 90px #ffffff08;pointer-events:none}.dashboard-hero h2{color:#fff;font:800 clamp(21px,2.4vw,30px) Manrope,sans-serif;margin:6px 0;letter-spacing:-1px}.dashboard-hero p{color:#cbccec;margin:0}.hero-eyebrow{color:#b7b3ff;font-size:10px;letter-spacing:2.2px;font-weight:800}.hero-status{background:#ffffff18;color:#fff;border:1px solid #ffffff35;border-radius:99px;padding:10px 14px;white-space:nowrap;font-size:12px;font-weight:700;z-index:1}.hero-status i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:#65e0bb}
.chart-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,1fr);gap:20px}.chart-grid .card,.dashboard-split .card{min-width:0}.chart-legend{display:flex;gap:16px;align-items:center;color:var(--muted);font-size:11px;font-weight:700}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i,.outcome-list i{width:8px;height:8px;border-radius:50%;display:inline-block}.trend-chart{height:186px;display:flex;align-items:stretch;gap:12px;padding-top:10px;border-bottom:1px solid var(--line)}.trend-col{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:9px}.trend-stack{width:min(42px,100%);min-height:3px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:7px 7px 3px 3px;overflow:hidden;background:var(--surface-alt)}.trend-qualified{background:var(--accent)}.trend-other{background:#c9c4f7}:root[data-theme=dark] .trend-other{background:#4f4b86}.trend-col small{color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap}.trend-col.today small{color:var(--accent-ink)}.chart-note{font-size:11px;color:var(--muted);margin-top:14px}
.outcome-wrap{display:flex;align-items:center;justify-content:space-around;gap:16px;min-height:185px}.donut{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;flex:none}.donut-hole{width:105px;height:105px;border-radius:50%;background:var(--surface);display:grid;place-content:center;text-align:center}.donut-hole strong{font:800 27px Manrope,sans-serif}.donut-hole span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1px}.outcome-list{display:grid;gap:12px;min-width:110px}.outcome-list div{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px}.outcome-list strong{font-size:13px}.outcome-list span{display:flex;align-items:center;gap:7px;color:var(--muted)}.dashboard-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:20px}.capacity-item{padding:12px 0;border-bottom:1px solid var(--line)}.capacity-item:last-child{border-bottom:0}.capacity-head{display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:700;margin-bottom:10px}.capacity-head span:last-child{color:var(--muted);white-space:nowrap}.capacity-track{width:100%;height:7px;background:var(--surface-alt);border-radius:10px;overflow:hidden}.capacity-fill{height:100%;background:var(--mint);border-radius:inherit}.capacity-fill.high{background:var(--amber)}.capacity-fill.full{background:var(--coral)}.capacity-meta{color:var(--muted);font-size:11px;margin-top:7px}
.login-wrap{min-height:100vh;display:grid;grid-template-columns:minmax(350px,1fr) minmax(420px,1fr);background:var(--surface)}.login-art{background:radial-gradient(circle at 90% 10%,#655dc5,transparent 34%),linear-gradient(145deg,#1a2040 10%,#343063 65%,#5646a1);color:#fff;padding:clamp(38px,7vw,100px);display:flex;align-items:center;overflow:hidden;position:relative}.login-art:before,.login-art:after{content:'';width:420px;height:420px;border:1px solid #ffffff23;border-radius:50%;position:absolute;bottom:-225px;right:-160px;box-shadow:0 0 0 60px #ffffff06,0 0 0 120px #ffffff04}.login-art:after{width:190px;height:190px;bottom:auto;top:-130px;right:25%;box-shadow:0 0 0 45px #ffffff08}.login-art-inner{max-width:590px;z-index:1}.login-art .brand-mark{font-size:42px}.login-kicker{font-size:11px;color:#b7b1f0;font-weight:800;letter-spacing:2.5px;margin:32px 0 20px}.login-art h2{font:800 clamp(42px,5vw,72px)/1.14 Manrope,sans-serif;letter-spacing:-3px;margin:0 0 24px}.login-art h2 em{font-style:normal;color:#b9f7de}.login-art p{color:#ced0ea;font-size:16px;line-height:1.7;max-width:430px}.signal-art{height:118px;display:flex;align-items:center;gap:9px;margin:42px 0 32px;opacity:.75}.signal-art span{width:8px;border-radius:12px;background:linear-gradient(#b7f8dc,#a69bff);height:20px}.signal-art span:nth-child(2),.signal-art span:nth-child(11){height:46px}.signal-art span:nth-child(3),.signal-art span:nth-child(9){height:78px}.signal-art span:nth-child(4),.signal-art span:nth-child(8){height:34px}.signal-art span:nth-child(5),.signal-art span:nth-child(10){height:94px}.signal-art span:nth-child(6){height:64px}.signal-art span:nth-child(7){height:110px}.login-art-foot{color:#a9accd;font-size:10px;font-weight:800;letter-spacing:1.7px}.login-side{display:grid;place-items:center;position:relative;padding:60px 28px;background:var(--surface)}.login-theme{position:absolute;top:26px;right:30px}.login-card{width:min(420px,100%);padding:0;background:transparent;border:0;box-shadow:none}.login-logo{margin-bottom:62px}.login-logo .brand-mark{color:var(--accent)}.login-intro{margin-bottom:31px}.login-intro h1{font:800 clamp(28px,3.3vw,39px)/1.2 Manrope,sans-serif;letter-spacing:-1.5px;margin:11px 0}.login-intro p{color:var(--muted);font-size:14px;line-height:1.6;max-width:360px}.login-card label{margin:17px 0;color:var(--ink)}.login-card input{padding:14px 15px}.login-submit{width:100%;margin-top:17px;padding:15px 18px;display:flex;justify-content:space-between}.login-submit span{font-size:17px;line-height:1}.login-card .error{min-height:18px}.login-foot{border-top:1px solid var(--line);padding-top:24px;margin-top:33px;text-align:center;color:var(--muted);font-size:11px}.error{color:var(--coral)!important}
@media(max-width:1300px){.metrics-grid{grid-template-columns:repeat(3,1fr)}.chart-grid,.dashboard-split{grid-template-columns:1fr}}
@media(max-width:950px){.sidebar{width:196px}main{padding:24px}.live-indicator{display:none}.login-art{padding:40px}}
@media(max-width:700px){.login-wrap{grid-template-columns:1fr}.login-art{display:none}.login-side{min-height:100vh}.shell{display:block}.sidebar{width:auto;padding:13px 16px}.sidebar .brand{margin:0 0 5px}.side-sub,.nav-label,.sidebar-foot{display:none}.sidebar nav{display:flex;gap:3px;overflow-x:auto;margin-top:8px}.sidebar nav button{white-space:nowrap;width:auto;padding:9px 12px}main{padding:18px}.topbar{align-items:flex-start;flex-wrap:wrap}.metrics-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}}
@media(max-width:480px){.metrics-grid{gap:10px}.metric{min-height:116px;padding:18px}.metric strong{font-size:28px}.card{padding:18px}.dashboard-hero{padding:25px}.hero-status{display:none}.outcome-wrap{flex-wrap:wrap}}
.login-wrap{place-items:stretch}
@media(max-width:800px){.login-wrap{grid-template-columns:1fr}.login-art{display:none}.login-side{min-height:100vh}}

/* Phase 2 workspaces */
.workspace-intro,.workspace-hero{background:linear-gradient(125deg,var(--surface) 45%,var(--surface-alt));padding:28px 30px}
.workspace-intro h2,.workspace-hero h2{font:800 clamp(24px,3vw,34px)/1.18 Manrope,sans-serif;letter-spacing:-1px;margin:7px 0}
.workspace-intro p,.workspace-hero p{color:var(--muted);line-height:1.6;margin:5px 0 0}
.workspace-hero{display:flex;justify-content:space-between;align-items:center;gap:20px}
.workspace-tabs{display:flex;gap:7px;overflow-x:auto;border-bottom:1px solid var(--line);margin:4px 0 22px;padding:0 1px 8px}
.workspace-tabs,.sidebar nav{scrollbar-width:none}
.workspace-tabs::-webkit-scrollbar,.sidebar nav::-webkit-scrollbar{display:none}
.workspace-tabs button{flex:none;background:transparent;color:var(--muted);border-radius:9px;padding:10px 15px;white-space:nowrap}
.workspace-tabs button.active,.workspace-tabs button[aria-selected=true]{background:var(--accent);color:#fff}
.entity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.entity-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-height:165px;padding:23px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:12px;box-shadow:var(--shadow);color:var(--ink)}
.entity-card:hover{border-color:var(--accent);transform:translateY(-2px);filter:none}
.entity-card strong{font:800 20px Manrope,sans-serif;color:var(--ink)}
.entity-card>span:not(.entity-kicker){color:var(--muted);font-weight:500}
.entity-card small{margin-top:auto;color:var(--accent);font-weight:800}
.entity-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;font-weight:800;color:var(--accent)}
.workspace-metrics{margin-bottom:16px}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px;flex-wrap:wrap}
.section-head h2{margin:0 0 5px}.section-head p{margin:0}
.empty-state{border:1px dashed var(--line);border-radius:12px;padding:25px;color:var(--muted);background:var(--surface-alt)}
.relationship-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.relationship-row:last-child{border-bottom:0}
.text-link{background:transparent;color:var(--accent);padding:0;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.text-link:hover{filter:none;color:var(--ink)}
.inline-form{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}
.inline-form label{min-width:min(260px,100%)}
.sim-result{background:var(--surface-alt);border:1px solid var(--line);border-radius:12px;padding:17px;margin-top:15px;line-height:1.8}
.form-full{grid-column:1/-1}
.weekly-editor{display:grid;gap:14px}.weekly-editor fieldset{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.weekly-editor legend{font-weight:700;padding:0 6px}.schedule-window{display:grid;grid-template-columns:1fr 1fr auto auto;gap:12px;align-items:end;margin-top:14px}.schedule-window label{min-width:0}.assignment-group{border:1px solid var(--line);border-radius:14px;padding:18px;margin:18px 0}.assignment-group h3{margin:0}.audit-entry{border-bottom:1px solid var(--line);padding:16px 0;overflow-x:auto}.audit-entry summary{cursor:pointer;line-height:1.7}.field-error{color:var(--coral);margin-top:5px}.impact-preview{border-left:3px solid var(--accent);background:var(--surface-alt);padding:14px;line-height:1.6}.conflict-preview{max-height:220px;overflow:auto;white-space:pre-wrap;font-size:12px;background:var(--surface-alt);padding:14px}#form-feedback:not(:empty){background:var(--surface-alt);border:1px solid var(--line);padding:14px;border-radius:10px}#form-feedback button{margin:10px 8px 0 0}#refresh-status{font-size:12px;color:var(--muted);display:block;max-width:280px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input[aria-invalid=true]{border-color:var(--coral)}dialog{max-height:90vh;overflow:auto}.audit-entry table{margin-top:14px}.entity-card button{margin-top:12px}
.end-of-day{font-size:12px;display:flex;gap:6px;align-items:center;max-width:145px}.end-of-day input{width:18px;height:18px}.schedule-window{grid-template-columns:1fr 1fr 150px auto auto}
@media(max-width:700px){.schedule-window{grid-template-columns:1fr 1fr}.weekly-editor fieldset{padding:12px}.assignment-group{padding:12px}.form-grid{grid-template-columns:1fr}#refresh-status{max-width:180px}.topbar-right{flex-wrap:wrap}}
@media(max-width:700px){.workspace-hero{align-items:flex-start;flex-direction:column}.workspace-intro,.workspace-hero{padding:22px}.relationship-row{align-items:flex-start;flex-direction:column}.section-head{align-items:flex-start}}
/* Account access controls and a reachable sign-out button on narrow screens. */
#editor-fields label:has(input[type="checkbox"]){display:flex;align-items:center;gap:9px;padding:8px 0}
#editor-fields input[type="checkbox"]{width:18px;height:18px;flex:none;accent-color:var(--accent,#7565db)}
#grant-offers{display:grid;gap:5px}
.finance-metric strong{font-size:clamp(23px,2.3vw,32px);overflow-wrap:anywhere}
.finance-metric span{display:block;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.5;min-height:30px}
@media(min-width:701px){.sidebar{position:sticky;top:0;height:100vh;align-self:flex-start;overflow-y:auto}}
.table-wrap td small{display:block;opacity:.7;margin-top:4px}
@media(max-width:700px){.sidebar-foot{display:flex;padding:8px 0 0;margin-top:8px;border-top:1px solid #313950}.sidebar-foot .profile-dot{display:none}}

/* Reports keep charts paired with their exact tables. */
:root[data-theme=dark] { color-scheme:dark; }
.report-bar { display:grid; grid-template-columns:minmax(100px,1fr) 2fr minmax(70px,auto); gap:12px; align-items:center; margin:12px 0; font-size:13px; }
.report-bar>div { height:12px; border-radius:8px; background:linear-gradient(90deg,#2563eb,#14b8a6); min-width:2px; }
.report-bar>span { overflow-wrap:anywhere; }
.report-bar>strong { text-align:right; font-variant-numeric:tabular-nums; }
#report-filters { align-items:end; flex-wrap:wrap; }
#report-filters label { min-width:130px; flex:1; }
@media(max-width:600px) { .report-bar {grid-template-columns:minmax(70px,1fr) 1fr auto; gap:8px;} #report-filters label {min-width:120px;} }
.setup-account { margin-top:16px; padding:12px; border:1px solid var(--line); border-radius:12px; }
.setup-account summary { cursor:pointer; font-weight:600; overflow-wrap:anywhere; }
#import-json { font-family:ui-monospace,Consolas,monospace; font-size:12px; width:100%; }
#import-json[readonly] { opacity:.8; }
/* Network/account context remains readable across narrow layouts and themes. */
.workflow-breadcrumb { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-bottom:16px; }
.workflow-breadcrumb button { padding:6px 10px; }
.workflow-advanced { margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }
.workflow-advanced summary { cursor:pointer; margin-bottom:12px; }
#account-filter { flex-wrap:wrap; }
#account-filter label { min-width:150px; flex:1; }
#account-rows td { vertical-align:top; }
#account-rows small,.relationship-row small { display:block; margin-top:5px; overflow-wrap:anywhere; }
@media(max-width:640px) { .workflow-breadcrumb button { font-size:12px; } .workspace-hero { align-items:flex-start; } .relationship-row { flex-wrap:wrap; } }
.metrics-grid.workflow-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
.workflow-metrics .metric { min-height:115px; }
.workflow-metrics .metric strong { font-size:26px; overflow-wrap:anywhere; }
@media(max-width:1050px) { .metrics-grid.workflow-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:540px) { .metrics-grid.workflow-metrics { grid-template-columns:minmax(0,1fr); } }
.setup-steps { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; margin:20px 0; }
.setup-steps button { display:flex; flex-direction:column; align-items:flex-start; gap:8px; text-align:left; min-height:104px; background:var(--surface); color:var(--ink); border:1px solid var(--line); }
.setup-steps button.active { border-color:var(--accent); box-shadow:0 0 0 1px var(--accent); }
.setup-steps button span { border-radius:50%; padding:4px 9px; background:var(--accent); color:white; }
.setup-steps small { font-weight:400; opacity:.75; }
@media(max-width:1000px) { .setup-steps { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:540px) { .setup-steps { grid-template-columns:repeat(2,minmax(0,1fr)); } .setup-guide .section-head { flex-wrap:wrap; gap:12px; } }
.availability-card li { margin:10px 0; overflow-wrap:anywhere; }
.availability-card li button { margin-left:10px; }
.preview-stale { color:var(--coral); font-weight:700; }
#withdrawal-preview ul,#resume-preview ul { padding-left:20px; }
button:focus-visible,summary:focus-visible,a:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.finance-metric strong { overflow-wrap:anywhere; }
@media(max-width:640px) { .availability-card li button { display:block; margin:8px 0; } .section-head { flex-wrap:wrap; gap:12px; } }

/* Business workspace: visible sections and scrollable record tables. */
#nav{overflow-y:auto;max-height:calc(100vh - 190px)}
.nav-group{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:18px 12px 6px}
.private-field{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--border)}
.private-field pre{flex-basis:100%;white-space:pre-wrap;overflow-wrap:anywhere}
.card pre.code{white-space:pre-wrap;overflow-wrap:anywhere;max-height:600px;overflow:auto}
.table-wrap{max-width:100%;overflow-x:auto}
.table-wrap td{max-width:420px;overflow-wrap:anywhere}
#business-filter input[name=columns]{min-width:0;width:100%}
#available-columns{overflow-wrap:anywhere}
#view{min-width:0}
@media(max-width:700px){#nav{max-height:none}.private-field{align-items:flex-start}.nav-group{margin:8px} .card{min-width:0}}

.business-columns{display:flex;gap:12px;flex-wrap:wrap;min-width:0;border:1px solid var(--line);border-radius:12px;padding:14px}.business-columns label{display:flex;align-items:center;gap:6px}.business-columns input{width:auto}.business-columns legend{font-weight:600}

#business-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}#business-filter .form-full{grid-column:1/-1}#business-filter label{min-width:0}.business-columns label{font-size:12px}#business-filter p{margin:4px 0} @media(max-width:1100px){#business-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){#business-filter{grid-template-columns:1fr}}
.finance-series{display:grid;gap:12px;margin:20px 0}.series-row{display:grid;grid-template-columns:100px minmax(80px,1fr) 150px;gap:12px;align-items:center}.series-bar{height:12px;border-radius:6px;margin:4px 0}.series-bar.generated{background:var(--accent,#6374ee)}.series-bar.approved{background:#24ad91}.code{max-width:100%;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}#normal-campaign label{display:flex;flex-direction:column;gap:6px}#normal-campaign input[type=checkbox],#editor-fields input[type=checkbox]{width:auto}#business-dashboard .metric{text-align:left;cursor:pointer}#business-dashboard .metric strong{font-size:clamp(20px,2vw,30px)}@media(max-width:600px){.series-row{grid-template-columns:80px minmax(50px,1fr)}.series-row>span:last-child{grid-column:2}.relationship-row{flex-wrap:wrap}}
