:root{--bg: #f0f4f8;--card-bg: #ffffff;--card-border: 1px solid rgba(0,0,0,.07);--card-shadow: 0 1px 4px rgba(0,0,0,.07), 0 4px 16px rgba(0,0,0,.04);--card-radius: 12px;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-fg: #ffffff;--text: #1e293b;--text-muted: #64748b;--text-subtle: #94a3b8;--border: #e2e8f0;--input-bg: #ffffff;--option-bg: #ffffff;--option-hover: #f8fafc;--option-sel-bg: #eff6ff;--option-sel-bd: #2563eb;--correct-bg: #d1fae5;--correct-bd: #86efac;--correct-fg: #14532d;--wrong-bg: #fee2e2;--wrong-bd: #fca5a5;--wrong-fg: #7f1d1d;--expl-bg: #f0f9ff;--expl-bd: #38bdf8;--navbar-bg: #0f172a;--navbar-fg: #e2e8f0;--badge-radius: 12px}[data-theme=markdown]{--bg: #f5f0e8;--card-bg: #fdfaf4;--card-border: 1px solid #e0d5c5;--card-shadow: 0 2px 8px rgba(60,40,10,.06);--card-radius: 10px;--primary: #8b5a2b;--primary-hover: #6d4420;--primary-fg: #fdf8f0;--text: #1e140a;--text-muted: #7a5c42;--text-subtle: #aa8a6a;--border: #e0d5c5;--input-bg: #fdfaf4;--option-bg: #fdfaf4;--option-hover: #f7f0e4;--option-sel-bg: #f2e4d0;--option-sel-bd: #8b5a2b;--correct-bg: #e8f5e8;--correct-bd: #8abf8a;--correct-fg: #1a4a1a;--wrong-bg: #fdecea;--wrong-bd: #d99090;--wrong-fg: #6b1a1a;--expl-bg: #f9f4ea;--expl-bd: #c4965a;--navbar-bg: #1e140a;--navbar-fg: #f0e8d8;--badge-radius: 4px;--font-body: "Source Serif 4", Georgia, serif;--font-heading: "Playfair Display", "Source Serif 4", serif;--font-ui: "Inter", system-ui, sans-serif}body[data-theme=markdown]{font-family:var(--font-ui);font-size:15.5px;line-height:1.7}[data-theme=markdown] .navbar .logo{color:#e0a84a;font-family:var(--font-heading);letter-spacing:0}[data-theme=markdown] h1{font-family:var(--font-heading);font-weight:700;letter-spacing:-.02em}[data-theme=markdown] h2,[data-theme=markdown] .card h2{font-family:var(--font-heading);font-weight:600}[data-theme=markdown] h3{font-family:var(--font-ui);font-weight:600}[data-theme=markdown] .card h2{border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:18px}[data-theme=markdown] .question-card{border-left:3px solid var(--primary)}[data-theme=markdown] .question-card h3{font-family:var(--font-body);font-size:1.05rem;line-height:1.7;font-weight:400;font-style:normal;color:var(--text)}[data-theme=markdown] .option{border-radius:6px;font-size:.94rem}[data-theme=markdown] .option-letter{border-radius:3px;font-family:var(--font-ui);font-weight:600}[data-theme=markdown] .explanation{font-family:var(--font-body);font-size:.9rem;line-height:1.85;border-left:3px solid var(--expl-bd);background:var(--expl-bg);color:var(--text-muted)}[data-theme=markdown] .btn{font-family:var(--font-ui);font-weight:500}[data-theme=markdown] .score-display .score-value{font-family:var(--font-heading);letter-spacing:-3px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;transition:background .25s,color .25s;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 28px}.navbar{background:var(--navbar-bg);color:var(--navbar-fg);padding:0;margin-bottom:32px;position:sticky;top:0;z-index:50}.navbar .navbar-inner{display:flex;justify-content:space-between;align-items:center;height:52px}.navbar .logo{font-size:1.15rem;font-weight:700;color:#60a5fa;text-decoration:none;letter-spacing:-.01em;white-space:nowrap}[data-theme=markdown] .navbar .logo{color:#d4a96a}.nav-desktop{display:flex;gap:4px;align-items:center}.nav-mobile-controls{display:none;align-items:center;gap:8px}.navbar a{color:var(--navbar-fg);text-decoration:none;font-size:.83rem;padding:6px 10px;border-radius:6px;white-space:nowrap;transition:opacity .15s,background .15s}.navbar a:hover{background:#ffffff17;opacity:1!important}.navbar button{background:transparent;border:1px solid rgba(255,255,255,.2);color:var(--navbar-fg);padding:5px 14px;border-radius:6px;cursor:pointer;font-size:.82rem;white-space:nowrap;font-family:inherit}.card{background:var(--card-bg);border:var(--card-border);border-radius:var(--card-radius);padding:28px;box-shadow:var(--card-shadow);margin-bottom:16px}.card h2{margin-bottom:16px;font-size:1.15rem;color:var(--text);font-weight:600}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 20px;border-radius:8px;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .15s,opacity .15s;white-space:nowrap}[data-theme=minimal] .btn{border-radius:6px}.btn-primary{background:var(--primary);color:var(--primary-fg)}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--border);color:var(--text)}.btn-secondary:hover{filter:brightness(.94)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{padding:5px 12px;font-size:.78rem}.btn:disabled{opacity:.45;cursor:not-allowed}.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:500;margin-bottom:6px;font-size:.85rem;color:var(--text-muted)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:9px 13px;border:1px solid var(--border);border-radius:8px;font-size:.9rem;background:var(--input-bg);color:var(--text);font-family:inherit}[data-theme=minimal] .form-group input,[data-theme=minimal] .form-group select,[data-theme=minimal] .form-group textarea{border-radius:6px;background:var(--input-bg)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}[data-theme=minimal] .form-group input:focus{box-shadow:0 0 0 2px #09090b18}.question-card{background:var(--card-bg);border:var(--card-border);border-left:4px solid var(--primary);border-radius:var(--card-radius);padding:28px 28px 24px;margin-bottom:20px;box-shadow:var(--card-shadow)}.question-card h3{font-size:1.05rem;line-height:1.6;margin-bottom:20px;color:var(--text);font-weight:600}.question-card .options{display:flex;flex-direction:column;gap:10px}.question-card .option{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1.5px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .12s,background .12s;background:var(--option-bg);font-size:.9rem;color:var(--text);-webkit-user-select:none;user-select:none}.question-card .option:hover{background:var(--option-hover);border-color:var(--text-subtle)}.question-card .option.selected{border-color:var(--option-sel-bd);background:var(--option-sel-bg)}.question-card .option.correct{border-color:var(--correct-bd);background:var(--correct-bg);color:var(--correct-fg)}.question-card .option.incorrect{border-color:var(--wrong-bd);background:var(--wrong-bg);color:var(--wrong-fg)}.option-letter{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;flex-shrink:0;font-size:.75rem;font-weight:700;background:var(--border);color:var(--text-muted);transition:background .12s}.option.selected .option-letter{background:var(--primary);color:#fff}.option.correct .option-letter{background:#16a34a;color:#fff}.option.incorrect .option-letter{background:#dc2626;color:#fff}.explanation{margin-top:20px;padding:18px 20px;background:var(--expl-bg);border-left:3px solid var(--expl-bd);border-radius:8px;font-size:.875rem;color:var(--text-muted);line-height:1.75;white-space:pre-line}.explanation strong{color:var(--text);font-weight:600}.review-card{background:var(--card-bg);border:var(--card-border);border-radius:var(--card-radius);padding:28px 28px 24px;margin-bottom:20px;box-shadow:var(--card-shadow);border-left:4px solid var(--border)}.review-card.correct-card{border-left-color:#22c55e}.review-card.wrong-card{border-left-color:#ef4444}.review-card.skipped-card{border-left-color:var(--text-subtle)}.badge{display:inline-block;padding:3px 10px;border-radius:var(--badge-radius);font-size:.72rem;font-weight:600}.badge-processing{background:#fef3c7;color:#92400e}.badge-ready{background:#d1fae5;color:#065f46}.badge-error{background:#fee2e2;color:#991b1b}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px}.stat-card{background:var(--card-bg);border:var(--card-border);padding:24px;border-radius:var(--card-radius);box-shadow:var(--card-shadow);text-align:center}.stat-card .stat-value{font-size:2.2rem;font-weight:800;color:var(--primary)}.stat-card .stat-label{font-size:.8rem;color:var(--text-muted);margin-top:4px;text-transform:uppercase;letter-spacing:.04em}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:.875rem}.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.score-display{text-align:center;padding:40px 24px}.score-display .score-value{font-size:4.5rem;font-weight:900;line-height:1;letter-spacing:-2px}.score-display .score-value.good{color:#22c55e}.score-display .score-value.ok{color:#f59e0b}.score-display .score-value.poor{color:#ef4444}.upload-area{border:2px dashed var(--border);border-radius:12px;padding:56px;text-align:center;cursor:pointer;transition:all .2s}.upload-area:hover,.upload-area.dragging{border-color:var(--primary);background:var(--option-sel-bg)}.progress-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.progress-bar .fill{background:var(--primary);height:100%;border-radius:999px;transition:width .3s}.spinner{display:inline-block;width:20px;height:20px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.section-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--border);border-radius:8px;margin-bottom:8px;background:var(--card-bg)}.auth-page{display:flex;justify-content:center;align-items:center;min-height:80vh}.auth-card{background:var(--card-bg);padding:40px;border-radius:14px;box-shadow:0 4px 24px #00000014;width:100%;max-width:420px;border:var(--card-border)}.auth-card h1{text-align:center;margin-bottom:24px;color:var(--text)}.auth-card .auth-link{text-align:center;margin-top:14px;font-size:.875rem;color:var(--text-muted)}.auth-card .auth-link a{color:var(--primary);text-decoration:none}.loading{text-align:center;padding:56px;color:var(--text-muted)}.empty-state{text-align:center;padding:48px;color:var(--text-subtle)}.site-footer{text-align:center;padding:24px 0 32px;margin-top:48px;border-top:1px solid var(--border);color:var(--text-subtle);font-size:.8rem}.quiz-bottom{padding-bottom:48px}.quiz-layout{display:flex;gap:24px;align-items:flex-start}.quiz-sidebar{width:200px;flex-shrink:0;position:sticky;top:68px;background:var(--card-bg);border:var(--card-border);border-radius:var(--card-radius);padding:16px;box-shadow:var(--card-shadow);max-height:calc(100vh - 100px);overflow-y:auto}.quiz-nav-toggle{display:none}.quiz-nav-mobile-grid{display:flex;flex-wrap:wrap;gap:6px;padding:14px;margin-top:10px;background:var(--card-bg);border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);animation:fadeInUp .15s ease}@media (max-width: 768px){.container{padding:0 14px}.grid-2{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.question-card,.review-card{padding:18px 14px}.card{padding:18px 16px}.navbar .navbar-inner{height:48px}.nav-desktop{display:none}.nav-mobile-controls{display:flex}.quiz-sidebar{display:none}.quiz-nav-toggle{display:inline-flex}}
