:root{--club-ink:#192b28;--club-paper:#f0e9d3;--club-coral:#e48064;--club-violet:#b4a2d3;--club-lime:#d4e273;--control-radius:2px;--press-duration:.12s;--state-duration:.2s;--control-ease:cubic-bezier(.2, .7, .2, 1)}:where(button,input,select,textarea){border-radius:var(--control-radius)}: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){.results:not([hidden])>*{animation:score-arrives var(--state-duration) var(--control-ease) both}@keyframes score-arrives{0%{opacity:0;translate:0 7px}to{opacity:1;translate:0}}}@media (prefers-reduced-motion:reduce){:root{--press-duration:0s;--state-duration:0s}html .primary:active,html .secondary:active{transform:none}}@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:#f0e9d3;--ink:var(--club-ink);--paper:var(--club-paper);--accent:#ad9acb;--display:"Archivo Black",sans-serif;--mono:"IBM Plex Mono",monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;background:#192b28;font-family:IBM Plex Sans,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}h1,h2,p{margin:0}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}#archery-app{max-width:1240px;padding:0 max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left));margin:auto}header{height:90px;padding-top:env(safe-area-inset-top);border-bottom:1px solid #f0e9d344;justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{font:22px var(--display);letter-spacing:-1.4px;text-decoration:none}.brand span{color:var(--accent)}.edition,.eyebrow{font:10px/1.6 var(--mono);letter-spacing:1.5px}.quiet{min-height:44px;color:inherit;text-underline-offset:5px;background:0 0;border:0;align-items:center;padding:10px 0;font-size:12px;text-decoration:underline;display:inline-flex}.primary,.secondary,.small-primary{border:1px solid var(--paper);background:var(--paper);min-height:52px;color:var(--ink);border-radius:2px;justify-content:center;align-items:center;gap:36px;padding:14px 24px;font-weight:500;display:inline-flex}.secondary{color:var(--paper);background:0 0}.primary:active,.secondary:active{transform:translateY(1px)}.home{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:55px 0;display:grid}.home h1{font:clamp(78px,8.5vw,125px)/.88 var(--display);letter-spacing:-.075em;margin:28px 0}.home h1 span{color:var(--accent)}.lead{font-size:24px;line-height:1.35}.description{color:#c1c8b9;max-width:400px;margin:17px 0 25px;font-size:14px;line-height:1.65}.incoming{color:var(--accent);margin:12px 0;font-size:13px;line-height:1.5}.join summary{cursor:pointer;text-underline-offset:5px;align-items:center;min-height:44px;font-size:12px;text-decoration:underline;display:flex}.join form{gap:12px;max-width:400px;padding:12px 0;display:grid}.join label{font-size:12px}.join input{background:var(--paper);width:100%;color:var(--ink);border:1px solid #f0e9d388;padding:13px}.join .secondary{min-height:44px}.join p{color:#edb8a5;font-size:13px}.poster{background:#30433a;border:1px solid #f0e9d388;transform:rotate(1deg);box-shadow:8px 8px #0c1d194d}.poster svg{width:100%;max-height:470px;display:block}.poster-label{font:9px var(--mono);border-bottom:1px solid #f0e9d355;justify-content:space-between;padding:18px;display:flex}.poster-label:last-child{background:var(--accent);color:var(--ink);border:0}.playing header{height:58px}.playing .edition{display:none}.game{grid-template-rows:minmax(0,1fr) 16px minmax(215px,.64fr);height:calc(100dvh - 58px);max-height:900px;display:grid;overflow:hidden}.target-pane{background:#2b4339;flex-direction:column;min-width:0;min-height:0;display:flex}.scoreboard{background:#21382e;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;height:58px;padding:12px 20px;display:flex}.scoreboard strong{font:14px var(--display);letter-spacing:-.5px}.scoreboard span{font:8px var(--mono);align-items:center;gap:8px;display:flex}.scoreboard b{font:22px var(--mono)}#target{flex:1;width:100%;min-height:0;display:block}#feedback{color:var(--paper);text-align:center;background:#4e405b;min-height:33px;padding:8px 16px;font-size:12px}.seam{font:6px var(--mono);letter-spacing:2px;background:#12241e;place-items:center;display:grid;overflow:hidden}.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 span{font:9px var(--mono);color:#5c466e}#aim-pad{touch-action:none;-webkit-user-select:none;user-select:none;cursor:crosshair;flex:1;min-height:85px;position:relative;overflow:hidden}#aim-pad svg{width:100%;height:100%;min-height:75px;max-height:190px;display:block}#aim-pad>span{font:8px var(--mono);letter-spacing:1px;color:#536354;position:absolute;bottom:5px;left:0}.control-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.control-footer details{flex:1}.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}.accessible-controls label{font:9px var(--mono);flex:1;min-width:85px}.accessible-controls input{accent-color:#6a557f;width:100%;height:28px;display:block}.small-primary{background:var(--ink);min-height:48px;color:var(--paper);padding:10px 18px;font-size:12px}.micro{font:10px/1.6 var(--mono);color:#526455;margin-top:8px}.arrow-strip{gap:6px;display:flex}.arrow-strip span{width:22px;height:25px;font:12px/23px var(--mono);text-align:center;border-bottom:2px solid #192b2855}.arrow-strip span.current{border-color:#765e8d}.results{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:60px 0;display:grid}.ticket{background:var(--paper);color:var(--ink);padding:32px;transform:rotate(-1deg);box-shadow:8px 8px #0e1c19}.ticket>.eyebrow{justify-content:space-between;gap:12px;display:flex}.total{align-items:baseline;gap:16px;margin:28px 0;display:flex}.total strong{font:120px/.95 var(--display);letter-spacing:-7px}.total>span{font:24px var(--mono)}.final-arrows{grid-template-columns:repeat(5,1fr);gap:8px;margin:24px 0;display:grid}.final-arrows span{text-align:center;font:18px var(--mono);border:1px solid #192b2855;padding:14px 0}#record{padding-bottom:26px;font-size:12px}#share-code{width:100%;color:var(--ink);font:18px var(--mono);background:0 0;border:0;border-bottom:1px solid #192b2855;margin:8px 0;padding:14px 0}.results h2{font:clamp(40px,5vw,70px)/1 var(--display);letter-spacing:-3px;margin:20px 0}.actions{flex-direction:column;gap:12px;margin:25px 0;display:flex}.actions .quiet{align-self:flex-start}#share-status{font-size:12px;line-height:1.6}dialog{background:var(--paper);width:min(430px,100% - 32px);color:var(--ink);border:1px solid var(--ink);border-radius:3px;padding:30px}dialog::backdrop{background:#071812ca}dialog h2{font:30px var(--display);letter-spacing:-1px}dialog p{margin:20px 0;font-size:14px;line-height:1.6}dialog .primary{background:var(--ink);width:100%;color:var(--paper)}body.book .game{grid-template-rows:1fr;grid-template-columns:minmax(0,1.2fr) 16px minmax(0,1fr)}body.book .control-pane{padding-top:24px}body.book .control-footer{display:block}body.book .arrow-strip{margin-top:8px}body.book .seam{writing-mode:vertical-rl}body.book .scoreboard strong{display:none}@media (width<=700px){#archery-app{padding-inline:18px}header{height:calc(74px + env(safe-area-inset-top))}.brand{font-size:19px}.edition{display:none}.home{grid-template-columns:1fr;gap:30px;padding:34px 0}.home h1{font-size:100px}.poster{display:none}.home .primary{width:100%}.playing #archery-app{padding:0}.playing header{height:calc(55px + env(safe-area-inset-top));padding-inline:16px}.game{height:calc(100vh - 55px - env(safe-area-inset-top));height:calc(100dvh - 55px - env(safe-area-inset-top));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}.arrow-strip{gap:3px}.arrow-strip span{width:18px}.control-footer:has(details[open]){display:block}.control-footer:has(details[open]) .arrow-strip{display:none}.results{grid-template-columns:1fr;gap:30px;padding:30px 0}.results h2{font-size:38px}.ticket{padding:26px}.total strong{font-size:100px}.total{margin:22px 0}.final-arrows{margin:18px 0}.results .lead{font-size:21px}}@media (height<=580px){.playing header{height:44px}.game{grid-template-rows:minmax(0,1fr) 12px minmax(155px,.65fr);height:calc(100dvh - 44px)}.scoreboard{height:40px}.control-pane{padding-block:8px}#aim-pad,#aim-pad svg{min-height:40px}#feedback{min-height:25px;padding:5px;font-size:11px}.control-heading{font-size:10px}}@media (prefers-reduced-motion:reduce){.poster,.ticket{transform:none}}.pane-pause{min-height:44px;color:var(--ink);background:0 0;border:1px solid #192b2855;padding:8px;font-size:11px;display:none}body.segmented .pane-pause{display:block}body.playing.segmented #archery-app{max-width:none;padding:0}body.playing.segmented header{display:none}body.playing.segmented .game{height:100dvh;max-height:none;position:fixed;inset:0}body.playing .game[data-segments=stacked]{grid-template-columns:1fr;grid-template-rows:var(--first) var(--gap) var(--second)}body.playing .game[data-segments=book]{grid-template-rows:1fr;grid-template-columns:var(--first) var(--gap) var(--second)}@media (width<=600px){header{gap:10px}header .edition{display:none}}.home>*{min-width:0}.home .difficulty-select{max-width:100%}@media (width<=700px){.home h1{font-size:clamp(56px,20vw,100px)}}.control-pane{overscroll-behavior:contain;overflow-y:auto}.control-pane:has(details[open]) #aim-pad{min-height:32px}@media (height<=580px) and (width>=700px){.game:not([data-segments]){grid-template-rows:1fr;grid-template-columns:minmax(0,1.05fr) 12px minmax(0,1fr)}.game:not([data-segments]) .seam{writing-mode:vertical-rl}.game:not([data-segments]) .control-pane{padding:14px 16px max(10px,env(safe-area-inset-bottom))}.game:not([data-segments]) .scoreboard{gap:8px;padding-inline:12px}.game:not([data-segments]) .scoreboard strong{font-size:11px}.game:not([data-segments]) .scoreboard b{font-size:18px}}body.playing #aim-pad{justify-content:center;align-items:center;display:flex}body.playing #aim-pad svg{flex:none;width:min(100%,520px);height:auto;min-height:0;max-height:calc(100% - 28px)}body.playing .game:not([data-segments]){height:calc(100dvh - 55px - env(safe-area-inset-top));max-height:none}@media (width>=740px) and (aspect-ratio>=1){body.playing .game:not([data-segments]){grid-template-rows:1fr;grid-template-columns:minmax(0,1fr) 12px clamp(250px,30vw,360px)}body.playing .game:not([data-segments]) .seam{writing-mode:vertical-rl}body.playing .game:not([data-segments]) .control-pane{padding:18px 18px max(14px,env(safe-area-inset-bottom))}body.playing .game:not([data-segments]) .control-heading{flex-wrap:wrap;gap:6px;font-size:14px;line-height:1.45}body.playing .game:not([data-segments]) #aim-pad svg{width:min(100%,320px)}body.playing .game:not([data-segments]) .control-footer{display:block}body.playing .game:not([data-segments]) .arrow-strip{margin-top:10px}body.playing .game:not([data-segments]) .scoreboard{height:56px}}
