:root{font-family: 'Trebuchet MS',ui-rounded,system-ui,sans-serif;color:#153d67;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#acdfea}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:4px solid #fa7392;outline-offset:4px}#world{display:block;width:100vw;height:100dvh;position:fixed;inset:0;touch-action:none}#app{position:fixed;inset:0;pointer-events:none}button,.panel,.closet-panel{pointer-events:auto}.hidden{display:none!important}header{position:absolute;top:max(24px,env(safe-area-inset-top));left:4.5%;right:4.5%;display:flex;align-items:center;gap:20px;z-index:2}.brand{display:flex;align-items:center;gap:10px;font-size:30px}.brand span{font-size:12px;line-height:1;letter-spacing:3px;font-weight:900}.brand b{font-size:25px;letter-spacing:2px;line-height:1.2}.pill{margin-left:auto;background:#ffffff8c;border:1px solid #fff9;border-radius:30px;padding:12px 18px;font-size:12px;font-weight:900;letter-spacing:1px;display:flex;align-items:center;gap:12px}.dot{height:6px;width:6px;border-radius:50%;background:#ffb942}.icon{border:1px solid #fff9;background:#ffffffa6;color:#153d67;border-radius:50%;height:44px;width:44px;font-size:23px}.screen{position:absolute;inset:0}.menu-copy{position:absolute;top:25%;left:9%;width:320px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:2.2px}h1{font-size:clamp(70px,8.5vw,125px);line-height:.91;margin:24px 0;letter-spacing:-6px;font-weight:1000}h1 em{color:#fff;font-style:normal;text-shadow:0 5px 0 #70b5cf}p{font-size:16px;line-height:1.55;color:#406483}.menu-copy p{margin:0 0 26px}.primary,.secondary{display:block;width:100%;border:0;border-radius:18px;padding:19px 25px;font-size:16px;font-weight:1000;letter-spacing:1.2px;margin-top:12px;transition:transform .15s,filter .15s}.primary{background:#ffcc55;color:#15304d;box-shadow:0 6px 0 #df9a35}.secondary{background:#ffffffc9;color:#153d67;box-shadow:0 5px 0 #80b4c940}.primary:active,.secondary:active{transform:translateY(4px);box-shadow:none}.primary:hover,.secondary:hover{filter:brightness(1.05)}.record{margin-top:28px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:1px;font-weight:900}.record strong{font-size:17px}.record span{font-size:12px;font-weight:500;letter-spacing:0}.racer-label{position:absolute;top:77%;left:61%;text-align:center;transform:rotate(-5deg)}.racer-label span{font-size:11px;letter-spacing:2px}.racer-label b{display:block;font-size:23px;font-weight:1000;margin:5px}.racer-label small{font-size:12px}footer{position:absolute;left:4.5%;right:4.5%;bottom:25px;font-size:11px;letter-spacing:2px;font-weight:bold}footer span{float:right;opacity:.6}.panel-screen,.overlay{display:flex;align-items:center;justify-content:center}.panel-screen{background:#092f551f;backdrop-filter:blur(7px);pointer-events:auto}.panel{width:420px;max-height:94dvh;overflow:auto;background:#f4fbfff5;border:2px solid white;padding:28px;border-radius:28px;box-shadow:0 24px 80px #103b5633}.panel-screen .panel{margin-top:50px}h2{font-size:40px;letter-spacing:-2px;line-height:1.1;margin:12px 0 20px}h3{font-size:17px;margin-bottom:10px}.back{border:0;background:none;color:#406483;font-weight:800;padding:0 0 22px}.course-art{height:125px;border-radius:18px;background:linear-gradient(140deg,#245276,#53aec9 60%,#bdebef);display:flex;align-items:center;justify-content:space-around;color:white;font-size:54px;overflow:hidden}.course-art span{font-size:29px;line-height:.95;font-weight:1000;letter-spacing:-1px;transform:rotate(-6deg)}.course-art b{font-size:72px;opacity:.15}.medals{display:flex;justify-content:space-between;font-size:14px;background:#e1f0f5;border-radius:12px;padding:13px}.instructions{font-size:14px;display:flex;flex-direction:column;gap:7px;margin:18px 0}.instructions small{font-size:12px;color:#56758a}.closet-panel{position:absolute;left:8%;top:19%;width:350px;max-height:78dvh;overflow:auto;padding:12px}.choices{display:flex;gap:8px;flex-wrap:wrap}.choice{border:2px solid #fff9;border-radius:12px;padding:11px 12px;background:#ffffff80;color:#153d67;font-size:13px;font-weight:800}.choice.selected{border-color:#153d67;background:white;box-shadow:0 3px 0 #153d67}.swatch{width:40px;height:40px;border-radius:50%;padding:0}.save-note{display:block;margin:20px 0;font-size:12px}.overlay{position:absolute;inset:0;background:#153d6780;backdrop-filter:blur(8px);pointer-events:auto}.compact{text-align:center;width:380px}.compact .back{padding:20px 0 0}.hud-top{position:absolute;top:max(25px,env(safe-area-inset-top));left:5%;right:5%;display:flex;justify-content:space-between;align-items:flex-start}.hud-top small{display:block;font-size:11px;letter-spacing:2px;font-weight:bold}.hud-top b{display:block;font-size:32px;font-variant-numeric:tabular-nums}.right{text-align:right}.right b{font-size:21px}.progress{position:absolute;top:100px;left:5%;width:90%;height:5px;background:#fff7;border-radius:20px;overflow:hidden}.progress i{height:100%;display:block;background:#153d67;width:0}.race-bottom{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));left:6%;right:6%;display:flex;align-items:center;justify-content:space-between}.race-bottom b{display:block;font-size:35px}.race-bottom span{font-size:11px;letter-spacing:2px}#brake{border:2px solid #fff8;background:#153d67be;color:white;width:100px;height:70px;border-radius:22px;font-weight:900;touch-action:none}#brake.active{background:#ffcc55;color:#153d67}#steerHelp{font-size:11px;letter-spacing:2px;font-weight:900}#countdown{position:absolute;top:35%;width:100%;text-align:center;font-size:100px;font-weight:1000;color:white;text-shadow:0 6px 0 #153d67}#toast{position:absolute;top:140px;width:100%;text-align:center;color:#153d67;font-size:21px;font-weight:1000}.stats{display:flex;justify-content:space-around;background:#e1f0f5;border-radius:15px;padding:16px 5px;margin:24px 0}.stats small{display:block;font-size:10px;letter-spacing:1px}.stats b{display:block;margin-top:7px}#error{position:fixed;inset:20%;background:white;padding:30px;border-radius:20px}
@media(max-width:600px){header{top:max(20px,env(safe-area-inset-top));left:6%;right:6%}.pill{display:none}header .icon{margin-left:auto}.menu-copy{left:7%;top:23%;width:49%}.eyebrow{font-size:10px;letter-spacing:1.4px}h1{font-size:65px;letter-spacing:-4px;margin-top:22px}.menu-copy p{font-size:13px;max-width:170px}.primary,.secondary{font-size:14px;padding:17px 14px;border-radius:15px}.record{font-size:9px;flex-wrap:wrap;gap:7px}.record span{width:100%}.racer-label{left:59%;top:74%;max-width:38%}.racer-label b{font-size:17px}.racer-label small{font-size:10px}.racer-label span{font-size:9px}footer{font-size:9px;letter-spacing:1px;bottom:max(22px,env(safe-area-inset-bottom))}footer span{max-width:120px;text-align:right}.panel{width:90%;padding:23px}.panel-screen .panel{margin-top:0}h2{font-size:34px}.closet-panel{left:4%;top:17%;width:55%;padding:10px;max-height:80dvh}.closet-panel p{font-size:13px}.closet-panel h3{margin:20px 0 10px;font-size:14px}.choice{font-size:12px;padding:9px}.swatch{width:33px;height:33px;padding:0}.choices{gap:6px}.save-note{font-size:10px}.hud-top b{font-size:27px}.right b{font-size:18px}#steerHelp{font-size:9px;letter-spacing:1px}.hud-top small{font-size:9px}.course-art{height:90px}.instructions{margin:14px 0} .panel p{font-size:14px}}
@media(max-height:650px) and (min-width:601px){.menu-copy{top:20%}h1{font-size:75px}.record{margin-top:15px}.closet-panel{top:15%;max-height:84dvh}.panel{padding:20px}.course-art{height:70px}.panel h2{margin:5px 0 12px}.panel p{margin:8px 0}.panel-screen .panel{margin-top:0}}

.rewards-panel{width:min(380px,82vw);top:22%;max-height:calc(100dvh - 240px);overflow-y:auto;pointer-events:auto;padding:4px 4px 20px}.rewards-balance{margin:20px 0;padding:20px;background:#f4fbfff0;border:2px solid white;border-radius:20px;box-shadow:0 8px 24px #153d6714}.rewards-balance>span{font-size:13px;font-weight:800}.rewards-balance strong{display:block;font-size:40px;margin-top:12px}.rewards-balance strong small{font-size:17px}.rewards-balance p{font-size:13px;margin-bottom:0}.rewards-panel>small{display:block;line-height:1.5;color:#406483}
#modelLoadStatus{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:10;text-align:center;font-size:13px;font-weight:700;width:max-content;max-width:90vw}#modelLoading:not(.hidden){display:inline-block;background:#f4fbfff2;border-radius:12px;padding:10px 14px}#modelRetry{padding:10px 14px;border:2px solid #153d67;border-radius:12px;background:#ffcc55;color:#153d67;margin-left:6px}
.reward-wallet{display:block;margin-top:16px;color:#153d67;font-size:14px;font-weight:800}.reward-address{display:block;overflow-wrap:anywhere;font-size:11px;margin:10px 0;color:#406483;user-select:text}.rewards-balance>small{display:block;font-size:11px;line-height:1.5;margin-top:14px;color:#406483}.rewards-panel{max-height:calc(100dvh - 200px);top:18%}
/* V2: quiet menus, room for the racer, and clear touch targets. */
.pill{display:none}.brand{font-size:24px}.brand span{font-size:11px}.brand b{font-size:22px}header .icon{margin-left:auto}.menu-copy{left:10%;top:29%;width:280px}h1{font-size:clamp(68px,7vw,102px);margin:18px 0 35px;letter-spacing:-5px}.record{margin-top:26px;font-size:11px}.record span{display:none}.menu-copy .eyebrow{font-size:11px;letter-spacing:2px}.menu-copy .primary{margin-top:0}.secondary{background:#f5fcffbe;box-shadow:none}.closet-panel{width:330px;top:22%}.screen .racer-label{display:none}.panel-screen .panel{margin:0}.hud-top{color:#143b59;text-shadow:0 1px 3px #fff8}.race-bottom{color:#143b59}#steerHelp{font-size:12px;letter-spacing:1px}#toast{font-size:17px;top:125px}#brake{width:85px;height:62px;background:#164664b8}.save-note{font-size:12px}.choice{font-size:14px}.instructions{font-size:15px}.stats small{font-size:12px}
@media(max-width:600px){.menu-copy{left:7%;top:27%;width:45%;max-width:230px}h1{font-size:clamp(44px,11.7vw,69px);letter-spacing:-3px;margin:17px 0 30px}.menu-copy .eyebrow{font-size:10px;letter-spacing:1px}.menu-copy .primary,.menu-copy .secondary{padding:17px 10px;font-size:14px}.record{font-size:10px;margin-top:23px;gap:6px}.record strong{font-size:16px}.closet-panel{top:19%;width:52%;left:3%}.closet-panel h2{font-size:30px}.choices{gap:7px}.choice{font-size:13px}.swatch{width:34px;height:34px}.closet-panel .primary{font-size:12px;padding:16px 9px}.save-note{font-size:11px}.hud-top small{font-size:11px}#steerHelp{font-size:11px;max-width:130px;text-align:center}.panel{max-height:92dvh}}
@media(max-height:560px){.menu-copy{top:22%;width:230px}h1{font-size:57px;margin:12px 0 20px}.record{margin-top:18px}.menu-copy .primary,.menu-copy .secondary{padding:12px}.closet-panel{top:16%;max-height:83dvh}.brand{transform:scale(.8);transform-origin:left}.panel{max-height:94dvh}}

/* Persistent navigation, outfit stage, and a compact free shop. */
#world.turbo + #app #hud::after{content:'';position:absolute;inset:0;pointer-events:none;border-left:5px solid #79ffe766;border-right:5px solid #79ffe766;background:linear-gradient(90deg,#4fffdc22,transparent 15%,transparent 85%,#4fffdc22);opacity:.7}
@keyframes turboRush{from{opacity:.35;transform:scale(1)}to{opacity:.85;transform:scale(1.07)}}
@media(prefers-reduced-motion:reduce){#world.turbo + #app #hud::after{animation:none;background:none}}
#tabs{pointer-events:auto;position:absolute;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(94%,620px);display:flex;padding:6px;border-radius:21px;background:#f5fcfff0;box-shadow:0 8px 28px #153d6720;border:1px solid white;gap:3px}#tabs button{flex:1;min-width:0;border:0;border-radius:15px;padding:16px 3px;color:#365775;background:transparent;font-size:14px;font-weight:800}#tabs button[aria-current=page]{background:#153d67;color:white}#inspectHint{position:absolute;left:61%;bottom:20%;text-align:center;font-size:12px;font-weight:bold}#inspectHint span{display:block;margin-bottom:9px}#inspectHint button{border:1px solid #fff;border-radius:50%;background:#ffffffa6;color:#153d67;width:38px;height:38px;font-size:24px;margin:0 4px}.closet-panel{top:17%;bottom:100px;max-height:none;width:360px;background:#e8f7fae8;border-radius:24px;padding:22px}.closet-panel h2{font-size:34px}.closet-panel .back{padding-bottom:12px}.closet-panel h3{margin-top:18px}.shop-panel p{margin:0 0 15px;font-size:14px}.shop-item{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;border:1px solid white;border-radius:14px;padding:13px 12px;background:#ffffffb0;color:#153d67;margin:7px 0;gap:10px}.shop-item b{font-size:14px;display:block}.shop-item small{font-size:12px;color:#506d83;display:block;margin-top:4px}.shop-item strong{font-size:12px;color:#16655d;white-space:nowrap}.shop-item.selected{border:2px solid #153d67;background:#fff}.empty-panel{position:absolute;left:9%;top:30%}.empty-panel p{font-size:16px}.menu-copy .secondary{display:none}.record{line-height:1.6}.save-note{line-height:1.5}
@media(max-width:600px){#tabs button{font-size:12px;padding:16px 1px}#inspectHint{left:57%;right:3%;bottom:23%;font-size:12px}.closet-panel{left:3%;width:53%;top:15%;bottom:100px;padding:12px}.closet-panel h2{font-size:27px;letter-spacing:-1px}.closet-panel h3{font-size:14px}.shop-item{display:block;padding:10px}.shop-item strong{display:block;margin-top:7px}.choices .choice{min-height:40px}.swatch{width:36px;height:36px}.menu-copy{top:28%}.empty-panel{left:7%;top:29%}}
@media(max-height:600px){#inspectHint{bottom:23%;left:70%}.closet-panel{top:18%;bottom:85px}.menu-copy{top:23%}h1{font-size:52px;margin-bottom:22px}#tabs{width:580px}#tabs button{padding:12px 4px}.record{margin-top:14px}}
#hud .race-bottom{justify-content:center;pointer-events:none}

#world.turbo + #app #hud::after{animation:turboRush .65s ease-in-out infinite alternate;background:repeating-linear-gradient(100deg,transparent 0 9%,#9bffe322 9.2% 9.5%,transparent 9.8% 18%),linear-gradient(90deg,#4fffdc33,transparent 18%,transparent 82%,#4fffdc33)}
@media(prefers-reduced-motion:reduce){#world.turbo + #app #hud::after{animation:none;background:none}}
#airBonus{font-size:12px;font-weight:900;letter-spacing:.06em;color:#135b4c;background:#edfff3e8;padding:9px 12px;border:2px solid #fff;border-radius:16px;white-space:nowrap}
