@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/62492e45f348cf87-s.200fngwr9-1p7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.p.1takx9ikz9d70.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/c73d4b34880585a8-s.2y9p18vgfwis7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/f00b8cc54454926d-s.2c2xg2hj0hbwk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/741805f5bd1ef272-s.104ommt447oe9.woff2)format("woff2");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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.23jyvdx2mwxjn.woff2)format("woff2");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}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/62492e45f348cf87-s.200fngwr9-1p7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/8f9704ed0c18c9e0-s.p.1takx9ikz9d70.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/c73d4b34880585a8-s.2y9p18vgfwis7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/f00b8cc54454926d-s.2c2xg2hj0hbwk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/741805f5bd1ef272-s.104ommt447oe9.woff2)format("woff2");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:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(../media/ea3421846039b7f3-s.p.23jyvdx2mwxjn.woff2)format("woff2");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}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/20aee433927f7d4b-s.3x137p1ifayze.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/256e1f7f180674ba-s.p.1x971o6gwfy6w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/be3bf58b83159894-s.1ri8jgkzoo1l-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/753b6407f468151f-s.1veyi_qwtij86.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/292081311a6a8abc-s.1t-2a-g4m3ypx.woff2)format("woff2");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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.20at88_q9f_kt.woff2)format("woff2");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}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/20aee433927f7d4b-s.3x137p1ifayze.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/256e1f7f180674ba-s.p.1x971o6gwfy6w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/be3bf58b83159894-s.1ri8jgkzoo1l-.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/753b6407f468151f-s.1veyi_qwtij86.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/292081311a6a8abc-s.1t-2a-g4m3ypx.woff2)format("woff2");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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.20at88_q9f_kt.woff2)format("woff2");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}@font-face{font-family:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.source_serif_4_5aba5e42-module__0pO1QW__className{font-family:"Source Serif 4","Source Serif 4 Fallback"}.source_serif_4_5aba5e42-module__0pO1QW__variable{--font-serif:"Source Serif 4", "Source Serif 4 Fallback"}
:root{--color-bg:#f3f2f2;--color-surface:#eae9e9;--color-text:#201e1d;--color-accent:#0088b0;--color-divider:#201e1d29;--color-neutral-100:#f8f4f4;--color-neutral-200:#eae7e7;--color-neutral-300:#d7d3d3;--color-neutral-400:#bab6b6;--color-neutral-500:#9b9797;--color-neutral-600:#7d7979;--color-neutral-700:#605d5d;--color-neutral-800:#444141;--color-neutral-900:#2d2b2b;--color-accent-100:#e9f8ff;--color-accent-200:#cbeeff;--color-accent-300:#99e0ff;--color-accent-600:#1186ac;--color-accent-700:#006786;--color-accent-800:#004961;--color-accent-2-100:#fff1f4;--color-accent-2-700:#aa0b56;--color-accent-2-800:#790e3d;--bg:var(--color-bg);--bg-sunken:var(--color-surface);--bg-raised:var(--color-bg);--line:var(--color-divider);--line-strong:var(--color-neutral-400);--fg:var(--color-text);--fg-muted:var(--color-neutral-700);--fg-dim:var(--color-neutral-600);--accent:var(--color-accent);--accent-fg:var(--color-bg);--accent-weak:var(--color-accent-100);--ok:var(--color-accent);--ok-weak:var(--color-accent-100);--bad:var(--color-accent-2-700);--bad-weak:var(--color-accent-2-100);--warn:#8a5a00;--warn-weak:#fdf1dc;--info:var(--color-neutral-700);--info-weak:var(--color-neutral-100);--d-easy:var(--color-neutral-600);--d-mid:var(--color-text);--d-hard:var(--color-accent-2-700);--d-expert:var(--color-accent-2-800);--mono:ui-monospace, "SF Mono", SFMono-Regular, "JetBrains Mono", Menlo, monospace;--sans:var(--font-serif), Georgia, serif;--s1:5px;--s2:10px;--s3:15px;--s4:20px;--s5:30px;--s6:40px;--radius:2px;--radius-sm:1px;--radius-lg:4px;--header-h:3rem}@media (prefers-color-scheme:dark){:root{--color-bg:#171615;--color-surface:#201e1d;--color-text:#ece9e7;--color-divider:#ece9e72e;--color-neutral-100:#262322;--color-neutral-200:#2e2b2a;--color-neutral-300:#3b3736;--color-neutral-400:#565150;--color-neutral-600:#9b9694;--color-neutral-700:#b6b1af;--color-neutral-800:#d3cecc;--color-accent:#4fb8d8;--color-accent-100:#10262d;--color-accent-200:#16323b;--color-accent-300:#1f4a58;--color-accent-800:#a5dcee;--color-accent-2-100:#2c1620;--color-accent-2-700:#f07ba8;--color-accent-2-800:#f7a8c6;--bg-raised:var(--color-surface);--accent-fg:#0d1013;--warn:#e0a63a;--warn-weak:#2b2210}}*,:before,:after{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--fg);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{letter-spacing:-.02em;margin:0 0 var(--s2);font-size:38px;font-weight:600;line-height:1}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);margin:var(--s5) 0 var(--s2);font-size:11px;font-weight:600}h3{margin:var(--s4) 0 var(--s2);font-size:.95rem}.app{flex-direction:column;min-height:100%;display:flex}.topbar{align-items:center;gap:var(--s4);height:var(--header-h);padding:0 var(--s4);border-bottom:1px solid var(--line);background:var(--bg-raised);z-index:20;display:flex;position:sticky;top:0}.topbar .brand{font-family:var(--mono);color:var(--fg);letter-spacing:-.02em;font-weight:600}.topbar nav{gap:var(--s3);display:flex}.topbar nav a{color:var(--fg-muted);border-bottom:2px solid #0000;padding:.15rem 0}.topbar nav a:hover{color:var(--fg);text-decoration:none}.topbar nav a[data-active=true]{color:var(--fg);border-bottom-color:var(--accent)}.topbar .spacer{flex:1}.page{width:100%;max-width:72rem;padding:var(--s5) var(--s4) var(--s6);margin:0 auto}.page--wide{flex-direction:column;flex:1;max-width:none;min-height:0;padding:0;display:flex}button,.button{font:inherit;border-radius:var(--radius);background:var(--accent);color:var(--accent-fg);cursor:pointer;border:1px solid #0000;padding:.3rem .75rem;font-size:.875rem;line-height:1.6}button:hover:not(:disabled){filter:brightness(1.08)}button:disabled{opacity:.5;cursor:default}button.secondary{color:var(--fg);border-color:var(--line-strong);background:0 0}button.secondary:hover:not(:disabled){background:var(--bg-sunken);filter:none}button.ghost{color:var(--fg-muted);background:0 0;border-color:#0000;padding:.2rem .4rem}button.ghost:hover:not(:disabled){color:var(--fg);background:var(--bg-sunken);filter:none}select{font:inherit;font-size:.875rem;font-family:var(--mono);border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--bg);color:var(--fg);padding:.28rem .5rem}kbd{font-family:var(--mono);border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--fg-muted);background:var(--bg-sunken);border-bottom-width:2px;padding:.05rem .3rem;font-size:.75rem}pre,code{font-family:var(--mono);font-size:.8125rem}pre{background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2) var(--s3);margin:var(--s2) 0;line-height:1.5;overflow-x:auto}:not(pre)>code{background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);padding:.05em .3em}.muted{color:var(--fg-muted)}.dim{color:var(--fg-dim)}.mono{font-family:var(--mono)}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right}.row{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.stack{gap:var(--s2);flex-direction:column;display:flex}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);padding:var(--s3)}.tag{font-family:var(--mono);color:var(--fg-muted);background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--radius);padding:0 .35rem;font-size:.75rem;display:inline-block}table{border-collapse:collapse;width:100%}thead th{text-transform:uppercase;letter-spacing:.06em;color:var(--fg-muted);text-align:left;padding:var(--s1) var(--s2);border-bottom:1px solid var(--line);white-space:nowrap;font-size:.7rem;font-weight:600}tbody td{padding:.4rem var(--s2);border-bottom:1px solid var(--line);vertical-align:baseline}tbody tr:hover{background:var(--bg-sunken)}table.tight tbody td{padding:.25rem var(--s2)}.verdict{font-family:var(--mono);letter-spacing:.01em;font-size:.8125rem;font-weight:650}.verdict[data-tone=ok]{color:var(--ok)}.verdict[data-tone=bad]{color:var(--bad)}.verdict[data-tone=warn]{color:var(--warn)}.verdict[data-tone=info]{color:var(--fg-muted)}.badge{font-family:var(--mono);border-radius:var(--radius);border:1px solid #0000;align-items:center;gap:.3rem;padding:.1rem .4rem;font-size:.75rem;font-weight:650;display:inline-flex}.badge[data-tone=ok]{color:var(--ok);background:var(--ok-weak);border-color:color-mix(in srgb, var(--ok) 30%, transparent)}.badge[data-tone=bad]{color:var(--bad);background:var(--bad-weak);border-color:color-mix(in srgb, var(--bad) 30%, transparent)}.badge[data-tone=warn]{color:var(--warn);background:var(--warn-weak);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.badge[data-tone=info]{color:var(--fg-muted);background:var(--info-weak);border-color:var(--line)}.difficulty{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:650}.difficulty[data-band=easy]{color:var(--d-easy)}.difficulty[data-band=mid]{color:var(--d-mid)}.difficulty[data-band=hard]{color:var(--d-hard)}.difficulty[data-band=expert]{color:var(--d-expert)}html:has(.solve){height:100%;overflow:hidden}html:has(.solve) body{height:100%;overflow:hidden}html:has(.solve) .app{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}.solve{grid-template-columns:minmax(0,46fr) minmax(0,54fr);min-height:0;display:grid}.solve__statement{border-right:1px solid var(--color-divider);min-height:0;padding:26px 36px 70px;overflow:auto}.solve__work{grid-template-rows:auto minmax(0,1fr) auto;min-height:0;display:grid}.problem__title{align-items:baseline;gap:14px;display:flex}.problem__title h1{font:600 32px/1.05 var(--sans);letter-spacing:-.02em;margin:0}.problem__rating{font:600 17px var(--sans);color:var(--color-neutral-600)}.problem__tags{flex-wrap:wrap;gap:5px;margin-top:12px;display:flex}.problem__limits{width:fit-content;font:400 13px var(--mono);color:var(--color-neutral-800);grid-template-columns:auto auto auto;gap:4px 28px;margin:22px 0 24px;display:grid}.problem__limits span:nth-child(3n+2),.problem__limits span:nth-child(3n){text-align:right}.statement p,.statement li{max-width:62ch;font-size:15px}.statement h2,.statement h3,.statement h4{text-transform:none;letter-spacing:0;color:var(--color-text);margin:26px 0 10px;font-size:18px}.statement :not(pre)>code{font:400 13px var(--mono);background:var(--color-neutral-200);border-radius:var(--radius);border:0;padding:1px 5px}.statement pre{background:var(--color-surface);border-radius:var(--radius);font:400 12.5px/1.75 var(--mono);white-space:pre;border:0;padding:14px 16px;overflow:auto}.problem__sample{margin-bottom:var(--s3)}.problem__sample-label{color:var(--color-neutral-600);margin-bottom:4px;font-size:12px}.toolbar{border-bottom:1px solid var(--color-divider);align-items:center;gap:10px;padding:10px 16px;display:flex}.toolbar select{width:auto;min-height:32px;font-size:13px}.toolbar .btn{padding:6px 14px;font-size:13px}.toolbar__status{color:var(--color-neutral-600);margin-right:auto;font-size:12px}.toolbar__error{color:var(--color-accent-2-700);font-size:12px}.hotkey{font:400 11px var(--mono);color:var(--color-neutral-600);border:1px solid var(--color-divider);border-radius:var(--radius);padding:3px 6px}.editor-host{background:var(--color-bg);min-height:0;overflow:auto}.editor-host .cm-editor{height:100%}.dock{background:var(--color-bg);grid-template-rows:auto auto minmax(0,1fr);min-height:0;display:grid}.dock__grip{border:0;border-top:1px solid var(--color-divider);background:var(--color-neutral-200);cursor:row-resize;border-radius:0;height:6px;padding:0}.dock__grip:hover{background:var(--color-accent-200);filter:none}.dock__head{border-bottom:1px solid var(--color-divider);align-items:center;gap:18px;padding:9px 16px;display:flex}.dock__tab{font:400 14px var(--sans);color:var(--color-neutral-600);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:0 0 2px}.dock__tab:hover{filter:none;color:var(--color-text);background:0 0}.dock__tab[data-on=true]{color:var(--color-text);border-bottom-color:var(--color-accent);font-weight:600}.dock__summary{align-items:center;gap:12px;margin-left:auto;display:flex}.dock__meta,.dock__pass,.dock__id{color:var(--color-neutral-600);font-size:12px}.dock__pass{font-family:var(--mono);color:var(--color-neutral-700);font-size:13px}.dock__id{font-family:var(--mono);margin-left:auto}.dock__collapse{cursor:pointer;color:var(--color-neutral-700);background:0 0;border:0;padding:2px 4px;font-size:13px}.dock__collapse:hover{filter:none;background:0 0}.dock__body{min-height:0;padding:14px 16px 20px;overflow:auto}.dock__hint{color:var(--color-neutral-600);max-width:62ch;font-size:13px}.dock__headline{align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.verdict-badge{font:600 10px var(--mono);letter-spacing:.06em;border-radius:var(--radius);color:var(--color-bg);background:var(--color-neutral-700);padding:2px 6px}.verdict-badge[data-tone=ok]{background:var(--color-accent-700)}.verdict-badge[data-tone=bad]{background:var(--color-accent-2-700)}.verdict-badge[data-tone=warn]{background:var(--warn)}.verdict-name{font:600 14px var(--sans);color:var(--color-neutral-700)}.verdict-name--large{font-size:22px}.verdict-name[data-tone=ok]{color:var(--color-accent-700)}.verdict-name[data-tone=bad]{color:var(--color-accent-2-700)}.verdict-name[data-tone=warn]{color:var(--warn)}.case-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.case-chip{border-radius:var(--radius);border:1px solid var(--color-divider);color:var(--color-text);font:400 13px var(--sans);cursor:pointer;background:0 0;padding:5px 12px}.case-chip:hover{background:var(--color-neutral-100);filter:none}.case-chip[data-on=true]{border-color:var(--color-accent);background:var(--color-accent-100);font-weight:600}.case-chip__dot{color:var(--color-accent-2-700);margin-right:7px;font-size:11px}.case-chip__dot[data-ok=true]{color:var(--color-accent)}.case-detail{flex-direction:column;gap:12px;max-width:760px;display:flex}.case-block__label{color:var(--color-neutral-600);margin-bottom:4px;font-size:12px}.case-block{background:var(--color-surface);border-radius:var(--radius);font:400 12.5px var(--mono);white-space:pre-wrap;word-break:break-word;padding:10px 12px}.case-block[data-mismatch=true]{box-shadow:inset 3px 0 0 var(--color-accent-2-700)}.case-note{color:var(--color-accent-2-700);max-width:62ch;margin:0;font-size:13px}@media (max-width:70rem){html:has(.solve){height:auto;overflow:auto}html:has(.solve) body{height:auto;overflow:auto}html:has(.solve) .app{height:auto;display:block}.solve{display:block}.solve__statement{border-right:0;border-bottom:1px solid var(--color-divider);padding:var(--s4) var(--s3) var(--s5)}.editor-host{height:60vh}}.option{padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:var(--s2);cursor:pointer;background:var(--bg-raised);display:block}.option:hover{border-color:var(--line-strong)}.option[data-chosen=true]{border-color:var(--accent);background:var(--accent-weak)}.option[data-result=ok]{border-color:var(--ok)}.option[data-result=bad]{border-color:var(--bad)}.statement{max-width:44rem}.statement p,.statement ul,.statement ol{margin:var(--s3) 0}.statement li{margin:var(--s1) 0}.statement h2{text-transform:none;letter-spacing:0;color:var(--fg);margin-top:var(--s5);font-size:.95rem}.statement table{margin:var(--s3) 0}.skeleton{background:linear-gradient(90deg, var(--bg-sunken), var(--n2), var(--bg-sunken));border-radius:var(--radius);background-size:200% 100%;height:.9rem;animation:1.2s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.empty{text-align:center;padding:var(--s6) var(--s4);color:var(--fg-muted)}.catalog{max-width:1440px;margin:0;padding:40px 56px 80px}.catalog__head{align-items:baseline;gap:16px;margin-bottom:28px;display:flex}.catalog__count{font:400 14px var(--sans);color:var(--color-neutral-700)}.catalog__body{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:52px;display:grid}.rail{position:sticky;top:32px}.facet{margin-bottom:26px}.facet__label{font:600 11px var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--color-neutral-600);margin-bottom:9px}.facet__list{flex-direction:column;gap:1px;display:flex}.facet__list--scroll{max-height:260px;overflow:auto}.facet__row{text-align:left;border-radius:var(--radius);width:100%;font:400 14px var(--sans);color:var(--color-text);cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;margin-left:-6px;padding:5px 6px;display:flex}.facet__row:hover{background:var(--color-accent-100);filter:none}.facet__row[data-on=true]{background:var(--color-accent-100);font-weight:600}.facet__box{border-radius:var(--radius);border:1px solid var(--color-neutral-400);width:15px;height:15px;color:var(--color-bg);background:0 0;flex:none;place-items:center;font-size:10px;line-height:1;display:grid}.facet__row[data-on=true] .facet__box{border-color:var(--color-accent);background:var(--color-accent)}.facet__sub,.facet__count{font:400 11px var(--sans);color:var(--color-neutral-600)}.facet__count{margin-left:auto}.facet__more{font:400 11px var(--sans);color:var(--color-neutral-600);margin-top:8px}.results-bar{align-items:center;gap:10px;display:flex}.results-bar .input{flex:1;max-width:460px}.results-bar select{width:auto;margin-left:auto;font-size:13px}.active-filters{flex-wrap:wrap;align-items:center;gap:6px;min-height:28px;margin-top:16px;display:flex}.active-filters__label{font:400 12px var(--sans);color:var(--color-neutral-600);margin-right:2px}.active-chip{border:1px solid var(--color-accent-300);background:var(--color-accent-100);color:var(--color-accent-800);border-radius:var(--radius);font:400 12px var(--sans);cursor:pointer;align-items:center;gap:7px;padding:3px 8px 3px 10px;display:inline-flex}.active-chip:hover{background:var(--color-accent-200);filter:none}.active-chip span{opacity:.55}.catalog table{margin-top:14px}.catalog .solved-mark{color:var(--color-accent);text-align:center}.rating{font:600 14px var(--sans)}.rating[data-band=easy]{color:var(--color-neutral-600)}.rating[data-band=mid]{color:var(--color-text)}.rating[data-band=hard]{color:var(--color-accent-2-700)}.catalog__empty{padding:40px 4px}.catalog__empty h2{font:600 19px var(--sans);text-transform:none;letter-spacing:0;color:var(--color-text);margin:0 0 6px}.catalog__empty p{font:400 14px var(--sans);color:var(--color-neutral-700);max-width:420px;margin:0}.catalog__footer{align-items:center;gap:16px;margin-top:24px;display:flex}.catalog__footer span{font:400 12px var(--sans);color:var(--color-neutral-600)}.input{width:100%;min-height:36px;font:inherit;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius);padding:6px 10px;font-size:14px}.input::placeholder{color:color-mix(in srgb, var(--color-text) 65%, transparent);opacity:1}.input:hover{border-color:color-mix(in srgb, var(--color-text) 45%, transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}.btn{cursor:pointer;font-family:var(--sans);color:var(--color-text);padding:var(--s2) 18px;border-radius:var(--radius);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-600);filter:none}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover{background:color-mix(in srgb, var(--color-text) 7%, transparent);filter:none}.btn-ghost{color:var(--color-accent);padding-inline:var(--s1)}.btn-ghost:hover{background:color-mix(in srgb, var(--color-accent) 10%, transparent);filter:none}.tag-neutral{background:var(--color-neutral-100);color:var(--color-neutral-800);letter-spacing:.02em;border-radius:calc(var(--radius) * .75);border:0;padding:3px 10px;font-size:11px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width:1100px){.catalog{padding:var(--s4) var(--s3) var(--s6)}.catalog__body{gap:var(--s4);grid-template-columns:minmax(0,1fr)}.rail{position:static}}.field{margin-bottom:var(--s3);max-width:52rem}.field>label{text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted);margin-bottom:var(--s1);font-size:.75rem;display:block}.field>label .muted{text-transform:none;letter-spacing:0}input[type=text],input[type=number],.field input,.field textarea{font:inherit;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--fg);padding:.35rem .5rem;font-size:.875rem}.field textarea{font-family:var(--mono);resize:vertical;font-size:.8125rem;line-height:1.5}input[type=number]{font-family:var(--mono);width:auto}input[type=checkbox]{accent-color:var(--accent)}.auth{max-width:26rem;margin:var(--s6) auto 0}.auth h1{margin-bottom:var(--s2);font-size:30px}.auth__lede{color:var(--color-neutral-700);margin:0 0 var(--s4);font-size:15px}.auth__form{gap:var(--s2);margin-bottom:var(--s3);flex-direction:column;display:flex}.auth__form .btn{align-self:flex-start}.auth__hint{color:var(--color-neutral-600);margin:4px 0 0;font-size:12px}.auth__error{color:var(--color-accent-2-700);margin:0;font-size:13px}.auth__note{color:var(--color-neutral-600);margin-top:var(--s3);font-size:13px}.auth__links{gap:var(--s3);font-size:14px;display:flex}.topbar__account{align-items:center;gap:var(--s2);font-size:13px;display:flex}.topbar__account .btn{padding:5px 12px;font-size:13px}.banner{align-items:center;gap:var(--s3);background:var(--color-accent-100);border-bottom:1px solid var(--color-accent-300);color:var(--color-accent-800);flex-wrap:wrap;padding:9px 22px;font-size:14px;display:flex}
