@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Barlow:wght@400;500;600;700;800&display=swap";:root{font-family:Barlow,Arial,sans-serif;color:#173540;font-synthesis:none;font-weight:500;background:#aad9ee}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #e73132;outline-offset:5px}[hidden]{display:none!important}#game{position:fixed;inset:0;display:block;width:100%;height:100%}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(236,245,245,.9) 0%,rgba(232,242,243,.75) 28%,rgba(222,236,239,.13) 59%,transparent 80%)}body:has(#hud:not([hidden])) .vignette{background:radial-gradient(ellipse,transparent 55%,#16334015)}.brand{position:fixed;left:4.5vw;top:30px;display:flex;align-items:center;gap:12px;font-size:24px;font-weight:800;letter-spacing:4px;z-index:2}.brand-symbol{color:#e73132;font-size:39px;font-weight:800;line-height:1;transform:skew(-9deg)}.brand-divider{height:20px;width:1px;background:#23445133;margin:0 5px}.brand-caption{font-size:9px;letter-spacing:2px;font-weight:600}.edition{position:fixed;right:4.5vw;top:42px;font-size:10px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:13px}.edition span{opacity:.4}.edition i,footer i{width:6px;height:6px;background:#e73132;border-radius:50%;display:inline-block}.menu{position:absolute;left:7vw;top:50%;transform:translateY(-48%);width:560px;max-width:85vw}.eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:2.3px;font-weight:700}.red-line{width:26px;height:3px;background:#e73132}h1{font-family:Barlow Condensed,Arial Narrow,Impact,sans-serif;font-size:clamp(68px,7.8vw,120px);letter-spacing:-1.5px;line-height:.89;font-weight:800;margin:25px 0}h1 span{color:#e73132}.intro{font-size:16px;line-height:1.65;color:#48616a;margin:0 0 30px}.primary{border:0;padding:20px 25px;color:#fff;background:#e73132;font-size:12px;font-weight:800;letter-spacing:2px;display:flex;justify-content:space-between;align-items:center;width:286px;box-shadow:0 8px 24px #b5212520;transition:background .2s,transform .2s}.primary:hover{background:#cc252c;transform:translateY(-2px)}.primary span{font-size:24px;line-height:16px}.menu-actions{display:flex;align-items:center;gap:27px;margin-top:23px}#controls-button{border:0;background:none;padding:0;font-size:10px;letter-spacing:1.6px;font-weight:800;color:#173540}#controls-button span{font-size:17px;margin-left:10px}.best{border-left:1px solid #23445130;padding-left:24px;font-size:8px;letter-spacing:1.4px;display:flex;flex-direction:column;gap:5px}.best b{font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:1px}.settings{display:flex;gap:18px;align-items:center;margin-top:35px;font-size:8px;font-weight:700;letter-spacing:1px}.settings label{display:flex;align-items:center;gap:6px}.settings input[type=range]{width:64px;height:3px;accent-color:#e73132}.settings input[type=checkbox]{accent-color:#e73132;width:11px;height:11px;margin:0}.status{font-size:8px;letter-spacing:1.1px;color:#55717c;margin-top:14px;max-width:430px;line-height:1.6}.controls{padding:13px 18px;background:#f7faf5e8;margin-top:20px;font-size:11px;line-height:1.8;max-width:455px;border-left:2px solid #e73132}.controls p{margin:4px 0}.controls kbd{font-family:inherit;font-size:10px;font-weight:800;background:#dce7e9;padding:3px 5px;margin-right:4px}.route-card{position:fixed;right:4.5vw;bottom:105px;width:318px;background:#f5f9f4e8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:23px 24px 20px;border-top:2px solid #e73132;box-shadow:0 10px 40px #1735400b}.card-top{display:flex;justify-content:space-between;font-size:9px;font-weight:700;letter-spacing:1.8px}.card-top span:last-child{color:#e73132;font-size:19px}.route-card h2{font-family:Barlow Condensed,Impact,sans-serif;font-size:35px;margin:15px 0 3px}.route-card p{font-size:11px;color:#667a7e;margin:0}.route-diagram{margin:13px 0}.route-diagram svg{width:100%;height:55px;overflow:visible}.route-diagram path{fill:none;stroke:#e73132;stroke-width:2}.route-diagram circle{fill:#f5f9f4;stroke:#e73132;stroke-width:2}.card-stats{border-top:1px solid #24445120;display:flex;justify-content:space-between;padding-top:15px;font-size:7px;letter-spacing:1px}.card-stats b{display:block;font-size:20px;letter-spacing:0;margin-bottom:4px}footer{position:fixed;bottom:27px;left:4.5vw;right:4.5vw;display:flex;justify-content:space-between;font-size:9px;font-weight:700;letter-spacing:1.7px}footer i{margin-right:8px}footer b{color:#e73132;font-size:18px;margin-left:15px}#hud{position:fixed;inset:0;pointer-events:none}.run-time{position:absolute;right:4.5vw;top:95px;text-align:right}.run-time>span,.run-time small{display:block;font-size:9px;letter-spacing:2px}.run-time strong{display:block;font-size:38px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-1px;margin:5px 0}.run-time small{font-size:8px;opacity:.7}.crosshair{position:absolute;top:50%;left:50%;height:5px;width:5px;border-radius:50%;background:#fff;box-shadow:0 0 2px 1px #25424d88}.section-info{position:absolute;bottom:76px;left:4.5vw;max-width:65vw;text-shadow:0 1px 8px white}.section-info>span{font-size:11px;letter-spacing:3px;color:#e73132;font-weight:800}.section-info h2{font-family:Barlow Condensed,Impact,sans-serif;font-size:34px;margin:5px 0;font-weight:700;letter-spacing:.5px}.section-info p{font-size:12px;background:#f5faf7ce;padding:9px 12px;margin:0;border-left:2px solid #e73132}.speed{position:absolute;bottom:76px;right:4.5vw;width:105px;text-align:right}.speed strong{font-size:51px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1}.speed>span{font-size:8px;letter-spacing:1px;margin-left:5px}.speed>div{height:3px;background:#24445125;margin-top:10px}.speed i,.progress i{display:block;height:100%;background:#e73132;width:0}.speed small{font-size:9px;font-weight:800;letter-spacing:2px;display:block;margin-top:9px}.progress{position:absolute;bottom:0;left:0;width:100%;height:4px;background:#fff5}.pause-hint{position:absolute;bottom:28px;left:4.5vw;font-size:9px;letter-spacing:1.5px}.pause-hint span{opacity:.6;margin-left:20px}#toast{position:fixed;top:23%;left:50%;transform:translate(-50%,-15px);background:#f5faf2ed;border-top:2px solid #e73132;padding:16px 25px;font-size:11px;font-weight:700;letter-spacing:1.6px;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;white-space:nowrap}#toast.visible{opacity:1;transform:translate(-50%)}.finish{position:fixed;inset:0;padding:16vh 10vw;background:linear-gradient(90deg,#edf6f5f2,#edf6f5a0)}.finish h1{font-size:100px}.finish>p{color:#48616a}.finish-times{display:flex;gap:45px;margin:28px 0}.finish-times span{display:block;font-size:10px;letter-spacing:2px}.finish-times strong{display:block;font-size:38px;font-weight:500;margin-top:8px;font-variant-numeric:tabular-nums}#record{font-size:10px;letter-spacing:2px;color:#e73132;font-weight:800;margin-bottom:24px}#fall-flash{position:fixed;inset:0;pointer-events:none}.flash{animation:flash .55s ease-out}@keyframes flash{0%{background:#f7fcfc}to{background:transparent}}@media(max-width:900px){.route-card{width:265px;right:3vw;bottom:80px}.menu{left:5vw;width:480px}.brand-caption{display:none}.intro{font-size:14px}.settings{gap:10px}.edition{font-size:8px}.route-card{opacity:.94}}@media(max-width:700px){.route-card{display:none}.menu{top:49%;max-width:90vw}h1{font-size:76px}.edition{display:none}.settings{flex-wrap:wrap}.brand{top:20px}footer span:last-child{display:none}.section-info p{font-size:10px}.section-info{max-width:70vw}.finish{padding:18vh 7vw}.finish h1{font-size:75px}.finish-times strong{font-size:28px}.run-time{top:80px}.status:after{content:" · A desktop browser is required."}}@media(max-height:740px){.menu{transform:translateY(-44%)}h1{font-size:80px;margin:18px 0}.intro{margin-bottom:20px}.settings{margin-top:22px}.route-card{bottom:75px}.controls{position:absolute;left:300px;bottom:85px;width:300px}.brand{top:22px}.edition{top:32px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
