:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf2f3;font-synthesis:none;letter-spacing:0;background:#090c0e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button{font:inherit}.app-shell{background:#090c0e;grid-template-rows:56px minmax(0,1fr);width:100%;height:100%;display:grid}body.is-launching .app-shell{grid-template-rows:minmax(0,1fr)}body.is-launching .topbar,body.is-launching .board,body.is-launching .track-image,body.is-launching .dynamic-layer,body.is-launching .space-target-layer,body.is-launching .car-tooltip{display:none}.topbar{z-index:10;background:#121719;border-bottom:1px solid #313a3f;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr);align-items:center;gap:14px;padding:0 16px;display:grid;position:relative}.brand,.toolbar,.game-actions{align-items:center;display:flex}.brand{gap:9px;min-width:0}.brand>i{background:#e22d3d;width:10px;height:20px}.brand b{font-size:14px}.brand span{color:#89979d;white-space:nowrap;font-size:11px}.toolbar{justify-content:center}.toolbar button{color:#f1f5f6;cursor:pointer;background:#1b2226;border:1px solid #3a454a;border-right:0;border-radius:0;width:42px;height:34px;padding:0;font-weight:800}.toolbar button:nth-child(2){width:52px;font-size:11px}.toolbar button:last-child{border-right:1px solid #3a454a}.toolbar button:hover{background:#263036}.toolbar button:focus-visible{z-index:1;outline-offset:1px;outline:2px solid #55b8ff;position:relative}.game-actions{justify-content:center;gap:10px;min-width:260px}.turn-state{color:#9aa7ac;white-space:nowrap;font-size:11px;font-weight:700}.test-readout{text-overflow:ellipsis;color:#ffd97a;white-space:nowrap;background:#1c2529;border:1px solid #4a575d;border-radius:4px;max-width:320px;padding:5px 10px;font-size:10px;font-weight:900;overflow:hidden}.finish-celebration{z-index:120;pointer-events:none;position:fixed;inset:0;overflow:hidden}.finish-celebration i{opacity:0;border-radius:1px;animation:linear forwards confetti-fall;display:block;position:absolute;top:-24px}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-4vh)rotate(0)}to{opacity:.85;transform:translate3d(var(--sway,0px), 108vh, 0) rotate(720deg)}}.finish-banner{background:#0d1316f0;border:1px solid #5a676d;border-radius:8px;justify-items:center;gap:5px;padding:22px 38px 24px;animation:.5s cubic-bezier(.2,1.6,.4,1) both finish-pop;display:grid;position:absolute;top:38%;left:50%;box-shadow:0 24px 70px #0000009e}.finish-banner small{color:#9aa7ac;text-transform:uppercase;letter-spacing:1.4px;font-size:9px;font-weight:900}.finish-banner b{color:#ffd97a;font-size:46px;line-height:1}.finish-banner>span:last-child{color:#e6ecee;font-size:12px;font-weight:700}.finish-checker{background:conic-gradient(#f4f6f7 90deg,#10161a 90deg 180deg,#f4f6f7 180deg 270deg,#10161a 270deg) 0 0/14px 14px;border-radius:2px;width:132px;height:14px;margin-bottom:5px;animation:1.1s linear infinite checker-slide}@keyframes checker-slide{to{background-position:28px 0}}@keyframes finish-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.55)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.primary-action{color:#101517;cursor:pointer;background:#eef3f4;border:1px solid #e8edef;border-radius:4px;height:34px;padding:0 18px;font-size:12px;font-weight:900}.primary-action:hover{background:#fff;transform:translateY(-1px)}.primary-action.danger{color:#fff;background:#d92f3e;border-color:#ff5b63}.primary-action:disabled{opacity:.38;cursor:default;transform:none}.secondary-action{color:#e9eef0;cursor:pointer;background:#20282c;border:1px solid #46535a;border-radius:4px;height:32px;padding:0 11px;font-size:10px;font-weight:850}.secondary-action:hover{background:#2b353a;border-color:#d7dfe2}.secondary-action:disabled{opacity:.34;cursor:default}.fixture-name{color:#9eabb0;font-size:9px;font-weight:850}.fixture-speed{color:#aeb9bd;cursor:pointer;background:#1b2226;border:1px solid #3d494f;border-radius:3px;width:34px;height:28px;padding:0;font-size:9px;font-weight:900}.fixture-speed.active{color:#111719;background:#edf2f3;border-color:#fff}.race-workspace{background:#070a0b;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:clamp(176px,20vw,240px) minmax(300px,1fr) clamp(176px,18vw,218px);gap:8px;min-width:0;min-height:0;padding:8px;display:grid;position:relative;overflow:hidden}.board{touch-action:none;cursor:grab;background-color:#070a0b;background-image:linear-gradient(#111719 1px,#0000 1px),linear-gradient(90deg,#111719 1px,#0000 1px);background-size:24px 24px;grid-area:1/2;min-width:0;min-height:0;position:relative;overflow:hidden}.board.is-panning,.board.is-dragging-car{cursor:grabbing}.board.has-move-targets:not(.is-panning){cursor:crosshair}.track-image{transform-origin:0 0;will-change:transform;-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute;top:0;left:0}.dynamic-layer{pointer-events:none;position:absolute;inset:0}.space-target-layer{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.space-target{cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:50%;min-width:32px;min-height:32px;padding:0;position:absolute;transform:translate(-50%,-50%)}.space-target:hover,.space-target:focus-visible{outline-offset:-3px;background:#ffffff29;outline:2px solid #fff;box-shadow:0 0 0 4px #00000057,0 0 18px #ffffff85}.game-status{z-index:6;color:#dce5e8;text-align:center;pointer-events:none;background:#0c1113eb;border:1px solid #39454a;border-radius:4px;max-width:min(560px,100% - 420px);padding:7px 12px;font-size:11px;font-weight:750;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000052}.driver-panel{z-index:7;width:auto;height:100%;max-height:none;box-shadow:none;background:#0d1214f2;border:1px solid #38444a;border-radius:6px;grid-area:1/3/-1;padding:12px;position:relative;overflow:auto}.driver-heading{align-items:center;gap:9px;margin-bottom:12px;display:flex}.driver-heading>i{width:5px;height:34px}.driver-heading b,.driver-heading span{display:block}.driver-heading b{font-size:13px}.driver-heading span{color:#94a2a7;margin-top:2px;font-size:10px}.driver-heading em{color:#ff626c;font-style:normal;font-weight:950}.line-status{gap:4px;margin:-3px 0 9px 14px;display:flex}.line-status span{color:#8be9fb;border:1px solid #49d5f2;border-radius:3px;padding:3px 6px;font-size:9px;font-weight:900}.tire-status{color:#aab6ba;text-transform:uppercase;align-items:center;gap:5px;margin:-4px 0 8px 14px;font-size:9px;font-weight:900;display:flex}.tire-status img{object-fit:contain;width:20px;height:20px}.tire-status.soft{color:#ff6670}.tire-status.hard{color:#e5ecee}.resource-group{border-top:1px solid #2c363a;padding:8px 0}.resource-group>span{color:#89979d;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:900;display:block}.resource-group>div{flex-wrap:wrap;gap:3px;min-height:22px;display:flex}.resource-group img{object-fit:contain;width:22px;height:22px}.resource-group small{color:#657278;font-size:10px}.resource-token-count{background:#171e21;border:1px solid #354147;border-radius:3px;align-items:center;gap:3px;min-height:24px;padding:1px 5px 1px 2px;display:inline-flex}.resource-token-count b{color:#edf2f3;font-size:10px}.driver-cards{border-top:1px solid #2c363a;grid-template-columns:repeat(3,1fr);gap:4px;padding-top:8px;display:grid}.driver-card-asset{min-width:0;position:relative}.driver-card-asset>img{border:1px solid #394348;border-radius:3px;width:100%;min-width:0;display:block}.attribute-damage{z-index:2;flex-direction:column;display:flex;position:absolute;top:-5px;right:-4px}.attribute-damage img{filter:drop-shadow(0 2px 3px #000000bf);border:0;width:25px;height:25px;margin-bottom:-9px}.last-card{border-top:1px solid #2c363a;grid-template-columns:minmax(0,1fr) 70px;align-items:center;gap:8px;padding:8px 0;display:grid}.last-card span{color:#89979d;text-transform:uppercase;font-size:9px;font-weight:900}.last-card img{width:70px;transform:rotate(90deg)}.race-left-rail{z-index:7;flex-direction:column;grid-area:1/1/-1;gap:8px;width:auto;height:100%;max-height:none;display:flex;position:relative}.race-standings{min-height:0;max-height:none;box-shadow:none;background:#0d1214f7;border:1px solid #38444a;border-radius:6px;flex-direction:column;flex:64%;display:flex;overflow:hidden}.race-standings-title{text-transform:uppercase;background:#111719;border-bottom:1px solid #303a3f;flex:none;justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.race-standings-title b{font-size:10px}.race-standings-title span{color:#849198;font-size:8px;font-weight:850}.race-position-list{overscroll-behavior:contain;min-height:0;overflow-y:auto}.race-position-row{background:#12191c;border-bottom:1px solid #283236;padding:8px}.race-position-row:last-child{border-bottom:0}.race-position-row.is-you{box-shadow:inset 3px 0 0 var(--driver-color);background:#202a2e;border:1px solid #f2f6f7;position:relative}.race-position-row.is-out{opacity:.55}.race-position-row>header{grid-template-columns:28px 5px minmax(0,1fr) auto;align-items:center;gap:6px;display:grid}.race-position-row>header>strong{color:#fff;text-align:center;font-size:13px}.race-position-row>header>i{background:var(--driver-color);width:5px;height:27px}.race-position-row>header>span{min-width:0}.race-position-row>header b,.race-position-row>header small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.race-position-row>header b{font-size:10px}.race-position-row>header small{color:#859399;margin-top:1px;font-size:7px}.race-position-row>header em{color:#fff;text-transform:uppercase;border:1px solid #f2f6f7;padding:2px 4px;font-size:7px;font-style:normal;font-weight:950}.position-setup{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin-top:6px;display:grid}.position-setup>span{color:#eef3f4;text-align:center;background:#0d1315;border:1px solid #303b40;min-width:0;padding:3px 2px;font-size:8px;font-weight:900;position:relative}.position-setup small{color:#738187;margin-bottom:1px;font-size:6px;font-weight:900;display:block}.position-setup>span.is-damaged{color:#ffb7bb;border-color:#aa3941}.position-setup>span.is-damaged img{object-fit:contain;filter:drop-shadow(0 1px 2px #000);width:13px;height:13px;position:absolute;top:-4px;right:-3px}.position-resources{align-items:center;gap:5px;margin-top:5px;display:flex}.position-resources>span{color:#e9eef0;align-items:center;gap:2px;font-size:8px;display:inline-flex}.position-resources img{object-fit:contain;width:15px;height:15px}.position-resources>small{color:#91a0a5;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:auto;font-size:7px;font-weight:800;overflow:hidden}.position-setup-pending{color:#78868b;text-align:center;text-transform:uppercase;border:1px dashed #354147;margin-top:6px;padding:6px;font-size:8px;font-weight:850}.race-log{width:100%;min-height:110px;max-height:34%;box-shadow:none;background:#0d1214f2;border:1px solid #38444a;border-radius:6px;flex:0 34%;position:relative;overflow:auto}.race-log-title{z-index:1;text-transform:uppercase;background:#111719;border-bottom:1px solid #303a3f;justify-content:space-between;padding:10px;font-size:10px;display:flex;position:sticky;top:0}.race-log-title span{color:#849198}.race-log article{border-bottom:1px solid #263034;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.race-log article>img{width:44px;transform:rotate(90deg)}.race-log article>div:only-child{grid-column:1/-1}.race-log article b,.race-log article span,.race-log article small{display:block}.race-log article b{font-size:10px}.race-log article span{color:#bdc7ca;margin-top:2px;font-size:9px}.race-log article small{color:#748187;margin-top:3px;font-size:8px}.speed-dock{z-index:8;pointer-events:auto;scroll-snap-type:x proximity;scrollbar-width:thin;touch-action:pan-x;background:#090e10;border-top:1px solid #303a3f;grid-area:2/2;justify-content:safe center;align-items:center;gap:6px;height:88px;padding:6px 14px;scroll-padding-inline:14px;display:flex;position:relative;overflow:auto hidden}.speed-card-slot{pointer-events:none;scroll-snap-align:center;flex:0 0 76px;width:76px;height:74px;position:relative}.speed-card{aspect-ratio:407/585;cursor:pointer;pointer-events:auto;background:0 0;border:2px solid #0000;border-radius:4px;width:52px;padding:0;transition:transform .16s,border-color .16s,filter .16s;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)rotate(90deg);box-shadow:0 8px 18px #0000007a}.speed-card img{object-fit:contain;width:100%;height:100%;display:block}.speed-card:hover{filter:brightness(1.08);transform:translate(-50%,-50%)rotate(90deg)scale(1.04)}.speed-card.selected{border-color:#fff;transform:translate(-50%,-50%)rotate(90deg)scale(1.06);box-shadow:0 0 0 1px #fff,0 8px 20px #0009}.speed-card.selected.requires-test{border-color:#ff4a54;box-shadow:0 0 0 1px #ff4a54,0 0 22px #ff34426b}.dice-portal{z-index:30;pointer-events:none;grid-area:1/2;place-self:start center;width:min(330px,100% - 32px);margin-top:14px;position:relative}.decision-layer{z-index:9;pointer-events:none;background:#090e10;grid-area:2/2;place-items:center;min-width:0;min-height:0;padding:18px;display:grid;position:relative}.decision-sheet{text-align:center;pointer-events:auto;background:#111719;border:1px solid #46545a;border-radius:6px;width:min(360px,100%);padding:18px;animation:.18s ease-out decision-in;box-shadow:0 24px 70px #0000009e}@keyframes decision-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.decision-kicker{color:#ff6069;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:900;display:block}.decision-sheet>b{font-size:20px}.decision-sheet p{color:#9ca9ae;margin:7px 0 14px;font-size:11px}.decision-sheet strong{color:#fff}.decision-layer.requires-name{z-index:45;pointer-events:auto;background:#030506d1;padding:70px 24px 24px;position:absolute;inset:0}.driver-name-sheet{text-align:left;width:min(390px,100%);padding:24px}.driver-name-sheet>b{font-size:24px;display:block}.driver-name-sheet>p{max-width:310px;margin-bottom:18px;line-height:1.5}.driver-name-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.driver-name-form label{color:#9ca9ae;text-transform:uppercase;grid-column:1/-1;font-size:9px;font-weight:900}.driver-name-form input{color:#f1f5f6;background:#1b2327;border:1px solid #536168;border-radius:4px;outline:0;min-width:0;height:42px;padding:0 11px;font-size:13px;font-weight:750}.driver-name-form input:focus{border-color:#fff;box-shadow:0 0 0 1px #fff}.driver-name-form .primary-action{height:42px}.home-layer{pointer-events:auto;background:#030607ad;grid-area:1/1/-1/-1;place-items:stretch stretch;padding:0;position:absolute;inset:0;overflow:auto}.platform-home{pointer-events:auto;background:#090d0f;grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-height:100%;padding:22px 32px 18px;display:grid}.platform-nav{justify-content:space-between;align-items:center;display:flex}.platform-brand{align-items:center;gap:9px;display:flex}.platform-brand i{background:#ef334b;width:10px;height:26px;box-shadow:8px 0 #ef334b4d}.platform-brand b{font-size:17px}.platform-brand span{color:#8f9da2;text-transform:uppercase;border-left:1px solid #354147;padding-left:9px;font-size:9px;font-weight:900}.game-library{align-self:center;width:min(1180px,100%);margin:0 auto;padding:54px 0}.game-library h1{margin:0 0 28px;font-size:42px}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.game-tile{color:#edf2f3;text-align:left;cursor:pointer;background:#141b1e;border:1px solid #3d494e;border-radius:6px;grid-template-rows:164px minmax(0,1fr);min-width:0;min-height:260px;padding:0;transition:transform .16s,border-color .16s,background .16s;display:grid;overflow:hidden}button.game-tile:hover{background:#1a2326;border-color:#e5ecee;transform:translateY(-3px)}.game-art{background:#0d1214;border-bottom:1px solid #303b40;place-items:center;padding:20px;display:grid}.game-art img{object-fit:contain;filter:drop-shadow(0 18px 18px #0000007a);width:min(300px,92%);height:118px;display:block;transform:rotate(-4deg)}.game-tile-copy{align-content:center;gap:5px;padding:18px;display:grid;position:relative}.game-tile-copy small{color:#89979d;text-transform:uppercase;font-size:8px;font-weight:900}.game-tile-copy b{max-width:300px;font-size:18px;line-height:1.2}.game-tile-copy em{color:#66d4a2;text-transform:uppercase;font-size:8px;font-style:normal;font-weight:900;position:absolute;bottom:14px;right:14px}.game-tile-empty{color:#647278;cursor:default;background:0 0;border-style:dashed;align-content:center;place-items:center;gap:5px}.game-tile-empty span{font-size:13px;font-weight:850}.game-tile-empty small{text-transform:uppercase;font-size:8px;font-weight:900}.multiplayer-home{pointer-events:auto;grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-height:100%;padding:22px 32px 18px;display:grid}.home-nav{justify-content:space-between;align-items:center;gap:18px;display:flex}.home-brand{align-items:center;gap:9px;display:flex}.home-brand>i{background:#ef334b;width:10px;height:26px;box-shadow:8px 0 #ef334b4d}.home-brand b{font-size:18px}.home-brand span{color:#bec8cb;text-transform:uppercase;border-left:1px solid #ffffff3d;padding-left:9px;font-size:10px;font-weight:850}.home-track{align-items:center;gap:8px;display:flex}.home-track span{color:#8f9da2;text-transform:uppercase;font-size:9px;font-weight:850}.home-track b{font-size:11px}.library-back{color:#e5ecee;text-transform:uppercase;cursor:pointer;background:#172023;border:1px solid #46535a;border-radius:4px;height:32px;padding:0 12px;font-size:9px;font-weight:900}.library-back:hover{background:#222d31;border-color:#d9e1e3}.home-layout{grid-template-columns:minmax(0,1fr) 410px;align-items:center;gap:64px;width:min(1180px,100%);margin:0 auto;padding:42px 0;display:grid}.home-intro{max-width:680px}.home-kicker{color:#ff6871;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:950;display:block}.home-intro h1{color:#fff;max-width:680px;margin:0;font-size:58px;line-height:1.01}.home-intro>p{color:#c4cdd0;max-width:530px;margin:20px 0 0;font-size:15px;line-height:1.6}.cfr-car-showcase{border-top:1px solid #354147;border-bottom:1px solid #354147;place-items:center;width:min(560px,100%);height:150px;margin-top:18px;display:grid;overflow:hidden}.cfr-car-showcase img{object-fit:contain;filter:drop-shadow(0 20px 20px #00000080);width:88%;height:126px;transform:rotate(-4deg)}.home-facts{gap:34px;margin-top:34px;display:flex}.home-facts span{border-left:2px solid #65747a;gap:2px;min-width:70px;padding-left:12px;display:grid}.home-facts b{color:#fff;font-size:18px}.home-facts small{color:#87959a;text-transform:uppercase;font-size:9px;font-weight:850}.race-gateway{background:#0f1517f7;border:1px solid #536168;border-radius:6px;width:100%;padding:24px;box-shadow:0 26px 70px #00000085}.race-gateway>header span{color:#ff6570;text-transform:uppercase;font-size:9px;font-weight:950}.race-gateway>header h2{margin:5px 0 18px;font-size:22px}.host-race-action{color:#fff;text-align:left;cursor:pointer;background:#df2c43;border:1px solid #f04959;border-radius:5px;align-content:center;gap:3px;width:100%;min-height:64px;padding:0 16px;transition:transform .15s,background .15s,box-shadow .15s;display:grid}.host-race-action:hover{background:#f0374f;transform:translateY(-1px);box-shadow:0 12px 28px #df2c4342}.host-race-action span{font-size:13px;font-weight:950}.host-race-action small{color:#ffd9dd;font-size:9px;font-weight:750}.join-race-panel{margin-top:17px}.join-race-panel>label{color:#9aa7ac;text-transform:uppercase;margin-bottom:6px;font-size:9px;font-weight:900;display:block}.join-race-panel>div{grid-template-columns:minmax(0,1fr) auto;display:grid}.join-race-panel input{color:#f3f6f7;background:#1b2326;border:1px solid #46535a;border-right:0;border-radius:4px 0 0 4px;outline:0;min-width:0;height:40px;padding:0 11px;font-size:11px}.join-race-panel input:focus{border-color:#aeb9bd;box-shadow:inset 0 0 0 1px #aeb9bd}.join-race-panel button{color:#fff;cursor:pointer;background:#273135;border:1px solid #66747a;border-radius:0 4px 4px 0;height:40px;padding:0 14px;font-size:10px;font-weight:900}.join-race-panel button:hover{background:#354146}.gateway-divider{color:#78868c;text-transform:uppercase;align-items:center;gap:10px;margin:19px 0 10px;font-size:8px;font-weight:900;display:flex}.gateway-divider:before,.gateway-divider:after{content:"";background:#303b40;flex:1;height:1px}.join-race-panel>small{color:#78868c;margin-top:6px;font-size:9px;display:block}.recent-games{margin-top:4px}.recent-game{background:#171f22;border:1px solid #303c40;border-radius:5px;margin-bottom:8px;padding:10px 11px}.recent-game>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.recent-game>header b{font-size:11px;display:block}.recent-game>header small{color:#748187;margin-top:2px;font-size:8px;display:block}.recent-game code{color:#e8eef0;letter-spacing:.4px;background:#232d31;border-radius:3px;padding:1px 5px;font-size:9px}.recent-game-actions{flex-shrink:0;gap:6px;display:flex}.recent-game-actions button{color:#f1f5f6;cursor:pointer;background:#242e32;border:1px solid #48565c;border-radius:3px;height:24px;padding:0 8px;font-size:8px;font-weight:900}.recent-game-actions button:hover{background:#354146}.recent-seat-list{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.recent-seat{background:#10171a;border:1px solid #2b363a;border-radius:4px;align-items:center;gap:5px;padding:3px 4px 3px 8px;display:inline-flex}.recent-seat b{text-overflow:ellipsis;white-space:nowrap;color:#cfd8db;text-transform:uppercase;max-width:110px;font-size:8px;font-weight:900;overflow:hidden}.recent-seat button{color:#f1f5f6;cursor:pointer;background:#242e32;border:1px solid #48565c;border-radius:3px;height:20px;padding:0 6px;font-size:8px;font-weight:900}.recent-seat button:hover{background:#354146}.practice-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.practice-actions button{color:#eaf0f1;text-align:left;cursor:pointer;background:#192124;border:1px solid #3d494e;border-radius:4px;align-content:center;gap:2px;min-width:0;min-height:48px;padding:7px 10px;display:grid}.practice-actions button:hover{background:#212b2f;border-color:#7f8d92}.practice-actions b,.practice-actions span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.practice-actions b{font-size:10px}.practice-actions span{color:#829096;font-size:8px}.home-footer{color:#718086;text-transform:uppercase;border-top:1px solid #ffffff24;justify-content:space-between;align-items:center;gap:16px;padding-top:14px;font-size:8px;font-weight:850;display:flex}.selection-layer{pointer-events:auto;background:#030607ad;grid-area:1/1/-1/-1;place-items:center;padding:72px 24px 24px;position:absolute;inset:0;overflow:auto}.race-selection{pointer-events:auto;background:#101619;border:1px solid #47545a;border-radius:6px;width:min(1100px,100%);max-height:calc(100vh - 120px);animation:.18s ease-out decision-in;overflow:auto;box-shadow:0 24px 70px #000000ad}.selection-header{border-bottom:1px solid #303b40;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px 14px;display:flex}.selection-header h1{margin:2px 0 0;font-size:28px}.selection-back{color:#c8d1d4;text-transform:uppercase;cursor:pointer;background:0 0;border:0;min-width:max-content;padding:0;font-size:10px;font-weight:900;text-decoration:none}.selection-back:hover{color:#fff}.setup-progress{border-bottom:1px solid #303b40;grid-template-columns:repeat(4,1fr);display:grid}.setup-progress span{color:#748187;text-align:center;text-transform:uppercase;padding:9px 12px;font-size:9px;font-weight:900;position:relative}.setup-progress span.active{color:#f1f5f6}.setup-progress span.active:after{content:"";background:#ff5964;height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.selection-layout{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);display:grid}.selection-options,.car-selection,.online-checkpoints{min-width:0;padding:18px 20px 20px}.online-checkpoints h2{color:#dfe7e9;text-transform:uppercase;margin:0 0 12px;font-size:11px}.online-checkpoints ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.online-checkpoints li{color:#7f8d92;border:1px solid #303b40;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;min-height:42px;padding:6px 9px;display:grid}.online-checkpoints li.active{color:#eef3f4;background:#1b2427;border-color:#68767c}.online-checkpoints li b{border:1px solid #46545a;place-items:center;width:24px;height:24px;font-size:9px;display:grid}.online-checkpoints li span{font-size:10px;font-weight:850}.selection-options{border-right:1px solid #303b40}.selection-options h2,.car-selection h2{color:#dfe7e9;text-transform:uppercase;margin:0 0 12px;font-size:11px}.track-choice-grid{gap:8px;display:grid}.track-choice,.team-choice{cursor:pointer;min-width:0}.track-choice input,.team-choice input,.selection-toggle>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.track-choice>span{background:#171f22;border:1px solid #38454a;border-radius:5px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;min-height:66px;padding:6px;display:grid}.track-choice img{object-fit:cover;border-radius:3px;width:96px;height:54px;display:block}.track-choice b{overflow-wrap:anywhere;font-size:11px}.track-choice input:checked+span{border-color:#fff;box-shadow:0 0 0 1px #fff}.race-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px;display:grid}.race-fields label>span{color:#8f9ca1;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:900;display:block}.race-fields input{color:#f1f5f6;background:#1b2327;border:1px solid #3e4a50;border-radius:4px;width:100%;height:38px;padding:0 10px;font-size:12px;font-weight:750}.selection-toggle{color:#e7edef;cursor:pointer;background:#1b2327;border:1px solid #3e4a50;border-radius:4px;align-items:center;gap:11px;min-height:48px;margin-top:12px;padding:8px 11px;display:flex}.selection-toggle b{font-size:11px}.switch-track{background:#111719;border:1px solid #536168;border-radius:12px;flex:0 0 38px;width:38px;height:22px;position:relative}.switch-track i{background:#859298;border-radius:50%;width:14px;height:14px;transition:left .15s,background .15s;position:absolute;top:3px;left:3px}.selection-toggle>input:checked+.switch-track{background:#b52232;border-color:#f1f5f6}.selection-toggle>input:checked+.switch-track i{background:#fff;left:19px}.team-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.team-choice>span{background:#171e21;border:1px solid #354147;border-radius:5px;grid-template-rows:78px auto;min-height:112px;padding:7px;transition:border-color .13s,background .13s,transform .13s;display:grid}.team-choice:hover>span{background:#1d262a;border-color:#738188;transform:translateY(-1px)}.team-choice input:checked+span{background:#232c30;border-color:#fff;box-shadow:0 0 0 1px #fff}.team-choice img{object-fit:contain;width:100%;height:78px;display:block}.team-choice b{color:#e9eef0;overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;font-size:10px;line-height:1.2;display:flex}.team-choice b i{background:var(--team-color);border-radius:50%;flex:0 0 8px;width:8px;height:8px;box-shadow:0 0 0 1px #ffffff59}.selection-footer{background:#101619;border-top:1px solid #303b40;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex;position:sticky;bottom:0}.selection-footer>span{color:#849198;font-size:10px;font-weight:850}.selection-footer .primary-action{min-width:190px}.launch-error{color:#ff9aa0;margin:10px 20px 14px;font-size:11px;font-weight:750}.home-screen .launch-error{margin:4px 0 0}.launcher-result{background:#171e21;border:1px solid #3a464b;gap:5px;margin-top:12px;padding:10px;display:grid}.launcher-result b{text-transform:uppercase;margin-bottom:3px;font-size:10px}.launcher-result>div{grid-template-columns:minmax(0,1fr) 54px;align-items:center;gap:6px;display:grid}.launcher-result a,.launcher-result>div>span{color:#e5ecee;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.launcher-result button{color:#edf2f3;cursor:pointer;background:#232c30;border:1px solid #46535a;border-radius:3px;height:26px;font-size:9px;font-weight:850}.car-selection-sheet{text-align:left;width:min(920px,100%);max-height:min(760px,100dvh - 88px);overflow:hidden auto}.car-selection-title{z-index:2;background:#111719;border-bottom:1px solid #303b40;justify-content:space-between;align-items:center;gap:12px;margin:-18px -18px 12px;padding:16px 18px 12px;display:flex;position:sticky;top:-18px}.car-selection-title b{font-size:20px;display:block}.car-selection-title>span{color:#aeb9bd;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:10px;font-weight:850;overflow:hidden}.car-pick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.car-pick{color:#e9eef0;cursor:pointer;background:#182023;border:1px solid #354147;border-radius:4px;grid-template-rows:76px auto;min-width:0;min-height:112px;padding:6px;display:grid;position:relative}.car-pick:hover:not(:disabled){background:#202a2e;border-color:#9ba8ad;transform:translateY(-1px)}.car-pick.selected{border-color:#fff;box-shadow:0 0 0 1px #fff}.car-pick:disabled{cursor:default;opacity:.42}.car-pick.selected:disabled{opacity:1}.car-pick img{object-fit:contain;width:100%;height:76px}.car-pick>span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:9px;font-weight:850;display:flex;overflow:hidden}.car-pick>span i{background:var(--team-color);border-radius:50%;flex:0 0 7px;width:7px;height:7px}.car-pick>small{color:#c6d0d3;text-transform:uppercase;background:#303a3e;padding:2px 4px;font-size:7px;font-weight:900;position:absolute;top:5px;right:5px}.readiness-roster{text-align:left;border-top:1px solid #303b40;margin-top:14px;padding-top:11px}.readiness-roster>header{justify-content:space-between;align-items:center;margin-bottom:7px;display:flex}.readiness-roster>header b{color:#aeb9bd;text-transform:uppercase;font-size:9px}.readiness-roster>header span{color:#fff;font-size:10px;font-weight:900}.readiness-pending{color:#ff9ba2;gap:6px;margin:0 0 7px;font-size:8px;line-height:1.4;display:flex}.readiness-pending b{color:#dce4e7;font-size:inherit;text-transform:uppercase;flex:none}.readiness-pending.complete{color:#71d3a7}.readiness-roster>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.readiness-row{background:#171e21;border:1px solid #2e383c;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;min-height:27px;padding:4px 6px;display:grid}.readiness-row>i{background:var(--driver-color);width:5px;height:17px}.readiness-row>span{text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:800;overflow:hidden}.readiness-row>small{color:#ff8d95;text-transform:uppercase;font-size:7px;font-weight:900}.readiness-row.ready>small{color:#71d3a7}.readiness-row.is-you{border-color:#5b686e}.driver-panel .readiness-roster>div{grid-template-columns:1fr}.driver-panel .readiness-row{grid-template-columns:4px minmax(0,1fr) auto}.pole-results-sheet{text-align:left;width:min(520px,100%);max-height:min(720px,100vh - 150px);overflow:auto}.pole-results-sheet>b{font-size:22px;display:block}.pole-result-list{gap:4px;margin-top:12px;display:grid}.pole-result-row{background:#171e21;border:1px solid #303b40;grid-template-columns:36px 5px minmax(0,1fr);align-items:center;gap:9px;min-height:42px;padding:6px 8px;display:grid}.pole-result-row.is-you{border-color:#e5ecee}.pole-result-row>strong{text-align:center;font-size:13px}.pole-result-row>i{width:5px;height:26px}.pole-result-row span b,.pole-result-row span small{display:block}.pole-result-row span b{font-size:10px}.pole-result-row span small{color:#89979d;margin-top:2px;font-size:8px}.pole-ready-action{width:100%;margin-top:12px}.room-layer{pointer-events:auto;background:#030607b8;grid-area:1/1/-1/-1;place-items:center;padding:72px 24px 24px;position:absolute;inset:0;overflow:auto}.room-screen{pointer-events:auto;background:#101619;border:1px solid #4b585e;border-radius:6px;width:min(920px,100%);max-height:calc(100vh - 120px);animation:.18s ease-out decision-in;overflow:auto;box-shadow:0 24px 70px #000000ad}.room-header{border-bottom:1px solid #303b40;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px 14px;display:flex}.room-header h1{margin:2px 0 0;font-size:28px}.room-code-banner{background:#182225;border-bottom:1px solid #303b40;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:14px;padding:12px 20px;display:grid}.room-code-banner small{color:#9aa7ac;text-transform:uppercase;font-size:8px;font-weight:900;display:block}.room-code{color:#ffd97a;letter-spacing:1.5px;margin-top:3px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:20px;font-weight:900;display:block}.room-code-banner button{color:#f1f5f6;cursor:pointer;background:#242e32;border:1px solid #48565c;border-radius:3px;height:30px;padding:0 12px;font-size:9px;font-weight:900}.room-code-banner button:hover{background:#354146}.room-code-banner p{color:#8b989e;margin:0;font-size:10px;line-height:1.45}.room-layout{grid-template-columns:300px minmax(0,1fr);display:grid}.room-summary{background:#141b1e;border-right:1px solid #303b40;padding:22px}.room-status{color:#87d8b4;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;font-weight:900;display:flex}.room-status i{background:#35c986;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #35c9861f}.room-summary h2{margin:14px 0 12px;font-size:24px}.room-stats{border:1px solid #354147;grid-template-columns:repeat(3,1fr);display:grid}.room-stats span{border-right:1px solid #354147;gap:2px;padding:9px;display:grid}.room-stats span:last-child{border-right:0}.room-stats b{font-size:14px}.room-stats small{color:#7f8d92;text-transform:uppercase;font-size:8px;font-weight:900}.room-host-car{background:#1a2225;border:1px solid #354147;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;min-width:0;margin-top:16px;padding:9px;display:grid}.room-host-car img{object-fit:contain;width:92px;height:48px}.room-host-car small,.room-host-car b{display:block}.room-host-car small{color:#7f8d92;text-transform:uppercase;font-size:8px;font-weight:900}.room-host-car b{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}.room-next-step{background:#1a2225;border:1px solid #354147;gap:3px;margin-top:16px;padding:12px;display:grid}.room-next-step small{color:#7f8d92;text-transform:uppercase;font-size:8px;font-weight:900}.room-next-step b{font-size:12px}.room-enter{width:100%;margin-top:14px}.room-invites{min-width:0;padding:22px}.room-invites>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.room-invites>header span{color:#ff6570;text-transform:uppercase;font-size:8px;font-weight:900}.room-invites>header h2{margin:3px 0 0;font-size:18px}.room-invites>header button,.seat-row button,.spectator-row button{color:#f1f5f6;cursor:pointer;background:#242e32;border:1px solid #48565c;border-radius:3px;height:30px;padding:0 10px;font-size:9px;font-weight:900}.room-invites button:hover{background:#303c41;border-color:#dce4e6}.seat-list{gap:5px;display:grid}.seat-row{background:#171f22;border:1px solid #303c40;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:50px;padding:7px 8px;display:grid}.seat-row-actions{flex-shrink:0;gap:6px;display:flex}.seat-row.is-host{background:#211b1e;border-color:#62535a}.seat-number{color:#bdc8cb;border:1px solid #48555a;place-items:center;width:28px;height:28px;font-size:10px;font-weight:950;display:grid}.seat-row b,.seat-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.seat-row b{font-size:10px}.seat-row small{color:#748187;margin-top:2px;font-size:8px}.spectator-row{border-top:1px solid #303b40;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.spectator-row b,.spectator-row small{display:block}.spectator-row b{font-size:10px}.spectator-row small{color:#748187;margin-top:2px;font-size:8px}.setup-sheet{text-align:left;width:min(940px,100%);max-height:min(760px,100dvh - 88px);overflow:hidden auto}.setup-title{z-index:2;background:#111719;border-bottom:1px solid #303b40;justify-content:space-between;align-items:center;margin:-18px -18px 12px;padding:16px 18px 12px;display:flex;position:sticky;top:-18px}.setup-title b{font-size:20px;display:block}.setup-identity{align-items:center;gap:12px;min-width:0;display:flex}.setup-identity>img{object-fit:contain;flex:0 0 92px;width:92px;height:46px}.setup-identity>div{min-width:0}.setup-meta{align-items:center;gap:8px;display:flex}.pit-toggle{color:#aeb9bd;text-transform:uppercase;cursor:pointer;background:#1d2529;border:1px solid #49565c;border-radius:4px;height:34px;padding:0 10px;font-size:9px;font-weight:900}.pit-toggle.active{color:#111719;background:#edf2f3;border-color:#fff}.setup-score{color:#ff6670;text-align:center;border:1px solid #59656a;border-radius:4px;min-width:64px;padding:6px 9px;font-size:20px;font-weight:950}.setup-score.legal{color:#fff;border-color:#dfe7e9}.setup-score small{color:#8f9ca1;text-transform:uppercase;font-size:8px;display:block}.setup-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;display:grid}.setup-categories section{min-width:0}.setup-categories h3{color:#aab5b9;text-transform:uppercase;margin:0 0 6px;font-size:10px}.setup-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.setup-card{cursor:pointer;background:#20282c;border:2px solid #0000;border-radius:4px;min-width:0;padding:0;transition:border-color .14s,transform .14s,filter .14s;position:relative}.setup-card:hover{filter:brightness(1.12);transform:translateY(-2px)}.setup-card.selected{border-color:#fff;box-shadow:0 0 0 1px #fff3}.setup-card img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.setup-card span{color:#fff;background:#070a0be6;border:1px solid #526066;border-radius:3px;min-width:22px;padding:2px 4px;font-size:9px;font-weight:900;position:absolute;bottom:3px;right:3px}.pole-sheet{text-align:left;width:min(400px,100%)}.pole-sheet>b{font-size:20px;display:block}.tire-choice{grid-template-columns:1fr 1fr;gap:6px;margin:10px 0 12px;display:grid}.tire-choice button{color:#dbe3e5;text-transform:uppercase;cursor:pointer;background:#20282c;border:1px solid #455259;border-radius:4px;justify-content:center;align-items:center;gap:6px;height:36px;font-size:11px;font-weight:900;display:flex}.tire-choice button img{object-fit:contain;width:26px;height:26px}.tire-choice button:hover,.tire-choice button.active{color:#111719;background:#edf2f3;border-color:#fff}.bid-rows{gap:6px;display:grid}.bid-row{background:#171e21;border:1px solid #303b40;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.bid-row>img{object-fit:contain;width:38px;height:38px}.bid-row strong,.bid-row small{display:block}.bid-row small{color:#8f9ca1;margin-top:2px;font-size:9px}.stepper{grid-template-columns:30px 32px 30px;align-items:center;display:grid}.stepper button{color:#fff;cursor:pointer;background:#263035;border:1px solid #45535a;width:30px;height:30px;font-size:18px}.stepper button:disabled{opacity:.28;cursor:default}.stepper output{text-align:center;font-size:14px;font-weight:900}.bid-total{color:#9eaaaf;border-top:1px solid #303b40;justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;font-size:11px;display:flex}.bid-total strong{color:#fff;font-size:20px}.results-sheet{text-align:left;width:min(460px,100%)}.results-sheet>b{margin-bottom:12px;font-size:22px;display:block}.standings{gap:4px;display:grid}.standings>div{background:#171e21;border:1px solid #303b40;grid-template-columns:28px 5px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:5px 8px;display:grid}.standings strong{text-align:center;font-size:13px}.standings i{width:5px;height:22px}.standings span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:850;overflow:hidden}.standings small{color:#8e9ba0;font-size:9px}.decision-options,.skill-choice{justify-content:center;gap:6px;display:flex}.decision-options button,.skill-choice button{color:#edf2f3;cursor:pointer;background:#20282c;border:1px solid #425057;border-radius:4px;min-height:34px;padding:0 12px;font-size:11px;font-weight:850}.decision-options button small{color:#9caaaf;margin-top:2px;font-size:8px;display:block}.decision-options button:hover,.skill-choice button:hover,.skill-choice button.active{background:#2d383d;border-color:#fff}.skill-choice button:disabled{opacity:.35;cursor:default}.quiet-action{color:#89979d;cursor:pointer;background:0 0;border:0;margin-top:12px;padding:5px 9px;font-size:10px}.crash-action{color:#fff!important;background:#c92837!important;border-color:#ff5963!important}.dice-stage{perspective:900px;background:linear-gradient(#1b242aeb,#080c0fe6);border:1px solid #ffffff24;border-radius:14px;justify-items:center;gap:9px;margin:12px 0;padding:14px 18px 12px;display:grid;box-shadow:inset 0 1px #ffffff14,0 16px 32px #00000057}.dice-pair{gap:22px;padding:5px 4px 13px;display:flex}.die-3d{--die-depth:31px;perspective:560px;width:62px;height:62px;position:relative}.die-3d:after{content:"";filter:blur(3px);background:radial-gradient(#00000094,#0000 70%);border-radius:50%;height:11px;position:absolute;bottom:-14px;left:8%;right:8%}.die-3d.drop-in{animation:.8s cubic-bezier(.34,1.56,.64,1) die-drop}.dice-cube{width:100%;height:100%;transform-style:preserve-3d;position:relative;transform:rotateX(-14deg)rotateY(18deg)}.dice-cube.tumbling{animation:.34s linear infinite cube-tumble}.dice-face{backface-visibility:hidden;background:linear-gradient(145deg,#fff,#dde3ea 68%,#c3ccd7);border:1px solid #aeb9c6;border-radius:10px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);padding:8px;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 10px #0f172a29}.dice-pip{background:radial-gradient(circle at 35% 30%,#3b4a5f,#0b1220 72%);border-radius:50%;place-self:center;width:72%;height:72%;box-shadow:inset 0 -2px 3px #0000008c,0 1px 1px #ffffff59}.dice-total{color:#bfdbfe;font-size:11px;font-weight:800}.server-roll{text-align:center;pointer-events:none;background:#111719;border:1px solid #59666c;border-radius:8px;width:100%;padding:12px;box-shadow:0 20px 60px #000000b3}.server-roll>span,.server-roll>b{display:block}.server-roll>span{color:#ff6770;text-transform:uppercase;font-size:9px;font-weight:900}.server-roll>b{font-size:11px}.server-roll .dice-stage{margin:9px 0}.server-roll .die-3d{--die-depth:27px;width:54px;height:54px}.lab-rolls{justify-content:center;gap:4px;margin-top:10px;display:flex}.lab-rolls button{color:#aeb9bd;cursor:pointer;background:#1d2529;border:1px solid #3e4a50;border-radius:3px;height:27px;padding:0 7px;font-size:8px;font-weight:900}.lab-rolls button.active{color:#111719;background:#edf2f3;border-color:#fff}@keyframes cube-tumble{0%{transform:rotateX(-12deg)rotateY(8deg)}25%{transform:rotateX(118deg)rotateY(96deg)rotate(18deg)}50%{transform:rotateX(226deg)rotateY(184deg)}75%{transform:rotateX(318deg)rotateY(275deg)rotate(-16deg)}to{transform:rotateX(348deg)rotateY(368deg)}}@keyframes die-drop{0%{opacity:0;transform:translateY(-110px)scale(.65)}55%{opacity:1;transform:translateY(7px)scale(1.04)}75%{transform:translateY(-9px)}to{transform:translateY(0)scale(1)}}.car-tooltip{z-index:4;color:#f7fafb;white-space:nowrap;pointer-events:none;background:#0d1214;border:1px solid #47545a;padding:5px 8px;font-size:11px;font-weight:800;position:absolute;transform:translate(-50%,-100%);box-shadow:0 8px 22px #0006}.loading{z-index:5;text-align:center;background:#111719;border:1px solid #354046;width:min(360px,100% - 32px);padding:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading b,.loading span{display:block}.loading span{color:#89979d;margin-top:4px;font-size:11px}.diagnostics{z-index:10;color:#89979d;white-space:nowrap;background:#121719;border-top:1px solid #313a3f;align-items:center;gap:18px;min-width:0;padding:0 14px;font-size:10px;display:flex;position:relative;overflow:hidden}.diagnostics b{color:#dce4e7}.layer-note{color:#2dd4a3;margin-left:auto}@media (min-width:1200px){.car-pick-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.setup-categories{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-layout{grid-template-columns:minmax(0,1fr) 370px;gap:30px}.home-intro h1{font-size:46px}.selection-layout{grid-template-columns:1fr}.selection-options{border-bottom:1px solid #303b40;border-right:0}.team-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.room-layout{grid-template-columns:260px minmax(0,1fr)}}@media (max-width:700px){html,body,#app{height:auto;min-height:100%;overflow:hidden auto}.platform-home{padding:16px 16px 14px}.game-library{align-self:start;padding:46px 0 28px}.game-library h1{font-size:34px}.game-grid{grid-template-columns:1fr}.game-tile{grid-template-rows:140px minmax(0,1fr);min-height:230px}.game-art img{height:102px}.app-shell{width:100%;height:auto;min-height:100svh;display:block}.topbar{z-index:40;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;height:52px;padding:0 8px;position:sticky;top:0}.brand b,.brand span,.turn-state{display:none}.game-actions{scrollbar-width:none;justify-content:flex-start;min-width:0;overflow-x:auto}.game-actions::-webkit-scrollbar{display:none}.primary-action{padding:0 10px}.toolbar button{width:34px}.toolbar button:nth-child(2){display:none}.race-workspace{background:#090d0f;flex-direction:column;min-height:calc(100svh - 52px);display:flex;overflow:visible}body.is-launching .race-workspace{min-height:100svh}.board{flex:none;order:0;width:100%;height:clamp(360px,58svh,540px);position:relative;inset:auto}.driver-panel{width:auto;max-height:none;box-shadow:none;background:#111719;border-radius:4px;order:4;margin:8px 10px 0;position:relative;inset:auto;overflow:visible}.race-left-rail{order:5;gap:8px;width:auto;height:auto;max-height:none;margin:8px 10px 18px;position:relative;inset:auto}.race-standings{max-height:min(540px,65svh);box-shadow:none;border-radius:4px;flex:none}.race-log{width:100%;min-height:0;max-height:355px;box-shadow:none;background:#111719;border-radius:4px;flex:none;overflow-y:auto}.race-log article{grid-template-columns:48px minmax(0,1fr);min-height:64px}.race-log article>img{display:block}.last-card{text-align:center;grid-template-columns:1fr;justify-items:center;padding:12px 0 16px}.last-card img{justify-self:center}.driver-cards{grid-template-columns:repeat(3,1fr)}.game-status{max-width:none;top:8px;left:8px;right:8px;transform:none}.speed-dock{touch-action:pan-x;scroll-snap-type:x proximity;scrollbar-width:thin;background:#0a0f11;flex:0 0 86px;order:1;justify-content:flex-start;gap:4px;width:100%;height:86px;padding:6px 10px;scroll-padding-inline:10px;position:relative;inset:auto;overflow:auto hidden}.speed-card-slot{scroll-snap-align:center;flex-basis:68px;width:68px;height:74px}.speed-card{width:50px}.dice-portal{order:2;width:auto;margin:8px 10px 0;position:relative;inset:auto;transform:none}.decision-layer{background:#090d0f;order:3;place-items:stretch stretch;width:100%;padding:10px;display:grid;position:relative;inset:auto}.decision-layer.requires-name{z-index:60;background:#030506eb;place-items:center;width:100%;min-height:calc(100svh - 52px);padding:16px;position:fixed;inset:52px 0 0}.decision-sheet{width:100%;box-shadow:none}.home-layer{padding:0}.multiplayer-home{min-height:100%;padding:16px 16px 14px}.home-brand>i{height:22px}.home-track span{display:none}.home-layout{grid-template-columns:1fr;align-content:start;gap:24px;width:100%;padding:38px 0 24px}.home-intro{max-width:520px}.home-intro h1{font-size:40px;line-height:1.04}.home-intro>p{margin-top:14px;font-size:13px;line-height:1.5}.cfr-car-showcase{height:112px}.cfr-car-showcase img{height:94px}.home-facts{gap:18px;margin-top:22px}.home-facts span{min-width:0}.home-facts b{font-size:15px}.race-gateway{padding:18px}.home-footer{flex-direction:column;align-items:flex-start;gap:5px}.selection-layer{align-items:start;padding:58px 8px 12px}.race-selection{max-height:calc(100vh - 124px)}.selection-header{align-items:flex-start;padding:14px}.selection-header h1{font-size:22px}.selection-options,.car-selection{padding:14px}.team-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.race-fields{grid-template-columns:1fr}.selection-footer{flex-direction:column;align-items:stretch;padding:10px 14px}.selection-footer .primary-action{width:100%}.room-layer{align-items:start;padding:10px 8px}.room-screen{max-height:calc(100vh - 20px)}.room-header{align-items:flex-start;padding:14px}.room-header h1{font-size:22px}.room-layout{grid-template-columns:1fr}.room-code-banner{grid-template-columns:minmax(0,1fr) auto}.room-code-banner p{grid-column:1/-1}.room-summary{border-bottom:1px solid #303b40;border-right:0;padding:16px}.room-invites{padding:16px}.car-selection-sheet{max-height:none;overflow:visible}.car-pick-grid,.readiness-roster>div,.driver-panel .readiness-roster>div{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-sheet,.pole-results-sheet{max-height:none;overflow:visible}.setup-categories{grid-template-columns:1fr}}@media (max-width:440px){.platform-home{padding:13px 12px 12px}.game-library{padding-top:34px}.game-library h1{font-size:30px}.multiplayer-home{padding:13px 12px 12px}.home-layout{gap:18px;padding:28px 0 18px}.home-kicker{margin-bottom:8px;font-size:9px}.home-intro h1{font-size:34px}.home-intro>p{font-size:12px}.home-facts{justify-content:space-between;gap:8px;margin-top:18px}.home-facts span{flex:1;padding-left:8px}.race-gateway>header h2{font-size:19px}.join-race-panel>div{grid-template-columns:1fr;gap:6px}.join-race-panel input,.join-race-panel button{border:1px solid #46535a;border-radius:4px;width:100%}.practice-actions{grid-template-columns:1fr}.team-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seat-row{grid-template-columns:28px minmax(0,1fr)}.seat-row .seat-row-actions{grid-column:1/-1;width:100%}.seat-row-actions button{flex:1}.readiness-roster>div,.driver-name-form{grid-template-columns:1fr}.driver-name-form .primary-action{width:100%}}
