.workspace{grid-template-columns:minmax(0,560px) minmax(0,1fr);align-items:stretch;gap:40px;display:grid}.workspace-left{align-content:start;gap:32px;display:grid}.workspace-right{display:grid}@media (width<=960px){.workspace{grid-template-columns:minmax(0,1fr);gap:28px}}.calc{gap:20px;padding:28px;display:grid}.route-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:12px;display:grid;position:relative}.swap{border:1px solid var(--border-strong);background:var(--surface);width:48px;height:48px;color:var(--text);cursor:pointer;transition:transform .35s var(--ease), background-color .2s;border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.swap:hover{background:var(--field);transform:rotate(180deg)}.combo{position:relative}.combo-clear{width:26px;height:26px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;margin-right:-6px;display:grid}.combo-clear:hover{background:var(--border);color:var(--text)}.combo-clear[hidden],.combo-list[hidden]{display:none}.combo-list{z-index:30;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);max-height:264px;box-shadow:var(--shadow-float);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:-1.5px;right:-1.5px;overflow-y:auto}.combo-opt{border-radius:var(--r-md);color:var(--text);cursor:pointer;align-items:center;gap:12px;padding:10px 12px;display:flex}.combo-opt.is-active,.combo-opt:hover{background:var(--field)}.opt-icon{color:var(--text-3);display:grid}.opt-text{line-height:1.25;display:grid}.opt-text strong{font-size:.95rem;font-weight:600}.opt-text span{color:var(--text-3);font-size:.8rem}.combo-empty{color:var(--text-2);padding:12px;font-size:.9rem;line-height:1.4}.locate{z-index:1;color:var(--text-2);font:600 .8rem/1.2 var(--font-ui);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 2px;text-decoration:underline;display:inline-flex;position:absolute;top:3px;left:46px}.locate:hover{color:var(--text)}.locate:disabled{cursor:progress;opacity:.6}.locate:focus-visible{outline:2px solid var(--text);outline-offset:3px;border-radius:4px}.route-note{margin-top:-8px;font-size:.875rem}.route-note:empty{display:none}.num-grid,.find-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.variant-note{border-radius:var(--r-md);background:var(--up-tint);color:var(--text);padding:12px 14px;font-size:.9rem}@media (width<=560px){.calc{padding:20px}.route-grid{grid-template-columns:minmax(0,1fr)}.swap{z-index:2;box-shadow:var(--shadow-card);margin:0;position:absolute;top:calc(50% - 24px);right:14px}.num-grid,.find-grid{grid-template-columns:minmax(0,1fr)}}.result{border-radius:var(--r-2xl);background:var(--hero);color:var(--on-hero);box-shadow:var(--shadow-hero);flex-direction:column;gap:20px;padding:36px;transition:background-color .3s;display:flex;position:relative;overflow:hidden}.result:before{content:"";background:var(--hero-number);opacity:.08;pointer-events:none;border-radius:50%;width:380px;height:380px;position:absolute;top:-170px;right:-120px}.result>*{position:relative}.result[aria-busy=true]{opacity:.85}.eyebrow-hero{color:var(--on-hero-2);font:650 .75rem/1.2 var(--font-ui);letter-spacing:.1em}.result-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.trip{background:var(--hero-chip);border-radius:999px;gap:2px;padding:4px;display:inline-flex}.trip button{color:var(--on-hero-2);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 16px;font-size:.875rem;font-weight:600;transition:background-color .25s,color .25s}.trip button[aria-pressed=true]{background:var(--hero-number);color:var(--hero)}.result-title{font:600 1.1rem/1.3 var(--font-display);letter-spacing:-.01em}.result-amount{color:var(--hero-number);font:800 clamp(3.75rem, 9vw, 5.5rem) / 1 var(--font-display);letter-spacing:-.045em;font-variant-numeric:tabular-nums}.result-sub,.result-detail{color:var(--on-hero-2);white-space:pre-wrap;font-size:.95rem}.result-detail{margin-top:-8px;font-size:.875rem}.result-rule{background:var(--hero-line);border:0;height:1px;margin:4px 0}.compare{gap:4px;margin:-6px 0 0;padding:0;list-style:none;display:grid}.bar-row{width:calc(100% + 24px);color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;gap:10px;margin:0 -12px;padding:10px 12px;transition:background-color .2s;display:grid}.bar-row:hover,.bar-row[aria-pressed=true]{background:color-mix(in srgb, var(--hero-chip) 65%, transparent)}.bar-head{justify-content:space-between;align-items:baseline;gap:12px;font-weight:600;display:flex}.bar-name small{color:var(--on-hero-2);margin-left:6px;font-size:.8rem;font-weight:500}.bar-amt{font:700 1.1rem/1 var(--font-display);font-variant-numeric:tabular-nums}.bar-track{background:var(--hero-chip);border-radius:999px;height:10px;display:block;overflow:hidden}.bar-fill{background:var(--on-hero-2);height:100%;transition:width .7s var(--ease), background-color .3s;animation:grow .9s var(--ease) backwards;border-radius:999px;display:block}.bar-row[aria-pressed=true] .bar-fill{background:var(--hero-number)}@keyframes grow{0%{width:0}}.yoy{border-radius:var(--r-xl);background:var(--hero-chip);justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding:18px 22px;display:flex}.yoy-text{gap:4px;display:grid}.yoy-text strong{align-items:center;gap:6px;font-size:1rem;display:flex}.yoy-text strong .icon{color:var(--hero-number);flex:none}.yoy-text>span{color:var(--on-hero-2);font-size:.8rem}.yoy-spark svg{width:150px;height:44px;display:block}.callout{border-radius:var(--r-md);background:var(--hero-chip);gap:10px;padding:12px 14px;font-size:.875rem;line-height:1.5;display:flex}.callout .icon{color:var(--hero-number);flex:none;margin-top:2px}.result-foot{color:var(--on-hero-2);font-size:.78rem;line-height:1.5}.result-empty{justify-content:center;min-height:420px}.result-empty .glyph{color:var(--hero-number);font:800 15rem/1 var(--font-display);opacity:.07;pointer-events:none;position:absolute;bottom:-34px;right:24px}.empty-title{max-width:14ch;color:var(--hero-number);font:800 clamp(2rem, 4vw, 2.9rem) / 1.05 var(--font-display);letter-spacing:-.035em}.empty-copy{max-width:36ch;color:var(--on-hero-2)}.try-list{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.try-chip{background:var(--hero-chip);color:var(--on-hero);cursor:pointer;transition:transform .2s var(--ease), background-color .2s;border:0;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:600;display:inline-flex}.try-chip:hover{transform:translateY(-2px)}.result-route{justify-content:center;gap:22px;min-height:420px}.rp-line{align-items:center;margin-top:6px;display:flex}.rp-stop{border:4px solid var(--on-hero);background:var(--hero);width:18px;height:18px;animation:rp-pop .5s var(--ease) both;border-radius:50%;flex:none}.rp-stop-end{border-color:var(--hero-number);background:var(--hero-number);box-shadow:0 0 0 5px color-mix(in srgb, var(--hero-number) 28%, transparent);animation-delay:1s}.rp-track{background:var(--hero-line);border-radius:4px;flex:1;height:4px;margin:0 4px;position:relative}.rp-fill{background:var(--hero-number);transform-origin:0;animation:rp-grow 1.1s .15s var(--ease) both;border-radius:4px;position:absolute;inset:0}.rp-car{background:var(--hero-number);width:34px;height:34px;color:var(--hero);animation:rp-drive 1.1s .15s var(--ease) both;border-radius:50%;place-items:center;margin:-17px 0 0 -17px;display:grid;position:absolute;top:50%;left:100%;box-shadow:0 4px 14px #00000040}.rp-names{justify-content:space-between;gap:16px;display:flex}.rp-name{gap:2px;min-width:0;display:grid}.rp-name strong{font:800 clamp(1.3rem, 2.4vw, 1.75rem) / 1.1 var(--font-display);letter-spacing:-.03em;overflow-wrap:anywhere}.rp-name span{color:var(--on-hero-2);font-size:.9rem}.rp-name-end{text-align:right}.rp-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.rp-stat{border-radius:var(--r-lg);background:var(--hero-chip);animation:rp-rise .6s calc(.25s + var(--i) * .1s) var(--ease) both;gap:4px;padding:16px 18px;display:grid}.rp-stat dt{color:var(--on-hero-2);font:650 .72rem/1.2 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;display:flex}.rp-stat dt svg{color:var(--hero-number);flex:none}.rp-stat dd{font:800 clamp(1.5rem, 2.8vw, 2rem) / 1.1 var(--font-display);letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:0}.rp-stat dd span{color:var(--on-hero-2);font:500 .85rem var(--font-ui);letter-spacing:0}.rp-stat .rp-hint{color:var(--on-hero-2);font:500 .8rem/1.3 var(--font-ui);letter-spacing:0}.rp-next{color:var(--on-hero-2);font-size:.9rem}@keyframes rp-pop{0%{transform:scale(0)}}@keyframes rp-grow{0%{transform:scaleX(0)}}@keyframes rp-drive{0%{left:0}}@keyframes rp-rise{0%{opacity:0;transform:translateY(10px)}}@media (width<=560px){.result-route{min-height:0}.rp-stats{gap:10px}.rp-stat{padding:14px}.result{padding:26px 22px}.yoy{flex-wrap:wrap}.result-empty{min-height:340px}}.chart-card{margin-top:40px;padding:32px}.chart-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:20px;display:flex}@media (width<=560px){.chart-card{margin-top:28px;padding:22px 18px}}@media (width>=961px){.workspace{--ctl:clamp(40px, 5.6vh, 56px);--gap:clamp(10px, 1.9vh, 22px);--pad:clamp(16px, 3vh, 32px)}.workspace-left{gap:clamp(12px,2.4vh,28px)}.calc{gap:var(--gap);padding:var(--pad) calc(var(--pad) + 4px)}.calc .control{height:var(--ctl)}.swap{width:var(--ctl);height:var(--ctl);margin-bottom:0}.calc .field{gap:clamp(4px,.8vh,8px)}.calc .seg span{height:calc(var(--ctl) - 6px)}.calc fieldset.field{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:16px}.calc fieldset.field legend{float:left;margin-right:16px}.calc fieldset.field>.seg{grid-column:2}.find summary{min-height:calc(var(--ctl) - 4px)}.calc #submit{min-height:calc(var(--ctl) + 10px);height:calc(var(--ctl) + 10px)}.result{padding:var(--pad) calc(var(--pad) + 4px);gap:var(--gap)}}.route-card{border-radius:var(--r-xl);transition:transform .25s var(--ease), box-shadow .25s, border-color .2s;gap:14px;padding:22px;text-decoration:none;display:grid}.route-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-float);transform:translateY(-4px)}.rc-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.rc-title{flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:1.2rem;display:flex}.rc-title .icon{color:var(--text-3);transition:transform .25s var(--ease)}.route-card:hover .rc-title .icon{transform:translate(3px)}.rc-go{background:var(--field);width:36px;height:36px;transition:background-color .2s, color .2s, transform .25s var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.route-card:hover .rc-go{background:var(--lime);color:var(--on-lime);transform:rotate(45deg)}.rc-meta{font-size:.9rem}.rc-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:12px;padding-top:14px;display:flex}.rc-cost{font:700 1.6rem/1.1 var(--font-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.rc-caption{font-size:.78rem}
