:root{--bg:#f7f7f8;--surface:#fff;--border:#e2e2e6;--text:#1c1c1e;--muted:#6b6b70;--accent:#3b6ef5;--accent-contrast:#fff;--new-bg:transparent;--learning-bg:#fff2cc;--learning-text:#7a5b00;--known-bg:#d5f2df;--known-text:#1c6b3c;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#16161a;--surface:#1f1f24;--border:#33333a;--text:#ececf0;--muted:#9a9aa2;--accent:#5b86ff;--learning-bg:#4a3c12;--learning-text:#ffd970;--known-bg:#16402a;--known-text:#7fe0a5}}*{box-sizing:border-box}body{min-height:100vh;margin:0}button{font:inherit;cursor:pointer}.app{max-width:720px;margin:0 auto;padding:16px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.tabs{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:4px;padding:4px;display:flex}.tabs button{color:var(--muted);background:0 0;border:none;border-radius:9px;padding:8px 14px;font-weight:600}.tabs button.active{background:var(--accent);color:var(--accent-contrast)}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:14px;padding:16px}textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:88px;font:inherit;background:var(--bg);color:var(--text);border-radius:10px;padding:12px}.auth-input{border:1px solid var(--border);width:100%;font:inherit;background:var(--bg);color:var(--text);border-radius:10px;padding:12px}.btn-primary{background:var(--accent);color:var(--accent-contrast);border:none;border-radius:10px;padding:10px 18px;font-weight:600}.btn-primary:disabled{opacity:.5;cursor:default}.pair{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}.seg{border:1px solid var(--border);border-radius:9px;display:inline-flex;overflow:hidden}.seg button{background:var(--surface);color:var(--muted);border:none;padding:6px 10px;font-size:13px}.seg button.active{background:var(--accent);color:var(--accent-contrast)}.translation{font-size:20px;line-height:1.7}.w{cursor:help;border-radius:5px;padding:1px 2px}.w-new{background:var(--new-bg);border-bottom:2px dotted var(--muted)}.w-decked{outline:1.5px solid var(--accent);outline-offset:1px}.toast{background:var(--text);color:var(--bg);z-index:50;border-radius:20px;padding:10px 16px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000040}.w-learning{background:var(--learning-bg);color:var(--learning-text)}.w-known{background:var(--known-bg);color:var(--known-text)}.w-phrasal{text-underline-offset:3px;-webkit-text-decoration:underline wavy #8b5cf6;text-decoration:underline wavy #8b5cf6}@media (prefers-color-scheme:dark){.w-phrasal{text-decoration-color:#a78bfa}}.phrasal-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:5px 0;font-size:15px;display:flex}.phrasal-row:last-child{border-bottom:none}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:10px;font-size:13px;display:flex}.legend span{align-items:center;gap:5px;display:inline-flex}.dot{border-radius:4px;width:12px;height:12px;display:inline-block}.muted{color:var(--muted);font-size:14px}.warn{color:#8a4b00;background:#ffe8cc;border-radius:8px;margin-top:10px;padding:8px 12px;font-size:14px}@media (prefers-color-scheme:dark){.warn{color:#ffcf8f;background:#4a2f0f}}.flashcard{text-align:center;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:180px;font-size:28px;display:flex}.flashcard .hint{color:var(--muted);font-size:14px}.grade-row{justify-content:center;gap:10px;display:flex}.btn-wrong,.btn-right{color:#fff;border:none;border-radius:10px;padding:12px 22px;font-size:16px;font-weight:700}.btn-wrong{background:#d9534f}.btn-right{background:#2e9e5b}.vocab-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.vocab-row:last-child{border-bottom:none}.badge{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:20px;padding:2px 8px;font-size:12px}.expander{color:var(--text);font:inherit;background:0 0;border:none;padding:0}.expander span{margin-left:2px}.forms-title{color:var(--muted);margin-bottom:4px;font-size:13px;font-weight:700}table.forms{border-collapse:collapse;width:100%;font-size:14px}table.forms td{border-bottom:1px solid var(--border);padding:3px 8px}.forms-label{color:var(--muted);white-space:nowrap}.forms-value{text-align:right;font-weight:600}
