:root{--eu-blue:#039;--eu-yellow:#fc0;--bg:#fff;--surface:#f3f5fa;--text:#14171f;--muted:#5a6275;--accent:var(--eu-blue);--on-accent:#fff;--link:var(--eu-blue);--right:#1b7f3b;--right-bg:#e3f4e8;--wrong:#b3261e;--wrong-bg:#fbe5e3;--border:#c9cfdc;--gutter:16px;--tap:48px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#10131a;--surface:#1b202b;--text:#e8ebf2;--muted:#a3abbd;--accent:var(--eu-yellow);--on-accent:#10131a;--link:#8fb0ff;--right:#6fd38f;--right-bg:#15301f;--wrong:#ff8a80;--wrong-bg:#3a1a1a;--border:#343b4b}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:16px}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;line-height:1.5}.screen{max-width:640px;padding:var(--gutter);padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right));margin:0 auto}a{color:var(--link)}.btn{min-height:var(--tap);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:0 20px;font-weight:600}.btn-primary{background:var(--accent);width:100%;color:var(--on-accent)}.question-card{gap:var(--gutter);flex-direction:column;display:flex}.stem{margin:0;font-size:1.125rem;font-weight:600}.options{flex-direction:column;gap:8px;display:flex}.option{width:100%;min-height:var(--tap);border:2px solid var(--border);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;display:flex}.option:disabled{cursor:default}.option:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.option-letter{background:var(--bg);border:1px solid var(--border);border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:.875rem;font-weight:700;display:inline-flex}.option-text{flex:1}.option.selected{border-color:var(--accent)}.option.selected .option-letter{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.option.right{border-color:var(--right);background:var(--right-bg)}.option.right .option-letter{background:var(--right);border-color:var(--right);color:var(--bg)}.option.wrong{border-color:var(--wrong);background:var(--wrong-bg)}.option.wrong .option-letter{background:var(--wrong);border-color:var(--wrong);color:var(--bg)}.feedback{padding:12px var(--gutter);background:var(--surface);border-radius:8px}.feedback p{margin:0 0 8px}.feedback p:last-child{margin-bottom:0}.feedback-chosen{color:var(--wrong);font-weight:600}.feedback-source{color:var(--muted);font-size:.875rem}.badge-general{background:var(--eu-yellow);color:#14171f;border-radius:999px;margin-left:6px;padding:0 8px;font-size:.75rem;font-weight:600;display:inline-block}.settings{gap:var(--gutter);flex-direction:column;display:flex}.settings h1,.settings h2{margin:0}.settings-group{flex-direction:column;gap:12px;display:flex}.field{flex-direction:column;gap:4px;font-weight:600;display:flex}.field select,.field input{min-height:var(--tap);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;padding:0 12px;font-size:16px}.settings-note{color:var(--muted);margin:0}.settings-status{margin:0;font-weight:600}.btn-secondary{background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border)}.btn-danger{background:var(--wrong-bg);width:100%;color:var(--wrong)}.file-btn{box-sizing:border-box;justify-content:center;align-items:center;display:inline-flex}.file-btn:focus-within{outline:3px solid var(--accent);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.install-hint{padding:12px var(--gutter);border-left:4px solid var(--eu-yellow);background:var(--surface);border-radius:8px;flex-direction:column;gap:8px;display:flex}.install-hint p{margin:0}a.btn{justify-content:center;align-items:center;text-decoration:none;display:flex}.muted{color:var(--muted)}.home-stats{margin:0 0 var(--gutter);grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.home-stats div{background:var(--surface);text-align:center;border-radius:8px;padding:12px}.home-stats dt{color:var(--muted);font-size:.875rem}.home-stats dd{margin:0;font-size:1.25rem;font-weight:700}.home-estimate{margin:0 0 var(--gutter)}.home-actions{flex-direction:column;gap:12px;display:flex}.backup-reminder{background:var(--surface);border-left:4px solid var(--eu-yellow);padding:12px var(--gutter);margin-bottom:var(--gutter);border-radius:8px}.backup-reminder p{margin:0 0 8px}.session-top{min-height:var(--tap);justify-content:space-between;align-items:center;display:flex}.session-quit{min-height:var(--tap);align-items:center;display:inline-flex}.session-progress{width:100%;height:8px;margin-bottom:var(--gutter);accent-color:var(--accent)}.session-next{margin-top:var(--gutter)}.session-score{margin:0;font-size:2rem;font-weight:700}.session-end .btn{margin-top:var(--gutter)}.exam-top{min-height:var(--tap);margin-bottom:var(--gutter);justify-content:space-between;align-items:center;font-weight:600;display:flex}.exam-timer{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.exam-timer-low{color:var(--wrong)}.exam-controls{margin:var(--gutter) 0;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.exam-controls .btn{padding:0 8px}.btn:disabled{opacity:.5;cursor:default}.exam-flag.flagged{border-color:var(--eu-yellow);box-shadow:inset 0 0 0 2px var(--eu-yellow)}.exam-nav{grid-template-columns:repeat(auto-fill, minmax(var(--tap), 1fr));margin-bottom:var(--gutter);gap:6px;display:grid}.exam-chip{min-width:var(--tap);min-height:var(--tap);border:2px solid var(--border);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:8px;font-weight:600;position:relative}.exam-chip.answered{background:var(--surface);border-color:var(--muted)}.exam-chip.flagged:after{content:"";background:var(--eu-yellow);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.exam-chip.current{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.exam-chip:focus-visible,.exam-controls .btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.exam-summary{margin:0 0 12px}.exam-result h2{margin-top:calc(var(--gutter) * 2)}.exam-score{margin:0;font-size:2.5rem;font-weight:700}.exam-verdict{letter-spacing:.05em;border-radius:999px;margin:8px 0;padding:4px 16px;font-size:1.25rem;font-weight:700;display:inline-block}.exam-verdict.pass{background:var(--right-bg);color:var(--right)}.exam-verdict.fail{background:var(--wrong-bg);color:var(--wrong)}.exam-facts{margin:var(--gutter) 0;grid-template-columns:1fr 1fr;gap:8px;display:grid}.exam-facts div{background:var(--surface);border-radius:8px;padding:12px}.exam-facts dt{color:var(--muted);font-size:.875rem}.exam-facts dd{margin:0;font-size:1.25rem;font-weight:700}.exam-topics{width:100%;margin-bottom:var(--gutter);border-collapse:collapse}.exam-topics th,.exam-topics td{border-bottom:1px solid var(--border);text-align:left;padding:8px 4px}.exam-topics td:last-child,.exam-topics th:last-child{text-align:right;white-space:nowrap}.exam-review{gap:calc(var(--gutter) * 1.5);margin:0 0 var(--gutter);flex-direction:column;padding-left:1.5rem;display:flex}.exam-review-unanswered{border:0;min-width:0;margin:0 0 8px;padding:0}.report-btn{width:100%;margin-top:12px}.report-status{color:var(--muted);margin:12px 0 0}.progress h2{margin-top:calc(var(--gutter) * 2)}.progress-topics,.progress-exams,.browse-topics{margin:0;padding:0;list-style:none}.progress-topic{border-bottom:1px solid var(--border);padding:12px 0}.progress-topic.weak{margin:0 calc(var(--gutter) * -.5);padding:12px calc(var(--gutter) * .5);background:var(--wrong-bg);border-radius:8px}.progress-topic-head{justify-content:space-between;align-items:center;gap:8px;font-weight:600;display:flex}.badge-weak{color:var(--wrong);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700}.progress-bar-row{align-items:center;gap:12px;margin:8px 0;display:flex}.progress-bar{flex:1;height:12px}.progress-mastery{text-align:right;min-width:3.5em;font-weight:600}.progress-topic-facts{color:var(--muted);flex-wrap:wrap;gap:4px 24px;margin:0;font-size:.875rem;display:flex}.progress-topic-facts div{gap:6px;display:flex}.progress-topic-facts dd{color:var(--text);margin:0}.progress-practise{justify-content:center;align-items:center;width:100%;margin-top:8px;text-decoration:none;display:flex}.progress-exams li{min-height:var(--tap);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.progress-exams li a{min-height:var(--tap);flex:1;align-items:center;display:flex}.exam-verdict-sm{letter-spacing:.05em;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700}.exam-verdict-sm.pass{background:var(--right-bg);color:var(--right)}.exam-verdict-sm.fail{background:var(--wrong-bg);color:var(--wrong)}.browse-topic a{min-height:var(--tap);border-bottom:1px solid var(--border);flex-direction:column;justify-content:center;padding:12px 0;text-decoration:none;display:flex}.browse-topic-name{font-weight:600}
