@font-face{font-family:Rally;src:local('Trebuchet MS')}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overscroll-behavior:none;background:#172d43;color:#172d43;font-family:Rally,'Trebuchet MS',Arial,sans-serif}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:4px solid #55cbce;outline-offset:4px}button:disabled{cursor:default;opacity:.55}body{overflow:hidden}#app{position:relative;width:100%;height:100dvh;min-height:280px;overflow:hidden;isolation:isolate}#scene,#shade{position:absolute;inset:0;width:100%;height:100%}#shade{background:linear-gradient(90deg,rgba(18,38,54,.9),rgba(18,38,54,.35) 55%,rgba(18,38,54,.08));pointer-events:none}#app.racing #shade{display:none}#menus{position:absolute;inset:0;overflow-y:auto;padding:max(26px,env(safe-area-inset-top)) max(32px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(32px,env(safe-area-inset-left));scrollbar-color:#ffc969 #18364c;scrollbar-width:thin}#menus:empty{display:none}.eyebrow{font-size:12px;font-weight:900;letter-spacing:2.4px;text-transform:uppercase;color:#ffce75;display:flex;align-items:center;gap:9px}.brand-star{font-size:21px;color:#ff8a7e}.home{min-height:100%;display:flex;align-items:center;max-width:1380px;margin:auto}.hero-copy{position:relative;z-index:2;max-width:600px;width:56%;padding:10px 0 40px}.wordmark{font-weight:1000;color:#fff7e5;font-size:clamp(48px,7vw,108px);line-height:.91;letter-spacing:-5px;margin:20px 0 24px;transform:rotate(-3deg);text-shadow:4px 6px 0 #173049}.wordmark span{display:block;color:#ffc969}.hero-copy p{color:#ecf4ed;max-width:440px;font-size:clamp(15px,1.5vw,20px);line-height:1.55}.hero-tags{display:flex;gap:8px;margin:23px 0;flex-wrap:wrap}.pill{font-size:11px;letter-spacing:1px;font-weight:900;background:#ffffff19;border:1px solid #ffffff35;color:#f8f2df;padding:8px 11px;border-radius:50px}.primary,.secondary,.tertiary{min-height:49px;border-radius:14px;border:0;padding:13px 23px;font-weight:900;font-size:15px;box-shadow:0 5px 0 #102b3f;transition:transform .12s,background .12s}.primary{background:#ffcc70;color:#172d43}.primary:hover{background:#ffdc98;transform:translateY(-2px)}.secondary{background:#fff6e6;color:#18364c}.secondary:hover{background:#fff}.tertiary{background:#27495e;color:#fff6e6;border:1px solid #63818e;box-shadow:none}.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.home .primary{font-size:18px;padding:17px 28px;min-width:194px}.hero-art{flex:1;position:relative;min-height:400px;align-self:stretch;display:flex;justify-content:center;align-items:center}.hero-art .hero-kart{width:min(45vw,650px);height:auto;filter:drop-shadow(0 24px 25px #10263d55);transform:rotate(-6deg)}.hero-sticker{position:absolute;right:0;top:14%;background:#f88077;border:4px solid #ffe9c4;border-radius:50%;width:122px;height:122px;display:grid;place-content:center;text-align:center;transform:rotate(12deg);font-weight:900;color:#15354b;box-shadow:0 6px 0 #203c5277}.hero-sticker b{font-size:36px;line-height:1}.hero-sticker span{font-size:12px;line-height:1.3;letter-spacing:.6px}.privacy-line{position:absolute;bottom:18px;left:0;color:#d3e7e4;font-size:11px;letter-spacing:.3px}.menu-header{display:flex;justify-content:space-between;gap:18px;align-items:center;max-width:1250px;margin:0 auto 20px}.menu-header h1{color:#fff6e7;font-size:clamp(23px,3vw,40px);margin:7px 0}.menu-header p{color:#d3e9e5;font-size:13px;margin:0;line-height:1.5}.back{background:#ffffff1c;color:#fff4df;border:1px solid #ffffff42;border-radius:12px;padding:11px 17px;min-height:46px;font-weight:bold}.panel{max-width:1250px;margin:auto;background:#fff7e8;border:2px solid #fff4df;border-radius:24px;box-shadow:0 15px 55px #0a1b3340;padding:22px}.select-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:24px}.roster-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.racer-card{border:3px solid transparent;background:#e5e8dc;border-radius:16px;padding:0;overflow:hidden;position:relative;color:#172d43;min-height:150px;transition:transform .12s}.racer-card:hover{transform:translateY(-3px)}.racer-card.selected{border-color:#f0786b;box-shadow:0 0 0 3px #f0786b35}.racer-card img{height:128px;width:100%;object-fit:cover;object-position:50% 22%;display:block}.racer-card .racer-name{display:block;background:#fffdf4;padding:9px 4px;font-size:13px;font-weight:900}.racer-card.selected:after{content:'✓';position:absolute;right:7px;top:7px;width:23px;height:23px;display:grid;place-items:center;color:white;background:#e76960;border-radius:50%;font-size:14px}.racer-detail{padding:3px 8px;display:flex;flex-direction:column;justify-content:center}.racer-detail h2{font-size:32px;margin:5px 0}.racer-detail .role{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1.7px;color:#5b727b}.racer-detail p{line-height:1.5;font-size:13px;color:#49616b}.stats{display:grid;gap:10px;margin:16px 0}.stat{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:12px;font-size:12px;font-weight:900}.stat-track{height:9px;background:#dde5df;border-radius:5px;overflow:hidden}.stat-track i{height:100%;display:block;background:#ee8772;border-radius:5px}.special-card{display:flex;gap:12px;background:#e7eee4;border-radius:13px;padding:13px;margin-bottom:18px}.special-card .special-symbol{font-size:30px;align-self:center;color:#387b81}.special-card b{display:block;font-size:13px}.special-card small{display:block;font-size:11px;line-height:1.5;margin-top:4px;color:#49616b}.tracks-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.track-card{background:#fffaf1;border:3px solid transparent;border-radius:16px;padding:0;overflow:hidden;text-align:left;color:#172d43;transition:transform .12s}.track-card:hover{transform:translateY(-3px)}.track-card.selected{border-color:#f0786b;box-shadow:0 0 0 2px #f0786b33}.track-card svg{width:100%;height:105px;display:block}.track-caption{padding:10px}.track-caption b{font-size:13px;display:block}.track-caption small{font-size:10px;display:block;color:#6c7b81;line-height:1.5;margin-top:4px}.track-card .number{font-size:9px;font-weight:900;letter-spacing:1px;color:#769188}.setup-bar{display:flex;align-items:center;gap:12px;justify-content:space-between;border-top:1px solid #d8e0d5;padding-top:17px;margin-top:18px}.setup-description{max-width:350px;font-size:12px;line-height:1.5;color:#536d76}.setting-group{display:flex;flex-wrap:wrap;gap:7px}.toggle{border:1px solid #cad6cb;background:#e9eee3;color:#345462;border-radius:10px;min-height:44px;padding:9px 13px;font-size:12px;font-weight:900}.toggle.on{background:#1c495a;color:#fff8e7;border-color:#1c495a}.modal-shell{display:flex;align-items:center;justify-content:center;min-height:100%;padding:10px}.modal{max-width:760px;width:100%;background:#fff7e8;border-radius:25px;padding:28px;border:2px solid #fff;box-shadow:0 20px 70px #142c4f77}.modal h1{font-size:32px;margin:4px 0 12px}.modal p{font-size:14px;line-height:1.6;color:#4c6872}.modal .eyebrow{color:#e27564}.controls-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:22px 0}.control-card{padding:16px;border-radius:14px;background:#e8eee3;font-size:12px;line-height:1.85}.control-card h2{margin:0 0 10px;font-size:16px}.control-card b{display:block}.fine{font-size:11px!important;color:#6a8186!important}.pause-modal{max-width:440px;text-align:center}.pause-modal .button-row{justify-content:center}.pause-modal .primary,.pause-modal .secondary{width:100%;margin:4px 0}.results-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.result-score{font-size:74px;font-weight:1000;color:#dd7462;line-height:1;margin:10px 0}.result-score small{font-size:25px}.leaderboard{padding:0;margin:0;list-style:none}.leaderboard li{display:flex;align-items:center;gap:8px;padding:9px;border-bottom:1px solid #d8e1d7;font-size:13px}.leaderboard li.you{background:#ffdf99;border-radius:9px}.leaderboard img{width:33px;height:33px;object-fit:cover;object-position:50% 22%;border-radius:50%;background:#d9e7dd}.leaderboard span{flex:1}.leaderboard small{font-size:11px}.settings-list{display:grid;gap:10px;margin:18px 0}.settings-list button{text-align:left}.settings-list small{display:block;font-weight:normal;margin-top:5px}.hud-left,.hud-right,.hud-center{position:absolute;top:max(12px,env(safe-area-inset-top));display:flex;align-items:center;gap:15px;color:#fff9e9;text-shadow:1px 2px 0 #16374a99}.hud-left{left:max(18px,env(safe-area-inset-left));background:#18384cdb;padding:8px 17px;border:1px solid #fff7e24a;border-radius:18px}.hud-right{right:max(14px,env(safe-area-inset-right));gap:8px}.hud-center{left:50%;transform:translateX(-50%);flex-direction:column;gap:7px;max-width:38%;text-align:center;pointer-events:none}#position{font-size:39px;font-weight:1000;line-height:1}#position small{font-size:15px;color:#a9cccf}#lap{font-size:12px;font-weight:900}#clock{font-size:12px;font-variant-numeric:tabular-nums;border-left:1px solid #ffffff44;padding-left:14px}#track-label{font-size:12px;font-weight:900;letter-spacing:1px;background:#16374a9c;padding:6px 12px;border-radius:20px}#race-message{font-size:14px;font-weight:900;color:#ffdd8b;white-space:nowrap}.small-control{background:#1b3b50cc;border:1px solid #ffffff7a;border-radius:12px;width:45px;height:44px;color:#fff7df;font-weight:900;font-size:20px}.small-control.active{color:#ffce76}#race-countdown{position:absolute;top:32%;left:50%;transform:translateX(-50%) rotate(-5deg);font-size:clamp(70px,12vw,150px);font-weight:1000;color:#ffce73;text-shadow:5px 6px 0 #193e53;pointer-events:none}#speed-panel{position:absolute;right:25px;bottom:25px;width:120px;background:#16384bc9;padding:11px 15px;border-radius:15px;color:#fff6df;text-align:center;pointer-events:none}#speed{font-size:36px;line-height:1.1}#speed-panel>span{font-size:10px;display:block}.charge{height:6px;background:#ffffff33;border-radius:4px;margin:7px 0}.charge i{display:block;height:100%;width:0;background:#65ece5;border-radius:4px}#drift-label{font-size:8px!important;letter-spacing:1px}#item-panel{position:absolute;bottom:27px;left:25px;border:2px solid #fff3d577;background:#17384bdc;color:#fff8e7;border-radius:17px;padding:9px 17px;min-width:165px;text-align:center;pointer-events:none}#item-icon{font-size:32px;color:#ffce77;display:block;line-height:1}#item-name{font-size:11px;display:block;margin:7px 0}#special-ready{font-size:8px;letter-spacing:1px;color:#8ee4d6}#mini-map{position:absolute;right:22px;top:83px;width:140px;height:92px;opacity:.9;pointer-events:none}#touch{position:absolute;inset:0;pointer-events:none;user-select:none;-webkit-user-select:none;touch-action:none}#joystick{position:absolute;left:max(23px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));width:152px;height:152px;background:#19394a77;border:3px solid #fff5e680;border-radius:50%;pointer-events:auto;touch-action:none;box-shadow:inset 0 0 0 15px #ffffff09}.stick-label{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:9px;font-weight:bold;letter-spacing:2px;color:#fff5dd;pointer-events:none}#stick{width:66px;height:66px;border-radius:50%;background:#ffe0a8d9;border:3px solid #fff5e8;position:absolute;left:40px;top:40px;box-shadow:0 5px 0 #182f4555;pointer-events:none}.stick-arrows{position:absolute;top:56px;left:10px;right:10px;color:#fff7e1;font-size:25px;letter-spacing:48px;white-space:nowrap;pointer-events:none}.touch-actions{position:absolute;right:max(21px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:244px;height:155px}.touch-btn{position:absolute;border-radius:50%;border:3px solid #fff4dc99;background:#23465cd4;color:#fff8e6;min-width:51px;min-height:51px;pointer-events:auto;touch-action:none;font-size:11px;font-weight:1000;box-shadow:0 4px 0 #112e4b55}.touch-btn.pressed{transform:translateY(3px);filter:brightness(1.2);box-shadow:none}.touch-btn small{display:block;font-size:9px;letter-spacing:.4px}.touch-btn.gas{right:0;bottom:0;width:79px;height:79px;background:#ffc76de6;color:#16344c;font-size:20px}.touch-btn.drift{right:8px;top:1px;width:66px;height:66px;background:#57bfc9d9}.touch-btn.item{right:92px;bottom:7px;width:76px;height:76px;background:#ef8a7ee6;font-size:22px}.touch-btn.special{right:96px;top:0;width:61px;height:61px;background:#a39bdadf;font-size:20px}.touch-btn.brake{left:0;bottom:12px;width:54px;height:54px;font-size:8px}.has-touch #speed-panel{bottom:189px;right:26px;width:90px;padding:5px 9px}.has-touch #speed{font-size:26px}.has-touch #item-panel{bottom:191px;left:28px;min-width:135px;padding:7px 10px}.has-touch #item-icon{font-size:23px}.has-touch #mini-map{right:83px;top:15px;width:105px;height:70px}.has-touch .hud-right{flex-direction:column}.has-touch #clock{display:none}#portrait-note{display:none;position:absolute;bottom:4px;left:12px;right:12px;text-align:center;color:#fff6e8;background:#16384bc9;border-radius:8px;font-size:9px;padding:5px;pointer-events:none}#controller-status{position:absolute;bottom:7px;right:18px;font-size:10px;color:#e7f3e6;pointer-events:none}#app.racing #controller-status{display:none}#toast{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);background:#15384cee;border:1px solid #fff0d966;color:#fff7e2;border-radius:14px;padding:12px 18px;font-size:13px;max-width:90%;pointer-events:none;display:none}#toast.visible{display:block}#hud[hidden],#touch[hidden]{display:none}
@media(max-width:1000px){.hero-copy{width:53%}.hero-sticker{width:95px;height:95px}.hero-sticker b{font-size:29px}.hero-sticker span{font-size:10px}.select-layout{grid-template-columns:1.5fr 1fr;gap:15px}.racer-card img{height:105px}.racer-card{min-height:130px}.tracks-grid{gap:9px}.track-card svg{height:85px}.track-caption{padding:7px}.track-caption b{font-size:11px}.setup-description{max-width:250px}.setup-bar{flex-wrap:wrap}.racer-detail h2{font-size:27px}}
@media(max-height:580px) and (orientation:landscape){#menus{padding:14px 23px}.home{min-height:100%}.hero-copy{padding:0 0 28px;width:54%;max-width:500px}.wordmark{font-size:clamp(49px,8.4vw,80px);line-height:.86;letter-spacing:-3px;margin:12px 0 15px}.eyebrow{font-size:9px;letter-spacing:1.6px}.hero-copy p{font-size:12px;max-width:330px;line-height:1.4;margin:9px 0}.hero-tags{margin:10px 0}.pill{font-size:8px;padding:5px 8px}.home .primary{font-size:14px;min-width:142px;padding:11px 17px;min-height:44px}.home .secondary{font-size:12px;padding:11px 16px;min-height:44px}.hero-art{min-height:270px}.hero-sticker{top:8%;width:80px;height:80px}.privacy-line{bottom:2px;font-size:8px}.menu-header{margin-bottom:12px}.menu-header h1{font-size:24px;margin:4px 0}.menu-header p{font-size:11px}.panel{padding:14px;border-radius:18px}.racer-card img{height:92px}.racer-card{min-height:118px}.racer-name{font-size:11px!important;padding:7px!important}.roster-grid{gap:8px}.racer-detail{padding:0 4px}.racer-detail h2{font-size:25px;margin:3px 0}.racer-detail p{font-size:11px;margin:5px 0}.stats{gap:7px;margin:11px 0}.stat{font-size:10px;grid-template-columns:75px 1fr}.special-card{margin-bottom:8px;padding:9px}.special-card small{font-size:9px}.racer-detail .primary{min-height:43px;padding:9px}.tracks-grid{grid-template-columns:repeat(5,1fr);gap:8px}.track-card svg{height:64px}.track-caption b{font-size:10px}.track-caption small{font-size:9px}.setup-bar{margin-top:12px;padding-top:12px}.setup-description{font-size:10px}.toggle{min-height:42px;padding:8px 10px;font-size:10px}.modal-shell{padding:0}.modal{padding:20px}.modal h1{font-size:26px}.controls-grid{margin:13px 0;gap:9px}.control-card{font-size:10px;line-height:1.6;padding:11px}.control-card h2{font-size:13px;margin-bottom:7px}.modal p{font-size:11px}.hud-left{padding:6px 12px;gap:10px;top:9px;left:14px;border-radius:13px}#position{font-size:30px}#lap{font-size:10px}.hud-center{top:10px;gap:4px}#track-label{font-size:10px;padding:5px 10px}#race-message{font-size:12px}.hud-right{top:9px;right:10px}.small-control{width:43px;height:43px}#joystick{width:132px;height:132px;left:max(17px,env(safe-area-inset-left));bottom:15px}#stick{left:33px;top:33px;width:60px;height:60px}.stick-arrows{top:47px;letter-spacing:40px;font-size:23px}.stick-label{bottom:9px;font-size:8px}.touch-actions{transform-origin:bottom right;transform:scale(.87);right:max(15px,env(safe-area-inset-right));bottom:15px}.has-touch #speed-panel{bottom:158px;right:21px;width:71px;padding:5px}.has-touch #speed{font-size:22px}.has-touch #drift-label{font-size:6px!important}.has-touch #item-panel{bottom:158px;left:20px;min-width:115px;padding:6px 9px}.has-touch #item-icon{display:none}.has-touch #item-name{font-size:10px;margin:2px 0 6px}#special-ready{font-size:7px}.has-touch #mini-map{top:68px;right:65px;width:88px;height:58px}.result-score{font-size:52px}.leaderboard li{padding:5px;font-size:11px}.leaderboard img{height:27px;width:27px}}
@media(orientation:portrait){#menus{padding:24px 18px}.home{display:block;position:relative}.hero-copy{width:100%;padding-bottom:23px}.wordmark{font-size:77px;letter-spacing:-4px}.hero-copy p{max-width:310px;font-size:14px}.hero-art{min-height:270px}.hero-art .hero-kart{width:85vw;max-width:420px}.hero-sticker{right:8px;top:0}.privacy-line{position:static;margin-top:20px;font-size:10px}.select-layout{display:flex;flex-direction:column}.roster-grid{grid-template-columns:repeat(4,1fr);gap:8px}.racer-card{min-height:103px}.racer-card img{height:76px}.racer-card .racer-name{font-size:10px;padding:7px 1px}.racer-detail h2{font-size:26px}.racer-detail .stats{grid-template-columns:1fr 1fr}.stat{grid-template-columns:69px 1fr;gap:6px;font-size:10px}.racer-detail .special-card{margin-bottom:10px}.panel{padding:14px}.tracks-grid{grid-template-columns:repeat(2,1fr)}.track-card svg{height:87px}.setup-bar{align-items:flex-start;flex-direction:column}.setup-description{max-width:100%}.controls-grid{grid-template-columns:1fr}.control-card{font-size:12px}.modal{padding:22px}.results-layout{grid-template-columns:1fr}.result-score{font-size:55px}.hud-center{top:70px;max-width:90%;width:90%}.hud-left{left:10px;top:10px;gap:10px;padding:8px 12px}#position{font-size:29px}#lap{font-size:10px}#clock{display:none}.hud-right{top:10px;right:10px;flex-direction:row!important}#joystick{width:120px;height:120px;left:12px;bottom:40px}#stick{width:54px;height:54px;top:30px;left:30px}.stick-arrows{top:42px;letter-spacing:35px;font-size:20px}.touch-actions{width:220px;transform:scale(.8);transform-origin:bottom right;right:12px;bottom:40px}.has-touch #item-panel{bottom:180px;left:12px;min-width:110px}.has-touch #speed-panel{bottom:189px;right:14px}.has-touch #mini-map{top:115px;right:15px;width:95px;height:63px}#app.racing #portrait-note{display:block}.menu-header h1{font-size:25px}.menu-header p{font-size:11px}#race-countdown{top:35%}.hero-tags{gap:5px}.pill{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
.racer-card svg{height:128px;width:100%;display:block;background:#e9e7db}.hero-canvas{width:100%;height:100%;max-height:570px;min-height:300px}.roster-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}.roster-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:11px;color:#57727a}.roster-pagination button{min-height:44px;min-width:48px}.roster-block{min-width:0}.racer-detail .portrait-preview{height:135px;width:100%;border-radius:16px;overflow:hidden;margin-bottom:10px}.racer-detail .portrait-preview svg{width:100%;height:100%;background:#e7e8db}.track-caption .feature{color:#397c7c;font-weight:bold;font-size:9px} .modal a{color:#266876}.home .bottom-note{font-size:10px;color:#b9d5d4}.menu-screen{max-width:1250px;margin:auto}#loading{color:#fff6e6;margin:40px;font-size:22px}@media(max-height:580px) and (orientation:landscape){.racer-card svg{height:80px}.roster-tabs{margin-bottom:8px;gap:5px}.roster-tabs .toggle{min-height:37px}.roster-pagination{margin-top:8px}.racer-detail .portrait-preview{display:none}.hero-canvas{min-height:270px}.racer-detail .role{font-size:9px}}@media(orientation:portrait){.racer-card svg{height:80px}.racer-detail .portrait-preview{display:none}.roster-tabs .toggle{padding:8px 10px;font-size:10px}}
.touch-btn.back-item{left:0;top:12px;width:54px;height:54px;font-size:9px;background:#d09ba0df}.racer-card{min-height:0}.racer-card svg{height:105px}@media(max-height:580px) and (orientation:landscape){.racer-card svg{height:76px}.roster-grid{grid-template-columns:repeat(4,1fr)}}
.small-control svg{width:23px;height:23px;vertical-align:middle}.racer-card .racer-name{min-height:38px;display:flex;align-items:center;justify-content:center;line-height:1.15}.hud-left,#item-panel,#speed-panel{backdrop-filter:blur(8px)}
.stick-arrows{letter-spacing:0!important;display:flex;justify-content:space-between}.stick-arrows b{font-weight:400}
#coins-display{display:flex;align-items:center;gap:4px;font-size:19px;font-weight:900;color:#ffdc8b;min-width:40px}#coins-display svg{width:23px;height:23px}#driver-badge{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:7px;align-items:center;border:1px solid #fff0d967;background:#16384bdc;color:#fff4df;border-radius:25px;padding:4px 12px 4px 4px;font-size:11px;pointer-events:none}#driver-portrait{width:31px;height:31px;border-radius:50%;overflow:hidden;display:block}#driver-portrait svg{width:100%;height:100%;display:block}.has-touch #driver-badge{bottom:10px}@media(max-height:580px) and (orientation:landscape){#coins-display{font-size:16px;min-width:33px}#coins-display svg{width:19px;height:19px}#driver-badge{font-size:9px;bottom:4px!important;padding:2px 8px 2px 2px}#driver-portrait{width:23px;height:23px}}@media(orientation:portrait){#driver-badge{bottom:170px!important;font-size:9px;max-width:120px}#coins-display{font-size:16px}#coins-display svg{width:18px;height:18px}.hud-left{gap:7px}}

/* Turbo Rally: controller setup, dual-item HUD and luminous arcade polish. */
.new-pill{background:#66e4d4;color:#18364c;border-color:#c7fff0}.pad-test{display:flex;align-items:center;gap:24px;padding:18px;background:#e1eee5;border-radius:18px;margin:16px 0}.pad-stick{width:90px;height:90px;border-radius:50%;background:#193c52;display:grid;place-items:center;flex-shrink:0}.pad-stick i{display:block;width:26px;height:26px;background:#69e4d4;border:3px solid white;border-radius:50%}#pad-live{font-weight:900;color:#24756c}#pad-buttons{font-size:12px;min-height:18px}#pad-map{font-size:11px}#reserve-item{display:block;font-size:9px;border-top:1px solid #ffffff44;margin:7px 0;padding-top:7px;color:#acecdf}#item-panel{border:2px solid #fff3cd66;box-shadow:0 5px 22px #17364755}.charge{height:7px!important}.primary{background:linear-gradient(135deg,#ffe19a,#ffc75f)}.wordmark{text-shadow:3px 4px 0 #173049,7px 8px 0 #17304966}.track-card.selected{box-shadow:0 0 0 3px #64d8c7,0 7px 20px #17364a33}#race-message{font-weight:900;text-shadow:0 2px 8px #17364a}.hud-left{border:1px solid #fff3d858}@media(max-height:580px){#reserve-item{font-size:7px;margin:3px 0;padding-top:3px}.has-touch #item-panel{bottom:154px}}@media(orientation:portrait){.pad-test{gap:12px;padding:12px}.pad-stick{width:70px;height:70px}.home .button-row{gap:9px}.home .tertiary{font-size:12px}.wordmark{font-size:70px}}

/* Dimensional papercraft edition */
.craft-label{position:absolute;bottom:12%;right:0;color:#fff2cf;line-height:1.7;font-size:10px;letter-spacing:3px;text-shadow:0 2px 8px #172d43}.craft-label b{font-size:13px;letter-spacing:1.2px}.hero-sticker{top:7%;width:100px;height:100px;background:#e59c65;border:3px solid #f2dfbd;box-shadow:5px 8px 0 #10263d55;clip-path:polygon(50% 0,70% 8%,93% 18%,97% 44%,100% 66%,79% 90%,54% 100%,27% 92%,5% 77%,0 50%,8% 24%,30% 5%);border-radius:0}.wordmark{letter-spacing:-3px;text-shadow:1px 1px 0 #cfbd99,3px 5px 0 #103040,6px 9px 0 #10304066}.panel,.modal{background:linear-gradient(125deg,#fff4dc,#e9dfc7);border-radius:9px;border:1px solid #fff1d2;box-shadow:5px 8px 0 #10253f55,0 20px 60px #0a152e66}.racer-card{border-radius:7px;box-shadow:2px 4px 0 #10253722}.primary,.secondary,.tertiary,.toggle{border-radius:6px!important}#shade{background:linear-gradient(90deg,#102838ee,#102838a8 37%,#10283822 72%)}.hud-left,#item-panel,#speed-panel{border-radius:8px!important;box-shadow:3px 4px 0 #10233566;border:1px solid #e9d5a78a}.track-card{border-radius:7px}.hero-copy p{max-width:345px}.home .privacy-line{font-size:10px}.new-pill{color:#f6e8c9;background:#7b6450;border-color:#dbc9a3}@media(orientation:portrait){#shade{background:linear-gradient(180deg,#102838ee,#102838a8 55%,#10283833)}.hero-art{min-height:140px}.craft-label{right:5px;bottom:3%}.hero-sticker{top:0;width:80px;height:80px}.wordmark{font-size:66px}}

.track-world{width:100%;height:125px;object-fit:cover;display:block}.track-card .track-caption{border-top:3px solid #d7bd92}@media(max-height:580px) and (orientation:landscape){.track-world{height:78px}}@media(orientation:portrait){.track-world{height:100px}}

/* The signature garage: selectable bodies, identity paint and an unobscured live showroom. */
.garage-layout{max-width:1250px;margin:auto;display:grid;grid-template-columns:minmax(440px,1fr) minmax(280px,.95fr);gap:26px;min-height:550px}.garage-panel{width:100%;padding:22px}.garage-driver{display:flex;align-items:center;gap:14px;margin-bottom:18px}.garage-driver .eyebrow{color:#617775;font-size:9px;letter-spacing:1.7px}.garage-driver h2{font-size:27px;line-height:1.05;margin:7px 0}.garage-driver p{font-size:12px;margin:5px 0;color:#536c73}.garage-portrait{height:61px;width:61px;flex:none;border:3px solid #f8edce;border-radius:50%;overflow:hidden;background:#d2dfd5;box-shadow:0 3px 8px #203c4926}.garage-portrait svg{display:block;width:100%;height:100%}.garage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vehicle-card{position:relative;min-width:0;border:2px solid #cbbd9f;border-radius:12px;background:linear-gradient(135deg,#fdf9e9,#e4ddc8);padding:4px 9px 11px;color:#233e4c;text-align:left;box-shadow:0 3px 0 #ad9f7b44;transition:transform .15s,border-color .15s}.vehicle-card:hover{transform:translateY(-2px)}.vehicle-card.selected{border-color:#2d8888;background:linear-gradient(135deg,#f1f6e7,#cde4d9);box-shadow:0 0 0 2px #62c7b366,0 4px 0 #457a6d33}.vehicle-card.selected:after{content:'✓';position:absolute;right:9px;top:9px;border-radius:50%;background:#2d8888;color:#fff;width:22px;height:22px;text-align:center;line-height:22px;font-size:14px;font-weight:900}.vehicle-diagram{display:block;width:100%;height:112px}.vehicle-title{display:block;font-size:13px;font-weight:900}.vehicle-tag{display:block;font-size:10px;color:#5b7176;margin-top:4px}.vehicle-signature{display:block;font-size:8px;letter-spacing:1.1px;text-transform:uppercase;margin-top:7px;color:#6c7771;font-weight:900}.garage-spec{display:flex;gap:12px;align-items:center;margin:16px 0 4px;padding-top:13px;border-top:1px solid #bcab8966}.garage-spec p{font-size:11px;line-height:1.55;margin:0;color:#4d6269}.garage-swatches{display:flex;flex:none}.garage-swatches i{height:25px;width:25px;border:2px solid #fff5dc;border-radius:50%;box-shadow:0 2px 4px #20374a30;margin-left:-5px}.garage-fairness{font-size:10px;line-height:1.5;color:#657774;margin:12px 0 16px}.garage-showroom{position:relative;min-height:420px;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;padding-bottom:30px}.garage-preview-label{position:absolute;top:10px;left:20px;letter-spacing:2px;font-size:10px;color:#fff0d0;background:#14394a99;border:1px solid #ecd5a955;padding:10px 14px;border-radius:5px}.garage-preview-footer{color:#ffefcf;text-align:center;text-shadow:0 2px 8px #153349}.garage-preview-footer span{font-size:10px;letter-spacing:4px;color:#dfb87e}.garage-preview-footer b{display:block;font-size:30px;margin:8px 0}.garage-preview-footer small{font-size:12px}.garage-panel .button-row{gap:9px}.garage-panel .primary{flex:1}.garage-panel .tertiary{font-size:11px;padding:13px 12px}
@media(max-width:900px){.garage-layout{grid-template-columns:minmax(350px,1fr) minmax(200px,.7fr);gap:14px}.garage-panel{padding:16px}.vehicle-diagram{height:96px}.garage-preview-footer b{font-size:22px}.garage-driver h2{font-size:23px}}
@media(max-height:580px) and (orientation:landscape){.garage-layout{min-height:340px;grid-template-columns:minmax(420px,1.25fr) minmax(200px,.75fr)}.garage-panel{padding:12px}.garage-driver{margin-bottom:9px;gap:10px}.garage-driver h2{font-size:19px;margin:4px 0}.garage-portrait{width:44px;height:44px}.garage-driver p{font-size:10px}.garage-grid{gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.vehicle-diagram{height:72px}.vehicle-title{font-size:10px}.vehicle-tag{font-size:8px;line-height:1.3}.vehicle-signature{font-size:7px;letter-spacing:.5px}.vehicle-card{padding:2px 5px 8px}.vehicle-card.selected:after{width:17px;height:17px;line-height:17px;font-size:10px;right:4px;top:4px}.garage-spec{margin-top:10px;padding-top:8px}.garage-fairness{margin:8px 0}.garage-showroom{min-height:290px}.garage-preview-label{left:0;font-size:8px;letter-spacing:1px;padding:7px}.garage-preview-footer b{font-size:20px}.garage-preview-footer small{font-size:9px}}
@media(orientation:portrait){.garage-layout{display:flex;flex-direction:column;gap:12px;min-height:0}.garage-panel{order:2;padding:16px}.garage-showroom{order:1;height:190px;min-height:190px;padding-bottom:5px}.garage-preview-label{top:0;left:0;font-size:8px;padding:6px 8px}.garage-preview-footer b{font-size:20px;margin:4px 0}.garage-preview-footer span{font-size:8px}.garage-preview-footer small{font-size:10px}.vehicle-diagram{height:106px}.garage-driver h2{font-size:24px}.garage-panel .button-row{flex-wrap:wrap}.garage-panel .primary{min-width:190px}}

#speed-reason{display:block;min-height:1em;color:#ffe2a0;font-size:10px;font-weight:800;letter-spacing:.04em}#item-controls{display:block;margin-top:5px;color:#fff3d2;font-size:10px;line-height:1.25;max-width:220px}
