@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(../media/figtree-latin-ext-wght-normal.28krudoh3z7og.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(../media/figtree-latin-wght-normal.08sr_7r2rzxl4.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--color-bg:#0c0e12;--color-surface:#15171b;--color-raised:#1e2125;--color-text:#f0eeeb;--color-muted:#9da2a9;--color-faint:#858991;--color-line:#282b30;--color-accent:#67c377;--color-accent-text:#05190a;--color-accent-soft:#67c37724;--color-good:#5ecd97;--color-good-soft:#5ecd9721;--color-danger:#f6857a;--color-danger-soft:#f6857a21;--color-arrow:#eeb154e6;--color-draw-shift:#db423cd9;--color-draw-alt:#3284d0d9;--color-draw-ctrl:#36a558d9;--color-study:#eeb154;--color-study-ink:#251804;--color-w:#ebe7e0;--color-d:#7d8086;--color-b:#393d44;--color-w-text:#1f2227;--color-d-text:#f8f8f8;--color-b-text:#f3f2ee;--color-w-edge:transparent;--color-correct:#5ecd97;--color-correct-text:#051e12;--color-wrong:#ed756a;--q-brill:#2ad5e5;--q-good:#5dd68f;--q-dub:#e9d25b;--q-mist:#f98942;--q-blun:#f84b4b;--q-none:#393d44;--q-book:#d1a882;--q-ink:#090b0f;--shadow:0 1px 2px #00000059, 0 18px 40px -20px #000000b3;--shadow-sm:0 1px 2px #00000059, 0 6px 14px -8px #0009;--font-sans:"Figtree Variable", "Figtree", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, "Cascadia Code", Menlo, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.5rem;--leading-tight:1.2;--leading-body:1.5;--pawn-rise:5%;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--radius-sm:6px;--radius:9px;--radius-lg:12px;--radius-xl:16px;--topbar-h:58px;--duration-fast:.12s;--duration-base:.2s;--duration-slow:.4s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.2, 1.4, .4, 1);--ease-travel:cubic-bezier(.45, .05, .2, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@supports (color:lab(0% 0 0)){:root{--color-bg:lab(4.03813% -.203118 -2.03682);--color-surface:lab(7.74869% -.365473 -3.31107);--color-raised:lab(12.3828% -.425927 -3.68839);--color-text:lab(94.2205% .136048 1.90183);--color-muted:lab(66.3202% -.598967 -4.46944);--color-faint:lab(57.0398% -.591189 -4.46528);--color-line:lab(17.6039% -.445515 -3.69746);--color-accent:lab(71.5997% -40.9805 29.3379);--color-accent-text:lab(6.63212% -9.37265 5.6628);--color-accent-soft:lab(71.5997% -40.9805 29.3379/.14);--color-good:lab(75.0438% -42.9437 16.9162);--color-good-soft:lab(75.0438% -42.9437 16.9162/.13);--color-danger:lab(68.5213% 43.2546 26.5766);--color-danger-soft:lab(68.5213% 43.2546 26.5766/.13);--color-arrow:lab(76.7321% 16.4406 55.1357/.9);--color-draw-shift:lab(51.7326% 59.5451 39.6593/.85);--color-draw-alt:lab(52.9586% -5.05817 -47.1472/.85);--color-draw-ctrl:lab(60.123% -45.3517 29.9719/.85);--color-study:lab(76.7321% 16.4406 55.1357);--color-study-ink:lab(9.48874% 5.23462 12.7797);--color-w:lab(91.92% .288099 3.8142);--color-d:lab(53.5669% -.499904 -3.72492);--color-b:lab(25.7169% -.538856 -4.43898);--color-w-text:lab(12.9629% -.428468 -3.68954);--color-d-text:lab(97.68% -.0000298023 .0000119209);--color-b-text:lab(95.3805% .135958 1.90178);--color-correct:lab(75.0438% -42.9437 16.9162);--color-correct-text:lab(8.88869% -12.4446 4.9044);--color-wrong:lab(63.7748% 46.489 28.8968);--q-brill:lab(77.9251% -38.4876 -20.4923);--q-good:lab(77.5956% -47.6872 24.5692);--q-dub:lab(84.3871% -1.4753 60.3857);--q-mist:lab(68.879% 40.0643 56.0225);--q-blun:lab(58.4481% 66.3332 40.3256);--q-none:lab(25.7169% -.538856 -4.43898);--q-book:lab(72.0382% 11.3864 25.6459);--q-ink:lab(3.02674% -.179462 -2.15476);--shadow:0 1px 2px lab(0% 0 0/.35), 0 18px 40px -20px lab(0% 0 0/.7);--shadow-sm:0 1px 2px lab(0% 0 0/.35), 0 6px 14px -8px lab(0% 0 0/.6)}}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--color-bg:#f6f3ef;--color-surface:#fffdfb;--color-raised:#e4e6ea;--color-text:#15181e;--color-muted:#51565d;--color-faint:#5c6167;--color-line:#dfdcd7;--color-accent:#2a783c;--color-accent-text:#f8fef7;--color-accent-soft:#2a783c1c;--color-good:#007e50;--color-good-soft:#007e501a;--color-danger:#b02b27;--color-danger-soft:#b02b271a;--color-arrow:#b36300e0;--color-study:#c26e00;--color-study-ink:#fffbf5;--color-w:#fdfcf8;--color-d:#95989f;--color-b:#2a2e34;--color-w-edge:#dfdcd7;--color-correct:#007e50;--color-correct-text:#fcfcfc;--color-wrong:#ba2b28;--q-brill:#00839b;--q-good:#00884c;--q-dub:#ab8700;--q-mist:#c85d00;--q-blun:#c9222b;--q-none:#c7cbd1;--q-book:#946640;--q-ink:#fcfcfc;--shadow:0 1px 2px #392a1e14, 0 18px 40px -22px #392a1e4d;--shadow-sm:0 1px 2px #392a1e1a, 0 6px 14px -8px #392a1e40;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:lab(0% 0 0)){:root:not([data-theme=dark]){--color-bg:lab(95.9506% .51415 2.2173);--color-surface:lab(99.4255% .254244 1.10694);--color-raised:lab(91.2811% -.318259 -2.2452);--color-text:lab(8.31192% -.449821 -4.39982);--color-muted:lab(36.1502% -.638247 -5.18341);--color-faint:lab(40.7987% -.57137 -4.455);--color-line:lab(87.8338% .691831 2.96047);--color-accent:lab(44.6445% -35.2884 25.6243);--color-accent-text:lab(98.9695% -2.61486 2.4276);--color-accent-soft:lab(44.6445% -35.2884 25.6243/.11);--color-good:lab(46.0232% -43.8359 17.1638);--color-good-soft:lab(46.0232% -43.8359 17.1638/.1);--color-danger:lab(40.3167% 53.3957 36.3887);--color-danger-soft:lab(40.3167% 53.3957 36.3887/.1);--color-arrow:lab(50.6366% 31.4494 74.4591/.88);--color-study:lab(55.3033% 31.0317 68.4862);--color-study-ink:lab(98.8571% .868142 3.70275);--color-w:lab(98.8605% .13572 1.90164);--color-d:lab(62.8472% -.505805 -3.72814);--color-b:lab(18.7555% -.514135 -4.42746);--color-w-edge:lab(87.8338% .691831 2.96047);--color-correct:lab(46.0232% -43.8359 17.1638);--color-correct-text:lab(98.84% .0000298023 -.0000119209);--color-wrong:lab(42.5342% 56.5687 38.8104);--q-brill:lab(49.6826% -29.5577 -25.1473);--q-good:lab(49.5995% -45.1147 23.3324);--q-dub:lab(58.5139% 7.30592 70.4498);--q-mist:lab(52.4837% 44.002 70.9236);--q-blun:lab(44.6% 63.4109 40.4932);--q-none:lab(81.4077% -.514209 -3.73278);--q-book:lab(47.5252% 15.8575 29.3824);--q-ink:lab(98.84% .0000298023 -.0000119209);--shadow:0 1px 2px lab(18.7126% 5.66906 10.5547/.08), 0 18px 40px -22px lab(18.7126% 5.66906 10.5547/.3);--shadow-sm:0 1px 2px lab(18.7126% 5.66906 10.5547/.1), 0 6px 14px -8px lab(18.7126% 5.66906 10.5547/.25)}}}:root[data-theme=light]{--color-bg:#f6f3ef;--color-surface:#fffdfb;--color-raised:#e4e6ea;--color-text:#15181e;--color-muted:#51565d;--color-faint:#5c6167;--color-line:#dfdcd7;--color-accent:#2a783c;--color-accent-text:#f8fef7;--color-accent-soft:#2a783c1c;--color-good:#007e50;--color-good-soft:#007e501a;--color-danger:#b02b27;--color-danger-soft:#b02b271a;--color-arrow:#b36300e0;--color-study:#c26e00;--color-study-ink:#fffbf5;--color-w:#fdfcf8;--color-d:#95989f;--color-b:#2a2e34;--color-w-edge:#dfdcd7;--color-correct:#007e50;--color-correct-text:#fcfcfc;--color-wrong:#ba2b28;--q-brill:#00839b;--q-good:#00884c;--q-dub:#ab8700;--q-mist:#c85d00;--q-blun:#c9222b;--q-none:#c7cbd1;--q-book:#946640;--q-ink:#fcfcfc;--shadow:0 1px 2px #392a1e14, 0 18px 40px -22px #392a1e4d;--shadow-sm:0 1px 2px #392a1e1a, 0 6px 14px -8px #392a1e40;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:lab(0% 0 0)){:root[data-theme=light]{--color-bg:lab(95.9506% .51415 2.2173);--color-surface:lab(99.4255% .254244 1.10694);--color-raised:lab(91.2811% -.318259 -2.2452);--color-text:lab(8.31192% -.449821 -4.39982);--color-muted:lab(36.1502% -.638247 -5.18341);--color-faint:lab(40.7987% -.57137 -4.455);--color-line:lab(87.8338% .691831 2.96047);--color-accent:lab(44.6445% -35.2884 25.6243);--color-accent-text:lab(98.9695% -2.61486 2.4276);--color-accent-soft:lab(44.6445% -35.2884 25.6243/.11);--color-good:lab(46.0232% -43.8359 17.1638);--color-good-soft:lab(46.0232% -43.8359 17.1638/.1);--color-danger:lab(40.3167% 53.3957 36.3887);--color-danger-soft:lab(40.3167% 53.3957 36.3887/.1);--color-arrow:lab(50.6366% 31.4494 74.4591/.88);--color-study:lab(55.3033% 31.0317 68.4862);--color-study-ink:lab(98.8571% .868142 3.70275);--color-w:lab(98.8605% .13572 1.90164);--color-d:lab(62.8472% -.505805 -3.72814);--color-b:lab(18.7555% -.514135 -4.42746);--color-w-edge:lab(87.8338% .691831 2.96047);--color-correct:lab(46.0232% -43.8359 17.1638);--color-correct-text:lab(98.84% .0000298023 -.0000119209);--color-wrong:lab(42.5342% 56.5687 38.8104);--q-brill:lab(49.6826% -29.5577 -25.1473);--q-good:lab(49.5995% -45.1147 23.3324);--q-dub:lab(58.5139% 7.30592 70.4498);--q-mist:lab(52.4837% 44.002 70.9236);--q-blun:lab(44.6% 63.4109 40.4932);--q-none:lab(81.4077% -.514209 -3.73278);--q-book:lab(47.5252% 15.8575 29.3824);--q-ink:lab(98.84% .0000298023 -.0000119209);--shadow:0 1px 2px lab(18.7126% 5.66906 10.5547/.08), 0 18px 40px -22px lab(18.7126% 5.66906 10.5547/.3);--shadow-sm:0 1px 2px lab(18.7126% 5.66906 10.5547/.1), 0 6px 14px -8px lab(18.7126% 5.66906 10.5547/.25)}}.theme-dark{--color-bg:#0c0e12;--color-surface:#15171b;--color-raised:#1e2125;--color-text:#f0eeeb;--color-muted:#9da2a9;--color-faint:#858991;--color-line:#282b30;--color-accent:#67c377;--color-accent-text:#05190a;--color-accent-soft:#67c37724;--color-good:#5ecd97;--color-good-soft:#5ecd9721;--color-danger:#f6857a;--color-danger-soft:#f6857a21;--color-arrow:#eeb154e6;--color-study:#eeb154;--color-study-ink:#251804;--color-w:#ebe7e0;--color-d:#7d8086;--color-b:#393d44;--color-w-edge:transparent;--q-brill:#2ad5e5;--q-good:#5dd68f;--q-dub:#e9d25b;--q-mist:#f98942;--q-blun:#f84b4b;--q-none:#393d44;--q-book:#d1a882;--q-ink:#090b0f;--shadow:0 1px 2px #00000059, 0 18px 40px -20px #000000b3;--shadow-sm:0 1px 2px #00000059, 0 6px 14px -8px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--color-text)}@supports (color:lab(0% 0 0)){.theme-dark{--color-bg:lab(4.03813% -.203118 -2.03682);--color-surface:lab(7.74869% -.365473 -3.31107);--color-raised:lab(12.3828% -.425927 -3.68839);--color-text:lab(94.2205% .136048 1.90183);--color-muted:lab(66.3202% -.598967 -4.46944);--color-faint:lab(57.0398% -.591189 -4.46528);--color-line:lab(17.6039% -.445515 -3.69746);--color-accent:lab(71.5997% -40.9805 29.3379);--color-accent-text:lab(6.63212% -9.37265 5.6628);--color-accent-soft:lab(71.5997% -40.9805 29.3379/.14);--color-good:lab(75.0438% -42.9437 16.9162);--color-good-soft:lab(75.0438% -42.9437 16.9162/.13);--color-danger:lab(68.5213% 43.2546 26.5766);--color-danger-soft:lab(68.5213% 43.2546 26.5766/.13);--color-arrow:lab(76.7321% 16.4406 55.1357/.9);--color-study:lab(76.7321% 16.4406 55.1357);--color-study-ink:lab(9.48874% 5.23462 12.7797);--color-w:lab(91.92% .288099 3.8142);--color-d:lab(53.5669% -.499904 -3.72492);--color-b:lab(25.7169% -.538856 -4.43898);--q-brill:lab(77.9251% -38.4876 -20.4923);--q-good:lab(77.5956% -47.6872 24.5692);--q-dub:lab(84.3871% -1.4753 60.3857);--q-mist:lab(68.879% 40.0643 56.0225);--q-blun:lab(58.4481% 66.3332 40.3256);--q-none:lab(25.7169% -.538856 -4.43898);--q-book:lab(72.0382% 11.3864 25.6459);--q-ink:lab(3.02674% -.179462 -2.15476);--shadow:0 1px 2px lab(0% 0 0/.35), 0 18px 40px -20px lab(0% 0 0/.7);--shadow-sm:0 1px 2px lab(0% 0 0/.35), 0 6px 14px -8px lab(0% 0 0/.6)}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-base:0s;--duration-slow:0s}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scrollbar-color:var(--color-line) transparent;scrollbar-gutter:stable;scroll-padding-top:74px}html:has(.b3-canvas){overscroll-behavior-y:none}@media (display-mode:standalone){html{overscroll-behavior-y:none}body{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}}body{background:var(--color-bg);color:var(--color-text);font:var(--text-base) / var(--leading-body) var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}::selection{background:var(--color-accent-soft);color:var(--color-text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--color-line) padding-box;border:3px solid #0000;border-radius:99px}::-webkit-scrollbar-track{background:0 0}main{max-width:40rem;padding:var(--space-5) var(--space-3);margin:0 auto}h1{margin:0 0 var(--space-3);font-size:var(--text-xl);letter-spacing:-.015em;font-weight:700;line-height:var(--leading-tight);text-wrap:balance}h2{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-md);letter-spacing:-.01em;font-weight:700}a{color:var(--color-accent);text-underline-offset:.2em;text-decoration-thickness:1px}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}input,textarea{caret-color:var(--color-accent)}.num{font-variant-numeric:tabular-nums}.muted{color:var(--color-muted)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stack{gap:var(--space-3);display:grid}.license-text{padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-surface);font:.8rem / 1.5 var(--font-mono);white-space:pre-wrap;overflow-x:auto}.legal{padding-bottom:var(--space-5)}.legal p,.legal li{text-wrap:pretty}.legal ul{gap:var(--space-2);margin:var(--space-3) 0;padding-left:1.25rem;display:grid}.legal li::marker{color:var(--color-muted)}.legal .legal-date{margin-top:calc(-1 * var(--space-2));color:var(--color-muted);font-size:var(--text-sm)}.turn-upright{display:none}@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){.turn-upright{z-index:2147483000;background:var(--color-bg);color:var(--color-text);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:fixed;inset:0}.turn-upright p{font-weight:800;font-size:var(--text-base);margin:0}.turn-upright-icon{color:var(--color-accent);animation:2.4s ease-in-out infinite turn-upright-tip}}@keyframes turn-upright-tip{0%,20%{transform:rotate(-90deg)}60%,to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.turn-upright-icon{animation:none}}
.btn{border-radius:var(--radius);background:var(--color-raised);min-height:2.125rem;color:var(--color-text);font:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:0;justify-content:center;align-items:center;gap:6px;padding:7px 12px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn svg{flex:none;width:15px;height:15px}.btn:hover{background:color-mix(in oklab, var(--color-raised) 80%, var(--color-text))}.btn:active:not(:disabled){transform:scale(.97)}.btn[aria-busy=true],.btn[data-pending],a[data-pending]{cursor:progress;animation:pending-pulse 1.1s var(--ease-out) infinite alternate}@keyframes pending-pulse{to{opacity:.55}}.nav-progress{z-index:100;background:var(--color-accent);transform-origin:0;opacity:0;pointer-events:none;height:3px;transition:opacity var(--duration-base) var(--ease-out);position:fixed;inset:0 0 auto;transform:scaleX(0)}.nav-progress[data-busy]{opacity:1;transition-delay:.12s;animation:8s cubic-bezier(.1,.7,.2,1) .12s forwards nav-creep}@keyframes nav-creep{0%{transform:scaleX(.04)}to{transform:scaleX(.92)}}@media (prefers-reduced-motion:reduce){.btn:active:not(:disabled){transform:none}.nav-progress[data-busy]{opacity:.6;animation:none;transform:scaleX(1)}}.btn-sm{border-radius:var(--radius-sm);min-height:1.75rem;font-size:var(--text-xs);padding:4px 10px}.btn-sm svg{width:13px;height:13px}.btn-lg{min-height:2.5rem;font-size:var(--text-base);padding:.55rem 1rem}.btn-lg svg{width:17px;height:17px}.btn-xl{border-radius:var(--radius-lg);min-height:2.875rem;font-size:var(--text-base);padding:.65rem 1.1rem}.btn-xl svg{width:18px;height:18px}.btn-block{width:100%;display:flex}.btn-primary{background:var(--color-accent);color:var(--color-accent-text)}.btn-primary:hover{background:color-mix(in oklab, var(--color-accent) 88%, var(--color-text))}.on-tint .btn:not(.btn-primary){background:color-mix(in oklab, var(--color-text) 9%, transparent)}.on-tint .btn:not(.btn-primary):hover{background:color-mix(in oklab, var(--color-text) 15%, transparent)}.on-tint .btn-ghost:not(:hover){background:0 0}.btn-ghost{color:var(--color-muted);background:0 0}.btn-ghost:hover{background:var(--color-raised);color:var(--color-text)}.btn-danger{background:var(--color-danger-soft);color:var(--color-danger)}.btn-danger:hover{background:color-mix(in oklab, var(--color-danger) 22%, transparent)}.btn-ghost.btn-danger{background:0 0}.btn-ghost.btn-danger:hover{background:var(--color-danger-soft)}.btn-icon{min-width:2.125rem;padding:0}.btn-icon.btn-sm{min-width:1.75rem}.btn-icon.btn-lg{min-width:2.5rem}.btn-icon.btn-xl{min-width:2.875rem}.btn-toggle[aria-pressed=true]{background:var(--on,var(--color-accent));color:var(--on-ink,var(--color-accent-text))}.btn-toggle[aria-expanded=true]{background:color-mix(in oklab, var(--color-raised) 80%, var(--color-text))}.btn-toggle[aria-pressed=true]:hover{background:color-mix(in oklab, var(--on,var(--color-accent)) 88%, var(--color-text))}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn:disabled:hover{background:var(--color-raised)}.btn-primary:is(:disabled,[aria-disabled=true]):not([aria-busy=true]){opacity:1;background:var(--color-raised);color:var(--color-faint)}.btn-primary:disabled:not([aria-busy=true]):hover{background:var(--color-raised)}.btn-primary[aria-busy=true]:disabled:hover{background:var(--color-accent)}.btn-ghost:disabled:hover{color:var(--color-muted);background:0 0}.btn[aria-busy=true]{cursor:progress}.fab{right:max(16px, env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:30;background:var(--color-accent);min-width:3.5rem;height:3.5rem;color:var(--color-accent-text);font:inherit;box-shadow:var(--shadow);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);border:0;border-radius:99px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex;position:fixed}.fab:hover{background:color-mix(in oklab, var(--color-accent) 88%, var(--color-text))}.fab svg{flex:none;width:22px;height:22px}.fab-static{position:static}@media (max-width:640px){.fab:not(.fab-static){bottom:calc(60px + 16px + env(safe-area-inset-bottom))}}.updated-prompt{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:70;background:var(--color-surface);max-width:calc(100vw - 32px);color:var(--color-text);font-size:var(--text-sm);box-shadow:var(--shadow);animation:updated-in var(--duration-base) var(--ease-out);border-radius:99px;align-items:center;gap:14px;padding:8px 8px 8px 18px;font-weight:600;display:flex;position:fixed;transform:translate(-50%)}@keyframes updated-in{0%{opacity:0;transform:translate(-50%,8px)}}@media (max-width:640px){.updated-prompt{bottom:calc(60px + 16px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.updated-prompt{animation:none}}.btn-delete:hover{background:var(--color-danger-soft);color:var(--color-danger)}.seg{background:var(--color-raised);border:0;border-radius:11px;justify-self:start;gap:2px;min-inline-size:0;margin:0;padding:4px;display:inline-flex}.seg button,.seg label{min-height:1.875rem;color:var(--color-muted);font:inherit;font-size:var(--text-sm);text-align:center;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:5px 12px;font-weight:600;display:inline-flex;position:relative}.seg button:hover,.seg label:hover{color:var(--color-text)}.seg button:disabled{color:var(--color-muted);opacity:.45;cursor:not-allowed}.seg button[aria-pressed=true],.seg button[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #392a1e29;box-shadow:0 1px 2px lab(18.7126% 5.66906 10.5547/.16)}.seg label:has(input:checked){background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #392a1e29;box-shadow:0 1px 2px lab(18.7126% 5.66906 10.5547/.16)}.theme-dark .seg button[aria-pressed=true],.theme-dark .seg button[aria-selected=true]{background:var(--color-text);color:var(--color-bg);box-shadow:none}.theme-dark .seg label:has(input:checked){background:var(--color-text);color:var(--color-bg);box-shadow:none}.seg label:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.seg input{opacity:0;pointer-events:none;position:absolute}.seg-sm{border-radius:10px;padding:3px}.seg-sm button,.seg-sm label{min-height:1.625rem;font-size:var(--text-xs);padding:3px 10px}.seg-block{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;justify-self:stretch;display:grid}.seg-block:has(>label:nth-of-type(4),>button:nth-of-type(4)){grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.seg-block button,.seg-block label{min-height:2.125rem}.choices{border:0;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:6px;min-width:0;margin:0;padding:0;display:grid}.choices>legend{margin-bottom:var(--space-2);padding:0;font-weight:600}.choices-stack{grid-template-columns:minmax(0,1fr)}.choice{border-radius:var(--radius);background:var(--color-raised);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);grid-template-columns:minmax(0,1fr);align-content:start;gap:1px;padding:10px 12px;display:grid;position:relative}.choice:hover{background:color-mix(in oklab, var(--color-raised) 85%, var(--color-text))}.choice:has(input:checked){background:var(--color-accent);color:var(--color-accent-text)}.choice:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.choice:has(input:disabled){cursor:not-allowed;opacity:.5}.choice:has(input:disabled):hover{background:var(--color-raised)}.choice input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;inset:0}.choice-name{min-width:0;font-size:var(--text-sm);justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex}.choice-meta{color:var(--color-muted);font-size:var(--text-xs)}.choice:has(input:checked) .choice-meta{color:color-mix(in oklab, var(--color-accent-text) 85%, transparent)}.choice:has(input:checked) .chip{background:var(--color-accent-text);color:var(--color-accent)}.choice-art{border-radius:var(--radius-sm);justify-content:center;min-width:0;margin-bottom:6px;display:flex;overflow:hidden}@media (max-width:640px){.choices:not(.choices-stack){grid-template-columns:1fr 1fr}}a.choice{color:inherit;text-decoration:none}a.choice:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}a.choice:active{transform:scale(.985)}.choices-lg{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:12px}.choices-lg>.choice{border-radius:var(--radius-lg);transition:background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);gap:4px;padding:14px 14px 18px}.choices-lg .choice-art{margin-bottom:10px}.choices-lg .choice-name{font-size:var(--text-lg);letter-spacing:-.01em}.choices-lg .choice-meta{font-size:var(--text-sm);line-height:1.45}@media (max-width:640px){.choices.choices-lg{grid-template-columns:minmax(0,1fr);gap:8px}.choices-lg>.choice{grid-template-columns:6.5rem minmax(0,1fr);align-items:center;column-gap:14px;padding:10px 14px 10px 10px}.choices-lg .choice-art{grid-row:1/span 2;margin:0}.choices-lg .choice-name{align-self:end}.choices-lg .choice-meta{align-self:start}}.paste{grid-template-columns:minmax(0,1fr) clamp(260px,30vw,380px);align-items:start;gap:40px;display:grid}.paste-field{gap:8px;min-width:0;display:grid}.paste-label{font-size:var(--text-md);font-weight:700}.paste-text.input{width:100%;height:auto;min-height:18rem;font-size:var(--text-base);padding:14px 16px;line-height:1.5}.paste-under{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;display:flex}.paste-hint{flex:20rem;max-width:62ch;margin:0;line-height:1.45}.paste-preview{top:calc(var(--topbar-h,58px) + 16px);gap:12px;min-width:0;display:grid;position:sticky}.paste-board{min-width:0}.paste-board .cb-thumb{border-radius:var(--radius-sm)}.paste[data-state=idle] .paste-board,.paste[data-state=bad] .paste-board{opacity:.55}.paste[data-state=good] .paste-board .p{animation:paste-in var(--duration-slow) var(--ease-spring) both}@keyframes paste-in{0%{opacity:0;transform:translateY(-14%)scale(.85)}}.paste-status{gap:6px;min-height:2.75rem;display:grid}.paste-line{font-size:var(--text-sm);align-items:flex-start;gap:8px;margin:0;font-weight:600;line-height:1.4;display:flex}.paste-quiet{color:var(--color-muted);font-weight:500}.paste-bad{color:var(--color-danger)}.paste-mark{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.paste[data-state=good] .paste-line .paste-mark{color:var(--color-good)}.paste-players{gap:2px;margin:0;font-weight:700;display:grid}.paste-players>span{align-items:center;gap:7px;min-width:0;display:inline-flex}.paste-rating{color:var(--color-muted);font-weight:600}.paste-facts{color:var(--color-muted);font-size:var(--text-sm);margin:0}.paste-preview>.btn{width:100%}@media (max-width:900px){.paste{grid-template-columns:minmax(0,1fr);gap:18px}.paste-text.input{min-height:10rem}.paste-preview{grid-template-columns:7.5rem minmax(0,1fr);align-items:start;column-gap:14px;position:static}.paste-board{grid-row:span 2}.paste-preview>.btn{grid-column:1/-1}}.page-bar{min-height:2.5rem;margin-bottom:var(--space-2);flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}main:has(>.page-bar:first-child){padding-top:var(--space-3)}.page-bar-back{min-width:0;max-width:min(44vw,220px);margin-left:-8px;padding-inline:6px 10px}.page-bar-back svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.page-bar-back span{text-overflow:ellipsis;min-width:0;overflow:hidden}.page-bar-title{font-size:var(--text-lg);letter-spacing:-.02em;font-weight:900;line-height:var(--leading-tight);margin:0 8px 0 0}.page-bar-main,.page-bar-end{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.page-bar-end{margin-left:auto}.sidemark{stroke-width:1.5px;stroke-linejoin:round;flex:none}.sidemark[data-color=w]{fill:var(--color-w);stroke:color-mix(in oklab, var(--color-text) 55%, transparent)}.sidemark[data-color=b]{fill:var(--color-b);stroke:color-mix(in oklab, var(--color-b) 70%, var(--color-text))}.chips{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.chip{background:var(--color-raised);color:var(--color-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:99px;flex:none;align-items:center;gap:5px;padding:2px 9px;font-weight:600;line-height:1.5;display:inline-flex}.chip[data-tone=strong]{color:var(--color-text)}.chip[data-tone=accent]{background:var(--color-accent-soft);color:var(--color-accent)}.chip[data-tone=good]{background:var(--color-good-soft);color:var(--color-good)}.chip[data-tone=danger]{background:var(--color-danger-soft);color:var(--color-danger)}.chip[data-solid]{background:var(--color-text);color:var(--color-bg)}.chip[data-solid][data-tone=accent]{background:var(--color-accent);color:var(--color-accent-text)}.provisional{white-space:nowrap;vertical-align:middle;flex:none;align-items:center;gap:6px;display:inline-flex}.provisional-count{color:var(--color-faint);font-size:var(--text-xs);font-weight:600}.chip-toggle{background:var(--color-raised);max-width:100%;min-height:2rem;color:var(--color-muted);font:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border:0;border-radius:99px;align-items:center;gap:6px;padding:5px 12px;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.chip-toggle:hover{color:var(--color-text)}.chip-toggle input{opacity:0;pointer-events:none;position:absolute}.chip-toggle[aria-pressed=true],.chip-toggle[aria-current=page]{background:var(--color-accent);color:var(--color-accent-text)}.chip-toggle:has(input:checked){background:var(--color-accent);color:var(--color-accent-text)}.chip-toggle:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.chip-toggle:has(input:disabled){opacity:.6;cursor:not-allowed}.chip-remove{background:var(--color-raised);min-height:1.75rem;color:var(--color-text);font-size:var(--text-sm);border-radius:99px;align-items:center;gap:2px;padding:2px 2px 2px 10px;font-weight:600;display:inline-flex}.chip-remove button{width:1.5rem;height:1.5rem;color:var(--color-faint);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.chip-remove button:hover{background:color-mix(in oklab, var(--color-raised) 75%, var(--color-text));color:var(--color-text)}.chip-remove svg{width:12px;height:12px}.count{background:var(--color-accent);min-width:1.25rem;height:1.25rem;color:var(--color-accent-text);font-variant-numeric:tabular-nums;border-radius:99px;place-items:center;padding:0 6px;font-size:11px;font-weight:700;line-height:1;display:inline-grid}.chip-toggle .count{background:color-mix(in oklab, currentColor 16%, transparent);color:inherit}.sym{color:var(--q,var(--color-text));font-weight:900}.sym-pill{background:var(--q,var(--q-none));min-height:22px;color:var(--q-ink);font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-weight:900;display:inline-flex}.sym-pill b{opacity:.75;font-weight:800}[data-q=brill]{--q:var(--q-brill)}[data-q=good]{--q:var(--q-good)}[data-q=dub]{--q:var(--q-dub)}[data-q=mist]{--q:var(--q-mist)}[data-q=blun]{--q:var(--q-blun)}[data-q=book]{--q:var(--q-book)}.field label{margin-bottom:var(--space-1);font-weight:600;display:block}.field-hint{margin:var(--space-1) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.field input,.input,.select{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);width:100%;min-height:2.5rem;color:inherit;font:inherit;transition:border-color var(--duration-fast) var(--ease-out);padding:.55rem .75rem}.select{appearance:none;width:auto;font-size:var(--text-sm);cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:right 15px center,right 10px center;background-repeat:no-repeat;background-size:5px 5px;padding-right:2rem;font-weight:600}.input-sm,.select.input-sm{min-height:2.125rem;font-size:var(--text-sm);padding-top:.35rem;padding-bottom:.35rem}.field input:hover,.input:hover,.select:hover{border-color:color-mix(in oklab, var(--color-line) 60%, var(--color-muted))}.field input:focus-visible,.input:focus-visible,.select:focus-visible{outline:2px solid var(--color-accent);outline-offset:0;border-color:#0000}div.input:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:0;border-color:#0000}.select option{background:var(--color-surface);color:var(--color-text)}.input[aria-invalid=true]{border-color:var(--color-danger)}.input-grow{field-sizing:content;resize:none;line-height:1.45}.field-count{color:var(--color-faint);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.field-count[data-full]{color:var(--color-danger)}.code-field{width:100%;max-width:22rem;position:relative}.code-field>.code-input,.field .code-field>.code-input{z-index:1;color:#0000;-webkit-text-fill-color:transparent;caret-color:#0000;cursor:text;background:0 0;border:0;outline:none;width:100%;height:100%;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.code-field>.code-input::selection{color:#0000;background:0 0}.code-cells{grid-template-columns:repeat(3,1fr) 6px repeat(3,1fr);gap:8px;display:grid}.code-cell:nth-child(4){grid-column:5}.code-cell{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);height:3.5rem;color:var(--color-text);transition:border-color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);place-items:center;font-size:1.625rem;font-weight:700;line-height:1;display:grid;position:relative}.code-field:hover .code-cell{border-color:color-mix(in oklab, var(--color-line) 60%, var(--color-muted))}.code-cell[data-at]{outline:2px solid var(--color-accent);outline-offset:0;border-color:#0000}.code-cell[data-at]:not([data-filled]):after{content:"";background:var(--color-accent);border-radius:1px;width:2px;height:1.5rem}.code-field[data-invalid] .code-cell{border-color:var(--color-danger)}.code-field[data-invalid] .code-cell[data-at]{outline-color:var(--color-danger)}.code-field[data-busy] .code-cell{color:var(--color-muted)}@media (prefers-reduced-motion:no-preference){.code-cell[data-at]:not([data-filled]):after{animation:1.1s step-end infinite code-caret}.code-cell[data-filled]{animation:code-digit .16s var(--ease-out)}.code-field[data-invalid] .code-cells{animation:code-nudge .32s var(--ease-out)}}@keyframes code-caret{50%{opacity:0}}@keyframes code-digit{0%{background-color:color-mix(in oklab, var(--color-bg) 70%, var(--color-text))}}@keyframes code-nudge{20%{translate:-5px}45%{translate:4px}70%{translate:-2px}}.combo{width:min(100%,17rem);position:relative}.combo .input{text-overflow:ellipsis;padding-left:2.4rem;padding-right:2.4rem}.combo-flag{font-family:"Twemoji Country Flags", var(--font-sans);width:1.25rem;height:1.25rem;color:var(--color-faint);pointer-events:none;place-items:center;font-size:1.125rem;line-height:1;display:grid;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.combo .combo-flag svg{width:16px;height:16px}.combo-clear{position:absolute;top:50%;right:6px;transform:translateY(-50%)}.combo-pop{z-index:20;border-radius:var(--radius-lg);background:var(--color-surface);width:max(100%,17rem);box-shadow:var(--shadow);animation:combo-open var(--duration-fast) var(--ease-out);padding:6px;position:absolute;top:calc(100% + 6px);left:0}@keyframes combo-open{0%{opacity:0;transform:translateY(-4px)}}.combo-options{gap:1px;display:grid}.combo-option{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;min-height:2.25rem;padding:6px 10px;display:flex}.combo-option[aria-selected=true]{background:var(--color-raised)}.combo-option span{font-family:"Twemoji Country Flags", var(--font-sans);font-size:1.125rem;line-height:1}.combo-none,.combo-more{color:var(--color-muted);font-size:var(--text-sm);margin:0;padding:6px 10px}.combo-more{border-top:1px solid var(--color-line);margin-top:4px}.panel{gap:var(--space-2);border-radius:var(--radius-lg);background:var(--color-raised);padding:14px;display:grid}.panel .seg{background:var(--color-bg)}.popover{border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow);border:0;margin:0;padding:14px;position:fixed;inset:auto}.popover:popover-open{gap:8px;display:grid}.menu{width:220px;padding:6px}.menu-static{align-content:start;gap:0;display:grid}.menu:popover-open{align-content:start;gap:0;display:grid}.menu-static{position:static}.menu-group{border:0;align-content:start;gap:1px;min-width:0;margin:0;padding:0;display:grid}.menu-group+.menu-group{border-top:1px solid var(--color-line);margin-top:6px;padding-top:6px}.menu-item{border-radius:var(--radius-sm);min-height:2rem;color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-weight:600;text-decoration:none;display:flex}.menu-item:hover{background:var(--color-raised)}.menu-item-lg{min-height:2.5rem;padding:9px 10px}.menu-item:disabled{color:var(--color-muted);cursor:progress}.menu-item[data-tone=danger]{color:var(--color-danger)}.menu-item[aria-pressed=true]:after,.menu-item[aria-checked=true]:after{content:"";border:solid var(--color-accent);border-width:0 2px 2px 0;width:5px;height:10px;margin-right:3px;transform:rotate(45deg)translate(-1px,-1px)}.tip{z-index:60;background:var(--color-text);max-width:270px;color:var(--color-bg);font-size:var(--text-xs);pointer-events:none;opacity:0;transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border-radius:8px;padding:7px 10px;font-weight:600;line-height:1.35;position:fixed;transform:translateY(4px)}.tip.on{opacity:1;transform:none}.tip b{font-weight:900}.alert{justify-content:space-between;align-items:center;gap:var(--space-2);border-radius:var(--radius);background:var(--color-danger-soft);color:var(--color-text);font-size:var(--text-sm);margin:0;padding:8px 10px 8px 12px;display:flex}.message{color:var(--color-muted);margin:0}.message[data-tone=error]{color:var(--color-danger)}.empty{justify-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-3);color:var(--color-muted);text-align:center;display:grid}.empty strong{color:var(--color-text);font-size:var(--text-md)}.divider{align-items:center;gap:var(--space-3);color:var(--color-muted);display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--color-line);flex:1}.spinner{border:2px solid var(--color-line);border-top-color:var(--color-accent);border-radius:50%;width:.9rem;height:.9rem;animation:.8s linear infinite spin}@media (prefers-reduced-motion:reduce){.spinner{border-top-color:var(--color-line);border-right-color:var(--color-accent);animation:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes squash-select{0%{transform:scale(.9,1.1)}55%{transform:scale(1.06,.95)}to{transform:none}}.btn-mark{position:relative}.btn-mark svg{transition:transform var(--duration-base) var(--ease-spring), color var(--duration-fast) var(--ease-out)}.btn-mark:hover svg{transform:scale(1.12)}.btn-mark[data-mark=share]{--on:var(--color-accent);--on-ink:var(--color-accent-text)}.btn-mark[data-mark=share]:hover svg{transform:scale(1.12)rotate(-14deg)}.btn-mark[data-mark=download]:hover svg{transform:translateY(2px)}.btn-mark[data-mark=download][data-busy] svg{animation:btn-dl-busy .9s var(--ease-out) infinite}@keyframes btn-dl-busy{50%{transform:translateY(3px)}}.btn-mark[data-mark=study]{--on:var(--color-study);--on-ink:var(--color-study-ink)}.btn-mark[data-mark=fav]{--on:var(--q-dub);--on-ink:var(--q-ink)}.btn-mark[data-mark=good]{--on:var(--q-good);--on-ink:var(--q-ink)}.btn-mark[data-mark=bad],.btn-mark[data-mark=threat]{--on:var(--q-blun);--on-ink:var(--q-ink)}.btn-mark[data-mark=fav]:not([aria-pressed=true]):hover svg{color:var(--q-dub);fill:currentColor;transform:scale(1.18)rotate(-12deg)}.btn-mark[data-mark=good]:not([aria-pressed=true]):hover svg{color:var(--q-good);transform:scale(1.12)rotate(-8deg)}.btn-mark[data-mark=bad]:not([aria-pressed=true]):hover svg{color:var(--q-blun);transform:scale(1.12)rotate(8deg)}.btn-ghost.btn-mark[aria-pressed=true]{color:var(--on,var(--color-accent));background:0 0}.portrait{background:oklch(52% .075 var(--hue,260));color:oklch(97% .012 var(--hue,260));-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;font-weight:800;line-height:1;display:inline-grid;position:relative;overflow:hidden}.portrait-img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.portrait[data-engine]{background:#45484d;background:lab(30.3655% -.474572 -3.71171)}img.portrait{object-fit:cover}.pop{--s:var(--pop-s,64px);--k:1.3;width:var(--s);height:var(--s);flex:none;display:block;position:relative}.pop:before{content:"";background:color-mix(in oklab, var(--c) 46%, var(--color-surface));border-radius:50%;transition:box-shadow .2s;position:absolute;inset:0}.pop img,.pop .pop-art{height:calc(var(--s) * var(--k));transform-origin:50% 100%;width:auto;max-width:none;transition:transform .4s var(--ease-spring);-webkit-mask:radial-gradient(circle calc(var(--s) / 2) at 50% calc(100% - var(--s) / 2), #000 calc(100% - 1px), transparent 100%), linear-gradient(#000, #000) top / 100% calc(100% - var(--s) / 2) no-repeat;-webkit-mask:radial-gradient(circle calc(var(--s) / 2) at 50% calc(100% - var(--s) / 2), #000 calc(100% - 1px), transparent 100%), linear-gradient(#000, #000) top / 100% calc(100% - var(--s) / 2) no-repeat;mask:radial-gradient(circle calc(var(--s) / 2) at 50% calc(100% - var(--s) / 2), #000 calc(100% - 1px), transparent 100%), linear-gradient(#000, #000) top / 100% calc(100% - var(--s) / 2) no-repeat;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.pop .pop-art{width:calc(var(--s) * var(--k))}.pop[data-muted] img{filter:grayscale()brightness(.62);transition:filter .3s, transform .35s var(--ease-spring)}.pop-letter{font-size:calc(var(--s) * .44);color:var(--color-text);place-items:center;font-weight:800;line-height:1;display:grid;position:absolute;inset:0}.badge{width:max(20px, calc(var(--s) * .34));height:max(20px, calc(var(--s) * .34));box-shadow:0 0 0 3px var(--color-bg), 0 2px 8px #00000059;z-index:1;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-3px;right:-3px}@supports (color:lab(0% 0 0)){.badge{box-shadow:0 0 0 3px var(--color-bg), 0 2px 8px lab(0% 0 0/.35)}}.badge svg{width:62%;height:62%}.badge.beat{background:var(--color-good);color:var(--color-correct-text)}.badge.star{background:var(--cast-gold,#f4c352);color:var(--cast-gold-ink,#331f05)}@supports (color:lab(0% 0 0)){.badge.star{background:var(--cast-gold,lab(81.6622% 9.84526 61.7469));color:var(--cast-gold-ink,lab(14.0619% 7.9734 18.907))}}img.bust{--k:1.3;height:calc(var(--bust-h,270px) * var(--k) / 1.38);object-fit:contain;object-position:bottom;width:auto;max-width:92%}img.bust[data-state=wait],img.bust[data-state=failed]{opacity:0;translate:0 14px}img.bust[data-state=shown]{transition:opacity .45s var(--ease-out), translate .6s var(--ease-out), transform .55s var(--ease-out)}.bust-wait{width:min(92%, calc(var(--bust-h,270px) * .82));aspect-ratio:1;pointer-events:none;color:color-mix(in oklab, var(--c) 34%, var(--color-surface));animation:1.8s ease-in-out infinite bust-wait;position:absolute;bottom:0;left:50%;translate:-50%;-webkit-mask-image:linear-gradient(105deg,#000 30%,#0000008c 50%,#000 70%);mask-image:linear-gradient(105deg,#000 30%,#0000008c 50%,#000 70%);-webkit-mask-image:linear-gradient(105deg,#000 30%,lab(0% 0 0/.55) 50%,#000 70%);mask-image:linear-gradient(105deg,#000 30%,lab(0% 0 0/.55) 50%,#000 70%);-webkit-mask-size:300% 100%;mask-size:300% 100%}.bust-wait-art{fill:currentColor;width:100%;height:100%;display:block}@keyframes bust-wait{0%{-webkit-mask-position:100% 0;mask-position:100% 0}to{-webkit-mask-position:0 0;mask-position:0 0}}@media (prefers-reduced-motion:reduce){.bust-wait{animation:none;-webkit-mask-image:none;mask-image:none}img.bust[data-state]{transition:opacity .2s;translate:none}}.bust-drawn{height:calc(var(--bust-h,270px) * var(--k) / 1.38);aspect-ratio:1;max-width:92%;display:block}.bust-drawn .robot{width:100%;height:100%;display:block}.robot-eyes{transform-box:fill-box;transform-origin:50%;animation:5.2s infinite robot-blink}.robot-halo{transform-box:fill-box;transform-origin:50%;animation:robot-spark 2.6s var(--ease-out) infinite alternate}.robot-light{transition:fill .25s var(--ease-out)}@keyframes robot-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.12)}}@keyframes robot-spark{0%{transform:scale(.82)}to{transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.robot-eyes,.robot-halo{animation:none}}.bust-letter{width:min(100%, calc(var(--bust-h,270px) * .8));aspect-ratio:1;background:color-mix(in oklab, var(--c) 46%, var(--color-surface));color:var(--color-text);font-size:calc(var(--bust-h,270px) * .5);border-radius:50% 50% 0 0;place-items:end center;font-weight:800;line-height:1;display:grid}.confirm{border-radius:var(--radius-xl);background:var(--color-surface);width:min(100% - 32px,400px);max-width:none;color:var(--color-text);box-shadow:var(--shadow);border:0;padding:0}.confirm::backdrop{background:#0000008c;background:lab(0% 0 0/.55)}.confirm[open]{animation:confirm-in var(--duration-slow) var(--ease-out)}.confirm[open]::backdrop{animation:confirm-fade var(--duration-base) var(--ease-out)}.confirm-body{text-align:center;justify-items:center;gap:6px;padding:28px 22px 20px;display:grid}.confirm-media{animation:confirm-pop .55s var(--ease-spring) 60ms backwards;place-items:center;margin-bottom:8px;display:grid}.confirm-title{letter-spacing:-.015em;font-size:1.375rem;font-weight:800;line-height:var(--leading-tight);text-wrap:balance;margin:0}.confirm-text{width:100%;color:var(--color-muted);font-size:var(--text-sm);text-wrap:pretty;justify-items:center;gap:10px;display:grid}.confirm-text p{margin:0}.confirm-actions{grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:14px;display:grid}@keyframes confirm-in{0%{opacity:0;transform:translateY(10px)scale(.97)}}@keyframes confirm-fade{0%{opacity:0}}@keyframes confirm-pop{0%{opacity:0;transform:scale(.6)}}@media (max-width:640px){.confirm{border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;margin:auto 0 0}.confirm-body{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.confirm-actions .btn{min-height:3rem}.confirm[open]{animation-name:confirm-rise}}@keyframes confirm-rise{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.confirm[open],.confirm-media{animation:none}}.save-bar{bottom:calc(var(--tabbar-h,0px) + 12px);z-index:20;border-radius:var(--radius-lg);background:var(--color-raised);min-height:4rem;box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out), visibility 0s linear var(--duration-base);align-items:center;gap:12px;padding:12px 12px 12px 18px;display:flex;position:sticky;transform:translateY(12px)}.save-bar[data-shown]{opacity:1;visibility:visible;transition:opacity var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);transform:none}.save-bar-note{min-width:0;color:var(--color-muted);font-size:var(--text-sm);text-wrap:pretty;flex:1;align-items:center;gap:8px;margin:0;font-weight:600;line-height:1.3;display:flex}.save-bar-note[data-tone=error]{color:var(--color-danger)}.save-bar-note[data-tone=saved]{color:var(--color-text)}.save-bar-check{width:18px;height:18px;color:var(--color-good);animation:squash-select var(--duration-base) var(--ease-spring);flex:none}.save-bar-actions{flex:none;gap:8px;display:flex}.save-bar-actions[data-hidden]{visibility:hidden}.save-bar-actions .btn-primary{min-width:5.5rem}.save-bar-short{display:none}@media (max-width:640px){.save-bar{bottom:calc(var(--tabbar-h,0px) + 8px);gap:10px;padding:10px 10px 10px 14px}.save-bar-long{display:none}.save-bar-short{display:inline}.save-bar-actions .btn-primary{min-width:4.75rem}}.streak-days{gap:4px;margin:0;padding:0;list-style:none;display:flex}.streak-days li{justify-items:center;gap:4px;display:grid}.streak-days svg{background:var(--color-raised);fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;border-radius:5px;width:18px;height:18px}.streak-days[data-letters] svg{border-radius:6px;width:22px;height:22px}.streak-days li[data-mark=done] svg{background:var(--color-correct);color:var(--color-correct-text)}.streak-days li[data-mark=helped] svg{background:color-mix(in oklab, var(--color-correct) 16%, transparent);box-shadow:inset 0 0 0 1.75px var(--color-correct);color:var(--color-correct)}.streak-days li[data-mark=rest] svg{box-shadow:inset 0 0 0 1.5px var(--color-line);color:var(--color-faint);background:0 0}.streak-days li[data-mark=open] svg{outline:1.5px dashed var(--color-faint);outline-offset:-1.5px;background:0 0}.streak-days span{color:var(--color-faint);font-size:11px;font-weight:600;line-height:1}.streak-days li[data-today] span{color:var(--color-text)}.streak-tile{background:var(--color-raised);height:26px;color:var(--color-muted);font-size:var(--text-xs);white-space:nowrap;vertical-align:middle;border-radius:999px;flex:none;align-items:center;gap:5px;padding:0 9px 0 6px;font-weight:650;line-height:1;display:inline-flex}.streak-tile svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.streak-tile b{color:var(--color-text);font-weight:800}.streak-tile[data-state=done] svg{color:var(--color-good);stroke-width:1.9px}.streak-tile[data-state=done] svg circle{fill:color-mix(in oklab, var(--color-good) 18%, transparent)}.streak-tile[data-state=done]:not([data-help]) svg circle{fill:var(--color-correct);stroke:var(--color-correct)}.streak-tile[data-state=done]:not([data-help]) svg path{stroke:var(--color-correct-text);stroke-width:2.1px}.streak-tile[data-state=open] svg{stroke-dasharray:2.4 2.2}.streak-tile[data-state=open][data-risk]{color:var(--color-text)}.streak-week{gap:8px;min-width:0;display:grid}.streak-week-head{font-size:var(--text-sm);justify-content:space-between;align-items:baseline;gap:10px;margin:0;display:flex}.streak-week-name{color:var(--color-muted);font-weight:600}.streak-week-count{color:var(--color-faint);font-weight:600}.streak-week-count b{color:var(--color-text);font-size:var(--text-lg);font-weight:800}.bm{flex:none;width:4.25rem;height:4.25rem;display:block}.bm-ring{fill:var(--color-raised);stroke:var(--color-line);stroke-width:2px}.bm[data-earned] .bm-ring{stroke:var(--color-accent)}.bm-glyph{fill:none;stroke:var(--color-text);stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round}.bm-glyph .bm-fill{fill:var(--color-text);stroke:none}.bm-glyph .bm-knock{stroke:var(--color-raised);stroke-width:2.6px}.bm:not([data-earned]) .bm-glyph{opacity:.35}.bm:not([data-earned]) .bm-piece{opacity:.3;filter:grayscale()}.bm-pip{fill:none;stroke:var(--color-faint);stroke-width:1.5px}.bm-pip-on{fill:var(--color-accent);stroke:var(--color-accent)}.badge-landed{text-align:start;align-items:center;gap:10px;min-width:0;display:inline-flex}.badge-landed .bm{width:44px;height:44px}.badge-landed[data-size=line],.badge-landed[data-size=mark]{vertical-align:middle;gap:6px}.badge-landed[data-size=line] .bm,.badge-landed[data-size=mark] .bm{width:22px;height:22px}.badge-landed-text{min-width:0;font-size:var(--text-sm);gap:1px;display:grid}.badge-landed[data-size=line] .badge-landed-text{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.badge-landed-kicker,.badge-landed-desc{color:var(--color-muted)}@media (prefers-reduced-motion:no-preference){.badge-landed .bm{animation:badge-land .62s var(--ease-spring) var(--land-delay,0s) both}.badge-landed .bm-ring{stroke-dasharray:100;animation:badge-ring .7s var(--ease-out) calc(var(--land-delay,0s) + .12s) both}.badge-landed-text{animation:badge-text .36s var(--ease-out) calc(var(--land-delay,0s) + .26s) both}.streak-tile[data-fresh]{animation:badge-land .56s var(--ease-spring) both}}@keyframes badge-land{0%{opacity:0;scale:.4}60%{opacity:1;scale:1.12}to{scale:1}}@keyframes badge-ring{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes badge-text{0%{opacity:0;translate:-6px}}.confirm-actions-one{grid-template-columns:1fr}.install-steps{text-align:left;gap:8px;width:100%;margin:12px 0 0;padding:0;list-style:none;display:grid}.install-steps li{border-radius:var(--radius-lg);background:var(--color-raised);font-size:var(--text-sm);line-height:var(--leading-tight);text-wrap:pretty;grid-template-columns:40px 1fr;align-items:center;gap:12px;padding:10px 12px 10px 10px;display:grid}.install-glyph{color:var(--color-text);justify-self:center}.install-after{color:var(--color-muted);font-size:var(--text-sm);margin:10px 0 0}.offer{border-radius:var(--radius-lg);background:var(--color-raised);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:0;padding:10px 10px 10px 14px;display:flex}.offer-text{color:var(--color-text);font-size:var(--text-sm);text-wrap:pretty;flex:18rem;margin:0}.offer-text[role=alert]{color:var(--color-danger)}.offer-actions{gap:6px;display:flex}.offer-done{align-items:center;gap:10px;min-height:28px;display:flex}.offer-check{background:var(--color-accent);width:24px;height:24px;color:var(--color-accent-text);border-radius:50%;flex:none;padding:4px}@media (prefers-reduced-motion:no-preference){.offer-check{animation:offer-land .55s var(--ease-spring) both}}@keyframes offer-land{0%{opacity:0;transform:scale(.82)}60%{opacity:1;transform:scale(1.1)}}
