@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_a77bd8{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_a77bd8{--font-plex-sans:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_26a6cf{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_26a6cf{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--bg:#0b0d10;--card:#15181d;--card-2:#1c2026;--line:#262b33;--text:#f4f5f7;--muted:#a0a8b5;--primary:#d9411a;--primary-hover:#c23a17;--accent:#ff8a65;--ok:#4ade80;--warn:#f59e0b;--blue:#60a5fa;--danger:#f87171;--radius:16px;--tabbar-h:68px;--safe-bottom:env(safe-area-inset-bottom,0px);--font-sans:var(--font-plex-sans,"IBM Plex Sans"),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:var(--font-plex-mono,"IBM Plex Mono"),ui-monospace,"Cascadia Mono",Consolas,monospace;color-scheme:dark}*{box-sizing:border-box}html{min-height:100%;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body,html{background:var(--bg)}body{min-height:100vh;min-height:100dvh;margin:0;overflow-x:hidden;color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.45;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}svg{flex-shrink:0}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{width:100%;max-width:560px;min-height:100vh;min-height:100dvh;margin:0 auto;padding:16px 16px calc(var(--tabbar-h) + var(--safe-bottom) + 24px)}.app-shell.has-cta{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 100px)}.page{display:grid;grid-gap:14px;gap:14px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px}.page-head h1{font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.page-head p{color:var(--muted);font-size:.95rem}.card{min-width:0;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}.card-2{border-radius:12px;background:var(--card-2)}.eyebrow{color:var(--muted);font-size:.8rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.alert,.notice{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;font-size:.95rem}.alert{color:#fecaca;background:#3a1414;border:1px solid #5c1d1d}.notice{color:#bfdbfe;background:#10223d;border:1px solid #1e3a66}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 16px;border:1px solid transparent;border-radius:12px;font-weight:600;transition:background-color .15s,opacity .15s}.btn:disabled{opacity:.5}.btn svg{width:20px;height:20px}.btn-lg{width:100%;min-height:60px;border-radius:16px;font-size:1.1875rem;font-weight:700}.btn-lg svg{width:22px;height:22px}.btn-primary{color:#fff;background:var(--primary)}.btn-primary:not(:disabled):hover{background:var(--primary-hover)}.btn-secondary{color:var(--text);background:var(--card-2);border-color:var(--line)}.btn-secondary:not(:disabled):hover{background:#232830}.btn-ok{color:#052e16;background:var(--ok)}.btn-danger-outline{color:#fecaca;background:transparent;border-color:#5c1d1d}.btn-ghost{color:var(--muted);background:transparent}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--card-2)}.icon-btn svg{width:20px;height:20px}.btn-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.chip{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 10px;border-radius:999px;font-size:.8125rem;font-weight:600;white-space:nowrap}.chip:before{width:6px;height:6px;border-radius:50%;background:currentColor;content:""}.chip-scheduled{color:#344054;background:#eef0f3}.chip-boarding{color:#92400e;background:#fef3c7}.chip-in_transit{color:#1e40af;background:#dbeafe}.chip-completed{color:#166534;background:#dcfce7}.chip-cancelled{color:#991b1b;background:#fee2e2}.chip-pending{color:#92400e;background:#fef3c7}.chip-boarded{color:#166534;background:#dcfce7}.chip-no_show{color:#991b1b;background:#fee2e2}.online-badge{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:.875rem;font-weight:500}.online-badge i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px rgba(74,222,128,.18)}.online-badge.offline i{background:var(--danger);box-shadow:0 0 0 4px rgba(248,113,113,.18)}.plate{display:inline-flex;min-height:28px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--card-2);font-family:var(--font-mono);font-size:.875rem;font-weight:600;white-space:nowrap}.greeting,.plate{align-items:center}.greeting{display:flex;justify-content:space-between;gap:12px}.greeting h1{font-size:1.5rem;font-weight:700}.next-trip{display:grid;grid-gap:14px;gap:14px}.next-trip-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.big-time{font-size:3.25rem;font-weight:700;line-height:1;letter-spacing:-.02em}.countdown{color:var(--accent);font-size:1rem;font-weight:600}.route-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:1.15rem;font-weight:600}.route-line svg{width:18px;height:18px;color:var(--muted)}.facts{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr) minmax(0,.85fr);grid-gap:8px;gap:8px}.fact{min-width:0;padding:10px 12px;border-radius:12px;background:var(--card-2)}.fact dt{color:var(--muted);font-size:.8rem}.fact dd{overflow:hidden;margin:2px 0 0;font-size:1rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.steps{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none}.steps,.steps li{display:grid;grid-gap:6px;gap:6px}.steps li{color:var(--muted);font-size:.75rem;font-weight:500}.steps li:before{height:6px;border-radius:999px;background:var(--line);content:""}.steps li.done:before{background:var(--accent)}.steps li.current{color:var(--text);font-weight:600}.steps li.current:before{background:var(--primary)}.counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.counter{min-width:0}.counter strong{display:block;font-size:1.6rem;font-weight:700;line-height:1.1}.counter span{color:var(--muted);font-size:.8rem}.counter.ok strong{color:var(--ok)}.counter.warn strong{color:var(--warn)}.counter.bad strong{color:var(--danger)}.stack-bar{display:flex;gap:2px;height:8px;margin-top:14px;overflow:hidden;border-radius:999px;background:var(--line)}.toggle-row{display:flex;align-items:center;gap:14px}.toggle-row>div{flex:1 1;min-width:0}.toggle-row h2{font-size:1rem;font-weight:600}.toggle-row p{color:var(--muted);font-size:.875rem}.switch{position:relative;flex-shrink:0;width:60px;height:36px;padding:0;border:0;border-radius:999px;background:#3a404a;transition:background-color .15s}.switch:after{position:absolute;top:4px;left:4px;width:28px;height:28px;border-radius:50%;background:#fff;content:"";transition:transform .15s}.switch[aria-checked=true]{background:var(--ok)}.switch[aria-checked=true]:after{transform:translateX(24px)}.switch:disabled{opacity:.5}.segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:4px;gap:4px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.segment button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:0;border-radius:10px;color:var(--muted);background:transparent;font-weight:600}.segment button[aria-selected=true]{color:var(--text);background:var(--card-2);box-shadow:inset 0 0 0 1px var(--line)}.segment b{min-width:24px;padding:0 6px;border-radius:999px;background:var(--line);font-size:.8rem}.stop-group{display:grid;grid-gap:8px;gap:8px}.stop-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 4px;color:var(--muted);font-size:.875rem}.stop-group-head strong{color:var(--text);font-size:1rem}.pax-row{display:grid;grid-template-columns:52px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.seat{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--line);border-radius:12px;background:var(--bg);font-family:var(--font-mono);font-size:1.2rem;font-weight:600}.pax-main{min-width:0}.pax-main strong{display:block;overflow:hidden;font-size:1.05rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.pax-main span{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:.875rem}.pax-main span svg{width:14px;height:14px}.pax-actions{display:grid;grid-column:1/-1;grid-template-columns:1fr 1.3fr;grid-gap:8px;gap:8px}.pax-actions .btn{min-height:48px}.pax-state{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:8px}.empty{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:32px 16px;color:var(--muted);text-align:center}.empty svg{width:32px;height:32px}.empty strong{color:var(--text);font-size:1.1rem}.sticky-cta{position:fixed;right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom));left:0;z-index:20;padding:12px 16px;background:linear-gradient(to top,var(--bg) 70%,transparent)}.sticky-cta>*{max-width:528px;margin:0 auto}.route-screen{margin:-16px -16px 0}.route-map{position:relative;height:50vh;height:50dvh;min-height:280px}.driver-map-viewport{overflow:hidden;background:#0f1216}.driver-map,.driver-map-viewport{position:absolute;inset:0}.driver-map .maplibregl-canvas{outline:none}.driver-map-fallback{position:absolute;inset:0;background:linear-gradient(32deg,transparent 0 46%,#1a1e24 46% 47%,transparent 47% 100%),linear-gradient(-35deg,transparent 0 59%,#1a1e24 59% 60%,transparent 60% 100%),#0f1216}.driver-map-stop{display:grid;place-items:center;width:26px;height:26px;border:2px solid var(--bg);border-radius:50%;color:var(--bg);background:var(--text);font-family:var(--font-mono);font-size:.75rem;font-weight:700}.driver-map-stop.is-origin{color:var(--bg);background:var(--accent)}.driver-map-vehicle{display:block;width:26px;height:26px;border:4px solid #fff;border-radius:50%;background:var(--primary);box-shadow:0 0 0 6px rgba(217,65,26,.35)}.driver-map-controls{position:absolute;top:12px;right:12px;z-index:3;display:grid;grid-gap:8px;gap:8px}.driver-map-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:rgba(21,24,29,.92)}.driver-map-controls button svg{width:20px;height:20px}.driver-map-controls button:disabled{opacity:.45}.speed-badge{position:absolute;bottom:32px;left:12px;z-index:3;display:grid;place-content:center;width:76px;height:76px;border:1px solid var(--line);border-radius:50%;background:rgba(21,24,29,.94);text-align:center}.speed-badge strong{font-size:1.6rem;font-weight:700;line-height:1}.speed-badge span{color:var(--muted);font-size:.7rem}.gps-badge{position:absolute;top:12px;left:12px;z-index:3}.route-panel{position:relative;z-index:4;display:grid;grid-gap:14px;gap:14px;margin-top:-20px;padding:20px 16px 0;border-radius:20px 20px 0 0;background:var(--bg)}.next-stop{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.next-stop>div{min-width:0}.next-stop h2{font-size:1.4rem;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.eta{flex-shrink:0;text-align:right}.eta strong{display:block;color:var(--accent);font-size:1.6rem;font-weight:700;line-height:1.1}.eta span{color:var(--muted);font-size:.8rem}.timeline{display:grid;margin:0;padding:0;list-style:none}.timeline li{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:start;min-height:56px}.timeline li:before{position:absolute;top:22px;bottom:-4px;left:13px;width:2px;background:var(--line);content:""}.timeline li:last-child:before{display:none}.timeline li.done:before{background:var(--accent)}.timeline .dot{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;border:2px solid var(--line);border-radius:50%;background:var(--bg)}.timeline li.done .dot{border-color:var(--accent);background:var(--accent)}.timeline li.current .dot{border-color:var(--primary);box-shadow:0 0 0 4px rgba(217,65,26,.25)}.timeline .dot svg{width:14px;height:14px;color:#3b1307}.timeline strong{display:block;font-weight:600}.timeline small{color:var(--muted);font-size:.85rem}.timeline time{color:var(--muted);font-size:.95rem;font-weight:500}.timeline li.current time{color:var(--text)}.tabbar{position:fixed;right:0;bottom:0;left:0;z-index:30;padding-bottom:var(--safe-bottom);border-top:1px solid var(--line);background:rgba(11,13,16,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tabbar ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:560px;height:var(--tabbar-h);margin:0 auto;padding:0;list-style:none}.tabbar a{display:grid;place-items:center;align-content:center;grid-gap:4px;gap:4px;height:100%;color:var(--muted);font-size:.75rem;font-weight:500}.tabbar a svg{width:24px;height:24px}.tabbar a[aria-current=page]{color:var(--accent);font-weight:600}.sheet-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.6)}.sheet{display:grid;grid-gap:14px;gap:14px;width:100%;max-width:560px;max-height:90dvh;overflow-y:auto;padding:20px 16px calc(20px + var(--safe-bottom));border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;background:var(--card)}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet-head h2{font-size:1.25rem;font-weight:700}.field{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:.9rem;font-weight:500}.field input{width:100%;min-height:56px;padding:0 14px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--bg);font-family:var(--font-mono);font-size:1.15rem}.field input:focus{border-color:var(--accent);outline:none}.profile-card{display:flex;align-items:center;gap:14px}.profile-card>div{min-width:0}.avatar{display:grid;flex-shrink:0;place-items:center;width:56px;height:56px;border-radius:50%;color:#fff;background:var(--primary);font-size:1.2rem;font-weight:700}.list{display:grid;margin:0;padding:0;list-style:none}.list>li+li{border-top:1px solid var(--line)}.trip-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:4px 10px;gap:4px 10px;align-items:center;width:100%;min-height:64px;padding:12px 0;border:0;background:transparent;text-align:left}.trip-item strong{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.trip-item small{grid-column:1;color:var(--muted)}.trip-item[aria-current=true] strong{color:var(--accent)}.center-screen{display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:24px 16px}.login-card{display:grid;grid-gap:18px;gap:18px;width:100%;max-width:420px}.login-card h1{font-size:1.75rem;font-weight:700;line-height:1.2}.brand-tile{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;color:#fff;background:var(--primary);font-size:1.25rem;font-weight:700}.login-form{display:grid;grid-gap:14px;gap:14px}.login-form .field input{font-family:var(--font-sans);font-size:1.05rem}.loading{display:grid;place-items:center;align-content:center;grid-gap:12px;gap:12px;min-height:60vh;color:var(--muted)}.spinner{width:32px;height:32px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media (max-width:360px){.big-time{font-size:2.75rem}.counter strong{font-size:1.35rem}}