/*
  theme-noir-light.css — pale lavender-white paper with near-black ink,
  flipped from the dark native's near-black-bg/mauve-accent
  arrangement. Mauve deepened for contrast against the light paper;
  the literal Prestige Mauve hex becomes --accent-soft here.

  Scoped under `body[data-theme="noir"].theme-light` (compound
  selector, beats theme-noir.css's single-attribute rules on
  specificity). Toggled at runtime by js/color_scheme.js. Radius/font
  stay the same as the native file.
*/

body[data-theme="noir"].theme-light {
  --accent:      #954c81;
  --accent-dark: #7c3f6c;
  --accent-soft: #e8b4d8;
  --success:     #15803d;
  --danger:      #b91c1c;
  --warning:     #92400e;

  --gradient-brand: linear-gradient(135deg, #954c81 0%, #7c3f6c 100%);

  --bg:        #f4eef7;
  --bg-alt:    #ece3f1;
  --bg-card:   #faf6fb;
  --bg-card2:  #f0e8f4;
  --surface:   rgba(18,17,26,.045);
  --surface-hover: rgba(18,17,26,.08);
  --border:    rgba(18,17,26,.14);
  --border-strong: rgba(18,17,26,.28);

  --text:      #12111a;
  --text-muted: rgba(18,17,26,.62);
  --text-dim:  rgba(18,17,26,.42);

  --shadow: 0 10px 30px rgba(18,17,26,.1), 0 2px 10px rgba(18,17,26,.05);
}

/* ---- Header / hero-stats glass — light, not dark ---- */
body[data-theme="noir"].theme-light header {
  background: rgba(244,238,247,.85);
}
body[data-theme="noir"].theme-light .hero-stats-panel {
  background: rgba(250,246,251,.7);
}

/* ---- Primary button ---- */
body[data-theme="noir"].theme-light .btn-primary {
  background: var(--accent);
  color: #fff;
  box-shadow: 0 4px 14px rgba(149,76,129,.32);
}
body[data-theme="noir"].theme-light .btn-primary:hover {
  background: var(--accent-dark);
  color: #fff;
  box-shadow: 0 6px 20px rgba(149,76,129,.42);
}
body[data-theme="noir"].theme-light .option-btn:hover:not(:disabled) .option-letter,
body[data-theme="noir"].theme-light .subtab.active,
body[data-theme="noir"].theme-light .level-tab.active {
  color: #fff;
}

/* ---- Hero: light wash, ink-tinted grain, no glow on the word ---- */
body[data-theme="noir"].theme-light .hero-canvas-wrap {
  background:
    radial-gradient(900px 500px at 78% 20%, rgba(149,76,129,.12), transparent 60%),
    radial-gradient(700px 420px at 10% 100%, rgba(149,76,129,.07), transparent 55%),
    var(--bg);
}
body[data-theme="noir"].theme-light .hero-grain {
  background-image:
    linear-gradient(rgba(18,17,26,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18,17,26,.045) 1px, transparent 1px);
}
body[data-theme="noir"].theme-light .hero-heading em {
  text-shadow: none;
}

/* ---- Badges/chips/progress bars/toast — ink-tinted ---- */
body[data-theme="noir"].theme-light .topic-progress-bar,
body[data-theme="noir"].theme-light .quiz-progress-bar,
body[data-theme="noir"].theme-light .mini-bar-track {
  background: rgba(18,17,26,.09);
}
body[data-theme="noir"].theme-light .score-circle-bg {
  stroke: rgba(18,17,26,.1);
}
body[data-theme="noir"].theme-light .topic-progress-table th {
  background: rgba(18,17,26,.035);
}
body[data-theme="noir"].theme-light .topic-progress-table tr:hover td {
  background: rgba(18,17,26,.04);
}
body[data-theme="noir"].theme-light .answer-chip {
  background: rgba(18,17,26,.06);
}
body[data-theme="noir"].theme-light .answer-chip-remove {
  background: rgba(18,17,26,.12);
}
body[data-theme="noir"].theme-light .format-help-panel code {
  background: rgba(18,17,26,.08);
}
body[data-theme="noir"].theme-light .topic-chip {
  background: rgba(18,17,26,.07);
}
body[data-theme="noir"].theme-light .ai-points {
  border-top-color: rgba(18,17,26,.12);
}
body[data-theme="noir"].theme-light .toast {
  background: rgba(255,255,255,.95);
  color: var(--text);
  border-color: rgba(18,17,26,.12);
}

/* ---- Accent-tinted glows/focus-rings ---- */
body[data-theme="noir"].theme-light .marks-badge,
body[data-theme="noir"].theme-light .option-btn:hover:not(:disabled),
body[data-theme="noir"].theme-light .setup-option:hover,
body[data-theme="noir"].theme-light .setup-option.selected,
body[data-theme="noir"].theme-light .symbol-btn:hover,
body[data-theme="noir"].theme-light .explanation-box.feedback-reveal {
  background: rgba(149,76,129,.1);
}
body[data-theme="noir"].theme-light .quiz-timer {
  border-color: rgba(149,76,129,.28);
}
body[data-theme="noir"].theme-light .explanation-box {
  background: rgba(149,76,129,.06);
  border-color: rgba(149,76,129,.28);
}
body[data-theme="noir"].theme-light .explanation-box.feedback-reveal {
  border-color: rgba(149,76,129,.38);
}
body[data-theme="noir"].theme-light .answer-input:focus {
  box-shadow: 0 0 0 3px rgba(149,76,129,.16);
}
body[data-theme="noir"].theme-light .quiz-progress-fill {
  box-shadow: none;
}

/* ---- Difficulty badges — light-appropriate generic pair ---- */
body[data-theme="noir"].theme-light .diff-easy   { background: rgba(22,163,74,.12); color: #15803d; }
body[data-theme="noir"].theme-light .diff-medium { background: rgba(180,83,9,.14); color: #92400e; }
body[data-theme="noir"].theme-light .diff-hard   { background: rgba(220,38,38,.12); color: #b91c1c; }
