@font-face{font-family:Big Shoulders;src:url(/fonts/big-shoulders-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-latin-wght-normal.woff2)format("woff2");font-weight:400 700;font-display:swap}:root{--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--r-1:2px;--r-2:10px;--r-pill:999px;--fs-12:.75rem;--fs-14:.875rem;--fs-16:1rem;--fs-20:1.25rem;--fs-25:1.5625rem;--fs-31:1.9375rem;--fs-39:2.4375rem;--display:"Big Shoulders", "Arial Narrow", Impact, sans-serif;--ui:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--beam-h:56px;--dye-0:#f0596a;--dye-1:#f2c94c;--dye-2:#7fb2f0;--dye-3:#4cc2a4;--dye-4:#f07ab8;--dye-5:#a98bf0;--dye-6:#e89a4b;--dye-7:#d9d2c3;--cloth-bg:#10173a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root,:root[data-theme=dark]{--bg:#121a3b;--surface:#1a2350;--surface-2:#232e63;--line:#3a4785;--line-strong:#6d79b3;--text:#ece7da;--text-muted:#a9b0cf;--accent:#f0596a;--on-accent:#121a3b;--now:#f2c94c;--focus:#f2c94c}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f7;--surface:#fafbfd;--surface-2:#e3e8f2;--line:#c5cbdd;--line-strong:#7a819e;--text:#131b3e;--text-muted:#4a5378;--accent:#b3263a;--on-accent:#fff;--now:#8c6400;--focus:#2459a8;--dye-0:#b3263a;--dye-1:#8c6400;--dye-2:#2459a8;--dye-3:#0f7a62;--dye-4:#b02a78;--dye-5:#6340c0;--dye-6:#a04e0a;--dye-7:#6b6250}@media (prefers-color-scheme:light){:root:not([data-theme]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f7;--surface:#fafbfd;--surface-2:#e3e8f2;--line:#c5cbdd;--line-strong:#7a819e;--text:#131b3e;--text-muted:#4a5378;--accent:#b3263a;--on-accent:#fff;--now:#8c6400;--focus:#2459a8;--dye-0:#b3263a;--dye-1:#8c6400;--dye-2:#2459a8;--dye-3:#0f7a62;--dye-4:#b02a78;--dye-5:#6340c0;--dye-6:#a04e0a;--dye-7:#6b6250}}*,:before,:after{box-sizing:border-box}html{background:var(--bg)}body{font:400 var(--fs-16)/1.5 var(--ui);color:var(--text);background:var(--bg);min-height:100vh;margin:0}h1,h2{font-family:var(--display);letter-spacing:.01em;margin:0;font-weight:800;line-height:1.05}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.pl-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pl-num{font-variant-numeric:tabular-nums}.pl-btn{min-height:44px;padding:0 var(--sp-4);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);font-weight:600;transition:transform .12s ease-out,background .2s}.pl-btn:hover{background:var(--surface-2)}.pl-btn:active{transform:translateY(1px)}.pl-btn--primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.pl-btn--primary:hover{background:var(--accent);filter:brightness(1.08)}.tr-beam{z-index:5;align-items:center;gap:var(--sp-4);min-height:var(--beam-h);padding:var(--sp-2) var(--sp-5);background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex;position:sticky;top:0}.tr-brand{font:800 var(--fs-25)/1 var(--display);letter-spacing:.02em;margin-right:auto}.tr-field{align-items:center;gap:var(--sp-2);font-size:var(--fs-14);color:var(--text-muted);display:flex}.tr-field input[type=range]{width:110px;accent-color:var(--accent)}.tr-field output{color:var(--text);text-align:right;min-width:3.2ch}.pl-main{gap:var(--sp-6);padding:var(--sp-5);grid-template-columns:minmax(0,58fr) minmax(0,42fr);align-items:start;max-width:1320px;margin:0 auto;display:grid}.ld-hero h1{font-size:clamp(3.5rem,9vw,6rem)}.ld-hero p{margin:var(--sp-2) 0 var(--sp-4);max-width:46ch;color:var(--text-muted);font-size:var(--fs-16)}.ld-hero p strong{color:var(--text);font-weight:600}.cd{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);padding:var(--sp-3)}.cd-grid{grid-template-columns:7.5rem repeat(16,minmax(0,1fr));align-items:center;gap:4px;display:grid}.cd-label{grid-column:1;grid-row:calc(var(--t) + 2);text-align:left;border-radius:var(--r-1);padding:0 var(--sp-2);min-height:36px;font-size:var(--fs-14);color:var(--text-muted);align-items:center;gap:var(--sp-2);background:0 0;border:0;font-weight:500;display:flex}.cd-label[aria-pressed=true]{color:var(--text);background:var(--surface-2)}.cd-label i{background:var(--dye);flex:none;width:10px;height:10px}.cd-colhead{grid-row:1;grid-column:calc(var(--s) + 2);text-align:center;font-size:var(--fs-12);color:var(--text-muted)}.cd-colhead:nth-of-type(4n+1){color:var(--text);font-weight:600}.cd-hole{grid-row:calc(var(--t) + 2);grid-column:calc(var(--s) + 2);aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r-1);background:var(--bg);width:100%;min-height:28px;padding:0;transition:background .22s ease-out,transform .12s;position:relative}.cd-hole[data-q="1"]{border-color:var(--line-strong)}.cd-hole:before{content:"";border-radius:var(--r-pill);background:0 0;transition:background .12s;position:absolute;inset:22%}.cd-hole[aria-pressed=true]:before{background:var(--dye)}.cd-hole[data-glyph=bar]:before{border-radius:1px;inset:22% 36%}.cd-hole[data-glyph=small]:before{inset:32%}.cd-hole[data-glyph=ring][aria-pressed=true]:before{box-shadow:inset 0 0 0 3px var(--dye);background:0 0}.cd-hole[data-glyph=double]:before{clip-path:polygon(0 0,40% 0,40% 100%,0 100%,0 0,60% 0,100% 0,100% 100%,60% 100%);border-radius:6px;inset:22% 14%}.cd-hole[data-glyph=diamond]:before{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border-radius:0;inset:16%}.cd-hole[data-glyph=slot]:before{border-radius:var(--r-pill);inset:34% 8%}.cd-hole[data-glyph=notch]:before{clip-path:polygon(0 0,100% 0,100% 100%,55% 100%,50% 70%,45% 100%,0 100%);border-radius:2px;inset:22%}.cd-hole[aria-disabled=true]{opacity:.28;background:repeating-linear-gradient(45deg, transparent 0 4px, var(--line) 4px 5px)}.cd-hole.cd-now{border-color:var(--now);box-shadow:0 0 0 1px var(--now)}.cd-play{grid-row:2/-1;grid-column:calc(var(--now-s) + 2);border:1px solid var(--now);border-radius:var(--r-1);pointer-events:none}.tr-thread{gap:var(--sp-2) var(--sp-5);margin-top:var(--sp-3);padding:var(--sp-3);background:var(--surface-2);border-radius:var(--r-2);flex-wrap:wrap;align-items:center;display:flex}.tr-thread h2{font-size:var(--fs-20);margin-right:var(--sp-2)}.tr-thread .pl-btn{min-width:44px;min-height:44px;padding:0 var(--sp-3)}.tr-thread .pl-btn[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.tr-thread input[type=range]{accent-color:var(--accent);min-height:44px}.cl{top:calc(var(--beam-h) + var(--sp-4));border-radius:var(--r-1);border:1px solid var(--line);background:var(--cloth-bg);height:min(640px, calc(100vh - var(--beam-h) - var(--sp-7)));position:sticky;overflow:hidden}.cl canvas{width:100%;height:100%;display:block}.cl-note{left:var(--sp-2);bottom:var(--sp-2);font-size:var(--fs-12);background:var(--surface);color:var(--text);padding:var(--sp-1) var(--sp-2);border-radius:var(--r-1);position:absolute}.pl-toast{left:50%;bottom:var(--sp-5);background:var(--surface-2);border:1px solid var(--line-strong);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-2);z-index:20;max-width:90vw;position:fixed;transform:translate(-50%)}@media (max-width:959px){.pl-main{gap:var(--sp-3);padding:var(--sp-3);grid-template-columns:1fr}.cl{order:-1;height:168px;position:relative;top:0}.ld-hero h1{font-size:3.2rem}.ld-hero p{font-size:var(--fs-14);margin-bottom:var(--sp-2)}.tr-beam{padding:var(--sp-2) var(--sp-3);gap:var(--sp-2)}.tr-field input[type=range]{width:80px}.cd-grid{grid-template-columns:2.4rem repeat(8,minmax(0,1fr));gap:3px}.cd-label[aria-pressed=true]{outline:2px solid var(--line-strong)}.cd-label{grid-column:calc(var(--t) + 2);grid-row:1;justify-content:center;min-height:44px;padding:0;font-size:0}.cd-label i{width:14px;height:14px}.cd-colhead{grid-column:1;grid-row:calc(var(--s) + 2);text-align:right;padding-right:4px}.cd-hole{grid-row:calc(var(--s) + 2);grid-column:calc(var(--t) + 2);aspect-ratio:auto;height:44px;min-height:44px}.cd-play{grid-row:calc(var(--now-s) + 2);grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.cd-hole.cd-hit{background:color-mix(in srgb, var(--dye) 60%, var(--bg));transition:none}.pl-skip{left:var(--sp-2);background:var(--surface);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-2);z-index:30;position:absolute;top:-60px}.pl-skip:focus{top:var(--sp-2)}.cl{position:sticky}.cl-poster{object-fit:cover;width:100%;height:100%;transition:opacity .4s ease-out;position:absolute;inset:0}.cl-poster.cl-gone{opacity:0;pointer-events:none}.cl-canvas{position:absolute;inset:0}.cl>*{max-width:none}.ld-bolts{gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);background:var(--surface-2);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.ld-bolts[hidden],.ld-notice[hidden],.cd-empty[hidden]{display:none}.ld-notice{padding:var(--sp-3) var(--sp-5);background:var(--surface-2);border-bottom:1px solid var(--line-strong);gap:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.cd{position:relative}.cd-empty{justify-content:center;align-items:center;gap:var(--sp-3);background:color-mix(in srgb, var(--surface) 82%, transparent);border-radius:var(--r-2);flex-direction:column;display:flex;position:absolute;inset:0}.cd-empty p{font:800 var(--fs-25)/1.1 var(--display);margin:0}.cd-hole:focus-visible,.cd-label:focus-visible{outline:2px solid var(--focus);outline-offset:2px;z-index:2}.cd-hole.cd-sink{transform:scale(.9)}.ld-how{max-width:1320px;margin:var(--sp-7) auto 0;padding:0 var(--sp-5)}.ld-how h2{font-size:var(--fs-31);margin-bottom:var(--sp-3)}.ld-how ul{max-width:62ch;padding-left:var(--sp-5);color:var(--text-muted)}.ld-foot{max-width:1320px;margin:var(--sp-7) auto;padding:0 var(--sp-5) var(--sp-5)}.ld-foot a{color:var(--text)}#pl-toasts{left:0;right:0;bottom:var(--sp-5);align-items:center;gap:var(--sp-2);z-index:20;pointer-events:none;flex-direction:column;display:flex;position:fixed}#pl-toasts .pl-toast{pointer-events:auto;gap:var(--sp-3);align-items:center;display:flex;position:static;transform:none}.ld-coach{right:var(--sp-5);bottom:var(--sp-5);width:min(340px, calc(100vw - 2 * var(--sp-4)));background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-2);padding:var(--sp-4);z-index:25;position:fixed}.ld-coach p{margin:0 0 var(--sp-3)}.ld-coach div{gap:var(--sp-2);justify-content:flex-end;display:flex}.ld-coach[hidden]{display:none}.cd-hole.cd-pulse{animation:1s ease-in-out infinite cd-pulse}@keyframes cd-pulse{50%{border-color:var(--now)}}@media (max-width:959px){.tr-beam{position:sticky}.ld-bolts,.ld-notice{padding:var(--sp-3)}.ld-how,.ld-foot{padding-left:var(--sp-3);padding-right:var(--sp-3)}.ld-coach{bottom:calc(var(--sp-4) + env(safe-area-inset-bottom))}}.tr-dock{display:contents}@media (max-width:959px){.tr-beam{flex-wrap:nowrap}.tr-dock{justify-content:space-between;align-items:center;gap:0 var(--sp-3);z-index:8;background:var(--surface);border-top:1px solid var(--line);padding:var(--sp-1) var(--sp-3) calc(var(--sp-1) + env(safe-area-inset-bottom));flex-wrap:wrap;display:flex;position:fixed;bottom:0;left:0;right:0}.tr-dock .tr-field{flex:40%;min-height:44px}.tr-dock .tr-field input[type=range]{flex:1;width:100%;min-width:60px;min-height:44px}.tr-dock .pl-btn{flex:100%;min-height:44px}.tr-brand{font-size:var(--fs-20)}body{padding-bottom:150px}.ld-hero h1{font-size:2.4rem}.ld-hero p{margin:var(--sp-1) 0}#pl-toasts{bottom:170px}}.cd-empty{pointer-events:none;background:color-mix(in srgb, var(--surface) 55%, transparent)}.cd-empty button{pointer-events:auto}.cd-hole,.cd-label{scroll-margin-top:96px;scroll-margin-bottom:170px}@media (max-width:959px){.pl-main{padding-left:0;padding-right:0}.ld-hero,.tr-thread{margin-left:var(--sp-3);margin-right:var(--sp-3)}.cd{padding:var(--sp-2) 0;border-left:0;border-right:0;border-radius:0}.cd-grid{grid-template-columns:18px repeat(8,minmax(0,1fr));gap:0}.cd-colhead{padding-right:2px;font-size:11px}.cd-hole,.cd-label{border-radius:0}.cl{border-left:0;border-right:0;border-radius:0;margin:0}}.cd-grid{align-content:start;min-height:338px}.cd-colhead{border-bottom:2px solid #0000}.cd-colhead.cd-now-col{border-bottom-color:var(--now);color:var(--text);font-weight:600}@media (max-width:959px){.cd-grid{min-height:750px}.cd-colhead{border-bottom:0;border-right:2px solid #0000}.cd-colhead.cd-now-col{border-right-color:var(--now)}}.ld-bolts,.ld-coach{animation:.2s ease-out pl-rise}@keyframes pl-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ld-hero a,.ld-foot a{color:var(--text);text-underline-offset:3px}.ld-foot{gap:var(--sp-5);flex-wrap:wrap;display:flex}@media (max-width:959px){.ld-foot a,.ld-more a{min-height:44px;line-height:44px;display:inline-block}.ld-more{margin:0}}.cd-hole[data-lock]{background-image:linear-gradient(135deg, transparent 72%, var(--now) 72%)}.in-panel{margin-top:var(--sp-3)}.in-tabs{gap:var(--sp-2);margin-bottom:var(--sp-2);flex-wrap:wrap;display:flex}.in-tab[aria-selected=true]{background:var(--surface-2);border-color:var(--text)}.in-body{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);padding:var(--sp-3) var(--sp-4)}.in-body[hidden]{display:none}.in-h{font-size:var(--fs-20);margin-bottom:var(--sp-1)}.in-hint{color:var(--text-muted);font-size:var(--fs-14);margin:0 0 var(--sp-2)}.in-row{gap:var(--sp-2) var(--sp-5);margin-bottom:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.in-row[hidden]{display:none}.pl-select,.pl-spin{background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--r-1);min-height:44px;padding:0 var(--sp-2);color:var(--text)}.pl-spin{width:5ch}.tr-euclid{gap:var(--sp-2) var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.ls-title{font:800 var(--fs-20)/1.1 var(--display);margin:var(--sp-2) 0}.ls-step{max-width:62ch;margin:0 0 var(--sp-3)}.ld-bolts{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.ld-bolts[hidden]{display:none}.pl-bolt{gap:var(--sp-1);text-align:left;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-2);padding:var(--sp-2);min-height:44px;display:grid}.pl-bolt:hover{background:var(--surface-2)}.pl-bolt canvas{aspect-ratio:96/60;border-radius:var(--r-1);width:100%;height:auto}.pl-bolt-name{font-weight:600}.pl-bolt-meta{color:var(--text-muted);font-size:var(--fs-12)}@media (max-width:959px){.in-panel{margin-left:var(--sp-3);margin-right:var(--sp-3)}.tr-dock .pl-btn{flex:30%}}.in-body input[type=range],.in-body .tr-field input[type=range]{min-width:120px;min-height:44px}@media (max-width:959px){.tr-dock .pl-btn{padding:0 var(--sp-2);white-space:nowrap;font-size:var(--fs-14)}}.ls-done{color:var(--text);border-bottom:2px solid var(--now);font-weight:600}.ls-done[hidden]{display:none}
