:root{--bg:#faf7f2;--bg-raised:#fff;--bg-sunken:#f1ece4;--ink:#1a1915;--ink-2:#3d3b34;--ink-3:#76736a;--ink-4:#a8a49a;--rule:#e2ddd2;--rule-2:#cfc9bc;--accent:#8a2b2b;--accent-soft:#f3e4e0;--d-easy:#4a6b3e;--d-easy-bg:#e9eddf;--d-med:#8a6a1e;--d-med-bg:#f3ead2;--d-hard:#8a2b2b;--d-hard-bg:#f3e4e0;--ok:#4a6b3e;--warn:#8a6a1e;--serif:"Source Serif 4", "Source Serif Pro", "Iowan Old Style", Georgia, serif;--sans:"Inter Tight", "Inter", -apple-system, system-ui, sans-serif;--mono:"JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, monospace;--r-sm:4px;--r-md:6px;--r-lg:10px}.theme-dark{--bg:#14130f;--bg-raised:#1c1b16;--bg-sunken:#0e0d0a;--ink:#f2ede2;--ink-2:#cfc9bc;--ink-3:#8f8a7d;--ink-4:#5c594f;--rule:#2a2824;--rule-2:#3d3b34;--accent:#d48a82;--accent-soft:#3a2020;--d-easy:#b7c995;--d-easy-bg:#262e1c;--d-med:#d6b96a;--d-med-bg:#2e2818;--d-hard:#d48a82;--d-hard-bg:#332121;--ok:#b7c995;--warn:#d6b96a}*{box-sizing:border-box}body{font-family:var(--sans);color:var(--ink);background:var(--bg);margin:0}a{color:inherit}.h-display{font-family:var(--serif);letter-spacing:-.02em;font-weight:400;line-height:1.02}.h-serif{font-family:var(--serif);letter-spacing:-.01em;font-weight:400}.mono{font-family:var(--mono);font-feature-settings:"ss01","zero"}.smallcap{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:500}.rule{background:var(--rule);width:100%;height:1px}.rule-2{background:var(--rule-2);width:100%;height:1px}.btn{appearance:none;border:1px solid var(--ink);background:var(--ink);color:var(--bg);font-family:var(--sans);letter-spacing:.01em;border-radius:var(--r-sm);cursor:pointer;padding:10px 18px;font-size:14px;font-weight:500;transition:all .15s}.btn:hover{background:var(--ink-2);border-color:var(--ink-2)}.btn-ghost{appearance:none;border:1px solid var(--rule-2);color:var(--ink);font-family:var(--sans);border-radius:var(--r-sm);cursor:pointer;background:0 0;padding:10px 18px;font-size:14px;font-weight:500;transition:all .15s}.btn-ghost:hover{border-color:var(--ink);background:var(--bg-sunken)}.btn-sm{padding:6px 12px;font-size:13px}.input{appearance:none;border:1px solid var(--rule-2);background:var(--bg-raised);width:100%;color:var(--ink);font-family:var(--sans);border-radius:var(--r-sm);outline:none;padding:10px 14px;font-size:14px}.input:focus{border-color:var(--ink)}.input.mono{font-family:var(--mono);font-size:15px}.chip{font-family:var(--sans);letter-spacing:.02em;border:1px solid var(--rule-2);color:var(--ink-2);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.chip.solid{border-color:#0000}.chip.easy{background:var(--d-easy-bg);color:var(--d-easy);border-color:#0000}.chip.medium{background:var(--d-med-bg);color:var(--d-med);border-color:#0000}.chip.hard{background:var(--d-hard-bg);color:var(--d-hard);border-color:#0000}.dot{border-radius:50%;width:8px;height:8px;display:inline-block}.dot.solved{background:var(--ok)}.dot.attempted{background:var(--warn);box-shadow:inset 0 0 0 2px var(--warn);background:0 0}.dot.unsolved{box-shadow:inset 0 0 0 1px var(--ink-4);background:0 0}.math{font-family:"Cambria Math", "Latin Modern Math", var(--serif);font-style:italic}.math-block{font-family:"Cambria Math", "Latin Modern Math", var(--serif);text-align:center;color:var(--ink);padding:14px 0;font-size:18px;font-style:italic}.mark{font-family:var(--serif);letter-spacing:-.02em;align-items:baseline;gap:2px;font-size:22px;font-weight:400;display:inline-flex}.mark em{color:var(--accent);font-style:italic}.mark .dotmk{background:var(--accent);border-radius:50%;align-self:center;width:5px;height:5px;margin:0 4px 3px;display:inline-block}.row{display:flex}.col{flex-direction:column;display:flex}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.gap-8{gap:32px}.flex-1{flex:1}.center{align-items:center}.between{justify-content:space-between}.scroll::-webkit-scrollbar{width:8px;height:8px}.scroll::-webkit-scrollbar-thumb{background:var(--rule-2);border-radius:4px}.scroll::-webkit-scrollbar-track{background:0 0}.topnav{border-bottom:1px solid var(--rule);background:var(--bg);justify-content:space-between;align-items:center;padding:18px 40px;display:flex}.topnav nav{color:var(--ink-3);gap:28px;font-size:14px;display:flex}.topnav nav a{color:var(--ink-3);cursor:pointer;padding-bottom:2px;text-decoration:none;position:relative}.topnav nav a.active{color:var(--ink)}.topnav nav a.active:after{content:"";background:var(--ink);height:1px;position:absolute;bottom:-19px;left:0;right:0}.topnav .me{color:var(--ink-2);align-items:center;gap:16px;font-size:13px;display:flex}.avatar{background:var(--ink);width:28px;height:28px;color:var(--bg);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.streak{font-family:var(--mono);background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:4px 10px;font-size:12px}@keyframes qb-fly{0%{opacity:0;transform:translate(-50%, -50%) rotate(var(--r0)) scale(.6)}14%{opacity:1;transform:translate(-50%, -50%) rotate(var(--r0)) scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy) + 320px)) rotate(var(--r1)) scale(.95)}}@keyframes qb-burst{0%{opacity:.9;transform:scale(.2)}60%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}@keyframes qb-stamp{0%{opacity:0;transform:translateY(-50%)rotate(-22deg)scale(2.2)}55%{opacity:1;transform:translateY(-50%)rotate(-4deg)scale(.94)}78%{transform:translateY(-50%)rotate(-10deg)scale(1.02)}to{opacity:1;transform:translateY(-50%)rotate(-8deg)scale(1)}}@keyframes qb-banner{0%{opacity:0;transform:translateY(-4px)}60%{opacity:1;transform:translateY(0)}to{opacity:1}}
