:root{--black: #080808;--charcoal: #252525;--mid: #6a6a6a;--silver: #c0c0c0;--yellow: #f5f84b;--red: #ff453b;--white: #ffffff;--display: "Bebas Neue", "Impact", sans-serif;--wide: "Montserrat", sans-serif;--body: "Montserrat", system-ui, sans-serif;--angle: 28deg;--gutter: clamp(16px, 4vw, 64px)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;background:var(--black);color:var(--white);font-family:var(--body);-webkit-font-smoothing:antialiased}html,body{overflow-x:clip}body.game-mode{overflow:hidden}html.race-lock,html.race-lock body{overflow:hidden;overscroll-behavior:none}html.race-lock body{position:fixed;inset:0;width:100%}html.race-lock #stage,html.race-lock .game-ui,html.race-lock .touch,html.race-lock .touch *{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}html.race-lock .select,html.race-lock .race-pause{touch-action:pan-y}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}#stage{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:0}#app{position:relative;z-index:1}.kicker{font-family:var(--wide);font-weight:700;font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--silver)}.kicker:before{content:"/ ";color:var(--yellow)}h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:.01em;margin:0;line-height:.9;text-transform:uppercase}h1{font-size:clamp(64px,14vw,190px);font-style:italic}h1 .yellow{color:var(--yellow);display:block}h2{font-size:clamp(44px,7vw,96px);font-style:italic}h3{font-size:clamp(26px,3vw,40px)}p{line-height:1.55;color:#d6d6d6;max-width:62ch}.strike-line{position:relative;display:inline-block;height:6px;width:min(360px,60%);background:var(--red);clip-path:polygon(0 50%,100% 0,92% 100%);margin-top:18px}.nav{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px var(--gutter);background:linear-gradient(180deg,#080808eb,#08080800);pointer-events:none}.nav>*{pointer-events:auto}.nav .brand{display:flex;align-items:center;gap:12px;text-decoration:none}.nav .brand img{height:26px;width:auto}.nav .brand span{font-family:var(--wide);font-weight:800;font-style:italic;letter-spacing:.28em;font-size:12px}.nav ul{list-style:none;display:flex;gap:26px;margin:0;padding:0}.nav li a{font-family:var(--wide);font-weight:600;font-size:11px;letter-spacing:.3em;text-transform:uppercase;text-decoration:none;color:var(--silver);transition:color .2s}.nav li a:hover{color:var(--yellow)}.nav .icons{display:flex;gap:8px}.icon-btn{width:40px;height:40px;border:1px solid #3a3a3a;background:#08080899;color:var(--white);display:grid;place-items:center;transform:skew(calc(var(--angle) * -.5));transition:border-color .2s,background .2s}.icon-btn>*{transform:skew(calc(var(--angle) * .5))}.icon-btn:hover{border-color:var(--yellow)}.icon-btn[aria-pressed=true]{background:var(--yellow);color:var(--black);border-color:var(--yellow)}@media(max-width:820px){.nav ul{display:none}}.btn{position:relative;display:inline-flex;align-items:center;gap:10px;padding:16px 28px;border:0;font-family:var(--wide);font-weight:800;font-size:12px;letter-spacing:.3em;text-transform:uppercase;text-decoration:none;background:var(--yellow);color:var(--black);clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);transition:transform .15s,filter .15s}.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}.btn:active{transform:translateY(0)}.btn.ghost{background:transparent;color:var(--white);box-shadow:inset 0 0 0 1px #3a3a3a}.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--yellow);color:var(--yellow)}.btn.red{background:var(--red);color:var(--white)}.btn:disabled{opacity:.5;cursor:wait}section{position:relative;padding:clamp(72px,10vw,140px) var(--gutter)}.hero{overflow-x:clip;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:clamp(48px,8vw,110px)}.hero-inner{max-width:1100px;position:relative}.hero-inner:before{content:"";position:absolute;inset:-60px -40px -40px -60px;background:radial-gradient(ellipse at 20% 70%,rgba(8,8,8,.82),rgba(8,8,8,.35) 55%,transparent 75%);z-index:-1;pointer-events:none}@media(max-width:640px){.hero{padding-top:110px;justify-content:center}.hero-inner:before{background:linear-gradient(180deg,#08080800,#080808c7 20% 85%,#08080800);inset:-40px -24px -24px}h1{font-size:clamp(64px,19vw,120px)}.hero-meta{gap:18px 28px}.stat b{font-size:34px}.scroll-hint{display:none}.nav{padding:10px 14px}.nav .brand img{height:20px}.nav .brand span{font-size:10px;letter-spacing:.2em}}.hero .kicker{margin-bottom:14px}.hero .official{font-family:var(--wide);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mid);margin:-6px 0 18px;max-width:62ch;line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-meta{display:flex;flex-wrap:wrap;gap:34px;margin-top:40px}.stat{display:flex;flex-direction:column;gap:4px}.stat b{font-family:var(--display);font-size:44px;line-height:1;color:var(--yellow);font-weight:400}.stat span{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--silver)}.scroll-hint{position:absolute;right:var(--gutter);bottom:32px;font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--mid);writing-mode:vertical-rl}.panel{background:linear-gradient(135deg,#080808eb,#080808c7);border:1px solid #1e1e1e;padding:clamp(28px,4vw,56px);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;overflow:hidden}.panel:before{content:"";position:absolute;top:0;left:0;width:160px;height:6px;background:var(--yellow);clip-path:polygon(0 0,100% 0,calc(100% - 12px) 100%,0 100%)}.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px}.section-head p{margin:10px 0 0}.riders{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.rider{position:relative;padding:26px 24px 22px;background:#0d0d0d;border:1px solid #1f1f1f;overflow:hidden;min-height:290px;display:flex;flex-direction:column;justify-content:flex-end;transition:border-color .25s,transform .25s;cursor:pointer}.rider:hover{border-color:var(--yellow);transform:translateY(-3px)}.rider:after{content:"";position:absolute;inset:auto -30% -40% auto;width:70%;height:70%;background:linear-gradient(var(--angle),transparent 45%,rgba(245,248,75,.08) 46%,rgba(245,248,75,.08) 60%,transparent 61%);pointer-events:none}.rider .num{position:absolute;top:10px;right:18px;font-family:var(--display);font-size:120px;line-height:1;color:transparent;-webkit-text-stroke:1px #2d2d2d;font-style:italic}.rider .num b{position:absolute;inset:0;color:var(--yellow);-webkit-text-stroke:0;clip-path:polygon(0 0,100% 0,100% 55%,0 55%);font-weight:400}.rider .name{font-family:var(--display);font-size:44px;line-height:.9;font-style:italic}.rider .from{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--silver);margin-top:8px}.rider .note{font-size:12px;color:#9a9a9a;margin-top:6px}.tag{display:inline-block;margin-top:12px;font-size:10px;letter-spacing:.3em;text-transform:uppercase;padding:5px 9px;background:#171717;color:var(--silver)}.tag.pending{background:#ff453b24;color:var(--red)}.tag.confirmed{background:#f5f84b1f;color:var(--yellow)}.tag.expected{background:#f5f84b14;color:#e0d85a}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:#1e1e1e;border:1px solid #1e1e1e}.strip>div{background:#0b0b0b;padding:22px}.strip b{display:block;font-family:var(--display);font-size:40px;color:var(--yellow);line-height:1}.strip span{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--silver)}.countdown{display:flex;gap:18px;flex-wrap:wrap}.countdown div{text-align:left}.countdown b{font-family:var(--display);font-size:clamp(48px,7vw,92px);line-height:1;display:block;font-style:italic}.countdown span{font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--silver)}.tiers{display:grid;gap:12px}.tier{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center;padding:18px 20px;border:1px solid #1f1f1f;background:#0c0c0c}.tier .t{font-family:var(--wide);font-weight:800;font-style:italic;font-size:12px;letter-spacing:.26em;text-transform:uppercase;padding:10px 14px;background:#161616;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);text-align:center}.tier.t1 .t{background:var(--yellow);color:var(--black)}.tier .names{display:flex;flex-wrap:wrap;gap:10px 26px;font-family:var(--display);font-size:30px;letter-spacing:.04em;color:#e9e9e9}.tier.t1 .names{font-size:40px}.note{font-size:12px;color:var(--mid);margin-top:16px}@media(max-width:640px){.tier{grid-template-columns:1fr}}.lab{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:900px){.lab{grid-template-columns:1fr}}.chat{display:flex;flex-direction:column;min-height:420px}.chat-log{flex:1;display:flex;flex-direction:column;gap:10px;overflow-y:auto;max-height:380px;padding-right:6px}.msg{max-width:88%;padding:12px 14px;font-size:14px;line-height:1.5;background:#141414;border-left:3px solid #2a2a2a}.msg.user{align-self:flex-end;background:#1a1a0e;border-left-color:var(--yellow)}.msg.ai{align-self:flex-start;border-left-color:var(--red)}.msg.ai.thinking{color:var(--mid);font-style:italic}.chat-form{display:flex;gap:8px;margin-top:14px}.input{flex:1;background:#0e0e0e;border:1px solid #2a2a2a;color:var(--white);padding:14px;font:inherit;font-size:14px;outline:none}.input:focus{border-color:var(--yellow)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chip{font-size:11px;letter-spacing:.08em;padding:7px 10px;background:#141414;border:1px solid #262626;color:var(--silver)}.chip:hover{border-color:var(--yellow);color:var(--yellow)}.poster-out{margin-top:14px;aspect-ratio:1;background:#0e0e0e;border:1px solid #222;display:grid;place-items:center;position:relative;overflow:hidden}.poster-out img{width:100%;height:100%;object-fit:cover;display:block}.poster-out .ph{color:var(--mid);font-size:12px;letter-spacing:.3em;text-transform:uppercase;text-align:center;padding:20px}.poster-out.loading:after{content:"";position:absolute;left:-40%;top:0;bottom:0;width:40%;background:linear-gradient(90deg,transparent,rgba(245,248,75,.18),transparent);transform:skew(calc(var(--angle) * -1));animation:sweep 1.2s linear infinite}@keyframes sweep{to{left:110%}}.race-cta{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}@media(max-width:900px){.race-cta{grid-template-columns:1fr}}.controls-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:13px;color:#cfcfcf}.controls-list kbd{display:inline-block;min-width:26px;text-align:center;padding:3px 7px;margin-right:8px;background:#1a1a1a;border:1px solid #333;border-bottom-width:3px;font-family:var(--wide);font-weight:700;font-size:11px}footer{padding:40px var(--gutter) 60px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mid);border-top:1px solid #161616;background:var(--black)}.game-ui{position:fixed;inset:0;z-index:30;display:none;pointer-events:none}body.game-mode .game-ui{display:block}body.game-mode #app>:not(.game-ui){visibility:hidden}.game-ui>*{pointer-events:auto}.game-ui button:focus-visible,.game-ui [role=button]:focus-visible,.race-select:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}.game-ui button:disabled{cursor:wait;opacity:.6}.hud{position:absolute;top:calc(55px + env(safe-area-inset-top));left:0;display:flex;align-items:flex-start;padding:0 var(--gutter);gap:8px}.hud-block{background:#080808e6;padding:9px 12px;min-width:96px}.hud-block small{display:block;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--silver);margin-bottom:3px}.hud-block b{font-family:var(--display);font-size:34px;line-height:1;font-weight:400}.hud-block b.yellow{color:var(--yellow)}.heat{height:7px;background:#393939;margin-top:7px;position:relative;overflow:hidden;width:150px}.heat i{position:absolute;left:0;top:0;bottom:0;width:100%;transform:scaleX(0);transform-origin:left;background:var(--yellow);transition:transform .1s linear}.heat.hot i{background:var(--red);animation:blink .5s steps(2) infinite}.engine-status{display:block;margin-top:5px;font-size:8px;font-weight:700;letter-spacing:.08em;color:var(--silver);white-space:nowrap}.engine-status.warning{color:#ff8b84}@keyframes blink{50%{opacity:.5}}.race-course{position:absolute;top:calc(14px + env(safe-area-inset-top));left:var(--gutter);width:min(470px,calc(100% - var(--gutter) * 2 - 115px))}.race-course-labels{display:flex;align-items:baseline;gap:12px;font-size:9px;font-weight:700;letter-spacing:.08em;white-space:nowrap}.race-track-name{font-size:12px;color:var(--yellow)}.race-mode-label{flex:1}.race-progress{height:3px;margin-top:9px;background:#424242}.race-progress i{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:var(--yellow)}.game-pause{position:absolute;top:calc(14px + env(safe-area-inset-top));right:var(--gutter);padding:12px 18px;font-size:11px}.riding-feedback{position:absolute;top:calc(161px + env(safe-area-inset-top));left:var(--gutter);max-width:calc(100% - var(--gutter) * 2);padding:7px 10px;background:#080808db;font-size:9px;font-weight:700;letter-spacing:.1em;color:#e2e2e2;pointer-events:none}.riding-feedback.aligned{color:var(--yellow)}.standings{position:absolute;right:var(--gutter);top:calc(83px + env(safe-area-inset-top));display:grid;gap:3px}.standings[hidden]{display:none}.standings div{display:grid;grid-template-columns:20px 1fr 48px;gap:8px;align-items:center;font-size:10px;padding:5px 9px;background:#080808db;min-width:190px}.standings div.me{color:var(--yellow);background:#25251b}.standings b{font-family:var(--display);font-size:20px;font-weight:400}.standings div>:last-child{text-align:right;font-variant-numeric:tabular-nums}.ticker{position:absolute;left:0;right:0;bottom:0;padding:16px var(--gutter) calc(18px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#080808f5,#08080800);display:flex;align-items:flex-end;gap:14px;pointer-events:none}.ticker .live{font-family:var(--wide);font-weight:800;font-size:9px;letter-spacing:.12em;color:var(--black);background:var(--yellow);padding:5px 8px;white-space:nowrap}.ticker .line{font-family:var(--display);font-size:clamp(20px,2.5vw,32px);line-height:1;font-style:italic;min-height:1em;max-width:65ch}.ticker .line.fresh{animation:pop .25s ease-out}@keyframes pop{0%{transform:translate(-8px);opacity:0}}.center-msg{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.center-msg b{font-family:var(--display);font-size:clamp(90px,18vw,240px);font-style:italic;color:var(--yellow);line-height:1;animation:pop .25s ease-out}.center-msg b.red{color:var(--red)}.race-key-guide{position:absolute;left:var(--gutter);bottom:calc(80px + env(safe-area-inset-bottom));font-size:9px;letter-spacing:.08em;font-weight:700;background:#080808e0;padding:9px 12px;pointer-events:none}.riding-feedback.refused{color:#ff8b84;animation:nudge .3s ease-out}@keyframes nudge{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.touch{position:absolute;left:0;right:0;top:calc(var(--lane-bottom, 70vh) + 8px);bottom:0;display:none;justify-content:space-between;align-items:flex-end;gap:12px;--edge: 24px;padding:0 max(var(--edge),env(safe-area-inset-right)) max(var(--edge),env(safe-area-inset-bottom)) max(var(--edge),env(safe-area-inset-left));pointer-events:none}.touch.lefty{flex-direction:row-reverse}.touch>*{pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.stick-zone{position:relative;width:min(44vw,300px);height:100%;min-height:104px;max-height:240px;border:1px dashed rgba(255,255,255,.22);background:#08080852;overflow:hidden}.stick-ring{position:absolute;left:0;top:0;width:88px;height:88px;margin:-44px 0 0 -44px;border:2px solid rgba(255,255,255,.45);border-radius:50%;pointer-events:none}.stick-zone:not(.active) .stick-ring{left:50%;top:50%;transform:none;opacity:.55}.stick-knob{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:var(--yellow);opacity:.85}.stick-zone.active .stick-ring{border-color:var(--yellow)}.stick-ring.is-up{border-top-color:var(--white);border-top-width:5px}.stick-ring.is-down{border-bottom-color:var(--white);border-bottom-width:5px}.stick-ring.is-left{border-left-color:var(--white);border-left-width:5px}.stick-ring.is-right{border-right-color:var(--white);border-right-width:5px}.stick-zone.refused,.stick-zone.refused .stick-ring{border-color:var(--red)}.zone-label,.power-part,.mash-label{font-family:var(--wide);font-weight:800;font-size:9px;letter-spacing:.06em}.zone-label{position:absolute;left:8px;top:6px;color:var(--silver);pointer-events:none}.direction-pad{display:none;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(2,52px);gap:4px}.touch.buttons .stick-zone{display:none}.touch.buttons .direction-pad{display:grid}.touch button{min-width:48px;min-height:48px;border:1px solid #626262;background:#080808e6;color:var(--white);font-family:var(--wide);font-weight:800;font-size:8px;line-height:1.3;letter-spacing:.04em;padding:5px}.touch button.held{border-color:var(--yellow);background:#414122}.direction-pad.refused button{border-color:var(--red)}.lane-up{grid-column:2;grid-row:1}.lane-down{grid-column:2;grid-row:2}.nose-up{grid-column:1;grid-row:1 / 3}.nose-down{grid-column:3;grid-row:1 / 3}.power-zone{position:relative;width:min(36vw,230px);height:100%;min-height:112px;max-height:240px;display:grid;grid-template-rows:45fr 55fr}.power-part{display:grid;place-items:center;align-content:center;gap:4px;text-align:center}.power-part.turbo{background:#a91f18;color:var(--white)}.power-part.turbo.held{background:var(--red);color:var(--black)}.power-part.throttle{background:var(--yellow);color:var(--black)}.power-part.throttle.held{background:#c6cb22}.mash-label{position:absolute;inset:0;display:none;place-items:center;background:#0808088c;color:var(--yellow);font-size:11px;pointer-events:none}.power-zone.mash{outline:3px solid var(--yellow);animation:mash .6s ease-in-out infinite}.power-zone.mash .mash-label{display:grid}@keyframes mash{50%{outline-color:transparent}}.touch-settings,.touch-instructions{display:none}.touch-settings{margin-top:20px}.touch-settings-row{display:flex;flex-wrap:wrap;gap:8px}.touch-settings button{min-height:48px;min-width:48px;padding:10px 14px;border:1px solid #505050;background:#181818;font-size:11px;font-weight:700}.touch-settings button[aria-pressed=true]{color:var(--black);background:var(--yellow);border-color:var(--yellow)}@media(pointer:coarse){.touch{display:flex}.race-key-guide{display:none}.touch-settings,.touch-instructions{display:block}body.game-mode{overscroll-behavior:none}}.select,.race-pause{position:absolute;inset:0;display:grid;place-items:center;background:#080808f5;padding:calc(28px + env(safe-area-inset-top)) var(--gutter) calc(28px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.race-pause{z-index:3;background:#080808f0}.race-pause[hidden]{display:none}.pause-inner{width:min(700px,100%)}.select-inner{max-width:1100px;width:100%;margin:auto}.select h2,.race-pause h2{font-size:clamp(40px,6vw,72px)}.race-setup{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:26px;margin-top:24px}.race-setup label,.race-field-label{display:block;margin-bottom:8px;font-size:11px;font-weight:700;color:var(--silver)}.race-select{display:block;width:100%;padding:12px;min-height:46px;background:#181818;border:1px solid #505050;color:var(--white);font:inherit;font-size:13px}.race-mode-switch{display:flex}.race-mode-switch button{flex:1;min-height:46px;padding:10px;border:1px solid #505050;background:#181818;font-size:12px;font-weight:700}.race-mode-switch button+button{border-left:0}.race-mode-switch button[aria-pressed=true]{color:var(--black);background:var(--yellow);border-color:var(--yellow)}.track-description{margin:10px 0 24px;font-size:12px;max-width:85ch}.rider-select-title{font-size:26px}.select .riders{margin-top:14px}.select .rider{min-height:180px;padding:18px}.select .rider .name{font-size:34px}.select .rider.active{border-color:var(--yellow);background:#1c1d11}.select .rider[role=button]{cursor:pointer}.race-instructions{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:18px}.race-instructions p{margin:0;font-size:11px;line-height:1.65}.race-instructions strong{color:var(--white)}.select-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;align-items:center}.select-actions .btn{font-size:12px;padding:15px 22px}.race-error{color:#ff9e98;font-size:12px}.results{display:grid;gap:6px;margin-top:24px}.results div{display:grid;grid-template-columns:56px 1fr 100px;align-items:center;gap:12px;padding:12px 16px;background:#171717;font-size:13px}.results div.me{color:var(--yellow);background:#222318}.results b{font-family:var(--display);font-size:32px;font-weight:400}.results .t{font-family:var(--display);font-size:28px;color:var(--yellow);text-align:right}.race-result-detail p{font-size:12px;margin:12px 0 0}.race-result-detail .personal-best{color:var(--yellow);font-size:15px;font-weight:700}.game-ui.dialog-open>:not(.select),.game-ui.paused>:not(.race-pause){visibility:hidden}.intro{position:fixed;inset:0;z-index:51;overflow:hidden;color:#f4f4f0;font-family:var(--body)}.intro [hidden]{display:none!important}html:has(#intro){overflow:hidden}.intro-bg{position:absolute;inset:0;background:#0a0a0a;transition:opacity .45s ease-in .4s}.intro.launching .intro-bg{opacity:0}.intro-tread{position:absolute;top:0;bottom:0;left:0;width:calc(100% + 530px);background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.028) 0 2px,transparent 2px 48px);animation:introTread 5s linear infinite;will-change:transform}@keyframes introTread{to{transform:translate(-529.8px)}}.intro-speed{position:absolute;inset:0;overflow:hidden}.intro-speed i{position:absolute;left:100%;height:1px;background:linear-gradient(90deg,#fff0,#ffffff8c);animation:introSpeed linear infinite;will-change:transform}@keyframes introSpeed{to{transform:translate(calc(-100vw - 600px))}}.intro-grain{display:none;position:absolute;inset:0;width:100%;height:100%;opacity:.08;mix-blend-mode:overlay;pointer-events:none}html[data-quality=high] .intro-grain{display:block}html[data-quality=low] .intro-tread{display:none}.intro-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,#0000 35%,#000000c7)}.intro-corner{position:absolute;width:22px;height:22px;border:0 solid #3a3a3a}.intro-corner.tl{left:24px;top:24px;border-width:2px 0 0 2px}.intro-corner.tr{right:24px;top:24px;border-width:2px 2px 0 0}.intro-corner.bl{left:24px;bottom:24px;border-width:0 0 2px 2px}.intro-corner.br{right:24px;bottom:24px;border-width:0 2px 2px 0}.intro-foot{position:absolute;bottom:28px;font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:#8c8c8c}.intro-foot.l{left:60px}.intro-foot.r{right:60px;display:flex;gap:10px;align-items:baseline}.intro-foot b{font-family:var(--display);font-weight:400;font-style:italic;font-size:20px;letter-spacing:.06em;color:#f4f4f0;font-variant-numeric:tabular-nums}.intro-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px}.intro-center.jolt{animation:introJolt .32s linear both}.intro-center.launching{animation:introLaunch .75s cubic-bezier(.7,0,.85,.3) both}@keyframes introJolt{0%,to{transform:none}25%{transform:translateY(6px) scale(1.01)}50%{transform:translate(-4px,-3px)}75%{transform:translate(3px,2px)}}@keyframes introLaunch{to{transform:translate(70%) scaleX(1.3);opacity:0;filter:blur(10px)}}.intro-stack{position:relative;width:100%;max-width:820px;display:flex;flex-direction:column;gap:44px}.intro-logo{position:relative;width:100%;max-width:min(100%,155.16vh);margin:0 auto}.intro-logo svg{display:block;width:100%;height:auto;overflow:visible}.intro-glow{position:absolute;left:50%;top:50%;width:120%;height:220%;transform:translate(-50%,-50%);background:radial-gradient(ellipse at center,#f5f84b30,#0a0a0a00 62%);pointer-events:none;opacity:0;animation:introGlow 2.8s ease-in-out 1.2s infinite}@keyframes introGlow{0%,to{opacity:.55;transform:translate(-50%,-50%) scale(.96)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}}.intro-shaker{position:relative;animation:introShake .38s linear 1.18s both}@keyframes introShake{0%,to{transform:none}20%{transform:translate(-5px,3px) rotate(-.5deg)}40%{transform:translate(5px,-2px) rotate(.4deg)}60%{transform:translate(-3px,1px)}80%{transform:translate(2px,-1px)}}.intro-pc{transform-box:fill-box;transform-origin:center;opacity:0;animation-fill-mode:forwards}.intro-pc.a{animation:introSlash .62s cubic-bezier(.16,.9,.24,1) .15s forwards}.intro-pc.y{animation:introRise .55s cubic-bezier(.2,.9,.3,1.2) .55s forwards}.intro-pc.w{animation:introDrop .6s cubic-bezier(.3,.8,.3,1) .68s forwards}.intro-pc.m{animation:introDrop .6s cubic-bezier(.3,.8,.3,1) .82s forwards}@keyframes introSlash{0%{opacity:0;transform:translate(-85%) skew(-30deg)}55%{opacity:1}to{opacity:1;transform:none}}@keyframes introRise{0%{opacity:0;transform:translate(-25%,120%)}65%{opacity:1;transform:translate(1%,-8%)}to{opacity:1;transform:none}}@keyframes introDrop{0%{opacity:0;transform:translateY(-140%)}55%{opacity:1;transform:translateY(7%)}78%{transform:translateY(-2.5%)}to{opacity:1;transform:none}}.intro-shine{opacity:.75;transform:translate(-200px);animation:introShine 3.4s cubic-bezier(.6,0,.25,1) 1.3s infinite}@keyframes introShine{0%{transform:translate(-200px)}28%,to{transform:translate(1080px)}}html[data-quality=low] .intro-shine{animation:none;opacity:0}.intro-loader{display:flex;flex-direction:column;gap:14px;animation:introFadeUp .5s ease-out .95s both}@keyframes introFadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.intro-row{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.intro-status{display:flex;flex-direction:column;gap:10px;min-width:0}.intro-label{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:#8c8c8c}.intro-blink{width:8px;height:8px;background:var(--yellow);transform:skew(-20deg);animation:introBlink .9s steps(2,start) infinite}@keyframes introBlink{to{visibility:hidden}}.intro-stage{font-size:15px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:#f4f4f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.intro-num{display:flex;align-items:flex-start;font-family:var(--display);font-style:italic;line-height:.8;font-size:clamp(60px,10vw,96px);letter-spacing:.01em;font-variant-numeric:tabular-nums}.intro-num .dim{color:#2e2e2e}.intro-num .sign{font-size:.42em;margin:.08em 0 0 .1em;color:var(--yellow)}.intro-rule{display:flex;gap:4px;height:16px;padding:0 6px;transform-origin:left center;animation:introRule .7s cubic-bezier(.7,0,.2,1) 1.05s both}@keyframes introRule{0%{transform:scaleX(0)}}.intro-rule i{flex:1 1 0;min-width:0;height:100%;background:#1c1c1c;transform:skew(-28deg);transition:background .12s,box-shadow .12s}.intro-rule i.on{background:var(--yellow);box-shadow:0 0 12px #f5f84b87}.intro-rule i.head{background:#fff}.intro-rule i.fall{transform-origin:bottom center;animation:introGate .42s cubic-bezier(.5,0,.75,0) both}@keyframes introGate{to{transform:skew(-28deg) perspective(200px) rotateX(-90deg) translateY(30px);opacity:0}}.intro-meta{align-items:baseline;font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:#8c8c8c}.intro-fx{position:absolute;inset:0;pointer-events:none}.intro-flash{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 58%,#fff,#f5f84b59 30%,#0a0a0a00 70%);animation:introFlash .7s ease-out both}@keyframes introFlash{0%{opacity:.85}to{opacity:0}}.intro-dirt{position:absolute;top:58%;border-radius:2px;opacity:0;animation-timing-function:cubic-bezier(.2,.7,.4,1);animation-fill-mode:both}.intro-dirt.r1{animation-name:introR1}.intro-dirt.r2{animation-name:introR2}.intro-dirt.r3{animation-name:introR3}.intro-dirt.r4{animation-name:introR4}.intro-dirt.r5{animation-name:introR5}.intro-dirt.r6{animation-name:introR6}@keyframes introR1{0%{opacity:1;transform:none}45%{transform:translate(-220px,-300px) rotate(260deg)}to{opacity:0;transform:translate(-420px,-60px) rotate(540deg)}}@keyframes introR2{0%{opacity:1;transform:none}45%{transform:translate(240px,-260px) rotate(-220deg)}to{opacity:0;transform:translate(470px,-20px) rotate(-480deg)}}@keyframes introR3{0%{opacity:1;transform:none}45%{transform:translate(-90px,-380px) rotate(200deg)}to{opacity:0;transform:translate(-180px,-140px) rotate(400deg)}}@keyframes introR4{0%{opacity:1;transform:none}45%{transform:translate(110px,-360px) rotate(-180deg)}to{opacity:0;transform:translate(220px,-90px) rotate(-420deg)}}@keyframes introR5{0%{opacity:1;transform:none}45%{transform:translate(-380px,-170px) rotate(300deg)}to{opacity:0;transform:translate(-640px,120px) rotate(620deg)}}@keyframes introR6{0%{opacity:1;transform:none}45%{transform:translate(400px,-150px) rotate(-300deg)}to{opacity:0;transform:translate(660px,140px) rotate(-640deg)}}.intro-cta{display:flex;flex-direction:column;align-items:center;gap:28px}.intro-cta-wrap{animation:introCta .6s cubic-bezier(.16,.9,.24,1) both}@keyframes introCta{0%{opacity:0;transform:translate(-60px) skew(-18deg)}to{opacity:1;transform:none}}.intro-sub{font-size:12px;font-weight:500;letter-spacing:.5em;text-transform:uppercase;text-align:center;color:#8c8c8c;animation:introFadeUp .6s ease-out .35s both}.intro-go{position:relative;overflow:hidden;display:flex;align-items:center;gap:18px;min-height:68px;padding:0 56px 0 58px;border:0;background:var(--yellow);color:#0a0a0a;font-family:var(--wide);font-weight:800;font-size:16px;letter-spacing:.32em;text-transform:uppercase;clip-path:polygon(4% 0,100% 0,96% 100%,0 100%);transition:transform .2s cubic-bezier(.2,.9,.3,1),background .2s}.intro-go:after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:30%;background:#ffffffb3;transform:skew(-25deg);animation:introSheen 2.6s ease-in-out .8s infinite}@keyframes introSheen{0%{left:-40%}35%,to{left:130%}}.intro-go:hover,.intro-go:focus-visible{background:#fff;transform:translate(6px);outline:none}.intro-go:active{transform:translate(2px) scale(.98)}.intro-go svg{transition:transform .2s}.intro-go:hover svg{transform:translate(6px)}.intro-wipe{position:absolute;top:-10%;bottom:-10%;left:-160%;width:140%;background:var(--yellow);transform:skew(-20deg);animation:introWipe .9s cubic-bezier(.7,0,.3,1) .2s both;pointer-events:none}@keyframes introWipe{0%{transform:skew(-20deg) translate(0)}to{transform:skew(-20deg) translate(260%)}}@media(max-width:600px){.intro-hide-sm{display:none!important}.intro-go{padding:0 32px 0 36px;font-size:13px;letter-spacing:.24em}.intro-foot.l{left:52px;font-size:10px}.intro-sub{letter-spacing:.32em}}@media(max-height:520px){.intro-stack{gap:18px}.intro-cta{gap:16px}.intro-go{min-height:52px}}@media(prefers-reduced-motion:reduce){.intro-tread,.intro-speed i,.intro-glow,.intro-shine,.intro-go:after,.intro-blink{animation:none}.intro-glow{opacity:1}.intro-pc,.intro-shaker,.intro-center,.intro-rule,.intro-loader,.intro-cta-wrap,.intro-sub,.intro-wipe,.intro-dirt,.intro-rule i.fall,.intro-flash{animation-duration:.01s!important;animation-delay:0s!important}}@media(max-width:640px){.hud{top:calc(54px + env(safe-area-inset-top));padding:0 12px;gap:5px}.hud-block{min-width:68px;padding:7px 9px}.hud-block b{font-size:27px}.hud-block small{font-size:8px}.heat{width:106px}.engine-status{font-size:7px}.race-course{left:12px;width:calc(100% - 96px)}.race-course-labels{gap:6px;font-size:7px}.race-track-name{font-size:9px}.game-pause{right:12px;padding:10px;font-size:10px}.standings{top:calc(158px + env(safe-area-inset-top));right:12px;gap:2px}.standings div{min-width:130px;font-size:8px;padding:3px 6px;gap:5px;grid-template-columns:12px 1fr 31px}.standings b{font-size:14px}.riding-feedback{top:calc(140px + env(safe-area-inset-top));left:12px;padding:5px 6px;font-size:7px;max-width:calc(100% - 24px)}.ticker{padding:12px 12px calc(12px + env(safe-area-inset-bottom));gap:9px}.ticker .line{font-size:19px}.ticker .live{font-size:7px;padding:4px 5px}.race-key-guide{left:12px;max-width:calc(100% - 24px);font-size:7px;line-height:1.6;padding:6px}.race-setup{grid-template-columns:1fr;gap:14px;margin-top:20px}.race-mode-switch button{font-size:11px}.select .riders{grid-template-columns:1fr 1fr;gap:8px}.select .rider{min-height:140px;padding:12px}.select .rider .name{font-size:27px}.select .rider .num{font-size:70px}.select .rider .note{display:none}.select .rider .from{font-size:9px}.select .rider .tag{font-size:7px;letter-spacing:.08em}.race-instructions{grid-template-columns:1fr;gap:9px;margin-top:16px}.race-instructions p{font-size:10px}.select-actions{gap:8px;margin-top:20px}.select-actions .btn{font-size:10px;padding:13px 16px}.results div{grid-template-columns:36px 1fr 72px;gap:7px;padding:10px 8px;font-size:10px}.results b{font-size:25px}.results .t{font-size:23px}}@media(max-width:370px){.direction-pad{grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,50px)}}@media(max-height:480px)and (orientation:landscape){.standings{display:none}.hud{top:calc(44px + env(safe-area-inset-top))}.hud-block{padding:5px 9px}.hud-block b{font-size:24px}.riding-feedback{top:calc(127px + env(safe-area-inset-top))}.race-key-guide{bottom:55px}.ticker{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.ticker .line{font-size:21px}}@media(prefers-reduced-motion:reduce){.game-ui *,.game-ui *:before,.game-ui *:after{animation:none!important;transition:none!important}}
