:root{--ink:#1a1423;--paper:#f5e9d0;--sunset:#ff9a5c;--goldenrod:#ffd166}*{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}html,body{margin:0;padding:0;height:100%;overflow:hidden;background:#000;font-family:Courier New,ui-monospace,monospace;touch-action:none}.pad,.btn,#game,#vignette,#flash{touch-action:none}#selGrid{touch-action:pan-y}#game{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;filter:saturate(1.12) contrast(1.06) brightness(1.02)}#vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 58%,rgba(26,20,35,.3) 100%)}#flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:#fff;opacity:0;transition:opacity .5s}.hud{position:fixed;color:var(--paper);text-shadow:2px 2px 0 var(--ink);font-weight:700;letter-spacing:1px;pointer-events:none;z-index:5}body:not(.racing) #speedo,body:not(.racing) #energyWrap,body:not(.racing) #laps,body:not(.racing) #pos,body:not(.racing) #itemSlot,body:not(.racing) #mini{display:none}#speedo{left:12px;top:10px;font-size:22px}#speedo small{font-size:11px;opacity:.85}#energyWrap{left:12px;top:42px;width:130px;height:13px;border:2px solid var(--ink);background:#f5e9d040}#energyFill{height:100%;width:100%;background:var(--goldenrod);transition:width .1s linear}#energyWrap.draft #energyFill{background:#5db3c9}#energyWrap.bonk #energyFill{background:#e84855}#energyLabel{position:absolute;left:4px;top:0;font-size:9px;color:var(--ink);letter-spacing:2px;text-shadow:none;line-height:13px}#laps{right:12px;top:10px;font-size:15px;text-align:right;line-height:1.5}#pos{left:50%;top:10px;transform:translate(-50%);font-size:24px;color:var(--goldenrod)}#itemSlot{left:50%;top:44px;transform:translate(-50%);font-size:26px}#mini{position:fixed;left:10px;bottom:12px;z-index:5;opacity:.92;pointer-events:none;image-rendering:pixelated}#toast{left:50%;top:36%;transform:translate(-50%);font-size:28px;color:var(--goldenrod);opacity:0;transition:opacity .25s;text-align:center;white-space:nowrap}#landmark{left:50%;bottom:30px;transform:translate(-50%);font-size:15px;color:var(--paper);opacity:0;transition:opacity .4s;letter-spacing:2px}.pad{position:fixed;bottom:0;top:0;width:45%;z-index:4;opacity:0}#padL{left:0}#padR{right:0}.btn{position:fixed;z-index:6;border-radius:50%;border:3px solid var(--ink);color:var(--ink);font-family:inherit;font-weight:700;letter-spacing:1px;box-shadow:0 4px 0 var(--ink);display:none}body.racing.touch .btn{display:block}.btn:active,.btn.pressed{transform:translateY(3px);box-shadow:0 1px 0 var(--ink);filter:brightness(1.18)}#btnDrift{right:32px;bottom:40px;width:82px;height:82px;background:var(--sunset);font-size:13px}#btnDriftL{left:32px;bottom:40px;width:82px;height:82px;background:var(--sunset);font-size:13px}#btnSprint{right:16px;bottom:132px;width:70px;height:70px;background:#8fbe78;font-size:11px}#btnSprintL{left:16px;bottom:132px;width:70px;height:70px;background:#8fbe78;font-size:11px}#btnItem{left:calc(50% - 34px);bottom:22px;width:68px;height:68px;background:var(--goldenrod);font-size:22px}#title{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--paper);background:radial-gradient(ellipse at 50% 34%,#4b2d5ea8,#2418328c 48%,#2418324d)}#skyline{position:absolute;left:0;right:0;bottom:0;width:100%;height:34vh;z-index:-1;opacity:.9}.titleInner{display:flex;flex-direction:column;align-items:center;padding:20px;transform:translateY(-4vh)}#title .badge{font-size:clamp(9px,1.8vw,12px);letter-spacing:4px;color:var(--ink);background:var(--goldenrod);padding:4px 12px;border:2px solid var(--ink);margin-bottom:14px;box-shadow:0 3px 0 var(--ink)}#title h1{font-size:clamp(34px,9vw,78px);margin:0;color:var(--goldenrod);line-height:.92;text-shadow:4px 4px 0 var(--ink),8px 8px 0 #a34661aa;letter-spacing:3px}#title h1 span{color:var(--sunset)}#title .sub{color:var(--paper);font-size:clamp(12px,2.6vw,17px);margin-top:12px;letter-spacing:3px;text-shadow:2px 2px 0 var(--ink)}#title .elev{color:var(--sunset);font-size:clamp(9px,1.9vw,12px);margin-top:8px;letter-spacing:3px;margin-bottom:26px;opacity:.9}#title .ctl{font-size:clamp(10px,2.2vw,13px);line-height:1.9;opacity:.85;margin-top:26px;text-shadow:1px 1px 0 var(--ink)}#title kbd{background:var(--paper);color:var(--ink);padding:1px 7px;border-radius:3px;box-shadow:0 2px #0006;font-family:inherit}#trackPick{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:20px}#trackPick button{font-family:inherit;font-weight:700;font-size:clamp(9px,1.9vw,12px);letter-spacing:2px;padding:7px 14px;background:transparent;color:var(--paper);border:2px solid var(--paper);opacity:.6;cursor:pointer}#trackPick button.on{background:var(--paper);color:var(--ink);opacity:1;box-shadow:0 3px 0 var(--ink)}#startBtn{font-family:inherit;font-weight:700;font-size:20px;letter-spacing:3px;padding:15px 52px;background:var(--goldenrod);color:var(--ink);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer}#startBtn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}#btn2p{font-family:inherit;font-weight:700;font-size:12px;letter-spacing:2px;margin-top:14px;padding:9px 22px;background:transparent;color:var(--paper);border:2px solid var(--paper);opacity:.85;cursor:pointer}#btn2p:active{transform:translateY(2px)}#mpWait{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12;display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--paper);background:radial-gradient(ellipse at 50% 30%,#4b2d5ef0,#1a1423f2 75%);letter-spacing:1px}#mpWait h2{color:var(--goldenrod);font-size:clamp(20px,5vw,32px);letter-spacing:4px;margin:0 0 18px;text-shadow:3px 3px 0 var(--ink)}#mpStatus{font-size:clamp(12px,2.6vw,16px);line-height:2;margin-bottom:24px;max-width:88vw}#mpStatus b{color:var(--goldenrod)}#copyLink{font-family:inherit;font-weight:700;font-size:11px;letter-spacing:1px;padding:5px 12px;background:var(--goldenrod);color:var(--ink);border:2px solid var(--ink);box-shadow:0 3px 0 var(--ink);cursor:pointer}#copyLink:active{transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}#mpGo{display:none;font-family:inherit;font-weight:700;font-size:18px;letter-spacing:3px;padding:14px 44px;background:var(--goldenrod);color:var(--ink);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer}#mpGo:active{transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}#resTracks{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin:6px 0 14px}#resTracks .resLabel{width:100%;font-size:clamp(10px,2vw,13px);letter-spacing:2px;color:var(--goldenrod);margin-bottom:4px}#resTracks button{font-family:inherit;font-weight:700;font-size:clamp(10px,2vw,13px);letter-spacing:2px;padding:9px 16px;background:transparent;color:var(--paper);border:2px solid var(--paper);opacity:.75;cursor:pointer}#resTracks button.on{background:var(--goldenrod);color:var(--ink);opacity:1;border-color:var(--ink);box-shadow:0 3px 0 var(--ink)}#select{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11;display:none;flex-direction:column;align-items:center;justify-content:center;color:var(--paper);background:radial-gradient(ellipse at 50% 30%,#4b2d5eeb,#1a1423f0 75%)}#select h2{color:var(--goldenrod);font-size:clamp(20px,5vw,34px);letter-spacing:4px;margin:0 0 20px;text-shadow:3px 3px 0 var(--ink)}#selGrid{display:grid;grid-template-columns:repeat(auto-fill,118px);gap:12px;justify-content:center;max-width:min(92vw,780px);max-height:64vh;overflow-y:auto;padding:10px}.selCard{font-family:inherit;cursor:pointer;background:#f5e9d014;border:3px solid #00000055;border-radius:8px;padding:6px 6px 8px;color:var(--paper);display:flex;flex-direction:column;align-items:center;transition:transform .08s}.selCard img{width:100%;height:96px;object-fit:contain;image-rendering:auto;background:radial-gradient(ellipse at 50% 70%,#4b2d5e,#2a1f3a);border-radius:5px}.selCard span{font-size:10px;letter-spacing:1px;margin-top:6px;font-weight:700}.selCard.on{border-color:var(--goldenrod);background:#ffd16629;transform:translateY(-3px);box-shadow:0 4px #0006}#selGo{font-family:inherit;font-weight:700;font-size:18px;letter-spacing:3px;margin-top:22px;padding:14px 44px;background:var(--goldenrod);color:var(--ink);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer}#selGo:active{transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}#results{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;display:none;flex-direction:column;align-items:center;justify-content:center;background:#1a1423bd;color:var(--paper);font-family:inherit;letter-spacing:1px}#results h2{color:var(--goldenrod);font-size:clamp(26px,6vw,40px);letter-spacing:3px;margin:0 0 18px;text-shadow:3px 3px 0 var(--ink)}#resList{font-size:clamp(13px,2.6vw,17px);line-height:2;margin-bottom:26px;text-align:left}#resList .you{color:var(--goldenrod);font-weight:700}#againBtn{font-family:inherit;font-weight:700;font-size:17px;letter-spacing:2px;padding:13px 38px;background:var(--goldenrod);color:var(--ink);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer}#againBtn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--ink)}@media(pointer:coarse){.kbdonly{display:none}#mini{left:12px;top:62px;bottom:auto;width:74px;height:99px}}@media(pointer:fine){.touchonly{display:none}}
