.bus-head .pname,.bus-head .pstat{display:block}.bus-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-rows:auto auto;align-items:center;column-gap:clamp(9px,2.2vw,14px);row-gap:6px;text-align:left}.bus-head .rl{display:contents}.bus-head .rl>*{grid-column:2;min-width:0}.bus-head .wdot{grid-column:1;grid-row:1 / span 2}.bus-head .bus-rr{grid-column:3;grid-row:1 / span 2}.bus-head .bus-chev{grid-column:4;grid-row:1 / span 2}.bus-head.has-deps .bus-rr{grid-row:2;align-self:start}.bus-head.has-deps .bus-icon{width:clamp(44px,11vw,47px)}.bus-hdeps{display:grid;grid-template-columns:max-content max-content minmax(0,max-content);gap:3px clamp(8px,2vw,12px);align-items:baseline;min-width:0;overflow:hidden}.bus-hdep{display:contents}.bus-hdeps .bd-x{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bus-hdeps .bd-stop{font-size:clamp(12.5px,3.3vw,14px);font-weight:650;opacity:.9;text-shadow:var(--tsh);white-space:nowrap}.bus-hdeps .bd-time{font-weight:850;font-variant-numeric:tabular-nums;font-size:clamp(14px,3.8vw,15.5px);letter-spacing:-.3px;text-shadow:var(--tsh)}.bus-hdeps .bd-in{color:var(--temp-cool);font-weight:750;font-size:clamp(11.5px,3vw,12.5px);font-variant-numeric:tabular-nums;text-shadow:var(--tsh);white-space:nowrap}.bus-hdeps .bd-first{font-size:clamp(11.5px,3vw,12.5px);font-weight:650;opacity:.72;text-shadow:var(--tsh);white-space:nowrap}.bus-hdeps .bd-none{font-size:clamp(11.5px,3vw,12.5px);font-weight:650;opacity:.62;text-shadow:var(--tsh);white-space:nowrap}.bus-hdeps .bd-dash{opacity:.45}.bus-hdep.is-done .bd-stop{opacity:.62}.bus-panel{scroll-margin-top:calc(var(--topbar-h) + 18px)}.bus-seg{white-space:nowrap}.bus-icon{width:clamp(46px,12vw,54px);height:auto;flex:0 0 auto;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.bus-icon.open{color:var(--st-open)}.bus-icon.closed{color:var(--st-closed)}.bus-icon.later{color:var(--st-later)}.bus-icon.free{color:var(--st-free)}.bus-icon.neutral{color:var(--st-neutral)}.bus-chev{flex:0 0 auto;font-size:17px;opacity:.7;text-shadow:var(--tsh);transition:transform .2s ease}.bus-panel.open .bus-chev{transform:rotate(180deg)}.bus-detail{border-top:1px solid var(--row-border);padding:clamp(12px,3vw,16px) 2px clamp(16px,3.6vw,20px);display:flex;flex-direction:column;gap:clamp(12px,3vw,16px)}.bus-detail[hidden]{display:none}.bus-empty{font-size:clamp(13px,3.4vw,15px);opacity:.85;text-shadow:var(--tsh)}.bus-line{display:flex;flex-direction:column;gap:4px}.bus-line-dir{font-size:clamp(9.5px,2.6vw,11px);font-weight:800;letter-spacing:1.4px;text-transform:uppercase;opacity:.6;text-shadow:var(--tsh)}.bl-arrow{opacity:.75}.bus-line-head{font-size:clamp(12.5px,3.4vw,14.5px);font-weight:750;line-height:1.3;text-shadow:var(--tsh)}.bus-line-sub{font-size:clamp(11.5px,3vw,13px);font-weight:620;line-height:1.35;opacity:.72;text-shadow:var(--tsh)}.bus-line-calc{font-size:clamp(10.5px,2.8vw,12px);font-weight:620;line-height:1.35;opacity:.55;text-shadow:var(--tsh)}.bus-rail{position:relative;margin:4px 0 2px;--bus-stop-h: clamp(26px, 6.6vw, 30px);--bus-rail-x: 7px}.bus-rail:before{content:"";position:absolute;left:calc(var(--bus-rail-x) - 1px);top:calc(var(--bus-stop-h) / 2);bottom:calc(var(--bus-stop-h) / 2);width:2px;border-radius:2px;background:currentColor;opacity:.22}.bus-stops{list-style:none;margin:0;padding:0}.bus-stop{display:grid;align-items:center;height:var(--bus-stop-h);grid-template-columns:calc(var(--bus-rail-x) * 2) minmax(0,1fr) auto;column-gap:clamp(8px,2.2vw,12px)}.bs-dot{width:9px;height:9px;border-radius:50%;justify-self:center;background:currentColor;opacity:.42}.bs-name{font-size:clamp(12px,3.2vw,13.5px);font-weight:650;opacity:.88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:var(--tsh)}.bs-time{font-size:clamp(12px,3.2vw,13.5px);font-weight:720;opacity:.8;font-variant-numeric:tabular-nums;text-shadow:var(--tsh)}.bus-stop.is-past .bs-dot{opacity:.24}.bus-stop.is-past .bs-name,.bus-stop.is-past .bs-time{opacity:.5}.bus-stop.is-next .bs-dot,.bus-stop.is-here .bs-dot{opacity:.9}.bus-stop.is-next .bs-name,.bus-stop.is-here .bs-name,.bus-stop.is-next .bs-time,.bus-stop.is-here .bs-time{font-weight:800;opacity:1}.bus-live{position:absolute;left:var(--bus-rail-x);top:calc(var(--bus-stop-h) / 2 + var(--bus-live-p, 0) * (100% - var(--bus-stop-h)));width:13px;height:13px;border-radius:50%;transform:translate(-50%,-50%);color:var(--temp-cool);background:currentColor;box-shadow:0 0 10px var(--temp-cool)}.bus-live:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid currentColor;opacity:.5;animation:bus-live-pulse 2.4s ease-out infinite}@keyframes bus-live-pulse{0%{transform:scale(.7);opacity:.55}70%{transform:scale(1.5);opacity:0}to{transform:scale(1.5);opacity:0}}@media(prefers-reduced-motion:reduce){.bus-live:after{animation:none;opacity:.35}}[data-contrast=high] .bus-rail:before{opacity:.4}[data-contrast=high] .bs-dot{opacity:.6}[data-contrast=high] .bus-stop.is-past .bs-name,[data-contrast=high] .bus-stop.is-past .bs-time{opacity:.68}[data-contrast=high] .bus-line-sub,[data-contrast=high] .bus-line-calc{opacity:.85}.bus-table{width:100%;border-collapse:collapse;font-size:clamp(13px,3.4vw,15px);text-shadow:var(--tsh)}.bus-table th,.bus-table td{padding:8px 2px}.bus-table thead th{font-size:clamp(10px,2.8vw,12px);font-weight:800;letter-spacing:1.5px;text-transform:uppercase;opacity:.65}.bus-table tbody th{text-align:left;font-weight:650;opacity:.92}.bus-table td,.bus-table thead th{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.bus-table td{opacity:.75;font-weight:640}.bus-table tbody tr{border-top:1px solid var(--row-border)}.bus-table td.today{opacity:1;font-weight:800}.bus-table thead th.today{opacity:.95}.bus-meta,.bus-route,.bus-hint{font-size:clamp(12px,3.2vw,14px);line-height:1.35;text-shadow:var(--tsh)}.bus-meta{font-weight:700;opacity:.9}.bus-route{opacity:.7}.bus-hint{color:var(--note-color);font-weight:650}.bus-actions{display:flex;align-items:center;justify-content:space-between;margin-top:-4px}.bus-collapse{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 14px 6px 8px;background:#ffffff1a;border:1px solid var(--glass-border);border-radius:999px;color:inherit;cursor:pointer;font:inherit;font-size:13.5px;font-weight:700;text-shadow:var(--tsh)}.bus-collapse svg{display:block;transform:rotate(90deg)}.bus-collapse:hover{background:#ffffff2e}.bus-collapse:focus-visible{outline:2px solid var(--focus, #8cbcff);outline-offset:2px}[data-theme=light] .bus-collapse{background:#0d1b2a0f}[data-theme=light] .bus-collapse:hover{background:#0d1b2a1f}.bus-share{width:34px;height:34px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:12px;background:#ffffff14;color:inherit;cursor:pointer;opacity:.85;transition:background .15s ease,opacity .15s ease}.bus-share:hover{background:#ffffff24;opacity:1}.bus-share:focus-visible{outline:2px solid rgba(255,255,255,.7);outline-offset:1px}.bus-share svg{display:block}[data-theme=light] .bus-share{background:#0d1b2a0d}[data-theme=light] .bus-share:hover{background:#0d1b2a17}[data-theme=light] .bus-share:focus-visible{outline-color:#0d1b2ab3}.bus-line-sub+.bus-line-sub{margin-top:1px}
