/* Balanced paint only; :where keeps state specificity intact. No geometry or type changes. */
:root:where([data-palette="balanced"], :not([data-theme])) { color: #182B46; background: #E7EBF0; color-scheme: light; }
:where([data-palette="balanced"], html:not([data-theme])) body { background: #E7EBF0; color: #182B46; }
:where([data-palette="balanced"], html:not([data-theme])) .site-link,
:where([data-palette="balanced"], html:not([data-theme])) .back-link,
:where([data-palette="balanced"], html:not([data-theme])) #progress-label,
:where([data-palette="balanced"], html:not([data-theme])) .daily-progress,
:where([data-palette="balanced"], html:not([data-theme])) .practice-instruction,
:where([data-palette="balanced"], html:not([data-theme])) .card-alternative,
:where([data-palette="balanced"], html:not([data-theme])) .account-gate p,
:where([data-palette="balanced"], html:not([data-theme])) #answer-explanation,
:where([data-palette="balanced"], html:not([data-theme])) #day-plan > p,
:where([data-palette="balanced"], html:not([data-theme])) .result-card > p:not(.result-score),
:where([data-palette="balanced"], html:not([data-theme])) .day-list span,
:where([data-palette="balanced"], html:not([data-theme])) header p:last-child,
:where([data-palette="balanced"], html:not([data-theme])) .topics small,
:where([data-palette="balanced"], html:not([data-theme])) .note,
:where([data-palette="balanced"], html:not([data-theme])) .device-note { color: #43536A; }
:where([data-palette="balanced"], html:not([data-theme])) .eyebrow,
:where([data-palette="balanced"], html:not([data-theme])) .arrow { color: #203A5C; }
:where([data-palette="balanced"], html:not([data-theme])) .topics a,
:where([data-palette="balanced"], html:not([data-theme])) .flashcard,
:where([data-palette="balanced"], html:not([data-theme])) .account-gate,
:where([data-palette="balanced"], html:not([data-theme])) .question-card,
:where([data-palette="balanced"], html:not([data-theme])) .result-card { color: #182B46; background: #FFFFFF; border-color: #D5DAE0; box-shadow: 0 8px 28px rgba(24,43,70,.06); }
:where([data-palette="balanced"], html:not([data-theme])) .mistakes-button,
:where([data-palette="balanced"], html:not([data-theme])) .grade-button,
:where([data-palette="balanced"], html:not([data-theme])) .choice-button,
:where([data-palette="balanced"], html:not([data-theme])) .plan-button,
:where([data-palette="balanced"], html:not([data-theme])) .secondary-button,
:where([data-palette="balanced"], html:not([data-theme])) .day-list button { color: #182B46; background: #FFFFFF; border-color: #718198; }
:where([data-palette="balanced"], html:not([data-theme])) .nav-button { color: #43536A; }
:where([data-palette="balanced"], html:not([data-theme])) .correct-button,
:where([data-palette="balanced"], html:not([data-theme])) .choice-button.answer-correct { color: #1E613E; background: #E3EDE3; border-color: #257449; }
:where([data-palette="balanced"], html:not([data-theme])) .choice-button.answer-wrong { color: #B3342B; background: #F6E4DE; border-color: #B3342B; }
:where([data-palette="balanced"], html:not([data-theme])) .primary-button,
:where([data-palette="balanced"], html:not([data-theme])) .account-gate a,
:where([data-palette="balanced"], html:not([data-theme])) .account-gate button { color: #FFFFFF; background: #203A5C; }
:where([data-palette="balanced"], html:not([data-theme])) .day-list [aria-current] { border-color: #203A5C; }
:where([data-palette="balanced"], html:not([data-theme])) .day-list button:disabled { background: #DDE5EF; color: #526078; }
:where([data-palette="balanced"], html:not([data-theme])) .continue-plan { border-color: #D5DAE0; }
/* The standalone 404 keeps its old Light/Dark declarations and gets these Balanced paints. */
:where([data-palette="balanced"], html:not([data-theme])) main:not(.shell) { background: #FFFFFF; border-color: #D5DAE0; }
:where([data-palette="balanced"], html:not([data-theme])) main:not(.shell) p { color: #43536A; }
:where([data-palette="balanced"], html:not([data-theme])) main:not(.shell) .code { color: #203A5C; }
:where([data-palette="balanced"], html:not([data-theme])) main:not(.shell) nav a { background: #203A5C; color: #FFFFFF; }
:where([data-palette="balanced"], html:not([data-theme])) :is(a, button, input, select, summary):focus-visible { outline: 3px solid #182B46; outline-offset: 3px; }

/* Private reminder actions keep their scripts, layout and disabled behavior. */
:where([data-palette="balanced"], html:not([data-theme])) main:not(.shell) > :is(#confirm, #stop) { background: #203A5C; color: #FFFFFF; }
