/* =========================================================
   PIPO — Mode sombre · correctifs app.css
   ---------------------------------------------------------
   ⚠️ IMPORTANT — DETTE TECHNIQUE
   Les sections QCM / Quiz / Flashcards / Progression / PDF-drop
   de app.css utilisent des couleurs HEX EN DUR (#F7FBFA, #0E2927,
   #E4EBE9, white, #4E6E6B…) au lieu des tokens. Elles ne réagissent
   donc PAS au remap de [data-theme="dark"].

   Deux options :
   (A) RECOMMANDÉ — refactorer ces blocs dans app.css pour utiliser
       les tokens (var(--surface), var(--text), var(--border)…).
       C'est le vrai fix : une seule source de vérité, dark gratuit.
   (B) PROVISOIRE — charger ce fichier d'overrides en attendant.
       Couvre les cas les plus visibles, mais reste un pansement.

   Ce fichier = option (B). Charger APRÈS app.css.
   ========================================================= */

/* ---- PDF dropzone ---- */
[data-theme="dark"] .pdf-drop {
  background: var(--surface-alt);
  border-color: var(--border);
  color: var(--text);
}
[data-theme="dark"] .pdf-drop:hover,
[data-theme="dark"] .pdf-drop:focus-visible { background: rgba(26,185,171,0.10); border-color: var(--accent); }
[data-theme="dark"] .pdf-drop.is-drag { background: rgba(26,185,171,0.16); border-color: var(--accent); }
[data-theme="dark"] .pdf-drop-inner span { color: var(--text-muted); }
[data-theme="dark"] .pdf-remove { background: var(--surface); border-color: var(--border); color: var(--text-muted); }

/* ---- QCM (révision) ---- */
[data-theme="dark"] .qcm-empty { background: var(--surface-alt); border-color: var(--border); color: var(--text-muted); }
[data-theme="dark"] .qcm-empty strong { color: var(--text); }
[data-theme="dark"] .qcm-summary { background: rgba(26,185,171,0.10); color: var(--text); }
[data-theme="dark"] .qcm-item { background: var(--surface); border-color: var(--border); }
[data-theme="dark"] .qcm-item:hover { border-color: var(--accent); box-shadow: 0 2px 10px rgba(0,0,0,0.3); }
[data-theme="dark"] .qcm-question { color: var(--text); }
[data-theme="dark"] .qcm-choice { background: var(--surface-alt); color: var(--text); }
[data-theme="dark"] .qcm-choice:hover { background: var(--bg); }
[data-theme="dark"] .qcm-choice.is-correct { background: rgba(26,185,171,0.16); border-color: var(--accent); }
[data-theme="dark"] .qcm-choice-letter { background: var(--surface); border-color: var(--border); color: var(--text-muted); }
[data-theme="dark"] .qcm-item-foot { color: var(--text-muted); border-top-color: var(--border); }
[data-theme="dark"] .qcm-item-foot strong { color: var(--text); }
[data-theme="dark"] .qcm-topic,
[data-theme="dark"] .quiz-question-topic,
[data-theme="dark"] .flashcard-topic { background: rgba(26,185,171,0.14); color: var(--accent); }

/* ---- QCM tabs ---- */
[data-theme="dark"] .qcm-tabs { background: var(--surface-alt); border-color: var(--border); }
[data-theme="dark"] .qcm-tab { color: var(--text-muted); }
[data-theme="dark"] .qcm-tab:hover { color: var(--text); }
[data-theme="dark"] .qcm-tab.is-active { background: var(--surface); color: var(--text); box-shadow: 0 1px 3px rgba(0,0,0,0.4); }

/* ---- Quiz jouable ---- */
[data-theme="dark"] .quiz-setup,
[data-theme="dark"] .quiz-result,
[data-theme="dark"] .cards-result { background: var(--surface-alt); border-color: var(--border); }
[data-theme="dark"] .quiz-setup-title,
[data-theme="dark"] .quiz-result-msg,
[data-theme="dark"] .cards-result-title { color: var(--text); }
[data-theme="dark"] .quiz-setup-sub,
[data-theme="dark"] .quiz-setup-hint,
[data-theme="dark"] .quiz-result-detail { color: var(--text-muted); }
[data-theme="dark"] .quiz-toggle { background: var(--surface); border-color: var(--border); color: var(--text); }
[data-theme="dark"] .quiz-topbar { border-bottom-color: var(--border); }
[data-theme="dark"] .quiz-progress span,
[data-theme="dark"] .cards-progress span { color: var(--text-muted); }
[data-theme="dark"] .quiz-progress-bar,
[data-theme="dark"] .cards-progress-bar,
[data-theme="dark"] .quiz-score-live,
[data-theme="dark"] .quiz-timer { background: var(--surface-alt); }
[data-theme="dark"] .quiz-score-live span,
[data-theme="dark"] .quiz-timer span { color: var(--text); }
[data-theme="dark"] .quiz-card { background: var(--surface); border-color: var(--border); }
[data-theme="dark"] .quiz-question { color: var(--text); }
[data-theme="dark"] .quiz-choice { background: var(--surface-alt); border-color: var(--border); color: var(--text); }
[data-theme="dark"] .quiz-choice:hover:not(:disabled) { background: var(--bg); border-color: var(--accent); }
[data-theme="dark"] .quiz-choice.is-selected { background: var(--bg); border-color: var(--accent); }
[data-theme="dark"] .quiz-choice.is-correct { background: rgba(26,185,171,0.18); border-color: var(--accent); color: var(--text); }
[data-theme="dark"] .quiz-choice.is-wrong { background: rgba(232,137,106,0.16); border-color: var(--danger); color: var(--text); }
[data-theme="dark"] .quiz-choice-letter { background: var(--surface); border-color: var(--border); color: var(--text-muted); }
[data-theme="dark"] .quiz-feedback.is-good { background: rgba(26,185,171,0.14); color: var(--text); }
[data-theme="dark"] .quiz-feedback.is-bad { background: rgba(232,137,106,0.14); color: var(--text); }

/* ---- Flashcards ---- */
[data-theme="dark"] .cards-empty { background: var(--surface-alt); border-color: var(--border); color: var(--text-muted); }
[data-theme="dark"] .cards-empty strong { color: var(--text); }
[data-theme="dark"] .flashcard-face { border-color: var(--border); box-shadow: 0 2px 8px rgba(0,0,0,0.3); }
[data-theme="dark"] .flashcard-front { background: var(--surface); }
[data-theme="dark"] .flashcard-back { background: var(--surface-alt); }
[data-theme="dark"] .flashcard-content { color: var(--text); }
[data-theme="dark"] .flashcard-hint { background: var(--surface-alt); color: var(--text-muted); }
[data-theme="dark"] .cards-stat-known { background: rgba(26,185,171,0.14); }
[data-theme="dark"] .cards-stat-review { background: rgba(232,137,106,0.14); }

/* ---- Progression ---- */
[data-theme="dark"] .progress-kpi,
[data-theme="dark"] .progress-block,
[data-theme="dark"] .progress-review-card { background: var(--surface); border-color: var(--border); }
[data-theme="dark"] .progress-kpi-value,
[data-theme="dark"] .progress-block-head h3,
[data-theme="dark"] .progress-topic-name,
[data-theme="dark"] .progress-review-front { color: var(--text); }
[data-theme="dark"] .progress-kpi-label,
[data-theme="dark"] .progress-block-sub,
[data-theme="dark"] .progress-topic-stat,
[data-theme="dark"] .progress-empty p { color: var(--text-muted); }
[data-theme="dark"] .progress-topic-bar { background: var(--surface-alt); }
[data-theme="dark"] .progress-pill { background: rgba(26,185,171,0.12); color: var(--text); }

/* ---- Modale fiche révision ---- */
[data-theme="dark"] .revision-modal { background: var(--surface); border-color: var(--border); }
[data-theme="dark"] .revision-modal-header { background: var(--surface-alt); border-bottom-color: var(--border); }
[data-theme="dark"] .revision-modal-title { color: var(--text); }
[data-theme="dark"] .revision-modal-subject { color: var(--text-muted); }
