@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2039e8342bda6056-s.1hiu0hj9qpr9g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fabcf92ba1ccea36-s.p.1w_qz2ahumqmz.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bebas Neue Fallback;src:local(Arial);ascent-override:117.32%;descent-override:39.11%;line-gap-override:0.0%;size-adjust:76.72%}.bebas_neue_41f723f1-module__PBy5tW__className{font-family:Bebas Neue,Bebas Neue Fallback;font-style:normal;font-weight:400}.bebas_neue_41f723f1-module__PBy5tW__variable{--font-display:"Bebas Neue", "Bebas Neue Fallback"}
@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.3z_x6eowsw16y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.2_mbdogr7ni8i.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_7e158b59-module__W-9B5a__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_7e158b59-module__W-9B5a__variable{--font-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_8be3b53a-module__CxiPNW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_8be3b53a-module__CxiPNW__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.h-full{height:100%}.min-h-full{min-height:100%}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--bg-deep:#0c1210;--bg-mid:#15201b;--asphalt:#1c2421;--panel:#121c18d1;--panel-border:#e8c54738;--text:#f3f0e6;--muted:#9aa89f;--accent:#e8c547;--accent-hot:#ff6b35;--good:#3ddc97;--bad:#ff5d5d;--sky:#6eb8d4}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--text);background:var(--bg-deep);font-family:var(--font-sans), system-ui, sans-serif}button,input{font:inherit}button{cursor:pointer;background:linear-gradient(135deg, var(--accent), #f0a202);color:#1a1408;letter-spacing:.02em;border:0;border-radius:999px;padding:.85rem 1.4rem;font-weight:700;transition:transform .2s,filter .2s}button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{color:var(--text);background:0 0;border:1px solid #f3f0e640}input{width:100%;color:var(--text);background:#00000047;border:1px solid #f3f0e626;border-radius:12px;outline:none;margin-top:.45rem;padding:.85rem 1rem}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #e8c5472e}label{color:var(--muted);margin-top:1rem;font-size:.9rem;display:block}.home{isolation:isolate;min-height:100vh;padding:2.5rem clamp(1rem,4vw,3rem) 3rem;position:relative;overflow:hidden}.top-bar{justify-content:flex-end;margin-bottom:1rem;animation:.5s both rise;display:flex}.auth-google,.auth-chip{color:var(--text);background:#00000059;border:1px solid #f3f0e629;border-radius:999px;align-items:center;gap:.65rem;padding:.45rem .75rem .45rem .55rem;display:inline-flex}.auth-google{cursor:pointer;color:#1a1408;background:#f3f0e6f5;padding:.65rem 1.1rem;font-weight:700}.auth-google:hover{filter:brightness(1.04)}.auth-chip.muted{color:var(--muted);font-size:.9rem}.g-mark{color:#4285f4;background:#fff;border-radius:999px;place-items:center;width:1.4rem;height:1.4rem;font-size:.85rem;font-weight:800;display:inline-grid}.auth-avatar{object-fit:cover;border-radius:999px;width:2rem;height:2rem}.auth-avatar.placeholder{color:var(--accent);background:#e8c54740;place-items:center;font-weight:700;display:inline-grid}.auth-meta{flex-direction:column;min-width:0;line-height:1.15;display:flex}.auth-meta strong{white-space:nowrap;text-overflow:ellipsis;max-width:12rem;font-size:.92rem;overflow:hidden}.auth-meta small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:12rem;font-size:.75rem;overflow:hidden}button.ghost.compact{padding:.4rem .8rem;font-size:.8rem}.home-bg{z-index:-1;background:radial-gradient(ellipse 80% 55% at 50% -10%, #6eb8d473, transparent 60%), radial-gradient(ellipse 50% 40% at 85% 30%, #ff6b352e, transparent 55%), linear-gradient(180deg, #163028 0%, var(--bg-deep) 55%, #0a0f0d 100%);position:absolute;inset:0}.home-bg:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 28px,#f3f0e60d 28px 30px),linear-gradient(#0000,#1c2421f2);height:38%;position:absolute;inset:auto 0 0;-webkit-mask-image:linear-gradient(#0000,#000 35%);mask-image:linear-gradient(#0000,#000 35%)}.hero{max-width:720px;margin-bottom:2.5rem;animation:.7s both rise}.brand{font-family:var(--font-display), sans-serif;letter-spacing:.04em;color:var(--accent);text-shadow:0 8px 40px #e8c54740;margin:0;font-size:clamp(4rem,12vw,7.5rem);line-height:.9}.hero h1{max-width:18ch;margin:.6rem 0 0;font-size:clamp(1.4rem,3vw,2rem);font-weight:600}.lede{color:var(--muted);max-width:42ch;margin:.9rem 0 0;line-height:1.6}.lobby-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:2rem;animation:.8s 80ms both rise;display:grid}.panel,.leaderboard,.scoreboard,.typing-panel,.center-card{background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:20px;box-shadow:0 20px 50px #00000047}.panel{padding:1.4rem}.solo-panel{background:radial-gradient(circle at 100% 0%, #e8c54729, transparent 42%), var(--panel);border-color:#e8c5477a;position:relative;overflow:hidden}.solo-panel:after{content:"";pointer-events:none;border:1.4rem solid #e8c5470f;border-radius:50%;width:7rem;height:7rem;position:absolute;bottom:-3rem;right:-2.5rem}.mode-tag{min-height:1.55rem;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;background:#e8c5471a;border:1px solid #e8c54773;border-radius:999px;align-items:center;margin-bottom:.55rem;padding:.2rem .65rem;font-size:.68rem;font-weight:800;display:inline-flex}.mode-tag.multiplayer{color:#91d9f2;background:#6eb8d41a;border-color:#6eb8d47a}.panel h2,.leaderboard h2,.scoreboard h2{font-family:var(--font-display), sans-serif;letter-spacing:.06em;margin:0;font-size:1.8rem}.panel p{color:var(--muted);line-height:1.5}.panel button{width:100%;margin-top:1.25rem}input.code{font-family:var(--font-mono), monospace;letter-spacing:.28em;text-transform:uppercase}.error-banner{color:#ffd0d0;background:#ff5d5d26;border:1px solid #ff5d5d59;border-radius:12px;grid-column:1/-1;padding:.85rem 1rem}.leaderboard{padding:1.4rem;animation:.9s .14s both rise}.leaderboard-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.leaderboard-head h2{margin:0}.leaderboard-tabs{background:#ffffff0a;border-radius:10px;gap:.25rem;padding:.2rem;display:inline-flex}.leaderboard-tabs button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:.35rem .75rem;font-size:.85rem}.leaderboard-tabs button.active{color:var(--accent);background:#e8c54729}.leaderboard-signin{justify-items:start;gap:.75rem;margin-top:1rem;display:grid}.leaderboard .empty{color:var(--muted)}.leaderboard ol,.scoreboard ol,.lobby-players{gap:.55rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.leaderboard li,.scoreboard li{background:#ffffff08;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.7rem .85rem;display:grid}.scoreboard li.you{outline:1px solid var(--car)}@supports (color:color-mix(in lab, red, red)){.scoreboard li.you{outline:1px solid color-mix(in oklab, var(--car) 70%, white)}}.scoreboard li.you{background:var(--car)}@supports (color:color-mix(in lab, red, red)){.scoreboard li.you{background:color-mix(in oklab, var(--car) 18%, transparent)}}.place{width:1.6rem;height:1.6rem;color:var(--accent);background:#e8c5472e;border-radius:999px;place-items:center;font-size:.8rem;font-weight:700;display:grid}.meta{color:var(--muted);font-size:.85rem;font-family:var(--font-mono), monospace}.race-page{box-sizing:border-box;background:radial-gradient(ellipse 70% 40% at 50% 0%, #6eb8d447, transparent 55%), linear-gradient(180deg, #122018, var(--bg-deep));flex-direction:column;height:100dvh;max-height:100dvh;padding:.45rem clamp(.4rem,1.2vw,.9rem);display:flex;overflow:hidden}.race-layout{flex:1;grid-template-rows:auto minmax(0,1fr) auto;gap:.45rem;width:100%;min-height:0;margin:0 auto;display:grid;overflow:hidden}.race-header{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.eyebrow{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.68rem}.race-header h1{font-family:var(--font-display), sans-serif;letter-spacing:.04em;margin:.1rem 0 0;font-size:clamp(1.25rem,2.5vw,1.85rem);line-height:.95}.header-actions{flex-wrap:wrap;gap:.5rem;display:flex}.race-main{grid-template-columns:1fr;gap:.45rem;min-height:0;display:grid;overflow:hidden}.race-main.with-board{grid-template-columns:minmax(0,1fr) minmax(200px,260px)}@media (max-width:900px){.race-main.with-board{grid-template-columns:1fr}}.viewport{background:linear-gradient(#7ec8e3,#b7dce8);border:1px solid #f3f0e61f;border-radius:14px;height:100%;min-height:0;animation:.6s both soft-in;position:relative;overflow:hidden}.race-canvas,.race-canvas.placeholder{width:100%;height:100%;position:absolute;inset:0}.race-canvas canvas{display:block;width:100%!important;height:100%!important}.driver-badge{color:#f8fafc;background:linear-gradient(135deg,#070c0af5,#141e1aeb);border:1px solid;border-radius:9px;grid-template-columns:.35rem auto;min-width:7.4rem;display:grid;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 8px 24px #00000061,inset 0 1px #ffffff14}.driver-badge.local{box-shadow:0 0 0 2px #e8c5476b,0 8px 24px #0000006b}.driver-color{width:100%;height:100%;display:block}.driver-copy{text-align:left;font-family:var(--font-sans), system-ui, sans-serif;gap:.08rem;padding:.4rem .55rem .38rem;line-height:1.05;display:grid}.driver-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;font-size:.8rem;overflow:hidden}.driver-copy small{color:#b7c3bc;font-family:var(--font-mono), monospace;letter-spacing:.07em;font-size:.54rem;font-weight:700}.driver-badge-stem{opacity:.85;width:2px;height:.55rem;margin:0 auto;display:block}.race-canvas.placeholder{color:#123;place-items:center;font-weight:600;display:grid}.overlay{text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080e0c9e;place-content:center;gap:.6rem;padding:1.5rem;animation:.35s both soft-in;display:grid;position:absolute;inset:0}.overlay h2{font-family:var(--font-display), sans-serif;letter-spacing:.05em;margin:0;font-size:3rem}.overlay p{color:#d7e0db;margin:0}.overlay.countdown span{font-family:var(--font-display), sans-serif;color:var(--accent);text-shadow:0 0 40px #e8c54773;font-size:7rem;animation:.9s infinite pulse}.lobby-players li{background:var(--car);border-radius:999px;padding:.55rem .8rem}@supports (color:color-mix(in lab, red, red)){.lobby-players li{background:color-mix(in oklab, var(--car) 25%, transparent)}}.lobby-players li{border:1px solid var(--car)}@supports (color:color-mix(in lab, red, red)){.lobby-players li{border:1px solid color-mix(in oklab, var(--car) 55%, white)}}.scoreboard{min-height:0;padding:.75rem;overflow:auto}.solo-dashboard{background:radial-gradient(circle at 50% 15%, #e8c54721, transparent 45%), var(--panel);align-self:stretch}.solo-metric{background:#0003;border:1px solid #e8c54733;border-radius:16px;justify-items:center;margin:1.4rem 0 1rem;padding:1.25rem .75rem;display:grid}.solo-metric strong{color:var(--accent);font-family:var(--font-display), sans-serif;font-size:4.2rem;line-height:.9}.solo-metric span,.solo-dashboard p{color:var(--muted);font-size:.8rem}.solo-split{font-family:var(--font-mono), monospace;gap:.45rem;font-size:.75rem;display:grid}.solo-split span{background:#ffffff0a;border-radius:9px;padding:.55rem .65rem}.solo-dashboard p{margin:1.1rem 0 0;line-height:1.5}.finish-overlay{background:#060c0ab8;gap:.85rem}.finish-kicker{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.8rem}.finish-stats{grid-template-columns:repeat(4,minmax(4.5rem,1fr));gap:.55rem;max-width:28rem;margin:.35rem auto .2rem;display:grid}.finish-stats div{background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;gap:.2rem;padding:.7rem .5rem;display:grid}.finish-stats strong{font-family:var(--font-display), sans-serif;color:var(--accent);font-size:1.65rem;line-height:1}.finish-stats span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.finish-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.6rem;display:flex}@media (max-width:640px){.finish-stats{grid-template-columns:repeat(2,1fr)}}.typing-panel{border-radius:14px;flex-direction:column;flex-shrink:0;gap:.65rem;max-height:min(42dvh,360px);padding:.75rem .9rem .85rem;display:flex;overflow:hidden}.live-stats{flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:.35rem;margin-bottom:0;display:grid}@media (max-width:700px){.live-stats{grid-template-columns:repeat(4,1fr)}}.live-stats>div{background:#ffffff0a;border-radius:10px;padding:.35rem .45rem}.live-stats .label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.58rem;display:block}.live-stats strong{font-size:clamp(.95rem,1.8vw,1.15rem);font-family:var(--font-mono), monospace}.live-stats small{color:var(--muted);margin-left:.15rem;font-size:.65rem}.target-text{font-family:var(--font-mono), monospace;letter-spacing:.015em;white-space:nowrap;text-overflow:clip;background:#00000047;border-radius:12px;flex:none;height:auto;max-height:none;margin:0;padding:.7rem .9rem;font-size:clamp(1.15rem,2.2vw,1.45rem);line-height:1.35;overflow:hidden}.target-text .correct{color:var(--good)}.target-text .incorrect{color:var(--bad);background:#ff5d5d26;border-radius:3px}.target-text .current{background:#e8c54747;border-radius:3px;box-shadow:0 0 0 1px #e8c54780}.target-text .pending{color:#c7d0cb}.typing-input{font-family:var(--font-mono), monospace;flex-shrink:0;min-height:3rem;margin-top:.2rem;padding:.85rem 1rem;font-size:1.1rem}.progress-track{background:#ffffff14;border-radius:999px;flex-shrink:0;height:6px;margin-top:0;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent-hot), var(--accent));width:0;height:100%;transition:width .12s linear}.center-card{text-align:center;max-width:420px;margin:20vh auto;padding:2rem}.center-card h2{font-family:var(--font-display), sans-serif;letter-spacing:.05em;margin-top:0;font-size:2.4rem}.center-card button{margin-top:1rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-in{0%{opacity:0}to{opacity:1}}@keyframes pulse{50%{opacity:.5}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
