@layer tokens{:root{--mx-font-display:"Newsreader", Georgia, "Times New Roman", serif;--mx-font-body:"Schibsted Grotesk", system-ui, -apple-system, sans-serif;--mx-font-ui:"Schibsted Grotesk", system-ui, -apple-system, sans-serif;--mx-font-mono:"Spline Sans Mono", ui-monospace, "SF Mono", Menlo, monospace;--mx-font-math:"Newsreader", Georgia, "Times New Roman", serif;--mx-text-xs:.75rem;--mx-text-s:.875rem;--mx-text-m:clamp(1rem, .95rem + .25vw, 1.125rem);--mx-text-l:clamp(1.15rem, 1.05rem + .5vw, 1.35rem);--mx-text-xl:clamp(1.45rem, 1.3rem + .9vw, 1.9rem);--mx-text-2xl:clamp(1.9rem, 1.6rem + 1.6vw, 2.7rem);--mx-s1:.25rem;--mx-s2:.5rem;--mx-s3:.75rem;--mx-s4:1rem;--mx-s5:1.5rem;--mx-s6:2.25rem;--mx-s7:3.5rem;--mx-s8:5rem;--mx-radius-s:8px;--mx-radius-m:12px;--mx-radius-l:18px;--mx-measure:66ch;--mx-lane:11rem;--mx-flow:1.1em;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--mx-paper:#f5f2e9;--mx-surface:#fffef9;--mx-surface-2:#e7e3d7;--mx-ink:#212536;--mx-ink-2:#6c6f7b;--mx-ink-3:#9a9da8;--mx-line:#21253624;--mx-line-2:#2125364d;--mx-accent:#c94b1b;--mx-accent-ink:#8f340e;--mx-accent-hover:#a93a16;--mx-ember:#a97f2f;--mx-good:#33724c;--mx-bad:#b6143f;--mx-gold:#c3963b;--mx-accent-tint:#c94b1b14;--mx-accent-line:#c94b1b47;--mx-ember-tint:#a97f2f1a;--mx-ember-line:#a97f2f66;--mx-good-tint:#33724c17;--mx-good-line:#33724c52;--mx-bad-tint:#b6143f12;--mx-bad-line:#b6143f4d;--mx-grid-line:#2125360d;--mx-grid-size:28px;--mx-shadow-s:0 1px 2px #2125360d, 0 2px 8px #2125360d;--mx-shadow-m:0 2px 6px #21253612, 0 12px 32px -8px #2125361f;--mx-canvas-bg:#fffef9;--mx-canvas-grid:#2125360f;--mx-canvas-axis:#2125363d;--mx-canvas-primary:#c94b1b;--mx-canvas-secondary:#212536;--mx-canvas-accent:#33724c;--mx-canvas-highlight:#a97f2f;--mx-canvas-text:#212536;--mx-canvas-muted:#6c6f7b;--mx-canvas-danger:#b6143f;--mx-canvas-tertiary:#27709c;--mx-canvas-warning:#a97f2f}@supports (color:lab(0% 0 0)){:root{--mx-paper:lab(95.5422% -.145763 4.59052);--mx-surface:lab(99.5827% -.302404 2.65005);--mx-surface-2:lab(90.3481% -.177711 6.5237);--mx-ink:lab(14.9376% 1.98567 -11.6596);--mx-ink-2:lab(46.8554% .819057 -7.09232);--mx-ink-3:lab(64.7471% .542492 -6.00978);--mx-line:lab(14.9376% 1.98567 -11.6596/.14);--mx-line-2:lab(14.9376% 1.98567 -11.6596/.3);--mx-accent:lab(49.6463% 49.4044 52.6589);--mx-accent-ink:lab(35.2467% 38.0344 42.0547);--mx-accent-hover:lab(41.0375% 45.2527 45.3199);--mx-ember:lab(56.3097% 11.0564 48.2435);--mx-good:lab(43.1759% -28.5579 14.7064);--mx-bad:lab(39.8746% 61.4433 22.0487);--mx-gold:lab(65.3039% 10.6903 53.0736);--mx-accent-tint:lab(49.6463% 49.4044 52.6589/.08);--mx-accent-line:lab(49.6463% 49.4044 52.6589/.28);--mx-ember-tint:lab(56.3097% 11.0564 48.2435/.1);--mx-ember-line:lab(56.3097% 11.0564 48.2435/.4);--mx-good-tint:lab(43.1759% -28.5579 14.7064/.09);--mx-good-line:lab(43.1759% -28.5579 14.7064/.32);--mx-bad-tint:lab(39.8746% 61.4433 22.0487/.07);--mx-bad-line:lab(39.8746% 61.4433 22.0487/.3);--mx-grid-line:lab(14.9376% 1.98567 -11.6596/.05);--mx-shadow-s:0 1px 2px lab(14.9376% 1.98567 -11.6596/.05), 0 2px 8px lab(14.9376% 1.98567 -11.6596/.05);--mx-shadow-m:0 2px 6px lab(14.9376% 1.98567 -11.6596/.07), 0 12px 32px -8px lab(14.9376% 1.98567 -11.6596/.12);--mx-canvas-bg:lab(99.5827% -.302404 2.65005);--mx-canvas-grid:lab(14.9376% 1.98567 -11.6596/.06);--mx-canvas-axis:lab(14.9376% 1.98567 -11.6596/.24);--mx-canvas-primary:lab(49.6463% 49.4044 52.6589);--mx-canvas-secondary:lab(14.9376% 1.98567 -11.6596);--mx-canvas-accent:lab(43.1759% -28.5579 14.7064);--mx-canvas-highlight:lab(56.3097% 11.0564 48.2435);--mx-canvas-text:lab(14.9376% 1.98567 -11.6596);--mx-canvas-muted:lab(46.8554% .819057 -7.09232);--mx-canvas-danger:lab(39.8746% 61.4433 22.0487);--mx-canvas-tertiary:lab(44.2258% -11.0612 -31.3121);--mx-canvas-warning:lab(56.3097% 11.0564 48.2435)}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--mx-paper:#0e111b;--mx-surface:#1a1d2b;--mx-surface-2:#252939;--mx-ink:#eeebe3;--mx-ink-2:#a2a4ae;--mx-ink-3:#777a83;--mx-line:#eeebe326;--mx-line-2:#eeebe34d;--mx-accent:#ea6f3c;--mx-accent-ink:#f58f5d;--mx-accent-hover:#fc854f;--mx-ember:#d2a652;--mx-good:#5db37f;--mx-bad:#e75e6a;--mx-gold:#dfb866;--mx-accent-tint:#ea6f3c21;--mx-accent-line:#ea6f3c5c;--mx-ember-tint:#d2a6521f;--mx-ember-line:#d2a65266;--mx-good-tint:#5db37f1f;--mx-good-line:#5db37f57;--mx-bad-tint:#e75e6a1f;--mx-bad-line:#e75e6a57;--mx-grid-line:#eeebe30b;--mx-grid-size:28px;--mx-shadow-s:0 1px 2px #00000059, 0 2px 8px #0000004d;--mx-shadow-m:0 2px 6px #0006, 0 12px 32px -8px #00000080;--mx-canvas-bg:#1a1d2b;--mx-canvas-grid:#eeebe312;--mx-canvas-axis:#eeebe33d;--mx-canvas-primary:#ea6f3c;--mx-canvas-secondary:#d2cebf;--mx-canvas-accent:#5db37f;--mx-canvas-highlight:#d2a652;--mx-canvas-text:#eeebe3;--mx-canvas-muted:#a2a4ae;--mx-canvas-danger:#e75e6a;--mx-canvas-tertiary:#68a6d1;--mx-canvas-warning:#dfb866}@supports (color:lab(0% 0 0)){:root:not([data-theme=light]){--mx-paper:lab(5.12959% 1.04737 -7.2613);--mx-surface:lab(11.0268% 1.73904 -10.2017);--mx-surface-2:lab(16.8182% 1.73782 -10.9682);--mx-ink:lab(93.1009% -.136077 4.20632);--mx-ink-2:lab(67.4261% .542343 -5.25836);--mx-ink-3:lab(51.1777% .607997 -5.61919);--mx-line:lab(93.1009% -.136077 4.20632/.15);--mx-line-2:lab(93.1009% -.136077 4.20632/.3);--mx-accent:lab(61.6428% 45.969 50.7728);--mx-accent-ink:lab(70.0969% 36.4385 43.7355);--mx-accent-hover:lab(68.7194% 43.2147 49.7069);--mx-ember:lab(71.129% 9.74503 49.3807);--mx-good:lab(66.7078% -36.3832 18.7226);--mx-bad:lab(58.7387% 54.7355 22.372);--mx-gold:lab(76.9969% 7.60111 46.406);--mx-accent-tint:lab(61.6428% 45.969 50.7728/.13);--mx-accent-line:lab(61.6428% 45.969 50.7728/.36);--mx-ember-tint:lab(71.129% 9.74503 49.3807/.12);--mx-ember-line:lab(71.129% 9.74503 49.3807/.4);--mx-good-tint:lab(66.7078% -36.3832 18.7226/.12);--mx-good-line:lab(66.7078% -36.3832 18.7226/.34);--mx-bad-tint:lab(58.7387% 54.7355 22.372/.12);--mx-bad-line:lab(58.7387% 54.7355 22.372/.34);--mx-grid-line:lab(93.1009% -.136077 4.20632/.045);--mx-shadow-s:0 1px 2px lab(0% 0 0/.35), 0 2px 8px lab(0% 0 0/.3);--mx-shadow-m:0 2px 6px lab(0% 0 0/.4), 0 12px 32px -8px lab(0% 0 0/.5);--mx-canvas-bg:lab(11.0268% 1.73904 -10.2017);--mx-canvas-grid:lab(93.1009% -.136077 4.20632/.07);--mx-canvas-axis:lab(93.1009% -.136077 4.20632/.24);--mx-canvas-primary:lab(61.6428% 45.969 50.7728);--mx-canvas-secondary:lab(82.7067% -.181317 7.69537);--mx-canvas-accent:lab(66.7078% -36.3832 18.7226);--mx-canvas-highlight:lab(71.129% 9.74503 49.3807);--mx-canvas-text:lab(93.1009% -.136077 4.20632);--mx-canvas-muted:lab(67.4261% .542343 -5.25836);--mx-canvas-danger:lab(58.7387% 54.7355 22.372);--mx-canvas-tertiary:lab(65.1979% -11.7457 -28.5567);--mx-canvas-warning:lab(76.9969% 7.60111 46.406)}}}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--mx-paper:#0e111b;--mx-surface:#1a1d2b;--mx-surface-2:#252939;--mx-ink:#eeebe3;--mx-ink-2:#a2a4ae;--mx-ink-3:#777a83;--mx-line:#eeebe326;--mx-line-2:#eeebe34d;--mx-accent:#ea6f3c;--mx-accent-ink:#f58f5d;--mx-accent-hover:#fc854f;--mx-ember:#d2a652;--mx-good:#5db37f;--mx-bad:#e75e6a;--mx-gold:#dfb866;--mx-accent-tint:#ea6f3c21;--mx-accent-line:#ea6f3c5c;--mx-ember-tint:#d2a6521f;--mx-ember-line:#d2a65266;--mx-good-tint:#5db37f1f;--mx-good-line:#5db37f57;--mx-bad-tint:#e75e6a1f;--mx-bad-line:#e75e6a57;--mx-grid-line:#eeebe30b;--mx-grid-size:28px;--mx-shadow-s:0 1px 2px #00000059, 0 2px 8px #0000004d;--mx-shadow-m:0 2px 6px #0006, 0 12px 32px -8px #00000080;--mx-canvas-bg:#1a1d2b;--mx-canvas-grid:#eeebe312;--mx-canvas-axis:#eeebe33d;--mx-canvas-primary:#ea6f3c;--mx-canvas-secondary:#d2cebf;--mx-canvas-accent:#5db37f;--mx-canvas-highlight:#d2a652;--mx-canvas-text:#eeebe3;--mx-canvas-muted:#a2a4ae;--mx-canvas-danger:#e75e6a;--mx-canvas-tertiary:#68a6d1;--mx-canvas-warning:#dfb866}@supports (color:lab(0% 0 0)){html[data-theme=dark]{--mx-paper:lab(5.12959% 1.04737 -7.2613);--mx-surface:lab(11.0268% 1.73904 -10.2017);--mx-surface-2:lab(16.8182% 1.73782 -10.9682);--mx-ink:lab(93.1009% -.136077 4.20632);--mx-ink-2:lab(67.4261% .542343 -5.25836);--mx-ink-3:lab(51.1777% .607997 -5.61919);--mx-line:lab(93.1009% -.136077 4.20632/.15);--mx-line-2:lab(93.1009% -.136077 4.20632/.3);--mx-accent:lab(61.6428% 45.969 50.7728);--mx-accent-ink:lab(70.0969% 36.4385 43.7355);--mx-accent-hover:lab(68.7194% 43.2147 49.7069);--mx-ember:lab(71.129% 9.74503 49.3807);--mx-good:lab(66.7078% -36.3832 18.7226);--mx-bad:lab(58.7387% 54.7355 22.372);--mx-gold:lab(76.9969% 7.60111 46.406);--mx-accent-tint:lab(61.6428% 45.969 50.7728/.13);--mx-accent-line:lab(61.6428% 45.969 50.7728/.36);--mx-ember-tint:lab(71.129% 9.74503 49.3807/.12);--mx-ember-line:lab(71.129% 9.74503 49.3807/.4);--mx-good-tint:lab(66.7078% -36.3832 18.7226/.12);--mx-good-line:lab(66.7078% -36.3832 18.7226/.34);--mx-bad-tint:lab(58.7387% 54.7355 22.372/.12);--mx-bad-line:lab(58.7387% 54.7355 22.372/.34);--mx-grid-line:lab(93.1009% -.136077 4.20632/.045);--mx-shadow-s:0 1px 2px lab(0% 0 0/.35), 0 2px 8px lab(0% 0 0/.3);--mx-shadow-m:0 2px 6px lab(0% 0 0/.4), 0 12px 32px -8px lab(0% 0 0/.5);--mx-canvas-bg:lab(11.0268% 1.73904 -10.2017);--mx-canvas-grid:lab(93.1009% -.136077 4.20632/.07);--mx-canvas-axis:lab(93.1009% -.136077 4.20632/.24);--mx-canvas-primary:lab(61.6428% 45.969 50.7728);--mx-canvas-secondary:lab(82.7067% -.181317 7.69537);--mx-canvas-accent:lab(66.7078% -36.3832 18.7226);--mx-canvas-highlight:lab(71.129% 9.74503 49.3807);--mx-canvas-text:lab(93.1009% -.136077 4.20632);--mx-canvas-muted:lab(67.4261% .542343 -5.25836);--mx-canvas-danger:lab(58.7387% 54.7355 22.372);--mx-canvas-tertiary:lab(65.1979% -11.7457 -28.5567);--mx-canvas-warning:lab(76.9969% 7.60111 46.406)}}}@layer base{*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{interpolate-size:allow-keywords;scrollbar-gutter:stable}body{background:var(--mx-paper);color:var(--mx-ink);font-family:var(--mx-font-body);font-size:var(--mx-text-m);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.65}h1,h2,h3,h4{font-family:var(--mx-font-display);letter-spacing:-.012em;color:var(--mx-ink);text-wrap:balance;font-weight:560;line-height:1.18}h1{font-size:var(--mx-text-2xl);font-variation-settings:"opsz" 60}h2{font-size:var(--mx-text-xl)}h3{font-size:var(--mx-text-l)}h4{font-size:var(--mx-text-m);font-family:var(--mx-font-ui);font-weight:600}p{text-wrap:pretty}a{color:var(--mx-accent-ink);text-decoration:underline;-webkit-text-decoration-color:var(--mx-accent-line);text-decoration-color:var(--mx-accent-line);text-underline-offset:.18em;transition:text-decoration-color .15s}a:hover{text-decoration-color:currentColor}strong{font-weight:660}em{font-style:italic}ul,ol{padding-inline-start:1.4em}li{margin-block:.3em}::selection{background:var(--mx-accent);color:var(--mx-paper)}:focus-visible{outline:2px solid var(--mx-accent);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}mjx-container{color:inherit}mjx-container[display=true]{max-width:100%;overflow:auto clip}}@layer layout{.sheet{--gutter:clamp(1.25rem, 4vw, 3rem);grid-template-columns:[full-start] minmax(var(--gutter), 1fr) [wide-start] minmax(0, var(--mx-lane)) [content-start] min(var(--mx-measure), calc(100% - 2 * var(--gutter))) [content-end] minmax(0, var(--mx-lane)) [wide-end] minmax(var(--gutter), 1fr) [full-end];padding-block:var(--mx-s6) var(--mx-s8);display:grid}.sheet>*{grid-column:content}.sheet>.wide{grid-column:wide}.sheet>.full{grid-column:full}.sheet>*+*,.flow>*+*{margin-block-start:var(--mx-flow)}.sheet>*+h2,.flow>*+h2{margin-block-start:var(--mx-s7)}.sheet>*+h3,.flow>*+h3{margin-block-start:var(--mx-s6)}.prose>*+*{margin-block-start:var(--mx-flow)}.sheet-fluid{--gutter:clamp(1.25rem, 3vw, 3rem);padding-inline:var(--gutter);padding-block:var(--mx-s6) var(--mx-s8)}.sheet-fluid>*+*{margin-block-start:var(--mx-flow)}.sheet-fluid>*+h2{margin-block-start:var(--mx-s7)}.sheet-fluid>*+h3{margin-block-start:var(--mx-s6)}.measure{max-width:var(--mx-measure)}.split{gap:var(--mx-s6);grid-template-columns:repeat(auto-fit,minmax(min(34rem,100%),1fr));align-items:start;display:grid}.split[data-ratio=wide-narrow]{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.split[data-ratio=narrow-wide]{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}@media (max-width:900px){.split[data-ratio]{grid-template-columns:1fr}}.sticky{top:var(--mx-s5);position:sticky}@media (max-width:900px){.sticky{position:static}}.sheet>.band{grid-column:full;grid-template-columns:subgrid;background:var(--mx-surface-2);border-block:1px solid var(--mx-line);padding-block:var(--mx-s6);display:grid}.band>*{grid-column:content}.band>.wide{grid-column:wide}.band>.full{grid-column:full}.band>*+*{margin-block-start:var(--mx-flow)}.band>*+h2{margin-block-start:var(--mx-s6)}.with-aside{gap:var(--mx-s7);grid-template-columns:minmax(0,1fr) 15rem;align-items:start;display:grid}.with-aside>aside{top:var(--mx-s5);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);position:sticky}.with-aside[data-aside=left]{grid-template-columns:15rem minmax(0,1fr)}.with-aside[data-aside=left]>aside{order:-1}.cols-2{gap:var(--mx-s5);grid-template-columns:repeat(auto-fit,minmax(min(30ch,100%),1fr));display:grid}.cols-3{gap:var(--mx-s5);grid-template-columns:repeat(auto-fit,minmax(min(20ch,100%),1fr));display:grid}.text-cols{columns:2;column-gap:var(--mx-s7);column-rule:1px solid var(--mx-line)}.text-cols>*{break-inside:avoid-column}@media (max-width:760px){.with-aside,.with-aside[data-aside=left]{grid-template-columns:1fr}.with-aside>aside{order:0;position:static}.text-cols{columns:1}}}@layer components{.masthead{padding-block-end:var(--mx-s5)}.kicker{font-family:var(--mx-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mx-accent);margin-block-end:var(--mx-s3);font-size:.6875rem;font-weight:600}.eyebrow{font-family:var(--mx-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mx-ink-2);font-size:.6875rem;font-weight:600}.masthead h1{margin-block-end:var(--mx-s3)}.masthead .meta{align-items:center;gap:var(--mx-s2);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink-2);flex-wrap:wrap;display:flex}.subtitle{font-size:var(--mx-text-l);color:var(--mx-ink-2);font-style:italic}.lede{font-size:var(--mx-text-l);color:var(--mx-ink);line-height:1.55}.chip{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);border:1px solid var(--mx-line-2);background:var(--mx-surface);color:var(--mx-ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:.35em;padding:.28em .75em;font-weight:600;display:inline-flex}.chip[data-tier=school]{border-color:var(--mx-line-2);color:var(--mx-ink-2)}.chip[data-tier=city]{border-color:var(--mx-line-2);color:var(--mx-ink)}.chip[data-tier=regional],.chip[data-tier=republic]{border-color:var(--mx-ember-line);color:var(--mx-ember);background:var(--mx-ember-tint)}.chip[data-tier=national]{border-color:var(--mx-accent-line);color:var(--mx-accent-ink);background:var(--mx-accent-tint)}.chip[data-tier=international]{border-color:var(--mx-accent);color:var(--mx-surface);background:var(--mx-accent)}html[data-theme=dark] .chip[data-tier=national]{color:var(--mx-accent-ink)}html[data-theme=dark] .chip[data-tier=international]{color:var(--mx-ink)}.difficulty{align-items:center;gap:3px;display:inline-flex}.difficulty i{border:1px solid var(--mx-line-2);background:0 0;border-radius:50%;width:7px;height:7px}.difficulty i.on{background:var(--mx-accent);border-color:var(--mx-accent)}.attribution{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink-2);border-block-start:1px solid var(--mx-line);padding-block-start:var(--mx-s3)}[data-card]{background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-l);padding:clamp(var(--mx-s5), 3vw, var(--mx-s6));box-shadow:var(--mx-shadow-s);display:flow-root;position:relative}[data-card][data-title]:before{content:attr(data-title);font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--mx-ink-2);margin-block-end:var(--mx-s4);font-weight:700;display:block}[data-card]>*+*{margin-block-start:var(--mx-flow)}[data-card=problem]{border-inline-start:3px solid var(--mx-accent)}[data-card=problem][data-title]:before{color:var(--mx-accent-ink)}[data-card=problem]>p{font-family:var(--mx-font-display);text-wrap:pretty;max-width:46rem;font-size:clamp(1.25rem,1.05rem + .85vw,1.6rem);font-weight:400;line-height:1.45}[data-card=answer]{border-color:var(--mx-good-line);background:var(--mx-good-tint)}[data-card=answer][data-title]:before{color:var(--mx-good)}[data-card=key-idea]{background:linear-gradient(135deg, var(--mx-accent-tint), var(--mx-ember-tint));border-color:var(--mx-accent-line)}[data-card=key-idea][data-title]:before{color:var(--mx-accent-ink)}.choices{gap:var(--mx-s3);grid-template-columns:repeat(auto-fit,minmax(min(8rem,100%),1fr));padding:0;list-style:none;display:grid}.choices[data-cols="1"]{grid-template-columns:1fr}.choice{align-items:baseline;gap:var(--mx-s3);padding:var(--mx-s3) var(--mx-s4);background:var(--mx-paper);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);margin:0;transition:border-color .15s,background .15s;display:flex}.choice:hover{border-color:var(--mx-line-2)}.choice-letter{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-accent-ink);font-weight:700}.choices[data-revealed] .choice{opacity:.55}.choices[data-revealed] .choice[data-correct]{opacity:1;border-color:var(--mx-good-line);background:var(--mx-good-tint)}.choices[data-revealed] .choice[data-correct] .choice-letter{color:var(--mx-good)}.solution-label{align-items:baseline;gap:var(--mx-s3);font-size:var(--mx-text-l);border-block-end:1px solid var(--mx-line);padding-block-end:var(--mx-s2);display:flex}.solution-tag{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--mx-ink-2);font-weight:600}.proof>*+*{margin-block-start:var(--mx-flow)}.proof>:last-child:after{content:"∎";color:var(--mx-ink-2);margin-inline-start:.5em}.result{background:var(--mx-good-tint);border:1px solid var(--mx-good-line);white-space:nowrap;border-radius:999px;padding:.05em .55em;font-weight:600}.crossed{color:var(--mx-bad);opacity:.75;text-decoration:line-through}blockquote,.remark{border-inline-start:3px solid var(--mx-line-2);color:var(--mx-ink-2);padding-inline-start:var(--mx-s5)}.remark>*+*{margin-block-start:var(--mx-flow)}.hints{counter-reset:hint;gap:var(--mx-s3);display:grid}.hints>details{counter-increment:hint}.hints>details>summary:before{content:"Hint " counter(hint);font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--mx-accent-ink);margin-inline-end:var(--mx-s3);font-weight:700}details.disclosure,.hints>details,.checkpoint>details{border:1px solid var(--mx-accent-line);background:var(--mx-accent-tint);border-radius:var(--mx-radius-m);overflow:hidden}details.disclosure>summary,.hints>details>summary,.checkpoint>details>summary{padding:var(--mx-s3) var(--mx-s4);cursor:pointer;font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink);-webkit-user-select:none;user-select:none;padding-inline-end:calc(var(--mx-s4) * 2 + .7em);font-weight:500;list-style:none;display:block;position:relative}details.disclosure>summary::-webkit-details-marker{display:none}.hints>details>summary::-webkit-details-marker{display:none}.checkpoint>details>summary::-webkit-details-marker{display:none}details.disclosure>summary:after,.hints>details>summary:after,.checkpoint>details>summary:after{content:"+";font-family:var(--mx-font-ui);font-size:1.1em;font-weight:400;line-height:inherit;color:var(--mx-ink-2);transition:rotate .2s;position:absolute;inset-block-start:var(--mx-s3);inset-inline-end:var(--mx-s4)}details[open].disclosure>summary:after,.hints>details[open]>summary:after,.checkpoint>details[open]>summary:after{rotate:45deg}details.disclosure>summary:hover,.hints>details>summary:hover,.checkpoint>details>summary:hover{background:var(--mx-accent-tint)}.detail-body{padding:var(--mx-s2) var(--mx-s4) var(--mx-s4);border-block-start:1px solid var(--mx-accent-line)}.detail-body>*+*{margin-block-start:var(--mx-flow)}.checkpoint>details{border-color:var(--mx-good-line);background:var(--mx-good-tint)}.checkpoint>details>summary{color:var(--mx-good)}.checkpoint .detail-body{border-block-start-color:var(--mx-good-line)}.math-block{background:var(--mx-surface-2);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);padding:var(--mx-s4) var(--mx-s5);position:relative;overflow-x:auto}.math-block[data-eq]:after{content:attr(data-eq);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink-2);position:absolute;inset-block-start:50%;inset-inline-end:var(--mx-s4);translate:0 -50%}body{counter-reset:fig}.fig{background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-l);padding:var(--mx-s5);box-shadow:var(--mx-shadow-s);max-inline-size:min(100%,27rem);margin-inline:auto}.fig[data-wide]{max-inline-size:100%}.fig>svg,.fig>canvas,.fig>img{max-width:100%;height:auto;margin-inline:auto;display:block}.fig>canvas{touch-action:none}.fig>figcaption{text-align:center;font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink-2);text-wrap:balance;margin-block-start:var(--mx-s4)}.fig:not([data-unnumbered])>figcaption:not([data-unnumbered]):before{counter-increment:fig;content:"Figure " counter(fig);color:var(--mx-ink);margin-inline-end:.6em;font-weight:600}.fig-plain{box-shadow:none;background:0 0;border:none;padding:0}.fig-side{float:inline-end;width:min(46%,21rem);margin:.3rem 0 var(--mx-s4) var(--mx-s5)}@media (max-width:600px){.fig-side{float:none;width:100%;margin:var(--mx-s4) 0}}.fig-row{gap:var(--mx-s4);display:grid}.canvas-controls{align-items:center;gap:var(--mx-s4);border-block-start:1px solid var(--mx-line);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink-2);flex-wrap:wrap;margin-block-start:var(--mx-s4);padding-block-start:var(--mx-s4);display:flex}.canvas-controls label{align-items:center;gap:var(--mx-s2);display:inline-flex}.canvas-controls input[type=range]{accent-color:var(--mx-accent)}.canvas-controls output{color:var(--mx-ink);font-variant-numeric:tabular-nums;font-weight:600}.lesson{counter-reset:definition theorem lemma example principle}.box{background:var(--mx-surface);border:1px solid var(--mx-line);border-inline-start:3px solid var(--mx-line-2);border-radius:var(--mx-radius-m);padding:var(--mx-s5)}.box>*+*{margin-block-start:var(--mx-s3)}.box-label{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--mx-ink-2);font-weight:700}.box[data-box=definition]{border-inline-start-color:var(--mx-accent)}.box[data-box=definition] .box-label{color:var(--mx-accent-ink)}.box[data-box=definition] .box-label:after{counter-increment:definition;content:" " counter(definition)}.box[data-box=theorem],.box[data-box=lemma]{border-inline-start-color:var(--mx-ember);background:var(--mx-ember-tint)}.box[data-box=theorem] .box-label,.box[data-box=lemma] .box-label{color:var(--mx-ember)}.box[data-box=theorem] .box-label:after{counter-increment:theorem;content:" " counter(theorem)}.box[data-box=lemma] .box-label:after{counter-increment:lemma;content:" " counter(lemma)}.box[data-box=example]{border-inline-start-color:var(--mx-good)}.box[data-box=example] .box-label{color:var(--mx-good)}.box[data-box=example] .box-label:after{counter-increment:example;content:" " counter(example)}.box[data-box=principle]{border-inline-start-color:var(--mx-gold);background:linear-gradient(135deg, var(--mx-ember-tint), transparent)}.box[data-box=principle] .box-label{color:var(--mx-ember)}html[data-theme=dark] .box[data-box=principle] .box-label{color:var(--mx-gold)}.box[data-box=notation]{background:var(--mx-surface-2)}.box[data-box=warning]{border-inline-start-color:var(--mx-bad);background:var(--mx-bad-tint)}.box[data-box=warning] .box-label{color:var(--mx-bad)}.toc{padding:0;list-style:none}.toc li{margin:0}.toc a{padding:var(--mx-s2) var(--mx-s4);color:var(--mx-ink-2);border-inline-start:2px solid #0000;text-decoration:none;display:block}.toc a:hover{color:var(--mx-ink);border-inline-start-color:var(--mx-line-2)}.toc a[aria-current]{color:var(--mx-accent-ink);border-inline-start-color:var(--mx-accent);font-weight:600}.pcard{gap:var(--mx-s2) var(--mx-s4);padding:var(--mx-s4) var(--mx-s5);background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);color:var(--mx-ink);grid-template-columns:auto minmax(0,1fr);min-width:0;text-decoration:none;transition:border-color .15s,box-shadow .15s,translate .15s;display:grid;overflow:hidden}.pcard>*{min-width:0}.pcard:hover{border-color:var(--mx-accent-line);box-shadow:var(--mx-shadow-m);translate:0 -2px}.pcard-number{font-family:var(--mx-font-display);font-size:var(--mx-text-xl);color:var(--mx-line-2);grid-row:span 2;line-height:1}.pcard:hover .pcard-number{color:var(--mx-accent)}.pcard-meta{gap:var(--mx-s2);font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink-2);flex-wrap:wrap;align-items:center;display:flex}.pcard-text{font-size:var(--mx-text-s);overflow-wrap:break-word;-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pcard-text mjx-container{max-width:100%}.pcard-text mjx-container[display=true]{margin-block:var(--mx-s2)}.step{gap:var(--mx-s4);padding-block:var(--mx-s3);display:flex}.step+.step{border-block-start:1px dashed var(--mx-line)}.step-badge{background:var(--mx-accent);width:1.9rem;height:1.9rem;color:var(--mx-paper);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);border-radius:50%;flex:none;place-items:center;margin-block-start:.15rem;font-weight:700;display:grid}.step-content{flex:1;min-width:0}.step-content>*+*{margin-block-start:var(--mx-s3)}.step-title{font-family:var(--mx-font-ui);font-size:var(--mx-text-m);font-weight:600}.table-surface{background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);overflow:clip}table{border-collapse:collapse;width:100%;font-size:var(--mx-text-s)}.table-surface th:first-child,.table-surface td:first-child{padding-inline-start:var(--mx-s5)}.table-surface th:last-child,.table-surface td:last-child{padding-inline-end:var(--mx-s5)}.table-surface tbody tr:last-child td{border-block-end:0}th,td{padding:var(--mx-s3) var(--mx-s4);border-block-end:1px solid var(--mx-line);text-align:left;vertical-align:top}th{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--mx-ink-2);border-block-end-color:var(--mx-line-2);font-weight:600}th mjx-container{text-transform:none;letter-spacing:normal}tbody tr:hover td{background:var(--mx-accent-tint)}.callout{border-inline-start:3px solid var(--mx-accent);background:var(--mx-accent-tint);border-radius:0 var(--mx-radius-s) var(--mx-radius-s) 0;padding:var(--mx-s3) var(--mx-s4);font-size:var(--mx-text-s)}.callout[data-tone=warn]{border-color:var(--mx-bad);background:var(--mx-bad-tint)}.callout[data-tone=good]{border-color:var(--mx-good);background:var(--mx-good-tint)}.term{font-family:var(--mx-font-ui);color:var(--mx-accent-ink);background:var(--mx-accent-tint);white-space:nowrap;border-radius:999px;padding:.06em .6em;font-size:.85em;font-weight:600}.toolbar{align-items:center;gap:var(--mx-s2);padding-block:var(--mx-s3);border-block:1px solid var(--mx-line);flex-wrap:wrap;display:flex}.toolbar-spacer{margin-inline-start:auto}.toolbar-label{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--mx-ink-2);margin-inline-end:var(--mx-s2);font-weight:600}a.chip{cursor:pointer;text-decoration:none;transition:border-color .15s,color .15s,background .15s}a.chip:hover{border-color:var(--mx-ink-2);color:var(--mx-ink)}.chip[data-active]{background:var(--mx-ink);border-color:var(--mx-ink);color:var(--mx-paper)}.card-grid{--card-cols:4;--card-min:19rem;grid-template-columns:repeat(auto-fill, minmax(max(min(var(--card-min), 100%), (100% - (var(--card-cols) - 1) * var(--mx-s4)) / var(--card-cols)), 1fr));gap:var(--mx-s4);display:grid}.theme-toggle{z-index:10;font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);padding:var(--mx-s2) var(--mx-s4);border:1px solid var(--mx-line-2);background:var(--mx-surface);color:var(--mx-ink-2);cursor:pointer;box-shadow:var(--mx-shadow-s);border-radius:999px;font-weight:600;position:fixed;inset-block-start:var(--mx-s4);inset-inline-end:var(--mx-s4)}.theme-toggle:hover{color:var(--mx-ink);border-color:var(--mx-ink-2)}}@layer utilities{.center{text-align:center}.muted{color:var(--mx-ink-2)}.small{font-size:var(--mx-text-s)}.ui{font-family:var(--mx-font-ui)}.no-flow{--mx-flow:0}.spread{gap:var(--mx-s3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}}@layer print{@media print{body{color:#000;background:#fff}.theme-toggle,.canvas-controls{display:none}[data-card],.fig,.box{box-shadow:none;break-inside:avoid}details{border:none}details>summary{display:none}details:not([open])::details-content{content-visibility:visible}.sheet{padding-block:0}}}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.row-1{grid-row:1}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}body{background-color:var(--mx-paper);background-image:linear-gradient(var(--mx-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--mx-grid-line) 1px, transparent 1px);background-size:var(--mx-grid-size) var(--mx-grid-size)}@layer components{.site-header{z-index:50;justify-content:space-between;align-items:center;gap:var(--mx-s4);padding:var(--mx-s3) clamp(1.25rem, 3vw, 3.5rem);background:var(--mx-surface);display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in oklab, var(--mx-surface) 82%, transparent)}}.site-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-block-end:1px solid var(--mx-line);font-family:var(--mx-font-ui);font-size:.84375rem;font-weight:500}.header-actions{align-items:center;gap:var(--mx-s3);flex-wrap:wrap;display:flex}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.language-control{align-items:start;gap:var(--mx-s2);flex-direction:column;display:inline-flex}.hints>details>summary[data-hint-label]:before{content:none}.hints>details>summary[data-hint-label]{font-size:var(--mx-text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--mx-accent-ink);font-weight:700}.hints>details>.hint-title{padding:var(--mx-s3) var(--mx-s4);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);font-weight:500}.brand{font-family:var(--mx-font-display);letter-spacing:-.02em;color:var(--mx-ink);font-size:1.6875rem;font-weight:600;line-height:1;text-decoration:none}.brand:after{content:".";color:var(--mx-accent)}.brand:hover{color:var(--mx-ink);text-decoration:none}.site-nav{align-items:center;gap:var(--mx-s5);flex-wrap:wrap;display:flex}.nav-link{color:var(--mx-ink-2);border-block-end:2px solid #0000;padding-block-end:3px;font-weight:500;text-decoration:none}.nav-link:hover{color:var(--mx-ink);text-decoration:none}.nav-link[data-active]{color:var(--mx-ink);border-block-end-color:var(--mx-accent)}.site-theme-switch,.site-language-switch{border:1px solid var(--mx-line-2);color:var(--mx-ink-2);font-family:var(--mx-font-mono);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.4em;padding:.375em .8em;font-size:.75rem;font-weight:500;line-height:1;transition:border-color .15s,color .15s;display:inline-flex}.site-theme-switch:hover,.site-language-switch:hover{border-color:var(--mx-ink-2);color:var(--mx-ink)}.site-language-switch{cursor:default;gap:2px;padding:2px}.site-language-switch button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.3em .6em;line-height:1}.site-language-switch button:hover{color:var(--mx-ink)}.site-language-switch button[data-active]{background:var(--mx-ink);color:var(--mx-paper);cursor:default}.site-language-switch button:focus-visible{outline:2px solid var(--mx-accent);outline-offset:1px}.site-language-switch button:disabled{cursor:wait}.site-language-switch[aria-busy=true]{opacity:.65}.site-theme-switch svg{flex:none;width:13px;height:13px}.avatar{background:var(--mx-ink);width:34px;height:34px;color:var(--mx-paper);font-family:var(--mx-font-ui);letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-flex}.avatar:hover{color:var(--mx-paper);background:var(--mx-accent);text-decoration:none}.btn{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);border-radius:var(--mx-radius-s);border:1.5px solid var(--mx-ink);color:var(--mx-ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5em;min-height:44px;padding:.6em 1.25em;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.btn:hover{background:var(--mx-ink);color:var(--mx-paper);text-decoration:none}.btn-primary{background:var(--mx-accent);border-color:var(--mx-accent);color:var(--mx-paper);font-weight:700}.btn-primary:hover{background:var(--mx-accent-hover);border-color:var(--mx-accent-hover);color:var(--mx-paper)}.btn-danger{border-color:var(--mx-bad-line);color:var(--mx-bad);background:var(--mx-bad-tint)}.btn-small{min-height:36px;padding:.35em .9em}.btn[disabled]{opacity:.55;cursor:default}.field{gap:var(--mx-s1);font-family:var(--mx-font-ui);display:grid}.field>label{font-size:var(--mx-text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--mx-ink-2);font-weight:600}.input,.select{font-family:var(--mx-font-ui);font-size:var(--mx-text-m);color:var(--mx-ink);background:var(--mx-surface);border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);width:100%;min-height:44px;padding:.6em .85em}.input:focus,.select:focus{outline:2px solid var(--mx-accent);outline-offset:1px}.form-card{background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-l);padding:clamp(var(--mx-s5), 4vw, var(--mx-s6));box-shadow:var(--mx-shadow-s);gap:var(--mx-s4);display:grid}.form-error{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-bad);background:var(--mx-bad-tint);border:1px solid var(--mx-bad-line);border-radius:var(--mx-radius-s);padding:var(--mx-s2) var(--mx-s3)}.form-success{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-good);background:var(--mx-good-tint);border:1px solid var(--mx-good-line);border-radius:var(--mx-radius-s);padding:var(--mx-s2) var(--mx-s3)}.narrow-sheet{max-width:26rem;padding:var(--mx-s7) clamp(1.25rem, 4vw, 2rem) var(--mx-s8);gap:var(--mx-s5);margin-inline:auto;display:grid}.divider{align-items:center;gap:var(--mx-s3);color:var(--mx-ink-2);font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);display:flex}.divider:before,.divider:after{content:"";border-block-start:1px solid var(--mx-line);flex:1}.pcard-state{font-family:var(--mx-font-ui);font-weight:700}.pcard-state[data-state=solved]{color:var(--mx-good)}.pcard-state[data-state=attempted]{color:var(--mx-gold)}.stat{gap:var(--mx-s1);background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);padding:var(--mx-s4) var(--mx-s5);font-family:var(--mx-font-ui);display:grid}.stat .stat-value{font-family:var(--mx-font-display);font-size:var(--mx-text-xl);line-height:1}.stat .stat-label{font-size:var(--mx-text-xs);color:var(--mx-ink-2);text-transform:uppercase;letter-spacing:.1em;font-weight:600}}.sheet[data-measure=wide]{--mx-measure:72rem}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
@layer components{body:has(.app-shell) .site-header{display:none}.app-shell{--side-w:15.5rem;grid-template-columns:minmax(0,1fr);align-items:start;min-height:100vh;display:grid;position:relative}@media (min-width:68rem){.app-shell{grid-template-columns:var(--side-w) minmax(0, 1fr);background:linear-gradient(90deg, color-mix(in oklab, var(--mx-surface) 55%, transparent) 0 var(--side-w), transparent var(--side-w))}.app-shell[data-collapsed]{background:0 0;grid-template-columns:0 minmax(0,1fr)}.app-shell[data-collapsed] .app-side{display:none}.app-shell[data-resizing]{-webkit-user-select:none;user-select:none;cursor:col-resize}.app-shell>.app-main{grid-column:2}.app-shell>.app-side{grid-column:1}}.app-side{gap:var(--mx-s6);padding:var(--mx-s5) var(--mx-s4) var(--mx-s6);background:color-mix(in oklab, var(--mx-surface) 55%, transparent);font-family:var(--mx-font-ui);flex-direction:column;display:flex}@media (min-width:68rem){.app-side{min-height:100vh;max-height:100vh;padding:var(--mx-s5) var(--mx-s5) var(--mx-s5) clamp(1rem, 2vw, 2rem);background:0 0;position:sticky;top:0;overflow-y:auto}}.side-brand{align-self:start}.side-bottom{align-items:center;gap:var(--mx-s3);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);flex-wrap:wrap;font-weight:500;display:flex}@media (min-width:68rem){.side-bottom{margin-block-start:auto}}.side-auth{align-items:center;gap:var(--mx-s3);display:flex}.side-auth a{color:var(--mx-ink-2);text-decoration:none}.side-auth a:hover{color:var(--mx-ink)}.side-auth .btn{color:var(--mx-paper)}@media (max-width:68rem){.app-side{align-items:center;gap:var(--mx-s3) var(--mx-s4);flex-flow:wrap}.side-brand{order:0}.side-bottom{order:1;margin-inline-start:auto}.side-nav{flex-basis:100%;order:2}.side-context{flex-basis:100%;order:3}}.app-main{min-width:0}.side-controls{display:contents}.side-handle,.side-collapse{display:none}@media (min-width:68rem){.side-handle{cursor:col-resize;z-index:30;touch-action:none;width:10px;display:block;position:absolute;inset-block:0;inset-inline-start:calc(var(--side-w) - 5px)}.side-handle:after{content:"";background:0 0;border-radius:999px;width:2px;transition:background .15s;position:absolute;inset-block:0;inset-inline-start:4px}.side-handle:hover:after,.side-handle:focus-visible:after,.app-shell[data-resizing] .side-handle:after{background:var(--mx-accent)}.side-handle:focus-visible{outline:none}.side-collapse{top:var(--mx-s4);border:1px solid var(--mx-line-2);background:var(--mx-surface);width:1.625rem;height:1.625rem;color:var(--mx-ink-2);font-family:var(--mx-font-ui);cursor:pointer;z-index:31;border-radius:50%;place-items:center;padding:0;font-size:.875rem;line-height:1;transition:color .15s,border-color .15s;display:grid;position:absolute;inset-inline-start:calc(var(--side-w) - .8125rem)}.side-collapse:hover{color:var(--mx-ink);border-color:var(--mx-ink-2)}.app-shell[data-collapsed] .side-collapse{inset-inline-start:.5rem}}.side-nav{gap:2px;display:grid}.side-link{border-radius:var(--mx-radius-s);color:var(--mx-ink-2);padding:.5em .75em;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .15s,background .15s;position:relative}.side-link:hover{color:var(--mx-ink);background:var(--mx-surface);text-decoration:none}.side-link[data-active]{color:var(--mx-ink);font-weight:700}.side-link[data-active]:after{content:".";color:var(--mx-accent)}.side-link[data-active]:before{content:"";background:var(--mx-accent);border-radius:999px;width:2.5px;position:absolute;inset-block:.55em;inset-inline-start:-.35em}@media (max-width:68rem){.side-nav{gap:var(--mx-s2);flex-wrap:wrap;display:flex}}.side-context{gap:var(--mx-s5);align-content:start;display:grid}.side-block{gap:var(--mx-s2);display:grid}.side-label{font-family:var(--mx-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mx-ink-2);font-size:.625rem;font-weight:600}.side-block .fpill-set{gap:6px}.ghost-num{font-family:var(--mx-font-display);color:var(--mx-ink);opacity:.09;-webkit-user-select:none;user-select:none;pointer-events:none;font-style:italic;font-weight:500;line-height:.8}.ruler-bar{--fill:0;background:repeating-linear-gradient(90deg, var(--mx-line-2) 0 1px, transparent 1px 10%), linear-gradient(to right, var(--mx-accent) calc(var(--fill) * 1%), var(--mx-line) calc(var(--fill) * 1%));border-radius:2px;height:8px}.mono-tag{background:color-mix(in oklab, var(--mx-ink) 8%, transparent);font-family:var(--mx-font-mono);letter-spacing:.06em;color:var(--mx-ink);border-radius:4px;padding:3px 7px;font-size:.65rem;font-weight:600;display:inline-block}.mono-tag[data-tone=accent]{background:var(--mx-accent);color:var(--mx-paper)}.construction{pointer-events:none;opacity:.35;color:var(--mx-ink-2);position:absolute}.construction svg{width:100%;height:100%;display:block}}
@layer components{.compete-hero{padding-block:0 var(--mx-s4);position:relative}.compete-arc{opacity:.16;width:280px;height:190px;inset-block-start:-.5rem;inset-inline-end:0}@media (max-width:56rem){.compete-arc{display:none}}.compete-hero-title{font-family:var(--mx-font-display);letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2rem,1.5rem + 2.2vw,2.625rem);font-weight:500;line-height:1.12}.compete-hero-lede{color:var(--mx-ink-2);max-width:30rem;margin-block-start:var(--mx-s3);font-size:.875rem;line-height:1.6}.compete-filters{align-items:end;gap:var(--mx-s6);flex-wrap:wrap;display:flex}.fpill-group{gap:var(--mx-s2);justify-items:start;display:grid}.side-filters{gap:var(--mx-s5);align-content:start;display:grid}.fpill-label{font-family:var(--mx-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mx-ink-2);font-size:.625rem;font-weight:600}.fpill-set{gap:var(--mx-s2);flex-wrap:wrap;display:flex}.fpill{border:1px solid var(--mx-line-2);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink-2);border-radius:999px;padding:.5em 1.15em;font-weight:500;line-height:1;text-decoration:none;transition:border-color .15s,background .15s,color .15s}.fpill:hover{border-color:var(--mx-ink-2);color:var(--mx-ink);text-decoration:none}.fpill[data-active]{background:var(--mx-ink);border-color:var(--mx-ink);color:var(--mx-paper)}.year-block{position:relative}.year-ghost{z-index:-1;font-size:clamp(4.5rem,3rem + 6vw,8.125rem);position:absolute;inset-block-start:-.28em;inset-inline-start:-.06em}.year-rule{align-items:baseline;gap:var(--mx-s4);margin-block:var(--mx-s6) var(--mx-s3);display:flex}.year-rule:first-of-type{margin-block-start:var(--mx-s5)}.year-rule span{font-family:var(--mx-font-display);color:var(--mx-ink-2);font-size:1.375rem;font-style:italic}.year-rule i{border-block-end:1px solid var(--mx-line);flex:1}.year-rule .year-season{font-family:var(--mx-font-mono);letter-spacing:.08em;color:var(--mx-ink-2);font-size:.625rem;font-style:normal}.paper-list{gap:var(--mx-s2);flex-direction:column;display:flex}.prow{gap:var(--mx-s4);padding:var(--mx-s4) var(--mx-s5);background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);color:var(--mx-ink);grid-template-columns:minmax(0,1fr) 8.5rem 6.5rem 7.5rem 9rem;align-items:center;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:grid}.prow[data-guest]{grid-template-columns:minmax(0,1fr) 8.5rem 9rem}.prow[data-progress]{border:1.5px solid var(--mx-accent);box-shadow:0 3px 12px color-mix(in oklab, var(--mx-accent) 10%, transparent)}.prow:hover,.prow:focus-visible{border-color:var(--mx-accent);box-shadow:var(--mx-shadow-s);text-decoration:none}.prow:focus-visible{outline:2px solid var(--mx-accent);outline-offset:2px}.prow-head{gap:3px;min-width:0;display:grid}.prow-title{font-family:var(--mx-font-display);font-size:var(--mx-text-l);letter-spacing:-.01em;font-weight:500;line-height:1.2;display:block}.prow-sub{font-family:var(--mx-font-mono);color:var(--mx-ink-2);font-size:.6875rem;display:block}.prow-mono{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);color:var(--mx-ink-2)}.prow-status{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);font-weight:600}.prow-status[data-state=solved]{color:var(--mx-good)}.prow-status[data-state=partial]{color:var(--mx-accent-ink)}.prow-status[data-state=none]{color:var(--mx-ink-2);opacity:.6}.prow-note{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink-2)}.prow-btn{text-align:center;border:1.5px solid var(--mx-ink);border-radius:var(--mx-radius-s);font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink);padding:.65em 1em;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:block}.prow-btn[data-primary]{background:var(--mx-accent);border-color:var(--mx-accent);color:var(--mx-paper)}.prow:hover .prow-btn{background:var(--mx-ink);color:var(--mx-paper)}.prow:hover .prow-btn[data-primary]{background:var(--mx-accent-hover);border-color:var(--mx-accent-hover)}.prow[data-completed]{border-color:color-mix(in oklab, var(--mx-good) 45%, var(--mx-line))}.prow[data-completed] .prow-note{color:var(--mx-good)}.prow[data-completed] .prow-btn{background:var(--mx-good);border-color:var(--mx-good);color:var(--mx-paper)}.prow[data-completed]:is(:hover,:focus-visible){border-color:var(--mx-good);outline-color:var(--mx-good)}.prow[data-completed]:is(:hover,:focus-visible) .prow-btn{background:color-mix(in oklab, var(--mx-good) 88%, var(--mx-ink));border-color:color-mix(in oklab, var(--mx-good) 88%, var(--mx-ink))}@media (max-width:56rem){.prow,.prow[data-guest]{align-items:center;gap:var(--mx-s2) var(--mx-s4);flex-wrap:wrap;display:flex}.prow-head{flex-basis:100%}.prow-action{margin-inline-start:auto}}.paper-overview{max-width:56rem;margin-inline:auto}.paper-facts{gap:var(--mx-s2);justify-items:start;display:grid}.paper-fact{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);color:var(--mx-ink-2)}.pcard-column{gap:var(--mx-s3);flex-direction:column;display:flex}.exam-pane{grid-template-columns:[full-start] var(--gutter) [wide-start] minmax(0, var(--mx-lane)) [content-start] min(var(--mx-measure), calc(100% - 2 * var(--gutter))) [content-end] minmax(0, var(--mx-lane)) [wide-end] minmax(var(--gutter), 1fr) [full-end];padding-block-start:var(--mx-s5)}.paper-bar{align-items:baseline;gap:var(--mx-s3);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink-2);flex-wrap:wrap;padding-block-start:var(--mx-s4);display:flex}.paper-bar-back{color:var(--mx-accent-ink);font-weight:600;text-decoration:none}.paper-bar-back:hover{text-decoration:underline}.paper-bar-count{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);margin-inline-start:auto}.paper-rail{gap:var(--mx-s2);padding-block:var(--mx-s5) var(--mx-s4);align-content:start;display:grid}.paper-rail-head{justify-content:space-between;align-items:baseline;display:flex}.paper-rail-label{font-family:var(--mx-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mx-ink-2);font-size:.625rem;font-weight:600}.paper-rail-count{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);color:var(--mx-ink-2)}.paper-rail-list{gap:var(--mx-s2);flex-wrap:wrap;display:flex}.rail-problem{align-items:center;gap:var(--mx-s3);background:var(--mx-surface);border:1px solid var(--mx-line);border-radius:var(--mx-radius-m);color:var(--mx-ink);padding:.45em .8em;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.rail-problem:hover,.rail-problem:focus-visible{border-color:var(--mx-accent);text-decoration:none}.rail-problem:focus-visible{outline:2px solid var(--mx-accent);outline-offset:1px}.rail-problem[data-current]{border-color:var(--mx-accent);box-shadow:var(--mx-shadow-s);border-width:1.5px}.rail-dot{border:1px solid var(--mx-line-2);width:24px;height:24px;color:var(--mx-ink-2);border-radius:50%;flex:none;place-items:center;font-size:11px;display:grid}.rail-problem[data-state=solved] .rail-dot{background:var(--mx-good);border-color:var(--mx-good);color:var(--mx-paper)}.rail-problem[data-state=attempted] .rail-dot{border-color:var(--mx-gold);color:var(--mx-gold)}.rail-problem[data-current] .rail-dot{border-color:var(--mx-accent)}.rail-problem[data-current]:not([data-state]) .rail-dot{color:var(--mx-accent-ink)}.rail-problem-body{gap:2px;min-width:0;display:grid}.rail-problem-id{font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);font-weight:600}.rail-problem[data-current] .rail-problem-id{color:var(--mx-accent-ink)}.rail-problem-excerpt{font-family:var(--mx-font-display);font-size:var(--mx-text-s);color:var(--mx-ink-2);white-space:nowrap;text-overflow:ellipsis;display:none;overflow:hidden}.paper-rail-foot{display:none}@media (min-width:68rem){.paper-rail{max-height:calc(100vh - 8rem);overflow-y:auto}.paper-rail-list{gap:var(--mx-s2);display:grid}.rail-problem{padding:var(--mx-s3) var(--mx-s4)}.rail-problem-excerpt{display:block}.paper-rail-foot{gap:var(--mx-s3);font-family:var(--mx-font-mono);color:var(--mx-ink-2);padding-block-start:var(--mx-s2);font-size:.65rem;display:flex}.paper-rail-foot [data-state=solved]{color:var(--mx-good)}.paper-rail-foot [data-state=attempted]{color:var(--mx-gold)}}}
@layer components{.filter-rail{gap:var(--mx-s5);align-content:start;display:grid}.filter-rail .fpill{font-size:var(--mx-text-xs);padding:.45em .9em}.difficulty-range{max-width:20rem}.difficulty-range-values{font-family:var(--mx-font-mono);font-size:var(--mx-text-s);color:var(--mx-ink);justify-content:space-between;display:flex}.difficulty-range-control{height:2rem;position:relative}.difficulty-range-track{background:linear-gradient(to right, var(--mx-line-2) var(--range-low), var(--mx-accent) var(--range-low), var(--mx-accent) var(--range-high), var(--mx-line-2) var(--range-high));border-radius:999px;height:4px;position:absolute;inset:calc(50% - 2px) 9px auto}.difficulty-range-control input{appearance:none;pointer-events:none;background:0 0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.difficulty-range-control input::-webkit-slider-thumb{appearance:none;border:2px solid var(--mx-accent);background:var(--mx-surface);pointer-events:auto;cursor:ew-resize;border-radius:50%;width:18px;height:18px}.difficulty-range-control input::-moz-range-thumb{border:2px solid var(--mx-accent);background:var(--mx-surface);pointer-events:auto;cursor:ew-resize;border-radius:50%;width:14px;height:14px}.difficulty-range-control input:focus-visible{outline:2px solid var(--mx-accent);outline-offset:3px;border-radius:var(--mx-radius-s)}.side-toggle{align-items:center;gap:var(--mx-s2);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink);justify-self:start;font-weight:500;text-decoration:none;display:inline-flex}.side-toggle:hover{color:var(--mx-accent-ink);text-decoration:none}.side-toggle-track{background:var(--mx-line-2);border-radius:999px;flex:none;width:30px;height:17px;transition:background .15s;position:relative}.side-toggle-track:after{content:"";background:var(--mx-paper);border-radius:50%;width:13px;height:13px;transition:inset-inline-start .15s;position:absolute;inset-block-start:2px;inset-inline-start:2px}.side-toggle[data-active] .side-toggle-track{background:var(--mx-accent)}.side-toggle[data-active] .side-toggle-track:after{inset-inline-start:15px}@media (max-width:68rem){.filter-rail{gap:var(--mx-s4) var(--mx-s5);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.side-toggle{align-self:end}}.practice-head{position:relative}.practice-ghost{font-size:clamp(4.5rem,3rem + 7vw,9.5rem);position:absolute;inset-block-start:-.12em;inset-inline-end:0}.practice-head-row{justify-content:space-between;align-items:flex-end;gap:var(--mx-s3) var(--mx-s5);flex-wrap:wrap;display:flex;position:relative}.practice-head-row h1{margin-block-end:0}.practice-head-meta{align-items:baseline;gap:var(--mx-s2);font-family:var(--mx-font-mono);font-size:var(--mx-text-xs);color:var(--mx-ink-2);flex-wrap:wrap;display:flex}.practice-sort{color:var(--mx-accent-ink);font-weight:600}.practice-grid{--card-cols:2}.practice-grid .pcard[data-featured] .pcard-text{font-family:var(--mx-font-display);font-size:var(--mx-text-l);-webkit-line-clamp:4;line-height:1.5}.pcard-open{border:1.5px solid var(--mx-ink);border-radius:var(--mx-radius-s);font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink);grid-column:2;justify-self:start;margin-block-start:var(--mx-s2);padding:.5em 1.2em;font-weight:700;transition:background .15s,color .15s}.pcard:hover .pcard-open{background:var(--mx-ink);color:var(--mx-paper)}.ws-head,.ws-head>:not(.ws-ghost){position:relative}.ws-ghost{font-size:clamp(4rem,3rem + 5vw,8.5rem);position:absolute;inset-block-start:-.15em;inset-inline-end:0}.rail-problem[data-kind=lesson] .rail-dot{background:var(--mx-accent-tint);border-color:var(--mx-accent-line);color:var(--mx-accent-ink);border-radius:6px;font-size:10px;font-weight:600}}button.fpill{cursor:pointer;background:0 0}button.fpill[data-active]{background:var(--mx-ink);border-color:var(--mx-ink);color:var(--mx-paper)}button.fpill:disabled{cursor:default}button.fpill:disabled:not([data-active]){opacity:.45}button.fpill:disabled:hover:not([data-active]){border-color:var(--mx-line-2);color:var(--mx-ink-2)}
.wg{vertical-align:middle;border-radius:var(--mx-radius-s);max-width:100%;display:inline-block}div[data-widget]{display:block}.wg[data-status=correct]{outline:2px solid var(--mx-good-line);outline-offset:3px}.wg[data-status=incorrect]{outline:2px solid var(--mx-bad);outline-offset:3px}.wg[data-solution]{outline:2px dashed var(--mx-good-line);outline-offset:3px}.pcard-title{margin-inline-end:.5em;font-weight:600}.wg-grid-wrap,.wg-rule{--wg-cell:var(--mx-surface);--wg-cell-fixed:var(--mx-surface-2);--wg-black:var(--mx-ink);--wg-text:var(--mx-ink);--wg-text-on-black:var(--mx-paper);--wg-mark:var(--mx-ink-2);--wg-line:var(--mx-line-2)}html[data-theme=dark] .wg-grid-wrap,html[data-theme=dark] .wg-rule{--wg-cell:#e4dfd3;--wg-cell-fixed:#cfc8b8;--wg-black:#14161d;--wg-text:#14161d;--wg-text-on-black:#e4dfd3;--wg-mark:#4a4a52;--wg-line:#8c877b}.wg-grid-wrap{--cell:2.4rem;max-width:100%;padding:4px;overflow-x:auto}.wg-grid-wrap[data-size=s]{--cell:1.9rem}.wg-grid-wrap[data-size=l]{--cell:2.75rem}.wg-grid{border-collapse:collapse;touch-action:none;-webkit-user-select:none;user-select:none;width:auto;margin:0}.wg-grid th{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink-2);text-align:right;white-space:nowrap;text-transform:none;letter-spacing:normal;background:0 0;border:0;padding:0 .6em 0 0;font-weight:500}.wg-grid td{width:var(--cell);height:var(--cell);border:1px solid var(--wg-line);background:var(--wg-cell);padding:0}.wg-grid td button{width:100%;height:100%;min-height:var(--cell);color:var(--wg-text);font-family:var(--mx-font-display);font-size:calc(var(--cell) * .5);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-weight:600;line-height:1;display:grid;position:relative}.wg-grid td button[aria-disabled=true]{cursor:default}.wg-grid td button:focus-visible{outline:2px solid var(--mx-accent);outline-offset:-2px}.wg-grid td[data-state=B]{background:var(--wg-black)}.wg-grid td[data-state=B] button{color:var(--wg-text-on-black)}.wg-grid td[data-state=O] .wg-cell-label{width:calc(var(--cell) * .78);height:calc(var(--cell) * .78);border:2px solid var(--wg-text);border-radius:50%;place-items:center;display:grid}.wg-grid td[data-state=O] button:not(:has(.wg-cell-label)):after{content:"";border:2px solid var(--wg-text);border-radius:50%;width:55%;height:55%}.wg-grid td[data-state=X] button:after{content:"×";font-family:var(--mx-font-ui);color:var(--wg-mark);font-weight:400;font-size:calc(var(--cell) * .6)}.wg-grid td[data-state=X] .wg-cell-label{opacity:.35}.wg-grid td[data-state=D] button:after{content:"";background:var(--wg-mark);border-radius:50%;width:22%;height:22%}.wg-grid td.wg-col-mark{text-align:center;height:auto;font-family:var(--mx-font-ui);color:var(--mx-bad);background:0 0;border:0;padding-top:2px;font-size:.7rem;line-height:1}.wg-grid td[data-fixed]{background:var(--wg-cell-fixed)}.wg-grid td[data-fixed][data-state=B]{background:var(--wg-black)}.wg-grid-wrap[data-ships] td[data-state=B],.wg-grid-wrap[data-ships] td[data-fixed][data-state=B]{background:var(--wg-cell)}.wg-grid-wrap[data-ships] td[data-fixed][data-state=B]{background:var(--wg-cell-fixed)}.wg-grid-wrap[data-ships] td[data-state=B] button:before{content:"";background:var(--wg-black);position:absolute;inset:14%}.wg-grid-wrap[data-ships] td[data-shape=single] button:before{border-radius:50%}.wg-grid-wrap[data-ships] td[data-shape=top] button:before{border-radius:50% 50% 0 0/60% 60% 0 0;inset:14% 14% 0}.wg-grid-wrap[data-ships] td[data-shape=bottom] button:before{border-radius:0 0 50% 50%/0 0 60% 60%;inset:0 14% 14%}.wg-grid-wrap[data-ships] td[data-shape=left] button:before{border-radius:60% 0 0 60%/50% 0 0 50%;inset:14% 0 14% 14%}.wg-grid-wrap[data-ships] td[data-shape=right] button:before{border-radius:0 60% 60% 0/0 50% 50% 0;inset:14% 14% 14% 0}.wg-grid-wrap[data-ships] td[data-shape=vmid] button:before{inset:0 14%}.wg-grid-wrap[data-ships] td[data-shape=hmid] button:before{inset:14% 0}.wg-grid th.wg-grid-clue{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink);text-align:center;border:0;padding:0 .45em;font-weight:700}.wg-rule{margin:0}.wg-rule svg{width:15rem;max-width:100%;height:auto}.wg-rule rect{fill:var(--wg-cell);stroke:var(--wg-line);stroke-width:1.2px}.wg-rule path{fill:none;stroke:var(--wg-text);stroke-width:1.4px}.wg-rule-text{font-family:var(--mx-font-ui);fill:var(--mx-ink-2);font-size:11px}.wg-symbol-icon{vertical-align:-.08em;display:inline-block}.wg-nonogram .wg-grid th.wg-colclue{vertical-align:bottom;text-align:center;width:var(--cell);padding:0 0 4px}.wg-nonogram .wg-grid th.wg-rowclue{padding-right:6px}.wg-clue{font-family:var(--mx-font-mono);color:var(--mx-ink);white-space:nowrap;align-items:center;gap:1px;margin-left:5px;font-size:.72rem;display:inline-flex}.wg-colclue .wg-clue{justify-content:center;min-height:1.15em;margin:0;display:flex}.wg-nonogram td[data-five]{border-right:2px solid var(--wg-text)}.wg-nonogram tr[data-five] td{border-bottom:2px solid var(--wg-text)}.wg-nonogram td[data-state=C]{border-color:#00000040}.wg-nonogram td[data-state=C] button{color:inherit}.wg-tools{flex-wrap:wrap;gap:6px;display:flex}.wg-tools button{border:1px solid var(--mx-line-2);background:var(--mx-surface);color:var(--mx-ink-2);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);cursor:pointer;border-radius:999px;align-items:center;gap:.45em;padding:.3em .75em .3em .35em;display:inline-flex}.wg-tools button[data-active]{border-color:var(--mx-ink);color:var(--mx-ink);box-shadow:inset 0 0 0 1px var(--mx-ink)}.wg-swatch{border:1px solid var(--mx-line-2);background:var(--mx-paper);border-radius:50%;place-items:center;width:1.5em;height:1.5em;font-weight:600;display:inline-grid}.wg-tower{align-items:flex-end;gap:var(--mx-s4);--wg-cell:#fff;--wg-text:#17181d;flex-wrap:wrap;display:inline-flex}.wg-tower-svg{max-width:100%;height:auto;overflow:visible}.wg-cube path,.wg-cube rect{stroke:#17181d;stroke-width:1.4px;stroke-linejoin:round}.wg-cube-top{filter:brightness(1.18)}.wg-cube-side{filter:brightness(.78)}.wg-cube[role=button]{cursor:pointer}.wg-cube[role=button]:hover rect{stroke-width:2.4px}.wg-cube:focus{outline:none}.wg-cube:focus-visible rect{stroke:var(--mx-accent);stroke-width:3px}.wg-observer{justify-items:center;gap:4px;display:inline-grid}.wg-observer img{width:auto;max-height:5.5rem}.wg-observer-label{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);letter-spacing:.06em;color:var(--mx-ink);font-weight:600}.wg-dial{justify-items:start}.wg-dial-svg{--wg-cell:#fff;--wg-text:#17181d;width:13rem;max-width:100%;height:auto}.wg-dial-svg[data-editable]{cursor:pointer}.wg-dial-face{fill:var(--wg-cell);stroke:var(--wg-text);stroke-width:6px}.wg-dial-inner{fill:var(--wg-cell);stroke:var(--wg-text);stroke-width:4px}.wg-dial-line{stroke:var(--wg-text);stroke-width:4px}.wg-dial-hand{stroke:var(--wg-text);stroke-linecap:round}.wg-dial-hand[data-active]{stroke:var(--mx-accent)}.wg-dial-pin{fill:var(--wg-text)}.wg-numgrid td{position:relative}.wg-numgrid td[data-top=thick]{border-top:2.5px solid var(--wg-text)}.wg-numgrid td[data-bottom=thick]{border-bottom:2.5px solid var(--wg-text)}.wg-numgrid td[data-left=thick]{border-left:2.5px solid var(--wg-text)}.wg-numgrid td[data-right=thick]{border-right:2.5px solid var(--wg-text)}.wg-numgrid td[data-top=thin]{border-top:1px dotted var(--wg-line)}.wg-numgrid td[data-bottom=thin]{border-bottom:1px dotted var(--wg-line)}.wg-numgrid td[data-left=thin]{border-left:1px dotted var(--wg-line)}.wg-numgrid td[data-right=thin]{border-right:1px dotted var(--wg-line)}.wg-numgrid td[data-selected]{background:var(--mx-accent-tint,#fbe6d8)}.wg-numgrid td[data-fixed] .wg-digit{font-weight:700}.wg-numgrid[data-plain] td{border:1.5px solid var(--wg-text)}.wg-dot{z-index:1;background:var(--wg-text);width:9px;height:9px;box-shadow:0 0 0 2px var(--wg-cell);pointer-events:none;border-radius:50%;position:absolute}.wg-dot[data-side=r]{top:50%;right:-5.5px;transform:translateY(-50%)}.wg-dot[data-side=d]{bottom:-5.5px;left:50%;transform:translate(-50%)}.wg-cage-label{font-family:var(--mx-font-ui);font-size:calc(var(--cell) * .24);color:var(--wg-text);font-weight:600;line-height:1;position:absolute;top:2px;left:3px}.wg-digit{font-family:var(--mx-font-ui);font-size:calc(var(--cell) * .5);font-weight:500}.wg-digitpad{flex-wrap:wrap;gap:4px;display:flex}.wg-digitpad button{border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);background:var(--mx-surface);min-width:2.4rem;height:2.4rem;color:var(--mx-ink);font-family:var(--mx-font-ui);cursor:pointer;font-size:1.05rem;font-weight:600}.wg-digitpad button:disabled{opacity:.45;cursor:default}.wg-ring{aspect-ratio:1;width:min(26rem,100%);font-family:var(--mx-font-ui);display:block;position:relative}.wg-ring-circle,.wg-ring-square{background:var(--mx-surface);border:2px solid var(--mx-ink);place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.wg-ring-circle{border-radius:50%;width:3.4rem;height:3.4rem}.wg-ring-circle[data-double]{box-shadow:0 0 0 3px var(--mx-surface), 0 0 0 5px var(--mx-ink)}.wg-ring-circle[data-picked]{box-shadow:0 0 0 3px var(--mx-surface), 0 0 0 5px var(--mx-ink), 0 0 0 9px var(--mx-bad)}.wg-ring-square{border-width:1.5px;width:2rem;height:2rem}.wg-ring-given{color:var(--mx-ink);font-size:1.35rem;font-weight:600}.wg-ring-square .wg-ring-given{font-size:.95rem}.wg-ring-input{text-align:center;width:100%;height:100%;font:inherit;color:var(--mx-ink);border-radius:inherit;background:0 0;border:0;font-size:1.2rem}.wg-ring-square .wg-ring-input{font-size:.9rem}.wg-ring-input:focus-visible{outline:2px solid var(--mx-accent)}.wg-ring-pick{border:1px solid var(--mx-line-2);background:var(--mx-paper);color:var(--mx-ink-2);white-space:nowrap;cursor:pointer;border-radius:999px;margin-top:6px;padding:.1em .5em;font-size:.7rem;position:absolute;top:100%}.wg-ring-pick[aria-pressed=true]{border-color:var(--mx-bad);color:var(--mx-bad);font-weight:600}.wg-figure{width:100%;display:block;position:relative}.wg-figure>img{width:100%;height:auto;display:block}.wg-figure-layer{pointer-events:none;position:absolute;inset:0;container-type:inline-size}.wg-figure-layer>*{pointer-events:auto}.wg-figure-scroll{max-width:100%;padding:2px;display:block;overflow:auto hidden}.wg-figure-field{text-align:center;background:var(--mx-surface);box-shadow:0 0 0 2px var(--mx-paper);padding:.15em .3em;font-size:clamp(.62rem,2.6cqw,.95rem);position:absolute;transform:translate(-50%,-50%)}.wg-figure-field.wg-select{max-width:40%;padding:.2em .25em;font-size:clamp(.6rem,2.3cqw,.8rem)}.wg-figure-given{font-family:var(--mx-font-ui);border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);font-weight:700}.wg-segments{max-width:100%;height:auto;overflow:visible}.wg-seg-fixed,.wg-seg-on{stroke:var(--mx-ink);stroke-width:4px;stroke-linecap:square}.wg-seg-off{stroke:var(--mx-line-2);stroke-width:2px;stroke-dasharray:3 3}.wg-seg-hit{stroke:#0000;cursor:pointer;pointer-events:stroke}.wg-seg-hit:hover{stroke:var(--mx-accent-tint,#dc783c40)}.wg-seg-hit:focus-visible{stroke:#dc783c59;outline:none}.wg-letters{align-items:baseline;font-size:1.15em;line-height:1.5;display:inline-flex}.wg-letters>span{padding:0 .02em}.wg-letters button{color:inherit;font:inherit;line-height:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin:0;padding:0 .04em}.wg-letters button:hover:not(:disabled){border-bottom:2px dotted var(--mx-ink-3,var(--mx-line-2))}.wg-letters button[data-active],.wg-letters button[data-active]:hover:not(:disabled){border-bottom:2.5px solid var(--mx-ink)}.wg-letters button:disabled{cursor:default}.wg-letters button:focus-visible{outline:2px solid var(--mx-accent);outline-offset:1px}.wg-tokens{--wg-token:2rem;border-left:2px solid var(--mx-ink);border-right:2px solid var(--mx-ink);vertical-align:middle;display:inline-flex}.wg-token{width:var(--wg-token);height:var(--wg-token);color:#17181d;font-family:var(--mx-font-ui);font-size:calc(var(--wg-token) * .42);background:#fff;border:1.5px solid #17181d;border-radius:50%;place-items:center;margin:3px 4px;padding:0;font-weight:600;line-height:1;display:inline-grid}button.wg-token{cursor:pointer}button.wg-token:focus-visible{outline:2px solid var(--mx-accent);outline-offset:2px}.wg-token[data-color=red]{background:#f28b82}.wg-token[data-color=green]{background:#d4f27a}.wg-token[data-color=blue]{background:#7cc4f2}.wg-token[data-color=yellow]{background:#f7e06b}.wg-token[data-color=orange]{background:#f7b267}.wg-token[data-color=purple]{background:#c3a3e8}.wg-token[data-color=white]{background:#fff}.wg-token-list{gap:var(--mx-s2);justify-items:start}.wg-token-list-row{align-items:center;gap:var(--mx-s2);display:inline-flex}.wg-figure-check{aspect-ratio:1;cursor:pointer;background:0 0;border:3px solid #0000;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.wg-figure-check:hover:not(:disabled){border:2px dashed var(--mx-line-2)}.wg-figure-check[data-active],.wg-figure-check[data-active]:hover:not(:disabled){border:3px solid var(--mx-ink)}.wg-figure-check:disabled{cursor:default}.wg-figure-check:focus-visible{outline:2px solid var(--mx-accent);outline-offset:2px}.wg-tuples{gap:var(--mx-s2);justify-items:start;display:inline-grid}.wg-tuples table{border-collapse:collapse;margin:0}.wg-tuples th{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);text-align:left;vertical-align:bottom;white-space:normal;border:0;max-width:7em;padding:0 .4em .2em;font-weight:600}.wg-tuples td{border:0;padding:2px .4em 2px 0}.wg-tuples-remove{border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);background:var(--mx-surface);width:1.8rem;height:1.8rem;color:var(--mx-ink-2);cursor:pointer}.wg-tuples-add{font-size:var(--mx-text-s)}.wg-text-keys{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.wg-keys{flex-wrap:wrap;gap:2px;display:inline-flex}.wg-keys button{border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);background:var(--mx-surface);min-width:1.8rem;height:1.8rem;color:var(--mx-ink);cursor:pointer;padding:0 .3rem;font-size:.9rem}.wg-choices{border:1px solid var(--mx-line-2);background:var(--mx-surface);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.wg-choices button{min-width:2.2em;color:var(--mx-ink-2);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.3em .7em;font-weight:600;line-height:1.2}.wg-choices button:hover:not(:disabled){color:var(--mx-ink)}.wg-choices button[data-active]{background:var(--mx-ink);color:var(--mx-paper)}.wg-choices button:disabled{cursor:default}.wg-multi{border-radius:var(--mx-radius-s);flex-wrap:wrap}.wg-multi button{border-radius:var(--mx-radius-s)}.wg-choices button:focus-visible{outline:2px solid var(--mx-accent);outline-offset:1px}.wg-select,.wg-text{font-family:var(--mx-font-ui);font-size:var(--mx-text-s);color:var(--mx-ink);background:var(--mx-surface);border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);max-width:100%;padding:.35em .6em}.wg-text{font-family:var(--mx-font-mono)}.wg-select:focus-visible,.wg-text:focus-visible{outline:2px solid var(--mx-accent);outline-offset:1px}.wg-choice-row{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.wg-select-more{color:var(--mx-ink-2);border-style:dashed}.wg-select[data-duplicate],.wg-text[data-duplicate],.wg-figure-field[data-duplicate]{border-color:var(--mx-bad);color:var(--mx-bad);box-shadow:0 0 0 1px var(--mx-bad)}.wg-compose{gap:var(--mx-s2);vertical-align:middle;display:inline-grid}.wg-compose-slot{border:1px dashed var(--mx-line-2);border-radius:var(--mx-radius-s);background:var(--mx-surface);cursor:pointer;flex-wrap:wrap;align-items:center;gap:4px;min-width:8rem;min-height:2.6rem;padding:4px 6px;display:inline-flex}.wg-compose[data-open] .wg-compose-slot{border-style:solid;border-color:var(--mx-accent)}.wg-compose-empty{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink-3)}.wg-symbol{border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);background:var(--mx-paper);min-width:2.2rem;height:2.2rem;color:var(--mx-ink);cursor:pointer;place-items:center;padding:0 .3rem;font-size:1.25rem;line-height:1;display:inline-grid}.wg-symbol:disabled{cursor:default}.wg-palette{flex-wrap:wrap;gap:4px;display:flex}.wg-palette .wg-symbol{cursor:grab}.wg-palette-action{border:1px solid var(--mx-line-2);border-radius:var(--mx-radius-s);height:2.2rem;color:var(--mx-ink-2);font-family:var(--mx-font-ui);font-size:var(--mx-text-s);cursor:pointer;background:0 0;padding:0 .7rem}.script-tamil{font-family:"Noto Sans Tamil", var(--mx-font-ui)}.morse{font-family:var(--mx-font-mono);letter-spacing:.1em;word-spacing:.5em;font-size:1.3em;font-weight:700;line-height:1.3}input.morse{letter-spacing:0;word-spacing:0}span.script-tamil:not(.wg-compose){font-size:1.3em;line-height:1}img.glyph{vertical-align:middle;mix-blend-mode:multiply;width:auto;height:2.2rem}.formula{white-space:nowrap;font-size:1.5em}.formula img.glyph{height:3.3rem}tr:has(>td.formula)>td{vertical-align:middle}html[data-theme=dark] img.glyph,html[data-theme=dark] img.ink{filter:invert();mix-blend-mode:screen}img.ink{mix-blend-mode:multiply;max-width:100%;height:auto}img.ink-s{width:auto;height:3rem}img.ink-m{width:auto;height:5rem}img.ink-l{width:auto;height:8rem}img.picture{border-radius:var(--mx-radius-s);background:#fff;max-width:100%;height:auto}img.picture-m{width:auto;height:8rem}@media (max-width:40rem){img.ink-m{height:3.2rem}img.ink-l{height:5rem}img.picture-m{height:5.5rem}}.wg-stack{gap:var(--mx-s2);max-width:100%;display:inline-grid}.wg-help{font-family:var(--mx-font-ui);font-size:var(--mx-text-xs);color:var(--mx-ink-3);display:block}.wg-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}
