:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--green-400:#3ecf78;--green-500:#2ebe6d;--green-600:#22a45a;--green-700:#167038;--green-800:#10502a;--green-tint:#2ebe6d1a;--green-line:#2ebe6d42;--action:var(--green-700);--action-press:var(--green-800);--action-tint:#2ebe6d24;--on-fill:#fff;--surface:#fff;--bg:#e7ece7;--ink:#111812;--ink-soft:#5a675c;--line:#d6ded6;--line-strong:#b8c4b9;--sunken:#f1f5f1;--ok-bg:#e6f2ea;--ok-ink:#2c6544;--wait-bg:#fbf0dc;--wait-ink:#855312;--sched-bg:#e6edf7;--sched-ink:#2d5280;--stop-bg:#fbe8e4;--stop-ink:#8c3728;--score-bad:#c0392b;--score-mid:#d9901a;--score-good:#2f8f52;--bronze-bg:#f3e3d3;--bronze-ink:#8a5220;--bronze-edge:#c9a077;--silver-bg:#e9ecef;--silver-ink:#55606b;--silver-edge:#b3bcc5;--gold-bg:#fbeec4;--gold-ink:#8a6a12;--gold-edge:#d8b954;--plat-bg:#e4edf5;--plat-ink:#35566f;--plat-edge:#9fc0d8;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--font:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs:13px;--text-sm:15px;--text-base:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--text-3xl:40px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.15;--leading-normal:1.5;--tap-min:48px;--tap-site:56px;--tabbar-h:56px;--dock-h:80px;--safe-bottom:env(safe-area-inset-bottom,0px);--shadow-card:0 1px 2px #1c1b1a0a, 0 2px 8px #1c1b1a0d;--shadow-sheet:0 -2px 24px #1c1b1a24;--shadow-float:0 4px 16px #16703842;--ease:cubic-bezier(.2, 0, .2, 1);--duration-fast:.12s;--duration:.2s;--duration-sheet:.28s}.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--action:var(--green-500);--action-press:var(--green-400);--action-tint:var(--green-tint);--on-fill:#0c100d;--bg:#0c100d;--surface:#141a15;--sunken:#1a211b;--ink:#eef2ee;--ink-soft:#a9b6aa;--line:#29332a;--line-strong:#3a473b;--ok-bg:#11301d;--ok-ink:var(--green-400);--wait-bg:#33280f;--wait-ink:#e2ba6b;--sched-bg:#16263c;--sched-ink:#8fb6e8;--stop-bg:#3a1d16;--stop-ink:#f0a795;--score-bad:#e0705c;--score-mid:#e8ae44;--score-good:var(--green-400);--bronze-bg:#33220f;--bronze-ink:#e0a76e;--bronze-edge:#6b4a24;--silver-bg:#1f2621;--silver-ink:#c2ccc4;--silver-edge:#46524a;--gold-bg:#33290c;--gold-ink:#ecc75c;--gold-edge:#6d5a1d;--plat-bg:#16292f;--plat-ink:#a8d6e0;--plat-edge:#3c6470;--shadow-card:0 1px 2px #00000073;--shadow-sheet:0 -2px 24px #0009;--shadow-float:0 4px 16px #2ebe6d38}@media (prefers-color-scheme:dark){:root:not(.theme-light):not(.theme-dark){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--action:var(--green-500);--action-press:var(--green-400);--action-tint:var(--green-tint);--on-fill:#0c100d;--bg:#0c100d;--surface:#141a15;--sunken:#1a211b;--ink:#eef2ee;--ink-soft:#a9b6aa;--line:#29332a;--line-strong:#3a473b;--ok-bg:#11301d;--ok-ink:var(--green-400);--wait-bg:#33280f;--wait-ink:#e2ba6b;--sched-bg:#16263c;--sched-ink:#8fb6e8;--stop-bg:#3a1d16;--stop-ink:#f0a795;--score-bad:#e0705c;--score-mid:#e8ae44;--score-good:var(--green-400);--bronze-bg:#33220f;--bronze-ink:#e0a76e;--bronze-edge:#6b4a24;--silver-bg:#1f2621;--silver-ink:#c2ccc4;--silver-edge:#46524a;--gold-bg:#33290c;--gold-ink:#ecc75c;--gold-edge:#6d5a1d;--plat-bg:#16292f;--plat-ink:#a8d6e0;--plat-edge:#3c6470;--shadow-card:0 1px 2px #00000073;--shadow-sheet:0 -2px 24px #0009;--shadow-float:0 4px 16px #2ebe6d38}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:.01ms;--duration:.01ms;--duration-sheet:.01ms}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:var(--leading-tight);text-wrap:balance;margin:0}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg);font-weight:var(--weight-semibold)}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--action);outline-offset:2px;border-radius:var(--radius-sm)}.screen{max-width:560px;padding:var(--space-4);padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--space-5));margin:0 auto}.screen:has(.dock){padding-bottom:calc(var(--tabbar-h) + var(--dock-h) + var(--safe-bottom) + var(--space-4))}.screen-wide{max-width:900px}.stack{gap:var(--space-4);flex-direction:column;display:flex}.stack-2{gap:var(--space-2);flex-direction:column;display:flex}.stack-3{gap:var(--space-3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.between{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.grow{flex:auto;min-width:0}.page-head{gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}.page-head h1{font-size:var(--text-2xl)}.page-head p{color:var(--ink-soft);font-size:var(--text-sm)}.muted{color:var(--ink-soft)}.num{font-variant-numeric:tabular-nums}.sm{font-size:var(--text-sm)}.xs{font-size:var(--text-xs);color:var(--ink-soft)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card)}.card-flag{border-inline-start:3px solid var(--wait-ink);background:color-mix(in srgb, var(--wait-bg) 30%, var(--surface))}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.rows{gap:var(--space-2);flex-direction:column;display:flex}.rowcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);transition:border-color var(--duration) var(--ease), transform var(--duration-fast) var(--ease);display:block}.rowcard:hover{border-color:var(--line-strong)}.rowcard:active{transform:scale(.995)}.rowcard.is-review{border-style:dashed;border-inline-start:3px solid var(--wait-ink);background:color-mix(in srgb, var(--wait-bg) 35%, var(--surface));border-start-start-radius:var(--radius-sm);border-end-start-radius:var(--radius-sm)}.rowcard.is-review:hover{border-color:var(--wait-ink)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-5);border-radius:var(--radius-full);color:var(--ink);font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);background:0 0;border:0;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:not(:disabled):active{transform:scale(.985)}.btn-primary{background:var(--action);color:var(--on-fill)}.btn-primary:not(:disabled):hover{background:var(--action-press)}.btn-secondary{border:1.5px solid var(--line-strong);background:var(--surface)}.btn-secondary:not(:disabled):hover{background:var(--sunken)}.btn-quiet{color:var(--ink-soft)}.btn-quiet:not(:disabled):hover{background:var(--sunken);color:var(--ink)}.btn-danger{border:1.5px solid var(--stop-bg);background:var(--stop-bg);color:var(--stop-ink)}.btn-site{min-height:var(--tap-site);font-size:var(--text-lg)}.btn-block{width:100%}.btn-sm{min-height:40px;padding:0 var(--space-4);font-size:var(--text-sm)}.dock{left:0;right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom));z-index:30;padding:var(--space-3) var(--space-4);pointer-events:none;background:linear-gradient(to bottom, transparent, var(--bg) 42%);justify-content:center;display:flex;position:fixed}.dock>*{pointer-events:auto;width:100%;max-width:528px}.field{gap:var(--space-2);flex-direction:column;display:flex}.field>label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink)}.input,.select,.textarea{width:100%;min-height:var(--tap-min);padding:var(--space-3);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font-family:inherit;font-size:var(--text-base)}.textarea{resize:vertical;min-height:88px}.input:focus,.select:focus,.textarea:focus{border-color:var(--action);outline:none}.input::placeholder{color:#8a968b}.hint{font-size:var(--text-sm);color:var(--ink-soft)}.grid-2,.grid-3{gap:var(--space-3);display:grid}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr 1fr}@media (width<=400px){.grid-3{grid-template-columns:1fr 1fr}}.choices{gap:var(--space-2);flex-wrap:wrap;display:flex}.choice{min-height:var(--tap-min);padding:0 var(--space-4);border:1.5px solid var(--line-strong);border-radius:var(--radius-full);background:var(--surface);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);justify-content:center;align-items:center;display:inline-flex;position:relative}.choice input{opacity:0;pointer-events:none;position:absolute}.choice:has(input:checked){border-color:var(--action);background:var(--action-tint);color:var(--action-press);font-weight:var(--weight-semibold)}.tiles{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid}.tile{border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:72px;display:flex;position:relative}.tile input{opacity:0;pointer-events:none;position:absolute}.tile b{font-size:var(--text-base);font-weight:var(--weight-semibold)}.tile span{font-size:var(--text-sm);color:var(--ink-soft)}.tile:has(input:checked){border-color:var(--action);background:var(--action-tint)}.tile:has(input:checked) span{color:var(--action-press)}.pill{align-items:center;gap:var(--space-1);padding:5px var(--space-3);border-radius:var(--radius-full);background:var(--sunken);color:var(--ink-soft);font-size:14px;font-weight:var(--weight-medium);white-space:nowrap;display:inline-flex}.pill-ok{background:var(--ok-bg);color:var(--ok-ink)}.pill-wait{background:var(--wait-bg);color:var(--wait-ink)}.pill-sched{background:var(--sched-bg);color:var(--sched-ink)}.pill-bad{background:var(--stop-bg);color:var(--stop-ink)}.pill-stop{background:var(--stop-bg);color:var(--stop-ink);font-weight:var(--weight-semibold)}.notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.45}.notice-ok{background:var(--ok-bg);color:var(--ok-ink)}.notice-wait{background:var(--wait-bg);color:var(--wait-ink)}.notice-stop{background:var(--stop-bg);color:var(--stop-ink)}.notice ul{margin:var(--space-2) 0 0;padding-left:1.2em}.offline-bar{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--wait-bg);color:var(--wait-ink);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);display:flex}.offline-bar .dot{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.job{gap:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.job-top{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.job-where{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.job-city{margin-left:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--ink-soft)}.on-this{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);background:var(--ok-bg);color:var(--ok-ink);font-size:var(--text-xs);font-weight:var(--weight-semibold);white-space:nowrap;padding:3px 10px;display:inline-flex}.job-when{font-size:var(--text-sm);color:var(--ink-soft)}.job-pay{text-align:right;flex:none}.job-pay b{font-size:var(--text-3xl);font-weight:var(--weight-bold);letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1;display:block}.job-pay span{font-size:var(--text-xs);color:var(--ink-soft)}.load{align-items:center;gap:var(--space-3);display:flex}.load-track{border-radius:var(--radius-full);background:var(--sunken);flex:1;height:10px;overflow:hidden}.load-fill{background:var(--action);border-radius:var(--radius-full);height:100%}.load-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink-soft);flex:none}.tabbar{inset-inline:0;z-index:40;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);display:grid;position:fixed;bottom:0}.tabbar a{min-height:var(--tap-site);font-size:12px;font-weight:var(--weight-medium);color:var(--ink-soft);transition:color var(--duration-fast) var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.tabbar a[aria-current=page]{color:var(--action);font-weight:var(--weight-semibold)}.tabbar svg{width:24px;height:24px}.appbar{align-items:center;gap:var(--space-3);max-width:560px;padding:var(--space-3) var(--space-4) 0;margin:0 auto;display:flex}.theme-toggle{background:var(--sunken);border:1px solid var(--line);border-radius:var(--radius-full);gap:2px;margin-left:auto;padding:3px;display:inline-flex}.theme-toggle-btn{border-radius:var(--radius-full);width:38px;height:34px;color:var(--ink-soft);cursor:pointer;transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);background:0 0;border:0;place-items:center;padding:0;display:grid}.theme-toggle-btn svg{width:18px;height:18px}.theme-toggle-btn:hover{color:var(--ink)}.theme-toggle-btn[aria-pressed=true]{background:var(--surface);color:var(--action);box-shadow:var(--shadow-card)}.route-progress{inset-inline:0;z-index:50;background:var(--action);transform-origin:0;height:3px;transition:opacity var(--duration) var(--ease);position:fixed;top:0}.signin{min-height:100dvh;padding:var(--space-4);place-items:center;display:grid}.signin-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;max-width:380px;padding:var(--space-6);box-shadow:var(--shadow-card);gap:var(--space-4);flex-direction:column;display:flex}.wordmark{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.02em}.wordmark span{color:var(--action)}.brandmark{color:var(--action);align-items:center;line-height:0;display:inline-flex}.brandmark svg{width:auto;height:30px}.brandmark.is-lg{margin-bottom:var(--space-3)}.brandmark.is-lg svg{height:56px}.empty{align-items:center;gap:var(--space-2);padding:var(--space-7) var(--space-4);text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);flex-direction:column;display:flex}.empty p{color:var(--ink-soft);font-size:var(--text-sm);max-width:34ch}.statgrid{gap:var(--space-2);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=480px){.statgrid{grid-template-columns:repeat(3,1fr)}}.statcell{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;gap:2px;display:flex}.statcell b{font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.1}.statcell b small{font-size:var(--text-base);font-weight:var(--weight-medium)}.statcell span{font-size:var(--text-xs);color:var(--ink-soft)}.photo-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.photo-grid img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);width:100%}.photo-cell{gap:var(--space-1);flex-direction:column;align-items:flex-start;display:flex}.photo-cell .pill{padding:2px 8px;font-size:12px}.photo-note{font-size:var(--text-xs);color:var(--ink-soft);overflow-wrap:anywhere;line-height:1.35}.review-photos{gap:var(--space-2);scroll-snap-type:x mandatory;margin:0 calc(-1 * var(--space-4));padding:0 var(--space-4);display:flex;overflow-x:auto}.review-photos img{scroll-snap-align:center;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-md);flex:none;width:78%}details.disclosure{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}details.disclosure>summary{cursor:pointer;min-height:var(--tap-min);font-weight:var(--weight-semibold);align-items:center;list-style:none;display:flex}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary:after{content:"＋";color:var(--ink-soft);margin-left:auto;font-weight:400}details.disclosure[open]>summary:after{content:"−"}.dl{gap:var(--space-3);flex-direction:column;display:flex}.dl>div{justify-content:space-between;gap:var(--space-4);align-items:baseline;display:flex}.dl dt{color:var(--ink-soft);font-size:var(--text-sm);flex:none}.dl dd{text-align:right;margin:0}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline li{padding:0 0 var(--space-4) var(--space-5);border-left:2px solid var(--line);position:relative}.timeline li:before{content:"";background:var(--action);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;left:-5px}.timeline li:last-child{border-left-color:#0000;padding-bottom:0}@media (width>=720px){.dock{background:0 0;padding:0;position:static}.dock>*{max-width:none}.screen:has(.dock){padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--space-5))}.tabbar{border:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:0;max-width:560px;margin:0 auto}}.fleetmap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--sunken);min-height:168px;box-shadow:var(--shadow-card);align-items:flex-end;display:flex;position:relative;overflow:hidden}.fleetmap-grid{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.7;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 40%,#000 40%,#0000 85%);mask-image:radial-gradient(circle at 50% 40%,#000 40%,#0000 85%)}.fleetmap-body{gap:var(--space-2);padding:var(--space-4);background:linear-gradient(to top, var(--surface) 55%, transparent);flex-direction:column;align-items:flex-start;width:100%;display:flex;position:relative}.fleetmap-body p{margin:0}.vehiclerow{gap:var(--space-3);align-items:flex-start;display:flex}.vehicleglyph{width:58px;height:26px;color:var(--ink-soft);flex:none;margin-top:3px}.plate{font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,Consolas,monospace;font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.08em;padding:3px var(--space-2);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);white-space:nowrap;flex:none}.plate-input{letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,Consolas,monospace}.choice-vehicle{min-width:96px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center;flex-direction:column;gap:2px}.choiceglyph{width:62px;height:28px}.rowcard.is-retired{opacity:.62;border-style:dashed}.scoredots{align-items:center;gap:6px;display:inline-flex}.scoredot{border-radius:var(--radius-full);background-clip:padding-box;border:1.5px solid;flex:none}.scorevalue{font-size:var(--text-3xl);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1}.scorevalue small{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--ink-soft);white-space:nowrap;margin-left:3px}.scoreevent{gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--line);align-items:baseline;display:flex}.scoreevent:first-child{border-top:0}.scoredelta{font-variant-numeric:tabular-nums;min-width:44px;font-weight:var(--weight-semibold);flex:none}.scoredelta.down{color:var(--stop-ink)}.scoredelta.up{color:var(--ok-ink)}.scorecard{transition:border-color var(--duration) var(--ease), transform var(--duration-fast) var(--ease);display:block}.scorecard:hover{border-color:var(--line-strong)}.scorecard:active{transform:scale(.995)}.scoretrack{border-radius:var(--radius-full);background:var(--line-strong);height:8px;overflow:hidden}.scoretrack>span{border-radius:var(--radius-full);background:var(--score-good);height:100%;display:block}.weekstrip{gap:4px;display:flex}.weekday{border-radius:var(--radius-sm);border:1.5px solid var(--line-strong);background:var(--sunken);min-width:0;color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-align:center;flex:1 1 0;padding:6px 0;line-height:1}.weekday.is-clean{border-color:var(--score-good);background:color-mix(in srgb, var(--score-good) 22%, transparent);color:var(--ink)}.weekday.is-paid{border-color:var(--score-good);background:var(--score-good);color:var(--on-fill)}.weekday.is-broke{border-color:var(--score-bad);background:var(--score-bad);color:var(--on-fill)}.weekday.is-lost{opacity:.5}.weekday.is-ahead{border-style:dashed}.scoreband{font-size:var(--text-lg);font-weight:var(--weight-semibold);margin-top:2px;line-height:1.1}.tierbadge{padding:4px var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1.5px solid;align-items:center;gap:6px;display:inline-flex}.tierbadge.is-sm{padding:2px var(--space-2);font-size:var(--text-xs)}.tierbadge.is-lg{padding:6px var(--space-4);font-size:var(--text-base)}.tierbadge.is-bronze{background:var(--bronze-bg);color:var(--bronze-ink);border-color:var(--bronze-edge)}.tierbadge.is-silver{background:var(--silver-bg);color:var(--silver-ink);border-color:var(--silver-edge)}.tierbadge.is-gold{background:var(--gold-bg);color:var(--gold-ink);border-color:var(--gold-edge)}.tierbadge.is-platinum{background:var(--plat-bg);color:var(--plat-ink);border-color:var(--plat-edge)}.tierpips{gap:2px;display:inline-flex}.tierpips>span{border-radius:var(--radius-full);background:currentColor;width:5px;height:5px}.tierladder{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.tierrung{padding:var(--space-2) var(--space-1);border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--sunken);color:var(--ink-soft);text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.tierrung-label{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase}.tierrung-at{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.tierrung.is-reached.is-bronze{background:var(--bronze-bg);color:var(--bronze-ink);border-color:var(--bronze-edge)}.tierrung.is-reached.is-silver{background:var(--silver-bg);color:var(--silver-ink);border-color:var(--silver-edge)}.tierrung.is-reached.is-gold{background:var(--gold-bg);color:var(--gold-ink);border-color:var(--gold-edge)}.tierrung.is-reached.is-platinum{background:var(--plat-bg);color:var(--plat-ink);border-color:var(--plat-edge)}.tierrung.is-here{box-shadow:0 0 0 3px var(--action-tint);border-width:2px}.switch{border:1.5px solid var(--line-strong);border-radius:var(--radius-full);background:var(--sunken);gap:2px;padding:3px;display:inline-flex}.switch button{padding:5px var(--space-4);border-radius:var(--radius-full);color:var(--ink-soft);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:0}.switch button.is-on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card)}.tablewrap{overflow-x:auto}.reftable{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.reftable th{padding:6px var(--space-2);text-align:left;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--line);white-space:nowrap}.reftable td{padding:10px var(--space-2);border-bottom:1px solid var(--line);vertical-align:middle}.reftable tr:last-child td{border-bottom:0}.reftable tr.is-you td{background:var(--action-tint)}.scoreitem.is-spent{opacity:.55}.tempcode{font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,monospace;font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:.14em;text-align:center;padding:var(--space-3);border:1.5px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--sunken);-webkit-user-select:all;user-select:all;word-break:break-all}.confirm{gap:var(--space-3);padding:var(--space-4);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;display:flex}.confirm-danger{border-color:var(--stop-bg);background:var(--stop-bg)}.confirm-danger .confirm-heading,.confirm-danger .confirm-points{color:var(--stop-ink)}.confirm-heading{font-weight:var(--weight-semibold);font-size:var(--text-lg)}.confirm-points{gap:var(--space-2);padding-left:var(--space-4);font-size:var(--text-sm);color:var(--ink-soft);flex-direction:column;margin:0;display:flex}.confirm-points li{list-style:outside}.confirm-danger .btn-danger{background:var(--stop-ink);border-color:var(--stop-ink);color:var(--stop-bg)}.confirm-danger .btn-quiet{color:var(--stop-ink)}.confirm-danger .btn-quiet:not(:disabled):hover{color:var(--stop-ink);background:#0000001f}.confirm .row{flex-wrap:nowrap}.btn-blocked{border:1.5px dashed var(--line-strong);color:var(--ink-soft);background:0 0}.btn-blocked:disabled{opacity:1}.reqs{padding:var(--space-3) var(--space-4);border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--sunken)}.reqs-head{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin-bottom:var(--space-2)}.reqs-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;display:flex}.reqs-list li{gap:var(--space-2);font-size:var(--text-sm);grid-template-columns:1.25em 1fr;align-items:start;list-style:none;display:grid}.reqs-list .is-met{color:var(--ink-soft)}.reqs-list .is-met span:first-child{color:var(--ok-ink)}.reqs-list .is-missing{color:var(--ink)}.reqs-list .is-missing span:first-child{color:var(--wait-ink)}.accordion{gap:var(--space-2);flex-direction:column;display:flex}.acc-panel{border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.acc-panel.is-open{border-color:var(--line-strong)}.acc-panel.is-flagged{border-color:var(--wait-ink)}.acc-head{gap:var(--space-3);width:100%;min-height:var(--tap-min);padding:var(--space-3) var(--space-4);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1fr auto auto;align-items:center;display:grid}.acc-head:hover{background:var(--sunken)}.acc-title{font-weight:var(--weight-semibold)}.acc-summary{font-size:var(--text-sm);color:var(--ink-soft);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:45vw;overflow:hidden}.acc-chevron{border-right:2px solid var(--ink-soft);border-bottom:2px solid var(--ink-soft);width:10px;height:10px;transition:transform var(--duration) var(--ease);transform:rotate(45deg)translate(-2px,-2px)}.acc-panel.is-open .acc-chevron{transform:rotate(-135deg)translate(-2px,-2px)}.acc-wrap{transition:grid-template-rows var(--duration) var(--ease), opacity var(--duration) var(--ease);grid-template-rows:1fr;display:grid}.acc-wrap[inert]{opacity:0;grid-template-rows:0fr}.acc-wrap>.acc-body{min-height:0;overflow:hidden}.acc-body{gap:var(--space-3);padding:0 var(--space-4) var(--space-4);flex-direction:column;display:flex}.acc-wrap[inert]>.acc-body{padding-bottom:0}@media (prefers-reduced-motion:reduce){.acc-wrap,.acc-chevron{transition:none}}.disclosure-flag{border-color:var(--wait-ink)}.receipt{padding:var(--space-4);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);gap:var(--space-3);flex-direction:column;display:flex}.receipt-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1.5px dashed var(--line-strong);display:flex}.receipt-lines{gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1.5px dashed var(--line-strong);flex-direction:column;display:flex}.receipt-lines:last-of-type{border-bottom:0;padding-bottom:0}.receipt-line{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);display:flex}.receipt-line>.num{font-variant-numeric:tabular-nums;white-space:nowrap}.receipt-line.is-total{font-weight:var(--weight-semibold);font-size:var(--text-base);margin-top:var(--space-1)}.is-gain{color:var(--ok-ink)}.is-loss{color:var(--stop-ink)}.receipt-foot{font-size:var(--text-sm);color:var(--ink-soft)}.gatefix{gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-3);border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;display:flex}.toolbar{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=360px){.toolbar{grid-template-columns:repeat(3,1fr)}}.toolbtn{min-height:44px;padding:0 var(--space-2);text-align:center;border:1.5px solid var(--line-strong);border-radius:var(--radius-full);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;justify-content:center;align-items:center;display:flex;position:relative}.toolbtn:hover{background:var(--sunken)}.toolbtn-green{border-color:var(--ok-ink);color:var(--ok-ink)}.toolbtn-blue{border-color:var(--action);color:var(--action)}.toolbtn-amber{border-color:var(--wait-ink);color:var(--wait-ink)}.toolbtn-red{border-color:var(--stop-ink);color:var(--stop-ink)}.toolbtn.is-flagged{background:var(--wait-bg);border-color:var(--wait-ink);color:var(--wait-ink)}.toolbtn-dot{width:6px;height:6px;margin-left:var(--space-2);vertical-align:middle;background:currentColor;border-radius:50%;display:inline-block}.sheet-backdrop{z-index:60;animation:sheet-fade var(--duration) var(--ease);background:#0000008c;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);border:1.5px solid var(--line-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:560px;max-height:86vh;animation:sheet-rise var(--duration-sheet) var(--ease);border-bottom:0;flex-direction:column;display:flex;box-shadow:0 -12px 40px #00000059}.sheet:focus{outline:none}.sheet-green{border-top:3px solid var(--ok-ink)}.sheet-blue{border-top:3px solid var(--action)}.sheet-amber{border-top:3px solid var(--wait-ink)}.sheet-red{border-top:3px solid var(--stop-ink)}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--line);display:flex}.sheet-body{gap:var(--space-3);padding:var(--space-4);padding-bottom:calc(var(--space-6) + var(--safe-bottom));flex-direction:column;display:flex;overflow-y:auto}@keyframes sheet-rise{0%{opacity:.6;transform:translateY(12%)}to{opacity:1;transform:none}}@keyframes sheet-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop{animation:none}}.ticket{gap:calc(var(--space-4) + 10px);padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--space-4));flex-direction:column;width:100%;max-width:420px;margin:0 auto;display:flex}.ticket-paper{padding:var(--space-5) var(--space-4) var(--space-5);background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--ink);font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,monospace;font-size:var(--text-sm);animation:ticket-print .65s var(--ease);transform-origin:top;border-bottom:0;position:relative}.ticket-paper:after{content:"";background:var(--surface);border-left:1.5px solid #0000;height:10px;position:absolute;bottom:-10px;left:-1.5px;right:-1.5px;-webkit-mask-image:radial-gradient(circle at 6px 0,#0000 6px,#000 6.5px);mask-image:radial-gradient(circle at 6px 0,#0000 6px,#000 6.5px);-webkit-mask-size:12px 12px;mask-size:12px 12px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.ticket-title{font-size:var(--text-lg);letter-spacing:.18em;text-align:center;font-weight:700}.ticket-sub{text-align:center;color:var(--ink-soft);margin-top:2px}.ticket-who{color:var(--ink-soft);flex-direction:column;gap:2px;display:flex}.ticket-name{color:var(--ink);font-weight:700}.ticket-rule{border-top:1.5px dashed var(--line-strong);margin:var(--space-3) 0}.ticket-line{justify-content:space-between;gap:var(--space-3);padding:3px 0;display:flex}.ticket-line.is-total{font-weight:700;font-size:var(--text-base);border-top:1.5px solid var(--line-strong);margin-top:var(--space-2);padding-top:var(--space-2)}.ticket-foot{color:var(--ink-soft);flex-direction:column;gap:2px;display:flex}.ticket-thanks{margin-top:var(--space-2);text-align:center;letter-spacing:.1em;color:var(--ok-ink)}.ticket-row,.ticket-line,.ticket-rule,.ticket-foot,.ticket-who{opacity:0;transform:translateY(-4px)}.ticket-row.is-in,.ticket-line.is-in,.ticket-rule.is-in,.ticket-foot.is-in,.ticket-who.is-in{opacity:1;transition:opacity .16s var(--ease), transform .16s var(--ease);transform:none}@keyframes ticket-print{0%{opacity:.3;transform:scaleY(.04)}60%{opacity:1;transform:scaleY(1.02)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.ticket-paper{animation:none}.ticket-row,.ticket-line,.ticket-rule,.ticket-foot,.ticket-who{opacity:1;transition:none;transform:none}}.uploading{gap:var(--space-2);color:var(--ink-soft);flex-direction:column;display:flex}.uploading-bar{border-radius:var(--radius-full);background:linear-gradient(90deg, var(--line) 0%, var(--action) 50%, var(--line) 100%);background-size:220% 100%;height:4px;animation:1.1s linear infinite uploading-slide;display:block}@keyframes uploading-slide{0%{background-position:100% 0}to{background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.uploading-bar{background:var(--action);animation:none}}.toast{top:calc(env(safe-area-inset-top,0px) + var(--space-3));left:var(--space-4);right:var(--space-4);z-index:80;max-width:520px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:center;cursor:pointer;animation:toast-in var(--duration) var(--ease);border:1.5px solid #0000;margin:0 auto;position:fixed;box-shadow:0 10px 30px #00000059}.toast-ok{background:var(--ok-bg);border-color:var(--ok-ink);color:var(--ok-ink)}.toast-stop{background:var(--stop-bg);border-color:var(--stop-ink);color:var(--stop-ink)}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.daygrid{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=380px){.daygrid{grid-template-columns:repeat(2,1fr)}}.daycell{padding:var(--space-3) var(--space-2);border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:center;flex-direction:column;gap:2px;text-decoration:none;display:flex}.daycell b{font-size:var(--text-xl);font-weight:700;line-height:1.1}.daycell span{font-size:var(--text-xs);color:var(--ink-soft)}.daycell.is-live{border-color:var(--action)}.daycell.is-live b{color:var(--action)}.daycell.is-warn{border-color:var(--wait-ink)}.daycell.is-warn b{color:var(--wait-ink)}.nextshift{gap:var(--space-2);padding:var(--space-4);border:1.5px solid var(--action);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.nextshift-when{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.head-alert{color:var(--stop-ink)}.rowcard.is-late{border-color:var(--stop-ink)}.slider{border:1.5px solid var(--line-strong);border-radius:var(--radius-full);background:var(--sunken);grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.slider-stop{border-radius:var(--radius-full);min-height:38px;color:var(--ink-soft);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--duration) var(--ease), color var(--duration) var(--ease);background:0 0;border:0}.slider-stop:disabled{cursor:not-allowed}.slider-stop.is-on.is-here{background:var(--ok-bg);color:var(--ok-ink)}.slider-stop.is-on.is-late{background:var(--wait-bg);color:var(--wait-ink)}.slider-stop.is-on.is-absent{background:var(--stop-bg);color:var(--stop-ink)}.timer{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Cascadia Mono,Menlo,monospace;font-size:var(--text-2xl);letter-spacing:.02em;font-weight:700}.clockcard{gap:var(--space-3);padding:var(--space-4);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;display:flex}.clockcard.is-running{border-color:var(--ok-ink)}.clockcard.is-running .timer{color:var(--ok-ink)}.pwfield{display:block;position:relative}.pwfield .input{width:100%;padding-right:4.5rem}.pwreveal{top:50%;right:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--ink-soft);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:0;position:absolute;transform:translateY(-50%)}.pwreveal:hover{color:var(--ink)}.topdoors{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.topdoors>form{display:contents}.topdoor{justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-height:52px;padding:var(--space-2) var(--space-3);border:1.5px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:center;cursor:pointer;line-height:1.2;display:flex}.topdoor:hover{border-color:var(--ink-soft)}.topdoor.is-running{border-color:var(--ok-ink)}.topdoor-timer{font-size:var(--text-base);color:var(--ok-ink)}.topdoor .dot{border-radius:var(--radius-full);background:var(--stop-ink);min-width:20px;height:20px;color:var(--surface);font-size:var(--text-xs);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}.jobcard-row{align-items:flex-start;gap:var(--space-3);display:flex}.jobcard-shot{border-radius:var(--radius-sm);background:var(--sunken);object-fit:cover;aspect-ratio:1;flex:none;width:56px;height:56px}.jobcard-pills{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.jobcard-pills:empty{display:none}.jobcard-pills .pill{padding:2px var(--space-2);font-size:var(--text-xs)}.pill-live{background:var(--ok-bg);color:var(--ok-ink);font-weight:var(--weight-semibold)}.pill-item{border:1px solid var(--line);color:var(--ink-soft);background:0 0}.rowcard.is-warn{border-color:var(--wait-ink)}
