@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2)format("woff2-variations");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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2)format("woff2-variations");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:Archivo Variable;font-style:italic;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-italic-DS6JCx7O.woff2)format("woff2-variations");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:Archivo Variable;font-style:italic;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-italic-Cq9u_6Zz.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:italic;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-italic-BuvkOFDm.woff2)format("woff2-variations");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}:root{color:#fff;font-family:Archivo Variable,ui-sans-serif,system-ui,sans-serif}html,body{background:#a8d8f0;height:100%;margin:0;overflow:hidden}#app canvas{width:100vw;height:100vh;display:block}#labels .label{color:#1d1b17;white-space:nowrap;pointer-events:none;background:#f3ede1eb;padding:3px 10px;font-size:14px;font-weight:650;font-stretch:100%;position:fixed;top:0;left:0}#ui{zoom:var(--ui-zoom,1)}#hud,#race-info,#banner,#popups,#results{font-variant-numeric:tabular-nums;color:#1d1b17;-webkit-font-smoothing:antialiased;font-family:Archivo Variable,ui-sans-serif,system-ui,sans-serif}#hud{background:#f3ede1;flex-direction:column;gap:0;display:flex;position:fixed;bottom:56px;left:72px;box-shadow:0 0 0 1px #1d1b1733,0 12px 32px #1810083d}#speed{letter-spacing:-.01em;padding:14px 24px 10px;font-size:64px;font-weight:800;font-stretch:75%;line-height:1}#speed small,#meter span,#race-info span,#results th{letter-spacing:.16em;text-transform:uppercase;color:#5f5a51;font-size:18px;font-weight:650;font-stretch:112%}#speed small{margin-left:10px}#meter{align-items:center;gap:4px;padding:0 24px 16px;display:flex}#meter:empty{display:none}#meter span{margin-right:12px}#meter i{background:#d2c9b8;width:28px;height:14px;transform:skew(-23.4deg)}#meter i.on{background:var(--accent,#2b3fd0)}#banner{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;pointer-events:none;background:#f3ede1;padding:0 28px;font-size:24px;font-weight:700;font-stretch:112%;line-height:64px;position:fixed;top:56px;left:50%;transform:translate(-50%);box-shadow:0 0 0 1px #1d1b1733,0 12px 32px #1810083d}#banner:empty{display:none}#banner.count,#banner.wrong{box-shadow:none;color:#f6f1e7;letter-spacing:-.04em;text-transform:none;text-shadow:0 8px 48px #18100859;background:0 0;padding:0;font-size:220px;font-style:italic;font-weight:900;font-stretch:125%;line-height:.9;top:26vh}#banner.wrong{text-transform:uppercase;text-shadow:none;background:#b8321f;padding:0 32px;font-size:72px;line-height:96px;top:30vh}#race-info{background:#f3ede1;flex-wrap:wrap;max-width:900px;display:flex;position:fixed;top:56px;left:72px;box-shadow:0 0 0 1px #1d1b1733,0 12px 32px #1810083d}#race-info:empty{display:none}#race-info>div{border-left:1px solid #d2c9b8;flex-direction:column;gap:2px;padding:12px 24px 14px;font-size:44px;font-weight:760;font-stretch:75%;line-height:1;display:flex}#race-info>div:first-child{border-left:0}#race-info span{line-height:20px}#race-info .split{background:var(--accent,#2b3fd0);color:#f6f1e7;border-left:0;flex-direction:row;flex-basis:100%;align-items:baseline;gap:16px;font-size:36px}#race-info .split span{color:inherit;opacity:.8}#race-info .split.behind{background:#1d1b17}#banner{animation:.32s cubic-bezier(.25,1,.5,1) both banner-in}#banner.count{animation:.7s cubic-bezier(.25,1,.5,1) both count-in}#banner.wrong{animation:.8s ease-in-out infinite alternate wrong}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-12px)}}@keyframes count-in{0%{opacity:0;transform:translate(-50%)scale(1.6)}40%{opacity:1}}@keyframes wrong{to{transform:translate(-50%)scale(1.05)}}#results:not([hidden]){animation:.42s cubic-bezier(.25,1,.5,1) both results-in}@keyframes results-in{0%{opacity:0;transform:translate(-50%,calc(24px - 50%))}}#popups{pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:34vh;left:50%;transform:translate(-50%)}.popup{white-space:nowrap;background:#f3ede1;align-items:center;gap:14px;padding:0 24px;font-size:32px;font-weight:760;font-stretch:112%;line-height:56px;animation:1.3s cubic-bezier(.25,1,.5,1) forwards pop;display:flex;box-shadow:0 0 0 1px #1d1b1733,0 12px 32px #1810083d}.popup:before{content:"";background:var(--accent,#2b3fd0);width:8px;height:30px;transform:skew(-23.4deg)}.popup.bad{color:#f6f1e7;background:#b8321f}.popup.bad:before{background:#f6f1e7}.popup.big{letter-spacing:-.02em;padding:0 32px;font-size:60px;font-weight:820;font-stretch:118%;line-height:88px;animation-duration:2.2s}.popup.big:before{width:12px;height:52px}@keyframes pop{0%{opacity:0;transform:translateY(12px)}10%{opacity:1;transform:none}82%{opacity:1}to{opacity:0;transform:translateY(-20px)}}#results{scrollbar-width:none;background:#f3ede1;width:820px;max-height:86%;padding:40px 48px;font-size:26px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #1d1b1733,0 12px 32px #1810083d}#results[hidden]{display:none}#results h2{letter-spacing:-.012em;border-bottom:2px solid #1d1b17;margin:0 0 8px;padding-bottom:16px;font-size:44px;font-weight:780;font-stretch:112%;line-height:1.1}#results table+h2{margin-top:32px}#results table{border-collapse:collapse;width:100%}#results td,#results th{text-align:left;border-bottom:1px solid #d2c9b8;height:52px;padding:0 12px}#results th{height:40px}#results td:first-child{color:#5f5a51;width:72px;padding-left:0;font-weight:760;font-stretch:75%}#results td:nth-child(2){font-weight:650}#results td:nth-child(n+3),#results th:nth-child(n+3){text-align:right;font-stretch:75%}#results td:nth-child(n+3){font-size:30px;font-weight:700}#results tr:nth-child(2) td{color:#1d1b17}#results tr:nth-child(2) td:first-child{color:var(--accent,#2b3fd0)}#status{text-shadow:0 2px 8px #00000080;pointer-events:none;place-items:center;font-size:22px;display:grid;position:fixed;inset:0}#status[hidden]{display:none}#help b.red{color:#ff6b5a}#help b.green{color:#6ee08a}#help{opacity:.85;text-shadow:0 1px 4px #00000080;font-size:12px;line-height:1.5;position:fixed;top:168px;left:16px}#banner.wrong{color:#ff6b5a;font-size:64px;top:22vh}#minimap{pointer-events:none;filter:drop-shadow(0 12px 24px #1810083d);position:fixed;bottom:56px;right:72px}#minimap .sea{fill:#f3ede1f0;stroke:#1d1b17;stroke-width:2px}#minimap .lane{fill:none;stroke:#1d1b1747;stroke-width:2px;stroke-dasharray:8 8}#minimap .rock{fill:#8a8072}#minimap .land{stroke:#c9b98f;stroke-linecap:round}#minimap .land.island,#minimap .land.rock{stroke:#8a8072}#minimap .start{stroke:#1d1b17;stroke-width:3px}#minimap .ramp{fill:#f2b630}#minimap .buoy.right{fill:#e8402a}#minimap .buoy.left{fill:#2fb34a}#minimap .next{fill:none;stroke:#1d1b17;stroke-width:2.5px}#minimap circle.me{stroke:#f3ede1;stroke-width:3px}#minimap.run{top:128px;bottom:auto}#minimap .run-edge{fill:none;stroke:#1d1b1799;stroke-width:56px;stroke-linejoin:round;stroke-linecap:round}#minimap .run-snow{fill:none;stroke:#fff;stroke-width:34px;stroke-linejoin:round;stroke-linecap:round}#minimap .checkpoint{stroke:#e8402a;stroke-width:8px}#minimap.run .start{stroke-width:10px}#minimap.run circle.me{stroke-width:7px}:root{--paper:#f3ede1;--paper-deep:#e6dccb;--ink:#1d1b17;--ink-2:#5f5a51;--ink-3:#a59e91;--rule:#d2c9b8;--accent:#2b3fd0;--on-accent:#f6f1e7;--danger:#b8321f;--font:"Archivo Variable", ui-sans-serif, system-ui, sans-serif;--fs-label:20px;--fs-body:24px;--fs-nav:28px;--fs-head:44px;--fs-title:72px;--fs-display:144px;--margin-x:72px;--margin-y:56px;--gap:24px;--pad:32px;--row:64px;--bleed:16px;--edge:0 0 0 1px #1d1b1733;--lift:var(--edge), 0 12px 32px #1810083d, 0 2px 6px #1810081f;--col-r:726px;--ease:cubic-bezier(.25, 1, .5, 1)}[hidden]{display:none!important}#root{zoom:var(--ui-zoom,1);font-family:var(--font);font-size:var(--fs-body);color:var(--ink);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;pointer-events:none;font-weight:420;line-height:1.33;position:fixed;inset:0}#root *{box-sizing:border-box}h1,h2,p{margin:0}a{color:inherit}.label,.panel-title,.field-label{font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);font-weight:650;font-stretch:112%;line-height:24px}.muted{color:var(--ink-2)}.small{font-size:var(--fs-label);line-height:28px}.screen-title,.title{font-size:var(--fs-title);letter-spacing:-.03em;font-weight:820;font-stretch:118%;line-height:1}.num{font-stretch:75%}.screen{gap:var(--gap);padding:var(--margin-y) var(--margin-x);pointer-events:auto;flex-direction:column;display:flex;position:absolute;inset:0}.screen>*{animation:rise .36s var(--ease) both}.screen>:nth-child(2){animation-delay:40ms}.screen>:nth-child(3){animation-delay:80ms}.screen>:nth-child(4){animation-delay:.12s}.screen>:nth-child(n+5){animation-delay:.16s}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}}@keyframes slide-in{0%{opacity:0;transform:translate(24px)}}.wordmark{height:56px;color:var(--ink);align-items:center;display:flex}.wordmark .deg{letter-spacing:-.02em;font-size:40px;font-weight:400;line-height:1}.wordmark .axis{background:var(--accent);width:10px;height:56px;margin:0 14px 0 16px;transform:skew(-23.4deg)}.wordmark .name{letter-spacing:-.02em;font-size:44px;font-style:italic;font-weight:900;font-stretch:125%;line-height:1}.wordmark.small{height:44px}.wordmark.small .deg{font-size:32px}.wordmark.small .axis{width:8px;height:44px;margin:0 12px 0 13px}.wordmark.small .name{font-size:36px}.panel{padding:var(--pad);background:var(--paper);box-shadow:var(--lift);flex-direction:column;gap:16px;display:flex}.panel-title{align-items:center;gap:12px;display:flex}.btn,.tab,.picker,.stat-row,.social-card,.hero,.news-item,.shop-item,.footer a,.consent a{font:inherit;color:inherit;cursor:pointer;transition:background-color .12s var(--ease), color .12s var(--ease), box-shadow .12s var(--ease), transform .16s var(--ease);outline:none}.btn{--glyph-ink:var(--paper);isolation:isolate;background:var(--paper);min-height:60px;box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink);font-size:var(--fs-body);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border:0;justify-content:center;align-items:center;gap:14px;padding:0 28px;font-weight:760;font-stretch:112%;display:inline-flex;position:relative;overflow:hidden}.btn:disabled{color:var(--ink-3);box-shadow:inset 0 0 0 2px var(--rule);cursor:default}.btn.wide{width:100%}.btn-primary{--glyph-ink:var(--ink);background:var(--ink);color:var(--paper);box-shadow:none}.btn-primary:disabled{background:var(--paper-deep);color:var(--ink-3);box-shadow:none}.btn-ghost{box-shadow:none;background:0 0}.btn-danger{color:var(--danger);box-shadow:inset 0 0 0 2px var(--danger)}.btn:before,.tab:before{content:"";z-index:-1;background:var(--accent);opacity:0;position:absolute;inset:0}.btn:focus,.btn:focus-visible{--glyph-ink:var(--accent);color:var(--on-accent);box-shadow:none}.btn:focus:before{opacity:1}.btn-danger:focus{--glyph-ink:var(--danger)}.btn-danger:before{background:var(--danger)}.btn .icon{width:28px;height:28px}.btn-label{align-items:center;gap:12px;display:inline-flex}.play-button{min-width:200px;min-height:64px;font-size:var(--fs-nav)}.play-button.big{min-width:320px;min-height:80px}.glyph{--glyph-ink:var(--paper);flex:none;align-items:center;line-height:1;display:inline-flex}.btn .glyph,.tab .glyph{--glyph-ink:inherit}.glyph-pad{width:auto;height:36px;display:block;overflow:visible}.glyph-pad.shoulder,.btn .glyph-pad{height:32px}.btn .glyph-pad.shoulder{height:28px}.glyph-pad .g-body{fill:currentColor}.glyph-pad .g-ink-fill{fill:var(--glyph-ink);font-family:var(--font);letter-spacing:0;font-size:12.5px;font-weight:800;font-stretch:100%}.glyph-pad.shoulder .g-ink-fill{font-size:11.5px;font-stretch:110%}.glyph-pad .g-ink-stroke{fill:none;stroke:var(--glyph-ink);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.glyph-pad .g-ink-stroke.thin{stroke-width:1.8px}.glyph-key{letter-spacing:.02em;text-transform:uppercase;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0 9px;font-size:15px;font-weight:800;font-stretch:100%;display:inline-flex;box-shadow:inset 0 0 0 2px}.btn .glyph-key{min-width:32px;height:32px;font-size:14px}.tabbar{background:var(--paper);height:64px;box-shadow:var(--lift);align-self:flex-start;align-items:center;gap:4px;padding:0 12px;display:flex}.tabbar>.glyph{margin:0 8px}.tab{color:#1d1b178f;height:64px;font-size:var(--fs-nav);letter-spacing:.02em;text-transform:uppercase;background:0 0;border:0;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-weight:680;font-stretch:108%;display:inline-flex;position:relative}.tab.on{color:var(--ink)}.tab.on:after{content:"";background:currentColor;height:6px;position:absolute;bottom:0;left:20px;right:20px}.tabbar .play-button{align-self:stretch;min-width:0;min-height:0;margin:0 8px 0 0;padding:0 28px 0 14px}.tabbar .play-button:not(:focus){box-shadow:none}.tab{isolation:isolate}.tab:focus{color:var(--on-accent)}.tab:focus:before{opacity:1}.picker,.stat-row{min-height:var(--row);border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.picker:before,.stat-row:before,.news-item:before,.shop-item:before{content:"";z-index:0;inset:-1px calc((var(--pad) + var(--bleed)) * -1) 0;background:var(--accent);opacity:0;transition:opacity .12s var(--ease);position:absolute;box-shadow:0 8px 20px #18100838}.picker>*,.stat-row>*,.news-item>*,.shop-item>*{z-index:1;position:relative}.picker:focus,.stat-row:focus,.news-item:focus,.shop-item:focus{color:var(--on-accent);border-bottom-color:#0000;outline:none}.picker:focus:before,.stat-row:focus:before,.news-item:focus:before,.shop-item:focus:before{opacity:1}.picker-label{font-size:var(--fs-nav);font-weight:600}.picker-value{align-items:center;gap:4px;display:flex}.picker-value b{white-space:nowrap;justify-content:flex-end;align-items:center;min-width:7ch;font-weight:650;display:inline-flex}.picker-value button,.stat-value button{color:inherit;cursor:pointer;background:0 0;border:0;width:40px;height:44px;padding:0;font-size:18px;display:none}.stat-value button{opacity:0;display:inline-block}.picker:focus .picker-value button,.picker:hover .picker-value button{display:inline-block}.stat-row:focus .stat-value button,.stat-row:hover .stat-value button{opacity:1}.picker:focus .picker-value b,.picker:hover .picker-value b{justify-content:center}.swatch{flex:none;width:24px;height:24px;margin-right:12px;display:inline-block;box-shadow:inset 0 0 0 1px #1d1b1759}.numbered{counter-reset:row}.numbered .picker,.numbered .news-item,.numbered .shop-item{counter-increment:row}.numbered .picker-label:before,.numbered .news-item time:before{content:counter(row, decimal-leading-zero);width:48px;font-size:var(--fs-label);letter-spacing:.04em;color:var(--ink-3);vertical-align:2px;font-weight:600;font-stretch:75%;display:inline-block}.numbered :focus .picker-label:before{color:inherit;opacity:.7}.field{flex-direction:column;gap:8px;display:flex}.field input{background:var(--paper-deep);width:100%;height:64px;box-shadow:inset 0 -2px 0 var(--ink);color:var(--ink);font:inherit;font-size:var(--fs-nav);border:0;border-radius:0;outline:none;padding:0 18px}.field input::placeholder{color:var(--ink-3)}.field input:focus{box-shadow:inset 0 0 0 2px var(--accent), inset 0 -6px 0 var(--accent);background:#fff}.field input:disabled{color:var(--ink-3);box-shadow:inset 0 -2px 0 var(--rule)}.code-input input{letter-spacing:.4em;text-align:center;text-indent:.4em;height:88px;font-size:56px;font-weight:760;font-stretch:75%}.field-hint{font-size:var(--fs-label);color:var(--ink-2)}.field-error,.error{color:var(--danger);font-weight:650;font-size:var(--fs-label)}.note{font-size:var(--fs-label);color:var(--ink-2)}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.badge,.soon-badge{height:36px;font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;align-self:flex-start;align-items:center;padding:0 12px 0 14px;font-weight:700;font-stretch:112%;line-height:1;display:inline-flex;box-shadow:inset 0 0 0 2px}.badge.ok{background:var(--ink);color:var(--paper);box-shadow:none}.soon-badge{color:var(--ink-3)}.modal-backdrop{z-index:50;pointer-events:auto;background:#18100880;place-items:center;animation:.16s both fade;display:grid;position:fixed;inset:0}.modal{background:var(--paper);width:720px;max-width:92%;max-height:88%;box-shadow:var(--lift);animation:rise .24s var(--ease) both;flex-direction:column;gap:16px;padding:40px 48px;display:flex;overflow:auto}.modal h2{font-size:var(--fs-head);letter-spacing:-.012em;border-bottom:2px solid var(--ink);padding-bottom:16px;font-weight:780;font-stretch:112%;line-height:1.1}.modal-body{flex-direction:column;gap:12px;display:flex}.modal-body>.picker:first-of-type,.modal-body>.stat-row:first-of-type{margin-top:4px}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:16px;margin-top:8px;display:flex}.social-card{text-align:left;background:0 0;border:0;align-items:center;gap:16px;min-width:300px;padding:0;display:flex}.social-card .avatar{width:56px;height:56px;color:var(--on-accent);text-shadow:0 1px 6px #00000040;background:linear-gradient(135deg,#0b4f6c,#1fa6a8 60%,#7fd6c9);flex:none;place-items:center;font-size:30px;font-style:italic;font-weight:900;font-stretch:125%;display:grid}.social-card.card-peaks .avatar{background:linear-gradient(160deg,#0000 55%,#1b2a4ed9 56% 70%,#0000 71%),linear-gradient(200deg,#0000 50%,#5b8fd6e6 51%),linear-gradient(#e8f1ff,#9cc3f0)}.social-card.card-sunset .avatar{background:linear-gradient(115deg,#3d1d5c,#c4572a 55%,#f2c14e)}.social-card.card-night .avatar{background:radial-gradient(circle at 20% 30%,#fff 0 1px,#0000 2px),radial-gradient(circle at 70% 20%,#fff 0 1px,#0000 2px),radial-gradient(circle at 85% 70%,#fff 0 1px,#0000 2px),linear-gradient(140deg,#0a1028,#1b2a4e)}.social-card .who{flex-direction:column;min-width:0;display:flex}.social-card .who b{font-size:var(--fs-nav);white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:32px;overflow:hidden}.social-card .who b i{color:var(--ink-2);font-style:normal;font-weight:400;font-stretch:85%}.social-card .who span{font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);font-weight:650;font-stretch:112%;line-height:24px}.social-card:focus{outline:3px solid var(--accent);outline-offset:10px}.social-card:focus .who b,.social-card:focus .who span,.social-card:focus .who b i{color:var(--accent)}.card-preview{background:var(--paper-deep);justify-content:center;padding:16px 0;display:flex}.credits{font-size:var(--fs-head);align-items:baseline;gap:8px;font-weight:760;font-stretch:75%;line-height:1;display:inline-flex}.credits i{font-style:normal;font-size:var(--fs-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);order:2;font-weight:650;font-stretch:112%}.topbar{align-items:flex-start;gap:var(--gap);min-height:72px;display:flex;position:relative}.topbar>.topbar-logo{margin-top:8px}.home,.mode-body,.creator,.shop{top:calc(var(--margin-y) + 72px + var(--gap));bottom:var(--margin-y);left:var(--margin-x);right:var(--margin-x);position:absolute}.home-left,.rider-space,.party{pointer-events:none}.title-panel{max-width:1040px;padding:28px var(--pad) 28px;background:var(--paper);box-shadow:var(--lift);animation:rise .36s var(--ease) both;flex-direction:column;gap:6px;display:flex}.title-panel .label{color:var(--ink-2)}.title-panel .muted{margin-top:8px}.topbar-logo{text-decoration:none}.topbar-middle{align-items:center;gap:var(--gap);flex:1;min-width:0;display:flex}.account{z-index:2;background:var(--paper);height:72px;box-shadow:var(--lift);align-items:center;gap:28px;padding:0 24px 0 8px;display:flex;position:absolute;top:0;right:0}.account .credits{border-left:1px solid var(--rule);order:2;padding-left:28px}.screen-top{justify-content:space-between;align-items:center;display:flex}.language{background:var(--paper);box-shadow:var(--lift);align-items:center;gap:12px;padding:0 24px;display:flex}.language .icon{width:28px;height:28px;color:var(--ink-2)}.language .picker{--bleed:0px;border-bottom:0;min-width:340px}.language .picker:before{inset:0 -24px 0 -64px}.login-main{flex:1;justify-content:flex-end;align-items:center;display:flex}.login-card,.info-card{gap:20px;width:620px;padding:40px 48px}.info-card{width:760px}.login-card .panel-title,.info-card .panel-title{font-size:var(--fs-title);letter-spacing:-.03em;text-transform:none;color:var(--ink);border-bottom:2px solid var(--ink);padding-bottom:20px;font-weight:820;font-stretch:118%;line-height:1}.info-card .panel-title{font-size:var(--fs-head)}.or{font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:16px;font-weight:650;font-stretch:112%;display:flex}.or:before,.or:after{content:"";background:var(--rule);flex:1;height:1px}.consent{font-size:var(--fs-label);color:var(--ink-2)}.footer{background:var(--paper);box-shadow:var(--lift);font-size:var(--fs-body);align-self:flex-start;gap:8px;padding:0 12px;font-weight:560;display:flex}.footer a{padding:16px;text-decoration:none}.consent a{text-underline-offset:4px;font-weight:650;text-decoration:underline}.footer a:focus,.consent a:focus{background:var(--accent);color:var(--on-accent)}.menu-body{flex:1;min-height:0}.menu-body.centered{place-items:center;display:grid}.menu-tabs{z-index:1;position:relative}.home{grid-template-columns:1fr var(--col-r);gap:var(--gap);display:grid}.home-left{flex-direction:column;justify-content:flex-end;display:flex;position:relative}.rider-space{flex:1}.home-right{justify-content:flex-start;gap:var(--gap);counter-reset:panel;flex-direction:column;min-height:0;display:flex}.home-right>*{counter-increment:panel}.home-right .wardrobe .panel-title:before{content:none}.home-right .panel-title:before,.hero .label:before{content:counter(panel, decimal-leading-zero);letter-spacing:.04em;color:var(--ink-3);margin-right:16px;font-stretch:75%}.season-word{color:#f6f1e7f2;pointer-events:none;align-items:flex-start;margin:0 0 88px -8px;display:flex}.season-word b{animation:rise .6s var(--ease) both;font-size:var(--fs-display);letter-spacing:-.04em;text-shadow:0 6px 40px #1810082e;font-style:italic;font-weight:900;font-stretch:125%;line-height:.78}.season-word span{font-size:var(--fs-label);letter-spacing:.2em;margin:-6px 0 0 20px;font-weight:760;font-stretch:75%}.hero{background:var(--paper);width:100%;color:var(--ink);text-align:left;box-shadow:var(--lift);border:0;flex-direction:column;padding:0;display:flex}.hero.season-summer{--hero:#2b3fd0}.hero.season-fall{--hero:#c24a1c}.hero.season-winter{--hero:#d4262f}.hero.season-spring{--hero:#24804a}.hero-head{height:56px;padding:0 var(--pad);justify-content:space-between;align-items:center;display:flex}.hero .dots{font-size:var(--fs-label);align-items:center;gap:8px;font-weight:650;display:flex}.hero .dots .num{letter-spacing:.1em;margin-right:12px}.hero .dots i{background:var(--rule);width:32px;height:3px}.hero .dots i.on{background:var(--ink)}.hero-image{background-position:50%;background-size:cover;height:216px}.hero-block{--glyph-ink:var(--hero,var(--accent));min-height:240px;padding:28px var(--pad) 32px;background:var(--hero,var(--accent));color:var(--on-accent);transition:background-color .12s var(--ease);flex-direction:column;gap:16px;display:flex;position:relative}.hero-block b{max-width:560px;font-size:var(--fs-title);letter-spacing:-.03em;margin-top:auto;font-weight:820;font-stretch:118%;line-height:.98}.hero-block>span:not(.glyph){font-size:var(--fs-body);opacity:.92;line-height:32px}.hero-block .glyph{opacity:0;transition:opacity .12s var(--ease);position:absolute;top:24px;right:24px}.hero:focus .hero-block{--glyph-ink:var(--ink);background:var(--ink)}.hero:focus .hero-block .glyph{opacity:1}.news{padding:20px var(--pad) 8px;gap:4px}.missions{height:64px;padding:0 var(--pad);flex-direction:row;justify-content:space-between;align-items:center}.missions .panel-title{color:var(--ink-3);font-size:var(--fs-nav);letter-spacing:.02em;text-transform:none;font-weight:600;font-stretch:100%}.missions .badge{color:var(--ink-3);align-self:center}.news ul{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.news-item{width:100%;min-height:var(--row);border:0;border-bottom:1px solid var(--rule);text-align:left;background:0 0;align-items:center;gap:24px;padding:0;display:flex;position:relative}.news li:last-child .news-item{border-bottom:0}.news-item time{width:120px;color:var(--ink-2);font-size:var(--fs-body);letter-spacing:.04em;text-transform:uppercase;flex:none;font-weight:560;font-stretch:75%}.news-item b{font-size:var(--fs-nav);flex:1;font-weight:600}.news-item:after{content:"›";z-index:1;color:var(--ink-3);font-size:32px;line-height:1;position:relative}.news-item:focus time,.news-item:focus:after{color:inherit}.settings{align-content:start;gap:var(--gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.mode-body{grid-template-columns:1fr var(--col-r);gap:var(--gap);flex:1;min-height:0;display:grid}.mode-side,.creator-side{gap:var(--gap);flex-direction:column;min-height:0;display:flex}.mode-tabs{height:auto;padding:0 var(--pad);counter-reset:row;flex-direction:column;align-self:stretch;align-items:stretch;gap:0}.mode-tabs>.glyph{display:none}.mode-tabs .tab{border-bottom:1px solid var(--rule);height:72px;color:var(--ink);font-size:var(--fs-head);letter-spacing:-.012em;text-transform:none;counter-increment:row;justify-content:flex-start;padding:0;font-weight:760;font-stretch:112%}.mode-tabs .tab:last-of-type{border-bottom:0}.mode-tabs .tab>*{z-index:1;position:relative}.mode-tabs .tab>span:first-child:before{content:counter(row, decimal-leading-zero);width:48px;font-size:var(--fs-label);letter-spacing:.04em;color:var(--ink-3);vertical-align:6px;font-weight:600;font-stretch:75%;display:inline-block}.mode-tabs .tab:before{content:"";z-index:0;inset:-1px calc((var(--pad) + var(--bleed)) * -1) 0;background:var(--accent);opacity:0;position:absolute;box-shadow:0 8px 20px #18100838}.mode-tabs .tab.tagged{color:var(--ink-3)}.mode-tabs .tab .badge{align-self:center;margin-left:auto}.mode-tabs .tab.on:after{z-index:1;background:0 0;border:3px solid;border-width:3px 3px 0 0;width:14px;height:14px;margin-top:-7px;inset:50% 4px auto auto;transform:rotate(45deg)}.mode-tabs .tab:focus{color:var(--on-accent);background:0 0;border-bottom-color:#0000}.mode-tabs .tab:focus:before{opacity:1}.mode-tabs .tab:focus>span:first-child:before{color:inherit;opacity:.7}.mode-panel{min-height:0;animation:slide-in .22s var(--ease) both;flex:1}.mode-panel .panel-title{margin-bottom:-4px}.mode-panel .btn{align-self:flex-start}.races{flex-direction:column;gap:16px;display:flex}.races ol{border-top:2px solid var(--ink);margin:8px 0 0;padding:0;list-style:none}.races li{border-bottom:1px solid var(--rule);align-items:baseline;gap:16px;min-height:56px;padding-top:14px;display:flex}.races li .num{width:32px;font-size:var(--fs-label);color:var(--ink-3);font-weight:600}.races li b{width:140px;font-size:var(--fs-nav);font-weight:760;font-stretch:112%}.actions{gap:var(--gap);display:flex}.actions .btn{min-width:216px;min-height:72px;font-size:var(--fs-body);box-shadow:inset 0 0 0 2px var(--ink), var(--lift);padding:0 24px}.actions .btn-primary{min-width:0;box-shadow:var(--lift);flex:1}.actions .btn:focus{box-shadow:var(--lift)}.party{position:relative}.party-add{pointer-events:auto;background:var(--paper);min-height:64px;box-shadow:var(--lift);font-size:var(--fs-body);letter-spacing:0;text-transform:none;padding:0 12px 0 20px;font-weight:600;font-stretch:100%;position:absolute;bottom:26%;left:46%}.party-add .badge{color:var(--ink-3);align-self:center}.party-add .icon{width:24px;height:24px}.searching{align-items:center;gap:24px;display:flex}.room-code{letter-spacing:.18em;font-size:96px;font-weight:820;font-stretch:75%;line-height:1}.members{border-top:2px solid var(--ink);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.members li{min-height:var(--row);border-bottom:1px solid var(--rule);font-size:var(--fs-nav);justify-content:space-between;align-items:center;display:flex}.members li b{font-weight:650}.members .badge{align-self:center}.room .mode-panel .panel-title{display:none}.race-screen{pointer-events:none;padding:0}.race-screen>*{animation:none}.race-hud{position:absolute;inset:0}.race-status{font-size:var(--fs-head);color:var(--on-accent);text-shadow:0 2px 24px #0006;place-items:center;font-weight:820;font-stretch:112%;display:grid;position:absolute;inset:0}.race-help{left:var(--margin-x);background:var(--paper);max-width:600px;box-shadow:var(--lift);font-size:var(--fs-label);flex-direction:column;gap:4px;padding:24px 28px;line-height:28px;display:flex;position:absolute;top:200px}.race-help b{font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px;font-weight:650;font-stretch:112%}.race-help.in-menu{z-index:1}.race-menu-hint{top:var(--margin-y);right:var(--margin-x);background:var(--paper);box-shadow:var(--lift);color:var(--ink);padding:10px;display:flex;position:absolute}.race-menu-hint .glyph{--glyph-ink:var(--paper)}.race-menu{pointer-events:auto;background:#18100880;place-items:center;animation:.16s both fade;display:grid;position:absolute;inset:0}.race-menu .panel{gap:16px;width:560px;padding:40px 48px}.race-menu .panel-title{font-size:var(--fs-head);letter-spacing:-.012em;text-transform:none;color:var(--ink);border-bottom:2px solid var(--ink);margin-bottom:8px;padding-bottom:16px;font-weight:780;font-stretch:112%;line-height:1.1}.hints{left:var(--margin-x);bottom:var(--margin-y);background:var(--paper);height:64px;box-shadow:var(--lift);font-size:var(--fs-body);align-items:center;gap:32px;padding:0 24px;font-weight:560;display:flex;position:absolute}.hints>span{align-items:center;gap:12px;display:inline-flex}.hints .pair{gap:6px;display:inline-flex}.toasts{z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:160px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);min-height:64px;color:var(--paper);font-size:var(--fs-body);box-shadow:var(--lift);animation:rise .22s var(--ease) both;align-items:center;gap:16px;padding:0 28px;font-weight:600;display:flex}.toast:before{content:"";background:var(--accent);width:6px;height:28px;transform:skew(-23.4deg)}.toast.error{background:var(--danger)}.toast.error:before{background:var(--paper)}.spinner{border:4px solid var(--rule);border-top-color:var(--accent);vertical-align:middle;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.season-change{z-index:40;opacity:0;pointer-events:none;font-family:var(--font);color:#f6f1e7;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:16px;padding:0 0 12vh 7vw;transition:opacity .9s;display:flex;position:fixed;inset:0}.season-change.shown{opacity:1}.season-change b{letter-spacing:-.04em;font-size:clamp(96px,14vw,260px);font-style:italic;font-weight:900;font-stretch:125%;line-height:.8}.season-change span{letter-spacing:.24em;text-transform:uppercase;align-items:center;gap:20px;font-size:clamp(18px,1.4vw,28px);font-weight:650;font-stretch:112%;display:flex}.season-change span:before{content:"";background:currentColor;width:.5em;height:1.6em;transform:skew(-23.4deg)}.season-change.season-summer{background:linear-gradient(200deg,#ffb86b,#e0783a 45%,#2b3fd0)}.season-change.season-winter{background:linear-gradient(200deg,#e8f1ff,#9cbde6 45%,#d4262f)}.season-change.season-fall{background:linear-gradient(200deg,#f2c14e,#c4572a 45%,#4a1f12)}.season-change.season-spring{background:linear-gradient(200deg,#ffc6d9,#6fbf5a 45%,#24804a)}.creator{grid-template-columns:1fr var(--col-r);gap:var(--gap);display:grid}.creator-panel{flex:1;min-height:0;padding-top:20px;padding-bottom:12px}.creator-rows .picker{min-height:60px}.creator-panel .panel-title,.wardrobe .panel-title,.shop-panel .panel-title{font-size:var(--fs-head);letter-spacing:-.012em;text-transform:none;color:var(--ink);font-weight:780;font-stretch:112%;line-height:1.1}.creator-rows,.wardrobe-rows{min-height:0;margin:0 calc((var(--pad) + var(--bleed)) * -1);padding:0 calc(var(--pad) + var(--bleed));background:linear-gradient(var(--ink), var(--ink)) no-repeat center top / calc(100% - 2 * (var(--pad) + var(--bleed))) 2px;scrollbar-width:none;flex-direction:column;display:flex;overflow-y:auto}.creator-panel>.row,.wardrobe>.row{margin-top:8px}.stat-row{min-height:80px}.stat-label{flex-direction:column;display:flex}.stat-label b{font-size:var(--fs-nav);font-weight:650}.stat-row:focus .stat-label .muted{color:inherit;opacity:.8}.stat-value{align-items:center;gap:4px;display:flex}.pips{gap:4px;display:flex}.pips i{background:var(--rule);width:14px;height:28px}.pips i.on{background:var(--ink)}.stat-row:focus .pips i{background:#f6f1e74d}.stat-row:focus .pips i.on{background:var(--on-accent)}.points-left{font-size:var(--fs-nav);font-weight:700;font-stretch:100%}.points-left.warn{color:var(--danger)}.shop{justify-content:flex-end;min-height:0;display:flex}.shop-panel{width:var(--col-r);max-height:100%}.shop-items{min-height:0;margin:0 calc((var(--pad) + var(--bleed)) * -1);padding:0 calc(var(--pad) + var(--bleed));background:linear-gradient(var(--ink), var(--ink)) no-repeat center top / calc(100% - 2 * (var(--pad) + var(--bleed))) 2px;scrollbar-width:none;flex-direction:column;list-style:none;display:flex;overflow-y:auto}.shop-item{border:0;border-bottom:1px solid var(--rule);text-align:left;background:0 0;align-items:center;gap:16px;width:100%;min-height:80px;padding:0;display:flex;position:relative}.shop-item:hover{outline:none}.shop-item.owned .shop-price{color:var(--ink-2)}.shop-item.owned:focus .shop-price{color:inherit}.shop-name{flex-direction:column;flex:1;display:flex}.shop-name b{font-size:var(--fs-nav);font-weight:650;line-height:32px}.shop-item:focus .shop-name .muted{color:inherit;opacity:.8}.shop-price{font-size:var(--fs-nav);font-weight:760;font-stretch:75%}.wardrobe{min-height:0;max-height:100%}.wardrobe .btn{min-height:56px;font-size:var(--fs-label);padding:0 20px}.wardrobe .row{flex-wrap:wrap}@media (aspect-ratio<=4/3){.home,.mode-body,.creator{grid-template-columns:1fr}}.picker:focus:before,.stat-row:focus:before,.news-item:focus:before,.shop-item:focus:before,.tab:focus:before,.btn:focus:before{animation:wipe-right .2s var(--ease);transition:none}[data-nav-dir=left] :focus:before{animation-name:wipe-left}[data-nav-dir=down] :focus:before{animation-name:wipe-down}[data-nav-dir=up] :focus:before{animation-name:wipe-up}@keyframes wipe-right{0%{clip-path:inset(-40px 100% -40px -40px)}to{clip-path:inset(-40px)}}@keyframes wipe-left{0%{clip-path:inset(-40px -40px -40px 100%)}to{clip-path:inset(-40px)}}@keyframes wipe-down{0%{clip-path:inset(-40px -40px 100%)}to{clip-path:inset(-40px)}}@keyframes wipe-up{0%{clip-path:inset(100% -40px -40px)}to{clip-path:inset(-40px)}}.btn-primary:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(113.4deg,#0000 35%,#ffffff52 50%,#0000 65%);position:absolute;inset:0;transform:translate(-110%)}.btn-primary:focus:after{animation:shine .9s .14s var(--ease) both}@keyframes shine{to{transform:translate(110%)}}.btn-label,.btn>.glyph{z-index:1;position:relative}.btn:active:not(:disabled){transform:scale(.97)}.tab.on:after{animation:grow .28s var(--ease) both}.mode-tabs .tab.on:after{animation:none}@keyframes grow{0%{transform:scaleX(0)}}.picker-value b{animation:value-in .18s var(--ease)}@keyframes value-in{0%{opacity:0;transform:translateY(6px)}}.home-right>*,.mode-side>*,.creator-side>*,.shop-panel,.settings>*{animation:enter-right .46s var(--ease) both}.home-right>:nth-child(2),.mode-side>:nth-child(2),.creator-side>:nth-child(2),.settings>:nth-child(2){animation-delay:70ms}.home-right>:nth-child(3),.mode-side>:nth-child(3),.settings>:nth-child(3){animation-delay:.14s}.title-panel,.menu-tabs,.login-card,.info-card{animation:enter-left .46s var(--ease) both}.menu-tabs{animation-delay:60ms}.login-card,.info-card{animation-name:enter-right}.account,.language{animation:rise .42s .12s var(--ease) both}.hints,.footer{animation:rise .42s .2s var(--ease) both}@keyframes enter-right{0%{opacity:0;transform:translate(48px)}}@keyframes enter-left{0%{opacity:0;transform:translate(-48px)}}.season-word b,.season-change.shown b{animation:axis-wipe .9s var(--ease) both}.season-word span{animation:rise .5s .5s var(--ease) both}@keyframes axis-wipe{0%{clip-path:polygon(0 -20%,0 -20%,-25% 120%,-25% 120%)}to{clip-path:polygon(0 -20%,125% -20%,100% 120%,-25% 120%)}}.hero-block>:not(.glyph){animation:rise .42s var(--ease) both}.hero-block>span:not(.glyph){animation-delay:60ms}@media (prefers-reduced-motion:reduce){#root *,#root :before,#root :after,.season-change b{transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}
