@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2) format("woff2"),url(/assets/barlow-latin-400-normal-fsAxiSwU.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2) format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2) format("woff2"),url(/assets/barlow-latin-600-normal-CNwfPWQD.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-700-normal-A9pxMQ4z.woff2) format("woff2"),url(/assets/barlow-latin-700-normal-__SGTsZ1.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-latin-800-normal-s1sAMnoV.woff2) format("woff2"),url(/assets/barlow-latin-800-normal-BdVooDN4.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2) format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/barlow-condensed-latin-800-normal-BKzMuPgK.woff2) format("woff2"),url(/assets/barlow-condensed-latin-800-normal-e9GbPXiK.woff) format("woff")}:root{font-family:Barlow,Arial,sans-serif;color:#192b32;background:#bedde9;font-synthesis:none;--red:#ef402e;--ink:#192b32;--muted:#67777c;--condensed:"Barlow Condensed","Arial Narrow",Impact,sans-serif}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input,select{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ef402e;outline-offset:5px}button{border:0}a{color:inherit;text-decoration:none}button svg{width:26px;height:26px}button{transition:background .2s,transform .2s}button:active{transform:translateY(1px)}#game{position:fixed;inset:0;width:100%;height:100%;display:block}#app{position:fixed;inset:0;pointer-events:none}#app button,#app a,#app input,#app select,#app dialog{pointer-events:auto}.hidden{display:none!important}.menu{position:absolute;inset:0;background:linear-gradient(90deg,#f4f7f2f7,#f4f7f2f0 24%,#f4f7f2c2 39%,#f4f7f21c 64%,#e3f0f205)}.menu:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(240,246,241,.91),transparent 16%,transparent 86%,rgba(242,248,245,.5));z-index:-1}.grain{position:absolute;inset:0;opacity:.025;pointer-events:none;z-index:7;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.6' filter='url(%23n)'/%3E%3C/svg%3E")}.masthead{position:absolute;left:4.3%;right:4.3%;top:5%;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:10px;align-items:center}.brand svg{width:42px;color:var(--red)}.brand>span{font-size:21px;font-weight:800;letter-spacing:2.7px;line-height:1.1}.brand small{font-size:8px;font-weight:600;letter-spacing:3.1px;display:block;margin-top:5px}.edition{font-size:10px;font-weight:700;letter-spacing:1.6px;display:flex;align-items:center;gap:12px}.edition i{color:#819399;font-style:normal;margin:0 8px}.status-dot{width:5px;height:5px;background:var(--red);border-radius:50%}.hero{position:absolute;left:5.1%;top:24%;max-width:710px}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:700;letter-spacing:2px}.red-line{height:2px;width:27px;background:var(--red)}h1,h2{font-family:var(--condensed);font-weight:800;line-height:.91;letter-spacing:-1px;margin:25px 0 22px}h1{font-size:clamp(65px,7.65vw,120px)}em{font-style:normal;color:var(--red)}.intro{font-size:14px;line-height:1.75;color:#637378;font-weight:500}.start-row{display:flex;align-items:center;gap:31px;margin-top:30px}.primary{display:flex;align-items:center;justify-content:space-between;gap:42px;min-height:56px;padding:0 24px;background:var(--red);color:#fff;font-size:11px;font-weight:700;letter-spacing:1.5px;box-shadow:0 7px 20px #ea3a2520}.primary:hover{background:#d93424;transform:translateY(-2px)}.text-button{font-size:10px;font-weight:700;letter-spacing:1.2px;background:transparent;color:var(--ink);padding:12px 0;border-bottom:1px solid #9eacac}.text-button span{font-size:16px;margin-left:14px}.personal-best{display:flex;align-items:center;gap:19px;margin-top:29px;color:#7d8b8d;font-size:9px;font-weight:600;letter-spacing:1.3px}.personal-best>span{font-family:var(--condensed);font-size:19px;font-weight:600;color:#415158;letter-spacing:1px}.personal-best>span span{font-size:13px}.location-tag{position:absolute;top:39%;right:6%;display:flex;gap:12px;align-items:center;color:#263b43;text-shadow:0 1px 20px white}.location-tag>span{font-family:var(--condensed);font-size:48px;font-weight:600;border-right:1px solid #50666f55;padding-right:15px;line-height:1}.location-tag>div{font-size:12px;font-weight:700;letter-spacing:2px}.location-tag small{display:block;font-size:8px;font-weight:600;letter-spacing:1.6px;margin-top:7px}.route-card{position:absolute;right:4.3%;bottom:15%;width:300px;padding:21px 23px 17px;background:#f3f7f0d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #ffffff80;box-shadow:0 16px 45px #2637410d}.route-top{display:flex;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:1.7px;color:#7e8c8f}.route-top span:first-child{color:var(--ink)}.route-top i{color:var(--red);font-size:14px;margin-left:5px}.route-drawing{width:100%;margin:22px 0 15px;overflow:visible}.route-drawing path{stroke:var(--red);stroke-width:1.6;fill:none}.route-drawing circle{stroke:var(--red);stroke-width:2;fill:#f6f7f1}.route-drawing circle:last-child{fill:var(--red)}.route-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #899da32a;padding-top:12px}.route-bottom>span{font-size:7px;letter-spacing:1.2px;color:#7c898b;font-weight:600}.route-bottom strong{font-family:var(--condensed);font-size:25px;font-weight:600}.route-bottom small{font:600 8px Barlow,Arial;margin-left:5px;color:#7b8c8e}.menu-footer{position:absolute;left:4.3%;right:4.3%;bottom:4.7%;padding-top:19px;border-top:1px solid #758d9538;display:flex;justify-content:space-between;align-items:center;font-size:8px;font-weight:700;letter-spacing:1.8px;color:#63767d}.menu-footer button{background:transparent;color:var(--ink);font-size:8px;font-weight:700;letter-spacing:1.3px;padding:4px}.menu-footer button span{font-size:13px;margin-left:8px}.tiny-square{display:inline-block;width:5px;height:5px;background:var(--red);margin-left:9px}.hud{position:absolute;inset:0;background:linear-gradient(0deg,#162e371f,transparent 20%,transparent 82%,#edf5f220);color:#20333b}.hud-brand{position:absolute;top:29px;left:33px;display:flex;gap:9px;align-items:center}.hud-brand svg{width:30px;color:var(--red)}.hud-brand>span{font-size:13px;font-weight:800;letter-spacing:2px}.hud-brand small{display:block;margin-top:5px;font-size:8px;letter-spacing:1.4px;font-weight:700}.run-clock{position:absolute;right:36px;top:29px;text-align:right;padding:13px 17px;background:#f3f7f2cb;min-width:156px;border-top:2px solid var(--red)}.run-clock>span{font-size:8px;letter-spacing:2px;font-weight:700}.run-clock strong{display:block;font-family:var(--condensed);font-size:40px;font-weight:600;line-height:1.15;font-variant-numeric:tabular-nums}.run-clock strong span{font-size:23px;color:#6e8187}.run-clock small{font-size:8px;letter-spacing:1.5px;color:#718389}.run-clock small span{font-size:8px}.crosshair{position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px;background:#fff;border-radius:50%;box-shadow:0 0 0 1px #26373e77}.toast{position:absolute;top:18%;left:50%;transform:translate(-50%,-8px);text-align:center;font-size:9px;font-weight:700;letter-spacing:2px;color:var(--red);opacity:0;transition:.25s;background:#f5f7f0eb;padding:15px 25px;min-width:260px;border-top:2px solid var(--red);box-shadow:0 8px 28px #29414d16}.toast.show{opacity:1;transform:translate(-50%)}.toast strong{display:block;color:var(--ink);font-size:16px;letter-spacing:.1px;font-weight:500;margin-top:6px}.sector-track{position:absolute;left:35px;top:35%;display:flex;flex-direction:column;gap:15px}.sector-track>div{display:flex;align-items:center;gap:10px;opacity:.35}.sector-track b{font-size:8px;font-weight:600}.sector-track i{width:5px;height:5px;border:1px solid #243941;border-radius:50%}.sector-track .current{opacity:1;color:var(--red)}.sector-track .current i{background:var(--red);border:0;box-shadow:0 0 0 3px #ef402e24}.sector-track .complete{opacity:.75}.sector-track .complete i{background:#21363e}.hud-bottom{position:absolute;bottom:31px;left:35px;right:35px;display:flex;align-items:end;justify-content:space-between}.speed-readout{display:flex;align-items:center;gap:9px;color:#1f343d;text-shadow:0 1px 15px white}.speed-readout>strong{font-family:var(--condensed);font-size:55px;font-weight:600;line-height:.9;font-variant-numeric:tabular-nums}.speed-readout>span{font-size:8px;letter-spacing:1px;font-weight:700}.speed-readout small{display:block;font-size:8px;margin-top:7px;color:var(--red);letter-spacing:1.3px;min-width:60px}.speed-lines{display:flex;gap:3px;align-items:flex-end;height:27px;margin-bottom:7px}.speed-lines i{width:3px;height:8px;background:var(--red);transform:skew(-10deg)}.speed-lines i:nth-child(2){height:12px}.speed-lines i:nth-child(3){height:17px}.speed-lines i:nth-child(4){height:22px}.speed-lines i:nth-child(5){height:27px}.hint{position:absolute;left:50%;bottom:0;transform:translate(-50%);text-align:center;background:#f4f7f1eb;padding:12px 20px;max-width:64vw;border-left:2px solid var(--red);min-width:360px}.hint strong{display:block;text-transform:uppercase;font-size:9px;font-weight:700;letter-spacing:1.7px;margin-bottom:6px}.hint span{font-size:11px;white-space:normal;font-weight:500;color:#687b81;line-height:1.4}.hud-bottom>button{font-size:21px;background:#f5f7f0b8;padding:9px 12px;color:#334951}.hud-bottom>button span{font-size:8px;display:block;letter-spacing:1px;margin-top:4px}.level-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#fff5}.level-progress>div{height:100%;width:0;background:var(--red);transition:width .1s}.overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;background:#edf4f1a3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.panel{width:450px;padding:40px 46px;background:#f5f7f2f0;box-shadow:0 20px 100px #1b394c20;border-top:3px solid var(--red);pointer-events:auto}.panel h2,dialog h2{font-size:62px;margin-top:20px;margin-bottom:17px}.panel p{color:#738489;font-size:13px;margin-bottom:30px}.panel>.primary,.panel>.secondary{width:100%;margin-top:12px}.secondary{min-height:46px;background:transparent;border:1px solid #aabbbe61;color:#435960;font-size:10px;font-weight:700;letter-spacing:1.5px}.secondary:hover{background:#dce8e880}.panel-links{display:flex;justify-content:space-between;margin-top:26px}.panel-links button{background:transparent;color:#6c8086;font-size:8px;letter-spacing:1px;padding:5px}.finish-panel{width:450px}.finish-time{padding:18px 0;border-top:1px solid #b8c7c94a;border-bottom:1px solid #b8c7c94a}.finish-time>span{font-size:9px;letter-spacing:2px;font-weight:600;color:#657c83}.finish-time strong{display:block;font:600 73px var(--condensed);font-variant-numeric:tabular-nums}.finish-time strong span{font-size:40px;color:#8da0a5}.finish-stats{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;color:#788d91;padding:19px 0}.finish-stats strong{display:block;font:600 25px var(--condensed);color:#324e58;margin-top:5px}.finish-stats strong span{font-size:17px}.record{font-size:9px;font-weight:700;letter-spacing:1.2px;color:var(--red);margin:0 0 20px}.finish-panel p{margin-bottom:23px}dialog{background:#f5f7f2;color:var(--ink);width:490px;max-width:92vw;padding:37px 42px;border:0;border-top:3px solid var(--red);box-shadow:0 25px 120px #192e4340;max-height:90vh;overflow:auto}dialog::backdrop{background:#243c5060;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}dialog h2{font-size:53px}.close-dialog{position:absolute;top:13px;right:17px;background:transparent;font-size:26px;color:#6d858b;padding:5px}.controls-grid{margin-top:26px}.controls-grid>div{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #b2c3c83d;padding:10px 0;gap:14px}.controls-grid kbd{font-family:inherit;font-size:10px;font-weight:700;border:1px solid #a8bec461;padding:5px 7px;white-space:nowrap;letter-spacing:1px}.controls-grid span{font-size:12px;color:#61797f;text-align:right}.control-note{font-size:11px;line-height:1.7;color:#73898e;margin:22px 0}.close-bottom{width:100%;margin-top:20px}.setting{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:22px 0;border-bottom:1px solid #b2c3c84f;font-size:12px;color:#4e686f}.setting input[type=range]{width:100%;accent-color:var(--red);margin:3px 0 0}.setting output{font-family:var(--condensed);font-size:22px;color:var(--red)}.setting input[type=checkbox]{accent-color:var(--red);width:18px;height:18px}.setting select{font:inherit;background:transparent;border:1px solid #a8bec461;padding:6px;color:#36535c}.respawn-fade{position:absolute;inset:0;background:#f7f7f1;opacity:0;pointer-events:none}.respawn-fade.flash{animation:respawn .6s ease-out}.error{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#213842;color:#fff;border-left:3px solid var(--red);padding:15px 25px;font-size:13px;max-width:90vw;z-index:10}.graphics-error{position:absolute;inset:0;background:#f5f7f2;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:10%;text-align:center;pointer-events:auto}.graphics-error h1{font-size:55px}.graphics-error button{padding:15px 25px;background:var(--red);color:#fff;margin-top:20px}.mobile-note{display:none}@keyframes respawn{0%{opacity:.9}to{opacity:0}}@media(min-width:1600px){.hero{top:27%}.route-card{width:340px}.intro{font-size:16px}.start-row{margin-top:36px}.primary{min-height:62px}}@media(max-width:1000px){.hero{top:25%}.hero h1{font-size:75px}.route-card{width:240px;right:4%;bottom:17%}.location-tag{right:5%;top:33%}.location-tag>span{font-size:37px}.location-tag>div{font-size:10px}.edition{font-size:8px}.hint{max-width:60vw;min-width:300px}.speed-lines{display:none}.hero .eyebrow{font-size:8px}.start-row{gap:20px}.intro{font-size:12px}.primary{gap:28px;padding:0 19px}.text-button{font-size:9px}}@media(max-height:720px){.hero{top:22%}h1{font-size:80px;margin:18px 0}.intro{font-size:12px}.start-row{margin-top:21px}.personal-best{margin-top:18px}.route-card{bottom:17%;padding:15px 20px}.route-drawing{margin:15px 0}.panel{padding:25px 35px}.panel h2{font-size:48px}.panel p{margin-bottom:18px}.finish-time{padding:10px 0}.finish-time strong{font-size:58px}.finish-stats{padding:12px 0}.record{margin-bottom:12px}}@media(max-width:760px){.hero{left:6%;top:22%}.hero h1{font-size:68px}.route-card,.location-tag,.edition,.desktop-label{display:none}.menu{background:linear-gradient(90deg,#f4f7f1f2,#f4f7f1bb 60%,#f4f7f128)}.masthead{left:6%;top:5%}.menu-footer{left:6%;right:6%;bottom:6%}.menu-footer>span:first-child{font-size:6px;letter-spacing:1px}.menu-footer button{font-size:7px}.mobile-note{position:absolute;bottom:11%;left:6%;display:block;font-size:10px;line-height:1.6;color:#647b83}.hud-brand{left:18px;top:20px}.run-clock{right:18px;top:20px}.sector-track{left:18px}.hud-bottom{left:18px;right:18px}.hint{max-width:56vw;min-width:0;width:56vw;padding:10px}.hint span{font-size:9px}.speed-readout>strong{font-size:38px}.speed-readout>span{font-size:7px}.panel{width:min(440px,90vw)}.toast{top:22%}.personal-best{margin-top:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
