.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem clamp(1rem,4vw,2.5rem);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:.55rem;font-weight:800;font-size:1.15rem;letter-spacing:-.02em;color:var(--text);text-decoration:none}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:10px;background:var(--accent);color:var(--on-accent)}.topnav{display:flex;align-items:center;gap:.25rem}.topnav .btn-text{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border:0;background:none;border-radius:10px;font-weight:600;color:var(--muted);cursor:pointer}.topnav .btn-text:hover{background:var(--surface-2);color:var(--text)}.hero{padding:clamp(2rem,6vw,4.5rem) clamp(1rem,4vw,2.5rem) 1.5rem;background:radial-gradient(60rem 24rem at 50% -10%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),var(--bg)}.hero-inner{max-width:72rem;margin:0 auto}.hero-copy{margin-bottom:1.5rem;max-width:40rem}.hero-copy p{margin-top:.6rem;color:var(--muted);font-size:1.0625rem}body.has-results .hero{padding-block:1.25rem .5rem}body.has-results .hero-copy{display:none}.search-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(1rem,2.5vw,1.5rem)}.trip-type{display:inline-flex;padding:.25rem;margin-bottom:1rem;background:var(--surface-2);border-radius:12px}.seg{position:relative;cursor:pointer}.seg input{position:absolute;opacity:0;inset:0}.seg span{display:block;padding:.4rem 1rem;border-radius:9px;font-size:.9rem;font-weight:600;color:var(--muted)}.seg input:checked+span{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.seg input:focus-visible+span{box-shadow:var(--focus)}.search-grid{display:grid;gap:.75rem;align-items:end;grid-template-columns:minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr) auto}.route{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.25rem;align-items:end}.swap{margin-bottom:.25rem;border-color:var(--border)}.form-error{margin-top:.75rem;color:var(--danger);font-weight:600;font-size:.9rem}.pax summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.5rem;cursor:pointer}.pax summary::-webkit-details-marker{display:none}.pax-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pax[open] .pax-btn{border-color:var(--accent);box-shadow:var(--focus)}.pax-pop{position:absolute;z-index:20;top:calc(100% + .4rem);right:0;width:min(21rem,90vw);padding:.75rem;display:grid;gap:.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.pax-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem .25rem}.pax-row small{display:block;color:var(--muted)}.stepper{display:inline-flex;align-items:center;gap:.35rem}.stepper output{min-width:1.5rem;text-align:center;font-weight:700}.stepper .btn-icon{border:1px solid var(--border-strong);width:2.1rem;height:2.1rem}.hint{color:var(--muted);font-size:.8125rem}.config-warning{max-width:72rem;margin:1rem auto 0}main{min-height:40vh}.results{padding:.5rem clamp(1rem,4vw,2.5rem) 3rem}.results-wrap{max-width:72rem;margin:0 auto}.results-layout{display:grid;grid-template-columns:17.5rem minmax(0,1fr);gap:1.5rem;align-items:start;margin-top:1rem}.results-layout.is-loading{grid-template-columns:minmax(0,1fr)}.filters{position:sticky;top:4.5rem;max-height:calc(100vh - 5.5rem);overflow:auto;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.filters-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.filters-head h2{margin-right:auto;font-size:1.05rem}.filters-close,.filters-open-btn,.filters-apply{display:none}.results-main{min-width:0;display:grid;gap:.9rem}.info{width:min(72rem,calc(100% - (2*clamp(1rem,4vw,2.5rem))));margin:2rem auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}body.has-results .info{display:none}.info-item{padding:1.1rem 1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.info-item h3{margin-bottom:.25rem}.info-item p{color:var(--muted);font-size:.9375rem}.footer{padding:2rem clamp(1rem,4vw,2.5rem);border-top:1px solid var(--border);color:var(--muted);font-size:.875rem}.footer-inner{max-width:72rem;margin:0 auto;display:grid;gap:.4rem}@media(max-width:1100px){.search-grid{grid-template-columns:1fr 1fr}.route,.search-grid .btn-lg{grid-column:1 / -1}}@media(max-width:900px){.results-layout{grid-template-columns:minmax(0,1fr)}.filters{position:fixed;inset:0;z-index:60;max-height:none;border-radius:0;border:0;padding:1rem 1rem 6rem;transform:translateY(100%);visibility:hidden;transition:transform .25s,visibility .25s}.filters-open .filters{transform:none;visibility:visible}.filters-close,.filters-open-btn{display:inline-flex}.filters-apply{display:inline-flex;position:fixed;left:1rem;right:1rem;bottom:1rem}.info{grid-template-columns:1fr}}@media(max-width:640px){.search-grid,.route{grid-template-columns:1fr}.swap{justify-self:center;transform:rotate(90deg);margin:-.25rem 0}.topnav .btn-text span{display:none}.pax-pop{left:0;right:auto}}.pax-row .input{width:auto;min-width:9rem}
