:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f9f9f7;--surface:#fcfcfb;--ink:#0b0b0b;--ink-2:#52514e;--muted:#6f6d68;--grid:#e1e0d9;--axis:#c3c2b7;--border:#0b0b0b1a;--brand:#255d88;--on-brand:#fff;--link:#1c5cab;--track:#ecebe6;--wash:#255d8814;--s-booked:#104281;--s-pending:#2a78d6;--s-forecast:#86b6ef;--critical:#b42a2a;--warn-bg:#fdf3d7;--warn-ink:#5c4200}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--ink:#fff;--ink-2:#c3c2b7;--muted:#a09e97;--grid:#2c2c2a;--axis:#383835;--border:#ffffff1a;--brand:#173f5e;--link:#86b6ef;--track:#2c2c2a;--wash:#86b6ef1f;--s-booked:#9ec5f4;--s-pending:#3987e5;--s-forecast:#184f95;--critical:#f08a8a;--warn-bg:#3a2f10;--warn-ink:#f5dc9a}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--page);color:var(--ink);font:14px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}h1,h2{margin:0;font-weight:600}h1{white-space:nowrap;font-size:17px}h2{font-size:15px}a{color:var(--link)}code{font-size:.92em}button,select,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--s-pending);outline-offset:2px}.top{z-index:5;background:var(--brand);color:var(--on-brand);flex-wrap:wrap;align-items:center;gap:10px 24px;padding:10px 20px;display:flex;position:sticky;top:0}.controls{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.controls label{align-items:center;gap:8px;display:flex}.controls select{background:var(--surface);min-width:0;max-width:100%;color:var(--ink);border:1px solid #0000;border-radius:6px;padding:5px 8px}.session{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-left:auto;display:flex}.stamp{opacity:.9;font-size:13px}.badge{background:var(--warn-bg);color:var(--warn-ink);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.demo-strip{background:var(--warn-bg);color:var(--warn-ink);margin:0;padding:6px 20px;font-size:13px}main{max-width:1320px;margin:0 auto;padding:16px 20px 48px}main[aria-busy=true]{opacity:.6}.btn{cursor:pointer;border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:5px 12px}.btn:hover:not(:disabled){background:var(--wash)}.btn:disabled{opacity:.55;cursor:default}.btn.onbrand{color:var(--on-brand);background:0 0;border-color:#fff6}.btn.onbrand:hover:not(:disabled){background:#ffffff24}.btn.link{color:var(--link);background:0 0;border:0;margin-top:8px;text-decoration:underline}.check{cursor:pointer;align-items:center;gap:6px;display:inline-flex}main>.check{margin-bottom:12px}.tabs{border-bottom:1px solid var(--grid);flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.tab{cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px}.tab:hover{color:var(--ink)}.tab.on{color:var(--ink);border-bottom-color:var(--brand);font-weight:600}.pill{background:var(--warn-bg);color:var(--warn-ink);border-radius:999px;margin-left:6px;padding:1px 7px;font-size:12px;font-weight:600}.tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.tile{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.tile.clickable{cursor:pointer}.tile.clickable:hover{background:var(--wash)}.tile-label{color:var(--ink-2);font-size:13px}.tile-value{font-size:26px;font-weight:600;line-height:1.2}.tile-hint{color:var(--muted);font-size:12px}.rule{color:var(--ink-2);max-width:90ch;margin:12px 0 16px;font-size:13px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:16px;display:grid}.stack{gap:16px;display:grid}.card{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-width:0;padding:14px 16px}main>.card+.card,.grid-2+.card{margin-top:16px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 24px;margin-bottom:10px;display:flex}.note{color:var(--muted);margin:2px 0 0;font-size:12.5px;font-weight:400}.notice{background:var(--warn-bg);color:var(--warn-ink);border-radius:8px;margin:0 0 16px;padding:10px 14px}.notice.error .btn{color:var(--ink);margin-left:8px}.loading,.empty{color:var(--muted)}table{border-collapse:collapse;width:100%}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--grid);padding:6px 10px}thead th{color:var(--ink-2);white-space:nowrap;font-size:12.5px;font-weight:600}tbody th{font-weight:400}tfoot th,tfoot td{border-bottom:0;border-top:1px solid var(--axis);font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.zero{color:var(--muted)}.count{cursor:pointer;color:var(--link);font-variant-numeric:tabular-nums;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--link) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--link) 40%, transparent);background:0 0;border:0;border-radius:5px;margin:-1px -6px;padding:1px 6px;font-weight:600}.count:hover{background:var(--wash)}span.count.zero{color:var(--muted);cursor:default;font-weight:400;text-decoration:none}.status.critical{color:var(--critical);font-weight:600}.breakdown th{width:46%}.breakdown td.num{width:64px}.bd-bar{vertical-align:middle;padding-left:0;padding-right:0}.bd-fill{background:var(--s-pending);border-radius:0 4px 4px 0;min-width:2px;height:8px;display:block}.odd th .note{display:block}.odd tr.none th{color:var(--muted)}.odd td.num{width:80px}.dt-bar{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px;display:flex}.dt-search{border:1px solid var(--axis);background:var(--surface);border-radius:6px;flex:200px;max-width:320px;padding:5px 9px}.dt-count{color:var(--muted);margin-right:auto;font-size:13px}.dt-scroll{overflow-x:auto}.dt td{font-size:13px}.dt td:not(.num){overflow-wrap:anywhere;max-width:360px}.th-btn{cursor:pointer;color:inherit;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:600}.th-btn:hover{color:var(--ink);text-decoration:underline}.legend{color:var(--ink-2);flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}.legend li{align-items:center;gap:6px;display:flex}.swatch{border-radius:3px;width:12px;height:12px}.swatch.marker{background:var(--ink);border-radius:0;width:2px;height:14px;margin:0 5px}.s-booked{background:var(--s-booked)}.s-pending{background:var(--s-pending)}.s-forecast{background:var(--s-forecast)}.bars{gap:10px;margin:6px 0 18px;display:grid}.bar-row{grid-template-columns:minmax(80px,130px) minmax(120px,1fr) minmax(150px,auto);align-items:center;gap:12px;display:grid}.bar-label{color:var(--ink-2);overflow-wrap:anywhere}.bar-value{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.bar-value .of{color:var(--muted)}.bar-track{background:var(--track);border-radius:0 4px 4px 0;gap:2px;height:16px;display:flex;position:relative}.seg{cursor:pointer;border:0;flex:none;min-width:3px;height:100%;padding:0;position:relative}.seg:last-of-type{border-radius:0 4px 4px 0}.seg:hover{filter:brightness(1.12)}.budget-mark{background:var(--ink);width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px}.budget-mark:before{content:"";position:absolute;inset:0 -5px}[data-tip]:hover:after,.seg:focus-visible:after{content:attr(data-tip);z-index:3;white-space:nowrap;pointer-events:none;background:var(--ink);color:var(--page);border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.budget-table{margin-top:4px}.footnotes{color:var(--ink-2);max-width:100ch;margin:14px 0 0;padding-left:18px;font-size:12.5px}.footnotes li+li{margin-top:4px}.drawer-wrap{z-index:20;background:#00000059;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--surface);width:min(1180px,100%);height:100%;padding:16px 20px 32px;overflow-y:auto;box-shadow:-8px 0 24px #0000002e}.drawer:focus{outline:none}.drawer-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}@media (width<=640px){.top{padding:10px 16px}main{padding:12px 16px 40px}.session{margin-left:0}.bar-row{grid-template-columns:1fr auto}.bar-track{order:3;grid-column:1/-1}.drawer{padding:12px 16px 24px}}
