:root{--ink:#eaf1fb;--muted:#8c9bb1;--bg:#09111f;--panel:#101d30;--panel-2:#14243a;--line:#263952;--accent:#ffb36b;--accent-2:#71d5c2;--danger:#ff8c81;--shadow:0 18px 60px #02071166}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% -20%,#1c3855 0,#09111f 46%);color:var(--ink);font:16px/1.6 system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;min-height:100vh}.topbar{height:74px;border-bottom:1px solid #ffffff12;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);background:#09111fcc;backdrop-filter:blur(16px);position:sticky;top:0;z-index:3}.brand{display:flex;gap:12px;align-items:center}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--accent);color:#182235;font-weight:800;font-size:22px;box-shadow:0 6px 24px #ffb36b55}.brand strong{display:block;font-size:16px}.brand small{display:block;color:var(--muted);font-size:12px}.top-actions{display:flex;gap:20px;align-items:center}.count{color:var(--accent-2);font-size:13px}.text-button{background:none;border:0;color:var(--muted);cursor:pointer;font:inherit}.text-button:hover{color:var(--ink)}.shell{max-width:1400px;margin:auto;padding:48px clamp(20px,5vw,72px) 80px}.intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.eyebrow{color:var(--accent);font-size:11px;letter-spacing:.16em;margin:0 0 7px;font-weight:700}.intro h1{font-size:clamp(30px,4vw,54px);line-height:1.1;margin:0 0 12px;letter-spacing:-.04em}.muted{color:var(--muted);margin:0}.intro-note{border:1px solid var(--line);padding:12px 15px;border-radius:14px;color:var(--muted);font-size:13px;display:flex;gap:9px;align-items:center;white-space:nowrap}.dot{width:8px;height:8px;background:var(--accent-2);border-radius:50%;box-shadow:0 0 0 5px #71d5c21a}.workspace{display:grid;grid-template-columns:290px 1fr;gap:24px;align-items:start}.panel{background:linear-gradient(145deg,#122238,#0f1b2d);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.filters{padding:22px;position:sticky;top:98px}.panel-heading,.results-head{display:flex;align-items:center;justify-content:space-between}.panel-heading{margin-bottom:20px}.panel-heading h2,.results-head h2{font-size:18px;margin:0}.panel-heading span{font-size:12px;color:var(--accent-2)}label,.field-label{display:block;color:#b8c5d7;font-size:13px;font-weight:600;margin-bottom:15px}input,select{width:100%;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:#0a1525;color:var(--ink);padding:10px 11px;font:inherit;font-size:14px;outline:none}input:focus,select:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px #71d5c21a}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.check-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;margin-bottom:20px}.topic-chip{border:1px solid var(--line);border-radius:99px;padding:6px 10px;background:#0a1525;color:var(--muted);font-size:12px;cursor:pointer}.topic-chip:has(input:checked){border-color:var(--accent-2);background:#71d5c21a;color:var(--ink)}.topic-chip input{display:none}.check-line{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:400}.check-line input{width:auto;margin:0;accent-color:var(--accent-2)}.filter-footer{border-top:1px solid var(--line);padding-top:18px;margin-top:4px;display:flex;align-items:center;justify-content:space-between;gap:10px}.button{border:0;border-radius:10px;padding:9px 12px;cursor:pointer;font-weight:700;font:inherit;font-size:13px}.secondary{background:#20354e;color:var(--ink)}.secondary:hover{background:#2a4563}.results-head{margin-bottom:16px}.sort{width:auto;margin:0;color:var(--muted)}.question-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.question-card{background:#101d30d9;border:1px solid var(--line);border-radius:17px;padding:17px;cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.question-card:hover{transform:translateY(-3px);border-color:#71d5c299;background:#152840}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:start}.question-id{font:600 13px ui-monospace,SFMono-Regular,monospace;color:var(--accent)}.stars{color:var(--accent);letter-spacing:1px;font-size:13px}.card-title{font-size:16px;margin:18px 0 9px;min-height:26px}.card-meta{display:flex;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:12px}.tag{border:1px solid #38506d;border-radius:99px;padding:2px 7px}.status{margin-top:17px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.status.done{color:var(--accent-2)}.empty{text-align:center;padding:70px 20px}.empty-icon{font-size:50px;color:var(--accent);line-height:1}.dialog-shell{width:min(850px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;padding:34px 34px 40px;background:#101d30;color:var(--ink);border-radius:20px;position:relative}.close{position:absolute;right:18px;top:12px;background:none;border:0;color:var(--muted);font-size:30px;cursor:pointer}.dialog-title{font-size:24px;margin:0 0 6px}.dialog-subtitle{color:var(--muted);font-size:13px}.problem-content,.reference-content{margin-top:26px}.problem-content p,.reference-content p{white-space:pre-wrap}.problem-content code{background:#081321;padding:2px 5px;border-radius:5px}.problem-content img{max-width:100%;display:block;margin:16px auto;border-radius:10px}.reference-content{border-top:1px solid var(--line);padding-top:20px;color:#b8c5d7}.answer-area{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.answer-row{display:flex;gap:10px;margin:10px 0}.answer-row input{margin:0}.answer-row button{background:var(--accent);color:#182235;border:0;border-radius:10px;padding:0 16px;font-weight:800}.feedback{font-size:13px;margin-top:9px}.feedback.ok{color:var(--accent-2)}.feedback.bad{color:var(--danger)}dialog{border:0;padding:0;border-radius:20px;background:transparent}dialog::backdrop{background:#020611b8;backdrop-filter:blur(4px)}@media(max-width:820px){.intro{display:block}.intro-note{display:inline-flex;margin-top:20px}.workspace{grid-template-columns:1fr}.filters{position:static}.question-list{grid-template-columns:1fr 1fr}}@media(max-width:520px){.top-actions .text-button{display:none}.shell{padding-top:32px}.question-list{grid-template-columns:1fr}.dialog-shell{padding:28px 20px 30px}}
