.update-bar{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:1000;color:#fff;background:#17382c;border-radius:12px;align-items:center;gap:14px;max-width:calc(100vw - 32px);padding:10px 10px 10px 16px;font:600 13px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 28px #00000038}.update-bar button{color:#17382c;cursor:pointer;background:#cfff04;border:0;border-radius:9px;flex:none;min-height:36px;padding:0 14px;font:800 12px system-ui,-apple-system,sans-serif}@media (width<=600px){.update-bar{bottom:calc(76px + env(safe-area-inset-bottom))}}.ig{z-index:1000;color:#17211b;-webkit-font-smoothing:antialiased;background:#f7f7f2;font-family:inherit;position:fixed;inset:0;overflow-y:auto}.ig-card{max-width:440px;padding:20px 18px calc(96px + env(safe-area-inset-bottom));flex-direction:column;gap:8px;margin:0 auto;display:flex}.ig-app{border-radius:12px;width:48px;height:48px;box-shadow:0 2px 10px #17211b2e}.ig-eyebrow{letter-spacing:.12em;color:#5f6b63;margin:8px 0 0;font-size:11px;font-weight:850}.ig h1{letter-spacing:-.02em;margin:0;font-size:25px;font-weight:850;line-height:1.12}.ig h2{color:#17382c;margin:10px 0 0;font-size:15px;font-weight:850}.ig-why{color:#4b564f;margin:0;font-size:15.5px;line-height:1.4}.ig-steps{flex-direction:column;gap:8px;margin:4px 0 0;padding:0;list-style:none;display:flex}.ig-steps li{opacity:.5;background:#fff;border:1.5px solid #dfe3dc;border-radius:14px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;transition:opacity .15s,border-color .15s;display:grid}.ig-steps li.on{opacity:1;border-color:#17382c;box-shadow:0 4px 16px #17382c1f}.ig-steps li.done{opacity:.7}.ig-n{background:#e9ece6;border-radius:50%;place-items:center;width:36px;height:36px;font-size:16px;font-weight:900;display:grid}.ig-steps li.on .ig-n{color:#fff;background:#17382c}.ig-steps li.done .ig-n{color:#fff;background:#28704c}.ig-text{font-size:16.5px;line-height:1.35}.ig-text small{color:#5f6b63;margin-top:4px;font-size:13.5px;display:block}.ig-icon{background:#f0f2ed;border-radius:11px;place-items:center;width:44px;height:44px;display:grid}.ig-icon svg,.ig-arrow svg{fill:none;stroke:#1a73e8;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.ig-icon svg circle{fill:#1a73e8;stroke:none}.ig-nav{gap:8px;margin-top:6px;display:flex}.ig-go{color:#fff;min-height:56px;font:inherit;cursor:pointer;background:#17382c;border:0;border-radius:14px;flex:1;font-size:17px;font-weight:850}.ig-go:disabled{color:#4b564f;background:#c9cfc8}.ig-back,.ig-copy{color:#17211b;min-height:56px;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #dfe3dc;border-radius:14px;padding:0 20px;font-size:16px;font-weight:800}.ig-small{text-align:center;color:#4b564f;margin:0;font-size:15px}.ig-later{color:#5f6b63;font:inherit;cursor:pointer;background:0 0;border:0;align-self:center;margin-top:8px;padding:10px;font-size:15px;font-weight:700;text-decoration:underline}.ig-arrow{z-index:1001;background:#1a73e8;border-radius:50%;place-items:center;width:58px;height:58px;animation:1.1s ease-in-out infinite ig-bob;display:grid;position:fixed;box-shadow:0 6px 18px #1a73e873}.ig-arrow svg{stroke:#fff;stroke-width:2.6px}.ig-arrow.bottom{left:50%;bottom:calc(10px + env(safe-area-inset-bottom));width:48px;height:48px;margin-left:-24px}.ig-arrow.bottom-left{left:29%;bottom:calc(10px + env(safe-area-inset-bottom));width:48px;height:48px;margin-left:-24px}.ig-arrow.bottom-right{right:16px;bottom:calc(14px + env(safe-area-inset-bottom))}.ig-arrow.top-right{right:16px;top:calc(14px + env(safe-area-inset-top))}.ig-arrow.top-right svg{transform:rotate(180deg)}@keyframes ig-bob{0%,to{translate:0}50%{translate:0 8px}}.ig-arrow.top-right{animation-name:ig-bob-up}@keyframes ig-bob-up{0%,to{translate:0}50%{translate:0 -8px}}@media (prefers-reduced-motion:reduce){.ig-arrow{animation:none}}.ig-banner{color:#17211b;width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid #17382c;border-radius:14px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;display:grid}.ig-banner img{border-radius:10px;width:44px;height:44px}.ig-banner span{flex-direction:column;display:flex}.ig-banner b{font-size:16px}.ig-banner small{color:#5f6b63;font-size:13.5px}.ig-banner i{color:#17382c;font-size:26px;font-style:normal}.crew{--g:#17382c;--lime:#cfff04;--ink:#17211b;--mut:#66736a;--ln:#dfe4dc;--bg:#fff;--ok:#28704c;--okbg:#e8f3ec;--warn:#9a5b00;--warnbg:#fff4dc;--bad:#b42318;--badbg:#fdecea;--card:#fff;--soft:#f0f2ef;--soft2:#f5f6f3;--ln2:#eef0ec}.crew .cr-top-acts{gap:12px;display:flex}.crew .cr-card{border:1px solid var(--ln);background:var(--bg);border-radius:18px;margin-bottom:12px;padding:18px}.crew .cr-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--mut);font-size:11px;font-weight:900;display:block}.crew h1{letter-spacing:-.02em;margin:6px 0 2px;font-size:26px;line-height:1.1}.crew .cr-muted{color:var(--mut);margin:4px 0 0;font-size:14px}.crew .cr-crew{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.crew .cr-pill{background:var(--soft);border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;font-weight:700;display:inline-flex}.crew .cr-pill b{letter-spacing:.08em;text-transform:uppercase;font-size:9.5px}.crew .cr-pill.lead{background:var(--g);color:#fff}.crew .cr-pill.lead b{color:var(--lime)}.crew .cr-gps{background:var(--soft2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;padding:10px 12px;font-size:13px;line-height:1.35;display:flex}.crew .cr-gps i{background:#a9b3ab;border-radius:50%;flex:none;width:9px;height:9px}.crew .cr-gps.good i{background:var(--ok)}.crew .cr-gps.warn{background:var(--warnbg)}.crew .cr-gps.warn i{background:#d08700}.crew .cr-gps button{background:var(--g);color:#fff;border:0;border-radius:9px;margin-left:auto;padding:7px 11px;font-weight:800}.crew .cr-alert{background:var(--badbg);color:var(--bad);border-radius:14px;align-items:center;gap:10px;margin:0 0 12px;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.35;display:flex}.crew .cr-alert button{color:var(--bad);background:0 0;border:0;margin-left:auto;font-weight:900}.crew .cr-main{background:var(--g);color:#fff;border:0;border-radius:16px;width:100%;min-height:58px;margin:0 0 12px;font-size:18px;font-weight:850;display:block}.crew .cr-main.ghost{background:var(--card);color:var(--g);border:2px solid var(--g)}.crew .cr-main:disabled{opacity:.5}.crew .cr-danger{background:var(--bad);color:#fff;border-radius:16px;margin:0 0 12px;padding:14px 16px;animation:1.4s ease-in-out infinite cr-pulse}.crew .cr-danger b{font-size:19px;line-height:1.2;display:block}.crew .cr-danger p{margin:6px 0 0;font-size:14px;font-weight:700;line-height:1.4}.crew .cr-warnbox{background:var(--warnbg);color:var(--ink);border:1px solid #f0d9a8;border-radius:14px;margin:0 0 12px;padding:12px 14px}.crew .cr-warnbox b{color:var(--warn);font-size:16px;display:block}.crew .cr-warnbox p{margin:4px 0 0;font-size:13.5px}.crew .cr-locked{background:var(--soft);border:2px dashed #a9b3ab;border-radius:16px;margin:0 0 12px;padding:14px 16px}.crew .cr-locked b{font-size:17px;display:block}.crew .cr-locked p{margin:6px 0 0;font-size:14px;font-weight:700}.crew .cr-locked small{color:var(--mut);margin-top:6px;font-size:12.5px;display:block}@keyframes cr-pulse{50%{box-shadow:0 0 0 6px #b4231840}}@media (prefers-reduced-motion:reduce){.crew .cr-danger{animation:none}}.crew .cr-saved{color:var(--warn);margin-top:2px;font-size:11.5px;font-weight:800;display:block}.crew .cr-queue{background:var(--soft2);color:var(--g);border-radius:12px;align-items:center;gap:8px;margin:0 0 12px;padding:10px 12px;font-size:13.5px;font-weight:700;display:flex}.crew .cr-queue i{background:var(--ok);border-radius:50%;flex:none;width:9px;height:9px}.crew .cr-queue.off{background:var(--warnbg);color:var(--warn)}.crew .cr-queue.off i{background:#d08700}.crew .cr-name{font:inherit;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:16px;font-weight:800;display:inline-flex}.crew .cr-name:after{content:"›";color:var(--mut);font-weight:700;transition:transform .15s}.crew .cr-rider.open .cr-name:after{transform:rotate(90deg)}.crew .cr-care-tag{background:var(--badbg);color:var(--bad);letter-spacing:.08em;border-radius:6px;padding:2px 6px;font-size:9.5px;font-weight:900;display:inline-block}.crew .cr-rider.open{flex-wrap:wrap}.crew .cr-info{border-top:1px dashed var(--ln);flex-basis:100%;margin-top:10px;padding-top:10px}.crew .cr-care{background:var(--badbg);color:var(--ink);border-radius:12px;margin:0 0 10px;padding:10px 12px;font-size:14.5px;font-weight:700;line-height:1.4}.crew .cr-care b{letter-spacing:.1em;text-transform:uppercase;color:var(--bad);margin-bottom:2px;font-size:10px;display:block}.crew .cr-calls{gap:8px;display:grid}.crew .cr-call{background:var(--g);color:#fff;border-radius:12px;justify-content:space-between;align-items:center;min-height:48px;padding:0 14px;font-size:14.5px;font-weight:800;text-decoration:none;display:flex}.crew .cr-call small{color:#ffffffbf;white-space:nowrap;margin-left:10px;font-size:12.5px;font-weight:700}.crew .cr-far{background:var(--warnbg);color:var(--ink);border-radius:12px;margin-top:10px;padding:12px}.crew .cr-far p{margin:0 0 10px;font-size:14.5px;font-weight:800;line-height:1.35}.crew .cr-far div{gap:8px;display:flex}.crew .cr-link{color:#ffffffbf;background:0 0;border:0;padding:8px 4px;font-size:12.5px;font-weight:700;text-decoration:underline}.crew .cr-confirm{background:var(--warnbg);border-radius:16px;margin:0 0 12px;padding:14px}.crew .cr-confirm p{margin:0 0 10px;font-weight:700}.crew .cr-confirm div{gap:8px;display:flex}.crew .cr-next{background:var(--g);color:#fff;border-radius:16px;margin:0 0 12px;padding:14px 16px}.crew .cr-next span{letter-spacing:.1em;text-transform:uppercase;color:var(--lime);font-size:11px;font-weight:900;display:block}.crew .cr-next b{margin-top:4px;font-size:22px;display:block}.crew .cr-next small{color:#ffffffbf;margin-top:4px;font-size:12.5px;display:block}.crew .cr-backup{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.crew .cr-backup .cr-btn{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.crew .cr-check-head{justify-content:space-between;align-items:baseline;margin:18px 2px 8px;display:flex}.crew .cr-check-head h2{margin:0;font-size:18px}.crew .cr-check-head span{color:var(--mut);font-size:13px;font-weight:700}.crew .cr-stop{border:1px solid var(--ln);background:var(--bg);border-radius:16px;margin-bottom:10px;overflow:hidden}.crew .cr-stop.here{border-color:var(--g);box-shadow:0 0 0 1px var(--g)}.crew .cr-stop-head{background:var(--soft2);border-bottom:1px solid var(--ln);align-items:center;gap:10px;padding:10px 12px;display:flex}.crew .cr-stop-head b{font-size:14px}.crew .cr-stop-head em{color:var(--ok);background:var(--okbg);border-radius:999px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:900}.crew .cr-stop-head .cr-btn{margin-left:auto}.crew .cr-num{background:var(--g);width:24px;height:24px;color:var(--lime);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:900;display:grid}.crew .cr-stop ul{margin:0;padding:0;list-style:none}.crew .cr-rider{border-top:1px solid var(--ln2);align-items:center;gap:10px;padding:12px;display:flex}.crew .cr-rider:first-child{border-top:0}.crew .cr-who{flex:1;min-width:0}.crew .cr-who b{font-size:16px;display:block}.crew .cr-state{color:var(--mut);margin-top:2px;font-size:12px;display:block}.crew .s-aboard .cr-state{color:var(--ok);font-weight:800}.crew .s-dropped .cr-who b,.crew .s-not_riding .cr-who b{color:var(--mut)}.crew .s-no_show .cr-state{color:var(--bad);font-weight:800}.crew .cr-btns{flex:none;gap:6px;display:flex}.crew .cr-btn{border:1px solid var(--ln);background:var(--card);min-height:44px;color:var(--ink);border-radius:12px;padding:0 14px;font-size:14px;font-weight:800}.crew .cr-btn.small{min-height:34px;padding:0 10px;font-size:12.5px}.crew .cr-btn.go{background:var(--g);border-color:var(--g);color:#fff}.crew .cr-btn.warn{background:var(--warnbg);color:var(--warn);border-color:#f0d9a8}.crew .cr-btn:disabled{opacity:.5}.crew .cr-done{color:var(--ok);margin:4px 2px 0;font-size:14px;font-weight:800}@media (width<=380px){.crew .cr-rider{flex-wrap:wrap}.crew .cr-btns{width:100%}.crew .cr-btn{flex:1}}.crew .pw-acts .btn{border:1px solid var(--ln);background:var(--card);border-radius:12px;min-height:44px;padding:0 16px;font-size:14px;font-weight:800}.crew .pw-acts .btn-primary{background:var(--g);border-color:var(--g);color:#fff}.crew .cr-help{margin:0 0 12px}.crew .cr-help-btns{grid-template-columns:1fr 1fr;gap:8px;display:grid}.crew .cr-help-btns .cr-btn{min-height:48px;font-size:15px}.crew .cr-btn.em{background:var(--card);color:var(--bad);border:2px solid var(--bad)}.crew .cr-sentlist{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:grid}.crew .cr-sentlist li{background:var(--soft);border-radius:10px;justify-content:space-between;gap:8px;padding:7px 10px;font-size:12.5px;display:flex}.crew .cr-sentlist li.emergency{background:var(--badbg);color:var(--bad)}.crew .cr-sentlist span{color:var(--mut);white-space:nowrap;font-weight:700}.crew .cr-sheet{z-index:50;background:#0a140e73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.crew .cr-sheet-in{background:var(--card);border-radius:20px 20px 0 0;width:100%;max-width:520px;max-height:92vh;padding:16px 16px 24px;overflow:auto}.crew .cr-sheet-in.em{border-top:6px solid var(--bad)}.crew .cr-sheet-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.crew .cr-sheet-top h2{margin:0;font-size:22px}.crew .cr-sheet-in.em .cr-sheet-top h2{color:var(--bad)}.crew .cr-sheet-top button{color:var(--mut);background:0 0;border:0;padding:8px;font-size:14px;font-weight:800}.crew .cr-choices{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.crew .cr-choices.em{grid-template-columns:1fr}.crew .cr-choices button{border:2px solid var(--ln);background:var(--card);min-height:54px;color:var(--ink);border-radius:14px;padding:6px 10px;font-size:15px;font-weight:800}.crew .cr-choices button.on{border-color:var(--g);background:var(--g);color:#fff}.crew .cr-choices.em button{border-color:var(--badline,#e6bbb6);min-height:60px;color:var(--bad);font-size:17px}.crew .cr-choices.em button.on{background:var(--bad);border-color:var(--bad);color:#fff}.crew .cr-note{gap:6px;margin-bottom:12px;font-size:13px;font-weight:800;display:grid}.crew .cr-note i{color:var(--mut);font-style:normal;font-weight:600}.crew .cr-note textarea{box-sizing:border-box;border:1px solid var(--ln);width:100%;font:inherit;resize:vertical;border-radius:12px;padding:10px 12px;font-size:15px}.crew .cr-sheet-err{color:var(--bad);margin:0 0 10px;font-size:14px;font-weight:800}.crew .cr-main.em{background:var(--bad)}.crew .cr-911{background:var(--badbg);color:var(--bad);text-align:center;border-radius:14px;margin:0 0 12px;padding:12px;font-size:16px;font-weight:900;text-decoration:none;display:block}.crew .cr-sent b{font-size:20px;display:block}.crew .cr-sent p{color:var(--mut);margin:6px 0 14px;font-size:15px}.crew .cr-dir{letter-spacing:.1em;text-transform:uppercase;border-radius:18px 18px 0 0;justify-content:space-between;align-items:center;gap:10px;margin:-18px -18px 14px;padding:10px 18px;font-size:12px;font-weight:900;display:flex}.crew .cr-dir b{letter-spacing:.02em;text-transform:none;font-size:15px}.crew .cr-dir.am{color:#6b4e00;background:#fff1c7}.crew .cr-dir.pm{color:#cfff04;background:#0b1020}.crew.pm{--ink:#eef2ee;--mut:#a3b3a8;--ln:#2f3d35;--ln2:#26332c;--bg:#17211c;--card:#17211c;--soft:#223029;--soft2:#1c2722;--g:#2e7d5b;--ok:#7ad7a3;--okbg:#173326;--warn:#f2c35f;--warnbg:#3a2f12;--bad:#ff9184;--badbg:#3d1d1a;color:var(--ink);background:#0d1410}body:has(.crew.pm){background:#0d1410}.crew.pm .ftop .wm,.crew.pm h1,.crew.pm h2{color:var(--ink)}.crew.pm .ftop .wm span,.crew.pm .ftop button{color:var(--mut)}.crew.pm .cr-danger,.crew.pm .cr-main.em,.crew.pm .cr-choices.em button.on{color:#fff;background:#c0352a}.crew.pm .cr-next,.crew.pm .cr-pill.lead{background:#0b1020}.crew.pm .cr-sheet-in{color:var(--ink)}.crew.pm .cr-note textarea{background:var(--soft2);color:var(--ink)}.crew.pm .cr-warnbox{border-color:#5c4a1b}.crew.pm .cr-locked{border-color:#4a5a50}.crew .cr-fallback{flex-direction:column;gap:8px;margin:4px 0 10px;display:flex}.crew .cr-call{color:#fff;text-align:center;background:#17382c;border-radius:12px;padding:14px;font-size:17px;font-weight:850;text-decoration:none;display:block}.crew .cr-reload{font:inherit;cursor:pointer;background:#fff;border:1px solid #dfe3dc;border-radius:12px;padding:12px;font-size:15px;font-weight:800}.ops .fl-table tbody tr{cursor:pointer}.ops .fl-table tbody tr:hover td{background:#fafbf9}.ops .fl-table tr.off td{color:var(--muted)}.ops .fl-bus{align-items:center;gap:10px;display:inline-flex}.ops .fl-tag{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:850;display:inline-block}.ops .fl-tag.ok{background:var(--okbg);color:var(--ok)}.ops .fl-tag.warn{background:var(--warnbg);color:var(--warn)}.ops .fl-tag.bad{background:var(--badbg);color:var(--bad)}.ops .fl-tag.off{background:var(--line2);color:var(--muted)}.ops .fl-cards{flex-direction:column;gap:8px;display:flex}.ops .fl-card{border:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:#fff;border-radius:12px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"av t""av tag";align-items:center;gap:4px 12px;padding:12px 14px;display:grid}.ops .fl-card .av{grid-area:av}.ops .fl-card .fl-tag{grid-area:tag;justify-self:start}.ops .fl-card.off{opacity:.65}.ops .fl-card-text{flex-direction:column;grid-area:t;min-width:0;display:flex}.ops .fl-card-text small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.ops .fl-sub{margin:-4px 0 12px}.ops .fl-bp{border:1px solid var(--line);color:#17211b;background:#fbfbf8;border-radius:12px;width:100%;height:auto;padding:6px;display:block}.ops .fl-bp .fillable{fill:#fff}.ops .fl-bp .bp-zone.ok{stroke:#28704c}.ops .fl-bp .bp-zone.ok .fillable{fill:#e6f2ea}.ops .fl-bp .bp-zone.warn{stroke:#a87711}.ops .fl-bp .bp-zone.warn .fillable{fill:#faf0d6}.ops .fl-bp .bp-zone.bad{stroke:#ad4138;stroke-width:2.25px}.ops .fl-bp .bp-zone.bad .fillable{fill:#f9e2df}.ops .fl-bp .bp-zone.info{stroke:#8a959e;stroke-dasharray:3 3}.ops .fl-bp .bp-pin circle{stroke:#fff;stroke-width:2px;stroke-dasharray:none}.ops .fl-bp .bp-pin.ok circle{fill:#28704c}.ops .fl-bp .bp-pin.warn circle{fill:#a87711}.ops .fl-bp .bp-pin.bad circle{fill:#ad4138}.ops .fl-bp .bp-pin.info circle{fill:#8a959e}.ops .fl-bp .bp-pin text{fill:#fff;stroke:none;font-family:inherit;font-size:12px;font-weight:900}.ops .fl-checks{grid-template-columns:1fr;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.ops .m .fl-checks{grid-template-columns:1fr}.ops .fl-checks li{border:1px solid var(--line2);border-radius:10px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:grid}.ops .fl-checks .n{color:#fff;background:#7a8794;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;font-weight:900;display:inline-grid}.ops .fl-checks li.ok .n{background:var(--ok)}.ops .fl-checks li.warn .n{background:#a87711}.ops .fl-checks li.bad .n{background:var(--bad)}.ops .fl-checks li.bad{background:var(--badbg);border-color:var(--badline)}.ops .fl-checks li.warn{background:var(--warnbg);border-color:var(--warnline)}.ops .fl-checks li span:last-child{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ops .fl-checks li.bad span:last-child{color:var(--bad);font-weight:750}.ops .fl-form{border-top:1px solid var(--line2);margin-top:18px;padding-top:14px}.ops .fl-form .rf2 input{min-width:0}.ops .fl-retire{border-top:1px solid var(--line2);margin-top:18px;padding-top:14px}.ops .fl-form textarea{font:inherit;border:1px solid var(--line);resize:vertical;border-radius:10px;padding:10px 12px;font-size:14px}.ops .nb{gap:18px;max-width:1280px;display:grid}.ops .nb-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:4px 0 14px;display:flex}.ops .nb-clock{color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;margin:0;font-size:13px;font-weight:800}.ops .nb-head h1{letter-spacing:-.02em;color:var(--ink);margin:4px 0 0;font-size:40px;line-height:1.05}.ops .nb-head.bad h1{color:var(--bad)}.ops .nb-head.warn h1{color:var(--warn)}.ops .nb-sub{color:var(--muted);margin:8px 0 0;font-size:16px}.ops .nb-head-acts{align-items:center;gap:10px;display:flex}.ops .nb-notes{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ops .nb-notes li{background:var(--warnbg);border:1px solid var(--warnline);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex}.ops .nb-notes li.bad{background:var(--badbg);border-color:var(--badline)}.ops .nb-notes button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:8px;flex:none;padding:8px 14px;font-size:13px;font-weight:800}.ops .nb-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.ops .nb-card{background:var(--paper);border:1px solid var(--line);cursor:pointer;border-radius:14px;outline:none;flex-direction:column;gap:6px;padding:16px 16px 14px 20px;transition:box-shadow .15s,transform .15s;display:flex;position:relative}.ops .nb-card:before{content:"";background:var(--c);border-radius:0 4px 4px 0;width:5px;position:absolute;top:12px;bottom:12px;left:0}.ops .nb-card:hover,.ops .nb-card:focus-visible{transform:translateY(-1px);box-shadow:0 6px 20px #17211b14}.ops .nb-card.bad{border-color:var(--bad);box-shadow:0 0 0 1px var(--bad)}.ops .nb-card.warn{border-color:var(--warnline)}.ops .nb-card.idle .nb-big{color:var(--muted)}.ops .nb-card header{align-items:center;gap:10px;display:flex}.ops .nb-num{background:var(--c);color:#fff;border-radius:8px;place-items:center;min-width:30px;height:30px;padding:0 6px;font-size:15px;font-weight:900;display:inline-grid}.ops .nb-name{font-size:16px}.ops .nb-tag{background:var(--idlebg);color:var(--idle);white-space:nowrap;border-radius:999px;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:850}.ops .nb-tag.ok{background:var(--okbg);color:var(--ok)}.ops .nb-tag.bad{background:var(--bad);color:#fff}.ops .nb-tag.warn{background:var(--warnbg);color:var(--warn)}.ops .nb-big{color:var(--ink);margin:8px 0 0;font-size:22px;font-weight:850;line-height:1.2}.ops .nb-small{color:var(--muted);margin:0;font-size:14px}.ops .nb-bar{background:var(--line2);border-radius:99px;height:6px;margin-top:6px;overflow:hidden}.ops .nb-bar i{background:var(--c);border-radius:99px;height:100%;display:block}.ops .nb-problem{background:var(--badbg);color:var(--bad);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-top:6px;padding:9px 10px;font-size:13px;font-weight:750;display:flex}.ops .nb-card.warn .nb-problem{background:var(--warnbg);color:var(--warn)}.ops .nb-problem button{background:var(--bad);color:#fff;cursor:pointer;border:0;border-radius:8px;flex:none;padding:7px 12px;font-size:13px;font-weight:850}.ops .nb-card.warn .nb-problem button{background:var(--warn)}.ops .nb-card footer{border-top:1px solid var(--line2);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding-top:10px;font-size:13px;display:flex}.ops .nb-card footer b{color:var(--ink);font-size:15px}.ops .nb-crew{text-align:right;color:var(--ink);font-weight:650}.ops .nb-crew em{color:var(--bad);font-style:normal}.ops .nb-crew a{color:var(--green);margin-left:10px;font-weight:850}.ops .nb-dim{color:var(--soft);font-weight:500}.ops .nb-empty{border:1px dashed var(--line);color:var(--muted);border-radius:14px;justify-items:start;gap:12px;padding:32px;font-size:18px;display:grid}.ops .nb-empty p{margin:0}.ops .nb-idle{color:var(--muted);margin:0;font-size:13px}.ops .nb-idle a{color:var(--green);font-weight:800}.ops .nb-map{border:1px solid var(--line);background:var(--sage);border-radius:14px;height:440px;position:relative;overflow:hidden}.ops .nb-map>*{height:100%}.ops .nb-map>.nb-wall-btn{z-index:3;border:1px solid var(--line);height:auto;font:inherit;color:var(--ink);cursor:pointer;background:#fffffff5;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:850;position:absolute;top:12px;right:12px;box-shadow:0 4px 14px -6px #00000040}.ops .nb-map>.nb-wall-btn:hover{background:#fff}@media (width<=700px){.ops .nb-head h1{font-size:30px}.ops .nb-grid{grid-template-columns:1fr}.ops .nb-map{height:300px}}.ops .nb-miss{color:var(--bad);font-style:normal;font-weight:850}.ops .em-banner .em-kids{color:#fff;margin-top:8px;font-size:13.5px;line-height:1.45}.ops .em-banner .em-kids b{font-size:13.5px;display:inline}.ops .rc{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.ops .nb-inbox{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.ops .nb-inbox-head{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:12px 14px;font-size:14px;display:flex}.ops .nb-inbox-head i{background:#8a959e;border-radius:50%;flex:none;width:9px;height:9px}.ops .nb-inbox.warn .nb-inbox-head i{background:var(--warn)}.ops .nb-inbox-head b{flex:none}.ops .nb-inbox-head span{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ops .nb-inbox-head em{color:var(--green);flex:none;font-size:13px;font-style:normal;font-weight:850}.ops .nb-inbox ul{border-top:1px solid var(--line2);margin:0;padding:0;list-style:none}.ops .nb-inbox li{justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:flex}.ops .nb-inbox li+li{border-top:1px solid var(--line2)}.ops .nb-inbox li.warn{background:#fffaf0}.ops .nb-inbox li small{color:var(--soft)}.ops .nb-inbox li button{border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;background:#fff;border-radius:8px;flex:none;padding:7px 12px;font-size:13px;font-weight:800}.demo-login{text-align:left;border-bottom:1px solid #dfe3dc;flex-direction:column;gap:10px;margin:0 0 22px;padding:0 0 20px;display:flex}.demo-tag{letter-spacing:.1em;color:#a1561b;margin:0;font-size:11px;font-weight:850}.demo-login h2{color:#17211b;margin:0;font-size:22px;font-weight:850}.demo-pick{color:#17211b;width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid #17382c;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"b i""s i";align-items:center;gap:2px 10px;padding:14px 16px;display:grid}.demo-pick:hover:not(:disabled){background:#f3f6f1}.demo-pick:disabled{opacity:.5;cursor:default}.demo-pick b{grid-area:b;font-size:17px}.demo-pick span{color:#5f6b63;grid-area:s;font-size:13.5px}.demo-pick i{color:#17382c;grid-area:i;font-size:26px;font-style:normal}.demo-tip{color:#5f6b63;margin:4px 0 0;font-size:13px}.demo-error{color:#ad4138;margin:0;font-size:13.5px;font-weight:700}.demo-bar{left:50%;top:calc(6px + env(safe-area-inset-top));z-index:900;flex-direction:column-reverse;align-items:center;gap:8px;font-family:inherit;display:flex;position:fixed;transform:translate(-50%)}.demo-bar .demo-btn{height:28px;font-size:11px}@media (width>=1024px){.demo-bar{flex-direction:column;align-items:flex-end;inset:auto 20px 90px auto;transform:none}.demo-bar .demo-btn{height:36px;font-size:12px}}.demo-btn{color:#fff;height:36px;font:inherit;letter-spacing:.08em;cursor:pointer;background:#a1561b;border:0;border-radius:999px;padding:0 14px;font-size:12px;font-weight:900;box-shadow:0 4px 14px #0003}.demo-panel{color:#17211b;background:#fff;border:1px solid #dfe3dc;border-radius:14px;width:min(320px,100vw - 28px);padding:14px;box-shadow:0 10px 30px #0000002e}.demo-panel h3{letter-spacing:.06em;text-transform:uppercase;color:#5f6b63;margin:12px 0 6px;font-size:12px;font-weight:850}.demo-row{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:6px;display:grid}.demo-row button{color:#17211b;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe3dc;border-radius:10px;flex-direction:column;gap:2px;padding:9px 10px;font-size:14px;font-weight:800;display:flex}.demo-row button:hover:not(:disabled){border-color:#17382c}.demo-row button:disabled{opacity:.5}.demo-row small{color:#5f6b63;white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:600;overflow:hidden}.demo-note{color:#5f6b63;margin:10px 0 0;font-size:12px}.demo-welcome{color:#17211b;background:#f7f7f2;min-height:100vh;padding:32px 18px 60px;font-family:inherit}.demo-wl{flex-direction:column;gap:14px;max-width:560px;margin:0 auto;display:flex}.demo-mark{color:#d6f25a;background:#17382c;border-radius:14px;place-items:center;width:52px;height:52px;font-size:26px;font-weight:900;display:grid}.demo-wl h1{letter-spacing:-.03em;margin:0;font-size:38px;font-weight:900;line-height:1.05}.demo-lede{color:#3f4a43;margin:0;font-size:17px;line-height:1.5}.demo-choice{background:#fff;border:1.5px solid #dfe3dc;border-radius:16px;flex-direction:column;gap:12px;padding:18px;display:flex}.demo-choice h2{margin:0;font-size:20px;font-weight:850}.demo-choice p{color:#5f6b63;margin:4px 0 0;font-size:15px}.demo-mine label{letter-spacing:.06em;text-transform:uppercase;color:#5f6b63;flex-direction:column;gap:5px;font-size:12px;font-weight:850;display:flex}.demo-mine input{box-sizing:border-box;width:100%;min-width:0;height:48px;font:inherit;color:#17211b;letter-spacing:0;text-transform:none;border:1.5px solid #dfe3dc;border-radius:10px;padding:0 12px;font-size:17px}.demo-mine input:focus{outline-offset:1px;outline:2px solid #17382c}.demo-two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.demo-go{color:#fff;min-height:52px;font:inherit;cursor:pointer;background:#17382c;border:0;border-radius:12px;font-size:17px;font-weight:850}.demo-go:disabled{opacity:.6;cursor:default}.demo-fine{color:#5f6b63;margin:0;font-size:13.5px}.demo-past{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.demo-past button{color:#17211b;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid #dfe3dc;border-radius:12px;flex-direction:column;gap:2px;padding:12px;display:flex}.demo-past button b{font-size:16px}.demo-past button small{color:#5f6b63;font-size:12.5px}.demo-past button.on{background:#f3f6f1;border-color:#17382c;box-shadow:inset 0 0 0 1px #17382c}.demo-del{color:#5f6b63;border-top:1px dashed #e0b9a0;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;padding-top:14px;font-size:13.5px;display:flex}.demo-del button{color:#17211b;font:inherit;cursor:pointer;background:#fff;border:1px solid #dfe3dc;border-radius:9px;padding:8px 12px;font-size:13.5px;font-weight:800}.demo-del button small{letter-spacing:.08em;color:#a1561b;margin-left:4px;font-size:10px;font-weight:900}.demo-del .demo-del-yes{color:#fff;background:#ad4138;border-color:#ad4138}.demo-keep{flex-direction:column;gap:6px;display:flex}.demo-keep label{cursor:pointer;border:1px solid #dfe3dc;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;display:grid}.demo-keep label.forced{opacity:.6;cursor:default}.demo-keep input{accent-color:#17382c;width:18px;height:18px}.demo-keep span{flex-direction:column;display:flex}.demo-keep b{font-size:14px}.demo-keep small{color:#5f6b63;font-size:11.5px}.demo-wide{color:#fff;width:100%;font:inherit;cursor:pointer;background:#17382c;border:1px solid #17382c;border-radius:10px;margin-top:10px;padding:11px;font-size:14px;font-weight:850}.demo-panel .demo-danger{color:#fff;background:#ad4138;border-color:#ad4138}.demo-link{color:#5f6b63;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:8px;padding:4px 0;font-size:13px;font-weight:700;text-decoration:underline}.demo-panel{max-height:calc(100vh - 140px);overflow-y:auto}.demo-speed{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-speed button{text-align:center;align-items:center;padding:9px 4px}.demo-speed button.on{color:#fff;background:#17382c;border-color:#17382c}.demo-now{color:#17382c;background:#f3f6f1;border-radius:10px;margin:4px 0 2px;padding:10px 12px;font-size:14px;font-weight:700;line-height:1.35}.demo-row button.on{color:#fff;background:#17382c;border-color:#17382c}.demo-row button.on small{color:#d6f25a}.demo-tools{border-top:1px solid #eef0ea;margin-top:4px;padding-top:4px}.ops .wall{z-index:400;color:var(--ink);background:#f4f5f0;flex-direction:column;display:flex;position:fixed;inset:0}.ops .wall-top{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:24px;padding:16px 24px;display:flex}.ops .wall-top small{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:850}.ops .wall-top h1{letter-spacing:-.02em;margin:2px 0 0;font-size:34px;font-weight:900;line-height:1.05}.ops .wall-top h1.bad{color:var(--bad)}.ops .wall-meta{text-align:right;flex-direction:column;margin-left:auto;display:flex}.ops .wall-meta b{font-variant-numeric:tabular-nums;font-size:28px;font-weight:900}.ops .wall-meta span{color:var(--muted);font-size:14px}.ops .wall-close{border:1px solid var(--line);font:inherit;cursor:pointer;background:#fff;border-radius:10px;flex:none;padding:10px 16px;font-size:14px;font-weight:850}.ops .wall-body{flex:1;grid-template-columns:minmax(0,1fr) 380px;min-height:0;display:grid}.ops .wall-map{min-height:0;position:relative}.ops .wall-map>*{height:100%}.ops .wall-empty{width:max-content;color:var(--muted);background:#fffffff2;border-radius:10px;height:auto;margin:0 auto;padding:10px 16px;font-weight:800;position:absolute;inset:auto 0 24px}.ops .wall-list{border-left:1px solid var(--line);background:#fafbf8;flex-direction:column;gap:10px;padding:14px;display:flex;overflow-y:auto}.ops .wall-bus{border:1px solid var(--line);border-left:6px solid var(--c);width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px;display:grid}.ops .wall-bus.bad{border-color:var(--badline);border-left-color:var(--bad);background:var(--badbg)}.ops .wall-num{background:var(--c);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-size:18px;font-weight:900;display:grid}.ops .wall-text{flex-direction:column;gap:3px;min-width:0;display:flex}.ops .wall-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.ops .wall-row b{font-size:15px}.ops .wall-row em{background:var(--line2);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11.5px;font-style:normal;font-weight:850}.ops .wall-row em.ok{background:var(--okbg);color:var(--ok)}.ops .wall-row em.bad{background:var(--bad);color:#fff}.ops .wall-row em.warn{background:var(--warnbg);color:var(--warn)}.ops .wall-text strong{font-size:20px;font-weight:850;line-height:1.15}.ops .wall-text small{color:var(--muted);font-size:13.5px}.ops .wall-bar{background:var(--line2);border-radius:99px;height:6px;margin-top:6px;display:block;overflow:hidden}.ops .wall-bar i{background:var(--c);height:100%;display:block}.ops .wall-kids{font-weight:750;color:var(--ink)!important}.ops .wall-none{color:var(--muted)}@media (width<=900px){.ops .wall-body{grid-template-rows:1fr auto;grid-template-columns:1fr}.ops .wall-list{border-left:0;border-top:1px solid var(--line);max-height:40vh}.ops .wall-top h1{font-size:24px}.ops .wall-meta{display:none}}:root{--ink:#17211b;--muted:#66736a;--green:#17382c;--green2:#245440;--lime:#cfff04;--cream:#f7f7f2;--line:#dce3dc;--line2:#edf0ec;--sage:#e7eee5;--bad:#ad4138;--badbg:#f9ebe9;--badline:#e6bbb6;--warn:#8a651e;--warnbg:#faf2dc;--warnline:#ead7a8;--ok:#28704c;--okbg:#e8f3ec;color:var(--ink);background:var(--cream);font-synthesis:none;-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--cream);margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}button,input,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--green);outline-offset:2px}.eyebrow{color:#748078;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:10px;font-weight:900}.hint{color:var(--muted);font-size:12px}.auth-screen{background:var(--cream);place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(100%,420px);padding:32px;box-shadow:0 18px 50px #17382c14}.auth-brand{background:var(--green);width:44px;height:44px;color:var(--lime);border-radius:13px;place-items:center;margin-bottom:28px;font-size:22px;font-weight:900;display:grid}.auth-card h1{letter-spacing:-.045em;margin:8px 0 6px;font-size:32px}.description{color:var(--muted);margin:0;font-size:14px;line-height:1.45}.auth-form{gap:8px;margin-top:22px;display:grid}.auth-form label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:10px;font-weight:900}.auth-form input{border:1px solid var(--line);background:#fff;border-radius:10px;height:46px;padding:0 12px;font-size:16px}.auth-button{background:var(--green);color:#fff;border:0;border-radius:12px;min-height:48px;margin-top:12px;font-size:15px;font-weight:850}.auth-button:hover{background:var(--green2)}.auth-button:disabled{opacity:.55;cursor:wait}.auth-text-button{color:var(--muted);background:0 0;border:0;margin-top:14px;font-size:13px;font-weight:750;text-decoration:underline}.auth-error{border:1px solid var(--badline);background:var(--badbg);color:var(--bad);border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:13px;font-weight:700}.field{max-width:520px;min-height:100dvh;margin:0 auto;padding:10px 14px 96px}.ftop{justify-content:space-between;align-items:center;gap:10px;padding:8px 2px 12px;display:flex}.ftop .wm{letter-spacing:.12em;font-size:12px;font-weight:900}.ftop .wm span{letter-spacing:0;color:var(--muted);margin-top:2px;font-size:11px;font-weight:700;display:block}.ftop button{color:var(--muted);background:0 0;border:0;font-size:12px;font-weight:800;text-decoration:underline}.fh1{letter-spacing:-.045em;margin:4px 2px 12px;font-size:28px}.ferror{border:1px solid var(--badline);background:var(--badbg);color:var(--bad);border-radius:12px;margin:0 0 10px;padding:10px 12px;font-size:13px;font-weight:700}.health{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:repeat(3,1fr);margin-bottom:10px;display:grid;overflow:hidden}.health div{letter-spacing:.07em;border-left:1px solid var(--line2);align-items:center;gap:7px;min-width:0;padding:8px;font-size:9px;font-weight:900;display:flex}.health div:first-child{border-left:0}.health i{background:var(--ok);border-radius:50%;flex:none;width:8px;height:8px}.health small{color:var(--muted);letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;font-weight:700;display:block;overflow:hidden}.health .bad{color:var(--bad);background:var(--badbg)}.health .bad i{background:var(--bad)}.health .warn{color:var(--warn);background:var(--warnbg)}.health .warn i{background:#bf8d2c}.fproblem{border:1px solid var(--warnline);background:var(--warnbg);color:var(--warn);border-radius:12px;gap:8px;margin-bottom:10px;padding:12px;display:grid}.fproblem p{margin:0;font-size:13px;font-weight:750;line-height:1.4}.fproblem button{background:var(--green);color:#fff;border:0;border-radius:10px;min-height:44px;font-weight:850}.hero{background:var(--green);color:#fff;border-radius:16px;margin-bottom:10px;padding:16px}.hero .ov{letter-spacing:.16em;color:#a9c7b4;font-size:9px;font-weight:900}.hero h2{letter-spacing:-.03em;margin:6px 0 2px;font-size:28px;line-height:1.05}.hero p{color:#cfe0d5;min-height:2.8em;margin:6px 0 0;font-size:13px;line-height:1.4}.hero .big{letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:8px 0 0;font-size:42px;font-weight:900}.hero .big small{color:#a9c7b4;letter-spacing:0;margin-left:6px;font-size:14px;font-weight:700}.hero .prog{background:#ffffff2e;border-radius:9px;height:8px;margin:12px 0 6px;overflow:hidden}.hero .prog b{background:var(--lime);border-radius:9px;height:100%;transition:width .4s;display:block}.hero .pl{color:#cfe0d5;justify-content:space-between;gap:8px;font-size:11px;display:flex}.hero.bad{background:#5b2621}.hero.idle{color:var(--ink);border:1px solid var(--line);background:#fff}.hero.idle .ov,.hero.idle p{color:var(--muted)}.hero.idle .big{color:var(--green)}.hero.idle .big small{color:var(--muted)}.bigbtn{background:var(--lime);width:100%;min-height:56px;color:var(--green);border:0;border-radius:14px;justify-content:center;align-items:center;margin:0 0 8px;font-size:16px;font-weight:900;display:flex}.bigbtn.out{border:1px solid var(--green);background:#fff;min-height:50px;font-size:15px}.bigbtn.dark{background:var(--green);color:#fff}.bigbtn:disabled{opacity:.5;cursor:wait}.textbtn{width:100%;color:var(--muted);background:0 0;border:0;padding:8px 0 4px;font-size:13px;font-weight:750;text-decoration:underline;display:block}.pconfirm{border:1px solid var(--warnline);background:var(--warnbg);color:var(--warn);border-radius:12px;margin:0 0 8px;padding:12px;font-size:13px;font-weight:750}.pconfirm div{gap:8px;margin-top:10px;display:flex}.pconfirm button{border:1px solid var(--green);min-height:44px;color:var(--green);background:#fff;border-radius:10px;flex:1;font-weight:900}.pconfirm button.pri{background:var(--green);color:#fff}.pnote{background:var(--okbg);color:var(--ok);border-radius:12px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;padding:10px 12px;font-size:13px;font-weight:800;display:flex}.pnote button{border:1px solid var(--ok);color:var(--ok);background:#fff;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:800}.psec{justify-content:space-between;align-items:baseline;margin:14px 2px 6px;display:flex}.psec h3{letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0;font-size:10px}.psec span{color:var(--muted);font-size:11px}.pstops{border:1px solid var(--line);background:#fff;border-radius:14px;margin:0;padding:0;list-style:none;overflow:hidden}.pstops li{border-top:1px solid var(--line2);grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:grid}.pstops li:first-child{border-top:0}.pstops .n{border:2px solid var(--line);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;font-size:10px;font-weight:900;display:grid}.pstops li.done{color:var(--muted)}.pstops li.done .n{background:var(--green);border-color:var(--green);color:#fff}.pstops li.cur{background:#f3f8e0;font-weight:850}.pstops li.cur .n{border-color:var(--green);color:var(--green)}.pstops em{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-style:normal}details.pd{border:1px solid var(--line);background:#fff;border-radius:12px;margin-top:10px}details.pd summary{color:var(--muted);cursor:pointer;padding:10px 12px;font-size:12px;font-weight:800}details.pd div{color:var(--muted);padding:0 12px 12px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;line-height:1.7}.fcard{border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:12px;overflow:hidden}.fcard .inner{padding:12px 14px}.leave{background:var(--lime);color:var(--green);padding:16px}.leave .ov{letter-spacing:.16em;font-size:9px;font-weight:900}.leave .cd{letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin:8px 0 6px;font-size:50px;font-weight:900;line-height:1}.leave .cd.small{font-size:30px}.leave p{margin:0;font-size:13px;font-weight:750}.leave.now{background:var(--bad);color:#fff}.leave.aboard{background:var(--okbg);color:var(--ok)}.leave.idle{color:var(--ink);border-bottom:1px solid var(--line);background:#fff}.leave.idle .ov,.leave.idle p{color:var(--muted)}.kids{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.kid{border:1px solid var(--line);border-radius:999px;align-items:center;gap:7px;padding:4px 10px 4px 4px;font-size:12px;font-weight:800;display:inline-flex}.kid span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.fline{margin:0 0 2px;font-size:15px;font-weight:850}.fsub{color:var(--muted);margin:0;font-size:12px}.fmap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eef1ea;height:160px}.fmap svg{width:100%;height:100%;display:block}.away{gap:4px;margin:10px 0 2px;display:flex}.away i{background:var(--line);border-radius:9px;flex:1;height:6px}.away i.on{background:var(--ok)}.away i.me{background:var(--green);outline:2px solid var(--lime);outline-offset:1px}.ffacts{border-top:1px solid var(--line2);grid-template-columns:1fr 1fr;margin:0;display:grid}.ffacts div{padding:9px 14px}.ffacts dt{letter-spacing:.09em;color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:850}.ffacts dd{margin:3px 0 0;font-size:13px;font-weight:800}.buf{border-top:1px solid var(--line2);justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.buf b{font-size:13px;display:block}.buf small{color:var(--muted);font-size:11px}.step{border:1px solid var(--green);border-radius:10px;flex:none;display:flex;overflow:hidden}.step button{width:40px;height:38px;color:var(--green);background:#fff;border:0;font-size:18px;font-weight:900}.step span{border-left:1px solid var(--green);border-right:1px solid var(--green);place-items:center;width:58px;font-size:13px;font-weight:900;display:grid}.fmsgs{margin:0 0 12px}.fmsg{border:1px solid var(--line);background:#fff;border-radius:14px;margin-bottom:8px;padding:10px 14px}.fmsg.new{border-color:var(--green);box-shadow:inset 4px 0 0 var(--lime)}.fmsg-top{color:var(--muted);justify-content:space-between;gap:10px;font-size:11px;font-weight:700;display:flex}.fmsg.new .fmsg-top span{color:var(--green)}.fmsg p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0;font-size:15px;line-height:1.45}.fmsgs.earlier{margin-top:4px}.fmsgs-more{color:var(--muted);background:0 0;border:0;padding:6px 2px 10px;font-size:13px;font-weight:800;display:block}.ftoasts{z-index:30;max-width:520px;padding:0 14px calc(12px + env(safe-area-inset-bottom));pointer-events:none;gap:8px;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.ftoasts>*{pointer-events:auto;margin:0;box-shadow:0 6px 24px #0000002e}.hero .waiting{opacity:.55}@media (width<=760px){input,select,textarea{font-size:16px!important}}.auth-form input.pair-code{letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums;height:64px;font-size:32px}.pw-form{gap:12px;margin-top:8px;display:grid}.pw-form label{letter-spacing:.06em;text-transform:uppercase;color:#66736a;gap:5px;font-size:11px;font-weight:900;display:grid}.pw-form label small{letter-spacing:0;text-transform:none;font-weight:600}.pw-form input{background:#fff;border:1px solid #dfe4dc;border-radius:10px;height:44px;padding:0 12px;font-size:16px}.pw-hint{color:#66736a;margin:0;font-size:13px;line-height:1.45}.pw-err{color:#b42318;margin:0;font-size:13px;font-weight:700}.pw-acts{justify-content:flex-end;gap:8px;display:flex}.fnotice{color:#5c4510;background:#fff4dc;border-bottom:1px solid #ead7a8;margin:0;padding:10px 16px;font-size:14px;font-weight:700;line-height:1.35}.fnotice b{letter-spacing:.1em;text-transform:uppercase;color:#8a651e;margin-bottom:2px;font-size:10px;display:block}.kid.off{color:var(--muted);text-decoration:line-through}.kid.off span{background:#b9c3bb}.frows{border-top:1px solid var(--line2)}.frow{border-top:1px solid var(--line2);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.frows .frow:first-child{border-top:0}.frow b{font-size:13px;display:block}.frow small{color:var(--ok);margin-top:1px;font-size:11px;font-weight:750;display:block}.frow.off b{color:var(--muted)}.frow.off small{color:var(--warn)}.frow button{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#fff;border-radius:10px;flex:none;padding:0 12px;font-size:12px;font-weight:850}.frow button.back{border-color:var(--green);background:var(--green);color:#fff}.frow button:disabled{opacity:.6}.fcoming{margin:20px 0 12px}.fcoming h2{letter-spacing:-.02em;margin:0 2px 2px;font-size:18px}.fcoming>.fsub{margin:0 2px 10px}.fday{border:1px solid var(--line);background:#fff;border-radius:14px;margin-bottom:10px;overflow:hidden}.fday h3{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line2);background:#fafbf9;margin:0;padding:9px 14px;font-size:10px;font-weight:900}.fday .frow:first-of-type{border-top:0}.falerts{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:10px;margin:0 0 12px;padding:12px 14px;display:grid}.falerts b{font-size:14px;display:block}.falerts small{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.35;display:block}.falerts button{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;border-radius:10px;padding:0 14px;font-size:13px;font-weight:850}.falerts button.go{background:var(--green);color:#fff;border:0}.falerts button.quiet{color:var(--muted);border:0;padding:0 6px;text-decoration:underline}.falerts-btns{align-items:center;gap:4px;display:flex}.falerts-note{color:var(--ok);grid-column:1/-1;margin:0;font-size:12px;font-weight:750}:root{--ink:#17211b;--muted:#66736a;--soft:#89948c;--green:#17382c;--green2:#245440;--lime:#cfff04;--cream:#f7f7f2;--paper:#fff;--line:#dce3dc;--line2:#edf0ec;--sage:#e7eee5;--side:#f2f4ef;--bad:#ad4138;--badbg:#f9ebe9;--badline:#e6bbb6;--warn:#8a651e;--warnbg:#faf2dc;--warnline:#ead7a8;--ok:#28704c;--okbg:#e8f3ec;--okline:#bfdcc9;--idle:#56655b;--idlebg:#f0f2ef;--off:#6c746e;--offbg:#f0f1ef;--r:14px;--r2:10px;--shadow:0 18px 50px #17382c14;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.ops *{box-sizing:border-box}.ops{font-family:var(--font);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:14px}.ops button,.ops input,.ops select{font:inherit;color:inherit}.ops button{cursor:pointer}.ops a{color:inherit;text-decoration:none}.ops h1,.ops h2,.ops h3{font-weight:850}.ops .eyebrow{color:#748078;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:10px;font-weight:900}.ops .muted{color:var(--muted);font-size:12px}.ops .dim{color:#98a39b}.ops .mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}.ops .sw{border-radius:4px;flex:none;width:12px;height:12px;display:inline-block}.ops :focus-visible{outline:2px solid var(--green);outline-offset:2px}.ops .kbd{border:1px solid var(--line);color:var(--muted);background:#fff;border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:10px;font-weight:850;display:inline-block}.ops .app.d{background:linear-gradient(to right,var(--side) 223px,var(--line) 223px,var(--line) 224px,var(--cream) 224px);grid-template-columns:224px minmax(0,1fr);min-height:100vh;display:grid}.ops .sidebar{z-index:30;border-right:1px solid var(--line);background:var(--side);flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow:auto}.ops .brand{align-items:center;gap:11px;padding:3px 6px 12px;display:flex}.ops .brandmark{background:var(--green);width:38px;height:38px;color:var(--lime);border-radius:12px;flex:none;place-items:center;font-size:20px;font-weight:900;display:grid}.ops .brand b{letter-spacing:.08em;font-size:15px;display:block}.ops .brand small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:140px;margin-top:2px;font-size:11px;display:block;overflow:hidden}.ops .nav-label{letter-spacing:.15em;color:#88938b;text-transform:uppercase;padding:14px 10px 6px;font-size:9px;font-weight:900}.ops .nav{gap:3px;display:grid}.ops .nav a{color:#536058;border-radius:10px;align-items:center;gap:10px;padding:9px 11px;font-size:13px;font-weight:750;display:flex}.ops .nav a:hover{background:#e9ede6}.ops .nav a.on{color:var(--green);box-shadow:0 0 0 1px var(--line);background:#fff}.ops .ico{background:#dde5dc;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;font-size:9px;font-weight:900;display:grid}.ops .nav a.on .ico{background:var(--sage)}.ops .side-foot{border-top:1px solid var(--line);gap:10px;margin-top:auto;padding:14px 4px 2px;display:grid}.ops .who-row{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.ops .who-row b{color:var(--ink);font-size:12px;display:block}.ops .who-row button{color:var(--green);background:0 0;border:0;padding:4px;font-size:11px;font-weight:850}.ops .ws{min-width:0}.ops .topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:20;background:#f7f7f2ed;justify-content:space-between;align-items:center;gap:12px;height:56px;padding:0 28px;display:flex;position:sticky;top:0}.ops .crumb{letter-spacing:.12em;color:#6b776f;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:900;overflow:hidden}.ops .top-actions{align-items:center;gap:12px;display:flex}.ops .top-actions .hint{align-items:center;gap:4px;display:flex}.ops .avatar{background:#e0e7dd;border-radius:50%;flex:none;place-items:center;width:31px;height:31px;font-size:11px;font-weight:900;display:grid}.ops .content{max-width:1560px;margin:0 auto;padding:26px 28px 70px}.ops .app.m{flex-direction:column;min-height:100vh;display:flex}.ops .mtop{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f7f7f2f5;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex;position:sticky;top:0}.ops .mtop .brand{gap:8px;padding:0}.ops .mtop .brandmark{border-radius:9px;width:30px;height:30px;font-size:16px}.ops .mtop .brand b{font-size:12px}.ops .mc{flex:1;width:100%;max-width:760px;margin:0 auto;padding:18px 14px 96px}.ops .tabs{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px 4px calc(7px + env(safe-area-inset-bottom));background:#f7f7f2f7;display:grid;position:fixed;bottom:0;left:0;right:0}.ops .tabs a{color:#6e7971;justify-items:center;gap:3px;padding:2px 0;font-size:9px;font-weight:800;display:grid}.ops .tabs a span{border-radius:8px;place-items:center;width:32px;height:26px;font-size:10px;font-weight:900;display:grid}.ops .tabs a.on{color:var(--green)}.ops .tabs a.on span{background:var(--sage)}.ops .mfoot{text-align:center;padding:14px 0 0;font-size:12px}.ops .mfoot button{color:var(--muted);background:0 0;border:0;font-size:12px;text-decoration:underline}.ops .head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.ops .head h1{letter-spacing:-.05em;margin:6px 0 0;font-size:40px;line-height:1}.ops .desc{color:var(--muted);margin:8px 0 0;font-size:13px}.ops .hact{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ops .m .head{flex-wrap:nowrap;align-items:flex-start;gap:12px;margin-bottom:12px}.ops .m .head h1{font-size:30px}.ops .m .hact{flex-direction:column;align-items:flex-end}.ops .st{letter-spacing:.06em;white-space:nowrap;text-transform:uppercase;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:9px;font-weight:900;display:inline-flex}.ops .st-in-service,.ops .st-t-active,.ops .st-m-active,.ops .st-r-active{background:var(--okbg);color:var(--ok)}.ops .st-planned,.ops .st-t-planned,.ops .st-m-setup-required,.ops .st-r-pending{background:var(--warnbg);color:var(--warn)}.ops .st-available,.ops .st-t-completed,.ops .st-r-none{background:var(--idlebg);color:var(--idle)}.ops .st-gps-stale,.ops .st-t-cancelled,.ops .st-m-suspended{background:var(--badbg);color:var(--bad)}.ops .st-inactive{background:var(--offbg);color:var(--off)}.ops .pill{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900;display:inline-block}.ops .pill.bad{background:var(--badbg);color:var(--bad)}.ops .pill.warn{background:var(--warnbg);color:var(--warn)}.ops .pill.ok{background:var(--okbg);color:var(--ok)}.ops .pill.neutral{background:var(--idlebg);color:var(--idle)}.ops .rs{letter-spacing:.05em;white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;display:inline-block}.ops .rs-expected{background:var(--idlebg);color:var(--idle)}.ops .rs-aboard{background:var(--okbg);color:var(--ok)}.ops .rs-dropped{color:#5d6b62;background:#eef1ee}.ops .rs-noshow{background:var(--badbg);color:var(--bad)}.ops .rs-absent{color:#7a6a3a;background:#f3f0e6}.ops .od,.ops .fc{background:var(--badbg);color:var(--bad);letter-spacing:.05em;border-radius:6px;padding:3px 7px;font-size:9px;font-weight:900;display:inline-block}.ops .od.med,.ops .fc.med{background:var(--warnbg);color:var(--warn)}.ops .fc{background:var(--idlebg);color:var(--idle)}.ops .fc.high{background:var(--badbg);color:var(--bad)}.ops .fcs{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.ops .per{letter-spacing:.08em;color:var(--muted);background:var(--idlebg);vertical-align:middle;border-radius:999px;margin-left:8px;padding:3px 7px;font-size:9px;font-weight:900;display:inline-block}.ops .gps{font-variant-numeric:tabular-nums;color:var(--muted);align-items:center;gap:7px;display:inline-flex}.ops .gps i{background:#b9c3bb;border-radius:50%;flex:none;width:8px;height:8px}.ops .gps.live{color:var(--ok);font-weight:750}.ops .gps.live i{background:var(--ok);animation:2s infinite pulse}.ops .gps.stale{color:var(--bad);font-weight:800}.ops .gps.stale i{background:var(--bad)}@keyframes pulse{0%{box-shadow:0 0 #28704c66}70%{box-shadow:0 0 0 7px #28704c00}to{box-shadow:0 0 #28704c00}}@media (prefers-reduced-motion:reduce){.ops .gps.live i,.ops .live-pill i{animation:none}}.ops .live-pill{background:var(--okbg);min-height:32px;color:var(--ok);letter-spacing:.04em;border-radius:999px;align-items:center;gap:7px;padding:0 11px;font-size:11px;font-weight:850;display:inline-flex}.ops .live-pill i{background:var(--ok);border-radius:50%;width:7px;height:7px;animation:2s infinite pulse}.ops .live-pill.off{background:var(--warnbg);color:var(--warn)}.ops .live-pill.off i{background:#bf8d2c;animation:none}.ops .pres{margin:0;font-size:12px;font-weight:800}.ops .pres.ok{color:var(--ok)}.ops .pres.no{color:var(--bad)}.ops .tk{color:var(--muted);margin:0 0 4px;font-size:13px}.ops .tk b{color:var(--ink)}.ops .mt{letter-spacing:.08em;background:var(--idlebg);color:var(--muted);vertical-align:1px;border-radius:4px;margin-left:6px;padding:2px 5px;font-size:8px;font-weight:900;display:inline-block}.ops .mt.automatic{background:var(--okbg);color:var(--ok)}.ops .mt.manual,.ops .mt.undone{background:var(--warnbg);color:var(--warn)}.ops .mt.override{background:var(--badbg);color:var(--bad)}.ops .btn{border:1px solid var(--line);min-height:38px;color:var(--ink);white-space:nowrap;background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:850;display:inline-flex}.ops .btn:hover{border-color:#c4cfc5}.ops .btn-primary,.ops .btn.pri{background:var(--green);border-color:var(--green);color:#fff}.ops .btn-primary:hover{background:var(--green2)}.ops .btn-danger,.ops .btn.danger{border-color:var(--badline);color:var(--bad);background:#fff}.ops .btn.sm{border-radius:8px;min-height:32px;padding:0 10px;font-size:11px}.ops .btn:disabled,.ops .bigbtn:disabled{opacity:.45;cursor:not-allowed}.ops .plus{background:var(--green);color:#fff;border:0;border-radius:10px;width:40px;height:40px;font-size:24px;line-height:1}.ops .acts{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.ops .ctl-row{gap:6px;display:grid}.ops .ctl-row label,.ops .lt{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900}.ops input[type=text],.ops input[type=search],.ops input[type=email],.ops input[type=tel],.ops input[type=time],.ops input[type=date],.ops input[type=password],.ops input:not([type]),.ops select{border:1px solid var(--line);background:#fff;border-radius:9px;width:100%;height:40px;padding:0 11px;font-size:13px}.ops .hint{color:var(--muted);font-size:12px}.ops .err,.ops .mf-err,.ops .rf-err{border-radius:var(--r2);border:1px solid var(--badline);background:var(--badbg);color:var(--bad);margin:10px 0;padding:10px 12px;font-size:13px;font-weight:700}.ops .err[hidden],.ops .mf-err:empty,.ops .rf-err:empty{display:none}.ops .confirm,.ops .ok-note{border-radius:var(--r2);border:1px solid var(--warnline);background:var(--warnbg);color:var(--warn);flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;padding:11px 12px;font-size:12px;font-weight:800;display:flex}.ops .confirm span{flex:100%}.ops .ok-note{border-color:var(--okline);background:var(--okbg);color:var(--ok);display:block}.ops .ok-note b{display:block}.ops .ok-note code{background:#fff;border-radius:4px;padding:1px 4px;font-size:13px}.ops .confirm .btn{min-height:32px;font-size:11px}.ops .seg{border:1px solid var(--line);background:#fff;border-radius:10px;padding:3px;display:inline-flex}.ops .seg button{color:#6b776f;background:0 0;border:0;border-radius:7px;padding:6px 11px;font-size:12px;font-weight:800}.ops .seg button.on{background:var(--green);color:#fff}.ops .team-tabs button i{background:var(--line2);color:var(--muted);border-radius:999px;margin-left:7px;padding:1px 7px;font-size:11px;font-style:normal;font-weight:850}.ops .team-tabs button.on i{background:var(--lime);color:var(--green)}.ops .team-blurb{margin:12px 0 4px;font-size:13px}.ops .team-kind{width:100%;margin:14px 0 4px;display:flex}.ops .team-kind button{flex:1;min-height:40px;font-size:13.5px}.ops .team-note{margin:10px 0 4px;font-size:13px;line-height:1.5}.ops .m .seg{width:100%;margin:8px 0;display:flex}.ops .m .seg button{flex:1;min-height:38px}.ops .dt{letter-spacing:-.04em;align-items:center;gap:10px;margin:6px 0 10px;font-size:26px;display:flex}.ops .mf,.ops .rf,.ops .planf{gap:12px;margin-top:14px;display:grid}.ops .mf label,.ops .rf label{gap:6px;display:grid}.ops .mf small{color:var(--muted);font-size:12px}.ops .mf-hint,.ops .rf-hint{color:var(--muted);margin:0;font-size:12px}.ops .pw{gap:8px;display:flex}.ops .pw button{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:9px;padding:0 12px;font-weight:800}.ops .rf2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ops .gch{border:1px solid var(--line);border-radius:var(--r2);background:#fff;gap:8px;max-height:220px;padding:10px 12px;display:grid;overflow:auto}.ops .gch legend{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding:0 4px;font-size:10px;font-weight:900}.ops .gch label{align-items:center;gap:8px;display:flex}.ops .mf .btn,.ops .rf .btn,.ops .planf .btn{width:100%}.ops .search{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);gap:6px;font-size:10px;font-weight:900;display:grid}.ops .filters{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:12px;display:flex}.ops .filters label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);gap:6px;font-size:10px;font-weight:900;display:grid}.ops .filters input,.ops .filters select{text-transform:none;letter-spacing:0;min-width:240px;font-weight:400}.ops .filters .cnt{color:var(--muted);margin-left:auto;font-size:11px}.ops .ck{flex-direction:row;align-items:center;gap:8px;min-height:40px;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;font-size:12px!important;font-weight:750!important;display:flex!important}.ops .filters input[type=checkbox],.ops .ck input{width:auto;min-width:0;height:auto}.ops input.daypick{width:auto;min-width:0;height:38px;padding:0 8px;font-size:12px}.ops .panel,.ops .surface{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}.ops .panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:12px 15px;display:flex}.ops .panel-head h3{margin:0;font-size:13px}.ops .panel-head span{color:var(--muted);font-size:10px}.ops .tiles,.ops .metrics{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:16px;display:grid}.ops .tile{text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;min-width:0;padding:14px 15px;display:block}.ops button.tile:hover{border-color:#c4cfc5}.ops .tile span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800;display:block}.ops .tile strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:27px;display:block}.ops .tile small{color:var(--soft);margin-top:4px;font-size:11px;display:block}.ops .tile.bad strong{color:var(--bad)}.ops .tile.good strong{color:var(--ok)}.ops .tile.on{background:var(--green);border-color:var(--green)}.ops .tile.on span,.ops .tile.on small{color:#c8d8cf}.ops .tile.on strong{color:#fff}.ops .m .tiles{grid-template-columns:1fr 1fr}.ops .sec-h{justify-content:space-between;align-items:baseline;gap:10px;margin:22px 0 9px;display:flex}.ops .sec-h h2{margin:0;font-size:14px}.ops .sec-h span{color:var(--muted);font-size:11px}.ops .nomatch{text-align:center;color:var(--muted);padding:30px 16px;font-size:13px}.ops .grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}@media (width<=1300px){.ops .grid3{grid-template-columns:1fr 1fr}}.ops .cards{gap:10px;display:grid}.ops .attn-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;display:grid}.ops .acard{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px}.ops .acard.high{border-color:var(--badline);box-shadow:inset 3px 0 0 var(--bad)}.ops .acard.med{box-shadow:inset 3px 0 #bf8d2c}.ops .acard.clear{box-shadow:inset 3px 0 0 var(--ok)}.ops .acard-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.ops .acard-title{align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:850;display:flex}.ops .acard p{color:var(--muted);margin:8px 0 12px;font-size:12px;line-height:1.45}.ops .acard .acts{margin:0}.ops .dot{background:#96a198;border-radius:50%;flex:none;width:9px;height:9px}.ops .dot.bad{background:var(--bad)}.ops .dot.ok{background:var(--ok)}.ops .dot.warn{background:#bf8d2c}.ops .board{grid-template-columns:320px minmax(0,1fr) 370px;align-items:start;gap:12px;display:grid}@media (width<=1400px){.ops .board{grid-template-columns:300px minmax(0,1fr)}.ops .board .detailpanel{grid-column:1/-1}}.ops .board .listpanel{max-height:640px;overflow:auto}.ops .grp{letter-spacing:.13em;text-transform:uppercase;color:#88938b;border-bottom:1px solid var(--line2);z-index:1;background:#fafbf9;padding:9px 14px 5px;font-size:9px;font-weight:900;position:sticky;top:0}.ops .li2{text-align:left;border:0;border-bottom:1px solid var(--line2);width:100%;color:inherit;background:#fff;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:4px 11px;padding:11px 14px;display:grid}.ops .li2:hover{background:#fbfcfa}.ops .li2.sel{box-shadow:inset 0 0 0 1px var(--line);background:#f4f7f2}.ops .li2:disabled{cursor:default}.ops .li2 .bar{background:var(--c);border-radius:8px;grid-row:1/span 2;width:7px;height:40px}.ops .li2 strong{font-size:13px}.ops .li2 small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.ops .li2 .right{text-align:right}.ops .li2 .right b{font-size:11px;display:block}.ops .li2 .right small{font-size:10px}.ops .li2 .ch{flex-wrap:wrap;grid-column:2/span 2;gap:5px;display:flex}.ops .mappanel .mapwrap{background:#eef1ea;height:640px;position:relative}.ops .m .mapwrap,.ops .mapbox{border:1px solid var(--line);border-radius:var(--r);background:#eef1ea;height:320px;margin-bottom:10px;position:relative;overflow:hidden}.ops .mapfill{position:absolute;inset:0}.ops .map-svg{width:100%;height:100%;display:block}.ops .mapmsg{z-index:2;border:1px solid var(--line);border-radius:var(--r2);color:var(--muted);background:#fffffff0;padding:7px 10px;font-size:11px;position:absolute;bottom:12px;left:12px}.ops .map-live{position:absolute;inset:0}.ops .map-live .maplibregl-map{width:100%;height:100%}.ops .map-live .maplibregl-ctrl-attrib{font-size:10px}.ops .map-bus{background:var(--ink);color:#fff;cursor:pointer;min-width:46px;height:30px;box-shadow:0 0 0 7px color-mix(in srgb,var(--c) 28%,transparent);border:3px solid #fff;border-radius:9px;place-items:center;padding:0 8px;font-size:11px;font-weight:900;transition:opacity .2s;display:grid}.ops .map-bus.stale{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--bad)}.ops .map-bus.dim{opacity:.55}.ops .map-bus i{border-left:7px solid #0000;border-right:7px solid #0000;border-bottom:10px solid var(--c);transform-origin:50% 0;width:0;height:0;position:absolute;top:50%;left:50%}.ops .detail{padding:16px}.ops .detailpanel .detail{max-height:none;overflow:visible}.ops .m .detailpanel .detail{max-height:none}.ops .eta{margin:6px 0 10px;padding:0;list-style:none}.ops .eta li{grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 0;font-size:12px;display:grid;position:relative}.ops .eta li:before{content:"";border-left:2px solid var(--line);position:absolute;top:0;bottom:0;left:8px}.ops .eta li:first-child:before{top:50%}.ops .eta li:last-child:before{bottom:50%}.ops .eta li:only-child:before{display:none}.ops .eta i{border:3px solid var(--c);z-index:1;background:#fff;border-radius:50%;width:14px;height:14px;margin-left:2px}.ops .eta li.done{color:var(--muted)}.ops .eta li.done i{background:var(--c)}.ops .eta li.cur{font-weight:850}.ops .eta li.cur i{box-shadow:0 0 0 4px var(--sage)}.ops .eta em{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;font-style:normal}.ops .eta li.cur em{color:var(--ink);font-weight:850}.ops .eta .btn{grid-column:2/span 2;justify-self:start;margin-top:4px}.ops .assign{gap:6px;margin:0 0 12px;display:flex}.ops .assign select{flex:1}.ops .alert{border-radius:var(--r2);border:1px solid var(--warnline);background:var(--warnbg);color:var(--warn);gap:3px;padding:10px 12px;font-size:12px;font-weight:700;display:grid}.ops .alert b{letter-spacing:.1em;font-size:10px}.ops .alert-high{border-color:var(--badline);background:var(--badbg);color:var(--bad)}.ops .d-title{letter-spacing:-.04em;align-items:center;gap:10px;margin:4px 0 8px;font-size:26px;display:flex}.ops .d-title .sw{width:13px;height:13px}.ops .d-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.ops .d-alerts{gap:8px;margin-top:12px;display:grid}.ops .d-grid{border:1px solid var(--line);border-radius:var(--r2);background:#fff;grid-template-columns:1fr 1fr;margin:14px 0;display:grid;overflow:hidden}.ops .d-grid>div{border-bottom:1px solid var(--line2);min-width:0;padding:10px 11px}.ops .d-grid>div:nth-child(odd){border-right:1px solid var(--line2)}.ops .d-grid>div:nth-last-child(-n+2){border-bottom:0}.ops .d-grid dt{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:900}.ops .d-grid dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:13px;font-weight:800}.ops .d-grid dd.ok{color:var(--ok)}.ops .d-grid dd.bad{color:var(--bad)}.ops .d-grid dd small{color:var(--muted);font-weight:700}.ops .d-sec{justify-content:space-between;align-items:center;margin:18px 0 6px;display:flex}.ops .d-sec h3{margin:0;font-size:14px}.ops .d-sec>span{color:var(--muted);font-size:11px;font-weight:750}.ops .d-stops{margin:0;padding:0;list-style:none}.ops .d-stops li{align-items:center;gap:12px;min-height:36px;font-size:13px;display:flex;position:relative}.ops .d-stops li:not(:last-child):after{content:"";background:var(--line);width:2px;position:absolute;top:26px;bottom:-12px;left:6px}.ops .d-stops i{z-index:1;border:3px solid var(--c);background:#fff;border-radius:50%;flex:none;width:14px;height:14px;position:relative}.ops .d-stops .done i{background:var(--c)}.ops .d-stops .done span{color:var(--muted)}.ops .d-stops .cur span{font-weight:800}.ops .d-stops em{color:var(--muted);margin-left:auto;font-size:11px;font-style:normal;font-weight:800}.ops .d-trip{border-top:1px solid var(--line2);justify-content:space-between;gap:14px;padding:12px 0;display:flex}.ops .d-trip>div{gap:3px;display:grid}.ops .d-trip>div span{color:var(--muted);font-size:12px}.ops .ts{text-transform:uppercase;color:var(--muted);letter-spacing:.06em;align-self:center;font-size:9px;font-weight:900}.ops .ts-active{color:var(--ok)}.ops .ts-planned{color:var(--warn)}.ops .dblock{margin:12px 0}.ops .dblock h3{margin:0 0 8px;font-size:14px}.ops .mini{align-items:center;gap:4px;display:flex}.ops .mini span{background:var(--line2);border-radius:9px;flex:1;min-width:0;height:6px}.ops .mini span.on{background:var(--c)}details.ops-log{border:1px solid var(--line);border-radius:var(--r2);margin-top:12px}details.ops-log summary{cursor:pointer;padding:10px 12px;font-size:12px;font-weight:850}details.ops-log .gl{border:0;border-top:1px solid var(--line2);border-radius:0}.ops .gl{border:1px solid var(--line);border-radius:var(--r2);background:#fff;max-height:280px;margin:0;padding:0;list-style:none;overflow:auto}.ops .gl li{border-bottom:1px solid var(--line2);grid-template-columns:78px 1fr;gap:2px 10px;padding:8px 12px;font-size:11px;display:grid}.ops .gl time{color:var(--muted);font-variant-numeric:tabular-nums}.ops .gl li strong{letter-spacing:.06em;font-size:10px}.ops .gl li span{color:var(--muted);grid-column:2}.ops .gl .j strong{color:var(--ok)}.ops .gl .g strong{color:var(--warn)}.ops .bd{z-index:100;background:#17211b47;justify-content:flex-end;display:flex;position:fixed;inset:0}.ops .drawer{width:min(520px,100%);height:100%;box-shadow:var(--shadow);background:#fff;padding:22px 24px;overflow-y:auto}.ops .close{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;margin-left:auto;padding:7px 10px;font-size:11px;font-weight:850;display:block}.ops .bd.sh{justify-content:center;align-items:flex-end}.ops .sheet{background:#fff;border-radius:18px 18px 0 0;width:100%;max-width:760px;max-height:92vh;padding:10px 16px 30px;overflow-y:auto;box-shadow:0 -12px 40px #0000002e}.ops .grab{background:var(--line);border-radius:2px;width:40px;height:4px;margin:4px auto}.ops .toast{z-index:300;background:var(--ink);color:#fff;opacity:0;pointer-events:none;text-align:center;border-radius:10px;max-width:90vw;padding:11px 16px;font-size:13px;font-weight:750;transition:all .2s;position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px)}.ops .m~.toast,.ops .app.m+.toast{bottom:84px}.ops .toast.show{opacity:1;transform:translate(-50%)}.ops .bc{text-align:left;border:1px solid var(--line);width:100%;color:inherit;background:#fff;border-radius:12px;gap:7px;padding:14px 14px 13px 20px;display:grid;position:relative;overflow:hidden}.ops .bc:before{content:"";background:var(--c);width:5px;position:absolute;top:0;bottom:0;left:0}.ops .bc.attn{border-color:var(--badline)}.ops .bc .h{justify-content:space-between;align-items:center;gap:10px;display:flex}.ops .bc .h strong{letter-spacing:-.02em;font-size:17px}.ops .bc .rt2{font-size:13px;font-weight:750}.ops .bc .tm{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:12px;display:flex}.ops .bc .ch{flex-wrap:wrap;gap:6px;display:flex}.ops .prog{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:11px;display:flex}.ops .prog .bar{background:var(--line2);border-radius:9px;flex:1;min-width:46px;height:6px;overflow:hidden}.ops .prog .bar b{background:var(--c,var(--green));height:100%;display:block}.ops .chips{gap:7px;margin:10px 0;padding-bottom:4px;display:flex;overflow-x:auto}.ops .chip{border:1px solid var(--line);color:#56655b;background:#fff;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:34px;padding:0 12px;font-size:11px;font-weight:800;display:inline-flex}.ops .chip b{background:var(--idlebg);border-radius:999px;padding:1px 7px;font-size:10px}.ops .chip.on{background:var(--green);border-color:var(--green);color:#fff}.ops .chip.on b{color:#fff;background:#2f5a49}.ops .alertbar{border:1px solid var(--badline);background:var(--badbg);color:var(--bad);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:10px 0;padding:11px 13px;display:flex}.ops .alertbar b{letter-spacing:.1em;font-size:10px;display:block}.ops .alertbar span{font-size:12px;font-weight:800}.ops .alertbar button{color:var(--bad);background:0 0;border:0;font-weight:850}.ops .darkcard{background:var(--green);color:#fff;border-radius:var(--r);justify-content:space-between;align-items:flex-end;margin:12px 0;padding:16px 18px;display:flex}.ops .darkcard strong{letter-spacing:-.04em;font-size:30px;display:block}.ops .darkcard small{color:#c8d8cf;font-size:12px}.ops .darkcard>div:last-child{text-align:right}.ops .tbl{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--r);background:#fff;width:100%;overflow:hidden}.ops .tbl th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:#fafbf9;padding:10px 12px;font-size:9px}.ops .tbl td{border-bottom:1px solid var(--line2);vertical-align:middle;padding:11px 12px;font-size:12px}.ops .tbl tr:last-child td{border-bottom:0}.ops .tbl tbody tr[data-ov],.ops .tbl tbody tr[data-set]{cursor:pointer}.ops .tbl tbody tr[data-ov]:hover td,.ops .tbl tbody tr[data-set]:hover td{background:#fbfcfa}.ops .tbl tr.attn td{background:#fffaf8}.ops .tbl tr.sel td{background:#f4f7f2}.ops .tbl td small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.ops .busc{box-shadow:inset 4px 0 0 var(--c)}.ops .busc b{margin-bottom:4px;font-size:13px;display:block}.ops .attnstrip{border:1px solid var(--badline);background:var(--badbg);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:11px 14px;display:flex}.ops .attnstrip>b{letter-spacing:.1em;color:var(--bad);font-size:10px}.ops .pillbtn{border:1px solid var(--badline);color:var(--bad);background:#fff;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800}.ops .who{align-items:center;gap:10px;display:flex}.ops .who strong{font-size:13px}.ops .av,.ops .ava{width:var(--s,36px);height:var(--s,36px);background:var(--c,#17382c);color:#fff;font-size:calc(var(--s,36px)*.36);border-radius:50%;flex:none;place-items:center;font-weight:850;display:inline-grid}.ops .ax{border-bottom:1px solid var(--line2);background:#fff;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.ops .ax:last-child{border-bottom:0}.ops .ax .sv{letter-spacing:.08em;background:var(--warnbg);color:var(--warn);border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900}.ops .ax.sev-high .sv{background:var(--badbg);color:var(--bad)}.ops .ax .at b{font-size:13px;display:block}.ops .ax .at small{color:var(--muted);align-items:center;gap:6px;margin-top:3px;font-size:11px;display:flex}.ops .ax .ab2{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.ops .m .ax{border:1px solid var(--line);border-radius:12px;grid-template-columns:auto 1fr;margin-bottom:10px}.ops .m .ax .ab2{grid-column:1/-1;justify-content:stretch}.ops .m .ax .ab2 .btn{flex:1;min-height:42px}.ops .drawer .ax,.ops .sheet .ax{grid-template-columns:auto 1fr}.ops .drawer .ax .ab2,.ops .sheet .ax .ab2{grid-column:1/-1;justify-content:flex-start}.ops .tripcard{text-align:left;border:1px solid var(--line);width:100%;color:inherit;background:#fff;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:14px;display:grid;position:relative}.ops .tripcard:hover{border-color:#c4cfc5}.ops .tripcard strong{font-size:14px}.ops .tripcard .m2{gap:5px;min-width:0;display:grid}.ops .tripcard .m2 small{color:var(--muted);font-size:11px}.ops .tripcard .ch{flex-wrap:wrap;gap:5px;display:flex}.ops .hc{width:var(--s,84px);height:var(--s,84px);background:conic-gradient(var(--c) calc(var(--p)*1%),var(--line2) 0);border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.ops .hc:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:7px}.ops .hc b{font-size:calc(var(--s,84px)*.27);letter-spacing:-.03em;text-align:center;line-height:1;position:relative}.ops .hc b small{color:var(--muted);letter-spacing:0;margin-top:2px;font-size:.45em;font-weight:700;display:block}.ops .nl{border:1px solid var(--line);border-radius:var(--r2);background:#fff;margin:0;padding:0;list-style:none;overflow:hidden}.ops .nl li{border-bottom:1px solid var(--line2);grid-template-columns:64px 1fr;gap:2px 10px;padding:9px 12px;font-size:12px;display:grid}.ops .nl li:last-child{border-bottom:0}.ops .nl time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.ops .nl li span.n{color:var(--muted);grid-column:2;font-size:11px}.ops .nl li b{font-weight:750}.ops .stopg{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin-bottom:8px;overflow:hidden}.ops .stopg .sgh{justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.ops .stopg .sgh b{align-items:center;gap:8px;font-size:13px;display:flex}.ops .stopg .sgh b i{background:var(--c);border-radius:50%;flex:none;width:10px;height:10px}.ops .stopg .sgh span{letter-spacing:.09em;color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:900}.ops .stopg.cur{border-color:#c9d9a5}.ops .stopg.cur .sgh{background:#f3f8e0}.ops .stopg.cur .sgh span{color:var(--green)}.ops .stopg.flag .sgh span{color:var(--bad)}.ops .stopg .passedline{color:var(--muted);padding:0 12px 10px;font-size:12px}.ops .rider{border-top:1px solid var(--line2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 12px;display:grid}.ops .rider b{font-size:14px}.ops .rider small{color:var(--muted);font-size:11px;display:block}.ops .rider.flag{background:var(--badbg)}.ops .rider.flag small{color:var(--bad)}.ops .rbt{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.ops .rbt button{border:1px solid var(--green);min-width:62px;min-height:40px;color:var(--green);background:#fff;border-radius:10px;padding:0 10px;font-size:12px;font-weight:900}.ops .rbt button.on{background:var(--green);color:#fff}.ops .rbt button.ns{border-color:var(--badline);color:var(--bad)}.ops .rbt button.ns.on{background:var(--bad);color:#fff;border-color:var(--bad)}.ops .rbt button.q{border-color:var(--line);color:var(--muted)}.ops .rbt a{border:1px solid var(--line);border-radius:10px;align-items:center;min-height:40px;padding:0 10px;font-size:12px;font-weight:850;display:inline-flex}.ops .bulkb{border:0;border-top:1px solid var(--line2);width:100%;min-height:42px;color:var(--green);background:#fbfcf6;font-size:12px;font-weight:900}.ops .sweep{border:1px solid var(--line);background:#fff;border-radius:12px;gap:6px;margin:12px 0;padding:12px 14px;font-size:12px;display:grid}.ops .sweep span{color:var(--muted)}.ops .sweep.ok{border-color:var(--okline);background:var(--okbg)}.ops .sweep.ok b{color:var(--ok)}.ops .sweep.bad{border-color:var(--badline);background:var(--badbg)}.ops .sweep.bad b{color:var(--bad)}.ops .sweep .btn{justify-self:start;margin-top:4px}.ops .cc{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.ops .cc b{color:var(--ink);font-size:14px}.ops .cc .bad,.ops .cc .bad b{color:var(--bad)}.ops .tabs2{border-bottom:1px solid var(--line);gap:4px;margin:14px 0 0;display:flex}.ops .tabs2 button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 10px;font-size:12px;font-weight:800}.ops .tabs2 button.on{color:var(--green);border-bottom-color:var(--green)}.ops .split{border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(to left,#fbfcfa 379px,var(--line) 379px,var(--line) 380px,#fff 380px);grid-template-columns:minmax(0,1fr) 380px;align-items:start;display:grid;overflow:clip}.ops .split>.scr{min-height:360px}.ops .split thead th,.ops .tbl.sticky-head thead th{z-index:3;position:sticky;top:56px}.ops .split tbody tr[id],.ops .tbl.sticky-head tbody tr[id]{scroll-margin-top:100px}.ops .split .tbl{border:0;border-radius:0}.ops .rdetail{max-height:calc(100vh - 57px);padding:18px;position:sticky;top:57px;overflow:auto}.ops .ov{letter-spacing:.14em;color:#748078;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:900;display:block}.ops .asg{gap:6px;margin:6px 0 12px;font-size:12px;display:grid}.ops .asg b{width:28px;color:var(--muted);font-size:10px;display:inline-block}.ops .rdot{background:var(--c);border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.ops .dv{background:var(--line);height:1px;margin:12px 0}.ops .gcard{border:1px solid var(--line);background:#fff;border-radius:12px;margin:8px 0;padding:12px}.ops .gcard .t{justify-content:space-between;align-items:center;gap:10px;display:flex}.ops .gcard p{color:var(--muted);margin:6px 0 0;font-size:12px}.ops .st2{gap:3px;font-size:12px;display:grid}.ops .st2 b{width:26px;color:var(--muted);letter-spacing:.06em;font-size:10px;display:inline-block}.ops .tsplit{border:1px solid var(--line);border-radius:var(--r);background:#fff;grid-template-columns:380px minmax(0,1fr);height:calc(100vh - 220px);min-height:560px;display:grid;overflow:hidden}.ops .tlist{border-right:1px solid var(--line);background:#fcfdfa;overflow:auto}.ops .tctl{border-bottom:1px solid var(--line);background:#fff;gap:8px;padding:12px;display:grid}.ops .gh{letter-spacing:.13em;text-transform:uppercase;color:#88938b;border-bottom:1px solid var(--line2);background:#fafbf9;padding:8px 14px;font-size:9px;font-weight:900}.ops .it{text-align:left;border:0;border-bottom:1px solid var(--line2);width:100%;color:inherit;background:0 0;grid-template-columns:auto 1fr;gap:12px;padding:11px 14px;display:grid}.ops .it:hover{background:#f6f8f3}.ops .it.sel{box-shadow:inset 3px 0 0 var(--green);background:#f4f7f2}.ops .it .a strong{font-size:13px}.ops .it .b{color:var(--muted);margin-top:4px;font-size:11px}.ops .it .fcs{margin:6px 0 0}.ops .tpane{padding:20px 22px;overflow:auto}.ops .dh{align-items:center;gap:12px;display:flex}.ops .dh h2{letter-spacing:-.03em;margin:0;font-size:22px}.ops .dsub{color:var(--muted);margin:8px 0;font-size:12px}.ops .dnote{border-radius:var(--r2);background:var(--warnbg);border:1px solid var(--warnline);margin:8px 0;padding:8px 12px;font-size:12px}.ops dl.sm{border:1px solid var(--line);border-radius:var(--r2);grid-template-columns:repeat(3,1fr);margin:8px 0 0;display:grid;overflow:hidden}.ops dl.sm>div{border-bottom:1px solid var(--line2);border-right:1px solid var(--line2);padding:10px 12px}.ops dl.sm>div:nth-child(3n){border-right:0}.ops dl.sm>div:nth-last-child(-n+3){border-bottom:0}.ops dl.sm dt{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:900}.ops dl.sm dd{margin:4px 0 0;font-size:14px;font-weight:800}.ops dl.sm dd small{color:var(--bad)}.ops .lg{margin:14px 0 0;padding:0;list-style:none}.ops .lg li{grid-template-columns:72px 20px 1fr;gap:0 8px;padding:8px 0;font-size:12px;display:grid;position:relative}.ops .lg time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.ops .lg li i{border:3px solid var(--green);z-index:1;background:#fff;border-radius:50%;width:12px;height:12px;margin-top:2px;position:relative}.ops .lg li:not(:last-child):after{content:"";background:var(--line);width:2px;position:absolute;top:22px;bottom:-8px;left:85px}.ops .lg li b{font-weight:750}.ops .lg li div>span{color:var(--muted);margin-top:2px;font-size:11px;display:block}.ops .lg li.high i{border-color:var(--bad)}.ops .lg li.med i{border-color:#bf8d2c}.ops .lg li.lg-sample i{border-color:#b9c3bb;width:8px;height:8px;margin-top:4px;margin-left:2px}.ops .lg li.rep b{color:var(--muted);text-decoration:line-through}.ops .tt{margin-top:12px;overflow:auto}.ops .tt table{border-collapse:collapse;border:1px solid var(--line);width:100%}.ops .tt th,.ops .tt td{border-bottom:1px solid var(--line2);text-align:left;padding:8px 11px;font-size:12px}.ops .tt th{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:#fafbf9;font-size:9px}.ops .dsec{margin:18px 0 4px}.ops .dsec h3{margin:0;font-size:14px}.ops .late{color:var(--bad);font-weight:800}.ops .routes-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:start;gap:12px;display:grid}.ops .rlist{margin:0;padding:0;list-style:none}.ops .rlist li{border-bottom:1px solid var(--line2);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:11px 14px;display:grid}.ops .rlist li:last-child{border-bottom:0}.ops .rlist li>i{background:var(--c);border-radius:8px;grid-row:1/span 2;width:7px;height:36px}.ops .rlist strong{font-size:13px}.ops .rlist small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.ops .rlist .acts{grid-column:2/span 2;margin:4px 0 0}.ops .rform{gap:10px;padding:16px;display:grid}.ops .rform h2{margin:0;font-size:17px}.ops .rform label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:900}.ops .addr-row{position:relative}.ops .addr-row .searching{color:var(--muted);font-size:11px;position:absolute;top:12px;right:12px}.ops .addr-results{border:1px solid var(--line);border-radius:var(--r2);margin:0;padding:0;list-style:none;overflow:hidden}.ops .addr-results button{text-align:left;border:0;border-bottom:1px solid var(--line2);background:#fff;width:100%;padding:9px 11px;font-size:12px}.ops .addr-results li:last-child button{border-bottom:0}.ops .addr-results button:hover,.ops .addr-results button:focus{background:#f4f7f2}.ops .addr-selected{border:1px solid var(--okline);background:var(--okbg);border-radius:var(--r2);gap:4px;padding:10px 12px;font-size:12px;display:grid}.ops .addr-selected p{margin:0}.ops .stop-picker-map{border:1px solid var(--line);border-radius:var(--r);height:340px;overflow:hidden}.ops .draft{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ops .draft li{border:1px solid var(--line);border-radius:var(--r2);background:#fff;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:4px 10px;padding:8px 10px;display:grid}.ops .draft li>b{background:var(--green);color:#fff;border-radius:50%;grid-row:1/span 2;place-items:center;width:24px;height:24px;font-size:10px;display:grid}.ops .draft small{color:var(--muted);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:10px}.ops .draft .acts{grid-column:2;margin:0}.ops .notice{border-radius:var(--r2);border:1px solid var(--okline);background:var(--okbg);color:var(--ok);margin:10px 0;padding:10px 12px;font-size:13px;font-weight:700}@media (width<=1100px){.ops .routes-grid{grid-template-columns:1fr}}.ops .va-btn{width:100%;color:var(--green);text-align:left;white-space:nowrap;text-overflow:ellipsis;background:#fff;border:1px solid #cbd5cc;border-radius:10px;padding:8px 10px;font-size:11.5px;font-weight:850;overflow:hidden}.ops .va-btn.on{background:var(--green);border-color:var(--green);color:#fff}.ops .mtop .va-btn{width:auto;max-width:170px;padding:7px 10px}.ops .va-banner{background:var(--lime);color:var(--green);align-items:center;gap:12px;padding:9px 22px;font-size:12.5px;font-weight:850;display:flex}.ops .va-banner button{background:var(--green);color:#fff;border:0;border-radius:8px;margin-left:auto;padding:6px 10px;font-size:12px;font-weight:850}.ops .app.d.docked{grid-template-columns:224px minmax(0,1fr) 400px}.ops .va-space{width:400px}.ops .va-tabs{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(4,1fr);gap:3px;margin:14px 0 10px;padding:3px;display:grid}.ops .va-tabs button{color:var(--muted);background:0 0;border:0;border-radius:7px;padding:7px 4px;font-size:12px;font-weight:850}.ops .va-tabs button.on{background:var(--green);color:#fff}.ops .va-search{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:10px;padding:9px 11px;font-size:13px}.ops .va-empty{color:var(--muted);margin:12px 2px;font-size:13px}.ops .va-dispatch p{color:var(--ink);font-size:13px;line-height:1.45}.ops .va-list{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.ops .va-list button{text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;gap:2px;width:100%;padding:10px 12px;display:grid;position:relative}.ops .va-list button:hover{border-color:var(--green)}.ops .va-list button.on{border-color:var(--green);box-shadow:inset 3px 0 0 var(--green)}.ops .va-list b{color:var(--ink);font-size:13.5px}.ops .va-list span{color:var(--ink);font-size:12px}.ops .va-list small{color:var(--muted);font-size:11.5px}.ops .va-list em{letter-spacing:.08em;text-transform:uppercase;color:var(--green);font-size:10px;font-style:normal;font-weight:900;position:absolute;top:10px;right:12px}.va-dock{z-index:70;box-sizing:border-box;background:#fff;flex-direction:column;display:flex;position:fixed}.va-dock.d{border-left:1px solid #dce3dc;width:400px;top:0;bottom:0;right:0}.va-dock.m{inset:0}.va-head{color:#fff;background:#17382c;flex:none;align-items:center;gap:10px;padding:10px 12px;display:flex}.va-head div{flex:1;min-width:0}.va-head span{letter-spacing:.09em;text-transform:uppercase;color:#cfff04;align-items:center;gap:6px;font-size:10px;font-weight:900;display:flex}.va-head i,.va-pill i{background:#cfff04;border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite va-pulse}.va-head b{white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:14px;display:block;overflow:hidden}.va-head nav{flex:none;gap:2px;display:flex}.va-head nav button{color:#fff;background:0 0;border:0;border-radius:7px;padding:6px 7px;font-size:11.5px;font-weight:800}.va-head nav button:hover{background:#ffffff1f}.va-stage{background:#f7f7f2;flex:1;min-height:0;position:relative;overflow:auto;transform:translateZ(0);container-type:inline-size}.va-stage .field,.va-stage .term{min-height:100%}.va-pill{z-index:70;color:#fff;background:#17382c;border:0;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;font-weight:850;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 6px 20px #0003}.ops .app.m~.va-pill{bottom:76px}@keyframes va-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.va-head i,.va-pill i{animation:none}}.ops .drv{max-width:640px}.ops .drow{flex-wrap:wrap;align-items:center;gap:14px;margin:10px 0 12px;font-size:12px;display:flex}.ops .dcard{border:1px solid var(--line);background:#fff;border-radius:16px;margin:12px 0 14px;padding:16px}.ops .dcard .ov{margin-bottom:2px}.ops .dbig{letter-spacing:-.04em;margin:4px 0;font-size:30px;font-weight:850;line-height:1.1}.ops .dsub2{color:var(--muted);margin:0 0 8px;font-size:14px}.ops .sh1{letter-spacing:-.045em;margin:6px 0 0;font-size:30px;line-height:1.1}.ops .bigbtn{background:var(--green);color:#fff;text-align:center;border:0;border-radius:14px;justify-content:center;align-items:center;width:100%;min-height:54px;margin-top:10px;padding:0 12px;font-size:16px;font-weight:900;display:flex}.ops .bigbtn.out{color:var(--green);border:1px solid var(--green);background:#fff}.ops .bigbtn.red{color:var(--bad);border:1px solid var(--badline);background:#fff}.ops .bigbtn.slim{min-height:46px;font-size:14px}.ops .drv .bad{color:var(--bad);font-weight:750}.ops .srow{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;color:inherit;background:0 0;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:14px 4px;font-size:15px;line-height:1.35;display:grid}.ops .srow small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.ops .srow small.bad{color:var(--bad);font-weight:700}.ops .srow .go{color:#9aa79f;align-self:center;font-size:20px}@media (width<=700px){.ops .acts .btn{flex:auto}.ops .rf2{grid-template-columns:1fr}.ops .filters input,.ops .filters select{min-width:0}}@media (width<=1100px){.ops .tsplit{grid-template-columns:320px minmax(0,1fr)}.ops .split{grid-template-columns:1fr}.ops .split .rdetail{border-left:0;border-top:1px solid var(--line)}}.ops .danger-zone{text-align:left;border:1px solid var(--badline);background:var(--badbg);width:100%;color:var(--bad);border-radius:12px;gap:2px;padding:10px 12px;display:grid}.ops .danger-zone b{letter-spacing:.02em;font-size:12px}.ops .danger-zone small{opacity:.85;font-size:10px}.ops .danger-zone:hover{border-color:var(--bad)}.ops .mfoot .danger-link{color:var(--bad);background:0 0;border:0;font-size:12px;text-decoration:underline}.ops .reset-list{border:1px solid var(--line);border-radius:12px;margin-top:12px;overflow:hidden}.ops .reset-list div{border-top:1px solid var(--line2);justify-content:space-between;gap:12px;padding:9px 12px;font-size:13px;display:flex}.ops .reset-list div:first-child{border-top:0}.ops .reset-list b{font-variant-numeric:tabular-nums;color:var(--bad)}.ops .reset-list .keep{background:var(--okbg)}.ops .reset-list .keep b{color:var(--ok)}.ops .btn.reset-go{background:var(--bad);border-color:var(--bad);color:#fff}.ops .linkish{color:var(--green);background:0 0;border:0;padding:0;font-size:12px;font-weight:800;text-decoration:underline}.ops .gpick{gap:8px;display:grid}.ops .gchips{flex-wrap:wrap;gap:6px;display:flex}.ops .gchip{background:var(--green);color:#fff;border-radius:999px;align-items:center;gap:4px;min-height:30px;padding:0 4px 0 11px;font-size:12px;font-weight:750;display:inline-flex}.ops .gchip button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;width:24px;height:24px;font-size:16px;line-height:1}.ops .gchip button:hover{background:#2f5a49}.ops .gres{border:1px solid var(--line);border-radius:var(--r2);background:#fff;display:grid;overflow:hidden}.ops .gres>button{text-align:left;border:0;border-top:1px solid var(--line);cursor:pointer;background:#fff;gap:2px;padding:9px 12px;display:grid}.ops .gres>button:first-child,.ops .gres>.gres-h+button{border-top:0}.ops .gres>button:hover,.ops .gres>button:focus-visible{background:#f3f5ef}.ops .gres strong{font-size:13px}.ops .gres small{color:var(--muted);font-size:11px}.ops .gres-h{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding:8px 12px 4px;font-size:10px;font-weight:900;display:block}.ops .gres .gnew-btn{color:var(--green);font-size:13px;font-weight:850}.ops .gnew{border:1px solid var(--line);border-radius:var(--r2);background:#fff;gap:10px;padding:10px 12px 12px;display:grid}.ops .gnew .gres-h{padding:0}.ops .st-cov-none{background:var(--badbg);color:var(--bad);margin-left:8px}.ops .st-cov-one{background:var(--warnbg);color:var(--warn);margin-left:8px}.ops .bc .tags{align-items:center;gap:6px;display:inline-flex}.ops .bc .tags .st{margin-left:0}.ops .cov-warn{border:1px solid var(--badline);border-radius:var(--r2);background:var(--badbg);color:var(--bad);margin:6px 0 0;padding:9px 12px;font-size:12px;font-weight:700;line-height:1.45}.ops .gpick .linkish{justify-self:start}.ops .msg-grid{grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:start;gap:22px;display:grid}.ops .msg-grid .msg-compose{position:sticky;top:76px}.ops .msg-stack{gap:18px;display:grid}.ops .msg-compose{min-width:0}.ops .msg-body{grid-template-columns:minmax(0,1fr);gap:12px;padding:14px 15px 15px;display:grid}.ops .msg-body select,.ops .msg-body input{min-width:0;max-width:100%}.ops .msg-field{gap:6px;display:grid}.ops .msg-field .seg{width:100%}.ops .msg-field .seg button{flex:1}.ops .msg-compose textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:110px;font:inherit;background:#fff;border-radius:9px;padding:10px 11px;font-size:14px;line-height:1.45}.ops .msg-compose textarea:focus,.ops .msg-compose select:focus,.ops .msg-compose input:focus{outline:2px solid var(--green);outline-offset:1px}.ops .msg-row{justify-content:space-between;align-items:center;gap:10px;margin-top:-4px;display:flex}.ops .msg-quick{flex-wrap:wrap;gap:6px;display:flex}.ops .msg-quick button{border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:999px;padding:6px 11px;font-size:12.5px;font-weight:700}.ops .msg-quick button:hover{border-color:#c9d0ca}.ops .msg-quick button.on{border-color:var(--green);background:var(--okbg);color:var(--green)}.ops .msg-sheet .msg-body{padding:6px 0 0}.ops .msg-compose .confirm{border-top:1px solid var(--line2);padding-top:12px}.ops .qsend{z-index:60;background:var(--ink);color:#fff;height:52px;font:inherit;cursor:pointer;border:0;border-radius:999px;padding:0 22px;font-size:15px;font-weight:850;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #17211b38}.ops .qsend:hover{background:#000}.ops .qsend.docked{right:424px}.ops .m .qsend,.ops .app.m~.qsend{right:14px;bottom:calc(76px + env(safe-area-inset-bottom));height:46px;padding:0 18px;font-size:14px}.ops .msg-count{color:var(--soft);font-size:10px}.ops .msg-foot{border-top:1px solid var(--line2);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.ops .msg-reach{color:var(--muted);margin:0;font-size:12px}.ops .msg-reach b{color:var(--ink)}.ops .msg-reach.bad,.ops .msg-reach.bad b{color:var(--bad)}.ops .msg-send{flex:none;min-width:96px}.ops .msg-stream{align-content:start;gap:8px;display:grid}.ops .msg-stream .sec-h{align-items:center;margin-top:0}.ops .msg-card{border:1px solid var(--line);border-radius:var(--r2);background:#fff;padding:11px 14px}.ops .msg-card.gone{background:0 0;border-style:dashed}.ops .msg-card.gone .msg-text{color:var(--soft);text-decoration:line-through}.ops .msg-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.ops .msg-to{color:var(--green);font-size:11px;font-weight:800}.ops .msg-when{color:var(--soft);white-space:nowrap;font-size:11px}.ops .msg-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 6px;font-size:14px;line-height:1.45}.ops .msg-meta{color:var(--soft);justify-content:space-between;align-items:center;gap:10px;margin:0;font-size:11px;display:flex}.ops .msg-remove{color:var(--soft);cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:11px;font-weight:700}.ops .msg-remove:hover{color:var(--bad)}@media (width<=1180px){.ops .msg-grid{grid-template-columns:1fr}.ops .msg-grid .msg-compose{position:static}}.ops .cov-hint{color:var(--warn);margin:-4px 0 0;font-size:12px}.ops .crew{gap:6px;display:grid}.ops .crew .lt{margin-top:6px}.ops .crew .lt small{letter-spacing:0;text-transform:none;font-weight:700}.ops .crew-chips{flex-wrap:wrap;gap:6px;display:flex}.ops .crew-chip{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:4px;padding:4px 6px 4px 10px;font-size:12px;font-weight:750;display:inline-flex}.ops .crew-chip button{background:var(--line2);width:20px;height:20px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;font-size:14px;line-height:1}.ops .crew-err{color:#912018;background:#fdecea;border-radius:8px;margin-top:6px;padding:8px 10px;font-size:12px}.ops .trk-on{color:var(--ok);font-weight:700}.ops .trk-code{border:1px solid var(--line);border-radius:var(--r2);text-align:center;background:#fff;margin:10px 0;padding:14px}.ops .trk-code b{letter-spacing:.12em;font-variant-numeric:tabular-nums;font-size:40px;display:block}.ops .trk-code p{color:var(--muted);margin:6px 0 0;font-size:13px}.ops .crewp{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.ops .cp{background:var(--idlebg);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:600;line-height:1.3;display:inline-flex}.ops .cp b{letter-spacing:.08em;text-transform:uppercase;font-size:8.5px;font-weight:900}.ops .cp.lead{background:var(--green);color:#fff}.ops .cp.lead b{color:var(--lime)}.ops .cp.nolead{background:var(--badbg);color:var(--bad);font-weight:800}.ops .cp.drv{border:1px solid var(--line);color:var(--muted);background:#fff}.ops .cp.drv b{color:var(--soft)}.ops .cp.nodrv{background:var(--warnbg);color:var(--warn);font-weight:800}.ops .d-grid>div.wide{border-right:0;grid-column:1/-1}.ops .shared-phone{color:var(--muted);margin-top:2px;font-size:11px;display:block}.ops .role-pill{letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:9px;font-weight:900;display:inline-block}.ops .role-admin{background:var(--green);color:var(--lime)}.ops .role-dispatch{background:var(--idlebg);color:var(--ink)}.ops .withrail{grid-template-columns:40px minmax(0,1fr);align-items:start;gap:14px;margin-left:-20px;display:grid}.ops .jumprail{flex-direction:column;align-items:center;gap:10px;display:flex;position:sticky;top:76px}.ops .jr-top{border:1px solid var(--line);width:40px;color:var(--green);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:7px 0 5px;font-size:9px;font-weight:900;transition:opacity .15s;display:flex}.ops .jr-top svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.ops .jr-top:disabled{opacity:.35;cursor:default}.ops .jr-top:not(:disabled):hover{border-color:var(--green)}.ops .jr-letters{border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:1px;width:40px;padding:4px 0;display:flex}.ops .jr-letters button{width:30px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:11px;font-weight:800}.ops .jr-letters button:hover{color:var(--ink);background:var(--idlebg)}.ops .jr-letters button.on{background:var(--green);color:var(--lime)}@media (width<=1100px){.ops .withrail{grid-template-columns:minmax(0,1fr);margin-left:0}.ops .jumprail{display:none}.ops .split{background:#fff}.ops .rdetail{max-height:none;position:static}}.ops .split .tbl,.ops .tbl.sticky-head{overflow:clip}.ops .map-views{z-index:2;border:1px solid var(--line);background:#fffffff2;border-radius:10px;padding:3px;display:inline-flex;position:absolute;top:10px;right:10px;box-shadow:0 4px 14px -8px #0000004d}.ops .map-views button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 10px;font-size:12px;font-weight:800}.ops .map-views button.on{background:var(--green);color:#fff}.ops .map-views button:disabled{opacity:.4;cursor:default}.ops .who-acts{gap:2px;display:flex}.ops .rf textarea{resize:vertical;border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:9px;padding:10px 11px;font-size:13px;line-height:1.45}.ops .care-box{border-radius:var(--r2);background:var(--warnbg);border:1px solid var(--warnline);margin:12px 0;padding:10px 12px}.ops .care-box p{margin:0;font-size:13px;line-height:1.45}.ops .care-box p+p{margin-top:6px}.ops .care-box b{letter-spacing:.1em;text-transform:uppercase;color:var(--warn);font-size:9.5px;display:block}.ops .em-banner{border-radius:var(--r);background:var(--bad);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px;padding:14px 18px;animation:1.4s ease-in-out infinite em-pulse;display:flex}.ops .em-banner span{letter-spacing:.1em;text-transform:uppercase;color:#ffd9d4;font-size:10.5px;font-weight:900;display:block}.ops .em-banner b{letter-spacing:-.01em;margin-top:2px;font-size:22px;display:block}.ops .em-banner p{margin:4px 0 0;font-size:13.5px;font-weight:600}.ops .em-acts{flex-wrap:wrap;gap:8px;display:flex}.ops .em-acts .btn{color:var(--bad);background:#fff;border-color:#fff;text-decoration:none}.ops .em-acts .btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}@keyframes em-pulse{50%{box-shadow:0 0 0 6px #ad413840}}@media (prefers-reduced-motion:reduce){.ops .em-banner{animation:none}}.ops .lb-table{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow-x:auto}.ops .lb-table .tbl{border:0;margin:0}.ops .lb-table td{white-space:nowrap}.ops .lb-table td.bad,.ops .lb-table .bad{color:var(--bad);font-weight:800}.ops .lb-table td.warn{color:var(--warn);font-weight:800}.ops .lb-table td.dim,.ops .lb-table .dim{color:var(--muted)}.ops .lb-table tr.late td{background:var(--badbg)}.ops .lb-bus-cell{align-items:center;gap:8px;font-weight:700;display:inline-flex}.ops .lb-strip{width:200px;height:24px;position:relative}.ops .lb-strip-track,.ops .lb-strip-done{border-radius:2px;height:3px;position:absolute;top:11px;left:0}.ops .lb-strip-track{background:var(--line);right:0}.ops .lb-strip-done{background:var(--c)}.ops .lb-strip b{border:2px solid var(--line);background:#fff;border-radius:50%;width:13px;height:13px;margin-left:-6px;position:absolute;top:6px}.ops .lb-strip b.f{background:var(--c);border-color:var(--c)}.ops .lb-strip u{border:6px solid #0000;border-bottom:0;border-top-color:var(--ink);margin-left:-6px;text-decoration:none;position:absolute;top:-3px}.ops .lb-where{color:var(--green);margin-left:8px;font-size:11.5px;font-weight:800}.ops .lb-link{color:var(--green);background:0 0;border:0;padding:0;font-size:13px;font-weight:800;text-decoration:underline}.ops .lb-act{text-align:right}.ops .lb-empty{border:1px dashed var(--line);border-radius:var(--r);color:var(--muted);text-align:center;background:#fff;margin:0;padding:16px;font-size:13px}.ops .lb-done-note{color:var(--muted);margin:14px 0 0;font-size:12.5px}.ops .lb-done-note button{color:var(--green);background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.ops .attn-list{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}.ops .attn-row{border-bottom:1px solid var(--line2);grid-template-columns:96px minmax(140px,auto) minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 16px;font-size:13px;display:grid}.ops .attn-row:last-child{border-bottom:0}.ops .attn-row b{white-space:nowrap}.ops .attn-text{color:var(--ink);min-width:0}.ops .attn-chip{letter-spacing:.06em;text-transform:uppercase;background:var(--warnbg);color:var(--warn);border-radius:6px;justify-self:start;padding:3px 8px;font-size:10px;font-weight:900}.ops .attn-chip.high{background:var(--badbg);color:var(--bad)}.ops .attn-chip.clear{background:var(--okbg);color:var(--ok)}.ops .attn-acts{white-space:nowrap;justify-content:flex-end;gap:14px;display:flex}.ops .attn-acts button{color:var(--muted);background:0 0;border:0;padding:0;font-size:12.5px;font-weight:700;text-decoration:underline}.ops .attn-acts button.primary{color:var(--green);font-weight:850}.ops .m .attn-row{grid-template-columns:auto 1fr;gap:6px 10px}.ops .m .attn-text,.ops .m .attn-acts{grid-column:1/-1}.ops .m .attn-acts{justify-content:flex-start}.ops .lb-map{border:1px solid var(--line);border-radius:var(--r);background:#eef1ea;height:400px;margin:0 0 12px;position:relative;overflow:hidden}.ops .m .lb-map{height:280px}.ops .daypick{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.ops .daypick button{border:1px solid var(--line);height:36px;color:var(--ink);cursor:pointer;background:#fff;border-radius:8px;font-size:12px;font-weight:800}.ops .daypick button.on{background:var(--green);border-color:var(--green);color:#fff}.ops .daypick button:disabled{cursor:default}.ops .timef{align-items:center;gap:10px;display:flex}.ops .timef input{flex:1;min-width:0}.ops .timef small{color:var(--ok);white-space:nowrap;flex:none;font-size:12.5px;font-weight:800}.ops .timef small.bad{color:var(--bad)}.ops .timef small:empty{display:none}.ops .dm-danger{max-width:320px;margin:28px 0 0}.ops .mfoot-setup{justify-content:center;gap:18px;margin:18px 0 4px;font-size:13px;font-weight:800;display:flex}.ops .mfoot-setup a{color:var(--green)}.ops .d-calls{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.ops .trk-steps{text-align:left;max-width:340px;margin:10px auto 6px;padding-left:20px;font-size:14px;line-height:1.6}.ops .trk-code small{color:var(--muted);font-size:12.5px;display:block}.ops .map-pin{background:var(--c);color:#fff;cursor:pointer;border:3px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;transition:opacity .2s;display:grid;box-shadow:0 2px 8px #00000047}.ops .map-pin b{font-size:14px;font-weight:900;line-height:1}.ops .map-pin.live:after{content:"";border:3px solid var(--c);opacity:0;pointer-events:none;border-radius:50%;animation:2.4s ease-out infinite map-pulse;position:absolute;inset:-9px}@keyframes map-pulse{0%{opacity:.55;transform:scale(.6)}to{opacity:0;transform:scale(1.35)}}.ops .map-pin.stale{box-shadow:0 0 0 3px var(--bad),0 2px 8px #00000047;background:#8a959e}.ops .map-pin.dim{opacity:.5}.ops .map-pin span{white-space:nowrap;color:#fff;pointer-events:none;background:#17211be0;border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:750;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.ops .map-pin.live:after{animation:none}}
