:root{--club-ink:#192b28;--club-paper:#f0e9d3;--club-coral:#f28b65;--club-violet:#b6a0e8;--club-lime:#d3e85c;--club-ice:#91cee2;--control-radius:2px;--press-duration:.12s;--state-duration:.2s;--surface-travel:6px;--control-ease:cubic-bezier(.2, .7, .2, 1);--focus-ring:#27549f;--focus-ring-on-ink:var(--club-paper);--focus-ring-width:3px;--focus-ring-offset:3px;--focus-ring-inset:-3px}:where(button,input,select,textarea){border-radius:var(--control-radius)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}:where(.primary,.secondary,.quiet,.text-button){transition:transform var(--press-duration) var(--control-ease), background-color var(--press-duration) var(--control-ease)}:where(.primary,.secondary):active:not(:disabled){transform:translateY(2px)}@media (prefers-reduced-motion:no-preference){.events,.event-lobby:not([hidden])>.event-poster,.event-results:not([hidden])>.result-card{animation:surface-arrives var(--state-duration) var(--control-ease) both}@keyframes surface-arrives{0%{translate:0 var(--surface-travel)}to{translate:0}}}@media (prefers-reduced-motion:reduce){:root{--press-duration:0s;--state-duration:0s}html .primary:active,html .secondary:active{transform:none}}html[data-reduced-motion]{--press-duration:0s;--state-duration:0s}html[data-reduced-motion] *,html[data-reduced-motion] :before,html[data-reduced-motion] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}html[data-reduced-motion] .primary:active,html[data-reduced-motion] .secondary:active{transform:none}html[data-large-text] :is(.event-description,.event-level-note,.event-rule,.profile-help,.profile-note,.profile-status,.collection-result p,.collection-hub p,.micro,dialog p){font-size:16px;line-height:1.55}html[data-large-text] :is(.control-footer,.shoot-footer) summary{font-size:14px!important}::selection{background:var(--club-lime);color:var(--club-ink)}input,textarea{caret-color:var(--club-ink)}@font-face{font-family:Archivo Black;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-black-latin-400-normal-BTVu2TQR.woff2)format("woff2"),url(/assets/archivo-black-latin-400-normal-HW9MwEcM.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}:root{color:#192b28;--paper:var(--club-paper);--ink:var(--club-ink);--lime:var(--club-lime);--clay:#b65236;--display:"Archivo Black",sans-serif;--mono:"IBM Plex Mono",monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;background:#f0e9d3;font-family:IBM Plex Sans,sans-serif}*{box-sizing:border-box}body,h1,h2,p{margin:0}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer;border-radius:2px}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}[hidden]{display:none!important}#sprint-app{max-width:1200px;padding:0 max(22px,env(safe-area-inset-right)) 0 max(22px,env(safe-area-inset-left));margin:auto}.topbar{min-height:78px;padding-top:env(safe-area-inset-top);border-bottom:1px solid #192b2860;justify-content:space-between;align-items:center;gap:20px;font-size:12px;display:flex}.topbar>span{font:12px var(--mono);letter-spacing:2px}.topbar button,.quiet{color:inherit;text-underline-offset:4px;background:0 0;border:0;min-height:44px;padding:10px 0;text-decoration:underline}.lobby{grid-template-columns:1.1fr 1fr;align-items:center;gap:75px;padding:65px 0;display:grid}.eyebrow{font:10px var(--mono);letter-spacing:1.6px}h1{font:clamp(72px,8.5vw,116px)/.91 var(--display);letter-spacing:-.075em;margin:26px 0}.lead{letter-spacing:-.5px;font-size:23px;line-height:1.4}.primary,.secondary{border:1px solid var(--ink);background:var(--ink);min-height:54px;color:var(--paper);justify-content:space-between;align-items:center;gap:35px;padding:16px 22px;font-size:15px;font-weight:500;display:inline-flex}.secondary{color:var(--ink);background:0 0}.intro>.primary{min-width:240px;margin-top:30px}.small{font:11px/1.65 var(--mono);color:#4b5c51;margin-top:14px}.incoming{max-width:320px;margin-top:16px;font-size:13px;line-height:1.5}.incoming:empty{display:none}.poster{border:1px solid var(--ink);background:#d3dab6;flex-direction:column;justify-content:space-between;height:440px;padding:24px;display:flex;position:relative;overflow:hidden;transform:rotate(2deg)}footer{min-height:56px;padding:15px 0 max(15px,env(safe-area-inset-bottom));border-top:1px solid #192b2860;justify-content:space-between;gap:20px;font-size:11px;display:flex}footer span{font:9px var(--mono);letter-spacing:1px}.race{height:calc(100vh - 55px - env(safe-area-inset-top));height:calc(100dvh - 55px - env(safe-area-inset-top));grid-template-rows:minmax(0,1fr) 16px minmax(215px,.64fr);max-height:900px;display:grid;overflow:hidden}.track-pane{background:var(--paper);flex-direction:column;min-width:0;min-height:0;display:flex}.scoreboard{height:58px;color:var(--paper);background:#1f311c;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:12px 20px;display:flex}.scoreboard strong{font:14px var(--display);letter-spacing:-.5px;white-space:nowrap}.scoreboard span{font:8px var(--mono);letter-spacing:1px;white-space:nowrap;align-items:center;gap:8px;display:flex}.scoreboard b{font:22px var(--mono);letter-spacing:-.5px;font-variant-numeric:tabular-nums}.scoreboard b.clock-low{color:var(--club-coral)}.scoreboard .lane-legend{flex-shrink:1;min-width:0}.scoreboard .lane-legend>span{text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.scoreboard #ghost-name:empty{display:none}.seam{font:6px var(--mono);letter-spacing:2px;color:var(--paper);background:#142112;place-items:center;display:grid;overflow:hidden}.feedback{color:var(--paper);text-align:center;font-variant-numeric:tabular-nums;background:#525d32;flex-shrink:0;min-height:33px;padding:8px 16px;font-size:12px}.track-wrap{background:var(--paper);flex:1;min-height:0;position:relative;overflow:hidden;container:race-stage/size}#track{width:100%;height:100%;display:block}.signal{text-align:center;font:clamp(22px,min(6.5vw,9.5cqh),66px)/1 var(--display);letter-spacing:-.04em;color:var(--ink);pointer-events:none;padding:0 12px;position:absolute;top:3cqh;left:0;right:0}.signal:empty{display:none}.signal.finished{font-size:clamp(24px,min(7vw,10cqh),64px)}@container race-stage (width<=400px) and (height<=300px){.signal,.signal.finished{padding-inline:8px;font-size:clamp(16px,8cqh,22px);right:36%}}.race-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.race-labels span{background:var(--paper);color:var(--ink);border:1px solid var(--ink);font:600 11px var(--mono);letter-spacing:1.2px;white-space:nowrap;will-change:transform,opacity;padding:5px 9px;position:absolute;top:30%;left:50%;transform:translate(-50%,-100%)}.race-labels span[data-kind=good]{color:#3c4a18;border-color:#3c4a18}.race-labels span[data-kind=bad]{border-left-width:4px;padding-left:12px}.control-pane{min-width:0;min-height:0;padding:14px 20px max(10px,env(safe-area-inset-bottom));color:var(--ink);background:var(--paper);flex-direction:column;display:flex}.control-heading{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.control-heading strong{min-width:0;font-weight:500}.control-heading span{font:9px var(--mono);color:#4d5c22;letter-spacing:1px;white-space:nowrap}.blocks{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:pointer;flex:1;justify-content:center;align-items:center;min-height:85px;display:flex;position:relative;overflow:hidden}.blocks svg{width:min(100%,324px);height:auto;min-height:0;max-height:calc(100% - 28px);transition:opacity var(--state-duration) var(--control-ease);flex:none;display:block}.control-pane{overscroll-behavior:contain;overflow-y:auto}.pad-caption{font:9px var(--mono);letter-spacing:1px}.pad-shoe .shoe-body{transition:fill var(--press-duration) var(--control-ease)}.blocks[data-step=left] .pad-shoe-left .shoe-body,.blocks[data-step=right] .pad-shoe-right .shoe-body{fill:var(--lime)}.blocks:focus{outline:none}.blocks:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-inset)}.blocks-hint{text-align:center;font:600 9px var(--mono);letter-spacing:1.4px;pointer-events:none;color:#526455;position:absolute;bottom:2px;left:0;right:0}.blocks-hint:empty{display:none}body[data-phase=countdown] .blocks svg{opacity:.22}body[data-phase=countdown] .blocks-hint{background:var(--ink);width:max-content;max-width:calc(100% - 24px);color:var(--paper);text-align:center;font:600 clamp(13px,3.4vw,19px)/1.25 var(--mono);letter-spacing:2.5px;padding:10px 18px;display:block;inset:50% auto auto 50%;transform:translate(-50%,-50%)}body[data-phase=playing] .blocks-hint{background:var(--ink);width:max-content;max-width:calc(100% - 24px);color:var(--paper);text-align:center;font:600 clamp(11px,2.8vw,15px)/1.25 var(--mono);letter-spacing:2px;padding:9px 16px;display:block;inset:50% auto auto 50%;transform:translate(-50%,-50%)}body[data-phase] .blocks-hint:empty{display:none}.blocks[data-hold=true] .blocks-hint{background:var(--lime);color:var(--ink)}.control-footer{display:block}.control-footer summary{cursor:pointer;align-items:center;min-height:44px;font-size:11px;display:flex}.accessible-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.small-primary{background:var(--ink);min-height:48px;color:var(--paper);border:1px solid var(--ink);padding:10px 18px;font-size:12px}.small-primary:disabled{opacity:.5;cursor:default}.control-footer .micro{font:10px/1.6 var(--mono);color:#526455;margin-top:8px}.results{grid-template-columns:1.1fr 1fr;align-items:center;gap:65px;padding:58px 0;display:grid}.results h1{font-size:clamp(60px,6.8vw,96px)}.result-actions{flex-direction:column;gap:12px;max-width:300px;margin-top:25px;display:flex}.ticket{border:1px solid var(--ink);background:#d3dab6;padding:30px;transform:rotate(1deg);container-type:inline-size}.ticket>span{font:10px/1.6 var(--mono);letter-spacing:1px}.ticket>.code-label{font:10px/1.6 var(--mono);letter-spacing:1px;margin-top:18px}.score{align-items:baseline;gap:14px;margin:30px 0 0;display:flex}.score>strong{font:clamp(88px,28cqw,120px)/.95 var(--display);letter-spacing:-.06em;font-variant-numeric:tabular-nums}.score>small{font:clamp(18px,6cqw,24px) var(--mono)}.ticket>p{margin-top:12px;font-size:13px;line-height:1.5}.pb{background:var(--lime);color:var(--ink);letter-spacing:1.6px;padding:6px 10px;display:inline-block;font:600 11px var(--mono)!important;margin-top:14px!important}.ticket dl{border-top:1px solid #192b2860;border-bottom:1px solid #192b2860;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0;padding:20px 0;display:grid}.ticket dl>div{flex-direction:column;justify-content:space-between;min-width:0;display:flex}.ticket dt{font:9px var(--mono);letter-spacing:.6px;margin-bottom:7px}.ticket dd{font:clamp(15px,6cqw,20px) var(--mono);white-space:nowrap;margin:0}#launch{white-space:normal}.ticket dd small{font-size:12px}.ticket>.code{font:18px var(--mono);letter-spacing:.5px;overflow-wrap:anywhere;border-bottom:1px solid #192b2855;margin-top:4px;padding:12px 0;display:block}#friend-code{font:inherit;-webkit-user-select:all;user-select:all}.ticket>.micro{font:10px/1.6 var(--mono);color:#45574d;margin-top:12px}.result-actions .quiet{place-self:center;font-size:12px}dialog{background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:2px;max-width:min(450px,100vw - 36px);padding:28px}dialog::backdrop{background:#10241acc}dialog h2{font:28px/1.1 var(--display);letter-spacing:-1px;margin-bottom:20px}dialog p{margin:15px 0;font-size:15px;line-height:1.6}dialog .primary{margin-top:10px}#interrupted .quiet{margin-top:8px;display:block}#result-title:focus{outline:none}.difficulty-label{justify-content:space-between;align-items:center;gap:22px;max-width:280px;margin-top:24px;font-size:13px;display:flex}#level-hint{margin-top:8px}.intro>.primary{margin-top:20px}@media (width<=760px){#sprint-app{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.topbar{gap:10px;min-height:66px}.topbar>span{letter-spacing:1px;font-size:9px}.lobby{grid-template-columns:1fr;gap:28px;padding:34px 0}.intro h1{font-size:clamp(60px,18vw,76px)}.lead{font-size:20px}.poster{display:none}.intro>.primary{margin-top:24px}.race{grid-template-rows:minmax(0,1fr) 14px minmax(215px,.7fr);max-height:none}.scoreboard{height:50px;padding-inline:14px}.scoreboard strong{font-size:11px}.scoreboard b{font-size:18px}.scoreboard span{gap:5px}.control-pane{padding:12px 16px max(10px,env(safe-area-inset-bottom))}.control-heading{font-size:11px}.results{grid-template-columns:1fr;gap:32px;padding:32px 0}.results h1{font-size:clamp(58px,18vw,73px)}.ticket{padding:24px}.score>strong{font-size:112px}footer{font-size:10px}footer span{display:none}}@media (height<=580px){.race{grid-template-rows:minmax(0,1fr) 12px minmax(155px,.65fr)}.scoreboard{height:40px}.control-pane{padding-block:8px}.blocks{min-height:40px}.feedback{min-height:25px;padding:5px;font-size:11px}.control-heading{font-size:10px}}@media (height<=570px) and (width>=700px){.lobby{padding:25px 0}.poster{height:300px}.intro h1{font-size:70px}.lead{font-size:17px}.intro>.primary{margin-top:20px}}@media (prefers-reduced-motion:reduce){.poster,.ticket{transform:none}.blocks svg,.pad-shoe .shoe-body{transition:none}}@media (width<=600px){.topbar{flex-wrap:wrap;gap:8px}.topbar #level-label{display:none}.topbar .club-wordmark{width:125px}}@media (width<=360px){.scoreboard{gap:8px;padding-inline:12px}.scoreboard b{font-size:17px}}@media (width>=761px) and (width<=920px){body[data-event] .result-card.ticket{padding:28px 22px}}@media (width<=420px){body[data-event] .result-card.ticket .score{margin:8px 0 0}body[data-event] .result-card.ticket>p{margin:5px 0}body[data-event] .result-card.ticket>.code-label{margin:8px 0 0;font-size:9px}body[data-event] .result-card.ticket>.micro{margin:5px 0 0;font-size:9px}body[data-event] .result-card.ticket dl{gap:8px;margin:8px 0;padding:8px 0}body[data-event] .event-results .result-actions{gap:10px;margin-top:12px}body[data-event] .event-results #result-title{margin:8px 0;font-size:30px}body[data-event] .event-results #result-copy{font-size:16px;line-height:1.4}}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) .race{height:calc(100dvh - 55px - env(safe-area-inset-top));min-height:0;max-height:none}@media (width<=739px){.race{grid-template-rows:minmax(0,1fr) 14px minmax(215px,.7fr)}}@media (width>=480px) and (width<=739px) and (height<=580px){.race:not([data-segments]){grid-template-rows:1fr;grid-template-columns:minmax(240px,1.05fr) 12px minmax(0,1fr)}.race:not([data-segments]) .seam{writing-mode:vertical-rl}}@media (width>=740px) and (aspect-ratio>=1){.race{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) 16px clamp(280px,31vw,410px)}.seam{writing-mode:vertical-rl}.control-pane{padding:18px 18px max(14px,env(safe-area-inset-bottom))}.control-heading{flex-wrap:wrap;gap:6px;font-size:14px;line-height:1.45}.scoreboard{height:56px}}@media (width>=740px) and (aspect-ratio>=1) and (height>=640px){.blocks{flex:200px;min-height:32px}}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) .event-footer,body.segmented[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #sprint-app .event-header{display:none}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments]{background:var(--ink);overflow:hidden}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments] .scoreboard{padding-top:max(12px,env(safe-area-inset-top))}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments] .lane-legend{display:none}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments] .event-pause{min-height:44px;color:var(--paper);white-space:nowrap;align-items:center;margin-left:14px;padding:10px 0;font-size:12px;display:inline-flex}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments=stacked]{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--first,1fr) var(--gap,16px) var(--second,1fr)}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments=stacked] .control-pane{padding:14px 16px max(12px,env(safe-area-inset-bottom))}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments=book]{grid-template-rows:1fr;grid-template-columns:var(--first,1fr) var(--gap,16px) var(--second,1fr)}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments=book] .control-pane{padding:18px 16px max(14px,env(safe-area-inset-bottom))}body[data-event=sprint]:is([data-phase=countdown],[data-phase=playing],[data-phase=finishing],[data-phase=interrupted],[data-phase=paused]) #race[data-segments=book] .control-heading{flex-wrap:wrap;gap:6px}
