@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAVoAA8AAAAACegAAAUTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbDBwYBmAAbBEIColciA0LHgABNgIkAzgEIAWDZAc+DAcb9QdRlE5OmOBngm2rYa0IiBSU4SB6GXpb1ovxAEMb3kc8/X6ve+4LIEoWKsKQjE0KaAS5si8LV935qoC6jkBWl99PeNa/acrMsmIWkJM7J2fiwyD6/rZ3nySQEEJPI2+8mQgCjl/7/xfCPjhmumgbjyJtDTLAgZRI5C2Lsyg9Ej+AogCfIgpT4Glg/xqJD/gP3cxixar09EqCLkAR0S2CjsmOByOgCZ096O8EMaNtszM3NFMavYQr9Cp5x9dfFA/5c6zg2Tty8yAadUVizTiA6qa3QCC/ewmYw2NFVjA0W0NfnG8fGGCFUMwlNjUZzmSW9PlG/R/AyDGpxk28hPlctcMi84z8m/D+t4A8BCJ1LJF6PM8poA/kPvkJWDJ1K8BaUZaAFU7lYnST2ctUYrFxdcncWZ+9iCBZ7QpGtRZjgknaiROuAw9zmuW0fBVJAuYMq2n1OtKMXVFHky8Q0hrFz5fHL9r+nEPMnjt7HmivMC8x91xDA/1M/oAFOmT59tOnXR4D/SyfffGCednGaXbT8vxlrLJwBWKuYq7gZdFz7CSU+gIt6kE7uc+Qo2v37Ql5HkHKQsxRQtvGGz2XFwMdv411vIFQ6YqXmDMUlNIsQgwHBXRRFWtcw+hMzOajmR59mMsOuWmOF4yqrMx9tIxFTBfJL+Ii0RlIK4ImubT7MpIsjraaeanajTm7MtJOmW4rxrqXFRkT0If2oT0spW5rQzzafpjguAN9hiRinFZih+0AJ4zTkDbS8Uh95LjURmGlmKaOU1gqqpGTVk+skg4HuviVSNOtxkAukjRmgehpuFJzeK1lTT5P1BR1/PNEQdrPnuV+BTaWg//+kPhs+NC04dbkEaOaIOzcWmf+0GCvjO57t/beypjctoHZoyi8WpYUkmvITj8o+TTCOX91Xp24bnVevsQkk/AmUsZTIOZotreXUWEZNO7bn9qWsbLZpFW6JvXu9NXJzKKH42p+jchuqW1L6vNy1e9301q7tfmbr/QZMkUOD899Yd14NHBLo/SjF5cCSkjT2NHk135OQk4wT8IJPl3A+KVAmsC6w9Yzeb5ippX3NAv4svYkQsqFgb5lm1UzJZ7DRrsvW6fPCvnquOaJ3AZkUSKvIgyXf96PrZJ0kgSzaEuXOoX1hffmtOr/WYZ+xra+RIUo1WFKdehUQIrG3y5m3i9eznH2AwnYJE9dQSY4kM2VOdnutWqt4pcfeb+k1NlrCD2P3ZO5XLekNz+2uPpKb/XJ2t0NUfOkPccR0vHefWSNS4H/BGiupbdcml/BnXeommkZlIk13/I8D/sOQlw8z33xfpVl+C/GxBeA17vkDn3BYWv7dXrdRJsCQnVz7EH1QwnxcArxoPR47glkG2iQNwSZIChqhlyhaVP9a/045AZNdsyOfJGctxwg9NgmBAURbAFAm+MIaZIADY94zBhygFn0uMesbKlubVJlNpuQyGwxwB96jhQ4qR9Qu4XyKu1Tp1cLH/p5ZE990E5DFwpNaqksidKBtoMWVahBSjs1KNRwaI2gi380ig9P3rz5SjWgRqcMBWu/Q2sDMrNLKOq0U7MWT/ny5gPGn6tBkwHtavQaVcbp0m0kfWtTWctTnNVxceak0ulKzTpDe6uiNRqHjom7XY06zVt5qtVilAt3lKFEEM26JK19bwCDFNQf9sQgYUrmZO1Qm5ZiW0CGLZ6Hyvq4TZke5H+6xGcf+8Snzvruczt8Mu1G9R7wrwIAAA==) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(./lilita-one-latin-400-normal-87r-Z-Re.woff2) format("woff2"),url(./lilita-one-latin-400-normal-DXkechA3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2) format("woff2"),url(./nunito-cyrillic-ext-600-normal-vnfu4DTE.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-600-normal-DJGQ2h05.woff2) format("woff2"),url(./nunito-cyrillic-600-normal-BUjmtIuu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-vietnamese-600-normal-BY8O6Cug.woff2) format("woff2"),url(./nunito-vietnamese-600-normal-DO1RqFw5.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-ext-600-normal-Dd9Zuxh1.woff2) format("woff2"),url(./nunito-latin-ext-600-normal-BKUpuB78.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-600-normal-Br8yIETf.woff2) format("woff2"),url(./nunito-latin-600-normal-Cd0eNu1l.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-ext-800-normal-B-cvGohL.woff2) format("woff2"),url(./nunito-cyrillic-ext-800-normal-pjRatrRO.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-800-normal-D3igD7Kl.woff2) format("woff2"),url(./nunito-cyrillic-800-normal-DymMgApb.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-vietnamese-800-normal-D_CZYdm9.woff2) format("woff2"),url(./nunito-vietnamese-800-normal-Dz0hZPb5.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-ext-800-normal-CtU8tJOV.woff2) format("woff2"),url(./nunito-latin-ext-800-normal-CDcxIxx8.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2) format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #1b1140;--ink-2: #2a1a5e;--ink-3: #3b2780;--paper: #ffffff;--pink: #ff4fa3;--blue: #3ad7ff;--yellow: #ffd400;--orange: #ff7a1a;--green: #36e27b;--red: #ff3b5c;--glass: rgba(27, 17, 64, .72);--glass-2: rgba(255, 255, 255, .1);--radius: 22px;--font-display: "Lilita One", "Arial Rounded MT Bold", system-ui, sans-serif;--font-body: "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--pad: clamp(10px, 2.2vmin, 22px);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:var(--ink);color:var(--paper);font-family:var(--font-body);font-weight:600;overscroll-behavior:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}button,input{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;touch-action:manipulation}button:focus-visible,input:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}#app,#scene{position:fixed;inset:0;width:100%;height:100%}#scene{display:block}#ui{position:fixed;inset:0;pointer-events:none}#ui>*{pointer-events:none}#boot{position:fixed;inset:0;display:grid;place-content:center;gap:18px;background:radial-gradient(circle at 50% 40%,#3b1d8f,var(--ink) 70%);z-index:100;transition:opacity .6s}#boot.gone{opacity:0;pointer-events:none}.boot-logo{font-family:var(--font-display);font-size:clamp(36px,9vmin,80px);letter-spacing:2px;background:linear-gradient(180deg,#fff36b,#ff9d1a);-webkit-background-clip:text;background-clip:text;color:transparent;text-align:center}.boot-error{margin:0;padding:0 24px;text-align:center;font-weight:800;line-height:1.5}.boot-bar{width:200px;height:8px;margin:0 auto;border-radius:8px;background:#ffffff26;overflow:hidden}.boot-bar i{display:block;height:100%;width:40%;border-radius:8px;background:linear-gradient(90deg,var(--pink),var(--yellow));animation:boot 1s ease-in-out infinite alternate}@keyframes boot{to{transform:translate(150%)}}.screens{position:absolute;inset:0}.screen{position:absolute;inset:0;display:flex;flex-direction:column;padding:calc(var(--pad) + var(--safe-t)) calc(var(--pad) + var(--safe-r)) calc(var(--pad) + var(--safe-b)) calc(var(--pad) + var(--safe-l));gap:var(--pad);pointer-events:auto;animation:screen-in .35s cubic-bezier(.2,.9,.3,1.2)}.screen:not(.screen-title):not(.screen-race):not(.screen-garage):before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#1b11408c,#1b1140d1);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:-1}.screen-race{pointer-events:none}@keyframes screen-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}.screen-head{display:flex;align-items:center;gap:12px;flex:none}.screen-head h2{margin:0;flex:1;font-family:var(--font-display);font-weight:400;font-size:clamp(24px,5vmin,42px);letter-spacing:1px;text-shadow:0 3px 0 rgba(0,0,0,.35)}.screen-head.center h2{text-align:center}.screen-foot{flex:none;display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.panel{background:var(--glass);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:clamp(12px,2.4vmin,22px);box-shadow:0 12px 40px #00000059;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.panel h3{margin:0 0 10px;font-family:var(--font-display);font-weight:400;font-size:clamp(18px,3.4vmin,26px);letter-spacing:.5px}.scroll{overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch;min-height:0;scrollbar-width:thin}.muted{opacity:.75;margin:0 0 10px}.btn{--b: var(--pink);--b2: #c4246f;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 22px;border-radius:999px;background:linear-gradient(180deg,#ffffff26,#fff0),var(--b);box-shadow:0 5px 0 var(--b2),0 10px 22px #0000004d;font-family:var(--font-display);font-size:clamp(16px,3vmin,22px);letter-spacing:.5px;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.25);transition:transform .08s,box-shadow .08s,filter .15s}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--b2),0 4px 10px #0000004d}.btn:disabled{filter:grayscale(.8) brightness(.8);pointer-events:none}.btn.gold{--b: #ffb300;--b2: #c46a00;color:#3a1d00;text-shadow:0 1px 0 rgba(255,255,255,.5)}.btn.secondary{--b: #5b3cc4;--b2: #33208a}.btn.danger{--b: #ff3b5c;--b2: #a3112e}.btn.ghost{background:#ffffff1a;box-shadow:inset 0 0 0 2px #ffffff40}.btn.ghost:active{transform:translateY(2px)}.btn.big{min-height:clamp(58px,12vmin,84px);padding:10px clamp(22px,4vmin,36px);font-size:clamp(20px,4.2vmin,32px)}.btn-icon{font-size:1.15em;filter:drop-shadow(0 2px 0 rgba(0,0,0,.2))}.btn-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.btn-label small{font-family:var(--font-body);font-weight:800;font-size:.5em;opacity:.8;margin-top:3px;text-transform:uppercase;letter-spacing:1px}.icon-btn{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:50%;background:#ffffff24;box-shadow:inset 0 0 0 2px #fff3;font-size:22px;font-weight:800;transition:transform .1s,background .15s}.icon-btn:active{transform:scale(.9)}.icon-btn:hover{background:#ffffff38}.link{color:var(--yellow);text-decoration:underline;font-weight:800}.screen-title{justify-content:center;align-items:center;background:radial-gradient(ellipse at 50% 45%,#1b11401a,#1b1140a6 75%)}.title-wrap{display:flex;flex-direction:column;align-items:center;gap:clamp(8px,2.4vmin,20px)}.logo{font-family:var(--font-display);font-size:clamp(48px,15vmin,140px);line-height:.9;display:flex;filter:drop-shadow(0 6px 0 #2a1060) drop-shadow(0 14px 24px rgba(0,0,0,.45))}.logo span{display:inline-block;background:linear-gradient(180deg,#fff9b0,#ffd400 45%,#ff8a00);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:clamp(2px,.6vmin,5px) #2a1060;paint-order:stroke fill;animation:logo-bounce 2.4s ease-in-out infinite;animation-delay:calc(var(--i) * .08s);transform-origin:bottom}.logo span:nth-child(5){margin-right:.08em}.logo span.party{background:linear-gradient(180deg,#ffe0f2,#ff4fa3,#c4246f);-webkit-background-clip:text;background-clip:text}@keyframes logo-bounce{0%,70%,to{transform:translateY(0) rotate(0)}80%{transform:translateY(-10%) rotate(-4deg)}90%{transform:translateY(2%) rotate(2deg)}}.tagline{margin:0;font-weight:800;font-size:clamp(14px,2.8vmin,20px);text-shadow:0 2px 6px rgba(0,0,0,.6);text-align:center}.title-actions{display:flex;gap:clamp(10px,2.5vmin,22px);flex-wrap:wrap;justify-content:center;margin-top:6px}.title-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.title-links{position:absolute;right:calc(var(--pad) + var(--safe-r));bottom:calc(var(--pad) + var(--safe-b));display:flex;gap:14px;font-size:13px;font-weight:700}.title-links a{color:#ffffffbf;text-decoration:none;text-shadow:0 1px 4px rgba(0,0,0,.6)}.title-links a:hover{color:#fff;text-decoration:underline}.profile-chip{position:absolute;left:calc(var(--pad) + var(--safe-l));top:calc(var(--pad) + var(--safe-t));display:flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;border-radius:999px;background:var(--glass);box-shadow:inset 0 0 0 2px #ffffff26;text-align:left}.chip-text{display:flex;flex-direction:column;line-height:1.15}.chip-text small{opacity:.75;font-size:12px}.avatar{--c: var(--pink);display:inline-grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;font-size:22px;background:radial-gradient(circle at 35% 30%,#fff6,#fff0 70%),var(--c);box-shadow:inset 0 -3px #0003,0 0 0 3px #ffffffd9}.avatar.lg{width:clamp(48px,11vmin,72px);height:clamp(48px,11vmin,72px);font-size:clamp(26px,6vmin,40px)}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px 18px;margin-top:14px}.fields.compact{grid-template-columns:1fr 1fr;gap:10px 14px}.fields.compact .field:has(.segmented){grid-column:1 / -1}.field{display:flex;flex-direction:column;gap:6px}.field>label,.field .lbl{font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;opacity:.8}.stepper-ctl{display:flex;align-items:center;gap:6px;background:#ffffff14;border-radius:999px;padding:4px;width:fit-content}.stepper-ctl button{width:40px;height:40px;border-radius:50%;background:var(--ink-3);font-size:22px;font-weight:800;box-shadow:0 3px #1d1050}.stepper-ctl button:active{transform:translateY(2px);box-shadow:0 1px #1d1050}.stepper-ctl output{min-width:44px;text-align:center;font-family:var(--font-display);font-size:24px}.segmented{display:flex;background:#ffffff14;border-radius:999px;padding:4px;gap:4px;width:fit-content;max-width:100%;flex-wrap:wrap}.segmented button{padding:8px 14px;min-height:40px;border-radius:999px;font-weight:800;font-size:14px;white-space:nowrap;transition:background .15s,transform .1s}.segmented button.on{background:linear-gradient(180deg,#ff7ac0,var(--pink));box-shadow:0 3px #c4246f}.switch{flex-direction:row;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;position:relative}.switch-text{display:flex;flex-direction:column}.switch-text span{font-weight:800}.switch-text small{opacity:.7;font-size:12px}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch-ui{flex:none;width:56px;height:32px;border-radius:999px;background:#ffffff2e;position:relative;transition:background .2s}.switch-ui:after{content:"";position:absolute;left:4px;top:4px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0000004d;transition:transform .2s cubic-bezier(.3,1.4,.5,1)}.switch input:checked+.switch-ui{background:var(--green)}.switch input:checked+.switch-ui:after{transform:translate(24px)}.switch input:focus-visible+.switch-ui{outline:3px solid var(--yellow)}.slider input{width:100%;accent-color:var(--pink);height:28px;touch-action:pan-x}.screen-solo .panel{flex:0 1 auto;margin:auto 0}.track-cards{display:flex;gap:12px;overflow-x:auto;padding:4px 4px 12px;scroll-snap-type:x mandatory;touch-action:pan-x;scrollbar-width:none}.track-cards::-webkit-scrollbar{display:none}.track-card{flex:none;scroll-snap-align:center;width:clamp(150px,30vmin,220px);min-height:clamp(110px,24vmin,160px);padding:12px;border-radius:18px;background:var(--bg);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:2px;text-align:left;position:relative;box-shadow:0 6px #0000004d;transition:transform .15s,box-shadow .15s;overflow:hidden}.track-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(20,8,50,.75))}.track-card>*{position:relative;z-index:1}.track-card.on{transform:translateY(-4px);box-shadow:0 0 0 4px var(--yellow),0 10px #0000004d}.track-emoji{position:absolute!important;top:8px;right:10px;font-size:clamp(30px,7vmin,48px);filter:drop-shadow(0 4px 4px rgba(0,0,0,.3))}.track-card b{font-family:var(--font-display);font-weight:400;font-size:clamp(17px,3.4vmin,22px)}.track-card small{font-size:12px;opacity:.9;line-height:1.2}.track-card em{font-style:normal;font-size:12px;color:var(--yellow);font-weight:800}.screen-garage .screen-head h2{flex:none}.garage-panel{margin-left:auto;width:min(100%,470px);flex:1;display:flex;flex-direction:column;gap:12px}.name-input,.code-input{width:100%;padding:12px 18px;border-radius:16px;border:0;background:#ffffff1f;box-shadow:inset 0 0 0 2px #fff3;font-family:var(--font-display);font-size:22px;user-select:text;-webkit-user-select:text}.char-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.char-tile{--c: var(--pink);display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:16px;background:#ffffff1a;box-shadow:inset 0 0 0 2px #ffffff4d;transition:transform .12s}.char-tile span{font-size:clamp(26px,6vmin,36px)}.char-tile small{font-weight:800;font-size:12px}.char-tile.on{transform:scale(1.06);box-shadow:inset 0 0 0 3px #fff,0 0 0 3px var(--c),0 6px 18px #00000059}@supports (color: color-mix(in srgb,red,red)){.char-tile{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 45%,transparent),color-mix(in srgb,var(--c) 18%,transparent));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--c) 60%,transparent)}.char-tile.on{box-shadow:inset 0 0 0 3px #fff,0 0 0 3px var(--c),0 6px 18px color-mix(in srgb,var(--c) 60%,transparent)}}.char-info h3{margin:4px 0 2px}.char-info p{margin:0 0 8px;opacity:.8}.stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px}.stat{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:800}.stat-bar{display:flex;gap:3px}.stat-bar i{width:16px;height:10px;border-radius:3px;background:#ffffff26}.stat-bar i.on{background:linear-gradient(90deg,var(--yellow),var(--orange))}.net-status{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--glass);font-size:13px;font-weight:800}.net-status i{width:10px;height:10px;border-radius:50%;background:var(--yellow);animation:pulse 1s infinite alternate}.net-status.online i{background:var(--green);animation:none}.net-status.offline i{background:var(--red);animation:none}@keyframes pulse{to{opacity:.3}}.party-panel{flex:1;display:flex;align-items:center;justify-content:center;gap:clamp(12px,3vmin,30px);flex-wrap:wrap;overflow-y:auto}.party-card{width:min(100%,360px);padding:clamp(14px,3vmin,26px);border-radius:26px;background:var(--glass);border:1px solid rgba(255,255,255,.14);display:flex;flex-direction:column;gap:10px;align-items:stretch}.party-card h3{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(22px,4.4vmin,30px)}.party-card p{margin:0;opacity:.8}.party-or{font-family:var(--font-display);font-size:22px;opacity:.7}.join-row{display:flex;gap:8px}.code-input{text-align:center;letter-spacing:10px;font-size:30px;text-transform:uppercase;min-width:0}.lobby{position:absolute;inset:0;display:flex;flex-direction:column;gap:var(--pad);padding:inherit}.room-code{flex:1;display:flex;flex-direction:column;align-items:center;line-height:1}.room-code small{font-weight:800;font-size:11px;letter-spacing:3px;opacity:.7}.room-code b{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,8vmin,56px);letter-spacing:4px;color:var(--yellow);text-shadow:0 4px 0 #8a4b00}.lobby-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1.1fr;gap:var(--pad)}.lobby-body .panel{overflow-y:auto;touch-action:pan-y;min-height:0}.players{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}.players li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:16px;background:#ffffff12;animation:pop-in .35s cubic-bezier(.3,1.6,.5,1);position:relative}.players li.me{box-shadow:inset 0 0 0 2px var(--yellow)}.players li.ready{background:#36e27b29}.players li.bot,.players li.away{opacity:.6}.players li.more{justify-content:center;font-weight:800}.players li em{position:absolute;top:-6px;right:8px;font-style:normal;font-size:10px;font-weight:800;background:var(--yellow);color:#3a1d00;padding:2px 6px;border-radius:6px}.players .kick{margin-left:auto;flex:none;min-width:32px;height:32px;padding:0 8px;border-radius:999px;background:#ffffff1a;font-size:13px;font-weight:800;opacity:.7}.players .kick.armed{background:var(--pink);opacity:1}.pname{display:flex;flex-direction:column;min-width:0}.pname b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pname small{opacity:.75;font-size:12px;text-transform:capitalize}@keyframes pop-in{0%{transform:scale(.6);opacity:0}}.track-pick{display:flex;align-items:center;gap:8px;padding:10px;border-radius:18px;background:var(--bg);box-shadow:inset 0 -40px 40px -20px #14083299}.tp-name{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5)}.tp-name span{font-size:30px}.tp-name b{font-family:var(--font-display);font-weight:400;font-size:22px}.tp-name small{font-size:12px}.settings-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.settings-summary span{padding:8px 12px;border-radius:999px;background:#ffffff1a;font-weight:800;text-transform:capitalize}.lobby-foot{justify-content:space-between}.react-bar{display:flex;gap:4px;background:var(--glass);padding:4px;border-radius:999px;overflow-x:auto;max-width:100%;scrollbar-width:none}.react-bar button{width:44px;height:44px;flex:none;border-radius:50%;font-size:24px;transition:transform .1s}.react-bar button:active{transform:scale(1.35)}.waiting{font-weight:800;padding:12px 18px;border-radius:999px;background:var(--glass)}.lobby-react-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}.float-react{position:absolute;bottom:12%;display:flex;flex-direction:column;align-items:center;animation:float-up 2.6s ease-out forwards;pointer-events:none}.float-react span{font-size:52px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}.float-react small{font-weight:800;background:var(--glass);padding:2px 8px;border-radius:8px}@keyframes float-up{0%{transform:translateY(40px) scale(.4);opacity:0}15%{transform:translateY(0) scale(1.2);opacity:1}to{transform:translateY(-50vh) scale(1) rotate(12deg);opacity:0}}.overlay{position:absolute;inset:0;display:none;place-items:center;pointer-events:auto!important;z-index:20;padding:calc(var(--pad) + var(--safe-t)) calc(var(--pad) + var(--safe-r)) calc(var(--pad) + var(--safe-b)) calc(var(--pad) + var(--safe-l))}.overlay.visible{display:grid}.overlay-backdrop{position:absolute;inset:0;background:#0a041e99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.modal{position:relative;width:min(100%,620px);max-height:100%;display:flex;flex-direction:column;gap:14px;padding:clamp(16px,3.4vmin,28px);border-radius:28px;background:linear-gradient(180deg,#34217a,#22145a);border:1px solid rgba(255,255,255,.16);box-shadow:0 20px 60px #00000080;animation:screen-in .3s cubic-bezier(.2,.9,.3,1.3)}.modal h3{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(24px,5vmin,34px);text-align:center}.modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.invite-body{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}.qr{width:clamp(140px,34vmin,220px);aspect-ratio:1;border-radius:16px;background:#fff;padding:8px}.big-code{font-family:var(--font-display);font-size:clamp(44px,11vmin,72px);letter-spacing:8px;color:var(--yellow);text-shadow:0 5px 0 #8a4b00}.invite-url{display:block;font-size:12px;opacity:.7;word-break:break-all;user-select:text;-webkit-user-select:text}.pause{width:min(100%,420px)}.pause-actions{display:flex;flex-direction:column;gap:12px;min-height:0}.pause-settings{max-height:60vh}.pause-settings .settings-grid{grid-template-columns:1fr}.results-body{flex:1;min-height:0;display:grid;grid-template-columns:1.1fr 1fr;gap:var(--pad);align-items:end}.results-body .panel{align-self:stretch}.podium{display:flex;align-items:flex-end;justify-content:center;gap:10px;height:100%}.step{display:flex;flex-direction:column;align-items:center;gap:4px;width:30%;max-width:150px;animation:rise .7s cubic-bezier(.3,1.4,.5,1) backwards}.step.p1{animation-delay:.5s}.step.p2{animation-delay:.25s}.step b{font-size:clamp(13px,2.6vmin,18px);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step small{opacity:.8;font-size:12px}.step .block{width:100%;display:grid;place-items:start center;padding-top:6px;border-radius:14px 14px 0 0;font-family:var(--font-display);font-size:clamp(28px,7vmin,48px);text-shadow:0 3px 0 rgba(0,0,0,.3)}.step.p1 .block{height:clamp(70px,22vmin,150px);background:linear-gradient(180deg,#ffe14f,#e0a100)}.step.p2 .block{height:clamp(50px,15vmin,105px);background:linear-gradient(180deg,#eef3fb,#a9b6c9);color:#3b4660}.step.p3 .block{height:clamp(36px,10vmin,72px);background:linear-gradient(180deg,#ffb27a,#c86a2c)}.step.me b{color:var(--yellow)}@keyframes rise{0%{transform:translateY(60%);opacity:0}}.result-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.result-list li{display:grid;grid-template-columns:44px 40px 1fr auto;align-items:center;gap:10px;padding:6px 10px;border-radius:14px;background:#ffffff0f}.result-list li.me{background:#ffd4002e;box-shadow:inset 0 0 0 2px var(--yellow)}.rplace{font-family:var(--font-display);font-size:20px}.rname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rtime{font-variant-numeric:tabular-nums;opacity:.85}.css-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.css-confetti i{position:absolute;top:-20px;left:var(--x);width:10px;height:16px;border-radius:3px;background:hsl(var(--h) 95% 60%);animation:confetti 3.2s linear var(--d) infinite}@keyframes confetti{to{transform:translateY(110vh) rotate(720deg) translate(40px)}}.settings-scroll,.how-grid{flex:1}.settings-grid,.how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--pad);align-items:start}.settings-grid .panel{display:flex;flex-direction:column;gap:14px}.about{text-align:center;opacity:.6;font-size:13px}.how-list{margin:0 0 14px;padding-left:18px;display:flex;flex-direction:column;gap:8px;line-height:1.35}kbd{display:inline-block;min-width:24px;padding:1px 6px;margin:0 2px;border-radius:6px;background:#ffffff26;box-shadow:0 2px #0006;font-family:inherit;font-weight:800;text-align:center}.spark{font-weight:800}.spark.b{color:var(--blue)}.spark.o{color:var(--orange)}.spark.p{color:#c65bff}.item-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.item-list li{display:flex;align-items:center;gap:12px}.item-list li>span:last-child{display:flex;flex-direction:column}.item-list small{opacity:.75}.iicon{width:42px;height:42px;flex:none;display:grid;place-items:center;font-size:24px;border-radius:50%;background:#ffffff1a}.app-toasts{position:fixed;top:calc(12px + var(--safe-t));left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:50;pointer-events:none}.app-toast{padding:10px 18px;border-radius:999px;background:var(--ink-3);box-shadow:0 8px 24px #0006;font-weight:800;animation:toast-in .3s cubic-bezier(.3,1.5,.5,1);transition:opacity .4s,transform .4s;text-align:center}.app-toast.error{background:#b0193a}.app-toast.success{background:#188a4a}.app-toast.out{opacity:0;transform:translateY(-10px)}@keyframes toast-in{0%{transform:translateY(-20px) scale(.8);opacity:0}}.hud{position:absolute;inset:0;display:none;font-family:var(--font-display);--hud-pad-x: calc(12px + max(var(--safe-l), var(--safe-r))) }.hud.visible{display:block}.hud>*{position:absolute}.hud-pos{--pos-color: #fff;left:var(--hud-pad-x);top:calc(8px + var(--safe-t));display:flex;align-items:baseline;color:var(--pos-color);-webkit-text-stroke:3px #1b1140;paint-order:stroke fill;filter:drop-shadow(0 4px 0 rgba(0,0,0,.35));line-height:.9}.pos-num{font-size:clamp(54px,15vmin,110px)}.pos-suffix{font-size:clamp(22px,6vmin,44px)}.hud-standings{left:var(--hud-pad-x);top:calc(clamp(60px,16vmin,118px) + var(--safe-t));display:flex;flex-direction:column;gap:3px;font-family:var(--font-body)}.stand-row{display:flex;align-items:center;gap:6px;padding:2px 10px 2px 2px;border-radius:999px;background:#140a328c;font-size:12px;font-weight:800;max-width:170px;transition:transform .3s}.stand-row.me{background:#ffd400d9;color:#2a1060}.stand-row.done{opacity:.7}.stand-place{width:16px;text-align:center}.stand-emoji{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:13px}.stand-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-top{left:50%;top:calc(8px + var(--safe-t));transform:translate(-50%);display:flex;flex-direction:column;align-items:center;padding:6px 18px;border-radius:18px;background:#140a3280}.hud-lap{font-size:clamp(18px,4.4vmin,30px);letter-spacing:1px}.hud-time{font-family:var(--font-body);font-weight:800;font-size:clamp(12px,2.8vmin,17px);font-variant-numeric:tabular-nums;opacity:.85}.hud-item{right:calc(var(--hud-pad-x) + 58px);top:calc(8px + var(--safe-t));display:flex;flex-direction:column;align-items:center;gap:2px}.item-slot{pointer-events:auto;position:relative;width:clamp(66px,17vmin,100px);height:clamp(66px,17vmin,100px);border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff59,#1e0f46bf 65%);box-shadow:inset 0 0 0 4px #ffffffd9,0 6px #0000004d;display:grid;place-items:center}.item-slot.empty .item-icon{font-family:var(--font-display);font-size:clamp(28px,7vmin,44px);opacity:.35}.item-slot.ready{animation:item-glow 1s ease-in-out infinite alternate}@keyframes item-glow{to{box-shadow:inset 0 0 0 4px var(--yellow),0 0 26px var(--yellow),0 6px #0000004d}}.item-slot.rolling .item-icon{animation:roll .08s linear infinite}@keyframes roll{50%{transform:translateY(-4px) scale(.9)}}.item-icon{font-size:clamp(34px,9vmin,56px);line-height:1;font-family:system-ui,sans-serif}.item-uses{position:absolute;right:-2px;bottom:-2px;font-size:18px;background:var(--pink);border-radius:12px;padding:0 6px}.item-uses:empty{display:none}.item-name{font-size:13px;font-family:var(--font-body);font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.8)}.hud-pause{pointer-events:auto;right:var(--hud-pad-x);top:calc(10px + var(--safe-t));width:46px;height:46px;border-radius:50%;background:#140a328c;display:flex;align-items:center;justify-content:center;gap:6px}.hud-pause span{width:6px;height:18px;border-radius:3px;background:#fff}.hud-map{right:var(--hud-pad-x);top:calc(clamp(96px,24vmin,150px) + var(--safe-t));opacity:.9}.minimap{width:clamp(96px,26vmin,150px);height:clamp(96px,26vmin,150px);display:block}.hud-speed{left:50%;bottom:calc(10px + var(--safe-b));transform:translate(-50%);font-size:clamp(14px,3.2vmin,20px);padding:4px 14px;border-radius:999px;background:#140a3273;transition:color .2s,box-shadow .2s}.hud-speed.drift-1{color:var(--blue);box-shadow:0 0 16px var(--blue)}.hud-speed.drift-2{color:var(--orange);box-shadow:0 0 16px var(--orange)}.hud-speed.drift-3{color:#d58cff;box-shadow:0 0 18px #c65bff}.hud-react{display:none;left:50%;bottom:calc(52px + var(--safe-b));transform:translate(-50%);gap:4px;pointer-events:auto}.hud-react.visible{display:flex}.hud-react button{width:38px;height:38px;border-radius:50%;background:#140a3273;font-size:20px}.hud-center{inset:0;display:grid;place-items:center;pointer-events:none}.count{font-size:clamp(90px,30vmin,220px);color:#fff;-webkit-text-stroke:6px #1b1140;paint-order:stroke fill;filter:drop-shadow(0 8px 0 rgba(0,0,0,.35));animation:count 1s cubic-bezier(.2,1.6,.4,1) forwards}.count.c3{color:var(--red)}.count.c2{color:var(--yellow)}.count.c1{color:var(--green)}.count.go{background:linear-gradient(180deg,#fff36b,#ff8a00);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0;filter:drop-shadow(0 6px 0 #2a1060) drop-shadow(0 0 30px rgba(255,200,0,.6))}@keyframes count{0%{transform:scale(2.4);opacity:0}25%{transform:scale(1);opacity:1}80%{transform:scale(1);opacity:1}to{transform:scale(.6);opacity:0}}.hud-banner{left:0;right:0;top:28%;display:flex;justify-content:center;pointer-events:none}.banner{padding:8px 30px;font-size:clamp(30px,9vmin,70px);color:#fff;-webkit-text-stroke:4px #1b1140;paint-order:stroke fill;filter:drop-shadow(0 5px 0 rgba(0,0,0,.35));animation:banner .5s cubic-bezier(.2,1.6,.4,1);text-align:center}.banner.final{color:var(--red)}.banner.gold,.banner.finish{color:var(--yellow)}.banner.finish.place-1{font-size:clamp(60px,18vmin,150px)}.banner.tip{font-family:var(--font-body);font-weight:800;font-size:clamp(15px,3.4vmin,22px);-webkit-text-stroke:0;background:#140a32cc;border-radius:999px;padding:10px 20px;margin:0 12px}@keyframes banner{0%{transform:scale(.3) rotate(-6deg);opacity:0}}.hud-toasts{right:var(--hud-pad-x);bottom:calc(clamp(150px,40vmin,230px) + var(--safe-b));display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-family:var(--font-body);pointer-events:none}.toast{padding:6px 14px;border-radius:999px;background:#140a32cc;font-weight:800;font-size:14px;animation:toast-in .3s cubic-bezier(.3,1.5,.5,1);transition:opacity .4s}.toast.out{opacity:0}.hud-wrong{left:50%;top:42%;transform:translate(-50%);font-size:clamp(28px,8vmin,56px);color:var(--red);-webkit-text-stroke:4px white;paint-order:stroke fill;display:none;animation:blink .5s steps(2) infinite}.hud-wrong.visible{display:block}@keyframes blink{50%{opacity:.2}}.hud-spectate{display:none;left:50%;bottom:calc(14px + var(--safe-b));transform:translate(-50%);padding:8px 18px;border-radius:999px;background:#140a32cc;font-family:var(--font-body);font-weight:800;white-space:nowrap}.hud-spectate.visible{display:block}.hud.flash:after{content:"";position:absolute;inset:0;background:#fff;animation:flash .5s ease-out forwards;pointer-events:none}@keyframes flash{0%{opacity:.9}to{opacity:0}}.touch{position:absolute;inset:0;display:none}.touch.visible{display:block}.steer-zone{position:absolute;left:0;top:30%;bottom:0;width:50%;pointer-events:auto;touch-action:none}.touch.lefty .steer-zone{left:auto;right:0}.steer-hint{position:absolute;left:calc(30px + var(--safe-l));bottom:calc(18px + var(--safe-b));font-weight:800;font-size:13px;opacity:.55;text-transform:uppercase;letter-spacing:1px}.touch.lefty .steer-hint{left:auto;right:calc(30px + var(--safe-r))}.stick{position:absolute;left:calc(110px + var(--safe-l));bottom:calc(40px + var(--safe-b));top:auto;width:170px;height:84px;transform:translate(-50%);border-radius:999px;background:#140a3259;box-shadow:inset 0 0 0 3px #ffffff59;opacity:.55;transition:opacity .15s;pointer-events:none}.touch.lefty .stick{left:auto;right:calc(30px + var(--safe-r));transform:none}.stick.active{opacity:1;transform:translate(-50%,-50%);bottom:auto}.touch.lefty .stick.active{right:auto;transform:translate(-50%,-50%)}.stick .arrow{position:absolute;top:50%;transform:translateY(-50%);font-style:normal;font-size:18px;opacity:.7}.stick .arrow.l{left:14px}.stick .arrow.r{right:14px}.stick-knob{position:absolute;left:50%;top:50%;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#d9d2ff);box-shadow:0 6px 14px #00000059;transform:translate(-50%,-50%)}.touch.mode-tilt .stick,.touch.mode-buttons .stick{display:none}.steer-btn{position:absolute;bottom:calc(22px + var(--safe-b));width:clamp(76px,20vmin,104px);height:clamp(76px,20vmin,104px);border-radius:50%;background:#140a3273;box-shadow:inset 0 0 0 3px #ffffff80;font-size:34px;pointer-events:auto}.steer-btn.l{left:calc(18px + var(--safe-l))}.steer-btn.r{left:calc(18px + clamp(76px,20vmin,104px) + 16px + var(--safe-l))}.touch.lefty .steer-btn.l{left:auto;right:calc(18px + clamp(76px,20vmin,104px) + 16px + var(--safe-r))}.touch.lefty .steer-btn.r{left:auto;right:calc(18px + var(--safe-r))}.steer-btn.down{background:#ff4fa399;transform:scale(.94)}.touch-buttons{position:absolute;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));width:clamp(200px,50vmin,290px);height:clamp(170px,44vmin,250px)}.touch.lefty .touch-buttons{right:auto;left:calc(16px + var(--safe-l));transform:scaleX(-1)}.touch.lefty .touch-buttons .tbtn>*{transform:scaleX(-1)}.tbtn{position:absolute;pointer-events:auto;touch-action:none;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:#fff;box-shadow:inset 0 0 0 3px #fff9,0 6px #0000004d;transition:transform .06s}.tbtn b{font-size:1.4em}.tbtn small{font-weight:800;font-size:11px;letter-spacing:1px;margin-top:2px}.tbtn.down{transform:scale(.92);filter:brightness(1.25)}.tbtn.drift{right:0;bottom:0;width:46%;aspect-ratio:1;font-size:clamp(22px,6vmin,34px);background:radial-gradient(circle at 35% 30%,#5abeffd9,#1e5ac8bf)}.tbtn.item{right:46%;bottom:42%;width:34%;aspect-ratio:1;font-size:clamp(18px,5vmin,26px);background:radial-gradient(circle at 35% 30%,#ffdc5ae6,#e68c00cc)}.tbtn.brake{right:52%;bottom:0;width:26%;aspect-ratio:1;font-size:clamp(14px,4vmin,20px);background:radial-gradient(circle at 35% 30%,#ff788ccc,#b41e3cbf)}.touch-buttons.manual-gas .tbtn.gas{right:0;bottom:0;width:46%;aspect-ratio:1;font-size:clamp(22px,6vmin,34px);background:radial-gradient(circle at 35% 30%,#78ffa0d9,#14a050bf)}.touch-buttons.manual-gas .tbtn.drift{right:2%;bottom:52%;width:34%}.touch-buttons.manual-gas .tbtn.item{right:40%;bottom:54%;width:30%}body.is-touch .hud-speed{display:none}.screen.leaving{animation:none;opacity:0;transform:scale(.985);transition:opacity .16s ease-out,transform .16s ease-out;pointer-events:none!important}.curtain{position:fixed;inset:0;z-index:60;display:grid;place-content:center;justify-items:center;gap:18px;background:radial-gradient(circle at 50% 40%,#3b1d8f,var(--ink) 70%);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility 0s linear .22s;pointer-events:none}.curtain.visible{opacity:1;visibility:visible;transition:opacity .22s ease;pointer-events:auto!important}.curtain-wheel{width:64px;height:64px;border-radius:50%;border:10px solid #2a1060;box-shadow:0 0 0 4px var(--yellow),inset 0 0 0 6px #4a2aa0;background:conic-gradient(from 0deg,var(--yellow) 0 12%,transparent 0 25%,var(--pink) 0 37%,transparent 0 50%,var(--yellow) 0 62%,transparent 0 75%,var(--pink) 0 87%,transparent 0);animation:wheel-spin .6s linear infinite}.curtain-label{font-family:var(--font-display);font-size:clamp(22px,5vmin,36px);letter-spacing:1px;text-shadow:0 3px 0 rgba(0,0,0,.35)}@keyframes wheel-spin{to{transform:rotate(1turn)}}body.is-touch .panel,body.is-touch .screen:before,body.is-touch .overlay-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}body.is-touch .panel{background:#1b1140db}.fps{position:fixed;left:50%;top:calc(64px + var(--safe-t));transform:translate(-50%);font:800 12px var(--font-body);background:#00000080;padding:2px 8px;border-radius:8px;display:none}.fps.visible{display:block}.rotate-hint{position:fixed;inset:0;display:none;place-content:center;justify-items:center;gap:16px;background:#0f0628eb;text-align:center;font-weight:800;font-size:18px;z-index:30;pointer-events:auto!important;padding:24px}.rotate-hint.visible{display:grid}.rotate-phone{width:60px;height:100px;border-radius:12px;border:5px solid white;animation:rotate-phone 2s ease-in-out infinite}@keyframes rotate-phone{50%,to{transform:rotate(-90deg)}}@media(max-aspect-ratio:1/1){.lobby-body,.results-body{grid-template-columns:1fr;overflow-y:auto}.podium{height:auto;min-height:180px}.garage-panel{margin:auto 0 0;width:100%;flex:0 1 auto;max-height:58%}.fields.compact{grid-template-columns:1fr}}@media(max-height:430px){.title-row .btn{min-height:40px;padding:6px 16px}.players{grid-template-columns:1fr 1fr}.fields.compact .segmented button{padding:6px 10px;min-height:34px}.stepper-ctl button{width:34px;height:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
