:root{--bg:#f3f3f5;--surface:#fff;--surface-2:#f1f1f4;--line:#e6e6eb;--line-strong:#d7d8de;--ink:#121318;--text:#121318;--text-2:#5f6270;--text-3:#9b9dab;--brand:#0e1d47;--action:#121318;--action-press:#000;--action-soft:#ececf0;--go:#3ddc84;--good:#248a3d;--good-soft:#e2f5e7;--warn:#c45c00;--warn-soft:#fff1dc;--bad:#d70015;--bad-soft:#ffe9e6;--bad-ink:#8f1f1b;--tint-green:#a6e6bb;--tint-orange:#ffc56b;--tint-red:#ffa190;--tint-blue:#aac8ff;--tint-purple:#c3b6ff;--tint-pink:#f6b6ef;--on-tint-2:#121318a8;--shadow-1:0 1px 2px #1213180a;--shadow-2:0 16px 40px #12131829;--font:"Urbanist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--gutter-l:max(16px, env(safe-area-inset-left,0px));--gutter-r:max(16px, env(safe-area-inset-right,0px));--tabbar-h:72px;--ease:cubic-bezier(.2, .9, .3, 1);--spring:cubic-bezier(.3, 1.3, .5, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-variant-numeric:tabular-nums;min-height:100dvh;font-size:16px;font-weight:500;line-height:1.45}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:10px}[hidden]{display:none!important}h1,h2{text-wrap:balance;margin:0}p{margin:0}img,svg{flex:none;max-width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--text-2)}.small{font-size:.875rem}.label{color:var(--text-2);font-size:.875rem;font-weight:600}.fine{color:var(--text-3);padding:0 4px;font-size:.8125rem;line-height:1.5}.about{color:var(--text-3);gap:8px;padding:4px 4px 8px;font-size:.8125rem;line-height:1.5;display:grid}.tone-text{font-weight:700}.tone-text.tone-good{color:var(--good)}.tone-text.tone-warn{color:var(--warn)}.tone-text.tone-bad{color:var(--bad)}.wordmark{color:var(--text);align-items:center;gap:9px;display:inline-flex}.wordmark.light{color:#fff;gap:6px}.wordmark-text{letter-spacing:-.04em;font-size:1.5rem;font-weight:800}.wordmark-text span{opacity:.6;font-weight:500}.splash{place-items:center;min-height:100dvh;display:grid}.app{max-width:560px;min-height:100dvh;margin:0 auto}.main{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 36px)}.screen{grid-template-columns:minmax(0,1fr);animation:.25s backwards fade-in;display:grid}@keyframes fade-in{0%{opacity:0}}.greet{padding:calc(env(safe-area-inset-top,0px) + 14px) var(--gutter-r) 4px var(--gutter-l);grid-template-columns:50px minmax(0,1fr) 50px;align-items:center;gap:10px;display:grid}.avatar-btn{background:var(--tint-purple);width:50px;height:50px;color:var(--ink);border-radius:50%;place-items:center;font-size:1.25rem;font-weight:800;display:grid}.greet-text{text-align:center;justify-items:center;min-width:0;display:grid}.greet-text b{letter-spacing:-.01em;font-size:1.1875rem;font-weight:700}.greet-text span{color:var(--text-2);font-size:.9375rem}.round-btn{border-radius:50%;place-items:center;width:50px;height:50px;transition:transform .15s;display:grid}.round-btn:active{transform:scale(.94)}.band{padding:calc(env(safe-area-inset-top,0px) + 22px) var(--gutter-r) 6px var(--gutter-l);color:var(--text);gap:6px;display:grid}.band-title h1{letter-spacing:-.035em;font-size:2.375rem;font-weight:800;line-height:1.05}.band-title p{color:var(--text-2);max-width:40ch}.band-top{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.content{padding:16px var(--gutter-r) 0 var(--gutter-l);grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.content.overlap{margin-top:0;padding-top:16px}.section-title{letter-spacing:-.025em;align-items:baseline;gap:8px;margin-bottom:12px;font-size:1.5rem;font-weight:800;display:flex}.section-title .count{color:var(--text-2);letter-spacing:0;font-size:.9375rem;font-weight:600}.group{display:grid}.card{background:var(--surface);box-shadow:var(--shadow-1);border-radius:26px;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0;padding:20px;display:grid}.hero{gap:16px}.card.hero{box-shadow:none;border-radius:30px;padding:22px}button.hero{text-align:left;width:100%;transition:transform .15s}button.hero:active{transform:scale(.99)}.tone-card{color:var(--ink)}.tone-card.tone-good{background:var(--tint-green)}.tone-card.tone-warn{background:var(--tint-orange)}.tone-card.tone-bad{background:var(--tint-red)}.tone-card.tone-plain{background:var(--tint-purple)}.hero-top{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;display:grid}.hero-top .clock-art{margin:-10px -10px -14px 0}.hero-dest{align-content:start;gap:4px;display:grid}.hero-to{letter-spacing:-.035em;font-size:2rem;font-weight:800;line-height:1.02}.hero-sub{color:var(--on-tint-2);font-weight:600}.card:not(.tone-card) .hero-sub{color:var(--text-2)}.hero-leave{align-content:start;justify-items:start;gap:4px;display:grid}.hero-label{color:var(--on-tint-2);font-size:1rem;font-weight:700}.hero-count{letter-spacing:-.045em;align-items:baseline;gap:10px;font-size:3.75rem;font-weight:800;line-height:.95;display:flex}.hero-count.small{font-size:2.5rem}.hero-day{color:var(--on-tint-2);font-size:1.0625rem;font-weight:700}.hero-times{color:var(--on-tint-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:1rem;font-weight:600;display:flex}.hero-times>span{align-items:center;gap:8px;display:inline-flex}.hero-times>span:first-child{color:var(--ink);font-weight:700}.hero-actions{gap:2px;display:grid}.hero-more{align-items:center;gap:4px;font-weight:800;display:inline-flex}.hero-loading{gap:10px;display:grid}.hero-loading span{background:#ffffff73;border-radius:8px;height:18px;animation:1.2s ease-in-out infinite alternate breathe}.hero-loading span:first-child{width:60%;height:50px}@keyframes breathe{to{opacity:.45}}.clock-art{filter:drop-shadow(0 6px 10px #1213181f);display:block}.clock-art .clock-wobble{transform-box:fill-box;transform-origin:50% 60%}.clock-art.ringing .clock-wobble{animation:2.2s ease-in-out infinite ring}@keyframes ring{0%,40%,to{transform:rotate(0)}4%{transform:rotate(-7deg)}8%{transform:rotate(7deg)}12%{transform:rotate(-6deg)}16%{transform:rotate(6deg)}20%{transform:rotate(-4deg)}24%{transform:rotate(3deg)}28%{transform:rotate(0)}}.status{white-space:nowrap;justify-self:start;align-items:center;gap:6px;font-size:1.0625rem;display:inline-flex}.status b{font-weight:800}.status span{color:var(--text-2);margin-left:2px;font-weight:600}.status-good{color:var(--good)}.status-warn{color:var(--warn)}.status-bad{color:var(--bad)}.tone-card .status{color:var(--ink)}.tone-card .status span{color:var(--on-tint-2)}.chance-col{justify-items:end;line-height:1.15;display:grid}.chance-col b{font-size:1.1875rem;font-weight:800}.chance-col small{color:var(--text-2);font-size:.8125rem;font-weight:600}.chance-col.tone-good b{color:var(--good)}.chance-col.tone-warn b{color:var(--warn)}.chance-col.tone-bad b{color:var(--bad)}.journey{gap:6px;min-width:0;height:44px;display:flex;overflow:hidden}.jseg{white-space:nowrap;border-radius:999px;flex-basis:0;justify-content:center;align-items:center;gap:3px;min-width:64px;padding:0 10px;font-size:.9375rem;display:inline-flex;overflow:hidden}.jseg small{opacity:.75;font-size:.75rem;font-weight:600}.jseg svg{flex:none;margin-right:2px}.jseg b{font-weight:800}.journey.compact{gap:3px;height:40px}.journey.compact .jseg{gap:2px;padding:0 6px;font-size:.875rem}.journey.compact .jseg:not(.jseg-ride){flex:0 0 28px;min-width:28px;padding:0}.journey.compact .jseg:not(.jseg-ride) b{display:none}.journey.compact .jseg:not(.jseg-ride) svg{margin:0}.journey.compact .jseg-ride{min-width:34px;padding:0 4px;container-type:inline-size}@container (max-width:44px){.jseg-ride svg{display:none}}.jseg-ride{background:var(--m,var(--ink));color:#fff}.jseg-ride.m-taxi{color:var(--ink)}.jseg-walk{background:var(--surface-2);color:var(--ink)}.jseg-wait{color:var(--ink);background:repeating-linear-gradient(-45deg, var(--surface-2) 0 6px, #e3e3e8 6px 12px)}.tone-card .jseg-walk{background:#fff9}.tone-card .jseg-wait{background:repeating-linear-gradient(-45deg,#fff9 0 6px,#ffffff4d 6px 12px)}.alert-line{color:var(--bad);align-items:flex-start;gap:8px;font-size:.9375rem;font-weight:700;display:flex}.tone-card .alert-line{color:var(--ink)}.alert-line.neutral{color:var(--on-tint-2)}.live-chip{background:var(--tint-green);width:100%;color:var(--ink);text-align:left;border-radius:22px;align-items:center;gap:10px;padding:16px 18px;font-weight:600;display:flex}.live-chip span:nth-child(2){flex:1}.ask{gap:12px}.ask b{font-size:1.125rem;font-weight:700}.ask-row{flex-wrap:wrap;gap:8px;display:flex}.ask-row .btn{flex:auto}.install-row{color:var(--text-2);justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.9375rem;font-weight:700;display:flex}.week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.week-day{border:1.5px solid var(--line-strong);color:var(--text-2);border-radius:999px;justify-items:center;gap:1px;padding:9px 0 12px;transition:background .2s,color .2s,transform .15s;display:grid}.week-day:active{transform:scale(.95)}.week-day b{color:var(--text);font-size:1.125rem;font-weight:700}.week-wd{font-size:.8125rem;font-weight:600}.week-dot{border-radius:50%;width:6px;height:6px;margin-bottom:4px}.week-dot.has{background:var(--ink)}.week-day.on{background:var(--ink);border-color:var(--ink);color:#ffffffb8}.week-day.on b{color:#fff}.week-day.on .week-dot.has{background:#fff}.bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(150px,auto);gap:12px;display:grid}.bento>:first-child{grid-row:span 2}.bento.no-wx>:first-child{grid-row:span 1}.tile{text-align:left;color:var(--ink);border-radius:26px;align-content:start;gap:10px;min-width:0;padding:16px;transition:transform .15s;display:grid}button.tile:active{transform:scale(.98)}.tint-blue{background:var(--tint-blue)}.tint-pink{background:var(--tint-pink)}.tint-purple{background:var(--tint-purple)}.chip{border-radius:999px;justify-self:start;padding:5px 12px;font-size:.8125rem;font-weight:700}.trip-tile{grid-template-rows:auto auto auto 1fr}.trip-title{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:1.625rem;font-weight:800;line-height:1.05}.trip-lines{color:var(--on-tint-2);gap:3px;font-size:.9375rem;font-weight:600;display:grid}.trip-foot{justify-content:space-between;align-self:end;align-items:center;gap:8px;font-weight:800;display:flex}.go-dot{border-radius:50%;flex:none;place-items:center;display:grid}.empty-tile{border:2px dashed var(--line-strong);color:var(--text);background:0 0;align-content:center;justify-items:start}.empty-tile b{letter-spacing:-.02em;font-size:1.1875rem;font-weight:800;line-height:1.15}.empty-tile>span:last-child{color:var(--text-2);font-weight:600}.places-tile{align-content:space-between}.tile-label{font-size:.9375rem;font-weight:800}.place-dots{gap:6px;display:flex}.place-dot{flex:1 1 0;justify-items:center;gap:4px;min-width:0;display:grid}.place-dot span{border-radius:50%;place-items:center;width:48px;height:48px;transition:transform .15s;display:grid}.place-dot:active span{transform:scale(.92)}.place-dot small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.75rem;font-weight:700;overflow:hidden}.more-trips{margin-top:12px}.sky{color:#fff}.sky-clear-day{background:linear-gradient(#2f7fd8 0%,#5aa7ee 100%)}.sky-clear-night{background:linear-gradient(#0a1430 0%,#22386a 100%)}.sky-cloudy-day{background:linear-gradient(#5d7792 0%,#8ea2b7 100%)}.sky-cloudy-night{background:linear-gradient(#1b2533 0%,#3a4657 100%)}.sky-rain-day{background:linear-gradient(#44566b 0%,#73849a 100%)}.sky-rain-night{background:linear-gradient(#151d29 0%,#313e4f 100%)}.sky-thunder-day,.sky-thunder-night{background:linear-gradient(#23283a 0%,#474d62 100%)}.sky-snow-day{background:linear-gradient(#8aa2ba 0%,#c0cedc 100%)}.sky-snow-night{background:linear-gradient(#2b3646 0%,#556377 100%)}.sky-fog-day{background:linear-gradient(#8a949e 0%,#b3bbc3 100%)}.sky-fog-night{background:linear-gradient(#2a3038 0%,#4b535d 100%)}.wx{border-radius:24px;grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 16px 16px;display:grid;overflow:hidden}.wx-loading{opacity:.6;min-height:150px}.wx.wx-loading{height:270px}.wx-head{text-align:center;text-shadow:0 1px 2px #0000001f;justify-items:center;display:grid}.wx-place{font-size:1.125rem;font-weight:600}.wx-temp{letter-spacing:-.02em;margin:2px 0 2px .15em;font-size:4.75rem;font-weight:200;line-height:1}.wx-cond{font-size:1.125rem;font-weight:600}.wx-hilo{font-size:1.0625rem;font-weight:600}.wx-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff29;border-radius:16px;padding:12px 0 10px}.wx-impact{border-bottom:1px solid #ffffff38;margin-bottom:8px;padding:0 14px 10px;font-size:.875rem}.wx-hours{scrollbar-width:none;padding:0 6px;display:flex;overflow-x:auto}.wx-hours::-webkit-scrollbar{display:none}.wx-hour{flex:1 0 auto;justify-items:center;gap:6px;min-width:52px;font-weight:700;display:grid}.wx-h{font-size:.875rem}.wx-hicon{justify-items:center;min-height:32px;display:grid}.wx-hicon small{color:#a8deff;margin-top:-2px;font-size:.6875rem;font-weight:800}.wx-ht{font-size:1.0625rem}.wx-icon{filter:drop-shadow(0 1px 1px #0000001f)}.wx-tile{text-align:left;border-radius:26px;align-content:start;min-width:0;padding:14px 16px 16px;transition:transform .15s;display:grid}.wx-tile:active{transform:scale(.98)}.wx-tile-top{justify-content:space-between;align-items:flex-start;font-size:.9375rem;font-weight:700;display:flex}.wx-tile-temp{letter-spacing:-.02em;font-size:2.875rem;font-weight:300;line-height:1.05}.wx-tile-cond{font-size:.875rem;font-weight:700}.wx-tile-hilo{opacity:.85;font-size:.8125rem;font-weight:600}.wx-mini{border-radius:22px;align-items:center;gap:12px;padding:14px 18px;display:flex}.wx-mini-temp{font-size:1.875rem;font-weight:300}.wx-mini-text{min-width:0;display:grid}.wx-mini-text b{font-weight:700}.wx-mini-text small{opacity:.88;font-size:.8125rem}.tabbar{z-index:30;left:var(--gutter-l);right:var(--gutter-r);bottom:calc(env(safe-area-inset-bottom,0px) + 12px);max-width:440px;height:var(--tabbar-h);touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(#fbfaff 0%,#efecfb 100%);border-radius:999px;grid-template-columns:repeat(4,1fr);margin:0 auto;padding:7px;display:grid;position:fixed;box-shadow:0 22px 34px -12px #4a3a9652,0 6px 12px -4px #4a3a961f,inset 0 7px 12px #fffffff2,inset 0 -8px 14px #7866cd33}.tabbar button{z-index:1;color:#6c6880;border-radius:999px;align-content:center;place-items:center;gap:2px;transition:color .25s;display:grid;position:relative}.tabbar button.on{color:#1d1640}.tab-label{letter-spacing:.01em;font-size:.6875rem;font-weight:800}.tab-icon{transition:transform .35s var(--spring);display:grid;position:relative}.tabbar button:active .tab-icon{transform:scale(.88)}.tabbar.pressed button.on .tab-icon{transform:translateY(1px)scale(.94)}.tab-ind{z-index:0;width:calc(25% - 3.5px);transition:transform .5s var(--spring);will-change:transform;position:absolute;top:7px;bottom:7px;left:7px}.tab-ind.dragging{transition:none}.tab-lens{transition:transform .3s var(--spring);place-items:stretch stretch;display:grid;position:absolute;inset:0}.tabbar.pressed .tab-lens{transform:scale(.95,.9)}.tab-blob{animation:settle .5s var(--spring);background:linear-gradient(160deg,#d6ccff 0%,#ae9bff 100%);border-radius:999px;box-shadow:0 10px 16px -6px #6e56e68c,inset 4px 6px 10px #ffffffb3,inset -4px -6px 10px #543cbe52}@keyframes settle{0%{transform:scale(1.12,.86)}55%{transform:scale(.96,1.05)}to{transform:none}}.tab-dot{background:radial-gradient(circle at 35% 30%,#ff9a92,#ff3b30 70%);border-radius:50%;width:11px;height:11px;position:absolute;top:-2px;right:-5px;box-shadow:0 2px 4px #c81e1459,0 0 0 2px #f7f5ff}.tabbar button.on .tab-dot{box-shadow:0 2px 4px #c81e1459,0 0 0 2px #c3b4ff}.round-btn,.round-actions span,.sheet-head .icon-btn,.opt-tile,.swap{-webkit-backdrop-filter:blur(16px)saturate(180%);backdrop-filter:blur(16px)saturate(180%);color:var(--ink);background:linear-gradient(160deg,#fffffff2,#ecedf3bf);border:1px solid #fffffff2;box-shadow:inset 0 1px 1px #fff,inset 0 -2px 4px #1213180d,0 6px 16px #12131814}.swap{width:44px;height:44px}.place-dot span,.chip,.go-dot{-webkit-backdrop-filter:blur(14px)saturate(180%);backdrop-filter:blur(14px)saturate(180%);color:var(--ink);background:#ffffff6b;border:1px solid #ffffffb3;box-shadow:inset 0 1px 1px #ffffffd9,0 4px 12px #12131814}.go-dot{width:46px;height:46px}.empty-tile .go-dot{background:var(--surface);border-color:var(--line)}.icon-btn.on-band{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff24;border:1px solid #ffffff38;box-shadow:inset 0 1px #ffffff40}.jseg-ride{box-shadow:inset 0 1px #ffffff38}.mini-live{z-index:29;left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 20px);background:var(--tint-green);color:var(--ink);box-shadow:var(--shadow-2);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:.9375rem;font-weight:700;display:flex;position:fixed;transform:translate(-50%)}.pulse{background:var(--good);border-radius:50%;flex:none;width:9px;height:9px;animation:2s infinite pulse;box-shadow:0 0 #248a3d80}@keyframes pulse{70%{box-shadow:0 0 0 9px #248a3d00}to{box-shadow:0 0 #248a3d00}}.btn{background:var(--surface);min-height:50px;color:var(--ink);border:1.5px solid var(--line-strong);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:1rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.btn:active{background:var(--surface-2);transform:scale(.98)}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--ink);border-color:var(--ink);color:#fff}.btn.primary:active{background:#000}.btn.light{color:var(--ink);background:#fff;border-color:#fff}.btn.quiet{color:var(--ink);background:0 0;border-color:#0000}.btn.ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn.danger{background:var(--bad-soft);color:var(--bad);border-color:#0000}.btn.big{width:100%;min-height:58px;font-size:1.0625rem}.icon-btn{width:44px;height:44px;color:var(--text-2);border-radius:50%;flex:none;place-items:center;display:grid}.icon-btn:active{background:var(--surface-2)}.icon-btn.on-band{color:#fff;background:#ffffff24}.link{color:var(--ink);text-underline-offset:3px;font-size:.9375rem;font-weight:700;text-decoration:underline}.link-row,.try-toggle{width:100%;color:var(--ink);text-align:left;align-items:center;gap:10px;padding:4px 2px;font-weight:700;display:flex}.link-row .chev,.try-toggle .chev{transition:transform .25s var(--ease);margin-left:auto}.chev.open{transform:rotate(180deg)}.action-row{flex-wrap:wrap;gap:8px;display:flex}.action-row .btn{flex:auto}.round-actions{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.round-actions>button,.round-actions>a{color:var(--ink);text-align:center;justify-items:center;gap:6px;font-size:.8125rem;font-weight:700;text-decoration:none;display:grid}.round-actions span{border-radius:50%;place-items:center;width:62px;height:62px;transition:transform .15s;display:grid}.round-actions>:active span{transform:scale(.94)}.form{position:relative}.field{gap:6px;min-width:0;display:grid;position:relative}.field-label{color:var(--text-2);font-size:.875rem;font-weight:700}.field-err{color:var(--bad);font-size:.9375rem;font-weight:600}.search,.place-chosen,.text-input,.time-input,.date-input{background:var(--surface);width:100%;min-height:56px;color:var(--text);border:1.5px solid var(--line-strong);border-radius:18px;align-items:center;gap:10px;padding:0 16px;transition:border-color .15s,box-shadow .15s;display:flex}.search:focus-within,.text-input:focus,.time-input:focus,.date-input:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px #12131814}.search>svg,.place-chosen>svg{color:var(--ink)}.search input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding:14px 0;font-size:1rem}.search input::placeholder,.text-input::placeholder{color:var(--text-3)}.text-input,.time-input,.date-input{font-size:1rem}.text-input.short{max-width:190px}.time-input{width:auto;min-width:124px;font-size:1.375rem;font-weight:800}.date-input{width:auto;min-height:44px;color:var(--text-2);justify-self:start;font-size:.9375rem}.place-chosen{text-align:left}.place-chosen:active{background:var(--surface-2)}.place-text{flex:1;min-width:0;display:grid}.place-text b{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.place-text small{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;overflow:hidden}.place-change{color:var(--ink);text-underline-offset:3px;font-size:.875rem;font-weight:700;text-decoration:underline}.suggest{background:var(--surface);border:1px solid var(--line);max-height:340px;box-shadow:var(--shadow-2);border-radius:18px;gap:2px;margin:0;padding:6px;list-style:none;display:grid;overflow-y:auto}.suggest button{text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px;display:flex}.suggest button:hover,.suggest button:focus-visible{background:var(--surface-2)}.suggest svg{color:var(--text-2)}.suggest-empty{color:var(--text-2);padding:10px;font-size:.9375rem}.spinner{opacity:.8;border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.swap{z-index:2;transition:transform .35s var(--spring);border-radius:50%;place-items:center;display:grid;position:absolute;top:88px;right:34px}.swap:active{transform:rotate(180deg)}.when-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.when-row .seg{flex:220px}.seg{background:var(--surface-2);scrollbar-width:none;border-radius:999px;gap:2px;min-width:0;padding:4px;display:flex;position:relative;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg button{z-index:1;color:var(--text-2);white-space:nowrap;border-radius:999px;flex:1 0 auto;padding:10px 12px;font-size:.9375rem;font-weight:700;transition:color .2s;position:relative}.seg button.on{color:#fff}.seg-thumb{z-index:0;background:var(--ink);border-radius:999px;position:absolute;top:4px;bottom:4px;left:0}.seg.ready .seg-thumb{transition:transform .35s var(--spring), width .3s var(--ease)}.days{flex-wrap:wrap;gap:6px;display:flex}.days button{border:1.5px solid var(--line-strong);width:42px;height:42px;color:var(--text-2);background:var(--surface);border-radius:50%;font-size:.875rem;font-weight:800}.days button.on{background:var(--ink);border-color:var(--ink);color:#fff}.toggle{background:var(--line-strong);border-radius:999px;flex:none;width:52px;height:32px;transition:background .25s;position:relative}.toggle span{width:28px;height:28px;transition:transform .35s var(--spring), width .2s var(--ease);background:#fff;border-radius:999px;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #0003}.toggle:active span{width:33px}.toggle.on{background:#34c759}.toggle.on span{transform:translate(20px)}.toggle.on:active span{transform:translate(15px)}.notice{border-radius:20px;align-items:flex-start;gap:10px;padding:14px 16px;font-size:.9375rem;font-weight:600;display:flex}.notice svg{margin-top:1px}.notice ul{gap:4px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.notice-bad{background:var(--bad-soft);color:var(--bad-ink)}.notice-bad svg{color:var(--bad)}.notice-warn{background:var(--warn-soft);color:#7a3c00}.note{background:var(--surface-2);border-radius:20px;align-items:flex-start;gap:10px;padding:14px 16px;font-size:.9375rem;font-weight:600;display:flex}.note>svg{color:var(--ink);margin-top:1px}.results-anchor{scroll-margin-top:12px;display:grid}.results{gap:18px;padding-top:18px;display:grid}.opts{gap:10px;display:grid}.opt{text-align:left;background:var(--surface);border-radius:24px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:14px 18px 14px 14px;transition:transform .15s;display:grid}.opt:active{transform:scale(.99)}.opt-tile{border-radius:18px;place-items:center;width:54px;height:54px;display:grid}.opt-body{gap:2px;min-width:0;display:grid}.opt-times{color:var(--text-2);align-items:baseline;gap:2px;display:flex}.opt-times b{color:var(--text);letter-spacing:-.02em;font-size:1.375rem;font-weight:800}.opt-times span{font-size:1.0625rem;font-weight:600}.opt-sub{color:var(--text-2);font-size:.9375rem;font-weight:600}.opt-flag{color:var(--text-3);font-size:.8125rem;font-weight:600}.opt-flag.bad{color:var(--bad);font-weight:700}.opt-alert{color:var(--bad);font-size:.875rem;font-weight:600}.try{gap:14px;padding:16px 18px}.slider{gap:10px;display:grid}.slider-head{align-items:baseline;gap:10px;display:flex}.slider-head label{color:var(--text-2);font-weight:700}.slider-head b{margin-right:auto;font-size:1.5rem;font-weight:800}.slider-scale{color:var(--text-3);justify-content:space-between;font-size:.8125rem;font-weight:600;display:flex}.slider input[type=range]{appearance:none;touch-action:pan-y;background:0 0;width:100%;height:30px;margin:0}.slider input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--ink) var(--fill,50%), var(--line-strong) var(--fill,50%));border-radius:99px;height:6px}.slider input[type=range]::-moz-range-track{background:var(--line-strong);border-radius:99px;height:6px}.slider input[type=range]::-moz-range-progress{background:var(--ink);border-radius:99px;height:6px}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border-radius:50%;width:28px;height:28px;margin-top:-11px;box-shadow:0 1px 4px #00000040,0 0 0 .5px #0000000f}.slider input[type=range]::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:28px;height:28px;box-shadow:0 1px 4px #00000040}.source{color:var(--text-3);justify-self:start;align-items:center;gap:6px;font-size:.8125rem;font-weight:700;display:inline-flex}.tone-card .source{color:var(--on-tint-2)}.live-dot{background:var(--good);border-radius:50%;width:7px;height:7px}.sheet-wrap{z-index:50;background:rgba(8, 10, 16, calc(.42 * var(--scrim,1)));justify-content:center;align-items:flex-end;animation:.2s fade-in;display:flex;position:fixed;inset:0}.sheet{overscroll-behavior:contain;background:var(--bg);width:100%;max-width:560px;max-height:92dvh;padding:8px var(--gutter-r) calc(28px + env(safe-area-inset-bottom,0px)) var(--gutter-l);animation:sheet-up .32s var(--ease);border-radius:30px 30px 0 0;outline:none;grid-template-columns:minmax(0,1fr);gap:18px;display:grid;overflow-y:auto;box-shadow:0 -10px 40px #0003}.sheet.tall{align-content:start;min-height:60dvh}@keyframes sheet-up{0%{opacity:.5;transform:translateY(48px)}}.sheet{transition:transform .32s var(--ease)}.sheet.dragging{transition:none}.sheet-grab{cursor:grab;touch-action:none;gap:12px;padding-top:2px;display:grid}.sheet-grip{background:var(--line-strong);border-radius:9px;justify-self:center;width:40px;height:5px}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-head h2{letter-spacing:-.02em;font-size:1.5rem;font-weight:800}.sheet-summary{border-radius:28px;justify-items:start;gap:12px;padding:20px;display:grid}.sheet-summary .hero-top,.sheet-summary .journey,.sheet-summary .hero-times{width:100%}.actions{gap:16px;display:grid}.why{border-top:1px solid var(--line);padding-top:14px}.why summary{cursor:pointer;color:var(--ink);font-weight:700}.why ul{color:var(--text-2);gap:6px;margin:10px 0 0;padding-left:18px;font-size:.9375rem;display:grid}.inset{background:var(--surface);border-radius:20px;gap:12px;padding:16px;display:grid}.itinerary{margin:0;padding:0;list-style:none;display:grid}.sheet>.itinerary{background:var(--surface);border-radius:26px;padding:20px 16px 4px}.itinerary li{grid-template-columns:50px 18px minmax(0,1fr);gap:12px;display:grid}.itinerary time{padding-top:1px;font-weight:800}.it-line{justify-content:center;display:flex;position:relative}.it-line:before{content:"";background:var(--ink);border-radius:2px;width:3px;position:absolute;top:0;bottom:0}.itinerary li:first-child .it-line:before{top:10px}.itinerary li:last-child .it-line:before{height:10px;bottom:auto}.it-dot{background:var(--surface);border:3px solid var(--ink);border-radius:50%;width:14px;height:14px;margin-top:4px;position:relative}.itinerary li.leg .it-dot{display:none}.it-text{min-width:0;padding-bottom:16px;display:grid}.it-text b{font-weight:800}.it-text small{color:var(--text-2);font-size:.875rem;font-weight:600}.it-leg{color:var(--text-2);align-items:center;gap:8px;font-size:.9375rem;font-weight:600;display:inline-flex}.itinerary li.past{opacity:.45}.toasts{z-index:70;left:0;right:0;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 22px);padding:0 var(--gutter-r) 0 var(--gutter-l);pointer-events:none;justify-items:center;display:grid;position:fixed}.toast{pointer-events:auto;text-align:left;-webkit-backdrop-filter:blur(24px)saturate(180%);backdrop-filter:blur(24px)saturate(180%);max-width:380px;min-height:52px;color:var(--text);animation:toast-in .45s var(--spring);background:#fcfcfde0;border-radius:26px;align-items:center;gap:10px;padding:12px 18px 12px 14px;font-size:.9375rem;font-weight:600;line-height:1.3;display:flex;box-shadow:0 10px 34px #12131829,0 0 0 .5px #12131814}.toast svg{color:#007aff}.toast-good svg{color:#34c759}.toast-bad svg{color:#ff3b30}@keyframes toast-in{0%{opacity:0;transform:translateY(24px)scale(.92)}}.list,.list-card{background:var(--surface);box-shadow:var(--shadow-1);border-radius:26px;gap:0;padding:0 16px;display:grid}.list>.row,.list-card>.list-row{border-bottom:1px solid var(--line)}.list>.row:last-child,.list-card>.list-row:last-child{border-bottom:0}.list>.row,.list-row{text-align:left;width:100%;min-height:64px;color:var(--text);align-items:center;gap:14px;padding:12px 0;display:flex}.list>.row>svg,.list-row>svg,.row-main>svg{color:var(--ink)}.list-row>svg:last-child,.list>.row>svg:last-child{color:var(--text-3)}.row-main{text-align:left;flex:1;align-items:center;gap:14px;min-width:0;display:flex}.row-text{flex:1;min-width:0;display:grid}.row-text b{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.row-text small{color:var(--text-2);font-size:.875rem;font-weight:600}.row-time{min-width:56px;display:grid}.row-time b{font-size:1.1875rem;font-weight:800}.row-time small{color:var(--text-2);font-size:.75rem;font-weight:600}.list-row.locked{color:var(--text-3)}.list-row.locked b{color:var(--text-2)}.list-row.locked>svg{color:#c3c5ce}.list-row.static{cursor:default}.empty-state{text-align:center;background:var(--surface);color:var(--text-2);border-radius:26px;justify-items:center;gap:8px;padding:32px 20px;display:grid}.empty-state svg{color:var(--text-3)}.empty-state b{color:var(--text);font-size:1.125rem;font-weight:800}.empty-state p{max-width:34ch}.hist-dot{border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.hist-dot.good{background:var(--good-soft);color:var(--good)}.hist-dot.bad{background:var(--bad-soft);color:var(--bad)}.install{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.install>svg{color:var(--ink)}.install div{display:grid}.install small{color:var(--text-2);font-size:.875rem}@media (max-width:400px){.install{grid-template-columns:auto minmax(0,1fr)}.install .btn{grid-column:1/-1}}.live{z-index:60;background:var(--bg);max-width:560px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));animation:sheet-up .3s var(--ease);margin:0 auto;position:fixed;inset:0;overflow-y:auto}.band.live-band{background:var(--ink);color:#fff;border-radius:0 0 32px 32px;gap:4px;padding-bottom:28px}.live-top{text-align:center;grid-template-columns:44px 1fr 44px;align-items:center;margin-bottom:8px;font-weight:700;display:grid}.live-dest{color:#ffffffb8;font-weight:600}.live-big{letter-spacing:-.04em;font-size:2.75rem;font-weight:800;line-height:1.05}.live-sub{color:#fffc;font-weight:600}.progress{background:#ffffff2e;border-radius:99px;height:8px;margin-top:14px;overflow:hidden}.progress span{background:var(--tint-green);height:100%;transition:width 1s var(--ease);border-radius:99px;display:block}.live-status{justify-items:start;gap:12px}.live-status .journey{width:100%}.live-actions{gap:10px;display:grid}.live-result{text-align:center;min-height:100dvh;padding:24px var(--gutter-r) 24px var(--gutter-l);align-content:center;justify-items:center;gap:14px;display:grid}.result-icon{color:var(--good)}.result-icon.tone-warn{color:var(--warn)}.live-result h1{letter-spacing:-.03em;font-size:2.25rem;font-weight:800}.result-figure{color:var(--text-2);font-size:1.25rem;font-weight:700}.result-card{text-align:left;gap:0;width:100%;padding:0 16px}.result-card .list-row{border-bottom:1px solid var(--line)}.result-card .list-row:last-child{border-bottom:0}.result-card .list-row>svg{color:var(--good)}.you-band{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:14px}.you-band>div{gap:2px;min-width:0;display:grid}.you-band h1{font-size:2rem}.avatar{background:var(--tint-purple);width:64px;height:64px;color:var(--ink);border-radius:50%;place-items:center;font-size:1.625rem;font-weight:800;display:grid}.stats{gap:0;padding:4px 18px 18px}.stats-grid{grid-template-columns:1fr 1fr;display:grid}.stats-grid>div{border-bottom:1px solid var(--line);gap:2px;min-width:0;padding:16px 0;display:grid}.stats-grid>div:nth-child(odd){border-right:1px solid var(--line);padding-right:12px}.stats-grid>div:nth-child(2n){padding-left:16px}.stats-grid b{letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;font-size:2rem;font-weight:800;overflow:hidden}.stats-grid small{color:var(--text-2);font-size:.8125rem;font-weight:600}.spare{gap:10px;padding-top:16px;display:grid}.spare-head{flex-wrap:wrap;justify-content:space-between;gap:8px;font-weight:700;display:flex}.spare-head .muted{font-weight:600}.spare-chart{grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;height:88px;display:grid;position:relative}.spare-chart:before{content:"";background:var(--line-strong);height:1px;position:absolute;top:50%;left:0;right:0}.spare-col{height:100%;position:relative}.spare-bar{border-radius:5px;width:60%;max-width:18px;position:absolute;left:50%;transform:translate(-50%)}.spare-bar.up{background:var(--good);bottom:50%}.spare-bar.down{background:var(--bad);top:50%}.settings{gap:0;padding:2px 18px}.setting{border-bottom:1px solid var(--line);gap:10px;min-width:0;padding:16px 0;display:grid}.setting:last-child{border-bottom:0}.setting.inline{justify-content:space-between;align-items:center;gap:12px;display:flex}.setting-label{font-weight:700}.setting small{font-size:.8125rem}.settings>p{padding:12px 0 10px}.settings>.action-row{padding-bottom:16px}.mode-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.mode-chip{background:var(--surface);border:1.5px solid var(--line-strong);text-align:left;border-radius:18px;align-items:center;gap:8px;padding:12px 14px;font-weight:700;display:flex}.mode-chip>svg:first-child{color:var(--m,var(--ink))}.mode-chip.on{border-color:var(--ink);background:var(--surface-2)}.mode-check{color:var(--ink);margin-left:auto}.welcome{max-width:560px;min-height:100dvh;padding:calc(env(safe-area-inset-top,0px) + 18px) var(--gutter-r) calc(env(safe-area-inset-bottom,0px) + 24px) var(--gutter-l);grid-template-rows:auto 1fr auto;gap:22px;margin:0 auto;display:grid}.welcome-preview{align-content:center;display:grid}.preview-card{gap:20px;transform:rotate(-2deg);box-shadow:0 24px 50px #1213181f}.welcome-bottom{gap:12px;display:grid}.welcome-bottom h1{letter-spacing:-.04em;font-size:2.625rem;font-weight:800;line-height:1.02}.welcome-bottom p{color:var(--text-2);margin-bottom:10px;font-size:1.125rem;font-weight:600}.onboard{max-width:560px;min-height:100dvh;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 24px);margin:0 auto}.ob-progress{gap:6px;margin-bottom:14px;display:flex}.ob-progress span{background:var(--line-strong);border-radius:3px;flex:1;height:5px}.ob-progress span.on{background:var(--ink)}.ob-card{gap:16px}.ob-nav{justify-content:space-between;gap:10px;display:flex}.notif-demo{background:var(--surface-2);border-radius:18px;align-items:flex-start;gap:12px;padding:12px;display:flex}.notif-app{background:var(--brand);color:#fff;border-radius:10px;flex:none;place-items:center;width:38px;height:38px;display:grid}.notif-demo div{gap:2px;display:grid}.notif-demo small{color:var(--text-2)}.inline-ok{align-items:center;gap:6px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.toast{cursor:default}.toast-action{background:var(--ink);color:#fff;border-radius:999px;flex:none;min-height:36px;margin-left:6px;padding:8px 14px;font-size:.875rem;font-weight:800}.toast-action:active{transform:scale(.96)}.stale-line{color:var(--on-tint-2);text-underline-offset:3px;justify-self:start;min-height:32px;font-size:.8125rem;font-weight:700;text-decoration:underline}.link,.place-change,.hero-more,.try-toggle,.link-row,.why summary,.toggle,.install-row{position:relative}.link:after,.place-change:after,.toggle:after{content:"";position:absolute;inset:-10px -8px}.try-toggle,.link-row,.hero-more{min-height:44px}.why summary{padding:10px 0}.icon-btn{width:48px;height:48px}.days button{width:44px;height:44px}.list .row .icon-btn{margin-right:-8px}.week-day{min-height:76px}.tabbar{view-transition-name:tabbar}::view-transition-old(root){animation:.16s both vt-out}::view-transition-new(root){animation:vt-in .28s var(--ease) both}::view-transition-group(tabbar){animation:none}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(8px)}}.hero-board{color:var(--ink);align-items:center;gap:8px;font-size:.9375rem;font-weight:700;line-height:1.3;display:flex}.hero-board svg{flex:none}.line-chip{background:var(--ink);color:#fff;letter-spacing:-.01em;border-radius:8px;flex:none;align-items:center;gap:4px;height:26px;padding:0 9px 0 7px;font-size:.875rem;font-weight:800;display:inline-flex}.it-leg{align-items:flex-start}.it-leg>svg{flex:none}.it-leg>span:last-child{min-width:0;padding-top:1px}.it-leg .line-chip+span{padding-top:2px}.welcome-bottom p,.hero-board{text-wrap:pretty}.no-go{background:var(--surface);box-shadow:var(--shadow-1);border-radius:22px;gap:10px;padding:14px 16px;display:grid}.no-go li{color:var(--text-2);align-items:flex-start;gap:10px;font-size:.9375rem;font-weight:600;line-height:1.4;display:flex}.no-go li svg{color:var(--text-3);flex:none;margin-top:1px}.attribution a{color:inherit;text-decoration:underline}.tint-green{background:var(--tint-green)}.tint-orange{background:var(--tint-orange)}.ms-progress{background:var(--surface-2);border-radius:999px;height:8px;margin:-2px 0 14px;overflow:hidden}.ms-progress span{border-radius:inherit;background:linear-gradient(90deg,#8f7bff,#b8a9ff);height:100%;display:block}.ms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.ms-tile{min-height:132px;color:var(--ink);border-radius:24px;align-content:start;gap:2px;padding:14px 14px 16px;display:grid;position:relative}.ms-tile b{letter-spacing:-.015em;margin-top:10px;font-size:1rem;font-weight:800;line-height:1.2}.ms-tile small{color:var(--on-tint-2);font-size:.8125rem;font-weight:600;line-height:1.3}.ms-icon{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff80;border:1px solid #ffffffbf;border-radius:50%;place-items:center;width:46px;height:46px;display:grid;box-shadow:inset 0 1px 1px #ffffffe6,0 4px 12px #12131814}.ms-mark{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:12px;right:12px}.ms-tile.locked{background:var(--surface);box-shadow:var(--shadow-1)}.ms-tile.locked .ms-icon{background:var(--surface-2);box-shadow:none;color:var(--text-3);border-color:#0000}.ms-tile.locked b{color:var(--text-2)}.ms-tile.locked small{color:var(--text-3)}.ms-tile.locked .ms-mark{background:var(--surface-2);color:var(--text-3)}.about a{color:inherit;text-decoration:underline}:root{--m-train:#7c5cff;--m-subway:#e0457b;--m-tram:#e39a0c;--m-bus:#2f80ed;--m-coach:#0e9f9f;--m-ferry:#1c9bd7;--m-drive:#ff6b1a;--m-taxi:#f2b600;--m-walk:#8a8f99;--m-cycle:#1fa463}.m-train{--m:var(--m-train)}.m-subway{--m:var(--m-subway)}.m-tram{--m:var(--m-tram)}.m-bus{--m:var(--m-bus)}.m-coach{--m:var(--m-coach)}.m-ferry{--m:var(--m-ferry)}.m-drive{--m:var(--m-drive)}.m-taxi{--m:var(--m-taxi)}.m-walk{--m:var(--m-walk)}.m-cycle{--m:var(--m-cycle)}.line-chip{background:var(--m,var(--ink))}.line-chip.m-taxi{color:var(--ink)}.mode-tile{background:color-mix(in srgb, var(--m) 16%, #fff)!important;color:color-mix(in srgb, var(--m) 82%, #000)!important;border-color:color-mix(in srgb, var(--m) 10%, #fff)!important}.routebar{gap:3px;width:100%;height:6px;margin-top:6px;display:flex}.rb{background:var(--m,var(--ink));border-radius:3px;flex-basis:0;min-width:6px}.rb-walk{background:#d5d7dd}.rb-wait{background:repeating-linear-gradient(-45deg,#e3e4e8 0 3px,#f1f1f4 3px 6px)}.choose-head{gap:2px;margin-bottom:4px;display:grid}.choose-head .section-title{margin-bottom:0}.choice{text-align:left;background:var(--surface);width:100%;box-shadow:var(--shadow-1);border:2px solid #0000;border-radius:24px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;padding:16px 16px 16px 14px;transition:transform .15s,border-color .2s;display:grid}.choice:active{transform:scale(.99)}.choice:focus-visible{border-color:var(--m);outline:none}.choice .opt-tile{margin-top:2px}.choice-body{gap:3px;min-width:0;display:grid}.choice-title{color:color-mix(in srgb, var(--m) 78%, #000);letter-spacing:-.01em;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:1.0625rem;font-weight:800;display:flex}.choice-title em{background:color-mix(in srgb, var(--m) 14%, #fff);color:color-mix(in srgb, var(--m) 80%, #000);border-radius:999px;padding:3px 8px;font-size:.75rem;font-style:normal;font-weight:800}.choice .chance-col{margin-top:2px}.route-map{background:#eef0f3;width:100%;height:100%;min-height:180px;position:relative;overflow:hidden}.route-map>.route-map-canvas{width:100%;height:100%;position:absolute;inset:0}.route-map-skeleton{background:linear-gradient(100deg,#eceef2 30%,#f6f7f9 50%,#eceef2 70%) 0 0/200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.route-map-msg{text-align:center;color:var(--text-2);place-items:center;padding:16px;font-weight:600;display:grid;position:absolute;inset:0}.map-card{cursor:pointer;height:210px;box-shadow:var(--shadow-1);isolation:isolate;border-radius:24px;position:relative;overflow:hidden}.map-card .route-map{min-height:0}.map-card-open{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);background:#ffffffeb;border-radius:999px;align-items:center;gap:6px;padding:9px 14px;font-size:.875rem;font-weight:800;display:inline-flex;position:absolute;bottom:12px;left:12px;box-shadow:0 4px 14px #12131824}.map-card .maplibregl-ctrl-bottom-right,.map-card .maplibregl-ctrl-bottom-left{z-index:1}.mapview{z-index:65;background:#eef0f3;animation:.2s fade-in;position:fixed;inset:0}.mapview-map{position:absolute;inset:0}.mapview-top{z-index:2;top:calc(env(safe-area-inset-top,0px) + 12px);align-items:center;gap:10px;display:flex;position:absolute;left:12px;right:12px}.mapview-title{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-radius:20px;min-width:0;padding:9px 16px;display:grid;box-shadow:0 6px 18px #1213181f}.mapview-title b{font-size:1rem;font-weight:800}.mapview-title small{color:var(--text-2);font-size:.8125rem;font-weight:600}.mapview-steps{z-index:2;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;border-radius:24px;gap:10px;max-height:38vh;margin:0;padding:14px 16px;list-style:none;display:grid;position:absolute;overflow-y:auto;box-shadow:0 10px 30px #12131829}.mapview-steps li{align-items:flex-start;gap:10px;font-size:.9375rem;font-weight:600;line-height:1.35;display:flex}.mapview-steps li>span:last-child{min-width:0;padding-top:3px}.step-dot{background:color-mix(in srgb, var(--m) 16%, #fff);width:26px;height:26px;color:color-mix(in srgb, var(--m) 80%, #000);border-radius:8px;flex:none;place-items:center;display:grid}.mapview .maplibregl-ctrl-bottom-right{bottom:calc(38vh + 30px)}.map-pin{border:4px solid var(--pin,var(--ink));background:#fff;border-radius:50%;width:16px;height:16px;box-shadow:0 2px 6px #00000040}.map-pin-start{border:5px solid var(--ink);width:20px;height:20px}.map-pin-end{background:var(--ink);border:4px solid #fff;width:24px;height:24px;box-shadow:0 2px 8px #00000059}.map-pin-label{text-align:center;width:max-content;max-width:150px;color:var(--ink);font:700 .75rem/1.2 var(--font,inherit);background:#fff;border-radius:10px;padding:4px 9px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 3px 10px #00000029}.go-chips{scrollbar-width:none;gap:8px;margin:0 -2px;padding:2px;display:flex;overflow-x:auto}.mode-choose .go-chips{margin-right:-18px;padding-right:28px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}.go-chips::-webkit-scrollbar{display:none}.go-chip{height:40px;color:var(--ink);background:#ffffff8c;border:1px solid #fffc;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px 0 10px;font-size:.875rem;font-weight:800;display:inline-flex}.go-chip svg{color:var(--m)}.go-chip[aria-pressed=true]{background:var(--m);color:#fff;border-color:#0000}.go-chip[aria-pressed=true] svg{color:#fff}.go-chip.m-taxi[aria-pressed=true],.go-chip.m-taxi[aria-pressed=true] svg{color:var(--ink)}.mode-choose{gap:8px;display:grid}.mode-choose>span{color:var(--on-tint-2);font-size:.9375rem;font-weight:700}.go-chips.wrap{flex-wrap:wrap;overflow:visible}.form .go-chip{background:var(--surface-2);border-color:#0000}.form .go-chip[aria-pressed=true]{background:var(--m,var(--ink));color:#fff}.map-credit{z-index:1;color:#6b6f78;background:#ffffffc7;border-radius:8px;padding:2px 7px;font-size:.6875rem;font-weight:600;position:absolute;bottom:6px;right:8px}.map-credit a{color:inherit;text-decoration:none}.mapview .map-credit{bottom:auto;top:calc(env(safe-area-inset-top,0px) + 78px);right:12px}.map-pin.label-below .map-pin-label{top:calc(100% + 6px);bottom:auto}.sort-row{margin-top:12px}.sort-row .seg{width:100%}.choice-title em.tag-best{background:var(--ink);color:#fff}.choice-title em.tag-cheapest,.choice-title em.tag-fastest{background:var(--surface-2);color:var(--ink)}.where-btn{width:100%;min-height:56px;color:var(--text-2);text-align:left;background:#ffffffbf;border-radius:999px;align-items:center;gap:10px;padding:0 18px;font-size:1rem;font-weight:700;display:flex;box-shadow:inset 0 1px #ffffffe6,0 6px 18px #3c287814}.where-btn svg{color:var(--ink);flex:none}.where-btn:active{transform:scale(.99)}.next-line{text-align:left;width:100%;color:var(--ink);background:#ffffff73;border-radius:20px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px 10px 10px;display:grid}.next-when{background:var(--ink);color:#fff;border-radius:999px;padding:6px 10px;font-size:.8125rem;font-weight:800}.next-what{min-width:0;display:grid}.next-what b{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.next-what small{color:var(--on-tint-2);font-size:.875rem;font-weight:600}.alts{gap:8px;display:grid}.alts-head{justify-content:space-between;align-items:baseline;gap:12px;padding:0 4px;display:flex}.alts-head h3{letter-spacing:-.01em;margin:0;font-size:1.0625rem;font-weight:800}.alts-head small{color:var(--text-3);font-size:.8125rem;font-weight:600}.alts ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.alt{text-align:left;background:var(--surface);width:100%;box-shadow:var(--shadow-1);border:2px solid #0000;border-radius:18px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px 10px 12px;transition:transform .15s,border-color .2s;display:grid}.alt.on{border-color:var(--ink)}.alt:active{transform:scale(.99)}.alt-time{line-height:1.15;display:grid}.alt-time b{font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:800}.alt-time small{color:var(--text-3);white-space:nowrap;font-size:.75rem;font-weight:600}.alt-main{gap:4px;min-width:0;display:grid}.alt-chips{flex-wrap:wrap;gap:4px;display:flex}.alt-chips .line-chip{border-radius:7px;height:22px;padding:0 7px 0 5px;font-size:.8125rem}.alt-more{color:var(--text-2);align-self:center;font-size:.75rem;font-weight:800}.alt-main small{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:600;overflow:hidden}.alt-p{justify-items:end;gap:2px;font-size:.9375rem;display:grid}.alt-p.tone-good b{color:var(--good)}.alt-p.tone-warn b{color:var(--warn)}.alt-p.tone-bad b{color:var(--bad)}.alt-p svg{color:var(--ink)}.opt-also{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:4px;font-size:.8125rem;font-weight:600;display:flex}.also-chip{background:color-mix(in srgb, var(--m-bus) 14%, #fff);height:20px;color:color-mix(in srgb, var(--m-bus) 80%, #000);border-radius:6px;align-items:center;padding:0 6px;font-size:.75rem;font-weight:800;display:inline-flex}.off-hint{background:var(--surface);border:1.5px dashed var(--line-strong);border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.off-hint .opt-tile{border-radius:14px;width:44px;height:44px}.off-text{gap:2px;min-width:0;display:grid}.off-text b{font-weight:800}.off-text small{color:var(--text-2);font-size:.8125rem;font-weight:600}.btn.small{min-height:40px;padding:0 16px;font-size:.9375rem}.when-tabs{gap:20px;margin-bottom:2px;display:flex}.when-tabs button{color:var(--text-3);border-bottom:2.5px solid #0000;padding:2px 0 7px;font-size:1rem;font-weight:800;transition:color .2s,border-color .2s}.when-tabs button.on{color:var(--ink);border-bottom-color:var(--ink)}.when-tabs button:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}.it-text small b{color:var(--ink);font-weight:800}.hero-board{font-weight:600}.hero-board b{font-weight:800}
