.reading-page{padding-block:var(--space-12) var(--space-20)}.ex-header{margin-bottom:var(--space-10)}.ex-header-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.ex-header h1{font-size:var(--text-3xl);margin-bottom:var(--space-3)}.ex-header p{font-size:var(--text-lg);color:var(--color-text-muted);margin-bottom:var(--space-6)}.tip-card{border-left:3px solid var(--color-primary);background:var(--color-bg-subtle);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin-bottom:var(--space-6);font-size:var(--text-sm);color:var(--color-text-muted)}.tip-card strong{color:var(--color-text);display:block;margin-bottom:var(--space-2)}.tip-card ul{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1)}.ex-progress-bar{height:6px;background:var(--color-border);border-radius:var(--radius-pill);overflow:hidden;margin-bottom:var(--space-2)}.ex-progress-fill{height:100%;background:var(--color-primary);border-radius:var(--radius-pill);transition:width .4s ease}.ex-progress-label{font-size:var(--text-sm);color:var(--color-text-muted)}.exercise-item{max-width:760px}.ex-number{font-size:var(--text-sm);font-weight:600;color:var(--color-text-subtle);margin-bottom:var(--space-6);font-family:var(--font-mono)}.reading-passage{padding:var(--space-5);margin-bottom:var(--space-6)}.passage-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:var(--space-3)}.passage-text{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;background:var(--color-bg-muted);border-radius:var(--radius-md);padding:var(--space-4);overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-word}.ex-question{font-size:var(--text-lg);font-weight:600;color:var(--color-text);line-height:var(--leading-snug);margin-bottom:var(--space-5)}.ex-options{display:flex;flex-direction:column;gap:var(--space-3);list-style:none}.option-btn{width:100%;display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);text-align:left;font-size:var(--text-base);color:var(--color-text);cursor:pointer;transition:border-color .15s,background .15s}.option-btn:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-light)}.option-btn.correct{border-color:var(--color-success);background:#dcfce7;color:#14532d}.option-btn.incorrect{border-color:var(--color-error);background:#fee2e2;color:#7f1d1d}.option-letter{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:var(--radius-md);background:var(--color-bg-muted);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;flex-shrink:0;color:var(--color-text-muted);transition:background .15s,color .15s}.option-btn.correct .option-letter{background:var(--color-success);color:#fff}.option-btn.incorrect .option-letter{background:var(--color-error);color:#fff}.ex-feedback{margin-top:var(--space-5);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-bg-subtle)}.feedback-text{font-weight:700;font-size:var(--text-base);margin-bottom:var(--space-3)}.feedback-text.correct-feedback{color:var(--color-success)}.feedback-text.incorrect-feedback{color:var(--color-error)}.feedback-explanation{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-relaxed)}.ex-actions{margin-top:var(--space-6)}.results-screen{max-width:480px;text-align:center;padding:var(--space-10)}.results-score{font-size:var(--text-5xl);font-weight:800;color:var(--color-primary);line-height:1;margin-bottom:var(--space-4)}.results-msg{font-size:var(--text-lg);color:var(--color-text-muted);margin-bottom:var(--space-8)}.results-actions{display:flex;flex-direction:column;gap:var(--space-3);align-items:center}.results-next{margin-top:var(--space-6);font-size:var(--text-sm);color:var(--color-text-muted)}.results-next a{color:var(--color-primary)}
