@font-face{font-family:Archivo;src:url(./archivo-latin-standard-normal-DY7AcnAa.woff2)format("woff2-variations");font-weight:100 900;font-stretch:62% 125%;font-display:swap}@font-face{font-family:Atkinson Next;src:url(./atkinson-hyperlegible-next-latin-400-normal-FfmJh7DR.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Atkinson Next;src:url(./atkinson-hyperlegible-next-latin-600-normal-BBuhw47K.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Atkinson Next;src:url(./atkinson-hyperlegible-next-latin-700-normal-Dpiyiu63.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Atkinson Next;src:url(./atkinson-hyperlegible-next-latin-800-normal-D32lleIF.woff2)format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Plex Mono;src:url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2");font-weight:500;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f3f4f1;--surface:#fff;--ink:#0d0f12;--ink2:#4a5058;--ink3:#646b74;--rule:#d5d8dc;--hivis:#d4ff3a;--on-hivis:#0d0f12;--steel:#dce3ea;--on-steel:#0d0f12;--err:#c42b1c;--tag:#0d0f12;--on-tag:#f3f4f1;--btn:#0d0f12;--on-btn:#f3f4f1;--stay-rule:1.5px solid #b9c3ce;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--r-sm:4px;--r-md:10px;--r-lg:16px;--under:var(--bg)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0b0d10;--surface:#15191e;--ink:#f1f3ee;--ink2:#a3aab3;--ink3:#8c949e;--rule:#2a3038;--steel:#28323c;--on-steel:#f1f3ee;--err:#ff7a6b;--tag:#f1f3ee;--on-tag:#0b0d10;--btn:#f1f3ee;--on-btn:#0b0d10;--stay-rule:1.5px solid transparent}}html{background:var(--bg);-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;min-height:100dvh;font-family:Atkinson Next,system-ui,sans-serif;font-size:17px;line-height:1.35}button,input{font:inherit;color:inherit}button{cursor:pointer;text-align:inherit;touch-action:manipulation;background:0 0;border:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}svg{flex:none;display:block}#app{max-width:480px;min-height:100dvh;padding:env(safe-area-inset-top) max(var(--s4), env(safe-area-inset-right)) 0 max(var(--s4), env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex}.view{flex-direction:column;flex:1;display:flex}.boot{color:var(--ink2);flex:1;justify-content:center;align-items:center;font-weight:700;display:flex}.top{justify-content:space-between;align-items:center;gap:var(--s2);min-height:60px;display:flex}.back{align-items:center;gap:4px;min-width:48px;min-height:48px;margin-left:-12px;padding:0 12px 0 11px;display:inline-flex}.mark{letter-spacing:-.02em;white-space:nowrap;font-family:Archivo;font-size:34px;font-weight:850;font-stretch:68%;line-height:1}.mark i{vertical-align:baseline;border:.08em solid;border-radius:.19em;width:.38em;height:.54em;margin:0 .03em;display:inline-block}.mark i.f{background:currentColor}.pill{border:1.5px solid var(--rule);white-space:nowrap;border-radius:16px;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.pill .dot{background:var(--ink);border-radius:2px;width:8px;height:8px}.pill.off{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pill .dot.hollow{box-shadow:inset 0 0 0 2px var(--ink);background:0 0;border-radius:4px}.pill.off .dot{box-shadow:inset 0 0 0 2px var(--bg);background:0 0;border-radius:4px}.caps{letter-spacing:.11em;text-transform:uppercase;color:var(--ink2);font-size:12px;font-weight:800}.h1{letter-spacing:-.005em;font-family:Archivo;font-size:30px;font-weight:800;font-stretch:75%;line-height:1.05}.sub{color:var(--ink2);font-size:14px;font-weight:600}.hint{color:var(--ink2);padding:var(--s3) 0;font-size:14px;font-weight:600}.tag{--tag-bg:var(--tag);--tag-fg:var(--on-tag);background:var(--tag-bg);min-width:30px;height:24px;color:var(--tag-fg);letter-spacing:.04em;border-radius:2px;flex:none;justify-content:center;align-items:center;padding:0 5px;font-family:Archivo;font-size:14px;font-weight:800;font-stretch:75%;line-height:1;display:inline-flex}.tag.lg{min-width:38px;height:30px;font-size:17px}.tag.el{box-shadow:0 3px 0 0 var(--under), 0 6px 0 0 var(--tag-bg);margin-bottom:6px}.tags .tag.el,.legs .tag.el{margin-bottom:0}.tag.dl{clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%)}.tag.og{border-radius:12px;padding:0 7px}.tag.rl{box-shadow:inset 0 0 0 1.5px #0d0f1252}@media (prefers-color-scheme:dark){.tag.rl{box-shadow:none}.tag.rd{box-shadow:inset 0 0 0 1.5px #f1f3ee80}}.tags{flex-wrap:wrap;justify-content:flex-end;gap:10px 4px;display:flex}.stack{gap:var(--s2);flex-direction:column;display:flex}.field{--under:var(--surface);background:var(--surface);border-radius:var(--r-md);align-items:center;gap:var(--s3);width:100%;min-height:68px;padding:10px var(--s4);border:1.5px solid var(--rule);display:flex}.field .k{letter-spacing:.1em;width:28px;color:var(--ink2);flex:none;font-size:12px;font-weight:800}.field .body{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.field .v{font-size:20px;font-weight:700;line-height:1.2}.field .ph{color:var(--ink3);font-weight:600}.field .chev{color:var(--ink)}.card{--under:var(--surface);background:var(--surface);border-radius:var(--r-lg);padding:var(--s4);border:1.5px solid var(--rule)}.last{align-items:center;gap:var(--s3);border-radius:var(--r-md);width:100%;min-height:64px;padding:10px 10px 10px 14px;display:flex}.last .tw{white-space:normal;display:inline}.last .t{-webkit-line-clamp:3;overflow-wrap:anywhere;white-space:normal;-webkit-box-orient:vertical;font-size:17px;font-weight:800;line-height:1.25;display:-webkit-box;overflow:hidden}.last .sub{margin-top:1px;line-height:1.3;display:block}.last .day{white-space:nowrap}.last .go{color:var(--ink2);flex:none;margin-left:-4px}.row{align-items:center;gap:var(--s3);display:flex}.grow{flex:1;min-width:0}.section{margin:22px 0 8px}h2.section,h3.section,h4.section{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box;overflow:hidden}.home .h1{margin:4px 0 6px}.home .stack+.section,.home .h1+.section{margin-top:18px}.grid{gap:var(--s2);grid-template-columns:1fr 1fr;display:grid}.tile{--tag-bg:var(--tag);--tag-fg:var(--on-tag);border-radius:var(--r-md);background:var(--tag-bg);min-height:60px;color:var(--tag-fg);text-align:left;flex-direction:column;justify-content:flex-end;padding:8px 12px;display:flex;position:relative}.tile .nm{padding-right:26px;font-size:17px;font-weight:800;line-height:1.15}.tile .sub{color:inherit;font-size:13px;font-weight:700}.tile .code{letter-spacing:.04em;font-family:Archivo;font-size:14px;font-weight:800;font-stretch:75%;position:absolute;top:7px;right:10px}.tile.rl{box-shadow:inset 0 0 0 1.5px #0d0f1252}@media (prefers-color-scheme:dark){.tile.rl{box-shadow:none}.tile.rd{box-shadow:inset 0 0 0 1.5px #f1f3ee80}}.searchentry{min-height:56px;margin-top:var(--s3);border-radius:var(--r-md);border:1.5px solid var(--rule);background:var(--surface);color:var(--ink2);align-items:center;gap:10px;width:100%;padding:0 16px;font-weight:700;display:flex}.ask{color:var(--ink2);padding:2px 0 8px;font-size:15px;font-weight:700}.btn{border-radius:var(--r-md);background:var(--btn);min-height:60px;color:var(--on-btn);text-align:center;justify-content:center;align-items:center;gap:10px;width:100%;padding:0 16px;font-size:19px;font-weight:800;display:flex}.btn.sm{min-height:48px;font-size:16px}.btn.soft{background:var(--surface);color:var(--ink);border:1.5px solid var(--rule)}.link{text-underline-offset:3px;min-width:48px;min-height:48px;color:var(--ink);white-space:nowrap;justify-content:center;align-items:center;padding:0 12px;font-size:15px;font-weight:700;text-decoration:underline;display:inline-flex}.offline{margin-bottom:14px}.offline .big{font-family:Archivo;font-size:34px;font-weight:850;font-stretch:72%;line-height:1}.offline p{color:var(--ink2);margin-top:10px;font-size:15px}.facts{padding:4px 14px}.facts .row{min-height:52px}.facts .row+.row{border-top:1.5px solid var(--rule)}.foot{padding:20px 0 max(20px, env(safe-area-inset-bottom));color:var(--ink2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 12px;margin-top:auto;font-size:13px;display:flex}.foot a{color:var(--ink);text-underline-offset:3px;align-items:center;min-height:48px;padding:0 0 0 4px;font-weight:700;text-decoration:underline;display:inline-flex}.searchbar{border-radius:var(--r-md);background:var(--surface);border:2.5px solid var(--ink);align-items:center;gap:10px;height:60px;padding:0 4px 0 14px;display:flex}.searchbar input{background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%;font-size:21px;font-weight:700}.searchbar input::-webkit-search-cancel-button{appearance:none}.searchbar input::placeholder{color:var(--ink3);font-weight:600}.clear{width:48px;height:48px;color:var(--ink2);justify-content:center;align-items:center;display:flex}.seg{background:var(--surface);border:1.5px solid var(--rule);border-radius:28px;height:56px;margin:10px 0 4px;padding:4px;display:flex}.seg+.searchbar{margin-top:10px}.seg button{color:var(--ink2);text-align:center;border-radius:24px;flex:1;justify-content:center;align-items:center;min-width:0;padding:0 8px;font-size:15px;font-weight:700;line-height:1.1;display:flex}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.chips{scrollbar-width:none;overscroll-behavior-x:contain;gap:8px;margin:10px -16px 4px;padding:0 16px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{background:var(--surface);border:1.5px solid var(--rule);min-height:48px;color:var(--ink);white-space:nowrap;border-radius:24px;flex:none;align-items:center;padding:0 14px;font-size:15px;font-weight:700;display:inline-flex}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.res{border-bottom:1.5px solid var(--rule);align-items:center;gap:12px;width:100%;min-height:72px;padding:10px 0;display:flex}.res .nm{font-size:20px;font-weight:700;line-height:1.15}.res .nm mark{color:inherit;text-underline-offset:4px;background:0 0;font-weight:800;text-decoration:underline;text-decoration-thickness:3px}.res .mt{color:var(--ink2);margin-top:3px;font-size:14px;font-weight:600}.res .tags{max-width:45%;margin-left:auto}.lineres{min-height:64px}.lineres .nm{font-size:19px}.drillhead{margin:0 -16px;padding:0 16px 4px}.drillhead.pinned{z-index:1;background:var(--bg);border-bottom:1.5px solid var(--rule);position:sticky;top:0}.linehead{align-items:center;gap:var(--s3);padding-top:8px;display:flex}.linehead .back{margin-right:calc(-1 * var(--s3))}.stop{scroll-margin-top:140px}.linehead .n{flex:1;min-width:0;font-size:21px;font-weight:800;line-height:1.15}.stop{border-bottom:1.5px solid var(--rule);align-items:center;gap:12px;width:100%;min-height:56px;padding:6px 0;display:flex}.stop .no{color:var(--ink2);text-align:right;flex:none;width:22px;font-family:Plex Mono;font-size:13px;font-weight:500}.stop .nm{flex:1;min-width:0;font-size:18px;font-weight:700;line-height:1.2}.stop.sel{--under:var(--ink);background:var(--ink);color:var(--bg);border-bottom-color:var(--ink);width:calc(100% + 32px);margin:0 -16px;padding:6px 16px}.stop.sel .no{color:var(--bg)}.dests{flex-wrap:wrap;gap:8px;margin:10px 0 12px;display:flex}.dests .chip{text-overflow:ellipsis;max-width:100%;overflow:hidden}.dest .drillhead.pinned+.searchbar{margin-top:12px}.dest h2.online{color:var(--ink);margin-top:20px}.dest h3.towards{color:var(--ink);margin-top:22px;font-size:13px}.dest h4.section{margin:14px 0 2px;font-size:11px}.stop.here{color:var(--ink3)}.stop.here .you{letter-spacing:.1em;text-transform:uppercase;color:var(--ink2);white-space:nowrap;margin-left:auto;font-size:12px;font-weight:800}.direction .ctx{margin-top:4px}.ways .h1{margin-bottom:-4px}.ways .sub{margin-bottom:4px}.ways{padding:20px 16px max(16px, env(safe-area-inset-bottom));background:var(--bg);flex-direction:column;gap:10px;margin:auto -16px 0;display:flex;position:sticky;bottom:0}.way{text-align:left;justify-content:space-between;min-height:76px;padding:12px 20px}.way:not(.faster){background:var(--surface);color:var(--ink);border:1.5px solid var(--rule)}.way .lbl{flex-direction:column;min-width:0;line-height:1.15;display:flex}.way .lbl small{letter-spacing:.1em;opacity:.75;text-transform:uppercase;font-size:12px;font-weight:800}.way .min{white-space:nowrap;font-family:Archivo;font-size:26px;font-weight:800;font-stretch:75%}.vhead{align-items:center;gap:4px;min-height:56px;display:flex}.vchip{--under:var(--surface);background:var(--surface);border:1.5px solid var(--rule);border-radius:24px;align-items:center;gap:8px;min-width:0;min-height:48px;padding:0 14px 0 9px;font-size:16px;font-weight:800;display:inline-flex}.vchip span{white-space:normal;overflow-wrap:break-word;line-height:1.15}.vchips{grid-template-columns:1fr 1fr;align-items:stretch;gap:8px;margin:0 0 12px;display:grid}.vchips .vchip{border-radius:var(--r-md);justify-content:space-between;align-items:flex-start;gap:4px;min-height:52px;padding:10px 6px 10px 12px}.vchip .vt{flex-direction:column;justify-content:center;min-width:0;display:flex}.vchips .vchip>svg{color:var(--ink2);align-self:center}.vchip small{letter-spacing:.1em;text-transform:uppercase;color:var(--ink2);font-size:11px;font-weight:800;line-height:1.2}.ctx{align-items:center;gap:8px;min-height:56px;font-size:16px;font-weight:700;display:flex}.ctx .trip{flex:1;min-width:0;line-height:1.2}.ctx .arrow{color:var(--ink2)}.ctx .link{margin-right:-12px}.verdict{border-radius:var(--r-lg);padding:20px 20px 18px}.verdict.go{background:var(--hivis);color:var(--on-hivis)}.verdict.stay{background:var(--steel);color:var(--on-steel);border:var(--stay-rule)}.verdict.close{background:var(--surface);color:var(--ink);border:2px solid var(--ink)}.verdict .kicker{opacity:.85;font-size:15px;font-weight:600;line-height:1.25}.verdict .kicker b{font-weight:800}button.kicker{text-align:left;align-items:center;gap:2px;width:100%;min-height:48px;margin:-14px 0 -15px;display:flex}button.kicker svg{width:16px;height:16px}.verdict button.kicker:focus-visible{outline-color:currentColor}.verdict .big{letter-spacing:-.015em;text-transform:uppercase;margin:8px 0 14px;font-family:Archivo;font-size:clamp(84px,30vw,118px);font-weight:900;font-stretch:64%;line-height:.84}.verdict .big span{display:block}.verdict .say{text-wrap:balance;font-size:22px;font-weight:800;line-height:1.2}.verdict .arr{flex-wrap:wrap;gap:4px 16px;margin-top:8px;font-size:15px;font-weight:600;display:flex}.verdict .arr b{font-family:Archivo;font-size:17px;font-weight:800;font-stretch:80%}.verdict .arr .not{opacity:.75}.routes{padding-top:4px}.route{border-bottom:1.5px solid var(--rule);padding:14px 0 12px}.route:last-child{border-bottom:0}.route .hd{align-items:baseline;gap:4px 10px;margin-bottom:10px;display:flex}.route .hd .t{white-space:nowrap;font-family:Archivo;font-size:24px;font-weight:800;font-stretch:75%;line-height:1}.route .hd .n{flex:1;min-width:0;font-size:15px;font-weight:800;line-height:1.2}.route .best{white-space:nowrap}.best{letter-spacing:.1em;background:var(--ink);color:var(--bg);border-radius:3px;align-self:center;padding:3px 6px;font-size:11px;font-weight:800}.bar{height:16px;margin-bottom:10px;display:flex}.bar span{background-clip:padding-box;border-right:3px solid #0000;min-width:5px;height:100%;display:block}.bar span:last-child{border-right:0}.bar .walk{min-width:18px}.bar .wait{min-width:13px}.bar .walk:last-child,.bar .wait:last-child{min-width:10px}.bar .ride{background-color:var(--ink);border-radius:2px}.bar .walk{background-image:repeating-linear-gradient(90deg, var(--ink) 0 4px, transparent 4px 7px)}.bar .wait{box-shadow:inset 0 0 0 2px var(--ink);border-radius:2px}.legs{color:var(--ink2);flex-wrap:wrap;gap:6px 14px;font-size:14px;font-weight:600;display:flex}.legs>span{align-items:center;gap:6px;display:inline-flex}.legs b{color:var(--ink);font-weight:800}.legs .a{white-space:nowrap;margin-left:auto}.note{color:var(--ink2);align-items:flex-start;gap:8px;padding:10px 0 0;font-size:14px;line-height:1.35;display:flex}.note svg{margin-top:1px}@media (max-height:699px){.verdict{padding:16px 18px 14px}.verdict .big{margin:6px 0 10px;font-size:72px}.verdict .say{font-size:20px}.legs{gap:4px 10px;font-size:13px}.legs>span{gap:4px}}.err{color:var(--err);font-weight:700}.dock{background:var(--bg);padding:12px 16px max(8px, env(safe-area-inset-bottom));border-top:1.5px solid var(--rule);flex-direction:column;gap:4px;margin:auto -16px 0;display:flex;position:sticky;bottom:0}@media (max-height:699px){.dock{gap:0;padding-top:8px}.moved{min-height:56px}}.moved{text-align:left;justify-content:space-between;min-height:64px;padding:0 20px}.moved .lbl{flex-direction:column;min-width:0;line-height:1.15;display:flex}.moved .lbl small{letter-spacing:.1em;opacity:.75;font-size:12px;font-weight:800}.moved .lbl span{overflow-wrap:anywhere}.dockrow{justify-content:center;align-items:center;display:flex}.dockrow.off{justify-content:space-between}.dock .link{color:var(--ink2);font-size:15px}.arrived{margin-top:8px}:root{--m-ease:cubic-bezier(.2, .8, .2, 1)}#app{overflow-x:clip}@keyframes m-in-fwd{0%{opacity:0;transform:translate(28px)}}@keyframes m-in-back{0%{opacity:0;transform:translate(-28px)}}@keyframes m-rise{0%{opacity:0;transform:translateY(.24em)}}@keyframes m-up{0%{opacity:0;transform:translateY(8px)}}@keyframes m-slab-fwd{0%{transform:translate(12px)}}@keyframes m-slab-back{0%{transform:translate(-12px)}}@keyframes m-grow{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes m-fade{0%{opacity:0}}#app[data-nav=fwd]>.view>:not(.top):not(.vhead):not(.vchips):not(.pinned):not(.dock):not(.verdict){animation:m-in-fwd .24s var(--m-ease) backwards}#app[data-nav=back]>.view>:not(.top):not(.vhead):not(.vchips):not(.pinned):not(.dock):not(.verdict){animation:m-in-back .24s var(--m-ease) backwards}#app[data-nav=fwd]>.view>.verdict{animation:m-slab-fwd .24s var(--m-ease) backwards}#app[data-nav=back]>.view>.verdict{animation:m-slab-back .24s var(--m-ease) backwards}#app[data-nav=fwd] .verdict .big span,#app[data-nav=swap] .verdict .big span{animation:m-rise .28s var(--m-ease) 60ms backwards}#app[data-nav=fwd] .verdict .big span+span,#app[data-nav=swap] .verdict .big span+span{animation:m-rise .28s var(--m-ease) .13s backwards}#app[data-nav=fwd] .verdict .say,#app[data-nav=fwd] .verdict .arr,#app[data-nav=swap] .verdict .say,#app[data-nav=swap] .verdict .arr{animation:m-up .22s var(--m-ease) .2s backwards}#app[data-nav=fwd] .bar span,#app[data-nav=swap] .bar span{animation:m-grow calc(var(--w) * .32s) linear calc(.24s + var(--s) * .32s) backwards}.tile,.last,.chip,.btn,.vchip,.searchentry,.seg button,.back{transition:transform .12s var(--m-ease)}.tile:active,.last:active,.chip:active,.btn:active,.vchip:active,.searchentry:active,.seg button:active,.back:active{transition-duration:40ms;transform:scale(.97)}button.res,button.stop,button.kicker,.link{transition:opacity .12s var(--m-ease)}button.res:active,button.stop:active,button.kicker:active,.link:active{opacity:.55;transition-duration:40ms}@media (prefers-reduced-motion:reduce){#app[data-nav=fwd]>.view>:not(.top):not(.vhead):not(.vchips):not(.pinned):not(.dock):not(.verdict),#app[data-nav=back]>.view>:not(.top):not(.vhead):not(.vchips):not(.pinned):not(.dock):not(.verdict),#app[data-nav=fwd]>.view>.verdict,#app[data-nav=back]>.view>.verdict,#app[data-nav=swap] .verdict{animation:.12s ease-out backwards m-fade}#app[data-nav=fwd] .verdict .big span,#app[data-nav=swap] .verdict .big span,#app[data-nav=fwd] .verdict .big span+span,#app[data-nav=swap] .verdict .big span+span,#app[data-nav=fwd] .verdict .say,#app[data-nav=fwd] .verdict .arr,#app[data-nav=swap] .verdict .say,#app[data-nav=swap] .verdict .arr,#app[data-nav=fwd] .bar span,#app[data-nav=swap] .bar span{animation:none}.tile:active,.last:active,.chip:active,.btn:active,.vchip:active,.searchentry:active,.seg button:active,.back:active{opacity:.7;transform:none}}
