:root{--bg:#fafaf9;--surface:#fff;--text:#1c1b22;--text-muted:#6b7280;--border:#e5e4e7;--border-strong:#cfcfd6;--accent:#60a5fa;--accent-bg:#eff6ff;--accent-text:#1e40af;--success:#2e7d32;--success-bg:#e8f5e9;--error:#c62828;--error-bg:#ffebee;--radius:8px;--radius-lg:12px;--fill-primary:#1c1b22;--fill-primary-hover:#35343d;--on-primary:#fff;--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:18px/145% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--bg:#16171d;--surface:#1e2026;--text:#f3f4f6;--text-muted:#9ca3af;--border:#2e303a;--border-strong:#3f414d;--accent:#60a5fa;--accent-bg:#1d2a3f;--accent-text:#93c5fd;--success:#7cc784;--success-bg:#16301c;--error:#e57373;--error-bg:#331b1b;--fill-primary:#f3f4f6;--fill-primary-hover:#fff;--on-primary:#16171d}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body{min-height:100svh;margin:0}h1,h2{font-family:var(--sans);color:var(--text);font-weight:500}p{margin:0}.btn{border-radius:var(--radius);cursor:pointer;min-height:44px;padding:.625rem 1.25rem;font-family:inherit;font-size:1rem;transition:background .15s,border-color .15s,color .15s}.btn:disabled{opacity:.5;cursor:default}.btn--primary{background:var(--fill-primary);border:1px solid var(--fill-primary);color:var(--on-primary);font-weight:500}.btn--primary:hover:not(:disabled){background:var(--fill-primary-hover);border-color:var(--fill-primary-hover)}.btn--secondary{background:var(--surface);border:1px solid var(--border-strong);color:var(--text)}.btn--secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text)}.choice-btn{text-align:left;border-radius:var(--radius);cursor:pointer;align-items:center;width:100%;min-height:48px;padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:background .15s,border-color .15s,color .15s;display:flex}.choice-btn:disabled{cursor:default}.choice-btn__mark{flex-shrink:0;width:1.25rem;display:inline-block}.choice-btn--default{background:var(--surface);border:1px solid var(--border-strong);color:var(--text)}.choice-btn--default:hover:not(:disabled){background:var(--accent-bg);border-color:var(--accent)}.choice-btn--default:disabled{color:var(--text-muted)}.choice-btn--correct{background:var(--success-bg);border:1px solid var(--success);color:var(--success)}.choice-btn--incorrect{background:var(--error-bg);border:1px solid var(--error);color:var(--error)}.quiz-screen{text-align:left;max-width:480px;margin:0 auto}.quiz-progress{color:var(--text-muted);font-size:.9rem}.quiz-progress-bar{border-radius:var(--radius);background:var(--accent-bg);height:4px;margin-top:.5rem;overflow:hidden}.quiz-progress-bar__fill{background:var(--accent);height:100%;transition:width .25s}.quiz-question{margin:.5rem 0 1.5rem}.quiz-choices{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.quiz-feedback{flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1.5rem;display:flex}.quiz-feedback__correct{color:var(--success);font-weight:500}.quiz-feedback__incorrect{color:var(--error);font-weight:500}.quiz-explanation{background:var(--accent-bg);border-radius:var(--radius);color:var(--text);margin-top:.75rem;padding:.875rem 1rem}.quiz-result{max-width:480px;margin:0 auto}.app{text-align:center;max-width:640px;margin:0 auto;padding:1.5rem}.app-header{margin-bottom:2rem}.app-nav{justify-content:center;gap:.5rem;margin-top:.75rem;display:flex}.app-nav button{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--text-muted);cursor:pointer;padding:.5rem 1rem;transition:background .15s,border-color .15s,color .15s}.app-nav button:hover:not(.active){border-color:var(--border-strong);color:var(--text)}.app-nav button.active{background:var(--accent-bg);color:var(--accent-text);border-color:var(--accent)}.app-main{text-align:left}
