@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-thai-500-normal-DeexCGiz.woff2) format("woff2"),url(/assets/chakra-petch-thai-500-normal-CJG_V2_m.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/chakra-petch-vietnamese-500-normal-BVzUBLGs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-latin-ext-500-normal-gA6791b0.woff2) format("woff2"),url(/assets/chakra-petch-latin-ext-500-normal-BCHeNDEx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-latin-500-normal-BR1ody1F.woff2) format("woff2"),url(/assets/chakra-petch-latin-500-normal-CnUQnZ4D.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-thai-600-normal-C620THcd.woff2) format("woff2"),url(/assets/chakra-petch-thai-600-normal-BiM5MXH8.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/chakra-petch-vietnamese-600-normal-Pvj4qcw_.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-ext-600-normal-CdGvbdDU.woff2) format("woff2"),url(/assets/chakra-petch-latin-ext-600-normal-nL80L4xU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-600-normal-DVQm9bgb.woff2) format("woff2"),url(/assets/chakra-petch-latin-600-normal-DQKfcdKo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-thai-700-normal-B7WL5pBr.woff2) format("woff2"),url(/assets/chakra-petch-thai-700-normal-vZLZ_5L8.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/chakra-petch-vietnamese-700-normal-gQuUA8Wu.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-latin-ext-700-normal-DAkvJhej.woff2) format("woff2"),url(/assets/chakra-petch-latin-ext-700-normal-BeviJPUl.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-latin-700-normal-CnDBPjkL.woff2) format("woff2"),url(/assets/chakra-petch-latin-700-normal-D1s_c2du.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--bg:#06101d;--panel:#0a1728;--panel-2:#11233b;--line:#29445f;--text:#edf5ff;--muted:#9bb2cd;--accent:#00b5f4;--good:#36df94;--bad:#ff536a;--display:Inter,"Avenir Next",system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:13px/1.5 var(--display)}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line);border-radius:7px;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s}button:focus-visible,summary:focus-visible{outline:2px solid #80dfff;outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}button:not(:disabled):hover{border-color:#65caff}button svg{pointer-events:none}.layout{height:100dvh;display:grid;grid-template-columns:340px minmax(0,1fr);grid-template-rows:72px minmax(0,1fr) 36px;overflow:hidden}.hud{grid-column:1/-1;display:flex;align-items:center;gap:24px;padding:0 24px;border-bottom:1px solid var(--line);background:linear-gradient(110deg,#07111e,#102039 70%,#08121f);z-index:10}.hud-brand{display:flex;gap:14px;align-items:center;min-width:292px}.mark{color:var(--accent)}.brand{font-weight:800;font-size:25px;letter-spacing:.23em;text-transform:uppercase}.hud-tag{font-size:9px;letter-spacing:.2em;color:#48ccff;text-transform:uppercase}.hud-mid{display:flex;gap:18px;align-items:center;flex:1;min-width:0}.solo-label{font-size:11px;letter-spacing:.08em;white-space:nowrap;color:var(--muted)}.hud-obj{display:flex;align-items:center;gap:9px;padding:8px 13px;border-radius:5px;font-size:14px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border:1px solid #6a5427;background:#312b1c;color:#ffd768}.hud-obj.obj-CHEAPEST{background:#142e2b;color:#62e7ae;border-color:#2b6550}.hud-obj.obj-BUDGET{background:#251f3b;color:#cba2ff;border-color:#654b83}.hud-blurb{color:var(--muted);font-size:12px;max-width:270px}.hud-clock{white-space:nowrap;background:#182d4e;border:1px solid #345077;border-radius:8px;padding:7px 14px;font-size:22px;font-weight:650;font-variant-numeric:tabular-nums}.hud-tools,.row{display:flex;gap:8px;align-items:center}.icon-btn{width:32px;height:32px;background:transparent;display:grid;place-items:center}.ghost{background:#102137;padding:9px 12px}.primary{background:linear-gradient(#0dbdff,#009be0);border-color:#00b6f4;color:#fff;font-weight:700;padding:13px 16px;width:100%;box-shadow:0 3px 18px #00b5f414}.primary:not(:disabled):hover{filter:brightness(1.12)}.panel{background:#081321;border-right:1px solid var(--line);padding:18px;overflow:auto;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;scrollbar-color:#29445f transparent}.od,.timeline,.stats-card,.result{border:1px solid var(--line);background:linear-gradient(130deg,#101f34,#091523);border-radius:9px;padding:16px;box-shadow:inset 0 1px #ffffff05}.od{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;min-height:92px;flex-shrink:0}.od-city{display:flex;gap:8px;align-items:center;min-width:0}.od-city>div{min-width:0}.od .place-name{overflow-wrap:anywhere;font-size:14px}.od .place-sub{font-size:10px}.od-arrow{font-size:23px;color:#aec9ed}.place-name{font-weight:650;font-size:14px}.place-sub,.muted{color:var(--muted);font-size:12px}.dot{height:25px;width:25px;display:grid;place-items:center;background:#163b59;border:1px solid #59cfff;border-radius:50%;font-size:14px;font-weight:800;color:#041222;flex:none;position:relative;z-index:1}.dot.green{background:var(--good);border-color:var(--good)}.dot.red{background:var(--bad);border-color:var(--bad)}.dot.stop{height:13px;width:13px;margin:6px;border:2px solid #effaff;background:#1a91ee;box-shadow:0 0 9px #42caff88}.timeline{padding:14px;flex-shrink:0}.timeline h3{display:flex;justify-content:space-between;align-items:center}.timeline h3 .muted{letter-spacing:0;text-transform:none}h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#c1d9fa;margin:0 0 14px}.tl{list-style:none;padding:0;margin:0 0 14px}.tl-node,.tl-leg{display:flex;align-items:center;gap:12px;min-height:32px}.tl-block{border-left:2px solid #4f96ce;margin-left:12px;padding:8px 0 4px;position:relative}.tl-block>.tl-node{margin-left:-13px;margin-top:6px}.tl-veh{display:flex;align-items:center;gap:10px;padding-left:22px}.leg-icon{width:32px;height:32px;display:grid;place-items:center;border:1px solid;border-radius:5px;background:#152946;flex:none}.vehicle-icon{width:24px;height:24px;display:block}.pending{opacity:.48}.pending:before{content:"";height:24px;width:2px;background:#3a4d68;position:absolute;margin-left:12px;margin-top:-36px}.pending{margin-top:24px}.hint{color:var(--muted);font-size:12px;margin:8px 0 12px}.add-leg{width:100%;color:#bddbff;margin-top:10px}.stats-card{padding:5px 14px}.totals{margin:0}.totals>div{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #1c2e45;gap:8px}.totals>div:last-child{border:0}.totals dt{color:var(--muted)}.totals dd{margin:0;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.totals dt:before{content:"◇";color:#d2e7ff;display:inline-block;width:27px;font-size:17px}.totals>div:nth-child(2) dt:before{content:"＄";color:var(--good)}.submit-bar{margin-top:auto;display:grid;gap:10px}.submit-bar .row>*{flex:1}.budget{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line)}.budget-row{display:flex;justify-content:space-between;font-variant-numeric:tabular-nums}.budget-bar{height:7px;margin:9px 0;background:#1e3146;overflow:hidden;border-radius:3px}.budget-fill{height:100%;background:var(--good);transition:width .6s cubic-bezier(.22,1,.36,1)}.budget.warm .budget-fill{background:#ffd36a}.budget.tight .budget-fill,.budget.over .budget-fill{background:var(--bad)}.budget-status{font-size:11px;color:var(--muted)}.over-text,.budget-status.over{color:var(--bad)}.arrived-banner{color:var(--good);margin:0;font-size:12px}.stage{position:relative;min-width:0;min-height:0;background:#071624}.stage-inner,.stage .map{position:absolute;inset:0}.hop-card{position:absolute;z-index:6;top:100px;right:20px;width:320px;max-height:calc(100% - 180px);overflow:auto;background:#0b1728f5;border:1px solid #35516e;border-radius:9px;padding:12px;box-shadow:0 16px 40px #0007;animation:panel-enter .65s cubic-bezier(.22,1,.36,1) .15s both}.hop-head{min-height:112px;padding:18px 12px;display:flex;justify-content:space-between;gap:8px;border-radius:6px;background:radial-gradient(ellipse at top right,#22436a,#0b1d32 70%);border:1px solid #2b4058;position:relative}.hop-head .place-name{font-size:25px;line-height:1.2;margin:7px 0}.destination-kicker{font-size:9px;letter-spacing:.2em;color:#79c3f6}.hop-from{margin:12px 2px;color:#c7d9ef;font-size:12px}.options{display:grid;gap:6px;margin-bottom:12px}.option{display:flex;align-items:center;gap:10px;background:#101d2e;border-color:#233b55;padding:10px;text-align:left;min-height:54px}.option.on{border-color:var(--mode);background:color-mix(in srgb,var(--mode) 16%,#0c1a2c);box-shadow:0 0 14px color-mix(in srgb,var(--mode) 15%,transparent)}.option-body{display:grid;gap:2px;flex:1}.option-name{font-size:12px;font-weight:600}.option-cost{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.option.dead{opacity:.48}.option-icon{display:grid;place-items:center}.badge{font-size:8px;padding:3px 5px;border-radius:3px;color:#dceaff;background:#ffffff10;text-transform:uppercase;letter-spacing:.03em}.warn{color:#ffd477}.hop-card>.primary{background:var(--mode);border-color:var(--mode);box-shadow:0 0 18px color-mix(in srgb,var(--mode) 20%,transparent)}.map-chrome{position:absolute;left:20px;right:20px;bottom:34px;display:flex;align-items:flex-end;gap:20px;pointer-events:none}.legend{display:grid;gap:5px;padding:12px;background:#091626eb;border:1px solid #29445f;border-radius:7px;min-width:112px}.legend span{display:flex;align-items:center;gap:10px;font-size:10px;text-transform:capitalize;color:#c6d7ec}.legend i{display:block;width:28px;height:3px;border-radius:2px;box-shadow:0 0 6px currentColor}.map-tip{margin:0 auto;align-self:flex-end;padding:12px 18px;border:1px solid #29445f;background:#081625e8;border-radius:7px;color:#a9c7e9;font-size:11px}.map-tip:before{content:"✧  TIP  ";color:#ffd36a;white-space:pre;font-weight:700}.map-fit{pointer-events:auto;white-space:nowrap;background:#0a1b30}.game-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:0 22px;gap:16px;font-size:9px;color:#8faacc;letter-spacing:.09em}.game-footer .muted{font-size:9px}.game-footer details{position:relative;letter-spacing:0}.game-footer summary{cursor:pointer}.game-footer details p{position:absolute;bottom:20px;right:0;width:310px;padding:18px;background:#102039;border:1px solid var(--line);border-radius:8px;font-size:13px;z-index:20;color:var(--text)}.result{animation:enter .6s cubic-bezier(.22,1,.36,1)}.compare-row{display:grid;grid-template-columns:.7fr 1fr 1fr;gap:6px;padding:9px 0;border-bottom:1px solid #233a53;font-variant-numeric:tabular-nums;font-size:12px}.compare-row.head{font-size:9px;text-transform:uppercase;color:var(--muted)}.score-block{margin:22px 0 10px;display:flex;align-items:baseline;gap:8px}.totals-label{color:var(--muted);text-transform:uppercase;font-size:10px}.score{font-size:52px;font-weight:800;color:#67ccff;line-height:1}.score-max{color:var(--muted)}.verdict{font-size:18px;font-weight:700}.coach{color:var(--muted);font-size:12px;margin:8px 0 22px}.perfect{color:#ffe18b}.great{color:var(--good)}.poor{color:#ff8998}.tl-leg{padding:8px 0}.lock{padding:32px 10px;text-align:center}.lock .brand{font-size:17px}.burst{display:none}.intro{position:absolute;z-index:8;left:50%;top:30%;transform:translate(-50%);padding:25px 45px;min-width:280px;text-align:center;border:1px solid #385f83;background:#09182bf0;border-radius:8px;pointer-events:none;animation:fade-intro 2.4s forwards}.intro-kicker{font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase}.intro-city{font-size:32px;font-weight:700}.intro-sub{color:var(--muted)}.intro-obj{color:#6ad5ff;margin-top:10px}.toast{position:absolute;bottom:95px;left:50%;transform:translate(-50%);background:#112841;border:1px solid #4b91ba;padding:13px 18px;border-radius:7px;z-index:20;max-width:450px;box-shadow:0 8px 30px #0005}.splash{height:100%;display:grid;place-content:center;text-align:center}.error{color:var(--bad)}.craft{width:32px;height:32px;filter:drop-shadow(0 0 6px #b158ff);pointer-events:none}.leg-in{animation:enter .5s cubic-bezier(.22,1,.36,1)}.maplibregl-popup-content{background:#10213a!important;color:#edf5ff;border:1px solid #36587a;border-radius:6px!important;padding:9px 12px!important}.maplibregl-popup-tip{border-top-color:#10213a!important;border-bottom-color:#10213a!important}.pop-meta{font-size:11px;color:#a5c3e4}.maplibregl-ctrl-group{background:#0b1a2b!important;border:1px solid #375671!important;box-shadow:none!important}.maplibregl-ctrl-group button{width:34px!important;height:34px!important}.maplibregl-ctrl-icon{filter:invert(1)}.maplibregl-ctrl-attrib{font-size:9px!important}.maplibregl-ctrl-top-right{top:12px!important;right:10px!important}@keyframes enter{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes fade-intro{0%,70%{opacity:1}to{opacity:0}}@media(min-width:1700px){.layout{grid-template-columns:380px 1fr}.panel{padding:22px}.hop-card{width:350px;top:130px}.hud-brand{min-width:332px}}@media(max-width:1350px){.layout{grid-template-columns:310px 1fr;grid-template-rows:64px minmax(0,1fr) 32px}.hud{gap:16px;padding:0 18px}.hud-brand{min-width:258px}.solo-label{display:none}.hud-blurb{font-size:11px}.hop-card{width:290px;top:94px}.map-tip{max-width:310px}.panel{padding:14px;gap:12px}.hud-clock{font-size:18px}}@media(max-width:1050px){.hud-blurb,.map-tip{display:none}.map-fit{margin-left:auto}.hop-card{right:12px}.hud-brand{min-width:230px}.brand{font-size:21px}.hud-mid{gap:8px}.hud{gap:12px}.game-footer>span:nth-child(2){display:none}}@media(max-width:760px){.layout{grid-template-columns:1fr;grid-template-rows:60px minmax(280px,1fr) 260px 30px}.hud{padding:0 10px;gap:8px}.hud-brand{min-width:0}.hud-brand .mark,.hud-tag,.hud-clock,.hud-tools .icon-btn{display:none}.brand{font-size:17px}.hud-mid{justify-content:center}.hud-obj{font-size:11px;padding:5px}.hud-tools .ghost{font-size:10px;padding:6px}.stage{grid-row:2}.panel{grid-row:3;display:grid;grid-template-columns:1fr 1fr;overflow:auto;padding:10px;gap:10px}.od{grid-column:1/-1;min-height:65px}.timeline{grid-row:span 2}.stats-card{padding:4px 10px}.hop-card{top:10px;max-height:calc(100% - 20px);width:260px}.hop-head{min-height:70px;padding:10px}.hop-head .place-name{font-size:19px}.option{min-height:42px;padding:5px}.map-chrome{bottom:28px;left:10px;right:10px}.legend{display:none}.game-footer{padding:0 10px}.game-footer details p{width:270px}.result{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:761px){.panel{overflow:hidden}.timeline{min-height:130px;flex:1;overflow:auto;scrollbar-width:thin;scrollbar-color:#29445f transparent}.stats-card,.submit-bar{flex-shrink:0}.submit-bar{margin-top:0}}@media(min-width:761px)and (max-height:800px){.panel{gap:10px;padding:14px}.od{min-height:76px;padding:12px}.totals>div{padding:7px 0}.timeline{padding:12px}.primary{padding:10px 14px}.hud{height:64px}.hop-card{top:82px;max-height:calc(100% - 100px)}.hop-head{min-height:80px;padding:12px}.hop-head .place-name{font-size:22px}.option{min-height:46px;padding:7px}}.stats-card>.budget{padding:10px 0 8px;margin:0;border-top:0;border-bottom:1px solid var(--line)}.od .place-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.od-city>div{flex:1}.panel>.result{min-height:0;overflow:auto}.stats-card .budget-row{font-size:12px}.hop-head:has(.city-photo){min-height:128px;align-items:flex-end;overflow:hidden;background:#0b1d32}.city-photo{position:absolute;inset:0;border-radius:inherit;overflow:hidden}.city-photo img{height:100%;width:100%;object-fit:cover;display:block}.city-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 20%,#061321ee);pointer-events:none}.hop-head>div:not(.city-photo){z-index:1;position:relative;pointer-events:none}.hop-head>.icon-btn{align-self:flex-start;z-index:2;background:#071321b8}.photo-credit{position:absolute;top:6px;left:7px;max-width:calc(100% - 52px);font-size:9px;line-height:1.4;color:#fff;background:#0009;padding:3px 6px;border-radius:3px;z-index:2;text-decoration:none}.photo-credit:hover{text-decoration:underline}.hop-head:has(.city-photo) .destination-kicker,.hop-head:has(.city-photo) .place-name,.hop-head:has(.city-photo) .place-sub{color:#f3f7fc;text-shadow:0 1px 8px #000a}.sound-settings{position:relative;font-size:12px}.sound-settings summary{cursor:pointer;padding:7px;border:1px solid var(--line);border-radius:6px}.sound-popover{position:absolute;right:0;top:40px;width:220px;padding:16px;background:#102039;border:1px solid #35516e;border-radius:8px;box-shadow:0 10px 30px #0008;display:grid;gap:14px;z-index:30}.sound-popover label{display:grid;grid-template-columns:1fr auto;gap:7px}.sound-popover input{grid-column:1/-1;width:100%;accent-color:#65caff}.sound-popover output{color:var(--muted)}.hud-obj select{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;background:transparent;border:0;cursor:pointer;max-width:125px;padding:2px 4px}.hud-obj select option{background:#102039;color:var(--text)}.hud-obj select:focus-visible{outline:2px solid #80dfff;outline-offset:4px;border-radius:3px}@keyframes panel-enter{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.option:not(:disabled):hover{transform:translateY(-2px)}.option:not(:disabled):active,.primary:not(:disabled):active{transform:scale(.98)}.toast{top:20px;bottom:auto;pointer-events:none;animation:enter .4s ease-out}@media(max-width:760px){.hud-obj{gap:3px}.hud-obj select{max-width:98px}.toast{top:12px;max-width:calc(100% - 90px);font-size:12px}}.hop-head{min-height:128px;align-items:flex-end;overflow:hidden}.city-photo{animation:photo-enter .6s ease-out}@keyframes photo-enter{0%{opacity:0}to{opacity:1}}@media(max-width:760px),(max-height:800px){.hop-head,.hop-head:has(.city-photo){min-height:130px}}.arrive-card{position:absolute;z-index:12;left:50%;top:22%;transform:translate(-50%);width:min(340px,calc(100% - 32px));display:grid;gap:10px;padding:20px 22px;background:#0b1728f5;border:1px solid #4b91ba;border-radius:10px;box-shadow:0 16px 40px #0007;text-align:center;animation:enter .22s ease-out}.arrive-kicker{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--good)}.arrive-city{font-size:26px;font-weight:750;line-height:1.15}.arrive-copy{margin:0 0 4px;color:var(--muted);font-size:13px}.route-meters{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:left}.route-meter{display:grid;gap:2px;padding:10px 12px;border:1px solid #343a4b;background:#141925}.route-meter-kicker{font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.route-meter strong{font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.15}.route-meter.time strong{display:flex;align-items:baseline;gap:1px}.route-meter.time b{font-weight:800}.route-meter.time small{margin-right:5px;font-size:11px;font-weight:700;color:var(--muted)}.route-meter-bar{display:block;height:5px;margin-top:6px;overflow:hidden;background:#252c3d}.route-meter-bar i{display:block;height:100%;background:var(--accent)}.route-meter.over strong{color:var(--bad)}.route-meter.over .route-meter-bar i{background:var(--bad)}.map-style{pointer-events:auto;display:flex;overflow:hidden;border:1px solid #29445f;border-radius:7px;background:#0a1b30}.map-style button{border:0;border-radius:0;background:transparent;color:#c6d7ec;padding:8px 12px;font-size:12px;font-weight:650}.map-style button.on{background:#edf2f7;color:#1a2330}.map-style button:not(.on):hover{background:#16324d}:root{--ink-950:#0a0e19;--ink-900:#0f1422;--ink-850:#181e2d;--ink-700:#323a4e;--ink-600:#4a5267;--ink-400:#a3abbe;--coral-500:#ff8255;--coral-400:#ff9e78;--coral-300:#ffad8b;--magenta-500:#dc5dd4;--red-500:#fa5f6d;--mint-400:#61e9a6;--cream-50:#f5f1e8;--cream-100:#eee9dc;--bg:var(--ink-950);--panel:var(--ink-900);--panel-2:var(--ink-850);--line:var(--ink-700);--line-strong:var(--ink-600);--text:var(--cream-50);--muted:var(--ink-400);--paper:var(--cream-100);--accent:var(--coral-500);--accent-hover:var(--coral-400);--accent-text:var(--coral-300);--on-accent:var(--ink-950);--good:var(--mint-400);--bad:var(--red-500);--dest:var(--magenta-500);--on-dest:var(--ink-950);--orange:var(--dest);--display:"Avenir Next",Inter,system-ui,sans-serif}body{background:radial-gradient(circle at 75% 0,#262e40 0,transparent 28%),var(--bg)}button{border-radius:2px}.layout{grid-template-columns:352px minmax(0,1fr);grid-template-rows:68px minmax(0,1fr) 34px}.hud{padding:0 20px;background:#0d121e;border-color:var(--line);gap:20px}.hud-brand{min-width:310px}.hud-brand .mark{color:var(--accent)}.brand{font-size:23px;letter-spacing:.28em}.hud-tag{color:#acb4c7;font-size:8px;letter-spacing:.28em}.solo-label{font-size:9px;color:#7f8698;letter-spacing:.18em;font-weight:800}.hud-obj{background:#28251b;border-color:#5f5436;color:#f7d466;padding:7px 10px}.hud-obj.obj-CHEAPEST{background:#16291f;color:#8df0b9;border-color:#315f48}.hud-obj.obj-BUDGET{background:#2a1d26;color:#ff9eb2;border-color:#714354}.hud-blurb{font-size:11px;max-width:250px}.hud-clock{font-size:17px;background:#191e2c;border-color:#394052;border-radius:2px;padding:7px 11px;color:#f1ebe3}.ghost{background:#171c29;border-color:#3d4455}.new-run{border-color:#9a5e4b;color:var(--accent);font-weight:700}.panel{grid-row:2;background:#0e131f;border-color:var(--line);padding:16px;gap:12px}.stage{grid-row:2;background:#0d1220}.game-footer{grid-row:3;background:var(--bg);border-color:#2b3140;color:#787f90}.od,.timeline,.stats-card,.result{background:#141925;border-color:#343a4b;border-radius:3px;box-shadow:none}.od{position:relative;overflow:hidden}.od:before{content:"LIVE ROUTE";position:absolute;top:0;left:0;background:var(--accent);color:#141c30;font-size:7px;font-weight:900;letter-spacing:.16em;padding:2px 8px}.dot{background:#202737;border-color:#686f80;color:#f5f1e8}.dot.green{background:var(--good);border-color:var(--good);color:var(--on-accent)}.dot.red{background:var(--dest);border-color:var(--dest);color:var(--on-dest)}h3{color:#d6d1c8}.totals>div{border-color:#292f3e}.totals dt:before{color:#787f90}.timeline .hint{border-left:2px solid var(--accent);padding-left:10px}.primary{border-radius:2px;background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:none;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.primary:not(:disabled):hover{filter:brightness(1.08);box-shadow:0 0 0 3px #ff825522}.hop-card{background:#0f1421f5;border-color:#4c5469;border-radius:3px}.hop-head{border-radius:1px;border-color:#394052}.option{border-radius:2px;background:#161b28;border-color:#343a4b}.option.on{background:color-mix(in srgb,var(--mode) 13%,#141825)}.map-style,.legend,.map-tip,.map-fit{border-radius:2px;background:#0f1523e8;border-color:#444c5f}.map-style button.on{background:var(--paper);color:#141825}.map-tip:before{color:var(--accent)}.intro{border-radius:2px;border-color:#5a6277;background:#0f1523f2}.intro-kicker{color:var(--accent)}.intro-obj{color:#f5d56b}.toast{border-radius:2px;background:#171d2c;border-color:#a46653;color:#fcf6ee}.score-block{margin-bottom:6px}.score{color:var(--accent)}@media(max-width:1050px){.layout{grid-template-columns:310px minmax(0,1fr)}.hud-brand{min-width:230px}}@media(max-width:760px){.layout{grid-template-columns:1fr;grid-template-rows:60px minmax(280px,1fr) 260px 30px}.stage{grid-row:2}.panel{grid-row:3}.game-footer{grid-row:4}.hud{grid-row:1}.hud-tools{margin-left:auto}.new-run{padding:6px}.od:before{display:none}}@media(min-width:761px)and (max-height:850px){.panel{gap:8px;padding:12px}.od{min-height:70px;padding:11px}.timeline{min-height:92px;padding:10px}.timeline h3{margin-bottom:8px}.add-leg{display:none}.stats-card .totals>div{padding:5px 0}.submit-bar{gap:6px}}.fx-layer{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:40}.fx-hit{position:fixed;z-index:41;pointer-events:none;transform:translate(-50%,-130%);padding:8px 13px;border:1px solid #6ad5a0;background:#12241cf2;color:#8cf0b8;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:11px;border-radius:3px;white-space:nowrap;animation:fx-hit .95s ease-out forwards;box-shadow:0 8px 24px #0006}@keyframes fx-hit{0%{opacity:0;translate:0 10px;scale:.86}18%{opacity:1;translate:0 0;scale:1}72%{opacity:1}to{opacity:0;translate:0 -18px}}.fx-finish-flash{position:fixed;inset:0;z-index:39;pointer-events:none;background:radial-gradient(circle at 64% 42%,#ff825555 0,transparent 8%,#ff825518 18%,transparent 42%);animation:finish-flash 1.2s ease-out forwards}@keyframes finish-flash{0%{opacity:0;transform:scale(.75)}18%{opacity:1}to{opacity:0;transform:scale(1.35)}}.finish-shade{position:absolute;inset:0;z-index:18;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 42%,#262f46cf 0,#090e1bd9 52%,#050814e8);animation:finish-shade-in .35s ease-out both}.finish-moment{position:relative;width:min(470px,100%);overflow:hidden;padding:34px 38px 28px;border:1px solid #d07856;background:linear-gradient(145deg,#1b2233 0,#0e1320 64%);box-shadow:0 28px 90px #000b,0 0 0 6px #ff82550a;text-align:center;animation:finish-card-in .58s cubic-bezier(.2,.9,.25,1.15) both}.finish-rays{position:absolute;z-index:0;left:50%;top:60px;width:430px;height:430px;translate:-50% -50%;opacity:.18;background:repeating-conic-gradient(from 0deg,var(--accent) 0 5deg,transparent 5deg 15deg);-webkit-mask-image:radial-gradient(circle,#000 0,transparent 66%);mask-image:radial-gradient(circle,#000 0,transparent 66%);animation:finish-rays 16s linear infinite}.finish-moment>*:not(.finish-rays){position:relative;z-index:1}.finish-stamp{width:74px;height:74px;margin:0 auto 20px;display:grid;place-items:center;border:2px solid var(--accent);background:#161d2d;color:var(--accent);transform:rotate(45deg);box-shadow:0 0 0 6px #ff825514,0 0 45px #ff825528;animation:finish-stamp-in .48s cubic-bezier(.2,1.4,.4,1) .2s both}.finish-stamp span{font-size:38px;font-weight:900;transform:rotate(-45deg)}.finish-label{color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.24em}.finish-moment h2{margin:6px 0 5px;font-size:34px;line-height:1.05;letter-spacing:-.04em;color:#ff8da1}.finish-moment p{max-width:340px;margin:0 auto;color:#b3bbcd}.finish-moment p b{color:var(--text)}.finish-score{display:flex;justify-content:center;align-items:center;gap:9px;margin:22px 0 18px;font-variant-numeric:tabular-nums}.finish-score strong{font-size:62px;line-height:.9;color:#f5f1e8;letter-spacing:-.06em}.finish-score>span{display:grid;text-align:left;color:#777e8f;font-size:12px}.finish-score small{font-size:7px;letter-spacing:.18em;color:#a5acbf}.finish-next{width:100%;min-height:52px;font-size:12px}.finish-next span{float:right;font-size:17px;line-height:1}.finish-review{margin-top:10px;padding:7px 12px;border:0;background:transparent;color:#a8b0c3;font-size:11px;text-decoration:underline;text-underline-offset:3px}.finish-review:hover{color:var(--text);border-color:transparent}.finish-moment.great .finish-stamp,.finish-moment.perfect .finish-stamp{box-shadow:0 0 0 7px #ff825518,0 0 70px #ff825560}.finish-moment.poor .finish-stamp{border-color:#f5f1e8;color:#f5f1e8}.finish-moment.poor .finish-score strong{color:#f5f1e8}@keyframes finish-shade-in{0%{opacity:0}to{opacity:1}}@keyframes finish-card-in{0%{opacity:0;transform:translateY(26px) scale(.92)}to{opacity:1;transform:none}}@keyframes finish-stamp-in{0%{opacity:0;transform:rotate(20deg) scale(.4)}to{opacity:1;transform:rotate(45deg) scale(1)}}@keyframes finish-rays{to{transform:rotate(360deg)}}@media(max-width:760px){.finish-shade{padding:12px}.finish-moment{padding:24px 20px 20px}.finish-stamp{width:58px;height:58px}.finish-stamp span{font-size:30px}.finish-moment h2{font-size:27px}.finish-score{margin:17px 0}.finish-score strong{font-size:48px}}@media(prefers-reduced-motion:reduce){.finish-rays,.fx-finish-flash{display:none}}.hop-card{display:flex;flex-direction:column;overflow:hidden}.hop-head,.hop-from,.hop-card>.primary{flex:none}.hop-card .options{flex:1 1 auto;min-height:0;overflow:auto;padding:3px;scrollbar-gutter:stable}.hop-card .option:focus-visible{outline-offset:-2px}.home-shell{min-height:100dvh;padding:42px 20px 70px;overflow:auto;background:radial-gradient(circle at 82% 4%,#313a51 0,transparent 28%),radial-gradient(circle at 4% 75%,#1f2536 0,transparent 24%),var(--bg)}.home-card{width:min(860px,100%);margin:0 auto;padding:30px;border:1px solid #3d4455;background:#0f1420ef;box-shadow:0 28px 100px #0008}.home-brand{display:flex;align-items:center;gap:14px;padding-bottom:24px;border-bottom:1px solid #2e3443}.home-brand .mark{font-size:25px;font-weight:900}.home-brand .brand{font-size:19px}.home-tag{margin-left:auto;color:#81889a;font-size:8px;letter-spacing:.22em;text-transform:uppercase}.home-heading{padding:34px 0 28px}.eyebrow{margin:0 0 6px;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.home-card h1{margin:0;font-size:clamp(30px,5vw,52px);line-height:1.02;letter-spacing:-.045em}.home-card h2{margin:2px 0 0;font-size:18px}.home-copy{max-width:570px;margin:12px 0 0;color:#a8afc2;font-size:14px}.route-setup{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:14px}.field{display:grid;gap:7px;color:#acb4c7;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.field input,.field select,.invite-box input{width:100%;min-height:48px;padding:0 13px;border:1px solid #454d5f;border-radius:2px;background:#181d2a;color:var(--text);font:600 13px var(--display);letter-spacing:0;text-transform:none}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.route-arrow{padding-bottom:12px;color:var(--accent);font-size:24px}.mode-field{width:240px;margin-top:16px}.solo-button{display:flex;justify-content:space-between;align-items:center;margin-top:24px;min-height:58px;font-size:13px}.solo-button span,.start-race span{font-size:9px;font-weight:700;letter-spacing:.04em;opacity:.65;text-transform:none}.multiplayer-box{display:grid;grid-template-columns:1fr 1.1fr;gap:18px 24px;margin-top:18px;padding:22px;border:1px solid #3b4254;background:#161a27}.username-field{align-self:end}.match-settings{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.1fr;gap:24px;padding-top:16px;border-top:1px solid #2f3546}.room-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.1fr;gap:24px}.room-actions button{min-height:48px}.form-error{grid-column:1/-1;margin:0;color:#ff8e89;font-size:12px}.public-rooms{margin-top:24px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-title h2{margin:0}.text-button{border:0;background:transparent;color:var(--accent);font-size:11px}.public-room{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:9px;padding:13px;background:#161a27;border-color:#343a4b;text-align:left}.public-room small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.public-room>span:last-child{color:var(--accent);font-size:11px;white-space:nowrap}.join-card{width:min(560px,100%)}.join-card .eyebrow{margin-top:28px}.join-card h1{font-size:36px}.join-card .field{margin-top:28px}.home-action{margin:18px 0 9px}.lobby-card{width:min(900px,100%)}.lobby-route{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:22px;margin:28px 0;padding:22px;border:1px solid #3a4152;background:#171b28}.lobby-route div{display:grid;gap:4px}.lobby-route small{color:var(--muted);font-size:8px;letter-spacing:.15em;text-transform:uppercase}.lobby-route strong{font-size:20px}.lobby-route>span{color:var(--accent);font-size:26px}.lobby-route>b{padding:7px 10px;background:#29261b;color:#f7d466;font-size:10px;text-transform:uppercase}.match-rules{display:flex;gap:10px;margin:-15px 0 24px}.match-rules span{padding:7px 10px;border:1px solid #3b4254;background:#141825;color:#9ba2b5;font-size:10px;text-transform:uppercase}.match-rules b{color:var(--accent)}.invite-box{padding:18px;background:#1d2331}.invite-box>label{display:block;margin-bottom:8px;color:#a6adc0;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.invite-box>div{display:grid;grid-template-columns:1fr 145px;gap:8px}.invite-box .primary{padding:8px}.lobby-players{margin-top:26px}.player-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}.player-tile{min-height:92px;display:grid;place-items:center;align-content:center;gap:3px;border:1px solid #3b4253;background:#181d2b}.player-tile>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#141c30;font-weight:900}.player-tile small{color:var(--accent);font-size:8px;text-transform:uppercase}.player-tile.empty{opacity:.4;border-style:dashed}.start-race{display:flex;justify-content:space-between;margin-top:24px;min-height:54px}.waiting-host{margin:24px 0 0;padding:17px;border-left:2px solid var(--accent);background:#181d2c;color:#bbc3d6}.race-board{position:absolute;z-index:5;top:14px;right:14px;width:280px;padding:9px;border:1px solid #4c5469;background:#0f1421ed;box-shadow:0 14px 40px #0006}.race-board-head{display:flex;justify-content:space-between;padding:3px 5px 9px;color:#8e95a7;font-size:8px;letter-spacing:.14em;text-transform:uppercase}.race-board-head b{color:var(--accent);font-size:12px;letter-spacing:.05em}.race-player{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;padding:8px 6px;border-top:1px solid #2f3546}.race-player.me{background:#ff82550c}.race-rank{color:#767d8e;font-weight:800;text-align:center}.race-player>div{display:grid;min-width:0}.race-player b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.race-player small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8e96a8;font-size:9px}.race-player>strong{color:var(--accent);font-size:10px;white-space:nowrap}.room-results{width:min(580px,100%);text-align:left}.room-results>h2,.room-results>p{text-align:center}.match-ranking{list-style:none;margin:24px 0;padding:0;border:1px solid #3b4254}.match-ranking li{display:grid;grid-template-columns:28px 1fr auto auto;align-items:center;gap:10px;padding:11px 12px;border-bottom:1px solid #2f3546}.match-ranking li:last-child{border-bottom:0}.match-ranking li.me{background:#ff82550d}.match-ranking li>span{color:#7f8697;font-weight:900}.match-ranking li>small{color:#9198aa}.match-ranking li>strong{color:var(--accent);white-space:nowrap}.match-result-actions{display:grid;gap:9px}.match-result-actions .ghost{min-height:46px;border-color:var(--accent);color:var(--accent)}.stage:has(.race-board) .hop-card{top:190px;max-height:calc(100% - 220px)}@media(max-width:760px){.home-shell{padding:0}.home-card{min-height:100dvh;padding:22px 16px;border:0}.home-heading{padding:28px 0 22px}.route-setup{grid-template-columns:1fr}.route-arrow{display:none}.mode-field{width:100%}.multiplayer-box,.match-settings,.room-actions{grid-template-columns:1fr}.player-grid{grid-template-columns:repeat(2,1fr)}.lobby-route{grid-template-columns:1fr auto 1fr}.lobby-route>b{grid-column:1/-1;text-align:center}.match-rules{flex-wrap:wrap}.invite-box>div{grid-template-columns:1fr}.race-board{top:8px;right:8px;width:220px}.race-player{padding:5px 3px}.match-ranking li{grid-template-columns:24px 1fr auto}.match-ranking li>small{display:none}.stage:has(.race-board) .hop-card{top:160px;max-height:calc(100% - 170px)}}.home-shell{position:relative;display:grid;place-items:center;padding:38px 20px;isolation:isolate;background:var(--bg)}.home-map{position:fixed;z-index:0;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(circle at 50% 42%,#252c3e 0,#0f1421 42%,#060a15)}.home-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#9eb29f0b 1px,transparent 1px),linear-gradient(90deg,#9eb29f0b 1px,transparent 1px);background-size:64px 64px}.home-map:after{content:"";position:absolute;z-index:1;inset:0;background:radial-gradient(circle at 50% 45%,transparent 0,#070d1c55 46%,#060a15d9 100%)}.home-map svg{position:absolute;inset:0;width:100%;height:100%;opacity:.72}.home-city-cloud{fill:#9fb7a3}.home-city-cloud path{opacity:.35}.home-city-cloud .home-city-accent{fill:var(--accent);opacity:.62}.home-demo-route>g>path{fill:none;stroke:var(--route-color);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:7 12;opacity:.48;filter:drop-shadow(0 0 3px var(--route-color))}.home-endpoint circle{fill:#161d2d;stroke:var(--good);stroke-width:3}.home-endpoint text{fill:var(--good);font:900 11px var(--display);text-anchor:middle}.home-endpoint.endpoint-b circle{stroke:var(--dest)}.home-endpoint.endpoint-b>text{fill:var(--dest)}.home-endpoint .home-endpoint-name{fill:#e1dbd3;font:700 13px var(--display);text-anchor:start;text-shadow:0 1px 5px #000}.home-endpoint.endpoint-b .home-endpoint-name{fill:#e1dbd3}.home-card{position:relative;z-index:2;transform:translateZ(0);width:min(760px,100%);max-height:calc(100dvh - 76px);overflow:auto;background:#0e1320f2;box-shadow:0 30px 110px #000b,0 0 0 1px #ff825508}.home-heading{padding:25px 0 20px}.home-card h1{font-size:clamp(30px,4vw,46px)}.multiplayer-box small{color:#8e95a7;font-size:8px;letter-spacing:.11em;text-transform:uppercase}.quick-actions{display:grid;grid-template-columns:1fr 190px;gap:9px}.quick-actions .solo-button{margin:0}.home-card .ghost{padding:12px 16px;border:2px solid var(--accent);color:var(--accent);font-size:11px;font-weight:700}.customize-button{min-height:58px}.route-customizer{margin-top:10px;padding:18px;border:1px solid #3b4254;background:#101522}.route-customizer .mode-field{display:inline-grid;margin-right:10px}.custom-play{display:inline-block;width:auto;min-height:48px;margin-top:16px;vertical-align:bottom}.multiplayer-box{margin-top:12px}@media(max-width:760px){.home-shell{padding:12px}.home-card{min-height:0;max-height:calc(100dvh - 24px);padding:20px 16px;border:1px solid #3d4455}.home-tag{display:none}.home-heading{padding:20px 0 16px}.quick-actions{grid-template-columns:1fr}.room-actions{gap:10px}.route-customizer{padding:13px}.custom-play{width:100%;margin-top:10px}.home-map{filter:saturate(.7) brightness(.58)}}a.hud-brand,a.home-brand,a.footer-home{color:inherit;text-decoration:none;cursor:pointer}.site-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;padding-top:16px;border-top:1px solid #2e3443}.site-links a,.footer-home{color:#8c93a5;text-decoration:none}.site-links a:hover,.footer-home:hover,a.hud-brand:hover .brand,a.home-brand:hover .brand{color:var(--text)}.site-page .home-card{max-height:calc(100dvh - 76px)}.site-page article{display:grid;gap:14px;padding:28px 0 8px;color:#b3bbcd}.site-page article h1{margin:0}.site-page article p{margin:0;max-width:58ch}.game-footer .site-links{margin:0;padding:0;border:0;gap:14px}.game-footer .site-links a{font-size:9px;letter-spacing:.09em;text-transform:uppercase}.panel-toggle,.route-chip{display:none}@media(min-width:761px){.panel-scrim{display:none}}@media(max-width:760px){button{touch-action:manipulation}.layout{grid-template-columns:1fr;grid-template-rows:52px minmax(0,1fr) auto}.hud{grid-row:1;z-index:20;padding:0 8px;padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));gap:8px}.hud-brand{min-width:0}.hud-brand .brand,.hud-tag{display:none}.hud-brand .mark{display:flex}.hud-brand .mark svg{width:28px;height:20px}.hud-mid{flex:1;min-width:0;justify-content:flex-start}.sound-settings{display:none}.hud-tools{flex:none;margin-left:auto}.stage{grid-row:2}.game-footer{grid-row:3;min-height:28px;padding:4px 10px max(4px,env(safe-area-inset-bottom))}.panel-toggle{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.panel{display:none;grid-row:2;position:fixed;z-index:16;inset:auto 0 0;width:100%;max-height:min(78dvh,calc(100dvh - 80px));overflow:auto;flex-direction:column;border-right:0;border-top:1px solid var(--line);padding:14px 14px max(18px,env(safe-area-inset-bottom));gap:12px}.layout.panel-open .panel{display:flex}.layout.panel-open .panel .od,.layout.panel-open .panel .timeline,.layout.panel-open .panel .stats-card,.layout.panel-open .panel .submit-bar,.layout.panel-open .panel .result{grid-column:auto;grid-row:auto}.panel .add-leg{display:none}.panel .od{min-height:0;padding:12px 12px 10px}.panel .timeline{padding:10px}.panel .stats-card .totals>div{padding:6px 0}.panel-scrim{position:absolute;inset:0;z-index:7;border:0;border-radius:0;background:#0508148f;cursor:pointer}.hop-card{top:auto;right:8px;left:8px;bottom:max(8px,env(safe-area-inset-bottom));width:auto;max-height:min(80dvh,calc(100% - 16px));padding:10px}.hop-head,.hop-head:has(.city-photo){min-height:76px;padding:8px}.hop-head .place-name{font-size:18px;margin:4px 0}.hop-from{margin:8px 2px}.option{min-height:44px;padding:8px}.stage:has(.hop-card) .map-chrome{display:none}.stage:has(.race-board) .hop-card{top:auto;max-height:min(52dvh,calc(100% - 140px))}.map-chrome{bottom:40px;left:10px;right:10px;z-index:4}.arrive-card{top:auto;bottom:16px;transform:translate(-50%);width:min(360px,calc(100% - 24px))}.stage:has(.arrive-card) .route-chip{display:none}.route-chip{display:block;position:absolute;z-index:5;top:10px;left:10px;margin:0;padding:0;border:0;background:transparent;min-width:176px;letter-spacing:0;text-transform:none}.route-chip .route-meters{pointer-events:none}.route-chip .route-meter{padding:8px 10px}.route-chip .route-meter strong{font-size:16px}}.home-explainer{margin-top:22px;padding-top:18px;border-top:1px solid #2e3443;color:var(--muted);font-size:13px;line-height:1.65}.home-explainer h2{color:var(--text);font-size:17px;margin:0 0 10px}.home-explainer p{margin:10px 0}.home-explainer a,.site-page article a,.guide-links a{color:var(--accent);text-underline-offset:3px}.site-page article h2{font-size:22px;margin:14px 0 0;color:var(--text)}.site-page article li{margin:10px 0;line-height:1.65}.guide-links{line-height:1.8;font-size:13px}.site-page article h3{font-size:15px;letter-spacing:0;text-transform:none;color:var(--text);margin:6px 0 0}.site-page article details{max-width:58ch;border:1px solid #2e3443;border-radius:7px;padding:10px 14px}.site-page article summary{cursor:pointer;color:var(--accent)}.site-page article details p{margin-top:8px}.daily-route li small,.daily-list li small{color:var(--muted)}.daily-nav{display:flex;flex-wrap:wrap;gap:8px 18px}.site-page article a.page-play{color:var(--on-accent);justify-self:start;margin-top:0}.post-meta{color:var(--muted);font-size:12px}.post-list{list-style:none;padding:0}.post-list p{margin:4px 0 0}.table-scroll{overflow-x:auto;max-width:100%}.site-page table{border-collapse:collapse;font-size:12px;min-width:520px}.site-page th,.site-page td{text-align:left;padding:8px 10px;border-bottom:1px solid #2e3443;vertical-align:top}.site-page th{color:var(--text)}.breadcrumbs{font-size:12px;line-height:1.6}.noscript-message{position:fixed;bottom:0;left:0;right:0;margin:0;padding:10px 16px;background:var(--panel);color:var(--text);z-index:30}.page-play{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 24px;margin-top:20px;text-decoration:none;font-family:var(--display);font-weight:800;text-transform:uppercase}.hud-clock small{font-size:10px;display:block}.finish-moment{max-height:calc(100dvh - 24px);overflow-y:auto}@media(max-width:760px){.panel-toggle,.hud-tools .new-run{min-height:44px}.hud-obj select{min-height:32px}}.journey-home{padding:18px;margin:0 0 20px;border:1px solid #975a48;background:linear-gradient(120deg,#262f46,#131827);border-radius:3px}.journey-home h2{font-size:22px;margin:5px 0 9px}.journey-home p{margin:7px 0;line-height:1.5}.journey-home small,.journey-home>a{display:block;margin-top:10px;color:#bac2d5;font-size:12px}.journey-home .primary{margin-top:8px}.tutorial-guide{position:absolute;top:14px;left:14px;z-index:6;max-width:310px;padding:14px 16px;border:1px solid #f09572;background:#111726f5;box-shadow:0 8px 24px #0005;border-radius:3px}.tutorial-guide b{color:var(--accent);font-size:13px}.tutorial-guide p{font-size:13px;line-height:1.5;margin:8px 0}.tutorial-guide button{font-size:12px}.practice-link{display:block;min-height:44px;margin:0 0 16px;text-align:left}.play-guide{position:absolute;z-index:5;bottom:100px;left:10px;right:auto;width:max-content;max-width:min(420px,calc(100% - 20px));max-height:calc(100% - 190px);overflow:auto;padding:10px 12px;background:#111726f5;border:1px solid #975a48;border-radius:3px;box-shadow:0 8px 24px #0005}.play-guide b{display:block;min-height:24px;padding-right:100px;font-size:14px;overflow-wrap:anywhere;color:var(--accent)}.play-guide p{margin:3px 0;font-size:12px;line-height:1.5}.play-guide summary{position:absolute;right:12px;top:0;cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--accent);text-decoration:underline;text-underline-offset:3px;font-size:12px}.play-guide details[open]{margin-top:10px;padding-top:6px;border-top:1px solid #424b63}.play-guide ol{padding-left:20px;margin:4px 0}.play-guide li{margin:8px 0}.stage:has(.play-guide) .legend,.stage:has(.play-guide) .map-tip{display:none}.tutorial-guide .text-button{min-height:44px}.hop-card>.primary{white-space:normal;flex-shrink:0;min-height:44px}.hop-card .icon-btn{width:44px;height:44px;flex-shrink:0}.tutorial-marker{background:var(--accent);color:#0f1523;border:2px solid #fff;padding:12px 16px;font-size:14px;font-weight:800;box-shadow:0 0 0 6px #ff825533;cursor:pointer;z-index:4}.journey-result{margin:12px 0;text-align:left;color:var(--text);font-size:13px}.finish-moment .journey-result p{max-width:none;margin:8px 0;line-height:1.5}.journey-result .result-explanation{font-size:15px;color:var(--text);line-height:1.5}.daily-result,.challenge-comparison{padding:10px 0;border-top:1px solid #424b63}.challenge-comparison details{margin:8px 0}.challenge-comparison summary{cursor:pointer}.challenge-comparison ol{padding-left:20px;line-height:1.8}.share-journey{margin-top:12px}.share-journey>.ghost{width:100%}.share-card{display:block;width:100%;height:auto;border:1px solid #8d523f;margin:10px 0}.share-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.share-actions a{display:inline-flex;align-items:center;padding:8px;text-decoration:none}.share-journey input{width:100%;min-width:0}.finish-shade{overflow-y:auto;align-items:safe center}.finish-moment{max-height:100%;flex-shrink:0}.finish-next{margin-top:12px}@media(max-width:760px){.tutorial-guide{top:73px;left:10px;right:52px;max-width:none;padding:10px 12px}.tutorial-guide p{font-size:12px}.play-guide{right:10px;width:auto;max-width:none}.stage:has(.tutorial-guide) .intro{display:none}.tutorial-marker{font-size:12px;padding:10px}.journey-home h2{font-size:20px}.finish-moment{padding:20px 16px}.finish-shade{padding:10px}}.journey-status{position:absolute;z-index:4;top:14px;left:14px;max-width:calc(100% - 74px);padding:10px 14px;background:#141a2aed;border:1px solid #9e614e;color:var(--accent);font-size:12px;line-height:1.4}.card-preview{margin:10px 0}.card-preview summary{cursor:pointer;color:var(--accent)}@media(max-width:760px){.journey-status{top:74px;left:10px;font-size:11px}}.route-meter.focus{border-color:#f09572;background:#181f30}.route-meter.focus strong,.route-meter.focus.time b{font-size:26px;color:var(--accent)}.route-meter:not(.focus) strong{font-size:16px;color:#c2cadd}.route-chip .route-meter.focus strong{font-size:22px}.hud-clock.quiet{font-size:12px;font-weight:500;color:#8990a2;background:transparent;border-color:#292f3f;padding:4px 8px}.hud-clock.quiet small{color:#7f8698}.hud-blurb{font-size:13px;color:#f1ebe3}.map-tip{color:#f5f1e8;font-size:13px}.tutorial-guide b{font-size:14px;color:#f5f1e8}.tutorial-guide p{font-size:15px;color:#f5f1e8}.arrive-copy{color:#f1ebe3;font-size:14px}.intro-sub{color:#f1ebe3;font-size:15px}.timeline .hint,.panel .hint{color:#f1ebe3;font-size:14px}.remove-leg{width:28px;height:28px;margin-left:auto;padding:0;border-color:transparent;background:transparent;color:var(--muted);font-size:20px;line-height:1}.remove-leg:hover{color:var(--bad);background:#ff536a14}.totals>div.focus dd{font-size:22px;color:var(--accent)}.budget-status.focus{font-size:18px;color:var(--accent);font-weight:700}@media(max-width:760px){.tutorial-guide p{font-size:13px}}.game-actions{position:absolute;z-index:7;bottom:0;left:0;right:0;min-height:60px;padding:8px 14px;display:flex;justify-content:center;gap:10px;background:#111726;border-top:1px solid #864b39}.game-actions button{min-height:44px;min-width:150px;font-size:14px;font-weight:700}.game-actions button>span:first-child{font-size:20px;margin-right:6px}.game-actions .hint-action{color:var(--accent);border-color:#d9805e;background:#252d44}.hint-count{margin-left:8px;font-size:12px;color:#eee9e0}.stage:has(.game-actions) .stage-inner{bottom:60px}.stage:has(.game-actions) .toast{top:auto;bottom:80px;width:max-content;max-width:calc(100% - 32px)}.tap-cue{display:flex;align-items:center;gap:10px;font-weight:700;color:#a1f6ff}.city-beacon{position:relative;display:inline-block;flex:none;width:10px;height:10px;margin:7px;border-radius:50%;background:#67efff;box-shadow:0 0 9px #67efff}.city-beacon:after{content:"";position:absolute;inset:-6px;border:2px solid #67efff;border-radius:50%;animation:city-pulse 2s ease-out infinite}@keyframes city-pulse{0%{transform:scale(.65);opacity:.8}to{transform:scale(1.7);opacity:0}}@media(prefers-reduced-motion:reduce){.city-beacon:after{animation:none;opacity:.6}}@media(max-width:760px){.game-actions{padding:8px;gap:8px}.game-actions button{min-width:0;flex:1;font-size:13px}.stage:has(.game-actions) .arrive-card{bottom:76px}}.map-zoom{display:none}@media(max-width:760px){.map-status{position:absolute;z-index:6;top:8px;left:8px;display:flex;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 16px);pointer-events:none}.map-status>*{pointer-events:auto}.route-chip{position:static;min-width:0;flex:0 1 auto}.route-chip .route-meters{gap:4px}.route-chip .route-meter{padding:3px 6px;gap:0}.route-chip .route-meter-kicker{font-size:7px;letter-spacing:.06em}.route-chip .route-meter strong,.route-chip .route-meter.focus strong,.route-chip .route-meter.focus.time b{font-size:13px}.route-chip .route-meter.time small{font-size:9px;margin-right:2px}.route-chip .route-meter-bar{display:none}.play-guide{bottom:40px;padding:6px 10px;max-height:42%}.play-guide>p{display:none}.play-guide b{min-height:0;line-height:28px;padding-right:96px}.play-guide summary{top:6px;min-height:28px}.game-actions{position:static;min-height:0;width:auto;padding:0;gap:4px;background:transparent;border:0}.game-actions button{flex:none;width:32px;min-width:32px;min-height:32px;padding:0;font-size:18px;line-height:1}.game-actions button>span:first-child{font-size:18px;margin:0}.game-actions .action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.game-actions .hint-action{display:flex;align-items:center;width:auto;padding:0 6px;gap:3px}.game-actions .hint-count{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;font-size:11px}.stage:has(.game-actions) .stage-inner{bottom:0}.stage:has(.game-actions) .arrive-card,.stage:has(.arrive-card) .map-chrome{bottom:16px}.stage:has(.arrive-card) .map-chrome{display:none}.stage:has(.game-actions) .toast{bottom:48px}.map-chrome{inset:auto 8px 6px;width:auto;flex-direction:row;align-items:center;justify-content:center;gap:4px;z-index:6}.map-fit{margin:0;padding:4px 8px;min-height:28px;font-size:11px}.map-style button{padding:4px 8px;font-size:11px}.map-zoom{display:grid;place-items:center;width:28px;min-width:28px;min-height:28px;padding:0;font-size:16px;line-height:1}.maplibregl-ctrl-top-right{display:none!important}.maplibregl-ctrl-bottom-right{top:8px!important;bottom:auto!important;right:6px!important}.maplibregl-ctrl-attrib.maplibregl-compact{margin:0}.game-footer{min-height:0;padding:2px 8px;gap:8px;flex-wrap:nowrap}.game-footer .footer-home .muted{display:none}.game-footer .site-links{flex-wrap:nowrap;gap:8px}.game-footer .site-links a{letter-spacing:.04em}}.hop-card .hop-from{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 2px 6px}.hop-card .hop-info{display:inline-grid;place-items:center;width:22px;height:22px;min-height:0;padding:0;border-radius:50%;border:1px solid currentColor;background:transparent;color:var(--muted);font:italic 700 12px/1 Georgia,serif;flex:none}.hop-card .hop-info:hover,.hop-card .hop-info[aria-expanded=true]{color:var(--text);background:#ffffff14}.hop-info-text{flex:none;margin:0 2px 8px;padding:8px 10px;border-left:2px solid var(--accent);background:#ffffff0a;color:#e3ded5;font-size:12px;line-height:1.45;animation:enter .25s ease-out}.hop-card .hint{margin:0 2px 8px;font-size:12px}.hop-card .options{gap:4px;margin-bottom:8px}.hop-card .option{min-height:44px;padding:6px 8px;gap:8px}.hop-card .option-body{gap:1px}.hop-card .option.dead{min-height:32px;padding:4px 8px}.hop-card .option.dead .option-body{display:flex;align-items:baseline;gap:8px}.hop-card .option.dead .option-icon{transform:scale(.8)}@media(min-width:761px){.hop-head,.hop-head:has(.city-photo){min-height:104px}}.hud-lang{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;overflow:hidden;font-size:11px;font-weight:700;letter-spacing:.06em}.hud-lang>*{padding:6px 8px;color:var(--muted);text-decoration:none}.hud-lang>a:hover,.hud-lang>a:focus-visible{color:var(--text);background:#ffffff10}.hud-lang>[aria-current]{color:var(--accent);background:#ffffff0d}@media(max-width:760px){.hud-lang>*{padding:6px}}.start-beacon{position:relative;width:0;height:0;pointer-events:none;z-index:3}.start-beacon-ring{position:absolute;left:-14px;top:-14px;width:28px;height:28px;border-radius:50%;border:3px solid #61e9a6;box-shadow:0 0 14px #61e9a6aa;animation:start-ring 2.4s cubic-bezier(.2,.7,.3,1) infinite;opacity:0}.start-beacon-ring:nth-child(2){animation-delay:.8s}.start-beacon-ring:nth-child(3){animation-delay:1.6s}@keyframes start-ring{0%{transform:scale(.6);opacity:.95}to{transform:scale(3.2);opacity:0}}.start-tip{position:absolute;left:50%;bottom:26px;width:max-content;max-width:min(270px,70vw);transform:translate(-50%);padding:10px 12px;background:#111726f7;border:1px solid #61e9a6;border-radius:6px;color:#f7f2e9;box-shadow:0 10px 28px #0009;pointer-events:auto;cursor:default;transform-origin:50% 100%;animation:start-tip-in .45s cubic-bezier(.34,1.4,.64,1) .3s both}.start-tip:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;margin-left:-5px;background:#111726;border-right:1px solid #61e9a6;border-bottom:1px solid #61e9a6;transform:rotate(45deg)}.start-tip.leaving{animation:start-tip-out .2s ease-in forwards}.start-tip-head{display:flex;align-items:center;gap:8px}.start-tip-head b{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:#61e9a6;color:#062211;font-size:12px}.start-tip-head strong{font-size:13px;line-height:1.3}.start-tip p{margin:6px 0 8px;font-size:12px;line-height:1.45;color:#c8d0e4}.start-tip-actions{display:flex;align-items:center;gap:10px}.start-tip .start-tip-ok{padding:5px 12px;min-height:0;border-color:#61e9a6;background:#61e9a6;color:#062211;font-size:12px;font-weight:700}.start-tip .start-tip-never{padding:4px 0;min-height:0;border:0;background:none;color:var(--muted);font-size:11px;text-decoration:underline;text-underline-offset:2px}.start-tip .start-tip-never:hover{color:var(--text)}@keyframes start-tip-in{0%{opacity:0;transform:translate(-50%,10px) scale(.85)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes start-tip-out{to{opacity:0;transform:translate(-50%,6px) scale(.95)}}@media(prefers-reduced-motion:reduce){.start-beacon-ring{animation:none;opacity:.7;transform:scale(1.4)}.start-beacon-ring+.start-beacon-ring{display:none}.start-tip,.start-tip.leaving{animation:none}}@media(max-width:760px){.start-tip{max-width:220px;padding:8px 10px}.start-tip p{font-size:11px}}.site-page .home-card{width:min(680px,100%)}.site-page article{font-size:15px;line-height:1.65}.site-page article p,.site-page article details{max-width:none}.site-page article h2{font-size:24px}.site-page table{font-size:13px}.site-page article a.page-play{width:auto;max-width:100%;justify-self:start;font-size:11px;line-height:1.4}.site-page .post-shot{margin:4px 0}.site-page .post-shot img{display:block;width:100%;height:auto;border:1px solid #2e3443;border-radius:4px}.site-page .post-shot figcaption{margin-top:8px;color:var(--muted);font-size:13px;line-height:1.5}.site-page .post-shot-open{position:relative;display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:4px}.site-page .post-shot-open:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-page .post-shot-hint{position:absolute;right:10px;bottom:10px;padding:5px 9px;border-radius:3px;background:#0a0e19e6;border:1px solid #3d4455;color:var(--text);font-size:11px;font-weight:700;letter-spacing:.04em;opacity:.85;transition:opacity .2s}.site-page .post-shot-open:hover .post-shot-hint{opacity:1;border-color:var(--accent)}.post-shot-dialog{width:min(1440px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #3d4455;border-radius:6px;background:#0f1420;color:var(--text);overflow:auto}.post-shot-dialog::backdrop{background:#000c}.post-shot-dialog img{display:block;width:100%;height:auto;max-height:calc(100dvh - 110px);object-fit:contain;cursor:zoom-out}.post-shot-dialog p{margin:0;padding:12px 56px 14px 16px;color:var(--muted);font-size:13px;line-height:1.5}.post-shot-close{position:absolute;top:8px;right:8px;width:40px;height:40px;display:grid;place-items:center;padding:0;border-radius:50%;background:#0a0e19e6;border:1px solid #3d4455;color:var(--text);font-size:24px;line-height:1}.post-shot-close:hover{border-color:var(--accent)}html:has(.post-shot-dialog[open]),html:has(.post-shot-dialog[open]) .home-card{overflow:hidden}.home-demo-route>g>path{animation:route-flow 1.6s linear infinite,route-breathe 10s ease-in-out var(--route-delay,0s) infinite}@keyframes route-flow{to{stroke-dashoffset:-19}}@keyframes route-breathe{0%,to{opacity:.18}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){.home-demo-route>g>path{animation:none}}.map-cam{pointer-events:auto;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border-radius:2px;background:#0f1523e8;border-color:#444c5f;color:#c6d7ec;transition:background .2s,border-color .2s,color .2s}.map-cam.on{background:color-mix(in srgb,var(--accent) 14%,#0f1523);border-color:color-mix(in srgb,var(--accent) 70%,#444c5f);color:var(--accent)}.map-cam svg{flex:none}@media(max-width:1050px){.map-cam{margin-left:auto}.map-cam~.map-fit{margin-left:0}}@media(max-width:760px){.map-chrome{gap:8px}.map-cam{padding:6px 9px;font-size:11px}}@media(min-width:761px){.game-actions{left:auto;right:16px;bottom:40px;min-height:0;padding:0;gap:8px;background:transparent;border:0}.game-actions button{min-width:0;min-height:44px;padding:0 16px;background:#111726f2;box-shadow:0 8px 24px -8px #000c,0 1px 3px #0008}.game-actions .hint-action{background:#1a2133f2}.stage:has(.game-actions) .stage-inner{bottom:0}.stage:has(.game-actions) .map-chrome{right:300px}.stage:has(.game-actions) .toast{bottom:104px}.stage:has(.game-actions) .hop-card{max-height:calc(100% - 210px)}}@media(min-width:761px)and (max-width:1199px){.game-actions{bottom:92px}.stage:has(.game-actions) .map-chrome{right:10px}.stage:has(.game-actions) .toast{bottom:150px}.stage:has(.game-actions) .hop-card{max-height:calc(100% - 260px)}}@media(min-width:761px)and (max-width:999px){.game-actions button:first-child{width:44px;padding:0}.game-actions button:first-child>span:first-child{margin:0}.game-actions button:first-child .action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media(min-width:761px){.maplibregl-ctrl-bottom-right{top:22px!important;bottom:auto!important;right:62px!important}.maplibregl-ctrl-bottom-right .maplibregl-ctrl-attrib{margin:0!important}.map-chrome,.game-actions{bottom:16px}.stage:has(.game-actions) .toast{bottom:80px}.stage:has(.game-actions) .hop-card{max-height:calc(100% - 180px)}}@media(min-width:761px)and (max-width:1199px){.game-actions{bottom:68px}.stage:has(.game-actions) .toast{bottom:126px}.stage:has(.game-actions) .hop-card{max-height:calc(100% - 230px)}}:root{--hud-font:"Chakra Petch","Avenir Next",Inter,system-ui,sans-serif;--hud-line:#2a3142;--hud-tile:#131927;--hud-sunk:#0a0e19;--ease-out:cubic-bezier(.16,1,.3,1);--side-w:352px}.obj-FASTEST{--obj:#f7d466}.obj-CHEAPEST{--obj:#8df0b9}.obj-BUDGET{--obj:#ff9eb2}::selection{background:#ff825566;color:#fff}.layout{grid-template-columns:var(--side-w) minmax(0,1fr)}@media(min-width:1700px){.layout{--side-w:380px}}@media(max-width:1350px){.layout{--side-w:310px}}@media(max-width:760px){.layout{grid-template-columns:1fr}}.hud{position:relative;gap:18px;padding:0 16px 0 0;background:linear-gradient(180deg,#121828,#0c111d);border-bottom:1px solid var(--hud-line)}.hud:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent 0,var(--accent) 14%,var(--obj,var(--accent)) 48%,transparent 82%);opacity:.75}.hud-brand{align-self:stretch;gap:12px;padding:0 20px;border-right:1px solid var(--hud-line);transition:background .25s var(--ease-out)}@media(min-width:761px){.hud-brand{width:var(--side-w);min-width:var(--side-w);flex:none}}.hud-brand:hover{background:#ffffff05}.hud-brand .mark{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #ff825559;border-radius:12px;color:var(--accent);background:radial-gradient(circle at 50% 115%,#ff825540,#ff82550d 70%);box-shadow:0 8px 20px -12px #ff8255;transition:transform .35s var(--ease-out)}.hud-brand:hover .mark{transform:translateY(-1px) rotate(-4deg)}.hud-brand-text{display:grid;gap:3px}.hud .brand{font-family:var(--hud-font);font-size:22px;font-weight:700;line-height:1;letter-spacing:.22em}.hud .hud-tag{font-size:9px;letter-spacing:.26em;color:#8f97a8}.hud-mid{gap:16px}.hud-obj{position:relative;height:40px;padding:0 12px;gap:8px;border-radius:10px;border:1px solid color-mix(in srgb,var(--obj) 42%,transparent);background:color-mix(in srgb,var(--obj) 11%,#121826);color:var(--obj);font-family:var(--hud-font);font-size:14px;font-weight:700;letter-spacing:.1em;cursor:pointer;transition:border-color .2s,background .2s,transform .2s var(--ease-out)}.hud-obj:hover{border-color:color-mix(in srgb,var(--obj) 75%,transparent);background:color-mix(in srgb,var(--obj) 16%,#121826)}.hud-obj:has(select:disabled){cursor:default}.hud-obj:focus-within{outline:2px solid #80dfff;outline-offset:3px}.hud-obj .hud-mark{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:color-mix(in srgb,var(--obj) 22%,transparent)}.hud-obj select{appearance:none;-webkit-appearance:none;padding:0 20px 0 0;margin-right:-20px;max-width:none;height:100%}.hud-obj select:focus-visible{outline:0}.hud-obj select:disabled{opacity:1;cursor:default}.hud-chev{display:grid;pointer-events:none;opacity:.8}.hud-blurb{max-width:320px;margin:0;font-size:13px;line-height:1.4;color:#c9cfdb;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(min-width:1051px){.hud-blurb{display:-webkit-box}}.hud-clock,.hud-clock.quiet{display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 12px;border:1px solid var(--hud-line);border-radius:10px;background:var(--hud-sunk);color:var(--text);font-size:inherit}.hud-clock>svg{color:var(--obj,var(--accent))}.hud-clock-body{display:grid;line-height:1.05}.hud-clock small,.hud-clock.quiet small{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8f97a8}.hud-clock b{font-family:var(--hud-font);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.04em}.hud-clock.quiet b{color:#c9cfdb}.hud-tools{gap:10px}.hud-lang{height:40px;border-color:var(--hud-line);border-radius:10px;background:#0f1422;padding:3px;gap:2px}.hud-lang>*{display:grid;place-items:center;height:100%;padding:0 9px;border-radius:7px}.hud-lang>[aria-current]{background:#ff82551f;color:var(--accent)}.hud-pod{display:inline-flex;align-items:center;gap:2px;height:40px;padding:3px;border:1px solid var(--hud-line);border-radius:10px;background:#0f1422}.hud-pod .icon-btn,.hud-pod .sound-settings summary{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:7px;background:transparent;color:#c6ccd8;list-style:none;transition:background .2s,color .2s}.hud-pod .sound-settings summary::-webkit-details-marker{display:none}.hud-pod .icon-btn:hover,.hud-pod .sound-settings summary:hover,.hud-pod .sound-settings[open] summary{background:#ffffff10;color:var(--text)}.hud-pod .icon-btn[aria-pressed=true]{color:var(--bad)}.sound-popover{top:44px;border-radius:12px;background:#121828;border-color:#3a4256;box-shadow:0 18px 40px -12px #000c}.sound-popover input{accent-color:var(--accent)}.new-run{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:var(--on-accent);font-family:var(--hud-font);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;box-shadow:inset 0 -3px #0000002e,0 8px 20px -10px #ff8255;transition:transform .2s var(--ease-out),box-shadow .2s,filter .2s}.new-run:not(:disabled):hover{border-color:var(--accent);transform:translateY(-1px);filter:brightness(1.06);box-shadow:inset 0 -3px #0000002e,0 12px 24px -10px #ff8255}.new-run:not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 -1px #0000002e,0 4px 10px -8px #ff8255}.new-run svg{transition:transform .5s var(--ease-out)}.new-run:hover svg{transform:rotate(180deg)}.panel{padding:16px;gap:12px;background:linear-gradient(180deg,#0e1320,#0b0f1a);border-right:1px solid var(--hud-line)}.od,.timeline,.result{border:1px solid var(--hud-line);border-radius:14px;background:var(--hud-tile);box-shadow:inset 0 1px #ffffff08,0 12px 28px -22px #000}.od:before{content:none}.od.ticket,.panel .od.ticket{display:block;min-height:0;padding:0;overflow:hidden}.ticket-row{display:grid;grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);align-items:start;gap:6px;padding:14px 14px 12px}.ticket .od-city{display:grid;gap:3px;min-width:0}.ticket .od-city.to{justify-items:end;text-align:right}.ticket .od-city .dot{margin-bottom:5px}.od.ticket .place-name{max-width:100%;font-family:var(--hud-font);font-size:19px;font-weight:700;line-height:1.1;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.od.ticket .place-sub{font-size:11px;color:#9aa2b3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ticket-path{display:flex;align-items:center;gap:3px;margin-top:6px;color:var(--accent)}.ticket-path i{flex:1;border-top:2px dotted #4a5267}.ticket-path svg{transform:rotate(90deg);animation:ticket-fly 2.8s ease-in-out infinite alternate}@keyframes ticket-fly{0%{translate:-3px 0}to{translate:3px 0}}.ticket-stub{position:relative;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;border-top:1px dashed #3a4256;background:#0f1421}.ticket-stub:before,.ticket-stub:after{content:"";position:absolute;top:-8px;width:14px;height:14px;border-radius:50%;background:#0d121e;border:1px solid var(--hud-line)}.ticket-stub:before{left:-8px}.ticket-stub:after{right:-8px}.ticket-mode{display:inline-flex;align-items:center;gap:6px;color:var(--obj);font-family:var(--hud-font);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.ticket-legs{font-size:11px;color:#9aa2b3;font-variant-numeric:tabular-nums}.timeline{padding:14px}.timeline h3{margin:0 0 10px;font-family:var(--hud-font);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#aeb5c4}.tl-block{border-left:2px solid color-mix(in srgb,var(--good) 45%,#3a4256)}.tl .place-name{font-weight:600}.tl-node.pending .dot{opacity:.5;box-shadow:0 0 0 3px #0000,0 0 0 1px #dc5dd4 inset}.tl-node.pending .place-name{color:#8f97a8}.leg-icon{width:34px;height:34px;border-radius:9px;background:var(--hud-sunk)}.tl-veh>div>.place-sub:first-child{color:var(--text);font-weight:600;font-size:12px}.tl-veh>div>.place-sub+.place-sub{color:#9aa2b3;font-variant-numeric:tabular-nums}.timeline .hint,.panel .timeline .hint{margin:12px 0 0;padding:10px 12px;border:1px dashed #3d4559;border-radius:10px;background:#ffffff05;font-size:13px;line-height:1.45;color:#d9dde6}.add-leg{border-style:dashed;border-radius:10px;background:transparent;color:#c9cfdb}.stats-card{padding:0;border:0;background:transparent;box-shadow:none}.stats-card .totals{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stats-card .totals>div,.stats-card .totals>div:last-child{display:grid;align-content:start;justify-content:stretch;gap:2px;padding:9px 12px;border:1px solid var(--hud-line);border-radius:12px;background:var(--hud-tile)}.stats-card .totals dt{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8f97a8}.stats-card .totals dt:before,.stats-card .totals>div:nth-child(2) dt:before{content:none}.stats-card .totals dd{font-family:var(--hud-font);font-size:18px;font-weight:600;color:var(--text)}.stats-card .totals>div.focus{position:relative;order:-1;grid-column:1/-1;padding:11px 14px;border-color:color-mix(in srgb,var(--obj) 45%,var(--hud-line));background:radial-gradient(140% 160% at 0 0,color-mix(in srgb,var(--obj) 13%,transparent),transparent 60%),var(--hud-tile)}.stats-card .totals>div.focus dt{color:color-mix(in srgb,var(--obj) 70%,#c9cfdb)}.stats-card .totals>div.focus dd{font-size:30px;font-weight:700;line-height:1.1;color:var(--obj)}.stats-card .totals>div.focus:before,.stats-card .totals>div.focus:after{content:"";position:absolute;width:10px;height:10px;border:2px solid var(--obj);pointer-events:none}.stats-card .totals>div.focus:before{top:-1px;left:-1px;border-right:0;border-bottom:0;border-top-left-radius:12px}.stats-card .totals>div.focus:after{right:-1px;bottom:-1px;border-left:0;border-top:0;border-bottom-right-radius:12px}.stats-card .totals dd.over-text{color:var(--bad)}.stats-card>.budget{margin:0 0 8px;padding:10px 12px;border:1px solid var(--hud-line);border-radius:12px;background:var(--hud-tile)}.submit-bar{gap:8px}.submit-route{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;border-radius:12px;font-family:var(--hud-font);font-size:14px;font-weight:700;letter-spacing:.12em;box-shadow:inset 0 -4px #0003,0 12px 26px -14px #ff8255;transition:transform .2s var(--ease-out),box-shadow .2s,filter .2s}.submit-route:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:inset 0 -4px #0003,0 16px 30px -14px #ff8255}.submit-route:not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 -1px #0003,0 4px 10px -8px #ff8255}.submit-route:disabled{opacity:1;background:transparent;border:1px dashed #4a5267;color:#9aa2b3;box-shadow:none}.submit-route.ready{animation:gate-open 2.4s var(--ease-out) infinite}@keyframes gate-open{0%{box-shadow:inset 0 -4px #0003,0 0 #ff825599}70%,to{box-shadow:inset 0 -4px #0003,0 0 0 12px #ff825500}}.submit-bar .row{gap:8px}.submit-bar .row button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border-radius:10px;border-color:var(--hud-line);background:var(--hud-tile);color:#d9dde6;font-size:12px;font-weight:600}.submit-bar .row button:not(:disabled):hover{border-color:#4a5267;background:#181f2f;color:var(--text)}.arrived-banner{font-size:13px;font-weight:600;color:var(--good)}.panel,.timeline{scrollbar-color:#323a4e transparent}@media(min-width:761px)and (max-height:850px){.ticket-row{padding:11px 12px 9px}.od.ticket .place-name{font-size:17px}.ticket-stub{padding:7px 12px}.stats-card .totals>div{padding:7px 10px}.stats-card .totals>div.focus dd{font-size:24px}.submit-route{min-height:46px}}@media(max-width:1350px){.hud{gap:14px}.hud-brand{padding:0 16px}.hud .brand{font-size:19px;letter-spacing:.18em}.hud-blurb{max-width:240px;font-size:12px}}@media(max-width:1180px){.hud-clock.quiet{display:none}}@media(max-width:760px){.hud{padding:0 8px;gap:8px}.hud-brand{padding:0;border-right:0}.hud-brand .mark{width:36px;height:36px;border-radius:10px}.hud-brand .mark svg{width:24px;height:17px}.hud-pod{display:none}.hud-obj{height:36px;padding:0 8px;font-size:12px;gap:5px}.hud-obj .hud-mark{width:20px;height:20px}.hud-lang{height:36px}.new-run{width:44px;padding:0;justify-content:center}.new-run span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.panel-toggle{border-radius:10px;height:36px;min-height:36px}.ticket-row{padding:12px}.od.ticket .place-name{font-size:17px}}@media(max-width:760px){.panel-toggle,.hud-tools .new-run{min-height:44px;height:44px}}@media(prefers-reduced-motion:reduce){.ticket-path svg,.submit-route.ready{animation:none}}.stats-card .totals:has(>.focus){grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.stats-card .totals:has(>.focus)>div:not(.focus){padding:7px 7px 6px;border-radius:10px}.stats-card .totals:not(:has(>.focus))>div:last-child:nth-child(odd){grid-column:1/-1}.stats-card .totals:has(>.focus)>div:not(.focus){padding:8px 10px}.stats-card .totals:has(>.focus)>div:not(.focus) dd{font-size:16px;white-space:nowrap}.stats-card .totals:has(>.focus)>div:not(.focus) dt{font-size:9px;letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-card .totals:has(>.focus)>div:not(.focus) dt{white-space:normal;overflow:visible;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;line-height:1.25}.submit-route{letter-spacing:.08em;line-height:1.2;text-align:center}@media(min-width:761px)and (max-height:850px){.ticket-stub{display:none}.timeline{min-height:120px}.stats-card .totals{gap:6px}.stats-card .totals>div.focus{display:flex;align-items:baseline;justify-content:space-between;padding:8px 12px}.stats-card .totals>div.focus dd{font-size:22px}.submit-route{font-size:12px}.submit-bar .row button{min-height:36px}}:root{--btn-radius:12px;--btn-radius-sm:10px;--btn-shade:inset 0 -3px 0 #00000033;--btn-glow:0 10px 24px -12px #ff8255;--btn-bg-2:#151b29;--btn-line-2:#3a4256}:is(.layout,.home-shell) :is(button,a).primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:1px solid var(--accent);border-radius:var(--btn-radius);background:var(--accent);color:var(--on-accent);font-family:var(--hud-font);font-size:13px;font-weight:700;letter-spacing:.1em;line-height:1.2;text-transform:uppercase;text-align:center;text-decoration:none;box-shadow:var(--btn-shade),var(--btn-glow);filter:none;transition:transform .2s var(--ease-out),box-shadow .2s,filter .2s,background .2s}:is(.layout,.home-shell) :is(button,a).primary:not(:disabled):hover{border-color:var(--accent);transform:translateY(-1px);filter:brightness(1.06);box-shadow:var(--btn-shade),0 14px 28px -12px #ff8255}:is(.layout,.home-shell) :is(button,a).primary:not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 -1px #0003,0 4px 10px -8px #ff8255}:is(.layout,.home-shell) button.primary:disabled{opacity:1;background:transparent;border:1px dashed #4a5267;color:#9aa2b3;box-shadow:none;filter:none}:is(.layout,.home-shell) button.primary.ready{animation:gate-open 2.4s var(--ease-out) infinite}:is(.layout,.home-shell) :is(.solo-button,.start-race,.finish-next).primary{justify-content:space-between;min-height:56px;font-size:14px}:is(.layout,.home-shell) :is(.solo-button,.start-race) span{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:none;opacity:.75}:is(.layout,.home-shell) .finish-next span{float:none;font-size:18px}:is(.layout,.home-shell) :is(button,a).ghost{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 16px;border:1px solid var(--btn-line-2);border-radius:var(--btn-radius-sm);background:var(--btn-bg-2);color:#e3e6ee;font-family:var(--display);font-size:13px;font-weight:600;letter-spacing:.01em;text-transform:none;text-decoration:none;box-shadow:none;transition:background .2s,border-color .2s,color .2s,transform .2s var(--ease-out)}:is(.layout,.home-shell) :is(button,a).ghost:not(:disabled):hover{border-color:#566079;background:#1b2233;color:var(--text)}:is(.layout,.home-shell) :is(button,a).ghost:not(:disabled):active{transform:translateY(1px)}:is(.layout,.home-shell) button.ghost:disabled{opacity:.45}:is(.layout,.home-shell) button.ghost.customize-button{min-height:56px;width:100%}:is(.layout,.home-shell) .ghost[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.layout .game-actions button.ghost,.layout .map-chrome .ghost,.layout .map-style{background:#111726f2;box-shadow:0 8px 24px -10px #000c}.layout .game-actions .hint-action{color:var(--accent);border-color:#ff825566}.layout .game-actions .hint-action:not(:disabled):hover{border-color:var(--accent);color:var(--accent)}.layout .game-actions .hint-count{margin-left:2px;padding:1px 6px;border-radius:6px;background:#ff82551f;color:var(--accent);font-family:var(--hud-font);font-size:11px;font-weight:700}.layout .map-cam.on{border-color:color-mix(in srgb,var(--accent) 70%,#3a4256);background:color-mix(in srgb,var(--accent) 14%,#111726);color:var(--accent)}.layout .map-style{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--btn-line-2);border-radius:var(--btn-radius-sm)}.layout .map-style button{min-height:36px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:#c6ccd8;font-size:12px;font-weight:600}.layout .map-style button.on{background:#ff82551f;color:var(--accent)}.layout .map-zoom{border-radius:var(--btn-radius-sm)}@media(min-width:761px){.layout .map-chrome .ghost,.layout .map-style{min-height:44px}}.layout .arrive-card{border-radius:16px;border-color:var(--btn-line-2);background:#111726f7;box-shadow:0 24px 60px -20px #000d}.layout .arrive-card>:is(.primary,.ghost){width:100%}:is(.layout,.home-shell) .text-button{min-height:44px;padding:0 2px;border:0;background:none;color:var(--accent-text);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}:is(.layout,.home-shell) .text-button:not(:disabled):hover{color:var(--accent-hover);border:0}.hud .new-run{min-height:0}.panel .submit-route{min-height:52px;font-size:14px}@media(min-width:761px)and (max-height:850px){.panel .submit-route{min-height:46px;font-size:12px}}.panel .submit-bar .row .ghost{min-height:40px;font-size:12px}@media(max-width:760px){.layout .hud .ghost.panel-toggle{min-height:44px;height:44px;padding:0 12px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}}@media(prefers-reduced-motion:reduce){:is(.layout,.home-shell) button.primary.ready{animation:none}}@media(min-width:761px){.layout .hud .ghost.panel-toggle,.layout .map-chrome .ghost.map-zoom{display:none}}@media(max-width:760px){.layout .map-chrome .ghost.map-zoom{display:grid;min-height:44px;min-width:44px;width:44px;padding:0}}.layout .map-chrome>:is(.map-style,.map-cam,.map-fit,.map-zoom){flex:none}.layout .map-chrome>.map-tip{min-width:0;flex:0 1 auto}.layout .map-chrome>:is(.legend,.map-tip){border-radius:var(--btn-radius-sm)}:root{--btn2-top:#2a3245;--btn2-bot:#1c2232;--btn2-line:#4b5570;--btn2-lip:inset 0 1px 0 #ffffff14,inset 0 -3px 0 #00000059;--btn2-drop:0 6px 14px -8px #000}:is(.layout,.home-shell) :is(button,a).ghost{border-color:var(--btn2-line);background:linear-gradient(180deg,var(--btn2-top),var(--btn2-bot));color:#f1f3f8;font-family:var(--hud-font);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--btn2-lip),var(--btn2-drop)}:is(.layout,.home-shell) :is(button,a).ghost:not(:disabled):hover{border-color:#66728f;background:linear-gradient(180deg,#323b51,#212839);color:#fff;transform:translateY(-1px);box-shadow:var(--btn2-lip),0 10px 18px -8px #000}:is(.layout,.home-shell) :is(button,a).ghost:not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 1px #ffffff0d,inset 0 -1px #00000059,0 2px 6px -4px #000}:is(.layout,.home-shell) button.ghost:disabled{opacity:1;background:#141926;border-color:#2c3344;color:#69718a;box-shadow:none}.layout .game-actions button.ghost,.layout .map-chrome .ghost{background:linear-gradient(180deg,#2a3245f5,#1c2232f5)}.layout .game-actions button.ghost:disabled{background:#141926e6}.layout .game-actions .hint-action{border-color:#ff825580;color:var(--accent-text)}.layout .map-cam.on{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 24%,#2a3245),color-mix(in srgb,var(--accent) 12%,#1c2232))}:is(.layout,.home-shell) .ghost[aria-expanded=true]{border-color:var(--accent);color:var(--accent-text)}.panel .submit-bar .row .ghost{font-size:11px}.layout .map-style{background:#0f1422f2;border-color:var(--btn2-line);box-shadow:inset 0 2px 4px #0006,var(--btn2-drop)}.layout .map-style button{font-family:var(--hud-font);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#aeb5c6}.layout .map-style button:not(.on):hover{color:#fff;background:#ffffff0d}.layout .map-style button.on{background:linear-gradient(180deg,var(--btn2-top),var(--btn2-bot));color:#fff;box-shadow:var(--btn2-lip),0 0 0 1px var(--btn2-line)}@media(min-width:1200px){.layout .stage:has(.game-actions) .map-chrome{right:356px}}.layout .stage:has(.hop-card) .map-chrome>.map-tip{display:none}@media(min-width:1200px)and (max-width:1599px){.layout .stage:has(.game-actions) .map-chrome>.map-tip{display:none}}.home-shell button.ghost.customize-button{white-space:nowrap;padding:0 14px;letter-spacing:.06em}@media(max-width:760px){.layout .map-chrome{gap:6px}.layout .map-chrome>:is(.map-style,.map-cam,.map-fit){flex:0 1 auto;min-width:0}.layout .map-chrome .ghost,.layout .map-style button{padding:0 9px;font-size:11px;letter-spacing:.04em;white-space:nowrap}.layout .map-cam svg{display:none}}@media(max-width:420px){.layout .map-chrome .ghost.map-zoom{display:none}}@media(max-width:760px){.layout .stage .play-guide{bottom:58px}.layout .map-status{align-items:stretch;gap:6px}.layout .route-chip .route-meter{min-height:44px;display:flex;flex-direction:column;justify-content:center}.layout .game-actions{gap:6px}.layout .game-actions button.ghost{height:44px;min-height:44px;width:44px;min-width:44px;padding:0;gap:6px}.layout .game-actions button.ghost>span:first-child{font-size:22px;line-height:1;margin:0}.layout .game-actions button.ghost.hint-action{width:auto;padding:0 10px 0 12px}.layout .game-actions .hint-action>span:first-child{font-size:18px}.layout .game-actions .hint-count{padding:3px 7px;font-size:13px}}.layout .game-actions .action-icon{display:grid;place-items:center}@media(min-width:1200px)and (max-width:1359px){.layout .stage:has(.game-actions) .map-chrome{right:10px}.game-actions{bottom:68px}.stage:has(.game-actions) .toast{bottom:126px}.stage:has(.game-actions) .hop-card{max-height:calc(100% - 230px)}}.hop-head .photo-credit{inset:auto 7px 6px auto;max-width:55%;font-size:9px;opacity:.85}.ambient-traffic{position:fixed;inset:0;z-index:1;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .7s var(--ease-out)}.ambient-traffic.on{opacity:1}body:has(.home-card:is(:hover,:focus-within)) .ambient-traffic.on{opacity:.2;transition-duration:.9s}@media(prefers-reduced-motion:reduce){.ambient-traffic{display:none}}body:has(.ambient-traffic) .home-shell{isolation:auto}@media(max-width:760px){.ambient-traffic{display:none}}.hop-trend,.pop-trend{--trend:#f6c453}:is(.hop-trend,.pop-trend).closer{--trend:#61e9a6}:is(.hop-trend,.pop-trend).farther{--trend:#fa5f6d}:is(.hop-trend,.pop-trend).arrive{--trend:#dc5dd4}.hop-trend{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;margin:10px 2px 2px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--trend) 45%,transparent);border-radius:10px;background:color-mix(in srgb,var(--trend) 10%,#121826);animation:trend-in .35s var(--ease-out)}.hop-trend-mark{grid-row:span 2;width:22px;height:22px;border-radius:50%;background:var(--trend);-webkit-mask:var(--trend-icon) center/14px no-repeat,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:var(--trend-icon) center/14px no-repeat exclude,linear-gradient(#000 0 0);box-shadow:0 0 14px -2px var(--trend)}.hop-trend{--trend-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8h10' stroke='%23000' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}.hop-trend.closer{--trend-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 13V3M3.5 7.5 8 3l4.5 4.5' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.hop-trend.farther{--trend-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 3v10M3.5 8.5 8 13l4.5-4.5' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.hop-trend.arrive{--trend-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 14V2.5h8l-1.6 3 1.6 3H4' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.hop-trend-text{font-family:var(--hud-font);font-size:14px;font-weight:700;line-height:1.2;color:var(--trend)}.hop-trend-left{font-size:11px;color:#9aa2b3;font-variant-numeric:tabular-nums}@keyframes trend-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.maplibregl-popup-content .pop-trend{display:flex;align-items:center;gap:6px;margin-top:4px;font-weight:700;color:var(--trend)}.maplibregl-popup-content .pop-trend i{width:8px;height:8px;border-radius:50%;background:var(--trend);box-shadow:0 0 8px var(--trend)}.maplibregl-popup-content .pop-budget{margin-top:2px;color:#c9cfdb;font-variant-numeric:tabular-nums}.maplibregl-popup-content .pop-budget.over{color:var(--bad)}.option-budget{font-size:11px;font-weight:700;color:#8df0b9;font-variant-numeric:tabular-nums}.option-budget.over{color:var(--bad)}@media(prefers-reduced-motion:reduce){.hop-trend{animation:none}}.hop-card .options{grid-auto-rows:max-content}.region-europe{--region:#7cc4ff}.region-asia{--region:#ffb36b}.region-africa{--region:#c3a8ff}.region-northAmerica{--region:#8df0b9}.region-southAmerica{--region:#ff9eb2}.region-oceania{--region:#67efff}.region-missions{margin-top:28px}.region-missions-head h2{margin:0;font-family:var(--hud-font);font-size:20px;font-weight:700;letter-spacing:.02em}.region-missions-head p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.region-missions-head a{color:var(--accent-text);text-underline-offset:3px;text-decoration-thickness:1px;white-space:nowrap}.region-grid li{display:flex}.region-missions .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.region-grid{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.home-shell button.region-tile{position:relative;display:grid;gap:10px;width:100%;padding:14px 14px 12px;border:1px solid var(--hud-line);border-radius:14px;background:radial-gradient(120% 140% at 0 0,color-mix(in srgb,var(--region) 12%,transparent),transparent 55%),#131927;color:var(--text);text-align:left;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 10px 24px -18px #000;transition:transform .2s var(--ease-out),border-color .2s,box-shadow .2s}.region-name:before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--region);box-shadow:0 0 10px var(--region);vertical-align:2px}.home-shell button.region-tile:not(:disabled):hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--region) 55%,var(--hud-line));box-shadow:inset 0 1px #ffffff0a,0 16px 30px -18px color-mix(in srgb,var(--region) 60%,#000)}.home-shell button.region-tile:not(:disabled):active{transform:translateY(0)}.region-tile-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.region-name{font-family:var(--hud-font);font-size:16px;font-weight:700;letter-spacing:.02em}.region-count{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.region-count b{font-family:var(--hud-font);font-size:18px;color:var(--region)}.region-tile.fresh .region-count b{color:var(--muted)}.region-tile-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:-2px;font-size:12px;color:var(--muted);line-height:1.3}.region-stars{display:inline-flex;align-items:center;gap:4px;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.region-stars i{width:12px;height:12px;background:#f7d466;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.home-shell button.region-tile{flex:1;align-content:start;grid-template-rows:auto auto auto 1fr}.region-tile-cta{align-self:end}.home-shell button.region-tile:focus-visible{outline:2px solid var(--text);outline-offset:3px}.home-shell button.region-tile.resume{border-color:color-mix(in srgb,var(--region) 55%,var(--hud-line))}.home-shell button.region-tile:disabled{cursor:wait}.home-shell button.region-tile:disabled .mission-bar{opacity:.45}.region-tile-cta{display:flex;align-items:center;justify-content:space-between;font-family:var(--hud-font);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--region)}.region-tile-cta span{transition:transform .2s var(--ease-out)}.region-tile:is(:hover,:focus-visible) .region-tile-cta span{transform:translate(3px)}.region-tile.complete .region-tile-meta span:first-child{color:var(--region)}.mission-bar{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));gap:2px;height:10px}.mission-bar i{border-radius:2px;background:#262d3d}.mission-bar i:nth-child(10n):not(:last-child){margin-right:3px}.mission-bar i.s1{background:color-mix(in srgb,var(--region) 32%,#262d3d)}.mission-bar i.s2{background:color-mix(in srgb,var(--region) 66%,#262d3d)}.mission-bar i.s3{background:var(--region);box-shadow:inset 0 2px #ffffff80}.mission-bar i.new{animation:tick-in 1.1s var(--ease-out) .5s both}@keyframes tick-in{0%{background:#262d3d;transform:scaleY(1)}40%{transform:scaleY(1.9);background:#fff}to{transform:scaleY(1)}}.mission-result{margin:12px 0 4px;padding:12px 14px;border:1px solid var(--hud-line);border-radius:12px;background:#121826}.mission-result-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.mission-result-head b{font-family:var(--hud-font);font-size:14px;letter-spacing:.02em}.mission-stars{display:inline-flex;gap:4px}.mission-stars i{width:18px;height:18px;background:#323a4e;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.mission-stars i.on{background:#f7d466;animation:star-in .5s var(--ease-out) both}.mission-stars i.on:nth-child(2){animation-delay:.15s}.mission-stars i.on:nth-child(3){animation-delay:.3s}@keyframes star-in{0%{transform:scale(.2) rotate(-40deg);opacity:0}to{transform:none;opacity:1}}.finish-moment .mission-result p{margin:8px 0 0}.mission-left{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:#d9dde6}.mission-left span:last-child{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.mission-best{font-size:12px;color:var(--muted)}.mission-result .ghost{width:100%;margin-top:10px}.finish-moment .mission-result{--region:var(--mission-region,#7cc4ff)}@media(max-width:760px){.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.region-grid{grid-template-columns:1fr}}@media(max-width:520px){.region-name{font-size:14px}.region-name:before{margin-right:6px}.region-tile-meta{font-size:11px}}@media(prefers-reduced-motion:reduce){.mission-bar i.new,.mission-stars i.on{animation:none}}.share-result{display:grid;gap:8px;margin-top:14px;text-align:left}.share-preview{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#0a0e19;color:var(--text);font:13px/1.55 var(--display);white-space:pre-wrap;overflow-wrap:anywhere}.share-result .share-copy{width:100%}.share-networks{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:6px}.share-net{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;color:var(--text);text-decoration:none;font-weight:600;font-size:12px}.share-net:hover{border-color:var(--line-strong)}.share-net:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.share-message{margin:0;color:var(--muted);font-size:12px}.home-brand .mark{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #ff825559;border-radius:12px;color:var(--accent);background:radial-gradient(circle at 50% 115%,#ff825540,#ff82550d 70%);box-shadow:0 8px 20px -12px #ff8255;transition:transform .35s var(--ease-out)}.home-brand:hover .mark{transform:translateY(-1px) rotate(-4deg)}.home-brand .brand{font-family:var(--hud-font);font-size:22px;font-weight:700;line-height:1;letter-spacing:.22em}@media(max-width:760px){.home-brand .mark{width:36px;height:36px;border-radius:10px}.home-brand .mark svg{width:24px;height:17px}.home-brand .brand{font-size:19px;letter-spacing:.18em}}@media(prefers-reduced-motion:reduce){.home-brand .mark{transition:none}}.journey-home-main{display:flex;align-items:center;gap:20px}.journey-home-text{flex:1;min-width:0}.journey-home-text h2{margin:5px 0 4px}.journey-home-text p{margin:0;color:#c9cfdc}.journey-home .journey-home-main .primary{width:auto;flex:none;margin:0;padding:14px 22px;white-space:nowrap}.journey-home>.hint{margin:12px 0 0;font-size:12px;color:#9aa2b4}.journey-home-done{display:flex;align-items:center;gap:14px;padding:12px 16px;border-color:var(--line);background:#131927}.journey-done-check{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:#61e9a61f;color:var(--good);font-weight:800}.journey-done-text{flex:1;min-width:0}.journey-done-text .eyebrow{margin:0 0 2px}.journey-done-text p:not(.eyebrow){margin:0;font-size:14px}.journey-done-text p span{color:#b3bbcd}.journey-done-text small{display:block;margin-top:2px;color:#8f97a8;font-size:11px}.journey-home-done .ghost{flex:none;padding:9px 14px}@media(max-width:760px){.journey-home-main{flex-direction:column;align-items:stretch;gap:12px}.journey-home .journey-home-main .primary{width:100%}.journey-home-done{flex-wrap:wrap}.journey-home-done .ghost{width:100%}}.replay-hud{position:absolute;z-index:7;left:16px;bottom:72px;width:260px;padding:12px 14px 10px;border:1px solid var(--hud-line);background:#0f1421f2;box-shadow:0 16px 40px -14px #000;font-family:var(--hud-font);animation:enter .4s var(--ease-out)}.replay-hud header{display:flex;justify-content:space-between;align-items:center}.replay-kicker{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.replay-close{width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--muted);font-size:18px;line-height:1}.replay-close:hover{color:var(--text)}.replay-clock{margin:2px 0 8px;font-size:28px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--text)}.replay-row{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;padding:5px 0;border-top:1px solid var(--hud-line);font-size:12px}.replay-row i{height:0;border-top:2px solid #e86a3a}.replay-row.best i{border-top:2px dashed #3f97e6}.replay-name{color:var(--muted)}.replay-val{font-variant-numeric:tabular-nums;font-weight:600}.replay-row.arrived .replay-val{color:var(--good)}.replay-verdict{margin:8px 0 0;min-height:2.6em;font-size:12px;line-height:1.35;color:var(--text)}@media(max-width:760px){.replay-hud{left:8px;right:8px;bottom:56px;width:auto;padding:8px 10px}.replay-clock{font-size:20px;margin-bottom:4px}}.race-replay{display:grid;gap:10px;margin:4px 0 18px}.replay-btn{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;padding:10px 12px}.replay-btn-label{display:flex;align-items:center;gap:8px;white-space:nowrap}.replay-btn-label>span{color:var(--accent);font-size:11px}.replay-btn small{color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.02em;text-transform:none}.route-chart{margin:0;padding:12px 12px 8px;border:1px solid var(--hud-line);background:#0b101b}.route-chart figcaption{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.rc-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:8px 0 4px;padding:0;list-style:none;font-size:12px;color:var(--text)}.rc-legend li{display:flex;align-items:center;gap:6px}.rc-legend small{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.rc-legend i,.rc-tip-row i{display:block;width:16px;height:2px;border-radius:1px}.rc-legend i.dashed,.rc-tip-row i.dashed{height:0;background:none!important;border-top:2px dashed currentColor}.rc-plot{position:relative}.route-chart svg{display:block;width:100%;height:auto;overflow:visible;touch-action:pan-y}.route-chart svg:focus-visible{outline:2px solid #80dfff;outline-offset:2px}.rc-grid line{stroke:#ffffff12;stroke-width:1}.rc-grid text,.rc-tick{fill:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.rc-dot{stroke:#0b101b;stroke-width:2}.rc-end{fill:var(--text);font-size:10px;paint-order:stroke;stroke:#0b101b;stroke-width:3px}.rc-cross line{stroke:#f5f1e8;stroke-opacity:.45;stroke-width:1}.rc-cross circle{stroke:#0b101b;stroke-width:2}.rc-tip{position:absolute;top:0;translate:10px 0;z-index:2;min-width:150px;max-width:210px;padding:7px 9px;border:1px solid var(--hud-line);background:#151b29f5;box-shadow:0 10px 24px -10px #000;pointer-events:none;font-size:11px}.rc-tip.left{translate:calc(-100% - 10px) 0}.rc-tip-head{color:var(--muted);font-size:10px;margin-bottom:3px}.rc-tip-row{display:grid;grid-template-columns:16px auto 1fr;gap:6px;align-items:center;padding:2px 0}.rc-tip-row b{font-variant-numeric:tabular-nums;color:var(--text)}.rc-tip-row span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-table{margin-top:6px;font-size:11px}.rc-table summary{cursor:pointer;color:var(--muted)}.rc-table table{width:100%;margin-top:8px;border-collapse:collapse;font-variant-numeric:tabular-nums}.rc-table caption{text-align:left;color:var(--text);font-weight:600;padding:2px 0}.rc-table th,.rc-table td{padding:3px 4px;border-bottom:1px solid #ffffff10;text-align:right;font-weight:400}.rc-table th[scope=row],.rc-table thead th:first-child{text-align:left}.rc-table thead th{color:var(--muted)}.stage-inner:has(.replay-hud) .legend,.stage-inner:has(.replay-hud) .map-tip{display:none}.stats-card .totals:has(>.focus)>div:not(.focus) dd{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-card .totals:has(>.focus)>div:not(.focus) dt{font-size:8px;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-hyphens:none;hyphens:none;overflow-wrap:normal}@media(max-width:1350px){.stats-card .totals:has(>.focus){grid-template-columns:repeat(2,minmax(0,1fr))}.stats-card .totals:has(>.focus)>div:not(.focus){padding:7px 10px 6px}.stats-card .totals:has(>.focus)>div:not(.focus) dd{font-size:15px}.stats-card .totals:has(>.focus)>div:not(.focus) dt{font-size:9px;letter-spacing:.1em}}@media(min-width:1020px)and (max-width:1359px){.game-actions{bottom:16px}.layout .stage:has(.game-actions) .map-chrome{right:356px}.layout .stage:has(.game-actions) .map-chrome>.map-tip{display:none}.stage:has(.game-actions) .toast{bottom:80px}.stage:has(.game-actions) .hop-card{max-height:calc(100% - 180px)}}@media(min-width:1020px)and (max-width:1149px){.layout .stage:has(.game-actions) .map-chrome{right:226px}.game-actions button:first-child{width:44px;padding:0}.game-actions button:first-child>span:first-child{margin:0}.game-actions button:first-child .action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media(max-width:760px){.layout{grid-template-columns:minmax(0,1fr)}.layout>.hud,.layout>.game-footer{min-width:0}.layout .hud .hud-tools .hud-lang{display:none}.layout .hud-mid{min-width:0}.layout .game-footer{padding:0;gap:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}.layout .game-footer::-webkit-scrollbar{display:none}.layout .game-footer .footer-home{display:none}.layout .game-footer .site-links{flex:none;flex-wrap:nowrap;gap:0;padding:0 24px 0 6px}.layout .game-footer .site-links a{display:flex;align-items:center;min-height:30px;padding:0 8px;white-space:nowrap;font-size:10px}}.hop-head>.icon-btn.hop-close{width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid #ffffff5c;border-radius:50%;background:#0a0e19e6;color:#fff;box-shadow:0 4px 14px -4px #000c;-webkit-backdrop-filter:none;backdrop-filter:none}.hop-head>.icon-btn.hop-close:hover{border-color:#fff;background:#0a0e19}.hop-head>.icon-btn.hop-close .hud-icon{stroke-width:2.4}@media(max-width:760px){.hop-head>.icon-btn.hop-close{width:44px;height:44px;margin:-4px -4px 0 0}}
