:root{--plane:#f3f5f7;--surface:#fcfcfd;--surface-2:#eef1f4;--ink:#0d1117;--ink-2:#4b5563;--muted:#7c8591;--grid:#e2e6ea;--axis:#c3c9d0;--ring:#0d111717;--accent:#0f5f8c;--zsm:#2a78d6;--bolt:#1baf7a;--indrive:#eb6834;--good:#0ca30c;--warn:#fab219;--serious:#ec835a;--crit:#d03b3b;--idle:#b7bec7;--good-ink:#006300;--crit-ink:#b42d2d;--warn-ink:#8a5a00;--plate-bg:#fff;--plate-ink:#0d3b66;--plate-edge:#9fb3c8;--heat-0:#eef1f4;--heat-1:#cde2fb;--heat-2:#86b6ef;--heat-3:#3987e5;--heat-4:#1c5cab;--heat-5:#0d366b;--hf-1:#0d1117;--hf-2:#0d1117;--hf-3:#fff;--hf-4:#fff;--hf-5:#fff;--display:"Archivo","Helvetica Neue",Arial,sans-serif;--body:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--plane:#0c0f13;--surface:#151a20;--surface-2:#1d242c;--ink:#f4f6f8;--ink-2:#c1c8d0;--muted:#8a939e;--grid:#262e37;--axis:#3a444f;--ring:#ffffff17;--accent:#6cb4e4;--zsm:#3987e5;--bolt:#199e70;--indrive:#d95926;--idle:#4a535e;--good-ink:#34c534;--crit-ink:#f07a7a;--warn-ink:#fab219;--plate-bg:#e9eef3;--plate-ink:#0d3b66;--plate-edge:#6b7f94;--heat-0:#1d242c;--heat-1:#184f95;--heat-2:#256abf;--heat-3:#3987e5;--heat-4:#6da7ec;--heat-5:#b7d3f6;--hf-1:#fff;--hf-2:#fff;--hf-3:#fff;--hf-4:#0d1117;--hf-5:#0d1117}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--plane:#0c0f13;--surface:#151a20;--surface-2:#1d242c;--ink:#f4f6f8;--ink-2:#c1c8d0;--muted:#8a939e;--grid:#262e37;--axis:#3a444f;--ring:#ffffff17;--accent:#6cb4e4;--zsm:#3987e5;--bolt:#199e70;--indrive:#d95926;--idle:#4a535e;--good-ink:#34c534;--crit-ink:#f07a7a;--warn-ink:#fab219;--plate-bg:#e9eef3;--plate-ink:#0d3b66;--plate-edge:#6b7f94;--heat-0:#1d242c;--heat-1:#184f95;--heat-2:#256abf;--heat-3:#3987e5;--heat-4:#6da7ec;--heat-5:#b7d3f6;--hf-1:#fff;--hf-2:#fff;--hf-3:#fff;--hf-4:#0d1117;--hf-5:#0d1117}*{box-sizing:border-box}body{background:var(--plane);color:var(--ink);font-family:var(--body);padding-block:20px 48px;padding-inline:clamp(16px,3vw,32px);font-size:14px;line-height:1.45}.wrap{grid-template-columns:minmax(0,1fr);gap:18px;max-width:1180px;margin:0 auto;display:grid}.wrap>*,.two>*{min-width:0}h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0}h1{letter-spacing:-.01em;font-size:clamp(24px,3.4vw,34px);font-weight:800}h2{font-size:17px;font-weight:700}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.sub{color:var(--ink-2)}.small{font-size:13px}.num{font-variant-numeric:tabular-nums}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;display:flex}header .meta{gap:4px;display:grid}.hdr-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tag{background:var(--surface);border:1px solid var(--ring);color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:inline-flex}.tag b{color:var(--ink);font-family:var(--display)}.src .dot{background:var(--idle);border-radius:50%;flex:none;width:8px;height:8px}.src[data-state=live] .dot{background:var(--good)}.src[data-state=loading] .dot{background:var(--warn)}.src[data-state=error] .dot{background:var(--crit)}.btn{appearance:none;border:1px solid var(--ring);background:var(--surface);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.btn:hover{border-color:var(--axis)}.btn[disabled]{opacity:.5;cursor:default}.notice{background:var(--surface);border:1px solid var(--ring);color:var(--ink-2);border-radius:10px;padding:10px 14px;font-size:13px}.panel{background:var(--surface);border:1px solid var(--ring);border-radius:14px;padding:18px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin-bottom:14px;display:flex}.prog{grid-template-columns:220px minmax(0,1fr);gap:22px;display:grid}.prog-stats{align-content:start;gap:14px;display:grid}.ps .v{font-family:var(--display);font-size:24px;font-weight:800;line-height:1.1}.ps .n{color:var(--ink-2);font-size:12.5px}.trend-wrap{overflow-x:auto}.trend{grid-template-columns:44px minmax(0,1fr);gap:6px;min-width:620px;display:grid}.yax{height:170px;color:var(--muted);font-size:11px;position:relative}.yax span{position:absolute;right:0;transform:translateY(50%)}.cols{border-bottom:1px solid var(--axis);grid-template-columns:repeat(15,minmax(0,1fr));align-items:end;gap:6px;height:170px;display:grid;position:relative}.cols .gl{border-top:1px solid var(--grid);pointer-events:none;position:absolute;left:0;right:0}.cols .tl{border-top:2px dashed var(--ink);opacity:.7;pointer-events:none;position:absolute;left:0;right:0}.cols .tl-lbl{background:var(--surface);padding-inline:4px;font-size:11px;font-weight:700;position:absolute;right:0;transform:translateY(-110%)}.wcol{cursor:pointer;background:0 0;border:0;border-radius:6px 6px 0 0;flex-direction:column;justify-content:flex-end;align-items:stretch;height:100%;padding:0;display:flex;position:relative}.wcol:hover{background:color-mix(in srgb,var(--ink) 5%,transparent)}.wcol .stack{flex-direction:column-reverse;gap:2px;margin-inline:18%;display:flex}.wcol .stack i:last-child{border-radius:4px 4px 0 0}.wcol .val{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;margin-bottom:4px;font-size:11px;font-weight:700}.wcol .ph{border:1.5px dashed var(--axis);border-bottom:0;border-radius:4px 4px 0 0;height:10px;margin-inline:18%}.wcol[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 12%,transparent)}.wcol[aria-pressed=true] .val{color:var(--accent)}.xl{color:var(--muted);text-align:center;grid-template-columns:repeat(15,minmax(0,1fr));gap:6px;padding-top:6px;font-size:11px;display:grid}.xl span.sel{color:var(--ink);font-weight:700}.selbar{gap:10px;display:grid}.selbar-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.weeknav{align-items:center;gap:6px;display:flex}.weeknav .btn{padding:6px 10px}.days{grid-template-columns:1.25fr repeat(7,minmax(0,1fr));gap:6px;display:grid}.day{appearance:none;border:1px solid var(--ring);background:var(--surface);text-align:left;cursor:pointer;border-radius:10px;gap:4px;min-width:0;padding:8px 8px 9px;display:grid}.day:hover{border-color:var(--axis)}.day .dn{font-family:var(--display);white-space:nowrap;font-size:13px;font-weight:700}.day .dv{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.day .spark{background:var(--surface-2);border-radius:2px;height:4px;overflow:hidden}.day .spark i{background:var(--accent);border-radius:2px;height:100%;display:block}.day.wk{background:var(--surface-2)}.day[aria-pressed=true]{background:var(--ink);color:var(--plane);border-color:var(--ink)}.day[aria-pressed=true] .dv{color:color-mix(in srgb,var(--plane) 70%,transparent)}.day[aria-pressed=true] .spark{background:color-mix(in srgb,var(--plane) 20%,transparent)}.day[aria-pressed=true] .spark i{background:var(--plane)}.kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.kpi{background:var(--surface);border:1px solid var(--ring);border-radius:14px;align-content:start;gap:6px;padding:14px 16px;display:grid}.kpi .v{font-family:var(--display);letter-spacing:-.01em;font-size:clamp(22px,2.6vw,30px);font-weight:800;line-height:1.05}.kpi .n{color:var(--ink-2);font-size:12.5px}.kpi.hero{background:var(--ink);color:var(--plane);border-color:var(--ink)}.kpi.hero .eyebrow,.kpi.hero .n{color:color-mix(in srgb,var(--plane) 72%,transparent)}.gauge{background:var(--surface-2);border-radius:4px;height:8px;position:relative;overflow:hidden}.kpi.hero .gauge{background:color-mix(in srgb,var(--plane) 18%,transparent)}.gauge i{background:var(--accent);border-radius:4px;position:absolute;inset:0 auto 0 0}.kpi.hero .gauge i{background:var(--plane)}.two{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;display:grid}.prov-split{background:var(--surface);border-radius:8px;gap:2px;height:34px;display:flex;overflow:hidden}.prov-split span{color:#fff;white-space:nowrap;align-items:center;min-width:0;padding-inline:10px;font-size:12.5px;font-weight:600;display:flex;overflow:hidden}.prov-split .empty{background:var(--surface-2);color:var(--muted);flex:1}.provs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.prov{border:1px solid var(--ring);border-radius:12px;align-content:start;gap:6px;padding:12px 14px;display:grid}.prov .nm{align-items:center;gap:8px;font-weight:600;display:flex}.sw{border-radius:3px;flex:none;width:10px;height:10px;display:inline-block}.prov .t{font-family:var(--display);font-size:26px;font-weight:800;line-height:1}.prov .t small{color:var(--ink-2);margin-left:4px;font-size:13px;font-weight:600}.prov .g{color:var(--ink-2);font-size:13px}.flag{color:var(--crit-ink);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.bands{gap:8px;display:grid}.band{grid-template-columns:150px minmax(0,1fr) 34px;align-items:center;gap:10px;font-size:13px;display:grid}.band .lbl{color:var(--ink-2);align-items:center;gap:8px;display:flex}.band .track{background:var(--surface-2);border-radius:4px;height:18px;overflow:hidden}.band .track i{border-radius:0 4px 4px 0;height:100%;display:block}.band .c{font-family:var(--display);text-align:right;font-weight:700}.ico{color:#fff;border-radius:50%;flex:none;place-items:center;width:16px;height:16px;font-size:10px;font-weight:800;line-height:1;display:inline-grid}.legend{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:12.5px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend .tl{border-left:2px dashed var(--ink);width:0;height:12px}.vc-axis,.vrow{grid-template-columns:118px minmax(0,190px) minmax(0,1fr) 46px 90px 82px;align-items:center;gap:12px;display:grid}.vc-axis{color:var(--muted);border-bottom:1px solid var(--grid);padding-bottom:6px;font-size:11px}.vc-axis .ticks{height:14px;position:relative}.vc-axis .ticks span{white-space:nowrap;position:absolute;transform:translate(-50%)}.vc-axis .ticks span.tgt{color:var(--ink);font-weight:700}.vc-axis .r{text-align:right}.vrows{display:grid}.vrow{border-bottom:1px solid var(--grid);padding-block:7px}.vrow:last-child{border-bottom:0}.vrow.idle{color:var(--muted)}.plate{font-family:var(--mono);letter-spacing:.04em;background:var(--plate-bg);color:var(--plate-ink);border:1.5px solid var(--plate-edge);white-space:nowrap;border-radius:5px;justify-self:start;padding:3px 7px;font-size:12px;font-weight:600;box-shadow:inset 0 -2px #0d3b6614}.drv{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.drv small{color:var(--muted);text-overflow:ellipsis;font-size:11.5px;display:block;overflow:hidden}.track{height:22px;position:relative}.track .grid{border-left:1px solid var(--grid);position:absolute;top:-7px;bottom:-7px}.track .target{border-left:2px dashed var(--ink);opacity:.75;z-index:2;position:absolute;top:-7px;bottom:-7px}.bar{gap:2px;display:flex;position:absolute;inset:3px auto 3px 0}.seg{min-width:3px;height:100%}.seg:last-child{border-radius:0 4px 4px 0}.idle-txt{color:var(--muted);align-items:center;font-size:12px;font-style:italic;display:flex;position:absolute;inset:0}.cell-r{text-align:right;font-variant-numeric:tabular-nums}.gross{font-weight:600}.pill{background:var(--surface-2);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;justify-self:end;align-items:center;gap:5px;padding:3px 8px 3px 4px;font-size:12px;font-weight:700;display:inline-flex}.rmk{color:var(--warn-ink);font-weight:600}.heat-wrap{overflow-x:auto}.heat{grid-template-columns:118px repeat(7,minmax(54px,1fr)) 70px;gap:3px;min-width:640px;font-size:12px;display:grid}.heat .h{color:var(--muted);text-align:center;padding-bottom:4px;font-size:11px;font-weight:600}.heat .h.sel{color:var(--ink)}.heat .rl{align-items:center;display:flex}.heat .c{background:var(--heat-0);height:28px;color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums;border:0;border-radius:4px;place-items:center;font-size:11.5px;font-weight:600;display:grid}.heat .c.sel{box-shadow:inset 0 0 0 2px var(--ink)}.heat .wkc{text-align:right;font-variant-numeric:tabular-nums;align-self:center;font-weight:700}.scale{color:var(--muted);flex-wrap:wrap;align-items:center;gap:3px;font-size:11.5px;display:flex}.scale i{border-radius:3px;width:26px;height:12px;display:inline-block}.tbl-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:820px;font-size:13px}th,td{text-align:right;border-bottom:1px solid var(--grid);white-space:nowrap;padding:8px 10px}th{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600}th:first-child,td:first-child,th:nth-child(2),td:nth-child(2){text-align:left}th[aria-sort=descending]:after{content:" ▾"}th[aria-sort=ascending]:after{content:" ▴"}td{font-variant-numeric:tabular-nums}tfoot td{border-top:2px solid var(--axis);border-bottom:0;font-weight:700}.zero{color:var(--muted)}.empty-state{text-align:center;color:var(--ink-2);justify-items:center;gap:6px;padding:36px 16px;display:grid}.empty-state b{font-family:var(--display);color:var(--ink);font-size:18px}#tip{pointer-events:none;z-index:50;background:var(--ink);color:var(--plane);border-radius:8px;max-width:260px;padding:8px 10px;font-size:12px;line-height:1.4;position:fixed;box-shadow:0 6px 20px #0000002e}#tip b{font-family:var(--display)}footer{color:var(--muted);gap:4px;font-size:12px;display:grid}@media (width<=980px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi.hero{grid-column:1/-1}.two,.prog{grid-template-columns:1fr}.prog-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.vc-axis,.vrow{grid-template-columns:104px minmax(0,1fr) 40px 84px 76px}.vc-axis .dh,.vrow .drv{display:none}}@media (width<=640px){.days{grid-template-columns:repeat(4,minmax(0,1fr))}.day.wk{grid-column:1/-1}.provs{grid-template-columns:1fr}.band{grid-template-columns:110px minmax(0,1fr) 28px}.band .lbl>span:last-child{display:none}.vc-axis{grid-template-columns:1fr}.vc-axis>:not(.ticks){display:none}.vrow{grid-template-columns:auto 1fr auto;grid-template-areas:"p g a""t t t""d d n";row-gap:6px}.vrow .plate{grid-area:p}.vrow .gross{grid-area:g}.vrow .pill{grid-area:a}.vrow .track{grid-area:t}.vrow .trips{grid-area:n}.vrow .drv{grid-area:d;font-size:12px;display:block}.vrow .drv small{display:none}}@media (prefers-reduced-motion:no-preference){.gauge i,.band .track i,.prov-split span,.wcol .stack i{transition:all .35s}}label.btn{align-items:center;display:inline-flex}body.dropping .wrap{outline:2px dashed var(--accent);outline-offset:6px;border-radius:12px}body{min-height:100vh;margin:0;padding:0}:root{--danger:var(--crit-ink);--side-w:240px}.shell{grid-template-columns:var(--side-w) minmax(0,1fr);min-height:100vh;display:grid}.side{background:var(--surface);border-right:1px solid var(--ring);flex-direction:column;gap:18px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.side-brand{align-items:center;gap:10px;padding-inline:6px;display:flex}.brand-mark{background:var(--accent);width:34px;height:34px;color:var(--plane);font-family:var(--display);border-radius:9px;flex:none;place-items:center;font-size:18px;font-weight:800;display:grid}.brand-name{font-family:var(--display);letter-spacing:-.01em;font-size:17px;font-weight:800}.side-close{margin-left:auto;padding:4px 10px;display:none}.side-nav{flex:1;align-content:start;gap:16px;display:grid}.side-group{gap:2px;display:grid}.side-group .eyebrow{padding:0 10px 4px}.side-link{color:var(--ink-2);border-radius:8px;gap:1px;padding:7px 10px;font-weight:500;text-decoration:none;display:grid}.side-link:hover{background:var(--surface-2);color:var(--ink)}.side-link.active{background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--ink);font-weight:600}.side-user{border-top:1px solid var(--ring);gap:8px;padding-top:12px;display:grid}.user-name{color:var(--ink);font-weight:600}.side-scrim{display:none}.main{min-width:0;padding-block:24px 48px;padding-inline:clamp(16px,3vw,32px)}.topbar{display:none}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.side{width:min(var(--side-w),85vw);z-index:20;transition:transform .18s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.shell[data-menu=open] .side{transform:none;box-shadow:0 0 40px #00000040}.shell[data-menu=open] .side-scrim{z-index:10;background:#00000059;display:block;position:fixed;inset:0}.side-close{display:inline-flex}.topbar{align-items:center;gap:12px;margin-bottom:16px;display:flex}.main{padding-block:14px 40px}}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--plane)}.btn.primary:hover{filter:brightness(1.08)}.btn.danger{color:var(--danger)}.btn.ghost{background:0 0;border-color:#0000}.link{color:var(--accent);text-decoration:none}.link:hover{text-decoration:underline}.form{gap:14px;display:grid}.field{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.field>span,.field legend{color:var(--ink-2);margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.field input:not([type=radio]),.field select{font:inherit;color:var(--ink);background:var(--plane);border:1px solid var(--axis);border-radius:9px;width:100%;padding:9px 11px}.field input:focus{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.radio{cursor:pointer;align-items:flex-start;gap:8px;padding:4px 0;display:flex}.radio input{margin-top:3px}.form-error{color:var(--danger);background:color-mix(in srgb,var(--crit) 9%,transparent);border-radius:9px;padding:9px 12px;font-size:13px}.notice.ok{color:var(--good-ink);background:color-mix(in srgb,var(--good) 9%,transparent);border-color:#0000}.form-actions{flex-wrap:wrap;gap:8px;display:flex}.form .btn.primary{padding:9px 14px;font-size:14px}.auth{place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{gap:14px;width:min(400px,100%);padding:26px;display:grid}.auth-card h1{margin-top:8px;font-size:24px}.auth-card .sub{margin:0}.auth-card .side-brand{padding:0}.panel.narrow{max-width:520px}.empty{color:var(--muted);text-align:center;padding:28px 12px}.table-wrap{overflow-x:auto}table.list{min-width:640px}table.list th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--grid);padding:8px 10px;font-size:11px;font-weight:600}table.list td{border-bottom:1px solid var(--grid);vertical-align:middle;padding:10px}table.list tr:last-child td{border-bottom:0}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.cap{text-transform:capitalize}table.list th,table.list td{text-align:left;white-space:normal;cursor:default}table.list.clickable tbody tr{cursor:pointer}table.list.clickable tbody tr:hover td{background:color-mix(in srgb,var(--ink) 3%,transparent)}table.list tr.dim td{color:var(--muted)}table.list tr.current td{background:color-mix(in srgb,var(--good) 5%,transparent)}.name-cell{align-items:center;gap:8px;display:inline-flex}.mono{font-family:var(--mono);font-size:12.5px}.block{display:block}.dim{opacity:.65}.warn-text{color:var(--warn-ink);font-weight:600}a{color:inherit}a:hover{color:var(--accent)}.plate{text-decoration:none;display:inline-block}.plate-lg{border-radius:7px;padding:4px 12px;font-size:clamp(20px,3vw,28px)}.back-link{color:var(--ink-2);justify-self:start;font-size:13px;text-decoration:none}.back-link:hover{color:var(--accent)}.badge{background:var(--surface-2);color:var(--ink-2);text-transform:capitalize;white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-block}.badge[data-tone=good]{background:color-mix(in srgb,var(--good) 14%,transparent);color:var(--good-ink)}.badge[data-tone=warn]{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn-ink)}.chip{border:1px solid var(--ring);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.assign-list{gap:4px;display:grid}.assign-list>div{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.toolbar{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:14px;display:flex}.toolbar .field{grid-auto-flow:column;align-items:center;gap:8px}.toolbar .field>span{margin:0}.toolbar .count{margin-left:auto}.search,.toolbar select,.field select,.field textarea,.toolbar input[type=date]{font:inherit;color:var(--ink);background:var(--plane);border:1px solid var(--axis);border-radius:9px;padding:8px 11px}.search{flex:220px;min-width:0}.field select,.field textarea{width:100%}.field textarea{resize:vertical}.segmented{background:var(--surface-2);border-radius:10px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segmented button{appearance:none;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 11px;font-size:13px;font-weight:600}.segmented button[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px var(--ring)}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.toggle{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.toggle input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin-top:3px}.toggle span{gap:1px;display:grid}.toggle b{font-size:13.5px;font-weight:600}.check-row{flex-wrap:wrap;gap:8px 16px;display:flex}.check{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.check input{accent-color:var(--accent)}.daypick{flex-wrap:wrap;gap:6px;display:flex}.daypick button{appearance:none;border:1px solid var(--axis);background:var(--plane);cursor:pointer;border-radius:8px;min-width:48px;padding:6px 10px;font-size:13px;font-weight:600}.daypick button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--plane)}.color-input{align-items:center;gap:8px;display:flex}.color-input input[type=color]{border:1px solid var(--axis);background:var(--plane);cursor:pointer;border-radius:9px;flex:none;width:42px;height:38px;padding:2px}.preview-row{align-items:center;gap:8px;font-size:13px;display:flex}.modal{background:var(--surface);color:var(--ink);border:0;border-radius:16px;width:min(520px,100vw - 32px);max-height:calc(100vh - 48px);padding:0;box-shadow:0 24px 60px #00000040}.modal.wide{width:min(680px,100vw - 32px)}.modal::backdrop{background:#0a0e1473}.modal form{display:contents}.modal-head{border-bottom:1px solid var(--grid);background:var(--surface);z-index:1;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex;position:sticky;top:0}.modal-body{gap:14px;padding:18px 20px;display:grid}.modal-foot{border-top:1px solid var(--grid);background:var(--surface);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex;position:sticky;bottom:0}.modal-foot .foot-left{margin-right:auto}.facts{grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;margin:0;font-size:13.5px;display:grid}.facts dt{color:var(--muted)}.facts dd{margin:0}.slot-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.slot-list li{border-bottom:1px solid var(--grid);flex-wrap:wrap;align-items:center;gap:6px 10px;padding-bottom:10px;display:flex}.slot-list li:last-child{border-bottom:0;padding-bottom:0}.slot-list a{text-decoration:none}.card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.model-card{border-top:4px solid;align-content:start;gap:12px;display:grid}.model-card .panel-head{margin-bottom:0}.model-card p{margin:0}.timeline{border-left:2px solid var(--grid);gap:10px;margin:0;padding:0 0 0 14px;list-style:none;display:grid}.timeline li{gap:1px;display:grid;position:relative}.timeline li:before{content:"";background:var(--axis);border-radius:50%;width:10px;height:10px;position:absolute;top:5px;left:-20px}.timeline li[data-current=true]:before{background:var(--good)}.timeline li[data-future=true]:before{background:var(--warn)}.tl-date{color:var(--muted);font-size:12.5px}.band-scale{border-radius:6px;gap:2px;height:12px;margin-bottom:14px;display:flex;overflow:hidden}.handover{background:var(--surface-2);border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:12px 14px;display:grid}.handover>div{gap:1px;display:grid}.handover>span{color:var(--muted);font-size:20px}@media (width<=980px){.two{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.form-row{grid-template-columns:minmax(0,1fr)}.toolbar .count{width:100%;margin-left:0}.handover{grid-template-columns:1fr}.handover>span{display:none}}.dash{grid-template-columns:minmax(0,1fr);gap:18px;transition:opacity .15s;display:grid}.dash>*{min-width:0}.dash.busy{opacity:.6}.kpi .of{color:var(--muted);font-size:.55em;font-weight:700}.muted{color:var(--muted)}.facts.big{gap:12px 20px;font-size:15px}.facts.big dd{font-family:var(--display);font-weight:700}.vc-scroll{overflow-x:auto}.vc-scroll>*{min-width:720px}.day[disabled]{opacity:.45;cursor:default}.open-dot{color:var(--warn-ink);font-size:11px;font-weight:600}.day[aria-pressed=true] .open-dot{color:inherit}.heat .h.r{text-align:right}.heat .c.blank{cursor:default;background:0 0}.heat .c.oos{background:repeating-linear-gradient(135deg,var(--surface-2) 0 4px,transparent 4px 8px);color:var(--muted)}.heat .c.missing{border:1.5px dashed var(--axis);color:var(--muted);background:0 0}.heat .c.open{outline:1.5px dashed var(--warn);outline-offset:-3px}.scale span{align-items:center;gap:4px;margin-right:6px;display:inline-flex}.scale i.oos{background:repeating-linear-gradient(135deg,var(--axis) 0 3px,transparent 3px 6px)}.split-table td{vertical-align:top}.split-table .num-col{text-align:right}.drv-cell{gap:3px;min-width:150px;display:grid}.drv-name{font-weight:600;text-decoration:none}.share{background:var(--surface-2);border-radius:3px;height:5px;display:block;overflow:hidden}.share i{background:var(--accent);border-radius:3px;height:100%;display:block}table.detail.clickable-rows tbody tr{cursor:pointer}table.detail.clickable-rows tbody tr:hover td{background:color-mix(in srgb,var(--ink) 3%,transparent)}table.detail th{cursor:pointer}.wcol .stack{flex-direction:column-reverse;gap:2px;display:flex}.wcol .stack i{min-height:2px;display:block}.wtgt{border-top:2px dashed var(--ink);opacity:.7;pointer-events:none;position:absolute;left:10%;right:10%}.dash footer{line-height:1.5}.wval{margin:0;position:absolute;left:0;right:0}.entry-date{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.entry-date input[type=date]{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--ring);border-radius:999px;padding:6px 12px}.entry-week{grid-template-columns:repeat(7,minmax(0,1fr))}.ok-text{color:var(--good-ink);font-weight:600}.entry-summary{color:var(--ink-2);flex-wrap:wrap;align-items:baseline;gap:6px 20px;font-size:13.5px;display:flex}.entry-summary b{color:var(--ink);font-family:var(--display)}.entry-summary .hint{margin-left:auto}.entry-wrap{border:1px solid var(--ring);background:var(--surface);border-radius:14px;max-height:calc(100vh - 150px);overflow:auto}table.entry{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:13px}table.entry th,table.entry td{border-bottom:1px solid var(--grid);white-space:nowrap;text-align:left;cursor:default;padding:0}table.entry thead th{z-index:3;background:var(--surface);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:8px;font-size:11px;font-weight:600;position:sticky;top:0}table.entry thead tr:nth-child(2) th{top:33px}table.entry th.pgroup{text-align:center;border-left:1px solid var(--grid);color:var(--ink-2)}table.entry th.pgroup .sw{vertical-align:-1px;margin-right:6px}table.entry th.sub-h{text-align:right;padding:6px 8px}table.entry .sticky-1,table.entry .sticky-2{background:var(--surface);z-index:2;position:sticky}table.entry thead .sticky-1,table.entry thead .sticky-2{z-index:4}table.entry .sticky-1{min-width:120px;left:0}table.entry .sticky-2{border-right:1px solid var(--grid);min-width:190px;max-width:220px;left:120px}table.entry tbody tr.vfirst td{border-top:2px solid var(--grid)}table.entry .vcell{vertical-align:top;padding:8px 10px}table.entry .vcell small{margin-top:4px;font-size:11.5px;display:block}table.entry .dcell{padding:6px 10px}table.entry .dname{text-overflow:ellipsis;align-items:center;gap:6px;font-weight:600;display:flex;overflow:hidden}table.entry .slotno{background:var(--surface-2);color:var(--ink-2);border-radius:4px;padding:1px 5px;font-size:10.5px;font-weight:700}table.entry .rstate{text-overflow:ellipsis;max-width:200px;min-height:16px;font-size:11.5px;display:block;overflow:hidden}table.entry td.in input{width:72px;font:inherit;font-variant-numeric:tabular-nums;text-align:right;color:var(--ink);background:0 0;border:0;padding:10px 8px}table.entry td.in.minutes input{width:60px}table.entry td.in.trips input{width:52px}table.entry td.in{border-left:1px solid #0000}table.entry td.in.minutes{border-left-color:var(--grid)}table.entry td.in input:focus{outline:2px solid var(--accent);outline-offset:-2px;background:var(--plane)}table.entry td.in input:disabled{color:var(--ink-2)}table.entry td.in.invalid{background:color-mix(in srgb,var(--crit) 14%,transparent)}table.entry td.in.invalid input{color:var(--crit-ink);font-weight:600}table.entry tr.missing td.dcell{box-shadow:inset 3px 0 0 var(--warn)}table.entry tr.missing td.in{background:color-mix(in srgb,var(--warn) 7%,transparent)}table.entry tr.row-error td.dcell{box-shadow:inset 3px 0 0 var(--crit)}table.entry tr.oos td.in{background:repeating-linear-gradient(135deg,transparent 0 6px,color-mix(in srgb,var(--ink) 4%,transparent) 6px 12px)}table.entry td.tot{border-left:1px solid var(--grid);min-width:96px;padding:6px 10px}table.entry td.tot small{font-size:11px;display:block}table.entry .r{text-align:right}table.entry .rcell{vertical-align:top;border-left:1px solid var(--grid);padding:6px 8px}table.entry .remark{gap:4px;min-width:190px;display:grid}table.entry .remark select,table.entry .remark input{font:inherit;color:var(--ink);background:var(--plane);border:1px solid var(--grid);border-radius:7px;padding:5px 7px;font-size:12.5px}table.entry tfoot td{background:var(--surface-2);border-top:2px solid var(--axis);z-index:2;padding:9px 8px;font-weight:700;position:sticky;bottom:0}table.entry tfoot .sticky-1,table.entry tfoot .sticky-2{z-index:3;background:var(--surface-2)}table.entry.locked td.in input{cursor:not-allowed}.linkish{appearance:none;font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:11.5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}@media (width<=640px){.entry-summary .hint{display:none}table.entry .sticky-2{position:static}}.jump{z-index:5;background:var(--plane);flex-wrap:wrap;gap:6px;padding:8px 0;display:flex;position:sticky;top:0}.jump a{border:1px solid var(--ring);background:var(--surface);color:var(--ink-2);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.jump a:hover{color:var(--ink);border-color:var(--axis)}.setting-block{scroll-margin-top:60px}.setting-block .model-card{background:var(--plane)}.va-models{gap:14px;display:grid}.va-model{gap:8px;display:grid}.vp-model{gap:14px;display:grid}.vp-model+.vp-model{border-top:1px solid var(--grid);margin-top:22px;padding-top:18px}.vp-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.va-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.va-slots{grid-template-columns:repeat(var(--slots),minmax(0,1fr));gap:8px;display:grid}.slot-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10.5px;font-weight:600}.board-cell{border-radius:10px;align-content:center;justify-items:start;gap:2px;padding:9px 11px;display:grid}.board-cell.filled{background:var(--surface-2)}.board-cell.empty-slot{border:1.5px dashed var(--axis)}@media (width<=640px){.va-slots{grid-template-columns:minmax(0,1fr)}}.weekpick{position:relative}.weekpick-btn{appearance:none;font-family:var(--display);background:var(--surface);border:1px solid var(--ring);cursor:pointer;color:var(--ink);border-radius:10px;align-items:center;gap:8px;padding:7px 12px;font-size:17px;font-weight:700;display:inline-flex}.weekpick-btn:hover{border-color:var(--axis)}.weekpick-ico{color:var(--accent)}.caret{color:var(--muted);font-size:12px}.weekpick-pop{z-index:30;background:var(--surface);border:1px solid var(--ring);border-radius:14px;gap:8px;width:300px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 16px 40px #00000038}.weekpick-head{justify-content:space-between;align-items:center;display:flex}.weekpick-head .btn{padding:4px 10px;font-size:16px}.weekpick-grid{gap:2px;display:grid}.weekpick-row{appearance:none;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:repeat(7,1fr);padding:0;display:grid}.weekpick-row span{text-align:center;font-variant-numeric:tabular-nums;padding:7px 0;font-size:13px}.weekpick-row.labels{cursor:default}.weekpick-row.labels span{color:var(--muted);padding:4px 0;font-size:11px;font-weight:600}.weekpick-row:not(.labels):not([disabled]):hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.weekpick-row[aria-pressed=true]{background:var(--accent);color:var(--plane)}.weekpick-row[aria-pressed=true] span.out{color:color-mix(in srgb,var(--plane) 70%,transparent)}.weekpick-row[disabled]{opacity:.35;cursor:default}.weekpick-row span.out{color:var(--muted)}.weekpick-row span.future{opacity:.45}.weekpick-row span.today{text-underline-offset:3px;font-weight:800;text-decoration:underline}.weekpick-foot{justify-content:flex-end;display:flex}.weekpick-foot .btn{padding:4px 10px;font-size:12.5px}.tabs{border-bottom:1px solid var(--grid);gap:4px;display:flex;overflow-x:auto}.tabs button{appearance:none;color:var(--ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:10px 14px;font-weight:600;display:inline-flex}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent)}.cell-name{font-weight:600;text-decoration:none}.cell-actions{gap:4px;margin-top:6px;display:flex}.cell-actions .btn{padding:4px 10px;font-size:12px}.choice-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;display:grid}.choice-row{flex-wrap:wrap;gap:8px;display:flex}.choice{border:1.5px solid var(--axis);cursor:pointer;background:var(--plane);border-radius:10px;gap:2px;min-width:140px;padding:10px 12px;display:grid;position:relative}.choice input{opacity:0;pointer-events:none;position:absolute}.choice:hover{border-color:var(--accent)}.choice.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.choice.off{opacity:.5;cursor:not-allowed}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.dpick{gap:6px;display:grid}.dpick .search{width:100%}.dpick-list{border:1px solid var(--grid);border-radius:10px;max-height:260px;overflow-y:auto}.dpick-row{border-bottom:1px solid var(--grid);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.dpick-row:last-child{border-bottom:0}.dpick-row:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.dpick-row.on{background:color-mix(in srgb,var(--accent) 12%,transparent)}.dpick-row.busy{opacity:.55;cursor:not-allowed}.dpick-row input{accent-color:var(--accent)}.dpick-main{gap:1px;min-width:0;display:grid}.dpick-main b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.dpick-note{text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:12px;overflow:hidden}.assign-summary{text-overflow:ellipsis;white-space:nowrap;max-width:50%;overflow:hidden}@media (width<=560px){.dpick-note,.assign-summary{display:none}}.invite-who{background:var(--surface-2);border-radius:12px;gap:10px;padding:12px 14px;display:grid}.invite-who>div{gap:2px;display:grid}.invite-who span{font-size:13.5px}.pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:14px;display:flex}.pager-btns{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pager-num{align-items:center;gap:4px;display:inline-flex}.pager .btn{min-width:34px;padding:5px 11px}.pager .btn[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--plane)}.dpick-list.busy{opacity:.6}.project-pick{background:var(--surface-2);border-radius:10px;gap:4px;padding:10px;display:grid}.project-pick select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--ring);border-radius:8px;width:100%;padding:6px 8px;font-weight:700}.project-pick .project-name{font-family:var(--display);font-size:15px}.auth-card.wide-card{width:min(560px,100%)}.kpi{min-width:0}.kpi .v{overflow-wrap:anywhere;font-size:clamp(20px,2.1vw,28px)}.kpi .n{overflow-wrap:anywhere}.panel-head>.search{flex:0 200px;align-self:center;width:200px;margin-left:auto}.panel-head>.legend-row{flex-basis:100%}.vrow a.plate:hover,.split-table a.plate:hover{text-decoration:underline}.vrow .drv a{color:inherit;text-decoration:none}.vrow .drv a:hover{text-decoration:underline}
