:root{--bg:#f8f9f5;--surface:#fff;--surface-alt:#f0f2ec;--surface-hover:#f4f6ef;--ink:#222b25;--muted:#697267;--faint:#92998f;--border:#e1e5db;--border-strong:#b9c5b3;--accent:#3d653f;--accent-strong:#284b2b;--accent-ink:#fff;--ok:#1d7a44;--warn:#8a5a09;--error:#b3261e;--ok-bg:#e0f3e8;--ok-border:#aedbbd;--warn-bg:#faf0d7;--warn-border:#e3ca93;--error-bg:#fbe9e6;--error-border:#eebab4;--info-bg:#edf3e7;--info-border:#c9d8be;--radius:12px;--radius-sm:7px;--shadow-sm:0 1px 2px #161b2512;--shadow-md:0 4px 14px #161b251a;--shadow-lg:0 12px 32px #161b2529;--topbar-h:76px;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--serif:Georgia, "Times New Roman", serif}:root[data-theme=default]{--bg:#171c19;--surface:#1f2521;--surface-alt:#2a322b;--surface-hover:#2d372e;--ink:#e8ede3;--muted:#abb5a5;--faint:#6d7890;--border:#374237;--border-strong:#53654f;--accent:#adcf91;--accent-strong:#c3dea8;--accent-ink:#192316;--ok:#62cf8f;--warn:#e3ac4e;--error:#f0938c;--ok-bg:#132a1d;--ok-border:#275e3f;--warn-bg:#2f2510;--warn-border:#6f531a;--error-bg:#341c1a;--error-border:#71302b;--info-bg:#2b3825;--info-border:#506442;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 4px 14px #00000080;--shadow-lg:0 12px 32px #0009}:root[data-theme=midnight]{--bg:#0c0c0c;--surface:#161616;--surface-alt:#202020;--surface-hover:#272727;--ink:#f0f0f0;--muted:#a3a3a3;--faint:#737373;--border:#2a2a2a;--border-strong:#404040;--accent:#adcf91;--accent-strong:#c3dea8;--accent-ink:#192316;--ok:#62cf8f;--warn:#e3ac4e;--error:#f0938c;--ok-bg:#132a1d;--ok-border:#275e3f;--warn-bg:#2f2510;--warn-border:#6f531a;--error-bg:#341c1a;--error-border:#71302b;--info-bg:#1c2719;--info-border:#3f5436;--shadow-sm:0 1px 2px #000000a6;--shadow-md:0 4px 14px #000000a6;--shadow-lg:0 12px 32px #000000bf}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6}:root[data-theme=default] body,:root[data-theme=midnight] body{background:var(--bg)}body.dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}::selection{background:#5a7e4440}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.015em;margin:0 0 .5rem;line-height:1.25}h1{font-size:1.9rem;font-weight:750}h2{margin-top:1.25rem;font-size:1.25rem;font-weight:700}h3{margin-top:1rem;font-size:1rem;font-weight:650}p{margin:0 0 .7rem}button{font:inherit}input,select,textarea{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .7rem;transition:border-color .12s,box-shadow .12s}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus,button:focus-visible,[tabindex]:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #5a7e4438}:root[data-theme=default] input:focus,:root[data-theme=default] select:focus,:root[data-theme=default] textarea:focus,:root[data-theme=default] button:focus-visible,:root[data-theme=midnight] input:focus,:root[data-theme=midnight] select:focus,:root[data-theme=midnight] textarea:focus,:root[data-theme=midnight] button:focus-visible{box-shadow:0 0 0 3px #8aabff40}.app-shell{flex-direction:column;min-height:100%;display:flex}.topbar{min-height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);z-index:30;align-items:center;gap:1.25rem;padding:.55rem 1.5rem;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:.55rem;font-size:1.2rem;font-weight:800;display:flex}.brand:hover{text-decoration:none}.main-nav{flex:1;gap:.25rem;display:flex}.main-nav a{color:var(--muted);border-radius:999px;padding:.4rem .85rem;font-size:.92rem;font-weight:600;transition:background .12s,color .12s}.main-nav a:hover{color:var(--ink);background:var(--surface-alt);text-decoration:none}.main-nav a.active{color:var(--accent);background:var(--info-bg)}:root[data-theme=default] .main-nav a.active,:root[data-theme=midnight] .main-nav a.active{color:var(--accent-strong)}.account{align-items:center;gap:.9rem;display:flex}.handle{color:var(--muted);font-size:.9rem;font-weight:600}.app-main{flex:1;width:100%;padding:1.75rem 1.5rem 3.5rem}.app-footer{border-top:1px solid var(--border);color:var(--muted);background:var(--surface);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:.9rem 1.5rem;font-size:.82rem;display:flex}.page{max-width:1280px;margin:0 auto}.page.narrow{max-width:520px}.page-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.25rem;display:flex}.page-header h1{margin-bottom:.35rem}.subtitle{color:var(--muted);max-width:46rem;font-size:1rem}.muted{color:var(--muted)}.small{font-size:.82rem}.button{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);cursor:pointer;box-shadow:var(--shadow-sm);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.05rem;font-size:.93rem;font-weight:650;transition:transform 80ms,box-shadow .12s,filter .12s,background .12s;display:inline-flex}.button:hover{filter:brightness(1.07);box-shadow:var(--shadow-md);text-decoration:none}.button:active{box-shadow:var(--shadow-sm);transform:translateY(1px)}.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.button.small{border-radius:8px;padding:.34rem .7rem;font-size:.85rem}.button.ghost{color:var(--accent);box-shadow:none;border-color:var(--border-strong);background:0 0}:root[data-theme=default] .button.ghost,:root[data-theme=midnight] .button.ghost{color:var(--accent-strong)}.button.ghost:hover{background:var(--info-bg);border-color:var(--accent);filter:none}.link-button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;border-radius:4px;padding:.15rem .1rem;font-weight:600}:root[data-theme=default] .link-button,:root[data-theme=midnight] .link-button{color:var(--accent-strong)}.link-button:hover{text-decoration:underline}.chip{background:var(--surface-alt);border:1px solid var(--border);color:var(--ink);border-radius:999px;align-items:center;margin-right:.3rem;padding:.12rem .6rem;font-size:.78rem;font-weight:550;line-height:1.5;display:inline-flex}.chip.small-chip{font-size:.72rem}.chip-ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok)}.chip-warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn)}.chip-row{flex-wrap:wrap;align-items:center;gap:.3rem;margin:.45rem 0;display:flex}.difficulty{text-transform:capitalize;letter-spacing:.02em;border:1px solid var(--border);background:var(--surface-alt);border-radius:7px;padding:.14rem .55rem;font-size:.76rem;font-weight:700;display:inline-block}.difficulty-easy{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok)}.difficulty-medium{background:var(--info-bg);border-color:var(--info-border);color:var(--accent)}.difficulty-hard{background:var(--error-bg);border-color:var(--error-border);color:var(--error)}.filters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.15rem;display:flex}.filters label,.form label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);flex-direction:column;gap:.3rem;font-size:.78rem;font-weight:700;display:flex}.filters input,.filters select{text-transform:none;letter-spacing:normal;min-width:11rem;font-size:.95rem;font-weight:400}.form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);flex-direction:column;gap:1rem;margin-top:1.25rem;padding:1.6rem;display:flex}.form h1{font-size:1.5rem}.form-meta{justify-content:flex-end;margin-top:-.45rem;display:flex}.form-meta a{color:var(--muted);font-size:.85rem;text-decoration:none}.form-meta a:hover{color:var(--ink);text-decoration:underline}.result-count{color:var(--muted);margin:0 0 .8rem;font-size:.88rem;font-weight:550}.problem-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.1rem;display:grid}.problem-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;gap:.15rem;padding:1.15rem 1.2rem 1rem;transition:transform .12s,box-shadow .15s,border-color .12s;display:flex;position:relative}.problem-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-3px)}.problem-card.solved{border-color:var(--ok-border);background:var(--surface);box-shadow:inset 3px 0 0 var(--ok), var(--shadow-sm)}.problem-card h2{margin:.45rem 0 .25rem;font-size:1.08rem;font-weight:700;line-height:1.4}.problem-card h2 a:hover{color:var(--accent);text-decoration:none}.problem-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.problem-card-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;padding-top:.7rem;display:flex}.cta-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:17rem;box-shadow:var(--shadow-sm);flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 1.1rem;display:flex}.split{align-items:start;gap:0 .6rem;display:grid}.split-pane{min-width:0}.split-sash{cursor:col-resize;background:linear-gradient(to right, transparent 4px, var(--border) 4px, var(--border) 6px, transparent 6px);border-radius:6px;align-self:stretch;width:10px;height:100%;min-height:400px}.split-sash:hover,.split-sash:focus-visible{background:linear-gradient(to right, transparent 3px, var(--accent) 3px, var(--accent) 7px, transparent 7px)}.statement-pane{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.5rem 1.6rem}.breadcrumb{color:var(--muted);margin:0 0 .4rem;font-size:.82rem;font-weight:550}.breadcrumb a{font-weight:650}.statement-pane h1{margin-bottom:.5rem;font-size:1.65rem}.statement-text{font-family:var(--serif);font-size:1.1rem;line-height:1.75}.rich-text p:last-child{margin-bottom:0}.figure-image{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;width:auto;max-width:100%;height:auto;max-height:420px;margin:.9rem auto;padding:.6rem;display:block}.assumptions{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);margin:1rem 0;padding:.8rem 1rem}.assumptions h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .35rem;font-size:.82rem}.assumptions ul{margin:.2rem 0 0;padding-left:1.2rem}.side-actions{border-top:1px solid var(--border);margin-top:1.1rem;padding-top:.9rem}.side-actions h3{margin-top:0;font-size:.95rem}.hint-text{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius-sm);padding:.6rem .8rem;font-size:.92rem}.solution-list,.compare-view{margin-top:.9rem}.solution-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-alt);margin-bottom:.7rem;padding:.9rem 1rem}.solution-card h4{margin:0 0 .35rem}.compare-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:.8rem;display:grid}.attempt-list{flex-direction:column;gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.attempt-link{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:.8rem;width:100%;padding:.5rem .7rem;font-weight:550;transition:border-color .12s,background .12s;display:flex}.attempt-link:hover{border-color:var(--border-strong);background:var(--surface-hover)}.attempt-link.active{border-color:var(--accent);background:var(--info-bg);box-shadow:0 0 0 1px var(--accent)}.editor-pane,.viewing-pane{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.1rem 1.25rem 1.3rem}.pane-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.8rem;display:flex}.editor-pane .pane-header{top:calc(var(--topbar-h) + 8px);background:var(--surface);z-index:10;padding-top:.35rem;position:sticky}.pane-header h2{margin:0;font-size:1.1rem}.pane-header-actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.toggle{color:var(--muted);cursor:pointer;align-items:center;gap:.35rem;font-size:.83rem;font-weight:550;display:inline-flex}.toggle input{accent-color:var(--accent);width:1rem;height:1rem;margin:0}.toggle.small{margin-top:.6rem;font-size:.85rem;font-weight:500}.proof-editor{margin-top:.8rem}.editor-toolbar{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-alt);flex-wrap:wrap;align-items:center;gap:.8rem;padding:.45rem .55rem;display:flex}.toolbar-group{gap:.25rem;display:flex}.toolbar-button{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:7px;padding:.25rem .55rem;font-size:.85rem;font-weight:600;transition:border-color .12s,background .12s,color .12s}.toolbar-button:hover{border-color:var(--border-strong)}.toolbar-button.active{background:var(--info-bg);border-color:var(--accent);color:var(--accent)}:root[data-theme=default] .toolbar-button.active,:root[data-theme=midnight] .toolbar-button.active{color:var(--accent-strong)}.math-edit-bar,.conversion-preview{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:.6rem;padding:.5rem .75rem;font-size:.9rem;display:flex}.conversion-preview{background:var(--info-bg);border-color:var(--info-border);display:block}.conversion-preview h3{margin-top:0}.conversion-text{font-family:var(--mono);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.55rem .65rem}.math-edit-bar input{min-width:16rem;font-family:var(--mono)}.editor-content{margin-top:.6rem}.ProseMirror{outline:none;min-height:360px;padding:.75rem .35rem;font-size:1.03rem;line-height:1.7}.ProseMirror p{margin:0 0 .85rem}.ProseMirror blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:.6rem 0;padding:.2rem 0 .2rem .9rem}.ProseMirror code{font-family:var(--mono);background:var(--surface-alt);border-radius:5px;padding:.1rem .35rem;font-size:.9em}.ProseMirror pre{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--mono);padding:.75rem;overflow-x:auto}.math-node{border-radius:4px;padding:0 .15rem}.math-inline-node{cursor:pointer}.math-inline-node:hover,.math-block-node:hover{background:var(--info-bg)}.math-block-node{cursor:pointer;text-align:center;padding:.6rem 0}.notation-mark{-webkit-text-decoration:underline wavy var(--accent) 1.5px;text-decoration:underline wavy var(--accent) 1.5px;text-underline-offset:3px}.proof-editor{position:relative}.notation-card{z-index:20;background:var(--surface);width:max-content;max-width:min(17rem,100% - 1rem);color:var(--ink);border:1px solid var(--accent);box-shadow:var(--shadow-lg);border-radius:10px;padding:.5rem .65rem .55rem;position:absolute}.notation-card:before{content:"";background:inherit;border-left:1px solid var(--accent);border-top:1px solid var(--accent);width:9px;height:9px;position:absolute;top:-5px;left:22px;transform:rotate(45deg)}.notation-card-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.35rem;font-size:.62rem;font-weight:700;display:flex}.notation-card-main{margin:.25rem 0 .45rem;font-size:.9rem;line-height:1.45}.notation-card-phrase{color:var(--muted)}.notation-card-arrow{color:var(--accent);margin:0 .4rem;font-weight:700}.notation-card .notation-symbol{color:var(--accent);font-size:1.05rem;font-weight:800}:root[data-theme=default] .notation-card .notation-symbol,:root[data-theme=midnight] .notation-card .notation-symbol{color:var(--accent-strong)}.notation-card-keys{color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.notation-card-keys .key{font:600 .72rem var(--mono);color:var(--ink);background:var(--surface-alt);border:1px solid var(--border-strong);cursor:pointer;border-radius:6px;padding:.1rem .4rem}.notation-card-keys .key:hover{border-color:var(--accent)}.save-state{color:var(--muted);font-size:.82rem}.conflict-diff{grid-template-columns:1fr 1fr;gap:.75rem;margin:.6rem 0;display:grid}.conflict-diff h4{margin:0 0 .25rem;font-size:.85rem}.diff-text{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);max-height:12rem;margin:0;padding:.55rem;font-size:.85rem;overflow:auto}.diff-changed{background:#f6e3a1;border-radius:3px}:root[data-theme=default] .diff-changed,:root[data-theme=midnight] .diff-changed{color:#fff;background:#5a4a17}.snapshot-view{flex-direction:column;gap:.25rem;margin-top:.9rem;display:flex}.snapshot-title{margin:0 0 .3rem;font-size:.95rem}.snapshot-block{border-radius:var(--radius-sm);border:1px solid #0000;gap:.7rem;padding:.5rem .65rem;transition:background .12s,border-color .12s;display:flex}.snapshot-block.active{background:var(--info-bg);border-color:var(--info-border)}.snapshot-block p{white-space:pre-wrap;margin:0;line-height:1.65}.block-tag{font-family:var(--mono);color:var(--muted);flex-shrink:0;padding-top:.15rem;font-size:.72rem}.block-num{font-family:var(--mono);color:var(--accent);background:var(--info-bg);border:1px solid var(--info-border);cursor:default;border-radius:6px;flex-shrink:0;align-self:flex-start;margin-top:.15rem;padding:.1rem .42rem;font-size:.74rem;font-weight:700}:root[data-theme=default] .block-num,:root[data-theme=midnight] .block-num{color:var(--accent-strong)}mark{color:inherit;background:#ffe08a;border-radius:4px;padding:0 .15rem}:root[data-theme=default] mark,:root[data-theme=midnight] mark{color:#fff3d1;background:#7a5f16}.feedback-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-top:1.1rem;padding:1.25rem 1.35rem}.feedback-panel.empty h3{margin-top:0}.verdict{border:1px solid var(--border);border-radius:10px;align-items:center;gap:.5rem;margin-bottom:.65rem;padding:.45rem .9rem;font-size:1.02rem;font-weight:700;display:inline-flex}.verdict:before{content:"";background:currentColor;border-radius:999px;flex-shrink:0;width:.6rem;height:.6rem}.verdict-accepted{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok)}.verdict-needs_revision{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn)}.verdict-incorrect{background:var(--error-bg);border-color:var(--error-border);color:var(--error)}.verdict-inconclusive,.verdict-not_evaluated{background:var(--surface-alt);color:var(--muted)}.verdict-inconclusive:before,.verdict-not_evaluated:before{background:var(--faint)}.feedback-summary{font-size:1.02rem;line-height:1.65}.policy-reasons{color:var(--muted);margin:0 0 .8rem;font-size:.88rem}.policy-reasons summary{cursor:pointer}.policy-reasons ul{margin:.4rem 0 0;padding-left:1.1rem}.issue-list{flex-direction:column;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.issue{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-sm);border-left-width:4px;padding:.65rem .85rem;transition:border-color .12s,box-shadow .12s,transform 80ms;position:relative}.issue-button{width:100%;color:inherit;font:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.issue-button:before{content:"";position:absolute;inset:0}.issue a{z-index:1;position:relative}.issue-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.issue:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.issue.selected{background:var(--info-bg);border-color:var(--accent);border-left-width:4px}.issue-error{border-left-color:var(--error)}.issue-gap{border-left-color:var(--warn)}.issue-clarification{border-left-color:var(--accent)}.issue-style{border-left-color:var(--border-strong)}.issue-header{flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-bottom:.3rem;font-size:.78rem;display:flex}.severity{text-transform:uppercase;letter-spacing:.05em;font-size:.74rem;font-weight:700}.severity-error{color:var(--error)}.severity-gap{color:var(--warn)}.issue-anchor{color:var(--muted);font-weight:600}.issue p{margin:0 0 .3rem}.issue-next{color:var(--muted);font-size:.88rem}.notice{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt);margin:.6rem 0;padding:.6rem .8rem;font-size:.92rem}.notice-warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--ink)}.notice-error{background:var(--error-bg);border-color:var(--error-border);color:var(--ink)}.notice-ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ink)}.toast{color:#f2f5fb;z-index:50;max-width:min(90vw,40rem);box-shadow:var(--shadow-lg);background:#1c2333;border:1px solid #ffffff1f;border-radius:12px;align-items:center;gap:.9rem;padding:.65rem 1.1rem;font-size:.9rem;animation:.18s ease-out toast-in;display:flex;position:fixed;bottom:1.4rem;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,.6rem)}to{opacity:1;transform:translate(-50%)}}.toast .link-button{color:#bcd0ff;white-space:nowrap}.board-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.board-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.1rem 1.25rem}.board-card h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:0;font-size:.85rem}.board-points{letter-spacing:-.02em;margin:.2rem 0;font-size:2rem;font-weight:800}.data-table{border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-sm);margin:.6rem 0 1.2rem;font-size:.93rem;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.6rem .8rem}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .1s}.data-table tbody tr:hover{background:var(--surface-hover)}.data-table th{background:var(--surface-alt);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.76rem;font-weight:700}.self-row,.data-table tr.self-row:hover{background:var(--info-bg)}.actions{flex-wrap:wrap;gap:.35rem;display:flex}.tabs{flex-wrap:wrap;gap:.4rem;margin:.9rem 0;display:flex}.tab{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--muted);border-radius:999px;padding:.4rem 1rem;font-size:.88rem;font-weight:600;transition:background .12s,color .12s,border-color .12s}.tab:hover{border-color:var(--border-strong);color:var(--ink)}.tab.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.opt-in{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:1rem;margin:.7rem 0;padding:.7rem .9rem;display:flex}.opt-in input{accent-color:var(--accent);width:1.05rem;height:1.05rem}.event-list{flex-direction:column;gap:.45rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.event{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:.7rem;padding:.5rem .75rem;display:flex}.event.reversed{opacity:.65}@media (width<=900px){.split{display:block!important}.split-sash{display:none}.split-pane+.split-pane{margin-top:1rem}.app-main{padding:1.1rem .9rem 2.5rem}.topbar{flex-wrap:wrap;gap:.6rem 1rem;padding:.55rem .9rem}.editor-pane .pane-header{position:static}.page-header{flex-direction:column}.cta-box{max-width:none}h1{font-size:1.6rem}.conflict-diff{grid-template-columns:1fr}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=default],:root[data-theme=midnight]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);padding:12px 20px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.topbar{box-shadow:none;gap:3rem;padding:0 4%}.brand{letter-spacing:-.07em;gap:.6rem;font-size:1.4rem}.main-nav{align-self:stretch;align-items:stretch;gap:1.7rem}.main-nav a{isolation:isolate;border-bottom:2px solid #0000;border-radius:0;align-items:center;padding:0 .1rem;font-size:.86rem;font-weight:500;display:flex;position:relative}.main-nav a:before{content:"";z-index:-1;border-radius:var(--radius-sm);background:var(--surface-alt);opacity:0;height:2.2rem;transition:opacity .12s;position:absolute;inset:50% -.5rem auto;transform:translateY(-50%)}.main-nav a:hover{background:0 0}.main-nav a:hover:before{opacity:.55}.main-nav a.active{border-bottom-color:var(--accent);color:var(--ink);background:0 0}.account{gap:1.3rem;font-size:.82rem}.account>a:not(.button){color:var(--ink)}.account .link-button{color:var(--muted);font-size:.8rem;font-weight:500}.app-main{padding:2.5rem 4% 4rem}.app-footer{background:0 0;padding:1.4rem 4%;font-size:.75rem}.page{max-width:1320px}.page.narrow{max-width:460px;margin-top:3rem}.page.narrow>h1{font-family:var(--serif);font-size:2.5rem;font-weight:400}.form{box-shadow:none;margin-bottom:1.5rem;padding:1.8rem}.form label{text-transform:none;letter-spacing:0;font-size:.88rem;font-weight:500}.form input{min-height:44px}.button{letter-spacing:-.01em;border:1px solid #0000;border-radius:10px;gap:.6rem;padding:.68rem 1.15rem;font-weight:600;transition:transform .12s,box-shadow .15s,background .15s,border-color .15s,filter .15s;box-shadow:inset 0 1px #ffffff29,0 1px 2px #00000029}.button.small{border-radius:9px;padding:.5rem .85rem}.button:hover{filter:brightness(1.04);box-shadow:inset 0 1px #ffffff2e,0 4px 14px #0000002e}.button:active{transform:translateY(1px);box-shadow:inset 0 1px #ffffff1f,0 1px 2px #00000029}.button .btn-icon{stroke-width:1.6px;flex-shrink:0;width:1.05rem;height:1.05rem}.button.ghost{background:var(--surface);color:var(--ink);border-color:var(--border-strong);box-shadow:0 1px 2px #00000014}.button.ghost:hover{background:var(--surface-hover);border-color:var(--border-strong);filter:none;box-shadow:0 4px 14px #0000001f}.chip{border:none;border-radius:5px;font-weight:450}.difficulty{letter-spacing:0;background:0 0;border:0;padding:0;font-size:.78rem;font-weight:500}.difficulty:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px;margin:0 7px 2px 0;display:inline-block}.eyebrow{letter-spacing:.13em;color:var(--muted);font-size:.65rem;font-weight:650}.library-layout{grid-template-columns:205px minmax(0,1fr);gap:3rem;display:grid}.library-sidebar{border-right:1px solid var(--border);padding-right:1.5rem}.library-sidebar>.eyebrow{margin-bottom:1rem}.topic-heading{margin-top:2rem}.topic-link{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:.65rem;margin:2px 0;padding:.6rem .65rem;font-size:.79rem;display:flex}.topic-link.active{color:var(--accent);background:var(--info-bg);font-weight:600}.topic-dot{border:1px solid;border-radius:50%;flex-shrink:0;width:5px;height:5px}.section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.section-heading .eyebrow{margin-bottom:.5rem}.section-heading h1{letter-spacing:-.045em;margin:0;font-size:1.45rem;font-weight:550}.collection-label{border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:20px;padding:.25rem .65rem;font-size:.68rem}.library-results{min-width:0}.library-results .filters{box-shadow:none;background:0 0;border:0;flex-wrap:nowrap;gap:.65rem;margin-bottom:.8rem;padding:0}.library-results .filters label{min-width:0}.library-results .filters input,.library-results .filters select{width:100%;min-width:0;min-height:40px;font-size:.79rem}.library-results .filters .search-field{flex:1;position:relative}.search-field>span[aria-hidden]{font-size:1.3rem;position:absolute;top:4px;left:12px}.search-field input{padding-left:2.2rem}.library-results .filters .mobile-topic{display:none}.results-meta{min-height:32px;color:var(--muted);justify-content:space-between;align-items:center;margin:.65rem 0;font-size:.72rem;display:flex}.results-meta .link-button{font-size:inherit;font-weight:500}.problem-grid{border:1px solid var(--border);background:var(--surface);border-radius:9px;display:block;overflow:hidden}.problem-list-heading{background:var(--surface-alt);color:var(--muted);letter-spacing:.09em;grid-template-columns:minmax(0,1fr) 105px 95px 18px;gap:1rem;padding:.85rem 1.2rem;font-size:.6rem;display:grid}.problem-list-heading .sort-header{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;justify-self:start;align-items:center;gap:.3rem;padding:.1rem 0;display:inline-flex}.problem-list-heading .sort-header:hover,.problem-list-heading .sort-header.active{color:var(--ink)}.problem-list-heading .sort-arrow{opacity:.4;font-size:.72rem;line-height:1}.problem-list-heading .sort-header:hover .sort-arrow,.problem-list-heading .sort-header.active .sort-arrow{opacity:.9}.problem-card{border:0;border-bottom:1px solid var(--border);box-shadow:none;border-radius:0;grid-template-columns:24px minmax(0,1fr) 105px 95px 18px;align-items:center;gap:1rem;padding:1.1rem 1.2rem;display:grid;position:relative}.problem-card:last-child{border-bottom:0}.problem-card h2{letter-spacing:-.01em;margin:0 0 .28rem;font-size:.91rem;font-weight:550}.problem-card h2 a{color:var(--ink)}.problem-card h2 a:after{content:"";position:absolute;inset:0}.problem-card:focus-within{outline:2px solid var(--accent);outline-offset:-2px}.problem-card h2 a:focus-visible{outline:0}.problem-identity{min-width:0}.problem-identity p{color:var(--muted);margin:0;font-size:.68rem}.problem-number{color:var(--faint);font:.69rem var(--mono);align-self:start;padding-top:3px}.problem-status{color:var(--muted);font-size:.7rem}.problem-status.is-solved{color:var(--ok)}.row-arrow{color:var(--faint);font-size:1rem}.library-caption{color:var(--muted);margin:1rem 0;font-size:.68rem}.empty-state,.library-loading{text-align:center;color:var(--muted);padding:4rem 1rem}.empty-state>span{font:3rem var(--serif);color:var(--accent)}.empty-state h3{color:var(--ink)}.empty-state p{margin-bottom:1.25rem;font-size:.85rem}.load-more{margin-top:1rem}.workspace-page{max-width:1500px}.workspace-heading{justify-content:space-between;align-items:center;gap:1rem;margin:-.75rem 0 1.5rem;display:flex}.workspace-heading .breadcrumb{margin:0}.workspace-heading>span{color:var(--muted);font-size:.7rem}.statement-pane,.editor-pane,.viewing-pane{box-shadow:none;padding:1.6rem}.statement-pane{background:var(--surface)}.statement-pane h1{font-family:var(--serif);letter-spacing:-.035em;margin:1.25rem 0;font-size:2rem;font-weight:400;line-height:1.18}.statement-pane>.breadcrumb{display:none}.statement-text{margin:1.8rem 0;font-size:1.16rem;line-height:1.85}.statement-pane>.chip-row{gap:.5rem}.assumptions{border:0;padding:1.25rem;font-size:.9rem;line-height:1.75}.assumptions h3{color:var(--ink);margin-bottom:1rem;font-size:.72rem}.assumptions ul{padding:0;list-style:none}.assumptions li+li{border-top:1px solid var(--border);margin-top:.85rem;padding-top:.85rem}.side-actions{margin-top:1.6rem;padding-top:1.2rem}.side-actions h3{font-size:.83rem;font-weight:550}.side-actions .button{font-size:.73rem}.editor-pane .pane-header{align-items:center;padding-top:0;position:static}.pane-header h2{font-size:.95rem;font-weight:600}.pane-header p{margin-top:.3rem;margin-bottom:0;font-size:.68rem}.editor-preferences{flex-wrap:wrap;align-items:center;gap:.8rem;padding:.8rem 0 .3rem;display:flex}.editor-preferences .toggle{font-size:.72rem}.editor-toolbar{border:0;border-bottom:1px solid var(--border);background:0 0;border-radius:0;gap:.15rem;padding:.35rem 0}.toolbar-group{align-items:center}.toolbar-group+.toolbar-group{border-left:1px solid var(--border);margin-left:.4rem;padding-left:.55rem}.toolbar-button{color:var(--muted);background:0 0;border-color:#0000;border-radius:6px;padding:.35rem .5rem;font-size:.78rem;font-weight:550}.toolbar-button:hover{background:var(--surface-alt);color:var(--ink);border-color:#0000}.ProseMirror{font-family:var(--serif);min-height:390px;padding:1.4rem .4rem;font-size:1.12rem;line-height:1.9}.ProseMirror:focus-visible{box-shadow:none;outline:none}.ProseMirror p:first-child:last-child:empty:before{content:"Start with what you know. Build your argument here…";color:var(--faint);pointer-events:none;float:left;height:0}.editor-footnote{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;padding-top:.9rem;font-size:.68rem;display:flex}kbd{font:.65rem var(--mono);border:1px solid var(--border);background:var(--surface-alt);border-radius:3px;padding:.1rem .25rem}.feedback-panel{box-shadow:none}.viewing-pane>.feedback-panel{border:0;border-top:1px solid var(--border);border-radius:0;padding:1.3rem 0 0}.board-card,.data-table,.event{box-shadow:none}.board-card{padding:1.6rem}.board-points{font-family:var(--serif);color:var(--accent);font-size:2.6rem;font-weight:400}.table-scroll{width:100%;overflow-x:auto}.data-table{width:100%;display:table}.data-table th,.data-table td{padding:.9rem 1rem}.tabs{border-bottom:1px solid var(--border);gap:0}.tab{background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:.8rem 1.2rem}.tab.active{color:var(--accent);border-bottom-color:var(--accent);background:0 0}@media (hover:hover) and (pointer:fine){.topic-link:hover{background:var(--surface-alt);color:var(--ink)}.problem-card:hover{background:var(--surface-hover);box-shadow:none;transform:none}.problem-card:hover .row-arrow{color:var(--accent)}}@media (width<=1100px){.topbar{gap:2rem}.library-layout{grid-template-columns:175px minmax(0,1fr);gap:1.5rem}.library-sidebar{padding-right:1rem}.problem-card{grid-template-columns:18px minmax(0,1fr) 75px 65px 12px;gap:.7rem}.problem-list-heading{grid-template-columns:minmax(0,1fr) 75px 65px 12px;gap:.7rem}.main-nav{gap:1rem}}@media (width<=900px){.topbar{gap:1rem;padding:.9rem 4%;position:relative}.main-nav{flex:auto;order:3;gap:1.5rem;width:100%}.main-nav a{padding:.4rem 0}.account{gap:.8rem;margin-left:auto}.app-main{padding-top:1.8rem}.split-pane:last-child{margin-top:1rem}.workspace-heading{margin-top:0}}@media (width<=700px){.library-layout{display:block}.library-sidebar{display:none}.library-results .filters{flex-wrap:wrap}.library-results .filters .search-field{flex:1 0 100%}.library-results .filters .mobile-topic{display:flex}.library-results .filters>label:not(.search-field){flex:1}.library-results .filters select{padding:.5rem .4rem;font-size:.72rem}.section-heading{margin-bottom:1.2rem}.problem-list-heading{display:none}.problem-card{grid-template-columns:18px minmax(0,1fr) 64px;gap:.6rem;padding:1rem .8rem}.problem-card h2{font-size:.86rem}.problem-card .problem-status,.problem-card .row-arrow{display:none}.problem-card.solved .problem-number{font-size:0}.problem-card.solved .problem-number:after{content:"✓";color:var(--ok);font-size:.8rem}.statement-pane,.editor-pane,.viewing-pane{padding:1.2rem}.workspace-heading>span{display:none}.pane-header-actions{gap:.5rem}.account .handle{text-overflow:ellipsis;max-width:90px;overflow:hidden}.account{gap:.65rem}.account .button{padding:.4rem .6rem;font-size:.7rem}.brand{font-size:1.25rem}.math-edit-bar input{min-width:0;max-width:100%}.compare-grid{grid-template-columns:minmax(0,1fr)}.editor-footnote{gap:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.workspace-mobile-tabs{display:none}.assumptions li p{margin:0}.ProseMirror p:first-child:last-child:has(>br.ProseMirror-trailingBreak:only-child):before{content:"Start with what you know. Build your argument here…";color:var(--faint);pointer-events:none;float:left;height:0}@media (width<=900px){.workspace-mobile-tabs{background:var(--surface-alt);border-radius:8px;gap:.5rem;margin-bottom:1rem;padding:.3rem;display:flex}.workspace-mobile-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:1;padding:.6rem;font-size:.8rem}.workspace-mobile-tabs button.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.workspace-page[data-mobile-pane=problem] .split-pane:last-child,.workspace-page[data-mobile-pane=proof] .split-pane:first-child{display:none}.workspace-page .split-pane:last-child{margin-top:0}}.brand{letter-spacing:-.045em;gap:.65rem;font-weight:650}.brand-wordmark{letter-spacing:-.065em;font:400 2rem/1 Georgia,Times New Roman,serif}.brand-wordmark>span{color:var(--accent)}.logo-mark{width:56px;height:32px;color:var(--ink);flex-shrink:0}.difficulty-easy{color:#237847}.difficulty-medium{color:#986409}.difficulty-hard{color:#b73530}:root[data-theme=default] .difficulty-easy,:root[data-theme=midnight] .difficulty-easy{color:#6dce94}:root[data-theme=default] .difficulty-medium,:root[data-theme=midnight] .difficulty-medium{color:#e4b35d}:root[data-theme=default] .difficulty-hard,:root[data-theme=midnight] .difficulty-hard{color:#ef8a83}.welcome-dialog{border:1px solid var(--border-strong);width:min(680px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);background:var(--surface);border-radius:16px;padding:0;position:fixed;overflow:auto;box-shadow:0 24px 90px #0005}.welcome-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08100cc2}.welcome-dialog:focus{outline:none}.welcome-dialog[open]{grid-template-columns:minmax(0,1fr) 200px;display:grid}@media (prefers-reduced-motion:no-preference){.welcome-dialog[open]{animation:.24s cubic-bezier(.23,1,.32,1) both welcome-enter}.welcome-dialog[open]::backdrop{animation:.24s cubic-bezier(.23,1,.32,1) both welcome-backdrop-enter}}@keyframes welcome-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes welcome-backdrop-enter{0%{opacity:0}to{opacity:1}}.welcome-copy{padding:40px 0 30px 40px}.welcome-copy .logo-mark{width:56px;height:30px}.welcome-copy h2{font:400 3rem/1.08 var(--serif);letter-spacing:-.04em;margin:22px 0}.welcome-copy h2 em{color:var(--accent)}.welcome-copy .eyebrow{letter-spacing:.12em;font-size:.59rem}#welcome-description{max-width:340px;color:var(--muted);margin-top:16px;font-size:.92rem;line-height:1.7}.welcome-features{margin:26px 0;padding:0;list-style:none}.welcome-features li{border-left:2px solid var(--info-border);margin:20px 0;padding-left:14px}.welcome-features strong{font-size:.83rem;font-weight:550;display:block}.welcome-features span{color:var(--muted);margin-top:4px;font-size:.77rem;line-height:1.65;display:block}.welcome-cta{justify-content:space-between;width:100%;padding:12px 18px}.welcome-later{color:var(--muted);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;margin:12px auto 0;padding:10px 20px;font-size:.83rem;text-decoration:underline;display:block}.welcome-close{width:36px;height:36px;color:var(--muted);cursor:pointer;z-index:1;background:0 0;border:0;border-radius:6px;font-size:1.6rem;position:absolute;top:12px;right:12px}.welcome-art{color:var(--accent);align-self:center;padding:40px 16px 0}.welcome-art svg{width:100%}.welcome-art p{font:italic 1.15rem/1.5 var(--serif);text-align:center;margin-top:24px}@media (width<=600px){.welcome-dialog[open]{display:block}.welcome-art{display:none}.welcome-copy{padding:28px}.welcome-copy h2{font-size:2.6rem}.collection-label{display:none}}.attempt-status{white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:.1rem .55rem;font-size:.78rem;font-weight:700}.attempt-accepted{background:#edf4ee;border-color:#a9cbb2;box-shadow:inset 3px 0 #5d9c72}.attempt-accepted .attempt-status.status-accepted{color:#33683f;background:#e0ecdf;border-color:#a9cbb2}.attempt-needs_revision{background:#faf6e9;border-color:#dcc48c;box-shadow:inset 3px 0 #c39a2b}.attempt-needs_revision .attempt-status.status-needs_revision{color:#7c6116;background:#f4ead0;border-color:#dcc48c}.attempt-incorrect{border-color:var(--error-border);box-shadow:inset 3px 0 0 var(--error)}.attempt-incorrect .attempt-status.status-incorrect{color:var(--error);border-color:var(--error-border);background:var(--error-bg)}.attempt-inconclusive .attempt-status,.attempt-not_evaluated .attempt-status,.attempt-pending .attempt-status{color:var(--muted);border-color:var(--border);background:var(--surface)}.attempt-link.active.attempt-accepted{border-color:#5d9c72;box-shadow:0 0 0 1px #5d9c72}.attempt-link.active.attempt-needs_revision{border-color:#c39a2b;box-shadow:0 0 0 1px #c39a2b}:root[data-theme=default] .attempt-accepted,:root[data-theme=midnight] .attempt-accepted{background:#6fb2871a;border-color:#3c5a46}:root[data-theme=default] .attempt-accepted .attempt-status.status-accepted,:root[data-theme=midnight] .attempt-accepted .attempt-status.status-accepted{color:#a4d4b1;background:#6fb2871f;border-color:#3c5a46}:root[data-theme=default] .attempt-needs_revision,:root[data-theme=midnight] .attempt-needs_revision{background:#d8bd6a14;border-color:#5a4d22}:root[data-theme=default] .attempt-needs_revision .attempt-status.status-needs_revision,:root[data-theme=midnight] .attempt-needs_revision .attempt-status.status-needs_revision{color:#d8bd6a;background:#d8bd6a1a;border-color:#5a4d22}.user-menu-root{position:relative}.user-menu-button{cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:.3rem;padding:.3rem .5rem;display:inline-flex}.user-menu-button:hover{background:var(--surface-alt);border-color:var(--border)}.user-menu-button .handle{color:var(--muted);font-size:.9rem;font-weight:600}.user-menu-chevron{color:var(--faint);font-size:.75rem}.user-menu{background:var(--surface);border:1px solid var(--border);min-width:12rem;box-shadow:var(--shadow-lg);z-index:60;border-radius:10px;flex-direction:column;padding:.35rem;display:flex;position:absolute;top:calc(100% + 6px);right:0}.user-menu button[role=menuitem]{text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:7px;padding:.55rem .7rem;font-size:.88rem;font-weight:550}.user-menu button[role=menuitem]:hover{background:var(--surface-alt)}.menu-dialog-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70;background:#08100c73;justify-content:center;align-items:center;padding:1.25rem 1rem;display:flex;position:fixed;inset:0}.menu-dialog{background:var(--surface);width:min(480px,100vw - 2rem);max-height:calc(100vh - 2.5rem);color:var(--ink);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);border-radius:14px;padding:1.1rem 1.25rem 1.3rem;overflow:auto}.menu-dialog.account-dialog{width:min(820px,100vw - 2rem)}.menu-dialog-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.menu-dialog-header h3{margin:0;font-size:1.3rem}.dialog-close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.dialog-close:hover{background:var(--surface-alt);color:var(--ink)}.dialog-close svg{width:1rem;height:1rem}.menu-dialog h4{margin:1rem 0 .4rem;font-size:.85rem}.account-row{gap:.5rem;display:flex}.account-row input{flex:1;min-width:0}.account-col{flex-direction:column;gap:.5rem;display:flex}.danger-heading{color:var(--error)}.button.danger{background:var(--error);border-color:var(--error);color:#fff}.button.ghost.danger-text{color:var(--error)}.account-dialog .menu-dialog-header{margin-bottom:.85rem}.account-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-alt) 42%, transparent);border-radius:12px;padding:1rem 1.1rem}.account-card+.account-card,.account-card+.account-grid-2,.account-grid-2+.account-card{margin-top:.75rem}.account-grid-2{border:1px solid var(--border);background:color-mix(in srgb, var(--surface-alt) 42%, transparent);border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.2rem;padding:1rem 1.1rem;display:grid}.account-grid-2+.account-grid-2{margin-top:.75rem}.account-field{flex-direction:column;gap:.5rem;min-width:0;display:flex}.account-label{color:var(--ink);font-size:.82rem;font-weight:600}.account-card-title,.menu-dialog .account-card-title{margin:0;font-size:.9rem;font-weight:650}.account-card-note{margin:0}.account-card .account-row{align-items:center}.account-identity{align-items:center;gap:.85rem;display:flex}.account-identity .identity-avatar{width:3rem;height:3rem;font-size:1.05rem}.account-identity-text strong{font-size:.98rem;display:block}.account-identity-text .small{margin-top:.1rem}.account-photo{align-items:flex-start;gap:1.1rem;margin-top:.8rem;display:flex}.account-photo-preview{border:1px solid var(--border);background:var(--surface-alt);width:108px;height:108px;color:var(--muted);border-radius:16px;flex-shrink:0;place-items:center;font-size:1.6rem;font-weight:700;display:grid;overflow:hidden}.account-photo-preview img{object-fit:cover;width:100%;height:100%;display:block}.account-photo-body{flex-direction:column;flex:1;gap:.75rem;min-width:0;display:flex}.account-photo-actions{flex-wrap:wrap;gap:.5rem;display:flex}.account-btn-icon{flex-shrink:0;width:1rem;height:1rem}.account-photo-presets{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.photo-preset{border:1px solid var(--border);background:var(--surface-alt);cursor:pointer;border-radius:11px;width:46px;height:46px;padding:0;transition:border-color .12s,box-shadow .12s;overflow:hidden}.photo-preset img{object-fit:cover;width:100%;height:100%;display:block}.photo-preset:hover:not(:disabled){border-color:var(--border-strong)}.photo-preset.selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent)}.photo-preset:disabled{opacity:.6;cursor:not-allowed}.account-photo-divider{background:var(--border-strong);width:1px;height:30px;margin:0 .35rem}.account-photo-viewall{white-space:nowrap;align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.google-connected{border:1px solid var(--ok-border);background:var(--ok-bg);color:var(--ok);white-space:nowrap;border-radius:9px;flex-shrink:0;align-items:center;gap:.45rem;padding:.5rem .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.google-connected .google-glyph{width:1rem;height:1rem}.account-password-row input{min-width:0;padding:.45rem .55rem}.account-password-row input,.account-password-row .button{font-size:.78rem}.account-password-row .button{flex-shrink:0;padding:.45rem .65rem}.account-danger{background:color-mix(in srgb, var(--error-bg) 55%, transparent);border-color:color-mix(in srgb, var(--error-border) 75%, var(--border));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid}.account-danger .account-card-title{margin-bottom:.2rem}.button.danger-outline{color:var(--error);border-color:color-mix(in srgb, var(--error) 60%, var(--border-strong));box-shadow:none;background:0 0}.button.danger-outline:hover{background:var(--error-bg);filter:none}.account-danger-confirm{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.6rem;display:flex}.account-danger-confirm input{flex:1;min-width:200px}@media (width<=720px){.account-grid-2{grid-template-columns:minmax(0,1fr)}.account-photo{flex-direction:column}.account-danger{grid-template-columns:minmax(0,1fr)}}.viewing-pane .verdict-wrap{margin:1rem 0 .35rem}.feedback-cta{align-items:center;margin-top:1.1rem;display:flex}.viewing-pane .pane-header-actions{gap:.5rem}.feedback-cta .button{padding:.55rem 1rem}.snapshot-view .math-inline .katex,.rich-text .math-inline .katex{font-size:1.02em}.snapshot-view .math-block,.rich-text .math-block{padding:.25rem 0;display:block;overflow-x:auto}.review-pending{isolation:isolate;border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));background:var(--surface);border-radius:12px;align-items:center;gap:16px;min-height:94px;margin-top:12px;padding:20px 24px;animation:.24s cubic-bezier(.2,.8,.2,1) both review-arrive;display:flex;position:relative;overflow:hidden}.review-pending:before{content:"";z-index:-1;background:linear-gradient(105deg, color-mix(in srgb, var(--accent) 6%, transparent), transparent 65%);pointer-events:none;position:absolute;inset:0}.review-signal{width:44px;height:44px;color:var(--accent);flex:0 0 44px;position:relative}.review-orbit{width:100%;height:100%;animation:3s linear infinite review-orbit-turn;display:block}.review-orbit-track{stroke:currentColor;stroke-width:1px;opacity:.13}.review-orbit-arc{stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;opacity:.85}.review-glyph{width:20px;height:20px;fill:color-mix(in srgb, var(--accent) 12%, transparent);stroke:currentColor;stroke-width:1.2px;stroke-linejoin:round;position:absolute;inset:12px}.review-pending-body{flex:1;min-width:0}.review-pending-title{color:var(--ink);letter-spacing:-.015em;margin:0;font-size:.94rem;font-weight:600;line-height:1.5}.review-pending-description{color:var(--muted);margin:4px 0 0;font-size:.8rem;line-height:1.5}.review-pending-label{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);color:var(--muted);border-radius:6px;flex-shrink:0;padding:4px 9px;font-size:.7rem;font-weight:500;line-height:1.5}@keyframes review-orbit-turn{to{transform:rotate(360deg)}}@keyframes review-arrive{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.review-pending{gap:12px;padding:16px}.review-pending-label{display:none}}@media (prefers-reduced-motion:reduce){.review-pending,.review-orbit{animation:none}}.verdict-wrap{margin-top:.9rem;display:inline-block;position:relative}.verdict-wrap .verdict{margin-bottom:0}.confetti-burst{pointer-events:none;z-index:5;width:0;height:0;position:absolute;top:50%;left:8%}.confetti-piece{animation:confetti-fly var(--duration,1.8s) cubic-bezier(.15, .6, .4, 1) var(--delay,0s) forwards;opacity:0;position:absolute;top:0;left:0}@keyframes confetti-fly{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}to{transform:translate(var(--dx,60px), var(--dy,80px)) rotate(var(--rot,540deg)) scale(.6);opacity:0}}.auth-page{justify-content:center;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-md);border-radius:18px;padding:2rem 2rem 1.5rem;position:relative;overflow:hidden}.auth-card:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-strong), var(--accent));height:4px;position:absolute;inset:0 0 auto}.auth-card .eyebrow{margin-bottom:.4rem}.auth-card h1{font-family:var(--serif);letter-spacing:-.03em;margin-bottom:.4rem;font-size:2.2rem;font-weight:400}.auth-lede{margin-bottom:1.3rem;font-size:.92rem;line-height:1.65}.google-block{margin-bottom:.4rem}.google-btn{background:var(--surface);width:100%;color:var(--ink);border:1px solid var(--border-strong);padding:.75rem 1.1rem;font-size:.95rem;box-shadow:0 1px 2px #00000014}.google-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent);filter:none;box-shadow:0 4px 14px #0000001f}.google-btn:disabled{opacity:.7}.google-glyph{flex-shrink:0;width:1.15rem;height:1.15rem}.google-spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:999px;flex-shrink:0;width:.95rem;height:.95rem;animation:.8s linear infinite google-spin}@keyframes google-spin{to{transform:rotate(360deg)}}.google-error{margin-top:.7rem}.google-hint{text-align:center;margin-top:.55rem}.auth-divider{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.8rem;margin:1.1rem 0;font-size:.76rem;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-form{box-shadow:none;background:0 0;border:0;margin-top:0;padding:0}.auth-submit{width:100%;margin-top:.2rem}.handle-field{display:block;position:relative}.handle-field>span[aria-hidden]{color:var(--muted);pointer-events:none;font-weight:500;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.handle-field input{width:100%;padding-left:1.8rem}.account-row .handle-field{flex:1;min-width:0}.auth-foot{text-align:center;margin-top:1.2rem;font-size:.86rem}.user-avatar,.user-avatar-fallback{border-radius:999px;flex-shrink:0;width:1.7rem;height:1.7rem}.user-avatar{object-fit:cover;border:1px solid var(--border-strong)}.user-avatar.large{width:2.6rem;height:2.6rem}.user-avatar-fallback{background:var(--surface-alt);border:1px solid var(--border-strong);color:var(--muted);justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.account-id-row{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:.8rem;margin-bottom:.4rem;padding:.7rem .85rem;display:flex}.account-id-row .chip{margin-top:.3rem}.user-avatar-xs{width:1.4rem;height:1.4rem;font-size:.65rem}.user-avatar-fallback.large{width:2.6rem;height:2.6rem;font-size:1rem}.leaderboard-learner{align-items:center;gap:.5rem;min-width:0;display:inline-flex}.avatar-editor{flex-direction:column;gap:.5rem;display:flex}.avatar-editor .account-row{align-items:center}.google-btn-stack{position:relative}.google-btn-stack:focus-within .google-btn{outline:2px solid var(--accent);outline-offset:2px}.google-setup{flex-direction:column;gap:.2rem;display:flex}.google-setup .eyebrow{margin-bottom:.4rem}.google-setup-title{font-family:var(--serif);letter-spacing:-.02em;margin-bottom:.4rem;font-size:1.7rem;font-weight:400}.google-setup-lede{margin-bottom:1rem}.google-setup .link-button{align-self:center;margin-top:1rem}.google-overlay{opacity:0;cursor:pointer;border-radius:10px;position:absolute;inset:0;overflow:hidden}.google-overlay.hidden{pointer-events:none;visibility:hidden}.google-overlay>div,.google-overlay iframe{width:100%!important;height:100%!important;margin:0!important}@media (width<=600px){.auth-card{padding:1.5rem 1.25rem 1.25rem}}.auth-card-front{animation:.32s cubic-bezier(.23,1,.32,1) both profile-card-enter}@media (prefers-reduced-motion:reduce){.auth-card-front{animation:none}}@keyframes profile-card-enter{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:none}}.profile-setup{flex-direction:column;gap:0;display:flex}.setup-top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.9rem;display:flex}.setup-top .eyebrow{margin-bottom:.45rem}.setup-progress{gap:.4rem;display:flex}.setup-progress span{background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;width:5.5rem;height:.35rem;display:block}.setup-progress .setup-progress-done,.setup-progress .setup-progress-active{background:var(--accent);border-color:var(--accent)}.setup-close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.setup-close:hover:not(:disabled){color:var(--ink);background:var(--surface-alt);border-color:var(--border)}.setup-close svg{width:1rem;height:1rem}.preset-label-row{justify-content:space-between;align-items:baseline;gap:1rem;font-size:.88rem;font-weight:500;display:flex}.preset-grid{grid-template-columns:repeat(4,1fr);gap:.7rem;margin-top:.6rem;display:grid}.preset-pick{aspect-ratio:1;background:var(--surface-alt);cursor:pointer;border:2px solid #0000;border-radius:999px;padding:0;transition:border-color .12s,box-shadow .12s,transform .12s;position:relative;overflow:visible}.preset-pick img{object-fit:cover;border-radius:999px;width:100%;height:100%;display:block}.preset-pick:hover:not(:disabled){border-color:var(--border-strong);transform:translateY(-2px)}.preset-pick.selected{border-color:var(--accent);box-shadow:0 0 0 3px #5a7e4447}.preset-pick:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #5a7e4447}.preset-pick:disabled{opacity:.6;cursor:not-allowed}.preset-upload-cell{position:relative}.preset-upload-cell .preset-pick{width:100%}.preset-upload-empty{border:1px dashed var(--border-strong);width:100%;height:100%;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;display:flex}.preset-upload-empty svg{width:38%;height:38%}.preset-remove{background:var(--surface);border:1px solid var(--border-strong);width:1.4rem;height:1.4rem;color:var(--muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:-2px;right:-2px}.preset-remove:hover{color:var(--error);border-color:var(--error)}.preset-remove svg{width:.6rem;height:.6rem}.handle-field.has-status input{padding-right:2.4rem}.handle-status-ok{color:var(--ok);pointer-events:none;display:inline-flex;position:absolute;top:50%;right:.65rem;transform:translateY(-50%)}.handle-status-ok svg{width:1.25rem;height:1.25rem}.handle-hint{margin:-.4rem 0 0}.setup-actions{gap:.7rem;margin-top:.2rem;display:flex}.setup-actions .setup-back{flex:none;padding-left:1.4rem;padding-right:1.4rem}.setup-actions .setup-finish{flex:1}.visually-hidden{clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-shell:has(.library-page){--topbar-h:80px;--library-line:color-mix(in srgb, var(--border) 58%, transparent)}:root[data-theme=default] .app-shell:has(.library-page){--bg:#171b19;--surface:#1b201d;--surface-alt:#242b26;--surface-hover:#242c26;--ink:#edf0ec;--muted:#a2aca5;--faint:#727e76;--border:#364039;--accent:#b2d39d}.app-shell:has(.library-page) .topbar{background:var(--bg);border-bottom-color:var(--library-line);gap:3.5rem;padding-inline:clamp(32px,3vw,72px)}.app-shell:has(.library-page) .main-nav a{font-size:.95rem}.app-shell:has(.library-page) .account{font-size:.9rem}.app-shell:has(.library-page) .account .link-button{font-size:.9rem}.app-main:has(.library-page){background:var(--bg);padding:2.75rem clamp(32px,3vw,72px) 4rem}.page.library-page{width:100%;max-width:2080px}.library-page .library-layout{grid-template-columns:208px minmax(0,1fr) 320px;align-items:start;gap:2rem}.library-page .library-sidebar{border-right-color:var(--library-line);align-self:stretch;padding-right:1.5rem}.library-page .topic-link{gap:.9rem;padding:.7rem .8rem;font-size:.9rem}.library-page .topic-dot{width:7px;height:7px}.library-page .section-heading{margin:0 0 1.75rem}.library-page .section-heading h1{letter-spacing:-.025em;font-size:1.85rem;font-weight:600}.library-page .filters input,.library-page .filters select{border-color:var(--library-line);border-radius:7px;min-height:48px;font-size:.9rem}.library-page .results-meta{min-height:20px;margin:1rem 0;font-size:.8rem}.library-page .problem-card,.library-page .problem-list-heading{grid-template-columns:30px minmax(0,1fr) 100px 90px 18px;gap:1rem;padding:.9rem 1.4rem}.library-page .problem-card{border-bottom-color:var(--library-line);background:0 0;min-height:64px}.library-page .problem-grid{border-color:var(--library-line);border-radius:10px}.library-page .problem-list-heading{background:color-mix(in srgb, var(--surface-alt) 50%, var(--surface));letter-spacing:0;align-items:center;min-height:46px;font-size:.73rem}.library-page .problem-card:hover{background:var(--surface-hover);box-shadow:none;transform:none}.library-page .problem-card h2{margin:0;font-size:1rem;font-weight:500;line-height:1.4}.library-page .problem-number{font:inherit;color:var(--muted);align-self:center;padding:0;font-size:.8rem}.library-page .problem-status{font-size:.85rem}.library-page .problem-card .difficulty{font-size:.85rem;font-weight:500}.library-insights{gap:1.5rem;min-width:0;display:grid}.insight-panel{border:1px solid var(--library-line);background:var(--surface);border-radius:10px;min-width:0;padding:1.5rem}.insight-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.insight-heading h2{letter-spacing:-.015em;align-items:center;gap:.75rem;margin:0;font-size:1.1rem;font-weight:600;display:flex}.insight-heading svg{width:23px;height:23px;color:var(--accent);flex-shrink:0}.insight-details{color:var(--accent);white-space:nowrap;padding:.3rem 0;font-size:.8rem}.insight-details[aria-label]{padding:0 .3rem;font-size:1.7rem;line-height:1}.progress-overview{align-items:center;gap:clamp(1rem,2vw,2.5rem);padding:1.6rem 0 1.3rem;display:flex}.progress-ring{aspect-ratio:1;flex:0 0 44%;max-width:170px;position:relative}.progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:7px}.ring-track{stroke:var(--surface-alt)}.ring-value{stroke:var(--accent);stroke-linecap:round}.progress-ring>div{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.progress-ring strong{font-size:1.9rem;font-weight:600;line-height:1.2}.progress-ring span{color:var(--muted);font-size:1rem}.progress-percentage{gap:.1rem;display:grid}.progress-percentage strong{color:var(--accent);font-size:1.8rem;font-weight:600}.progress-percentage>span{color:var(--muted);font-size:.86rem}.difficulty-breakdown{border-top:1px solid var(--library-line);gap:.9rem;padding:1.25rem 0 1.5rem;display:grid}.difficulty-progress{font-variant-numeric:tabular-nums;grid-template-columns:1fr 58px 1.2fr;align-items:center;gap:.6rem;font-size:.83rem;display:grid}.difficulty-progress .difficulty{font-size:.85rem}.difficulty-progress progress{appearance:none;background:var(--surface-alt);border:0;border-radius:20px;width:100%;height:6px;overflow:hidden}.difficulty-progress progress::-webkit-progress-bar{background:var(--surface-alt)}.difficulty-progress progress::-webkit-progress-value{background:var(--meter-color);border-radius:20px}.difficulty-progress progress::-moz-progress-bar{background:var(--meter-color);border-radius:20px}.meter-easy{--meter-color:var(--accent)}.meter-medium{--meter-color:var(--warn)}.meter-hard{--meter-color:var(--error)}.continue-practice{justify-content:center;gap:1rem;width:100%;min-height:48px;font-size:.88rem}.insight-note{color:var(--muted);margin:.9rem 0 0;font-size:.78rem;line-height:1.6}.insight-loading{color:var(--muted);padding:2rem 0}.leaderboard-preview{margin:1rem 0 0;padding:0;list-style:none}.leaderboard-preview li{border-bottom:1px solid var(--border);grid-template-columns:26px 36px minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.7rem 0;font-size:.84rem;display:grid}.leaderboard-preview li:last-child{border-bottom:0;padding-bottom:0}.rank-badge{background:var(--surface-alt);font-variant-numeric:tabular-nums;border-radius:6px;place-items:center;width:26px;height:28px;display:grid}.rank-1{color:#fff5c9;background:#806622}.rank-2{color:#fff;background:#616b6b}.rank-3{color:#fff0e5;background:#855739}.leader-avatar{object-fit:cover;border-radius:50%;width:36px;height:36px}.avatar-initial{background:var(--info-bg);color:var(--accent);place-items:center;display:grid}.leader-handle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leader-score{font-variant-numeric:tabular-nums;gap:.1rem;display:grid}.leader-score strong{font-size:.95rem;font-weight:500;line-height:1.2}.leader-score>span{color:var(--muted);font-size:.73rem}@media (width>=1500px){.library-page .library-layout{grid-template-columns:224px minmax(0,1fr) 360px;gap:2.5rem}.library-page .problem-card,.library-page .problem-list-heading{grid-template-columns:44px minmax(0,1fr) 125px 105px 18px}.library-page .topic-link{font-size:.95rem}}@media (width<=1199px){.library-page .library-layout{grid-template-columns:175px minmax(0,1fr)}.library-insights{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr))}.library-page .library-sidebar{grid-row:span 2}.insight-heading h2{gap:.5rem;font-size:1rem}.insight-panel{padding:1rem}}@media (width<=700px){.app-main:has(.library-page){padding:1.2rem 4% 2rem}.library-page .library-layout{flex-direction:column;gap:1.25rem;display:flex}.library-results,.library-insights{width:100%}.library-insights{grid-template-columns:1fr}.library-page .problem-card{grid-template-columns:22px minmax(0,1fr) 64px;gap:.6rem;padding:.7rem .8rem}.library-page .problem-list-heading{display:none}.library-page .problem-card h2{font-size:.85rem}.library-page .filters select{font-size:.72rem}.progress-overview{justify-content:center;gap:2rem}}.library-search-icon{width:19px;height:19px;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.library-page .search-field input{padding-left:2.75rem}.library-page .problem-list-heading .sort-arrow{opacity:0}.library-page .sort-header:hover .sort-arrow,.library-page .sort-header:focus-visible .sort-arrow,.library-page .sort-header.active .sort-arrow{opacity:1}.topbar .user-menu-button{gap:.75rem;min-height:52px;padding:.35rem .6rem;font-size:1rem}.topbar .user-menu-button .user-avatar,.topbar .user-menu-button .user-avatar-fallback{width:42px;height:42px;font-size:1.1rem}.topbar .user-menu-button .handle{font-size:1rem}.topbar .user-menu-chevron{font-size:.85rem}.user-menu-root{align-items:center;display:flex}.user-menu{transform-origin:100% 0;opacity:0;visibility:hidden;pointer-events:none;min-width:max(100%,12rem);transition:opacity .14s,transform .16s,visibility 0s linear .16s;top:calc(100% + 8px);right:0;transform:translateY(-5px)scale(.98)}.user-menu[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)scale(1)}.user-menu-chevron{transition:transform .16s;display:inline-block}.user-menu-button[aria-expanded=true] .user-menu-chevron{transform:rotate(180deg)}.user-menu button[role=menuitem]{min-height:40px;transition:background-color .12s}.library-results .filters{align-items:center}.library-results .filters>label:not(.search-field):not(.mobile-topic){flex:0 0 152px}.library-page .filters select{cursor:pointer;height:48px;padding:0 14px;transition:border-color .14s,background-color .14s}.library-page .filters select:disabled{cursor:not-allowed}.library-page .filters select:focus{box-shadow:none;border-color:var(--accent);outline:none}.library-page .filters select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@supports (appearance:base-select){.library-page .filters select{appearance:base-select}.library-page .filters select::picker(select){appearance:base-select}.library-page .filters select{justify-content:space-between;align-items:center;display:flex}.library-page .filters select::picker-icon{color:var(--muted);transition:rotate .16s}.library-page .filters select:open::picker-icon{rotate:180deg}.library-page .filters select::picker(select){top:calc(anchor(bottom) + 8px);left:anchor(left);min-width:anchor-size(width);border:1px solid var(--border);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg);opacity:0;transform-origin:0 0;transition:opacity .14s ease, transform .16s ease, display .16s allow-discrete, overlay .16s allow-discrete;border-radius:10px;margin:0;padding:5px;bottom:auto;right:auto;transform:translateY(-5px)scale(.98)}.library-page .filters select:open::picker(select){opacity:1;transform:translateY(0)scale(1)}@starting-style{.library-page .filters select:open::picker(select){opacity:0;transform:translateY(-5px)scale(.98)}}.library-page .filters select option{border-radius:6px;align-items:center;gap:10px;min-height:40px;padding:8px 10px;font-size:.88rem;font-weight:400;transition:background-color .12s;display:flex}.library-page .filters select option:hover,.library-page .filters select option:focus{background:var(--surface-alt);outline:none}.library-page .filters select option:checked{color:var(--accent);background:var(--info-bg)}.library-page .filters select option::checkmark{order:1;margin-left:auto}}@media (width<=700px){.library-results .filters>label:not(.search-field):not(.mobile-topic){flex:1}}@media (prefers-reduced-motion:reduce){.user-menu,.user-menu-chevron,.user-menu button[role=menuitem],.library-page .filters select,.library-page .filters select option{transition:none}.library-page .filters select::picker-icon{transition:none}.library-page .filters select::picker(select){transition:none}}.verdict{letter-spacing:-.01em;background:color-mix(in srgb, currentColor 7%, var(--surface));border-color:color-mix(in srgb, currentColor 22%, transparent);border-radius:7px;gap:8px;padding:6px 11px;font-size:.85rem;font-weight:550;line-height:1.5}.verdict:before{opacity:.85;content:"−";background:0 0;border:1px solid;border-radius:50%;place-items:center;width:15px;height:15px;font-size:10px;line-height:1;display:grid}.verdict-accepted:before{content:"✓"}.verdict-incorrect:before{content:"×"}.verdict-inconclusive:before,.verdict-not_evaluated:before{content:"·";background:0 0}.review-pending{transition:border-color .35s,background-color .35s}.review-orbit,.review-glyph{transition:opacity .2s}.review-success-mark{width:44px;height:44px;color:var(--ok);opacity:0;transition:opacity .22s,transform .4s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:scale(.8)}.review-success-mark circle{stroke:currentColor;stroke-width:1.5px;fill:color-mix(in srgb, var(--ok) 9%, transparent)}.review-success-mark path{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}.review-accepted{border-color:color-mix(in srgb, var(--ok) 35%, var(--border));background:color-mix(in srgb, var(--ok) 4%, var(--surface))}.review-accepted .review-orbit,.review-accepted .review-glyph{opacity:0}.review-accepted .review-success-mark{opacity:1;transform:scale(1)}.review-accepted .review-success-mark path{animation:.4s .12s forwards review-check-draw}.review-accepted .review-signal:after{content:"";border:1px solid var(--ok);border-radius:50%;animation:.8s ease-out both review-success-ripple;position:absolute;inset:2px}.review-accepted .review-pending-title,.review-accepted .review-pending-label{color:var(--ok)}.verdict-arrival{animation:.25s both review-arrive}@keyframes review-check-draw{to{stroke-dashoffset:0}}@keyframes review-success-ripple{0%{opacity:.45;transform:scale(1)}to{opacity:0;transform:scale(1.75)}}@media (prefers-reduced-motion:reduce){.review-pending,.review-orbit,.review-glyph,.review-success-mark{transition:none}.review-accepted .review-success-mark path{stroke-dashoffset:0;animation:none}.review-accepted .review-signal:after,.verdict-arrival{animation:none}.review-accepted .review-signal:after{display:none}}
