:root{color-scheme:light dark;--ok: #2e9e5b;--tight: #d08700;--bad: #c0392b;--line: color-mix(in srgb, currentColor 18%, transparent);--soft: color-mix(in srgb, currentColor 7%, transparent)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,system-ui,sans-serif;-webkit-text-size-adjust:100%}main{max-width:480px;margin:0 auto;padding:16px 16px calc(24px + env(safe-area-inset-bottom))}header{display:flex;align-items:center;justify-content:space-between;gap:8px}.controls{display:flex;gap:6px}.avatar{width:34px;height:34px;flex:none;border-radius:50%;border:1px solid var(--line);background:var(--soft);color:inherit;font:inherit;font-size:.74rem;font-weight:700;letter-spacing:.02em;cursor:pointer;display:grid;place-items:center}.avatar:active{background:var(--line)}.account-head{display:flex;align-items:center;gap:11px}.account-head strong{display:block;font-size:.9rem}.admin-tag{font-style:normal;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;opacity:.6}main.login{max-width:380px;padding-top:15vh}main.login h1{font-size:1.5rem;margin:0 0 6px;letter-spacing:-.02em}main.login .blurb{font-size:.9rem;opacity:.7;margin:0 0 22px;line-height:1.5}main.login form{display:flex;flex-direction:column;gap:9px}main.login label{font-size:.78rem;opacity:.7}main.login input{font:inherit;font-size:1rem;padding:12px 14px;border-radius:11px;border:1px solid var(--line);background:none;color:inherit}main.login button.primary{font:inherit;font-weight:650;padding:13px;border-radius:11px;border:0;background:CanvasText;color:Canvas;cursor:pointer}main.login button.primary:disabled{opacity:.5;cursor:default}.chip{font:inherit;font-size:.85rem;font-weight:600;background:none;color:inherit;border:1px solid var(--line);border-radius:999px;padding:5px 12px;cursor:pointer}.chip:active{background:var(--soft)}.headline{font-size:1.75rem;font-weight:750;line-height:1.15;margin:18px 0 16px;letter-spacing:-.02em}.banner{border-radius:10px;padding:9px 12px;font-size:.82rem;margin:10px 0}.banner.warn{background:color-mix(in srgb,var(--tight) 15%,transparent);border:1px solid var(--tight)}.banner.bad{background:color-mix(in srgb,var(--bad) 16%,transparent);border:1px solid var(--bad);font-weight:600}.banner.soft{background:var(--soft);border:1px solid var(--line);opacity:.85}.plans{display:flex;flex-direction:column;gap:9px}.card{border:1px solid var(--line);border-radius:14px;padding:12px 14px;border-left-width:4px;border-left-color:var(--ok)}.card.tight{border-left-color:var(--tight)}.card.missed{opacity:.45}.card-top{display:flex;align-items:baseline;justify-content:space-between}.arrive{font-size:1.45rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.countdown{text-align:right;font-variant-numeric:tabular-nums}.countdown span{font-size:1rem;font-weight:650}.countdown em{display:block;font-size:.68rem;opacity:.55;font-style:normal}.legs{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;align-items:center}.chip-leg{font-size:.78rem;padding:3px 8px;border-radius:7px;background:var(--soft);border:1px solid transparent;color:inherit}button.chip-leg{cursor:pointer;font-family:inherit;border-color:var(--line);border-style:dashed}button.chip-leg.seed{border-color:var(--tight)}button.chip-leg:active{background:var(--line)}.chip-leg em{font-style:normal;opacity:.6}.chip-leg.sev-minor{background:color-mix(in srgb,var(--tight) 20%,transparent);border-color:var(--tight)}.chip-leg.sev-major,.chip-leg.sev-broken{background:color-mix(in srgb,var(--bad) 20%,transparent);border-color:var(--bad);font-weight:600}.chip-leg.sev-unknown{border-style:dashed;border-color:var(--line);opacity:.8}.chip-leg strong{font-weight:700}.reason{font-size:.78rem;opacity:.75;margin-top:7px}.reason.major,.reason.broken{opacity:.95;color:var(--bad)}.walk-times{margin-top:28px}.walk-times h2{font-size:.95rem;margin:0 0 4px}.hint{font-size:.76rem;opacity:.6;margin:0 0 10px}.walk-row{display:flex;align-items:center;gap:9px;width:100%;background:none;border:0;border-bottom:1px solid var(--line);padding:10px 2px;font:inherit;color:inherit;text-align:left;cursor:pointer}.walk-label{flex:1;font-size:.84rem}.walk-mins{font-size:.84rem;font-weight:650;font-variant-numeric:tabular-nums}.dot{width:9px;height:9px;border-radius:50%;border:1.5px solid currentColor;flex:none}.dot.learning{background:linear-gradient(90deg,currentColor 50%,transparent 50%)}.dot.settled{background:currentColor}.sheet-backdrop{position:fixed;inset:0;background:#0007;display:flex;align-items:flex-end;justify-content:center;z-index:10}.sheet{background:Canvas;color:CanvasText;width:100%;max-width:480px;border-radius:18px 18px 0 0;padding:18px 18px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:11px}.sheet h2{font-size:1.05rem;margin:0}.sheet h2.sub{margin-top:10px;font-size:.8rem;opacity:.6;text-transform:uppercase;letter-spacing:.05em}.stepper{display:flex;align-items:center;justify-content:center;gap:22px;padding:6px 0}.stepper button{width:52px;height:52px;border-radius:50%;font-size:1.6rem;border:1px solid var(--line);background:none;color:inherit;cursor:pointer}.stepper button:active{background:var(--soft)}.stepper-value{font-size:2rem;font-weight:700;font-variant-numeric:tabular-nums;min-width:110px;text-align:center}.sparkline{display:flex;align-items:flex-end;gap:3px;height:40px}.sparkline span{width:9px;background:currentColor;opacity:.4;border-radius:2px 2px 0 0}.sparkline em{align-self:flex-end;font-size:.7rem;opacity:.55;font-style:normal;margin-left:8px}.sparkline-empty{font-size:.76rem;opacity:.5;height:40px;display:flex;align-items:center}.bigclock{font-size:3.4rem;font-weight:700;text-align:center;font-variant-numeric:tabular-nums;padding:12px 0}.sheet button.primary,.sheet button.ghost,.place-row{font:inherit;padding:12px;border-radius:11px;cursor:pointer;text-align:center}.sheet button.primary{background:CanvasText;color:Canvas;border:0;font-weight:650}.sheet button.primary.big{font-size:1.15rem;padding:18px}.sheet button.ghost{background:none;color:inherit;border:1px solid var(--line)}.place-row{background:none;color:inherit;border:1px solid var(--line);text-align:left;display:flex;flex-direction:column;gap:2px}.place-row.current{border-color:currentColor;font-weight:650}.place-row em{font-style:normal;font-size:.75rem;opacity:.55;font-weight:400}.field{display:flex;flex-direction:column;gap:5px}.field span{font-size:.76rem;opacity:.7}.field input{font:inherit;font-size:1rem;padding:11px 13px;border-radius:10px;border:1px solid var(--line);background:none;color:inherit}.picked{background:var(--soft);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.picked strong{font-size:.9rem}.picked em{font-style:normal;font-size:.74rem;opacity:.55}.drift{font-size:.8rem;background:var(--soft);padding:9px 11px;border-radius:9px}.confidence-note{font-size:.74rem;opacity:.6}.link{background:none;border:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;padding:0}.escalation{display:flex;flex-direction:column;gap:7px;align-items:flex-start}.ride-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ride-links a{font-size:.8rem;font-weight:600;padding:6px 12px;border-radius:8px;border:1px solid currentColor;text-decoration:none;color:inherit}.ride-links em{font-size:.68rem;opacity:.6;font-style:normal}.push{margin-top:22px}.ghost-inline{font:inherit;font-size:.84rem;background:none;color:inherit;border:1px solid var(--line);border-radius:10px;padding:10px 14px;cursor:pointer}main.desktop{max-width:400px;padding-top:10px}main.desktop .headline{font-size:1.35rem;margin:12px 0}main.desktop .card{padding:9px 11px;border-radius:11px}main.desktop .arrive{font-size:1.2rem}main.desktop .legs{margin-top:6px;gap:4px}main.desktop .chip-leg{font-size:.72rem;padding:2px 6px}main.desktop .walk-times{margin-top:20px}.ambient-bar{position:fixed;top:0;left:0;right:0;height:3px;background:var(--ok);z-index:5}.ambient-bar.tight{background:var(--tight)}.ambient-bar.missed,.ambient-bar.none{background:var(--bad)}.ambient-bar.strong,.ambient-bar.blocked{background:var(--bad);height:5px}.desk-field{display:flex;align-items:center;gap:9px;width:100%;margin-top:16px;padding:11px 13px;background:var(--soft);border:1px solid var(--line);border-radius:11px;font:inherit;font-size:.84rem;color:inherit;cursor:pointer;text-align:left}.desk-field strong{margin-left:auto;font-variant-numeric:tabular-nums}footer{font-size:.66rem;opacity:.45;margin-top:30px;line-height:1.5}.hint.stamp{font-size:.68rem;opacity:.4;margin-top:14px}footer span{opacity:.8}.breakdown-toggle{font:inherit;font-size:.76rem;font-weight:600;background:none;border:0;color:inherit;opacity:.65;padding:8px 0 0;cursor:pointer;text-align:left}.breakdown-toggle:active{opacity:1}.breakdown{list-style:none;margin:10px 0 0;padding:11px 0 0 2px;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line)}.step{display:flex;gap:10px;align-items:flex-start}.step-icon{font-size:.95rem;line-height:1.3;flex:none;width:20px;text-align:center}.step-body{display:flex;flex-direction:column;gap:1px;min-width:0}.step-body strong{font-size:.86rem;font-weight:650;font-variant-numeric:tabular-nums}.step-body em{font-style:normal;font-size:.74rem;opacity:.6}.step.walk .step-body strong{font-weight:550;opacity:.85}.step-late{color:var(--bad);opacity:.95!important;font-weight:600}.step-ok{color:var(--ok);opacity:.8!important}.step-soft{opacity:.45!important}.step.sev-major .step-icon,.step.sev-broken .step-icon{filter:saturate(1.4)}
