:root{--ink: #131a2e;--primary: #4f35e8;--primary-50: #eeebfe;--primary-600: #4f35e8;--secondary: #ffbd59;--paper: #f7f8fb;--card: #ffffff;--line: #e2e6ef;--muted: #6b7488;--correct: #1b9e5a;--incorrect: #d93b3b;--radius: 12px;--gutter: 24px;font-family:Manrope,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}.wrap{max-width:1040px;margin:0 auto;padding:var(--gutter)}.row{display:flex;gap:12px;align-items:center}.between{justify-content:space-between}.grow{flex:1}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.09em;font-size:11px;font-weight:700;color:var(--muted)}h1{font-family:Poppins,system-ui;font-weight:700;font-size:26px}h2{font-family:Poppins,system-ui;font-weight:600;font-size:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.stack>*+*{margin-top:12px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}button.primary{background:var(--primary-600);color:#fff;border:none;border-radius:10px;padding:10px 18px;font-weight:700;font-size:14px;cursor:pointer;min-height:44px}button.primary:disabled{background:#9c8cf3;cursor:default}button.ghost{background:transparent;border:none;color:var(--primary-600);font-weight:700;cursor:pointer}button.tab{background:transparent;border:none;padding:12px 0;margin-right:24px;font-weight:700;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}button.tab.active{color:var(--primary-600);border-bottom-color:var(--primary-600)}input,select{border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;min-height:44px;background:var(--card)}label{display:block}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.codechip{background:var(--primary-50);border-radius:8px;padding:8px 12px;font-family:JetBrains Mono,monospace;letter-spacing:1px}.pill{display:inline-block;background:var(--primary-50);color:#2e1b94;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);font-size:14px}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
