@font-face{font-family:Runner;src:local("Arial")}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{font-family:Runner,Arial,sans-serif;background:#80c6e9;color:#f5fcff}button,input,a{font:inherit}button{border:1px solid #ffffff12;border-radius:14px;min-height:52px;padding:14px 21px;background:#123f53;color:#f4fcff;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}button:hover{background:#1d5b70}button:active{transform:scale(.98)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #29e1ed;outline-offset:3px}button:disabled{opacity:.55;cursor:wait}.primary{background:#ffda4d;color:#102d3b;border:0}.primary:hover{background:#ffe57a}.primary span{float:right;font-size:25px}#game{display:block;width:100%;height:100%;touch-action:none;outline:none}.brand{position:fixed;right:max(22px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));z-index:12;color:#3be6ed;text-decoration:none;text-align:right;text-shadow:0 2px 4px #092b39}.brand strong{font-size:21px}.brand small{display:block;font-size:10px;letter-spacing:1px;color:#effaff;margin-top:2px}#menu{position:fixed;inset:0;display:grid;grid-template-columns:minmax(330px,1fr) minmax(280px,370px);align-items:center;gap:60px;padding:7vh 5vw;background:linear-gradient(90deg,#061e32ed 0%,#061e32a6 35%,#061e3215 68%);z-index:5;overflow:auto}.menu-copy{max-width:640px}.eyebrow{font-size:13px;letter-spacing:3px;color:#3ee2e9}h1{font-size:clamp(50px,6.6vw,98px);line-height:1.02;font-weight:900;letter-spacing:-3px;margin:24px 0 22px}h1 span{color:#ffda4d}#tagline{font-size:clamp(18px,2vw,26px);font-weight:700;line-height:1.35}#summary{font-size:16px;line-height:1.6;color:#c8dce5}.menu-actions{display:grid;gap:12px;max-width:360px;margin-top:28px}.menu-actions button{min-height:62px;font-size:19px}.edition{font-size:10px;letter-spacing:1.6px;color:#9bbdcf;margin:26px 0 0}.edition span{color:#35dce6}.menu-side{align-self:center;display:grid;gap:10px;margin-top:30px}.menu-side>button{width:100%}#map-slot{background:#082a3ce8;border:1px solid #47dce961;border-radius:18px;padding:18px;margin-bottom:12px}.map-title{font-size:20px;font-weight:700;margin-bottom:10px}.map-holder{position:relative;background:#0d3447;border-radius:8px;overflow:hidden}.map-holder canvas{display:block;width:100%;height:auto}.map-holder small{position:absolute;bottom:5px;left:8px;font-size:8px;color:#a2c5d8}#map-slot p{font-size:12px;line-height:1.7;color:#b9d5e1;margin:12px 0 0}#map-slot strong{color:#ffda4d}#account-status{font-size:12px;line-height:1.5;margin:2px 4px;color:#d3e8ef}.small-actions{display:flex;gap:10px}.small-actions button{flex:1;font-size:11px;padding:10px}#original-link{font-size:11px;text-align:center;color:#d2e8ee;padding:8px}#hud{display:none;position:fixed;inset:0;z-index:4;pointer-events:none;text-shadow:0 2px 4px #123}.run #hud,.intro #hud{display:block}.run #menu,.intro #menu{display:none}.hud-left{position:absolute;left:max(14px,env(safe-area-inset-left));top:20px;display:flex;gap:12px;align-items:center}.hud-left button{pointer-events:auto;width:52px;padding:10px;font-size:22px;background:#0b354bdd}.hud-left strong{color:#ffdd59;font-size:22px}.hud-left small{display:block;margin-top:5px;font-size:11px}.score{position:absolute;top:55px;right:18px;min-width:152px;padding:12px 18px;background:#0b354be8;border:1px solid #49dfe877;border-radius:15px}.score small{display:block;font-size:9px;color:#57e5ea}.score strong{font-size:34px;display:block;line-height:1.15;color:#ffdf58}.score span{font-size:10px}.progress{position:absolute;top:26px;left:30%;width:36%;height:10px;background:#103d53aa;border-radius:8px;overflow:hidden}#progress-fill{height:100%;width:0;background:#32dbe7}#street{position:absolute;top:96px;left:18px;font-size:15px;font-weight:700}#meters{position:absolute;left:30%;top:42px;font-size:11px}#countdown{position:absolute;top:33%;width:100%;text-align:center;font-size:80px;font-weight:900;color:#ffda4d}#swipe-hint{position:absolute;bottom:max(23px,env(safe-area-inset-bottom));width:100%;text-align:center;font-size:11px;letter-spacing:1px}#swipe-hint span{margin:0 20px}#flash{position:fixed;inset:0;background:#fa4827;opacity:0;pointer-events:none;z-index:3}#toast{position:fixed;bottom:75px;left:50%;transform:translateX(-50%);max-width:90%;padding:14px 20px;background:#082c41f5;border:1px solid #57dfe1;border-radius:12px;z-index:15;font-size:14px;text-align:center;display:none}dialog{background:#0d2c40;color:#effaff;border:1px solid #38cbd6;border-radius:20px;width:min(590px,calc(100% - 28px));max-height:calc(100dvh - 36px);padding:30px;overflow:auto}dialog::backdrop{background:#031522d9}dialog h2{margin:6px 45px 25px 0;font-size:26px}#close-modal{position:absolute;right:14px;top:12px;min-height:44px;width:44px;font-size:24px;padding:0}dialog p{line-height:1.6;color:#c9dfe9}dialog a{color:#51e4e8}label{display:block;margin:20px 0 8px;font-size:14px;font-weight:700}input{width:100%;min-height:54px;padding:12px;font-size:18px;border:1px solid #8cc7d8;border-radius:9px;color:#092b3e;background:#effaff}form .form-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}#form-message{min-height:42px;font-size:14px;color:#ffda4d}.rank-row{display:grid;grid-template-columns:36px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid #ffffff20;font-size:14px}.rank-row strong{color:#ffda4d}.rank-row small{display:block;color:#a4c4d5;margin-top:5px}#intro{position:fixed;inset:0;background:#071c29;z-index:50;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px}#intro img{width:min(56vw,340px);height:auto;animation:logo-in 1.2s cubic-bezier(.2,.8,.2,1) both}#intro.ready{animation:intro-out .5s 4.5s forwards;pointer-events:none}#intro.ready img{animation:logo-in 1.2s cubic-bezier(.2,.8,.2,1) both,logo-float 2s 1.2s ease-in-out infinite}#loading{font-size:15px;color:#c5e2eb}#load-progress{width:min(310px,75vw);height:7px;accent-color:#32dbe7}#intro.ready #load-progress{visibility:hidden}@keyframes logo-in{from{opacity:0;transform:scale(.45) rotate(-24deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes logo-float{50%{transform:translateY(-7px)}}@keyframes intro-out{to{opacity:0;visibility:hidden}}@media(max-width:700px){#menu{grid-template-columns:1fr;align-content:start;gap:20px;padding:74px 22px 30px;background:linear-gradient(90deg,#061e32e8,#061e3288)}h1{font-size:48px;letter-spacing:-2px;margin:14px 0}.eyebrow{font-size:10px;letter-spacing:2px}#tagline{font-size:18px;display:none}#summary{font-size:13px;margin:12px 0}.menu-actions{max-width:none;margin-top:16px}.menu-actions button{min-height:54px;font-size:16px}.edition{display:none}.menu-side{margin:0;gap:8px}#map-slot{padding:12px;margin-bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:center}.map-title{font-size:13px;margin:0}.map-holder{grid-column:2;grid-row:1/3}.map-holder canvas{height:115px;object-fit:contain}#map-slot p{font-size:10px;margin:0}.brand strong{font-size:18px}.brand{top:max(10px,env(safe-area-inset-top));right:18px}.brand small{font-size:9px}#street{top:140px;max-width:60%;font-size:12px}.hud-left{top:58px}.hud-left strong{font-size:18px}.hud-left small{font-size:10px}.score{top:58px;right:12px;min-width:115px;padding:10px 12px}.score strong{font-size:29px}.score small{font-size:8px}.progress{left:16px;top:116px;width:calc(100% - 32px);height:8px}#meters{left:16px;top:130px;font-size:9px;display:none}#countdown{font-size:68px}#swipe-hint{font-size:9px;letter-spacing:0}#swipe-hint span{margin:0 12px}dialog{padding:23px}form .form-actions{grid-template-columns:1fr}dialog h2{font-size:23px}}@media(max-height:510px) and (min-width:701px){#menu{padding:45px 28px 18px;gap:20px;grid-template-columns:1fr 290px}h1{font-size:44px;margin:12px 0}#tagline{display:none}#summary{font-size:12px}.menu-actions{margin-top:15px;gap:7px}.menu-actions button{min-height:45px;padding:10px}.edition{display:none}.menu-side{gap:6px;margin:0}#map-slot{padding:8px;display:grid;grid-template-columns:1fr 120px;gap:6px;margin-bottom:0}.map-title{font-size:13px}.map-holder{grid-row:1/3;grid-column:2}.map-holder canvas{height:85px}#map-slot p{font-size:9px;margin:0}.menu-side>button{min-height:44px;padding:9px;font-size:12px}#account-status{font-size:10px}.small-actions button{min-height:42px}#original-link{display:none}.brand strong{font-size:17px}.brand small{font-size:8px}.score{top:48px}#street{top:78px}.progress{top:20px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition:none!important}#intro.ready{animation-delay:4.5s!important}}
