@font-face{font-family:Archivo;font-style:normal;font-weight:400 800;font-stretch:62% 125%;font-display:swap;src:url(./archivo-400-800-DXrUVZxZ.woff2)format("woff2")}@font-face{font-family:Doto;font-style:normal;font-weight:500;font-display:swap;src:url(./doto-500-Y-BORX9o.woff2)format("woff2")}@font-face{font-family:Doto;font-style:normal;font-weight:800;font-display:swap;src:url(./doto-500-Y-BORX9o.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(./ibm-plex-mono-400-BJoXLJYV.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(./ibm-plex-mono-500-C820gu2e.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(./ibm-plex-mono-600-DpGnXj3s.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./ibm-plex-sans-400-BD64o3ke.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./ibm-plex-sans-400-BD64o3ke.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(./ibm-plex-sans-400-BD64o3ke.woff2)format("woff2")}:root{--bone:#ece9e2;--paper:#f6f4ef;--panel:#f6f4eff0;--panel-solid:#f6f4ef;--ink:#16181c;--ink-2:#3a3d44;--muted:#6b6d72;--line:#16181c24;--line-strong:#16181c52;--signal:#ff5f1f;--signal-press:#e2500f;--signal-ink:#c43d00;--graphite:#2a2d33;--good:#1f9d6b;--bad:#d23b2f;--night:#0f1216;--shadow:0 10px 30px #14161a1f, 0 2px 6px #14161a14;--radius:3px;--gutter:max(16px, env(safe-area-inset-left,0px));--font-display:"Archivo", "Arial Narrow", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--font-dots:"Doto", "IBM Plex Mono", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bone);height:100%;color:var(--ink);font:15px/1.45 var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;margin:0;overflow:hidden}#stage{width:100vw;height:100vh;touch-action:none;outline:none;height:100dvh;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}:where(#ui>*){pointer-events:none}.ui-live{pointer-events:auto}button{font:inherit;color:inherit}#boot{background:var(--bone);z-index:50;place-content:center;justify-items:center;gap:14px;transition:opacity .5s;display:grid;position:fixed;inset:0}#boot.gone{opacity:0;pointer-events:none}.boot-mark{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(34px,7vw,72px);font-weight:800;font-stretch:125%}.boot-line{font:500 12px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.mono{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:11px}.muted{color:var(--muted)}.dots{font-family:var(--font-dots);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-weight:800}.dot-pt{font-family:var(--font-mono);margin:0 .02em;font-weight:700}.display{font-family:var(--font-display);letter-spacing:-.01em;font-weight:800;font-stretch:112%;line-height:.95}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px)saturate(1.1)}.panel.raised{box-shadow:var(--shadow)}.rule{background:var(--line);border:0;height:1px;margin:0}.btn{pointer-events:auto;appearance:none;border:1px solid var(--line-strong);background:var(--panel-solid);color:var(--ink);border-radius:var(--radius);min-height:40px;font:500 13px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 14px;transition:background .15s,border-color .15s,transform 80ms;display:inline-flex}.btn:hover{border-color:var(--ink)}.btn:active{transform:translateY(1px)}.btn[aria-pressed=true],.btn.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn:disabled{opacity:.4;cursor:default}.btn:focus-visible,.chip:focus-visible,.go:focus-visible,.dock-item:focus-visible,input:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.btn.quiet{background:0 0;border-color:#0000}.btn.quiet:hover{background:#16181c0f}.btn.icon{width:40px;padding:0}.btn.danger{color:#fff;background:#b3261e;border-color:#b3261e}.go{pointer-events:auto;appearance:none;background:var(--signal);color:#fff;border-radius:var(--radius);font-family:var(--font-display);letter-spacing:.01em;cursor:pointer;border:0;justify-content:center;align-items:center;gap:12px;min-height:56px;padding:0 26px;font-size:20px;font-weight:800;font-stretch:112%;transition:background .15s,transform 80ms,box-shadow .15s;display:inline-flex;box-shadow:0 8px 22px #ff5f1f47}.go:hover{background:var(--signal-press)}.go:active{transform:translateY(1px);box-shadow:0 4px 12px #ff5f1f3d}.go:disabled{background:var(--line-strong);color:var(--ink-2);box-shadow:none;cursor:default;transform:none}@media (pointer:coarse){.btn,.chip,.go{min-height:44px}.zook-switch,input[type=range]{min-height:40px}}.go.dark{background:var(--ink);box-shadow:none}.go .tri{border-top:8px solid #0000;border-bottom:8px solid #0000;border-left:13px solid;width:0;height:0}.go .sq{background:currentColor;width:13px;height:13px}.chip{pointer-events:auto;appearance:none;border:1px solid var(--line-strong);background:var(--panel-solid);color:var(--ink);border-radius:var(--radius);min-height:34px;font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chip:disabled{opacity:.4}.chips{flex-wrap:wrap;gap:6px;display:flex}.field{gap:6px;display:grid}.field-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.field-head .dots{font-size:15px}input[type=range]{pointer-events:auto;appearance:none;cursor:pointer;background:0 0;width:100%;height:26px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--ink) 0 var(--fill,50%), #16181c29 var(--fill,50%));height:3px}input[type=range]::-moz-range-track{background:#16181c29;height:3px}input[type=range]::-moz-range-progress{background:var(--ink);height:3px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--signal);border:2px solid var(--paper);border-radius:50%;width:18px;height:18px;margin-top:-7.5px;box-shadow:0 1px 4px #00000040}input[type=range]::-moz-range-thumb{background:var(--signal);border:2px solid var(--paper);border-radius:50%;width:16px;height:16px}.field-hint{color:var(--muted);margin-top:-3px;font-size:12px;line-height:1.35}.range-wrap{display:block;position:relative}.range-target{background:var(--signal);pointer-events:none;width:4px;height:18px;transform:translateX(calc(9px - var(--pos,0) * 18px));border-radius:2px;margin:-9px 0 0 -2px;position:absolute;top:50%}.field-target{font:500 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--signal-ink);justify-self:end}.field.on-target .field-target{color:var(--good)}.field.has-target{border-radius:var(--radius);box-shadow:0 0 0 2px var(--signal);margin:0 -8px;padding:6px 8px}.field.on-target{box-shadow:0 0 0 2px var(--good)}input[type=text]{pointer-events:auto;border:1px solid var(--line-strong);background:var(--paper);border-radius:var(--radius);min-height:40px;font:600 16px/1 var(--font-body);color:var(--ink);width:100%;padding:0 12px}.toast{left:50%;top:calc(18px + env(safe-area-inset-top,0px));background:var(--ink);color:var(--paper);border-radius:var(--radius);font:500 12px/1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;z-index:40;text-align:center;max-width:calc(100vw - 32px);padding:10px 16px;animation:.25s toast-in;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.zook-thumb{background-color:#e7e3da;border-radius:6px;flex:none;place-items:center;display:inline-grid;overflow:hidden}.zook-thumb img{object-fit:contain;width:100%;height:100%;display:block}@media (max-width:760px){.toast{top:calc(118px + env(safe-area-inset-top,0px));font-size:11px}}.friends{background:var(--night);color:var(--paper);padding:calc(16px + env(safe-area-inset-top,0px)) var(--gutter) calc(24px + env(safe-area-inset-bottom,0px));pointer-events:auto;grid-template-columns:minmax(300px,36%) 1fr;align-items:start;column-gap:28px;display:grid;position:fixed;inset:0;overflow-y:auto}.friends-main{align-content:start;gap:16px;min-width:0;display:grid}.friends-hero{border-right:1px solid #f6f4ef1a;place-items:center;height:calc(100vh - 40px);display:grid;position:sticky;top:0;overflow:hidden}.hero-spot{background:radial-gradient(60% 26% at 50% 72%,#fff4e033,#0000 70%),radial-gradient(46% 60% at 50% 40%,#fff4e01a,#0000 70%);position:absolute;inset:0}.hero-spot:after{content:"";background:linear-gradient(#ff5f1fe6,#0000);width:2px;height:22%;position:absolute;top:0;left:50%}.hero-zook{aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 24px 30px #00000073);width:min(100%,520px);animation:.5s fade;position:relative}.hero-caption{gap:4px;display:grid;position:absolute;bottom:16px;left:16px}.hero-caption .mono{color:#f6f4ef99;font-size:11px}.hero-name{font-family:var(--font-display);font-size:clamp(28px,3vw,44px);font-weight:800;line-height:1}@media (max-width:900px){.friends{grid-template-columns:1fr;row-gap:12px}.friends-hero{border-bottom:1px solid #f6f4ef1a;border-right:0;height:180px;position:relative}.hero-zook{width:180px}.hero-caption{bottom:10px;left:0}.hero-name{font-size:26px}}.friends-head{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.friends-head h1{margin:0;font-size:clamp(38px,6vw,64px)}.friends-head .mono.muted{color:#f6f4ef8c}.friends .btn:not(.go){color:var(--paper);background:0 0;border-color:#f6f4ef59}.friends .btn:hover{border-color:var(--paper)}.name-field{gap:4px;min-width:220px;margin-left:auto;display:grid}.name-field input{color:var(--paper);background:#f6f4ef14;border-color:#f6f4ef4d}.friends-tabs{border-bottom:1px solid #f6f4ef2e;flex-wrap:wrap;gap:2px;display:flex}.friends-tab{appearance:none;color:#f6f4ef99;font:600 15px/1 var(--font-body);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1px;padding:12px 14px}.friends-tab[aria-selected=true]{color:var(--paper);border-bottom-color:var(--signal)}.friends-tab:focus-visible{outline:2px solid var(--signal)}.friends-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:14px;display:grid}.friends-card{background:var(--panel-solid);color:var(--ink);gap:14px;padding:20px;display:grid}.friends-card h2{font-family:var(--font-display);margin:0;font-size:26px;font-weight:800}.friends-card p{margin:0}.friends-card .btn{background:var(--panel-solid)!important;color:var(--ink)!important;border-color:var(--line-strong)!important}.friends-card .btn[aria-pressed=true]{background:var(--ink)!important;color:var(--paper)!important}.small{font-size:13px}.note{background:var(--ink);color:var(--paper);padding:10px 12px;font-size:14px}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.paste-row{grid-template-columns:1fr auto;gap:6px;display:grid}.zook-card{border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;align-items:center;gap:12px;padding:12px;display:flex}.zook-card-name{font-family:var(--font-display);font-size:20px;font-weight:800}.room-code{letter-spacing:.08em;color:var(--signal);font-size:clamp(48px,9vw,84px);line-height:1}.players{gap:6px;margin:0;padding:0;list-style:none;display:grid}.players li{border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;grid-template-rows:auto auto;grid-template-columns:auto 1fr auto;align-items:center;column-gap:10px;padding:8px 10px;display:grid}.players li.me{box-shadow:inset 0 0 0 1px var(--ink)}.players .rival-swatch,.players .zook-thumb{grid-row:span 2}.player-name{align-items:center;gap:8px;font-weight:700;display:flex}.players .ready{grid-row:span 2;font-size:10px}.players .ready.on{color:var(--good)}.tag{background:var(--ink);color:var(--paper);padding:2px 6px;font-size:9px}.incoming h2{text-wrap:balance;margin:2px 0 0;font-size:clamp(30px,4vw,42px);line-height:1}.incoming p{margin:0}@media (max-width:760px){.name-field{width:100%;margin-left:0}.friends-tab{padding:10px;font-size:14px}}.name-ask{gap:4px;display:grid}.name-ask input{min-height:40px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.friends-card .btn.on{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important}.yf{align-items:start;gap:14px;display:grid}.yf-two{grid-template-columns:minmax(250px,290px) minmax(0,1fr)}.yf-col{align-content:start;gap:10px;min-width:0;display:grid}.yf-invite{gap:10px;padding:16px}.yf-invite h2{font-size:22px}.yf-actions{flex-wrap:wrap;gap:6px;display:flex}.yf-invite input{border:1px solid var(--line-strong);border-radius:var(--radius);min-height:40px;font:500 14px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:#fff;min-width:0;padding:0 10px}.yf-label{font:500 10px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#f6f4ef8c}.yf-muted{color:#f6f4efa6;margin:0;font-size:14px;line-height:1.45}.yf-error{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.yf-roster{gap:6px;margin:0;padding:0;list-style:none;display:grid}.yf-row{appearance:none;border-radius:var(--radius);width:100%;color:var(--paper);text-align:left;cursor:pointer;background:#f6f4ef0a;border:1px solid #f6f4ef29;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px 6px 6px;transition:background .15s,border-color .15s;display:grid}.yf-row:hover{border-color:#f6f4ef66}.yf-row:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.yf-row .zook-thumb{background:radial-gradient(at 50% 70%,#fff4e038,#0000 70%)}.yf-row-text{gap:2px;min-width:0;display:grid}.yf-row b{font:800 17px/1.1 var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-stretch:112%;overflow:hidden}.yf-row.on{background:var(--paper);color:var(--ink);border-color:var(--paper)}.yf-row.on .yf-label{color:var(--muted)}.yf-row.on .zook-thumb{background:radial-gradient(ellipse at 50% 72%, #fff 20%, var(--bone) 75%)}.yf-initials{width:52px;height:52px;font:600 14px var(--font-mono);background:#f6f4ef1a;border-radius:6px;place-items:center;display:grid}.yf-row.on .yf-initials{background:var(--bone)}.yf-chev{font:500 18px/1 var(--font-body);opacity:.6}.yf-profile{gap:16px;min-width:0;padding:18px}.yf-profile .yf-name{overflow-wrap:anywhere;margin:0;font-size:clamp(32px,4vw,40px)}.yf-back{appearance:none;font:600 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);cursor:pointer;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);background:0 0;border:0;justify-self:start;padding:6px 0}.yf-sec{gap:10px;min-width:0;display:grid}.yf-sec-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.yf-sec-h h3{font:600 15px/1.2 var(--font-body);margin:0}.yf-shelf{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.yf-zook{border:1px solid var(--line-strong);border-radius:var(--radius);background:linear-gradient(#fff,#f3f1ec);gap:4px;min-width:0;padding:0 10px 10px;display:grid}.yf-zook .zook-thumb{aspect-ratio:1.25;background:radial-gradient(50% 20% at 50% 84%,#16181c1f,#0000 70%);width:100%!important;height:auto!important}.yf-zook b{font:800 17px/1.05 var(--font-display);overflow-wrap:anywhere;font-stretch:112%}.yf-zook .mono{letter-spacing:.06em;font-size:10px;line-height:1.4}.yf-zook .btn{min-height:34px;margin-top:4px;padding:0 10px;font-size:11px}.yf-table-wrap{overflow-x:auto}.yf-times{border-collapse:collapse;width:100%}.yf-times th{font:500 10px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;white-space:nowrap;padding:0 8px 8px 0}.yf-times td{border-top:1px solid var(--line);vertical-align:middle;padding:7px 8px 7px 0;font-size:14px}.yf-times td:last-child{text-align:right;padding-right:0}.yf-id{font:600 11px/1 var(--font-mono);letter-spacing:.06em;color:var(--muted);margin-right:6px}.yf-t{font:600 13px/1 var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.yf-t.behind{color:var(--signal-ink)}.yf-t.ahead{color:var(--good)}.yf-times .btn{min-height:34px;padding:0 12px;font-size:11px}.yf-empty{color:var(--ink-2);margin:0;font-size:14px;line-height:1.45}.yf-foot{border-top:1px solid var(--line);justify-content:flex-end;padding-top:10px;display:flex}.yf-remove{appearance:none;font:600 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bad);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:6px 0;text-decoration:underline}.yf-confirm{background:var(--bone);border-radius:2px;gap:8px;width:100%;padding:10px 12px;font-size:13px;line-height:1.4;display:grid}.yf-confirm p{margin:0}@media (max-width:760px){.yf-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.yf-times td:first-child{font-size:13px}}.lab{position:fixed;inset:0}.lab-top{left:var(--gutter);right:var(--gutter);top:calc(14px + env(safe-area-inset-top,0px));justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute}.lab-top-left{justify-items:start;gap:10px;display:grid}.lab-top-right{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.budget{pointer-events:auto;gap:8px;width:250px;padding:12px 14px;display:grid}.budget-head{justify-content:space-between;align-items:baseline;display:flex}.budget-head .dots{font-size:20px}.budget-bar{background:#16181c1f;height:4px;position:relative;overflow:hidden}.budget-bar i{background:var(--ink);transition:width .25s;position:absolute;inset:0 auto 0 0}.budget-bar.over i{background:var(--signal)}.budget-meta{justify-content:space-between;gap:8px;display:flex}.budget-meta .mono{font-size:10px}.zook-name{font-family:var(--font-display);font-size:22px;font-weight:800;font-stretch:112%;line-height:1}.dock{pointer-events:auto;left:var(--gutter);bottom:calc(16px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 2 * var(--gutter) - 184px);scrollbar-width:none;gap:2px;padding:6px;display:flex;position:absolute;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 92%,#0000);mask-image:linear-gradient(90deg,#000 92%,#0000)}@media (min-width:1246px){.dock{left:50%;transform:translate(-50%);-webkit-mask-image:none;mask-image:none}}.dock::-webkit-scrollbar{display:none}.dock-item{appearance:none;border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #0000;justify-items:center;gap:2px;min-width:70px;padding:4px 6px 6px;transition:background .15s,border-color .15s;display:grid}.dock-item:hover{background:#16181c0d}.dock-item[aria-pressed=true]{background:var(--ink);color:var(--paper)}.dock-item img{object-fit:contain;width:52px;height:52px;display:block}.dock-item .dock-ph{border:1px solid var(--line);border-radius:8px;width:52px;height:52px}.dock-item .mono{letter-spacing:.08em;font-size:9.5px}.dock-item .code{font:500 9px/1 var(--font-mono);opacity:.55}.test-btn{right:var(--gutter);bottom:calc(16px + env(safe-area-inset-bottom,0px));min-width:170px;position:absolute}.hint{left:50%;bottom:calc(108px + env(safe-area-inset-bottom,0px));pointer-events:auto;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:9px 14px;font-size:14px;display:flex;position:absolute;transform:translate(-50%)}.hint b{font-weight:600}.card{pointer-events:auto;will-change:transform;gap:12px;width:272px;padding:14px;display:grid;position:absolute;top:0;left:0}.card-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.card-title{font-family:var(--font-display);font-size:17px;font-weight:700}.card-actions{flex-wrap:wrap;gap:6px;display:flex}.card .field{font-size:13px}.lab .card{overflow-y:auto}.card-leader{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}.side{pointer-events:auto;right:var(--gutter);top:calc(70px + env(safe-area-inset-top,0px));bottom:calc(90px + env(safe-area-inset-bottom,0px));align-content:start;gap:16px;width:360px;padding:16px;display:grid;position:absolute;overflow-y:auto}.side h3{font-family:var(--font-display);margin:0;font-size:18px;font-weight:700}.side .section{gap:10px;display:grid}.side .section-head{justify-content:space-between;align-items:baseline;display:flex}.teach{background:var(--ink);color:var(--paper);border-radius:var(--radius);gap:8px;padding:12px;display:grid}.teach p{opacity:.8;margin:0;font-size:13px}.teach .go{min-height:46px;font-size:17px}.teach-progress{background:#ffffff26;height:4px}.teach-progress i{background:var(--signal);height:100%;transition:width .3s;display:block}.seq{gap:4px;display:grid}.seq-row{grid-template-columns:118px 1fr;align-items:center;gap:8px;display:grid}.seq-row .mono{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.seq-track{border-bottom:1px solid var(--line);cursor:ew-resize;touch-action:none;background:repeating-linear-gradient(90deg,#16181c1a 0 1px,#0000 1px 12.5%);height:22px;position:relative}.seq-bar{background:var(--ink);border-radius:1px;position:absolute;top:4px;bottom:4px}.seq-bar.alt{background:var(--signal)}.seq-bar.wrap2{opacity:1}.seq-scale{grid-template-columns:118px 1fr;gap:8px;display:grid}.seq-scale div{justify-content:space-between;display:flex}.seq-scale .mono{font-size:9px}.seq-playhead{background:var(--signal);pointer-events:none;width:1px;position:absolute;top:-2px;bottom:-2px}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{pointer-events:auto;border:2px solid var(--paper);width:34px;height:34px;box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;border-radius:50%;padding:0}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--ink)}.number-row{align-items:center;gap:10px;display:flex}.number-row .dots{text-align:center;min-width:52px;font-size:30px}.testhud{left:var(--gutter);bottom:calc(16px + env(safe-area-inset-bottom,0px));pointer-events:auto;align-items:center;gap:22px;padding:12px 16px;display:flex;position:absolute}.testhud .stat{gap:2px;display:grid}.testhud .stat .dots{font-size:26px;line-height:1}.testhud>p{max-width:220px;color:var(--muted);margin:0;font-size:13px}@media (max-width:760px){:is(.lab .card:has(input[type=range]:active),.lab .side:has(input[type=range]:active)){opacity:.3;transition:opacity .12s}.dock{-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.lab-top{grid-template-columns:44px minmax(0,1fr) 44px 44px 44px;grid-template-areas:"back modes undo redo mirror""budget budget budget budget budget";align-items:stretch;gap:6px;display:grid}.lab-top-left,.lab-top-right{display:contents}.lab-top-right>:first-child{grid-area:back}.lab-top-right>:nth-child(2){grid-area:undo}.lab-top-right>:nth-child(3){grid-area:redo}.lab-top-right>:nth-child(4){grid-area:mirror}.lab-top-right .lbl{display:none}.lab-top-right .btn{justify-content:center;min-width:44px;min-height:44px;padding:0}.lab-top-left .chips{background:var(--panel-solid);border:1px solid var(--line-strong);border-radius:var(--radius);pointer-events:auto;flex-wrap:nowrap;grid-area:modes;gap:2px;padding:2px}.lab-top-left .chip{letter-spacing:.06em;border:0;flex:1;justify-content:center;min-height:38px;padding:0 4px}.lab-top .lab-modes{display:contents}.lab-top{grid-template-areas:"back modes undo redo mirror""budget budget budget budget budget""garage garage garage garage garage"}.lab-top .lab-garage{grid-area:garage}.lab-top .lab-garage .btn{flex:1;min-height:36px}.budget{grid-area:budget;gap:4px;width:auto;padding:6px 10px}.budget-meta{display:none}.budget-head .dots,.zook-name{font-size:16px}.dock{left:0;right:0;bottom:calc(80px + env(safe-area-inset-bottom,0px));max-width:none;margin:0 var(--gutter);transform:none}.test-btn{left:var(--gutter);right:var(--gutter);min-width:0}.hint{bottom:calc(178px + env(safe-area-inset-bottom,0px))}.card{width:auto;right:var(--gutter);bottom:calc(176px + env(safe-area-inset-bottom,0px));left:var(--gutter)!important;top:auto!important;transform:none!important}.side{left:var(--gutter);right:var(--gutter);width:auto;top:auto;bottom:calc(80px + env(safe-area-inset-bottom,0px));max-height:45dvh}.lab:has(.teach-progress) .testhud{display:none}.hint{left:var(--gutter);right:var(--gutter);transform:none}.testhud{right:var(--gutter);bottom:calc(80px + env(safe-area-inset-bottom,0px));flex-wrap:wrap;justify-content:space-between;row-gap:6px}.testhud p,.testhud .pad-pick p{flex-basis:100%;max-width:none;margin:0;font-size:12px;display:block}}.zook-switch{appearance:none;cursor:pointer;text-align:left;color:var(--ink);pointer-events:auto;background:0 0;border:0;padding:0}.zook-switch:hover{text-decoration:underline;-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal);text-underline-offset:4px}.garage-sec{gap:10px;display:grid}.garage-sec h3{font:600 15px/1.2 var(--font-body);margin:0}.garage-sec-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.tpl-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.tpl{appearance:none;border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;color:var(--ink);text-align:center;background:#fff;justify-items:center;gap:2px;padding:4px 6px 9px;transition:border-color .15s,transform 80ms;display:grid}.tpl:hover{border-color:var(--ink)}.tpl:active{transform:translateY(1px)}.tpl:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.tpl .zook-thumb{background:0 0}.tpl b{font:800 14px/1.1 var(--font-display);font-stretch:112%}.tpl span:not(.zook-thumb){color:var(--muted);font-size:11px;line-height:1.25}.garage-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.garage-list li{border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;grid-template-columns:64px minmax(0,1fr);align-items:start;column-gap:10px;padding:6px 10px 6px 6px;display:grid;position:relative}.garage-list li.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.garage-list li:hover{border-color:var(--ink)}.garage-list li>.zook-thumb{background:radial-gradient(ellipse at 50% 72%, #fff 20%, var(--bone) 75%)}.garage-info{gap:3px;min-width:0;padding-top:4px;display:grid}.garage-name{align-items:center;gap:8px;min-width:0;display:flex}.garage-open{appearance:none;color:var(--ink);cursor:pointer;text-align:left;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;font-size:16px;font-weight:800;font-stretch:112%;line-height:1.1;overflow:hidden}.garage-open:after{content:"";border-radius:var(--radius);position:absolute;inset:0}.garage-open:focus-visible{outline:none}.garage-open:focus-visible:after{outline:2px solid var(--signal);outline-offset:-2px}.garage-info .mono{letter-spacing:.06em;font-size:10px;line-height:1.4}.garage-tag{font:600 9px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--paper);white-space:nowrap;border-radius:2px;padding:4px 6px}.garage-act{z-index:1;gap:14px;margin-top:1px;display:flex;position:relative}.garage-link{appearance:none;min-height:24px;font:600 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);background:0 0;border:0;padding:4px 0}.garage-link:hover{text-decoration-color:currentColor}.garage-link.bad{color:var(--bad)}.garage-link:disabled{opacity:.35;cursor:default}.garage-link:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.garage-confirm{z-index:1;background:var(--bone);border-radius:2px;grid-column:1/-1;gap:8px;margin:8px 0 0;padding:10px 12px;font-size:13px;line-height:1.4;display:grid;position:relative}.garage-confirm p{margin:0}.garage-confirm-actions{flex-wrap:wrap;gap:8px;display:flex}.lab-modes{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lab-garage{gap:6px;display:flex}.lab-garage .btn{pointer-events:auto}.garage-count{font:600 10px/1 var(--font-mono);background:var(--ink);color:var(--paper);letter-spacing:.02em;border-radius:9px;padding:3px 6px}.lab-garage .btn.new{border-color:var(--ink)}@media (max-height:500px) and (orientation:landscape){.lab-top{flex-direction:row}.budget{padding:6px 10px}.lab .card{right:var(--gutter);width:min(300px,44vw);bottom:66px;overflow-y:auto;max-height:none!important;top:60px!important;left:auto!important;transform:none!important}.lab:has(.card) .dock{display:none}.side{width:min(340px,48vw);max-height:none;top:60px;bottom:66px;left:auto}.lab:has(.teach-progress) .testhud{display:none}.dock{bottom:8px}.test-btn{min-height:48px;bottom:8px}.hint{bottom:96px}}.callout-lines{pointer-events:none;position:absolute;inset:0}.callout-lines path{fill:none;stroke:#16181c8c;stroke-width:1px}.callout-lines circle{fill:var(--signal);stroke:#fff;stroke-width:1.5px}.callout-labels{pointer-events:none;position:absolute;inset:0}.callout{border:1px solid var(--line);width:130px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink);text-shadow:0 1px #f6f4efcc;background:#f6f4efdb;gap:2px;padding:5px 8px;display:grid;position:absolute;top:0;left:0}.callout b{font-size:12px;font-weight:600}.callout span{color:var(--ink-2);font-size:10px}@media (max-width:900px){.callout-lines,.callout-labels{display:none}}.over-mass{color:var(--signal-ink);font-weight:600}.pad-pick{gap:6px;display:grid}.pad-pick p{max-width:260px;color:var(--muted);margin:0;font-size:12px}.tactic-note{color:var(--ink-2);margin:-2px 0 0;font-size:13px}.teach-stop{justify-self:start}@media (min-width:761px) and (min-height:501px){.teach-stop{display:none}}.testhud .dots.backwards{color:var(--signal-ink)}@media (max-width:760px){.lab:has(.testhud):not(:has(.teach-progress)) .side{display:none}}.new-tools{left:50%;top:calc(84px + env(safe-area-inset-top,0px));z-index:6;width:min(420px, calc(100vw - 2 * var(--gutter)));pointer-events:auto;gap:6px;padding:14px 16px;animation:.3s fade;display:grid;position:absolute;transform:translate(-50%)}.new-tools b{font-family:var(--font-display);font-size:19px}.new-tools p{color:var(--ink-2);margin:0;font-size:14px}.new-tools .btn{justify-self:start}.new-tools-tag{background:var(--signal-ink);color:#fff;letter-spacing:.1em;justify-self:start;padding:2px 7px;font-size:10px}@media (max-width:760px){.new-tools{top:calc(118px + env(safe-area-inset-top,0px))}}.fine-timing>summary{cursor:pointer;list-style:none}.fine-timing>summary::-webkit-details-marker{display:none}.fine-timing>summary h3:before{content:"+ ";color:var(--signal-ink)}.fine-timing[open]>summary h3:before{content:"– "}.teach .btn.quiet{color:var(--paper);border-color:#ffffff4d}@media (max-width:760px){.lab:has(.card) .dock{display:none}.lab .card{bottom:calc(80px + env(safe-area-inset-bottom,0px))}}.budget-head{gap:8px;min-width:0}.budget-head .zook-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.dock-item{position:relative}.dock-new{background:var(--signal-ink);color:#fff;letter-spacing:.08em;padding:1px 4px;font-size:8px;position:absolute;top:2px;right:2px}.card-rule{color:var(--ink-2);border-radius:var(--radius);background:#16181c0d;margin:0;padding:8px 10px;font-size:13px;line-height:1.4}.card-rule b{color:var(--ink);font-weight:600}.card-group{font:500 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:2px 0 -4px}.leg-diagram{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);grid-template-columns:100px 1fr;align-items:center;gap:10px;padding:6px 10px 6px 4px;display:grid}.leg-diagram p{color:var(--ink-2);margin:0;font-size:12.5px;line-height:1.4}.leg-diagram b{font:600 11px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:3px;display:block}.leg-diagram svg{display:block}.ld-body{fill:var(--bone);stroke:var(--ink);stroke-width:2px}.ld-ghost{fill:none;stroke:var(--line-strong);stroke-width:1.5px;stroke-dasharray:4 3}.ld-limb{stroke:var(--ink);stroke-width:5px;stroke-linecap:round}.ld-sel{stroke:var(--signal);stroke-width:6px;stroke-linecap:round}.ld-foot{stroke:var(--ink);stroke-width:4px;stroke-linecap:round}.ld-joint{fill:var(--ink)}.ld-joint-sel{fill:var(--signal);stroke:var(--paper);stroke-width:2px}.ld-arrow{fill:none;stroke:var(--signal);stroke-width:2px;stroke-dasharray:4 3}.ld-head{fill:none;stroke:var(--signal);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ld-glow{stroke:var(--signal);stroke-opacity:.28;stroke-width:16px;stroke-linecap:round}.ld-dim{stroke:var(--signal);stroke-width:1.5px;stroke-linecap:round}.ld-thick{stroke:var(--signal);stroke-opacity:.35;stroke-width:12px;stroke-linecap:round}.ld-ghostline{stroke:var(--signal);stroke-width:5px;stroke-linecap:round;stroke-opacity:.35}@media (prefers-reduced-motion:no-preference){.ld-arrow{animation:1.2s linear infinite ld-dash}}@keyframes ld-dash{to{stroke-dashoffset:-14px}}.move-owner{font:500 10px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.move-owner.teach-owned{color:var(--signal-ink)}.move-rule{color:var(--ink-2);margin:0;font-size:13px;line-height:1.4}.rhythm{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:5px;padding:8px 10px;display:grid}.rhythm-row{grid-template-columns:84px 1fr;align-items:center;gap:8px;display:grid}.rhythm-row .mono{font-size:10px}.rhythm-track{background:#16181c14;border-radius:4px;height:8px;position:relative}.rhythm-track i{background:var(--ink);border-radius:4px;height:8px;position:absolute;top:0}.rhythm-presets summary{cursor:pointer;color:var(--ink-2);padding:4px 0;font-size:13px}.rhythm-presets[open]{gap:8px;display:grid}.home{padding:calc(16px + env(safe-area-inset-top,0px)) var(--gutter) calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none;grid-template-rows:auto 1fr auto;gap:14px;display:grid;position:fixed;inset:0}.home>*{z-index:1;position:relative}.home-head{pointer-events:auto;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.home-title{font-size:clamp(36px,6vw,68px);font-stretch:125%}.home-head-actions{gap:6px;display:flex}.home-credit{font:500 12.5px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:10px 0 0;display:flex}.home-credit a{color:inherit;text-underline-offset:3px;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.home-credit a:hover{text-decoration-color:currentColor}.home-credit .home-tip{border:1px solid var(--signal);border-radius:var(--radius);min-height:32px;color:var(--signal-ink);background:#ff5f1f0f;align-items:center;gap:6px;padding:0 11px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.home-credit .home-tip:hover{background:#ff5f1f24}.home-credit a:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.plan{border:3px solid var(--ink);grid-template:"lab a b c"1fr"lab d e f"1fr"lab g daily friends".72fr/1.5fr 1fr 1fr 1fr;gap:0;min-height:0;display:grid;position:relative;z-index:0!important}.plan:before{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.room{z-index:1;appearance:none;pointer-events:auto;border:0;border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);color:var(--ink);text-align:left;cursor:pointer;background:#faf9f6 linear-gradient(#16181c09 1px,#0000 1px) 0 0/100% 24px;flex-direction:column;gap:4px;min-height:0;padding:14px 16px;transition:background .18s;display:flex;position:relative;overflow:hidden}.room:hover{background:#fff}.room:focus-visible{outline:3px solid var(--signal);outline-offset:-6px}.room:not(.room-lab):after{content:"";background:#faf9f6;width:36px;height:3px;position:absolute;bottom:-3px;left:22px}.room-name{font-family:var(--font-display);font-size:clamp(17px,1.7vw,24px);font-weight:700;line-height:1.05}.room .mono{font-size:10px}.room-field{padding-top:0}.room-img{border-bottom:3px solid var(--ink);transform-origin:50%;background-position:50% 40%;background-size:cover;height:52%;min-height:70px;margin:0 -16px 10px;transition:transform .4s cubic-bezier(.2,.9,.2,1),filter .3s;display:block}.room-field:hover .room-img{transform:scale(1.03)}.room.locked{color:var(--muted);background:repeating-linear-gradient(135deg,#eeebe4 0 8px,#e8e5dd 8px 16px)}.room.locked .room-img{filter:grayscale()contrast(.8)brightness(1.08);opacity:.55}.room-lock{margin-top:auto}.room-field.room-g{padding-left:0;grid-template-columns:minmax(0,44%) 1fr;grid-auto-rows:min-content;align-content:center;column-gap:14px;padding-block:0;display:grid}.room-g .room-img{border-bottom:0;border-right:3px solid var(--ink);grid-row:1/span 6;height:100%;min-height:0;margin:0}.room-g>:not(.room-img){grid-column:2}.room-g .room-stars,.room-g .room-lock{margin-top:4px}.room-lab{z-index:0;grid-area:lab;justify-content:space-between;box-shadow:0 0 0 300vmax #f4f2ec;background:0 0!important}.room-lab:before{content:"";pointer-events:none;background-image:linear-gradient(#16181c0d 1px,#0000 1px),linear-gradient(90deg,#16181c0d 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 60%,#000);mask-image:linear-gradient(#0000 60%,#000)}.room-lab .room-tag{background:var(--signal);color:#fff;font-family:var(--font-display);align-self:flex-start;padding:6px 12px;font-size:18px;font-weight:800}.room-lab-foot{background:#faf9f6e6;align-self:flex-start;gap:2px;padding:8px 10px;display:grid}.room-a{grid-area:a}.room-b{grid-area:b}.room-c{border-right:0;grid-area:c}.room-d{grid-area:d}.room-e{grid-area:e}.room-f{border-right:0;grid-area:f}.room-g{border-bottom:0;grid-area:g}.room-friends{background:var(--ink);color:var(--paper);border-bottom:0;border-right:0;grid-area:friends}.room-friends:hover{background:#22252b}.room-friends .mono.muted{color:#f6f4ef99}.room-daily{border-bottom:0;grid-area:daily}.room-daily-best{color:var(--signal-ink);margin-top:auto}.room-stars{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.star-group{gap:2px;display:flex}.star-group i,.challenge-stars i{opacity:.35;border:1.5px solid;width:9px;height:9px;transform:rotate(45deg)}.star-group i.on,.challenge-stars i.on{background:var(--signal);border-color:var(--signal);opacity:1}.home-continue{pointer-events:auto;flex-wrap:wrap;align-items:center;gap:14px;display:flex}.sheet-backdrop{pointer-events:auto;background:#16181c33;animation:.2s fade;inset:0;z-index:5!important;position:fixed!important}@keyframes fade{0%{opacity:0}}.sheet{right:var(--gutter);top:calc(16px + env(safe-area-inset-top,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(460px, calc(100vw - 2 * var(--gutter)));background:var(--panel-solid);align-content:start;gap:12px;padding:20px;animation:.3s cubic-bezier(.2,.9,.2,1) sheet-in;display:grid;position:absolute;overflow-y:auto}@keyframes sheet-in{0%{opacity:0;transform:translate(30px)}}.sheet-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sheet h2{margin:4px 0 0;font-size:36px}.sheet p{margin:0}.lock-note{background:var(--ink);color:var(--paper);padding:10px 12px;font-size:14px}.challenge-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.challenge{appearance:none;border:1px solid var(--line-strong);border-radius:var(--radius);text-align:left;cursor:pointer;width:100%;color:var(--ink);background:#fff;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid;position:relative}.challenge.is-next{border-color:var(--ink);box-shadow:inset 4px 0 0 var(--signal)}.challenge-solo{background:#e7e3da;border-radius:6px;place-items:center;width:48px;height:48px;font-size:16px;display:grid}.challenge-top{align-items:center;gap:8px;display:flex}.challenge-top .challenge-id{color:var(--muted);font-size:13px}.next-tag{background:var(--signal-ink);color:#fff;letter-spacing:.1em;padding:2px 6px;font-size:10px}.rival-tag{border:1px solid var(--ink);letter-spacing:.1em;padding:1px 5px;font-size:10px}.challenge-best{color:var(--ink-2);letter-spacing:.06em;font-size:10px}.field-hero{border-bottom:3px solid var(--ink);background-position:50% 45%;background-size:cover;flex:none;height:150px;margin:-20px -20px 4px}.challenge:hover:not(:disabled){border-color:var(--ink)}.challenge:disabled{opacity:.5;cursor:default}.challenge-id{font-size:20px}.challenge-main{gap:2px;font-size:13px;display:grid}.challenge-name{font-family:var(--font-display);font-size:17px;font-weight:700}.challenge-stars{color:var(--ink);gap:4px;display:flex}@media (max-width:760px){.home{pointer-events:auto;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background:0 0;display:block;overflow-y:auto}.home-head-actions .lbl{display:none}.home-head-actions .btn{min-width:44px;min-height:44px;padding:0 10px}.home>*+*{margin-top:14px}.home-title{font-size:clamp(26px,8.2vw,44px)}.home-head>div:first-child{min-width:0}.home-tagline{display:none}.home-credit{margin-top:6px;font-size:11px}.home-head{align-items:center}.home-head .mono.muted{font-size:10px}.plan{grid-template-rows:38vh repeat(5,auto);grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"lab lab""a b""c d""e f""g g""friends daily"}.room{min-height:124px;padding:12px}.room-field{padding-top:0}.room-img{height:76px;min-height:76px;margin:0 -12px 8px}.room-field.room-g{min-height:110px;padding-block:0}.room-g .room-img{height:100%;margin:0}.room-stars{gap:5px}.star-group i{width:7px;height:7px}.room-c{border-right:3px solid var(--ink)}.room-d,.room-f,.room-daily{border-right:0}.room-e,.room-friends{border-right:3px solid var(--ink)}.room-daily,.room-friends{border-bottom:0}.home-continue{padding-bottom:env(safe-area-inset-bottom,0px);position:sticky;bottom:0}.home-continue .go{flex:1}.home-continue .mono{display:none}}@media (max-height:500px) and (orientation:landscape){.home{pointer-events:auto;padding-bottom:12px;display:block;overflow-y:auto}.home>*+*{margin-top:12px}.plan{height:640px}.home-continue{z-index:3;position:sticky;bottom:8px}}.save-btn{gap:8px}.save-btn .short{display:none}.save-dot{background:var(--signal);border-radius:50%;flex:none;width:8px;height:8px}.save-dot.on{background:var(--good)}.save-dot.off{background:var(--muted)}.save-dot.busy{background:var(--signal);animation:1.2s ease-in-out infinite save-pulse}@keyframes save-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.save-dot.busy{animation:none}}@media (max-width:600px){.save-btn .long{display:none}.save-btn .short{display:inline}}.save-veil{z-index:40;background:#ece9e2c7;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.save-sheet{gap:14px;width:min(440px,100%);padding:22px;display:grid}.save-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.save-top h2{margin:0;font-size:34px;line-height:1}.save-lede{color:var(--ink-2);margin:0}.save-form{gap:12px;display:grid}.save-field{gap:6px;display:grid}.save-field input{font:16px/1.2 var(--font-body);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);color:var(--ink);width:100%;padding:12px}.save-note{margin:0;font-size:13px}.save-error{color:var(--bad);margin:0;font-size:14px}.save-switch{text-transform:none;letter-spacing:0;font-family:var(--font-body);justify-self:center;font-size:14px}.save-facts{gap:8px;margin:0;display:grid}.save-facts div{gap:4px;display:grid}.save-facts dd{margin:0}.save-invite{border-top:1px solid var(--line);gap:8px;padding-top:12px;display:grid}.save-invite p{color:var(--ink-2);margin:0;font-size:14px}.save-invite .btn{justify-self:start}.save-actions{flex-wrap:wrap;gap:8px;display:flex}.save-actions .go{min-height:48px;padding:0 18px;font-size:17px}.board{gap:6px;margin:4px 0 0;padding:0;list-style:none;display:grid}.board-row{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);grid-template-columns:26px 34px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:7px 8px 7px 10px;display:grid}.board-row.you{border-color:var(--signal);box-shadow:inset 3px 0 0 var(--signal)}.board-rank{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.board-av{background:var(--graphite);width:34px;height:34px;color:var(--bone);font:600 12px/1 var(--font-mono);border-radius:50%;place-items:center;display:grid}.board-row.you .board-av{background:var(--signal);color:var(--ink)}.board-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.board-name small{font-size:10px;display:block}.board-score{white-space:nowrap;font-size:15px}.board-ghost{min-height:34px;padding:0 10px;font-size:11px}@media (max-width:420px){.board-row{grid-template-columns:22px 30px minmax(0,1fr) auto}.board-av{width:30px;height:30px}.board-ghost{grid-column:3/-1;justify-self:start}}.board-empty{border:1px dashed var(--line-strong);border-radius:var(--radius);gap:8px;padding:12px;display:grid}.board-empty p{color:var(--ink-2);margin:0;font-size:14px}.board-empty .btn{justify-self:start}.brief-board{gap:6px;display:grid}.board-note{margin:0;font-size:14px}.results-online{gap:10px;margin-top:4px;display:grid}.board-line{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.board-line>span{gap:2px;display:grid}.board-line b{font-weight:500}.save-prompt{border:1px solid var(--signal);background:var(--paper);border-radius:var(--radius);gap:8px;padding:14px;display:grid}.save-prompt .muted{font-size:14px}.daily-board{gap:12px;display:grid}.daily-hist{gap:6px;margin:0;display:grid}.daily-hist svg{width:100%;height:84px;display:block}.daily-hist rect{fill:var(--line-strong)}.daily-hist rect.mine{fill:var(--signal)}.daily-hist line{stroke:var(--line-strong)}.daily-hist figcaption{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.post-daily>span{gap:4px}.post-daily small{font-size:13px;line-height:1.4}.hud{position:fixed;inset:0}.hud-tower{left:var(--gutter);top:calc(16px + env(safe-area-inset-top,0px));gap:2px;width:260px;display:grid;position:absolute}.tower-head{background:var(--ink);color:var(--paper);justify-content:space-between;padding:8px 12px;display:flex}.tower-head .live{color:var(--signal)}.tower-row{background:var(--panel);grid-template-columns:26px 1fr auto;align-items:center;gap:6px;padding:8px 12px;font-size:14px;font-weight:600;transition:background .3s;display:grid}.tower-row .dots{font-size:17px}.tower-row.me{background:var(--signal-ink);color:#fff}.tower-row.ghost{color:var(--paper);background:#16181cb8;font-style:italic}.tower-row.out{opacity:.5;text-decoration:line-through}.tower-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tower-val{font-size:15px!important}.hud-versus{left:50%;top:calc(16px + env(safe-area-inset-top,0px));grid-template-columns:1fr auto 1fr;align-items:center;min-width:min(560px,100vw - 32px);padding:0;display:grid;position:absolute;overflow:hidden;transform:translate(-50%)}.vs-side{align-items:center;gap:12px;padding:12px 16px;display:flex}.vs-side.right{flex-direction:row-reverse}.vs-side.me{background:var(--signal);color:#fff}.vs-name{font-family:var(--font-display);font-size:20px;font-weight:800;font-stretch:110%}.vs-dots{gap:5px;display:flex}.vs-dots i{opacity:.6;border:2px solid;border-radius:50%;width:10px;height:10px}.vs-dots i.on{opacity:1;background:currentColor}.vs-mid{padding:0 14px}.vs-score{letter-spacing:.04em;font-size:26px}.vs-rope{background:linear-gradient(90deg, var(--signal-ink) 0 3px, #16181c24 3px calc(100% - 3px), var(--ink) calc(100% - 3px));grid-column:1/-1;height:6px;position:relative}.vs-rope i{background:var(--ink);width:4px;height:14px;box-shadow:0 0 0 2px var(--paper);transition:left .15s linear;position:absolute;top:-4px;transform:translate(-50%)}.hud-clock{right:var(--gutter);top:calc(16px + env(safe-area-inset-top,0px));color:var(--paper);text-align:right;background:#16181ce6;padding:8px 16px 10px;display:grid;position:absolute}.hud-clock .mono{opacity:.6;font-size:10px}.hud-clock .dots{font-size:40px;line-height:1}.hud-clock .dot-pt{font-size:32px}.hud-line{left:var(--gutter);bottom:calc(22px + env(safe-area-inset-bottom,0px));max-width:min(640px, calc(100vw - 2 * var(--gutter) - 300px));align-items:stretch;animation:.35s cubic-bezier(.2,.9,.2,1) line-in,.5s 5s forwards line-out;display:flex;position:absolute}.hud-line i{background:var(--signal);flex:none;width:6px}.hud-line span{background:var(--panel-solid);font-family:var(--font-display);padding:12px 16px;font-size:20px;font-weight:700;line-height:1.2}.hud-line-who{border:1px solid var(--signal);border-radius:var(--radius);color:var(--signal-ink);font:600 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;vertical-align:.2em;margin-right:10px;padding:3px 6px;display:inline-block}@keyframes line-in{0%{opacity:0;transform:translate(-16px)}}@keyframes line-out{to{opacity:0;transform:translate(-8px)}}.hud-course{right:var(--gutter);bottom:calc(76px + env(safe-area-inset-bottom,0px));gap:10px;width:260px;padding:10px 12px 14px;display:grid;position:absolute}.course-track{background:#16181c33;height:3px;position:relative}.course-dot{background:var(--ink);border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;transition:left .15s linear;position:absolute;top:50%}.course-dot.me{background:var(--signal);z-index:1}.hud-controls{right:var(--gutter);bottom:calc(22px + env(safe-area-inset-bottom,0px));gap:6px;display:flex;position:absolute}.hud-intro{left:var(--gutter);bottom:calc(40px + env(safe-area-inset-bottom,0px));gap:10px;max-width:560px;animation:.6s cubic-bezier(.2,.9,.2,1) intro-in;display:grid;position:absolute}.hud-intro .mono{background:var(--ink);color:var(--paper);justify-self:start;padding:6px 10px}.hud-intro h1{color:var(--ink);text-shadow:0 2px 24px #ece9e299;margin:0;font-size:clamp(48px,9vw,104px)}.hud-intro-names{flex-wrap:wrap;gap:6px;display:flex}.hud-intro-names span{background:var(--panel-solid);padding:6px 10px;font-weight:600}.hud-intro-names span.me{background:var(--signal);color:#fff}.hud-intro p{background:var(--panel);max-width:46ch;margin:0;padding:10px 12px}@keyframes intro-in{0%{opacity:0;transform:translateY(20px)}}.hud-count{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.hud-count .dots{color:var(--signal);text-shadow:0 6px 40px #0000002e;font-size:clamp(120px,26vw,300px);animation:.9s ease-out forwards count-pop}@keyframes count-pop{0%{opacity:0;transform:scale(1.4)}15%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:0;transform:scale(.92)}}.hud-card{text-align:center;justify-items:center;gap:8px;max-width:calc(100vw - 32px);padding:20px 26px;animation:.4s cubic-bezier(.2,.9,.2,1) card-in;display:grid;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.hud-card .display{font-size:clamp(32px,6vw,56px)}@keyframes card-in{0%{opacity:0;transform:translate(-50%,-40%)}}@media (max-width:760px){.hud-tower{width:200px}.tower-row{padding:6px 10px;font-size:13px}.hud-clock .dots{font-size:28px}.hud-course{display:none}.hud-line{max-width:calc(100vw - 2 * var(--gutter));bottom:calc(70px + env(safe-area-inset-bottom,0px))}.hud-line span{font-size:16px}.hud-versus{top:calc(70px + env(safe-area-inset-top,0px))}.vs-name{font-size:16px}.hud-intro{bottom:calc(80px + env(safe-area-inset-bottom,0px));right:var(--gutter)}.hud-intro h1{font-size:clamp(40px,12vw,64px)}}@media (max-width:400px){.hud-versus{top:calc(92px + env(safe-area-inset-top,0px))}}.hud-live{left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));pointer-events:auto;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:10px 12px;display:flex;position:absolute;transform:translate(-50%)}.coach-row,.cheer-row{align-items:center;gap:6px;display:flex}.chip.emoji{text-transform:none;letter-spacing:0;justify-content:center;min-width:42px;font-size:18px}.hud-cheers{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cheer-float{justify-items:center;font-size:34px;animation:2.6s ease-out forwards cheer-up;display:grid;position:absolute;bottom:120px}.cheer-float small{font:600 11px/1 var(--font-mono);background:var(--ink);color:var(--paper);padding:2px 5px}@keyframes cheer-up{0%{opacity:0;transform:translateY(0)scale(.6)}15%{opacity:1;transform:translateY(-30px)scale(1)}to{opacity:0;transform:translateY(-300px)}}.series-card{text-align:left;justify-items:stretch;min-width:min(420px,100vw - 32px)}.series-table{gap:4px;margin:0;padding:0;list-style:none;display:grid}.series-table li{border:1px solid var(--line);background:#fff;grid-template-columns:28px 1fr auto 56px;align-items:center;gap:10px;padding:8px 10px;font-weight:600;display:grid}.series-table li.me{background:var(--signal);color:#fff;border-color:var(--signal)}.series-table li.me .muted{color:#fffc}.series-table .dots{text-align:right;font-size:18px}.tower-val.tower-note{letter-spacing:.06em;text-transform:uppercase;opacity:.8;font-size:10px}.results{padding:calc(16px + env(safe-area-inset-top,0px)) var(--gutter) calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none;background:linear-gradient(90deg,#0000 40%,#ece9e28c);place-items:center end;display:grid;position:fixed;inset:0}.results-card{pointer-events:auto;background:var(--panel-solid);gap:14px;width:min(460px,100%);max-height:100%;padding:22px;animation:.45s cubic-bezier(.2,.9,.2,1) res-in;display:grid;overflow-y:auto}@keyframes res-in{0%{opacity:0;transform:translate(24px)}}.results-card h1{margin:0;font-size:clamp(40px,5vw,64px)}.results-card h1.win{color:var(--signal-ink)}.results-score{font-size:34px}.results-stars{gap:8px;margin:0;padding:0;list-style:none;display:grid}.results-stars li{opacity:.5;align-items:center;gap:10px;font-weight:600;display:flex}.results-stars li i{border:2px solid var(--ink);flex:none;width:16px;height:16px;transform:rotate(45deg)}.results-stars li.got{opacity:1;animation:.5s cubic-bezier(.3,1.6,.4,1) both star-pop}.results-stars li.got i{background:var(--signal);border-color:var(--signal)}.new-tag{background:var(--signal-ink);color:#fff;padding:2px 6px}@keyframes star-pop{0%{opacity:0;transform:scale(.6)}}.results-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.results-table td{border-top:1px solid var(--line);padding:8px 6px;font-weight:600}.results-table td.dots{font-size:16px}.results-table td:last-child{text-align:right}.results-table tr.me td{background:#ff5f1f1a}.reason{margin:0;font-size:14px}.why{gap:4px;margin:0;padding-left:18px;font-size:14px;display:grid}.results-actions{flex-wrap:wrap;gap:8px;display:flex}.results-actions .go{white-space:nowrap;flex:100%}.home-link{justify-self:start}@media (max-width:760px){.results{background:linear-gradient(#0000 30%,#ece9e2b3);place-items:end stretch}.results-card{width:auto;max-height:70vh}}.social{border-top:1px solid var(--line);gap:8px;padding-top:12px;display:grid}.verdict{font-family:var(--font-display);margin:0;font-size:20px;font-weight:700}.results-card .results-actions{background:var(--panel-solid);margin-bottom:-10px;padding-block:10px;position:sticky;bottom:-22px}@media (max-height:500px) and (orientation:landscape){.results{place-items:stretch end}.results-card{gap:8px;width:min(520px,64vw);max-height:calc(100vh - 16px);padding:14px 16px}.results-card h1{font-size:30px}.results-stars{gap:4px}.results-stars li{gap:8px;font-size:13px}.results-stars li i{width:11px;height:11px}.results-table td{padding:4px 6px;font-size:14px}.results-card .reason{font-size:12px}.results-card .results-actions{flex-wrap:nowrap;padding-block:8px;bottom:-14px}.results-actions .btn{min-height:40px;padding:0 10px;font-size:11px}.results-actions .go{flex:auto;min-height:40px;font-size:17px}}.best-line{margin:0;font-size:14px;font-weight:600}@media (max-width:400px){.results-actions .btn{letter-spacing:.04em;flex:1 1 0;min-width:0;padding:0 6px;font-size:10px}}.brief{padding:calc(16px + env(safe-area-inset-top,0px)) var(--gutter) calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none;grid-template-columns:minmax(320px,440px) 1fr;gap:16px;display:grid;position:fixed;inset:0}.brief-info{pointer-events:auto;align-content:start;gap:14px;padding:20px;display:grid;overflow-y:auto}.brief-top{align-items:center;gap:12px;display:flex}.brief-id{color:var(--signal-ink);font-size:22px}.brief-info h1{margin:2px 0 6px;font-size:clamp(34px,4vw,52px)}.brief-text{margin:0;font-size:16px}.brief-event{border-top:1px solid var(--line);gap:4px;padding-top:12px;display:grid}.brief-event p{color:var(--ink-2);margin:0;font-size:14px}.goals{gap:8px;margin:0;padding:0;list-style:none;display:grid}.goals li{align-items:center;gap:10px;font-weight:600;display:flex}.goals li i{border:2px solid var(--ink);flex:none;width:12px;height:12px;transform:rotate(45deg)}.goals li.done i{background:var(--signal);border-color:var(--signal)}.goals li.done span{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--signal);text-decoration-color:var(--signal)}.rivals{gap:6px;display:grid}.rival-row{flex-wrap:wrap;gap:6px;display:flex}.rival{border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;align-items:center;gap:8px;padding:6px 10px;font-size:14px;display:inline-flex}.rival-swatch{border:3px solid;border-radius:3px;flex:none;width:14px;height:14px}.tip{background:var(--ink);color:var(--paper);margin:0;padding:10px 12px;font-size:14px}.tip .mono{color:var(--signal);margin-right:6px}.brief-zook{grid-template-rows:1fr auto;gap:12px;min-height:0;display:grid;position:relative}.brief-view{min-height:200px}.rival-card{border:1px solid var(--line);pointer-events:none;background:#f6f4efe6;justify-items:start;gap:4px;width:220px;padding:12px 14px;animation:.4s fade;display:grid;position:absolute;top:0;right:0}.rival-card img,.rival-card-ph{object-fit:contain;width:192px;height:192px;transform:scaleX(-1)}.rival-card .vs{background:var(--ink);color:var(--paper);padding:3px 7px;font-size:11px}.rival-card-name{font-family:var(--font-display);font-size:22px;font-weight:800}.brief-pick{pointer-events:auto;justify-self:end;gap:10px;width:min(420px,100%);padding:14px;display:grid}.pick-head{justify-content:space-between;align-items:baseline;display:flex}.pick-head .dots{font-size:22px}.pick-head .dots.over{color:var(--signal-ink)}.pick-list{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.pick-item{appearance:none;border:1px solid var(--line-strong);border-radius:var(--radius);cursor:pointer;color:var(--ink);background:#fff;flex:none;align-items:center;gap:8px;padding:8px 10px;font-size:14px;font-weight:600;display:inline-flex}.pick-item[aria-selected=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.over-note{color:var(--signal-ink);margin:0;font-size:13px}.pick-actions{justify-content:flex-end;gap:8px;display:flex}.pick-actions .go{min-width:160px}@media (max-width:760px){.brief{grid-template-rows:28dvh minmax(0,1fr) auto;grid-template-columns:1fr;gap:10px}.brief-zook{display:contents}.brief-view{order:-1;min-height:0}.brief-info{gap:12px;min-height:0;padding:16px;overflow-y:auto}.brief-info h1{font-size:32px}.brief-pick{justify-self:stretch;width:auto;box-shadow:0 -8px 24px #14161a1f}.rival-card{top:calc(16px + env(safe-area-inset-top,0px));right:var(--gutter);gap:2px;width:112px;padding:6px 8px}.rival-card img,.rival-card-ph{width:96px;height:96px}.rival-card-name{font-size:15px}.rival-card .mono.muted{display:none}}@media (max-height:500px) and (orientation:landscape){.rival-card{display:none}.brief{grid-template-rows:none;grid-template-columns:minmax(280px,1fr) minmax(260px,360px);overflow:hidden}.brief-info{max-height:100%;overflow-y:auto}.brief-info h1{font-size:30px}.brief-zook{grid-template-rows:1fr auto}.brief-view{min-height:0}}.tut-backdrop{overscroll-behavior:contain;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(6px);pointer-events:auto;z-index:20;background:#ece9e2b8;animation:.3s fade;display:grid;position:fixed;inset:0;overflow-y:auto}.tut-pick{background:var(--panel-solid);gap:14px;width:min(760px,100%);margin:auto;padding:24px;display:grid}.tut-pick-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.tut-skip{white-space:nowrap;min-height:40px}.tut-pick h1{margin:0;font-size:clamp(34px,5vw,56px)}.tut-pick p{max-width:60ch;margin:0}.tut-starters{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.tut-starter{appearance:none;border:1px solid var(--line-strong);border-radius:var(--radius);text-align:left;cursor:pointer;color:var(--ink);background:#fff;gap:6px;padding:14px;transition:border-color .15s,transform .12s;display:grid}.tut-starter:hover{border-color:var(--ink);transform:translateY(-2px)}.tut-starter:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.tut-swatch{border:5px solid;border-radius:5px;width:26px;height:26px}.tut-name{font-family:var(--font-display);font-size:22px;font-weight:800}.tut-starter .mono{font-size:10px}.tut-ring{border:2px solid var(--signal);pointer-events:none;z-index:19;border-radius:6px;animation:1.4s ease-in-out infinite ring-pulse;position:fixed;top:0;left:0}@keyframes ring-pulse{50%{box-shadow:0 0 0 8px #ff5f1f2e}}.tut-mark{z-index:21;background:var(--ink);width:min(340px,100vw - 32px);color:var(--paper);border-color:var(--ink);pointer-events:auto;gap:6px;padding:14px 16px;display:grid;position:fixed;top:0;left:0}.tut-mark p{margin:0;font-size:15px;line-height:1.4}.tut-mark .mono.muted{color:#f6f4ef99}.tut-mark .btn.quiet{color:var(--paper);justify-self:start;min-height:30px;padding:0 8px}@media (max-width:760px){.tut-pick{gap:10px;padding:18px}.tut-pick h1{font-size:30px}.tut-starters{grid-template-columns:1fr;gap:8px}.tut-starter{grid-template-columns:76px 1fr;align-items:center;gap:2px 12px;padding:8px 10px}.tut-starter .zook-thumb{grid-row:span 3;width:76px!important;height:76px!important}.tut-name{font-size:19px}.tut-line{font-size:14px}}@media (max-height:500px) and (orientation:landscape){.tut-pick{gap:8px;width:min(820px,100%);padding:14px 16px}.tut-pick h1{font-size:26px}.tut-pick>p{display:none}.tut-starters{grid-template-columns:repeat(3,1fr)}.tut-starter{grid-template-columns:1fr;padding:8px}.tut-starter .zook-thumb{grid-row:auto;width:64px!important;height:64px!important}.tut-line{font-size:12px}}.tut-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tut-actions .go{min-height:44px;font-size:16px}.tut-taps{pointer-events:none;z-index:19;position:fixed;inset:0}.tut-tap{border:3px solid var(--signal);border-radius:50%;width:34px;height:34px;position:absolute;top:-17px;left:-17px;box-shadow:0 0 0 4px #ff5f1f40}@media (prefers-reduced-motion:no-preference){.tut-tap:after{content:"";border:3px solid var(--signal);border-radius:50%;animation:1.3s ease-out infinite tut-tap;position:absolute;inset:-3px}}@keyframes tut-tap{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}
