/* A return ticket and a costed payment decision. */
:root{color-scheme:dark;--bg:#121b1b;--ink:#f0f0e6;--muted:#b0beb6;--line:#3c514a;--green:#a9cfaf;--quiet:#1b2927;--result:#202f2a}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 "Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration-color:#698677;text-underline-offset:4px}button,input,select{font:inherit;color:inherit}button,select{cursor:pointer}:focus-visible{outline:2px solid var(--green);outline-offset:4px}[hidden],.support,.hidden{display:none!important}.top,main,footer{width:min(1080px,calc(100% - 64px));margin:auto}.top{min-height:64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:13px}.top nav{color:var(--muted)}main{padding:36px 0 30px}.hero{margin-bottom:30px}.hero .eyebrow{margin:0 0 8px;color:var(--green);font-size:12px;letter-spacing:.09em;text-transform:uppercase}.hero h1{margin:0;font:400 clamp(38px,4.2vw,52px)/1.1 Georgia,serif;letter-spacing:-.025em}.fare-basis{margin:12px 0 0;color:var(--muted);font-size:14px}
.journey-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}.planner{padding:24px;background:var(--quiet);border:1px solid var(--line);border-radius:12px}.ticket-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.ticket-heading h2{margin:0;font-size:16px;font-weight:600}.ticket-heading>span{color:var(--muted);font:11px Consolas,monospace;text-transform:uppercase}.route-trace{display:flex;justify-content:space-between;align-items:center;margin:22px 0 24px;padding-bottom:23px;border-bottom:1px dashed #668074;color:var(--muted);font-size:13px}.route-trace span{display:flex;align-items:center;gap:8px}.route-trace i{width:9px;height:9px;border:2px solid var(--green);border-radius:50%}.route-trace b{font-weight:400;color:var(--green)}.srow{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:end;gap:9px}.fg{position:relative;min-width:0}.fg label{display:block;margin-bottom:7px;color:var(--muted);font-size:12px}.si{width:100%;min-width:0;min-height:48px;padding:10px;border:1px solid #597267;background:var(--bg);border-radius:5px}.swap{width:40px;min-height:48px;border:1px solid var(--line);border-radius:5px;background:transparent;font-size:20px}.swap:hover{border-color:var(--green)}.compact{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.compact .fg:first-child{grid-column:1/-1}.go-btn{width:100%;min-height:50px;margin-top:22px;border:1px solid var(--green);border-radius:5px;background:var(--green);color:#15251a;font-weight:650}.go-btn:hover:not(:disabled){background:#bddcbe}.go-btn:disabled{opacity:.45;cursor:not-allowed}.ticket-note{margin:12px 0 0;color:var(--muted);font-size:12px}.jbar{display:none}#goHint{color:var(--muted);font-size:13px;margin-top:8px}.jerr{display:none;color:#edb5a4;font-size:13px;margin-top:12px}.jerr.vis{display:block}
.acd{display:none;position:absolute;left:0;right:0;z-index:5;background:var(--bg);border:1px solid #648775;max-height:270px;overflow:auto;border-radius:5px;box-shadow:0 10px 26px #0005}.acd.open{display:block}.aci{display:flex;justify-content:space-between;gap:9px;padding:11px 10px;cursor:pointer;font-size:13px}.aci:hover,.aci.act{background:#344e40}.aci .zt{color:var(--muted);font-size:11px;white-space:nowrap}.acd-empty{padding:12px;color:var(--muted);font-size:13px}
.results{display:none;min-width:0}.results.vis{display:block}.results-shell{display:grid;gap:16px}.reco{padding:26px;background:var(--result);border:1px solid #6e9778;border-radius:12px}.winner-badge{color:var(--green);font-size:12px;margin-bottom:14px}.reco h2{margin:0;font:400 30px/1.2 Georgia,serif}.reco .price{color:var(--green);font:400 46px/1.15 Georgia,serif;margin-top:18px;white-space:nowrap}.daily-unit{display:block;color:var(--muted);font-size:12px;margin-top:3px}.reco p{margin:12px 0 0;font-size:14px}.return-basis{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;padding-top:18px;border-top:1px dashed #597267}.return-basis span{color:var(--muted);font-size:11px}.return-basis b{display:block;margin-top:5px;color:var(--ink);font-size:13px;font-weight:500}.alternatives-heading{font-size:12px;color:var(--muted);margin-top:2px}.g-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ocard{padding:15px 16px;border:1px solid var(--line);border-radius:7px}.ocard h3{margin:0;font:400 18px/1.2 Georgia,serif}.ocard .price{color:var(--ink);font:20px/1.2 Georgia,serif;margin:12px 0 6px}.ocard p:last-child{color:var(--muted);font-size:12px;margin:0}.estimate-note{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.results>#switchBanner,.results>#timeTip,.results>#rcTip{display:none}footer{border-top:1px solid var(--line);padding:18px 0 24px;color:var(--muted);font-size:12px}
@media(max-width:900px){.journey-layout{grid-template-columns:1fr}.planner{max-width:none}.hero h1{font-size:44px}.results{scroll-margin-top:20px}}
@media(max-width:500px){.top,main,footer{width:calc(100% - 32px)}main{padding-top:27px}.hero h1{font-size:38px}.fare-basis{font-size:13px}.planner{padding:20px}.ticket-heading>span{font-size:10px}.srow{grid-template-columns:1fr 40px}.srow .fg:last-child{grid-column:1/-1}.swap{grid-column:2;grid-row:1}.compact{gap:12px}.reco{padding:22px}.reco .price{font-size:42px}.return-basis{gap:10px}.g-cards{gap:10px}.ocard{padding:13px}.ocard h3{font-size:17px}.ocard .price{font-size:19px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
