/* FactBurst light theme — central colour tokens and light-mode component overrides. */
:root {
  color-scheme: light;
  --color-bg: #f4f7fb;
  --color-surface: #ffffff;
  --color-surface-soft: #f5f8fb;
  --color-text: #182438;
  --color-text-muted: #40546d;
  --color-text-subtle: #53677f;
  --color-primary: #087fa8;
  --color-primary-hover: #075d7c;
  --color-primary-soft: #eef8fc;
  --color-border: rgba(46,72,108,.20);
  --color-border-soft: rgba(46,72,108,.15);
  --color-border-control: rgba(46,72,108,.24);
  --color-shadow: 0 12px 36px rgba(40,60,90,.08);
  --color-success: #22a861;
  --color-danger: #d94848;
  --color-warning: #a87400;
  --color-premium: #6542b2;
  --category-default-rgb: 53, 199, 255;
  --category-science-rgb: 69, 212, 131;
  --category-history-rgb: 246, 200, 95;
  --category-geography-rgb: 92, 193, 170;
  --category-space-rgb: 140, 124, 255;
  --category-nature-animals-rgb: 111, 205, 120;
  --category-technology-rgb: 53, 199, 255;
  --category-arts-literature-rgb: 193, 135, 255;
  --category-music-rgb: 241, 115, 154;
  --category-film-rgb: 255, 145, 95;
  --category-logos-rgb: 103, 218, 255;
  --category-sports-rgb: 93, 218, 158;
  --category-entertainment-rgb: 238, 130, 211;
  --category-mathematics-rgb: 111, 166, 255;
  --category-general-knowledge-rgb: 118, 221, 255;
  --bg: var(--color-bg);
  --panel: var(--color-surface);
  --panel-2: var(--color-surface-soft);
  --text: var(--color-text);
  --muted: var(--color-text-muted);
  --border: var(--color-border);
  --shadow: var(--color-shadow);
  --border-strong: rgba(8,127,168,.34);
  --cyan: var(--color-primary);
  --cyan-soft: var(--color-primary-soft);
  --muted-strong: var(--color-text-subtle);
  --public-muted: var(--color-text-muted);
  --public-accent: var(--color-primary);
  --public-line: var(--color-border-soft);
  --light-text: var(--color-text);
  --light-muted: var(--color-text-muted);
  --light-panel: var(--color-surface);
  --light-border: var(--color-border);
  --light-border-soft: var(--color-border-soft);
  --light-border-control: var(--color-border-control);
  --light-shadow: var(--color-shadow);
}


body {
  color: var(--text);
  background: #f4f7fb;
}

.site-header {
  border-bottom-color: var(--light-border-soft);
  background: rgba(255,255,255,.92);
  color: var(--light-text);
  box-shadow: 0 1px 10px rgba(30, 50, 80, 0.06);
}

.quiz-feature p,
.quiz-card p,
.quiz-meta-row,
.result-copy,
.site-footer {
  color: var(--light-muted);
  border-top-color: rgba(47, 76, 117, 0.12);
  background: var(--light-panel);
}

.quiz-feature,
.quiz-card,
.quiz-stage,
.results-card,
.empty-state {
  border-color: var(--border);
  background: linear-gradient(145deg, var(--light-panel), #f3f7fd);
  box-shadow: var(--shadow);
}

.question-card {
  border-color: rgba(47, 76, 117, 0.14);
  background: rgba(238, 244, 251, 0.82);
}

.answer-button {
  color: var(--light-text);
  border-color: rgba(46,72,108,.17);
  background: #f8fafc;
}

.answer-button:hover {
  border-color: rgba(0,160,210,.45);
  background: #eef8fc;
}

.answer-button.selected {
  background: #e3f7fc;
  color: #10233a;
  border-color: #27b8df;
}

.answer-letter {
  background: #e8eef5;
  color: #33455d;
  border-color: var(--light-border-soft);
}

.result-row {
  background: #f4f7fa;
  color: var(--light-text);
  border-color: var(--light-border-soft);
}

.result-row strong { color: #162033; }

.button-secondary {
  color: #24364e;
  border-color: rgba(46,72,108,.2);
  background: var(--light-panel);
}

.progress-track {
  background: rgba(47, 76, 117, 0.10);
}

.theme-choice {
  background: var(--light-panel);
  color: var(--light-text);
  border-color: rgba(46,72,108,.18);
}

.brand,
.brand span {
  color: var(--light-text);
}

.hero h1,
.section-heading h2,
.quiz-title,
.results-card h1,
.empty-state h1,
.quiz-feature h3,
.quiz-card h3,
.question-card h2,
.profile-panel h2,
.profile-panel h3,
.profile-hero h1 {
  color: var(--light-text);
}

.quiz-feature,
.quiz-card,
.quiz-stage,
.results-card,
.empty-state,
.question-card,
.profile-panel,
.profile-stat,
.profile-security-card,
.profile-hero,
.profile-result-row,
.profile-best-card {
  color: var(--light-text);
  border-color: var(--light-border);
  background: var(--light-panel);
  box-shadow: var(--light-shadow);
}

.quiz-feature p,
.quiz-card p,
.quiz-meta-row,
.result-copy,
.profile-email,
.profile-member-since,
.profile-section-label,
.profile-security-card p,
.profile-details dd,
.profile-result-main small,
.profile-best-copy small,
.profile-loading,
.profile-empty,
.profile-performance-copy p {
  color: var(--light-muted);
}

.progress-track,
.profile-xp-track {
  background: #dce5ef;
}

.result-row strong,
.result-row p {
  color: var(--light-text);
}

.result-row p {
  color: var(--light-muted);
}

.button-secondary:hover {
  background: #f1f7fb;
}

.filter-label {
  color: var(--light-muted);
}

.filter-label select {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: rgba(46,72,108,.2);
}

.site-footer {
  color: var(--light-muted);
  background: var(--light-panel);
  border-top-color: var(--light-border-soft);
}

.professional-footer-brand-link,
.professional-footer-links strong {
  color: var(--light-text);
}

.professional-footer-brand p,
.professional-footer-bottom {
  color: var(--light-muted);
}

.professional-footer-links a,
.footer-link-button,
.site-footer a {
  color: #344b68;
}

.professional-footer-bottom {
  border-top-color: var(--light-border-soft);
}

.profile-avatar {
  color: var(--light-panel);
}

.profile-result-score strong,
.profile-best-score,
.profile-performance-badge {
  color: var(--light-text);
}

input,
textarea,
select {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}

input::placeholder,
textarea::placeholder {
  color: #71819a;
}

.premium-quiz-badge {
  color: #6840a8;
  background: rgba(142, 92, 218, 0.08);
  border-color: rgba(109, 74, 174, 0.24);
}

.category-pill {
  background: rgba(0,160,210,.08);
}

.maintenance-banner {
  color: #07132f;
}

.site-confirm-overlay {
  background: rgba(30,45,70,.35);
}

.site-confirm-dialog {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: rgba(46,72,108,.18);
  box-shadow: 0 24px 70px rgba(30,50,80,.20);
}

.site-confirm-dialog h2 {
  color: var(--light-text);
}

.site-confirm-dialog p {
  color: var(--light-muted);
}

.comments-card,
.engagement-card,
.leaderboard-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}

#quiz-comment-composer {
  border-bottom-color: rgba(46,72,108,.13);
}

.comment-form label,
.quiz-comment-form label {
  color: #25364d;
}

.comment-form textarea,
.quiz-comment-form textarea {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
  box-shadow: none;
}

.comment-form textarea::placeholder,
.quiz-comment-form textarea::placeholder {
  color: #71819a;
}

.comment-thread,
.quiz-comment {
  border-top-color: var(--light-border-soft);
  border-bottom-color: var(--light-border-soft);
}

.comment-card p,
.quiz-comment p {
  color: #344862;
}

.comment-meta span,
.quiz-comment-meta time,
.comment-action,
.comment-login-note,
.comments-empty,
.quiz-comment-report {
  color: #5b6d86;
}

.comment-replies {
  background: #f2f6fa;
  border-left-color: rgba(0,160,210,.22);
}

.comment-action {
  background: var(--light-panel);
  border-color: rgba(46,72,108,.18);
}

.comment-action:hover {
  color: #18344d;
  background: #eef8fc;
}

.hero h1 {
  background: none;
  -webkit-text-fill-color: var(--light-text);
  color: var(--light-text);
}

.hero-text {
  color: var(--light-muted);
}

.section-heading h2,
.section-heading p {
  color: var(--light-text);
}

.section-heading p {
  color: var(--light-muted);
}

.leaderboard-header,
.leaderboard-row,
.leaderboard-cell {
  color: #344862;
}

.leaderboard-header {
  background: #f1f5f9;
}

.notification-item:hover,
.account-tab,
.account-fine-print {
  color: var(--light-muted);
}

.account-tabs {
  background: #eef3f8;
  border-color: rgba(46,72,108,.14);
}

.account-tab.active {
  color: var(--light-text);
  background: var(--light-panel);
}

.profile-history-card,
.friend-card,
.achievement-card,
.challenge-notice,
.challenge-friend {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}

.challenge-notice p,
.challenge-friend p,
.friend-card small,
.achievement-card p {
  color: var(--light-muted);
}

.brand {
  color: var(--light-text);
}

.brand span {
  color: var(--light-text);
}

.comment-form-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}

.comment-form-card .quiz-comment-form label {
  color: #25364d;
}

.quiz-comment-form-row small {
  color: var(--light-muted);
}

.comment-feedback {
  color: #087f58;
}

.contact-form label {
  color: #25364d;
}

.contact-form input,
.contact-form textarea {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: #71819a;
}

.contact-form input:focus,
.contact-form textarea:focus {
  background: var(--light-panel);
  border-color: #27b8df;
  box-shadow: 0 0 0 3px rgba(39,184,223,.12);
}

.report-target {
  background: #f1f8fc;
  border-color: rgba(0,160,210,.18);
}

.report-target strong {
  color: var(--light-text);
}

.contact-success {
  color: #087f58;
  background: #effaf5;
}

.contact-error {
  color: #a1264e;
  background: #fff1f5;
}

.category-pill {
  color: #17627b;
  border-color: rgba(8,127,168,.22);
  background: rgba(8,127,168,.07);
}

.eyebrow {
  color: #8a6500;
}

.home-kicker,
.home-latest-content::after {
  color: #17627b;
}

.profile-section-label,
.profile-performance-badge {
  color: #36516f;
}

.quiz-comment-report,
.comment-action,
.comment-meta span {
  color: #465a74;
}

.site-footer a:hover {
  color: #18344d;
}

.profile-hero,
.profile-panel,
.profile-stat,
.profile-engagement-panel,
.profile-friends-panel,
.profile-history-panel,
.profile-history-card,
.profile-best-card,
.achievement-card,
.friend-card,
.profile-security-card,
.profile-xp-benefits,
.account-dialog {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}

.profile-hero h1,
.profile-panel-heading,
.profile-panel-heading h2,
.profile-panel-heading h3,
.profile-security-card h3,
.profile-xp-total strong,
.profile-xp-benefits strong,
.achievement-card strong,
.friend-card strong,
.profile-best-copy strong,
.profile-result-main strong {
  color: var(--light-text);
}

.profile-help,
.account-copy,
.profile-email,
.profile-member-since,
.profile-performance-copy p,
.profile-security-card p,
.profile-best-copy small,
.profile-result-main small,
.friend-card small,
.achievement-card p,
.profile-history-main p {
  color: #465a74;
}

.profile-section-label,
.profile-security-card-label,
.profile-best-number,
.profile-details dt {
  color: var(--color-text-subtle);
}

.profile-details dd,
.profile-result-score,
.profile-best-score {
  color: #25364d;
}

.profile-details > div,
.profile-result-row {
  border-color: var(--light-border-soft);
}

.profile-score-ring {
  background:
    radial-gradient(circle at center, var(--light-panel) 59%, transparent 60%),
    conic-gradient(#087fa8 var(--profile-progress), #dce5ef 0);
  box-shadow: 0 0 30px rgba(8,127,168,.08);
}

.profile-score-ring strong {
  color: var(--light-text);
}

.profile-score-ring span {
  color: #53677f;
}

.profile-performance-badge,
.profile-inline-link {
  color: #087fa8;
  background: rgba(8,127,168,.07);
  border-color: rgba(8,127,168,.20);
}

.profile-inline-link {
  background: transparent;
}

.profile-inline-link:hover {
  color: #075d7c;
}

.profile-xp-total span,
.profile-xp-benefits ul {
  color: #465a74;
}

.profile-xp-track {
  background: #dce5ef;
}

.profile-xp-benefits {
  background: #f5f8fb;
}

.account-tab {
  color: #53677f;
}

.account-fine-print {
  color: var(--color-text-subtle);
}

.home-quiz-card p,
.home-benefits-list p,
.home-latest-content p,
.quiz-card p,
.quiz-card .quiz-card-footer,
.form-card label,
.contact-form label,
.account-form label {
  color: #465a74;
}

.home-kicker,
.home-intro-copy h1 em,
.home-category,
.home-round-action,
.home-section-title > a,
.home-proof-points b,
.challenge-kicker,
.profile-inline-link {
  color: #087fa8;
}

.category-pill,
.engagement-badge,
.current-user .leaderboard-cell.player::after {
  color: #17627b;
}

.quiz-card .quiz-card-footer span:last-child {
  color: #36516f;
}

.quiz-card .quiz-card-footer,
.home-recent-arrow {
  color: var(--color-text-subtle);
}

.pending-email-box strong,
.pending-email-box span {
  color: #36516f;
}

.profile-score-ring span,
.profile-best-number,
.profile-details dt,
.account-fine-print {
  color: var(--color-text-subtle);
}

.profile-performance-badge {
  color: #17627b;
  background: rgba(8,127,168,.07);
  border-color: rgba(8,127,168,.20);
}

.answer-button.selected .answer-letter {
  color: var(--light-panel);
  background: #087fa8;
}

.button-primary {
  color: var(--light-panel);
  background: #087fa8;
}

.result-score {
  background: none;
  -webkit-text-fill-color: #087fa8;
  color: #087fa8;
}

.home-primary-action {
  color: var(--light-panel);
  background: #087fa8;
}

.home-primary-action span {
  color: var(--light-panel);
  background: #075d7c;
}

.home-art-card-main strong small {
  color: var(--color-text-subtle);
}

.home-art-stars {
  color: #087fa8;
}

.page-section > h1 {
  color: var(--light-text);
}

.page-section > .hero-text {
  color: #465a74;
}

.page-section .quiz-feature,
.page-section .quiz-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 14px 38px rgba(40,60,90,.08);
}

.page-section .quiz-feature h2,
.page-section .quiz-feature h3,
.page-section .quiz-card h2 {
  color: var(--light-text);
}

.page-section .quiz-feature p,
.page-section .quiz-card p {
  color: #465a74;
}

.page-section .button-secondary {
  color: #24364e;
  background: var(--light-panel);
  border-color: var(--light-border-control);
}

.page-section .button-secondary:hover {
  color: #18344d;
  background: #f1f7fb;
}

.legal-updated {
  color: #53677f;
}

.legal-page .legal-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 14px 38px rgba(40,60,90,.08);
}

.legal-page .legal-card h2 {
  color: var(--light-text);
}

.legal-page .legal-card p {
  color: #465a74;
}

.legal-page .legal-card a {
  color: #087fa8;
}

/* Light-theme language switcher. */
.site-header .language-switcher {
  position: relative;
}
.site-header .language-switcher::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-right: 2px solid var(--light-muted);
  border-bottom: 2px solid var(--light-muted);
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
}
.site-header .language-switcher select {
  appearance: none;
  -webkit-appearance: none;
  color: var(--light-text);
  background: var(--light-panel);
  border: 1px solid var(--light-border-control);
  padding-right: 38px;
  box-shadow: 0 4px 14px rgba(46,72,108,.10);
}
.site-header .language-switcher select option {
  color: var(--light-text);
  background: var(--light-panel);
}

/* Library and directory page headings use the shared light typography. */
.directory-main .page-intro h1 {
  color: var(--light-text);
}

/* Library page light-theme surfaces. */
.library-value-card {
  color: var(--light-text);
  border-color: var(--light-border);
  background: var(--light-panel);
  box-shadow: 0 14px 38px rgba(40,60,90,.08);
}
.library-value-card-secondary {
  background: var(--light-panel);
}
.library-value-card h2 {
  color: var(--light-text);
}
.library-value-card > p:not(.eyebrow) {
  color: var(--light-muted);
}
.library-value-points span {
  color: var(--light-muted);
  border-color: var(--light-border-soft);
  background: #f8fafc;
}
.library-value-points strong {
  color: var(--light-text);
}
.library-step {
  color: var(--light-muted);
  border-bottom-color: rgba(46,72,108,.10);
}
.library-step b {
  color: #087fa8;
}
.library-section-copy {
  color: var(--light-muted);
}
.directory-main .quiz-card,
.directory-main .quiz-feature {
  color: var(--light-text);
  border-color: rgba(46,72,108,.14);
  background: var(--light-panel);
  box-shadow: 0 10px 30px rgba(40,60,90,.06);
}
.directory-main .quiz-card:hover {
  background: #f7fbfd;
  border-color: rgba(8,127,168,.25);
}
.directory-main .quiz-card h3,
.directory-main .quiz-feature h3 {
  color: var(--light-text);
}
.directory-main .quiz-card p,
.directory-main .quiz-feature p {
  color: var(--light-muted);
}
.directory-main .quiz-card .quiz-card-footer {
  border-top-color: rgba(46,72,108,.10);
  color: var(--light-muted);
}
.directory-main .library-controls input,
.directory-main .library-controls select,
.directory-main .filter-label select {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
  box-shadow: 0 4px 14px rgba(46,72,108,.06);
}
.directory-main .library-controls input::placeholder {
  color: #71819a;
}
.directory-main .library-count-row {
  color: var(--light-muted);
}

/* ===== Final public-site light-theme pass ===== */

/* Forum */
.forum-hero-card,
.forum-category-card,
.forum-guidance,
.forum-thread-row,
.forum-compose,
.forum-post,
.forum-login-prompt,
.profile-card,
.profile-stats > div {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.forum-category-meta strong,
.forum-thread-meta strong {
  color: var(--light-text);
}
.forum-category-main p,
.forum-category-meta,
.forum-thread-main p,
.forum-thread-meta,
.forum-thread-info,
.forum-post-meta,
.forum-login-prompt p,
.profile-joined,
.profile-stats span {
  color: var(--light-muted);
}
.forum-guidance-grid > div {
  background: #f7f9fc;
  border-color: var(--light-border-soft);
}
.forum-form input,
.forum-form textarea {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}
.forum-form input::placeholder,
.forum-form textarea::placeholder {
  color: #71819a;
}
.forum-post-badge,
.profile-role {
  background: rgba(0,160,210,.08);
}
.forum-report-overlay,
.forum-link-overlay {
  background: rgba(30,45,70,.35);
}
.forum-report-modal,
.forum-link-modal {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: rgba(46,72,108,.18);
  box-shadow: 0 24px 70px rgba(30,50,80,.20);
}
.forum-report-modal p,
.forum-link-modal p {
  color: var(--light-muted);
}
.forum-report-close,
.forum-link-close {
  background: #f1f5f9;
  color: var(--light-text);
}
.forum-report-close:hover,
.forum-link-close:hover {
  background: #e5edf5;
}
.forum-breadcrumbs,
.forum-profile-link {
  color: var(--light-muted);
}
.forum-breadcrumbs a,
.forum-profile-link:hover strong {
  color: #087fa8;
}

/* Account/profile components that live in account.css */
.profile-account-alert {
  background: #fff8e8;
  border-color: rgba(210,150,35,.25);
}
.profile-account-alert strong {
  color: #25364d;
}
.profile-account-alert span {
  color: #65758b;
}
.profile-quick-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}
.profile-quick-card strong {
  color: var(--light-text);
}
.profile-quick-card small {
  color: var(--light-muted);
}
.profile-quick-arrow {
  color: var(--light-muted);
}
.profile-quick-card:hover {
  background: #f7fbfd;
  border-color: rgba(8,127,168,.25);
}

/* Shared overlays and pickers */
.account-backdrop,
.challenge-picker-overlay {
  background: rgba(30,45,70,.35);
}
.challenge-picker,
.account-dialog {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: rgba(46,72,108,.18);
  box-shadow: 0 24px 70px rgba(30,50,80,.20);
}
.challenge-picker-copy,
.account-dialog p {
  color: var(--light-muted);
}
.account-dialog input,
.challenge-picker select {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}

/* Footer and shared dark shell remnants */
.professional-footer {
  color: var(--light-muted);
  background: var(--light-panel);
  border-top-color: var(--light-border-soft);
}

.professional-footer-brand p,
.professional-footer-links a,
.professional-footer-bottom {
  color: var(--light-muted);
}
.professional-footer-links a:hover {
  color: #087fa8;
}
.quiz-forum-discussion,
.quiz-about-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}
.quiz-forum-discussion p,
.quiz-about-card > div > p:not(.eyebrow) {
  color: var(--light-muted);
}

/* Mobile navigation links */
.mobile-nav-panel a {
  color: var(--light-muted);
}
.mobile-nav-panel a:hover,
.mobile-nav-panel a[aria-current="page"] {
  color: var(--light-text);
  background: #eef8fc;
}

/* Hover states inherited from dark CSS */
@media (hover: hover) {
  .quiz-card[data-category-key]:hover,
  .profile-stat:hover,
  .friend-card:hover,
  .profile-history-card:hover {
    background: #f7fbfd;
    border-color: rgba(8,127,168,.20);
    box-shadow: 0 12px 36px rgba(40,60,90,.10);
  }
  .leaderboard-row:not(.leaderboard-header):hover {
    background: #f5f9fc;
  }
}

/* Keep form controls readable everywhere */
button,
summary {
  color: var(--light-text);
}

/* ===== Complete remaining public pages ===== */

/* Learn hub and guide pages */
.learn-hub-hero > div,
.learn-hub-highlight,
.learn-article-hero,
.learn-article,
.learn-topic-card,
.learn-quiz-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.learn-hub-hero h1,
.learn-article-hero h1,
.learn-hub-highlight strong,
.learn-value-grid h2,
.learn-article-section h2,
.learn-quiz-card h2 {
  color: var(--light-text);
}
.learn-hub-hero > div:first-child > p:last-child,
.learn-article-hero > p:last-child,
.learn-hub-highlight p,
.learn-value-grid p,
.learn-guides-section > .section-heading p:not(.eyebrow),
.learn-article-section p,
.learn-topic-card li,
.learn-quiz-card p {
  color: var(--light-muted);
}
.learn-value-grid article,
.learn-subject-card,
.learn-topic-card li {
  background: #f8fafc;
  border-color: rgba(46,72,108,.13);
}
.learn-article-section {
  border-bottom-color: rgba(46,72,108,.10);
}
.learn-path-label {
  background: #f3f9fc;
  border-color: rgba(8,127,168,.16);
}
.learn-quiz-card {
  background: var(--light-panel);
}
.learn-quiz-icon {
  box-shadow: 0 8px 22px rgba(40,60,90,.10);
}
.learn-cta {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 12px 36px rgba(40,60,90,.07);
}

/* Category pages */
.category-stat,
.category-learning-card,
.category-related-card,
.category-content-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 12px 36px rgba(40,60,90,.07);
}
.category-stat span,
.category-related-card span {
  color: #64758c;
}
.category-stat strong,
.category-learning-card h2,
.category-related-card strong,
.category-content-card h2 {
  color: var(--light-text);
}
.category-learning-card p:not(.eyebrow),
.category-content-card p,
.category-related-card p {
  color: var(--light-muted);
}

/* About, FAQ and contact content */
.content-feature,
.content-info-card,
.faq-item,
.contact-info-panel {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 12px 36px rgba(40,60,90,.07);
}
.content-feature h2,
.content-info-card h3,
.faq-item h2,
.contact-info-panel h2 {
  color: var(--light-text);
}
.content-feature p:not(.eyebrow),
.content-info-card p,
.faq-item p,
.contact-info-panel p:not(.eyebrow) {
  color: var(--light-muted);
}
.contact-info-divider {
  border-top-color: rgba(46,72,108,.10);
}

/* Authentication and password pages */
.form-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.form-card label {
  color: #25364d;
}
.form-card input {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}
.form-card input::placeholder {
  color: #71819a;
}
#login-message,
#register-message,
#reset-password-message {
  color: #b4234b;
}

/* Notifications */
.notifications-header p:not(.eyebrow) {
  color: var(--light-muted);
}
.notification-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 10px 30px rgba(40,60,90,.06);
}
.notification-card.is-unread {
  background: #f3f9fc;
  border-color: rgba(8,127,168,.24);
}
.notification-card-top strong {
  color: var(--light-text);
}
.notification-card-top time,
.notification-card p {
  color: var(--light-muted);
}

/* Generic public page sections */
.page-section {
  color: var(--light-text);
}
.page-section > p {
  color: var(--light-muted);
}
.page-section > p a {
  color: #087fa8;
}
.page-intro-copy .hero-text,
.content-page-hero .hero-text {
  color: var(--light-muted);
}

/* Maintenance screen */
.maintenance-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 20px 60px rgba(40,60,90,.12);
}
.maintenance-card h1 {
  color: var(--light-text);
}
.maintenance-card p {
  color: var(--light-muted);
}

/* Legal content */
.legal-hero {
  border-bottom-color: rgba(46,72,108,.10);
}
.legal-hero p,
.legal-content p {
  color: var(--light-muted);
}
.legal-content a {
  color: #087fa8;
}

/* Override remaining dark hover surfaces from mobile.css */
@media (hover: hover) {
  .quiz-card[data-category-key]:hover {
    box-shadow: 0 16px 42px rgba(40,60,90,.10), 0 0 0 1px rgba(var(--category-rgb), .08);
  }
}

/* Learn page: remaining dark text/surfaces */
.learn-subject-card h3 {
  color: var(--light-text);
}
.learn-subject-card p {
  color: var(--light-muted);
}

.learn-cta h2 {
  color: var(--light-text);
}
.learn-cta p:not(.eyebrow) {
  color: var(--light-muted);
}
.learn-cta .eyebrow {
  color: #8a6500;
}

/* ===== Consolidated final light-theme public UI pass ===== */

/* Forum composer and statistics */
.forum-stats-strip > div {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 10px 28px rgba(40,60,90,.06);
}
.forum-stats-strip strong { color: var(--light-text); }
.forum-stats-strip span { color: var(--light-muted); }
.forum-bbcode-toolbar {
  background: #f3f6fa;
  border-color: var(--light-border);
}
.forum-bbcode-button {
  color: #25364d;
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 1px 2px rgba(40,60,90,.04);
}
.forum-bbcode-button:hover,
.forum-bbcode-button:focus-visible {
  color: #087fa8;
  background: #eef8fc;
  border-color: rgba(8,127,168,.35);
}
.forum-bbcode-form textarea,
.forum-bbcode-editor,
.forum-post-editor textarea {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}

/* Contact page exact layout */
.contact-content-page .contact-content-grid > div:last-child {
  color: var(--light-text);
  background: var(--light-panel);
  background-image: none;
  border: 1px solid var(--light-border);
  border-radius: 16px;
  padding: 28px;
  box-shadow: var(--light-shadow);
}
.contact-content-page .contact-content-grid > div:last-child .contact-form {
  color: var(--light-text);
  background: transparent;
  padding: 0;
  border: 0;
  box-shadow: none;
}
.contact-content-page .contact-form label { color: #25364d; }
.contact-content-page .contact-form input,
.contact-content-page .contact-form textarea {
  color: var(--light-text);
  background: var(--light-panel);
  background-image: none;
  border: 1px solid var(--light-border-control);
  box-shadow: none;
}
.contact-content-page .contact-form input:focus,
.contact-content-page .contact-form textarea:focus {
  border-color: #27b8df;
  box-shadow: 0 0 0 3px rgba(39,184,223,.12);
}

/* Account/profile exact statistic surfaces */
#account-content .profile-hero,
#account-content .profile-stat,
#account-content .profile-panel,
#account-content .profile-quick-card,
#account-content .profile-account-card,
#account-content .profile-results-panel,
#account-content .profile-best-panel {
  color: var(--light-text);
  background: var(--light-panel);
  background-image: none;
  border-color: var(--light-border);
}
#account-content .profile-stat span,
#account-content .profile-section-label { color: var(--light-muted); }
#account-content .profile-stat strong,
#account-content .profile-stat strong[id] {
  color: var(--light-text);
  -webkit-text-fill-color: var(--light-text);
  opacity: 1;
  filter: none;
}
#account-content .profile-panel h2,
#account-content .profile-panel h3,
#account-content .profile-panel strong {
  color: var(--light-text);
  -webkit-text-fill-color: var(--light-text);
}

/* Remaining quiz surfaces that were still using dark defaults */
.quiz-learning-item,
.quiz-related-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 10px 30px rgba(40,60,90,.06);
}
.quiz-learning-item h3,
.quiz-related-card h3,
.quiz-related-card strong { color: var(--light-text); }
.quiz-learning-item p,
.quiz-related-card p,
.quiz-related-card small { color: var(--light-muted); }
.quiz-learning-item:hover,
.quiz-related-card:hover {
  background: #f7fbfd;
  border-color: rgba(8,127,168,.22);
}

/* Quiz forum discussion */
.quiz-forum-discussion {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 10px 30px rgba(40,60,90,.06);
}
/* Full leaderboard page */
.leaderboard-page-row,
.leaderboard-page-row-top {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: rgba(46,72,108,.14);
}
.leaderboard-page-row-top { background: #f1f5f9; }
.leaderboard-page-row:hover { background: #f5f9fc; }
.leaderboard-page-row .leaderboard-cell { color: #344862; }

/* Header notification dropdown */
.notification-panel {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 18px 50px rgba(30,50,80,.16);
}
.notification-panel h3,
.notification-panel strong { color: var(--light-text); }
.notification-panel p,
.notification-panel small,
.notification-panel time { color: var(--light-muted); }
.notification-item { border-color: rgba(46,72,108,.10); }
.notification-item:hover { background: #f4f8fb; }

/* Report details */
.report-reporter > div {
  color: var(--light-text);
  background: #f7f9fc;
  border-color: var(--light-border-soft);
}
.report-reporter strong { color: var(--light-text); }
.report-reporter span,
.report-reporter small { color: var(--light-muted); }

/* Cookie consent */
.cookie-consent {
  color: var(--light-text);
  background: rgba(255,255,255,.98);
  border-color: var(--light-border);
  box-shadow: 0 22px 70px rgba(30,50,80,.18);
}
.cookie-consent h2 { color: var(--light-text); }
.cookie-consent p,
.cookie-consent small { color: var(--light-muted); }
.cookie-consent a { color: #087fa8; }

/* Loading skeletons */
.skeleton-block,
.skeleton-line,
.skeleton-pill,
.skeleton-button { background: #e8eef5; }
.skeleton-block::after,
.skeleton-line::after,
.skeleton-pill::after,
.skeleton-button::after {
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.65), transparent);
}

/* Account email/security surfaces */
#email-change-panel {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}
#email-change-panel h3,
#email-change-panel strong { color: var(--light-text); }
#email-change-panel p,
#email-change-panel small { color: var(--light-muted); }
.profile-security-card input {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border-control);
}

/* Status/utility pages */
.php-status-card {
  color: var(--light-text);
  background: var(--light-panel);
  border: 1px solid var(--light-border);
  box-shadow: 0 14px 38px rgba(40,60,90,.08);
}

/* Mobile navigation */
.mobile-nav-menu > summary {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
}
.mobile-nav-menu summary::after { color: var(--light-muted); }
.mobile-nav-panel {
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: 0 18px 40px rgba(30,50,80,.16);
}

/* Consistent light-theme focus states */
button:focus-visible,
select:focus-visible,
input:focus-visible,
textarea:focus-visible,
a:focus-visible,
summary:focus-visible {
  outline: 3px solid rgba(8,127,168,.24);
  outline-offset: 2px;
}

/* Quiz explanations and result text */
.explanation,
.question-explanation,
.answer-explanation,
.quiz-explanation {
  color: #344862;
  background: #f3f8fb;
  border-color: rgba(8,127,168,.16);
}
.explanation strong,
.question-explanation strong,
.answer-explanation strong,
.quiz-explanation strong { color: var(--light-text); }
.quiz-stage .question-number,
.quiz-stage .quiz-progress-text { color: var(--light-muted); }

/* Light-theme card hover treatment */
@media (hover: hover) {
  .quiz-feature:hover,
  .quiz-card:hover,
  .profile-panel:hover,
  .friend-card:hover,
  .achievement-card:hover {
    box-shadow: 0 16px 42px rgba(40,60,90,.11);
  }
}

/* Intentional status colours */
.notice.success,
.contact-success,
.comment-feedback { color: #087f58; }
.notice.error,
.contact-error { color: #a1264e; }


/* Quiz page light-theme contrast and readability */
.quiz-about-card h2 {
  color: var(--light-text);
}
.quiz-about-card > div > p:not(.eyebrow) {
  color: #465a74;
}
.quiz-about-details {
  background: #f7f9fc;
  border-color: rgba(46,72,108,.16);
}
.quiz-about-details > div {
  border-bottom-color: rgba(46,72,108,.12);
}
.quiz-about-details span {
  color: var(--color-text-subtle);
}
.quiz-about-details strong,
.quiz-about-details a {
  color: #25364d;
}
.quiz-about-details a:hover {
  color: #087fa8;
}
.quiz-learning-intro {
  color: var(--light-text);
  background: #ffffff;
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.quiz-learning-intro h2,
.quiz-learning-intro-links strong {
  color: var(--light-text);
}
.quiz-learning-intro p:not(.eyebrow) {
  color: #465a74;
}
.quiz-learning-guide-link {
  background: #f7f9fc;
  border-color: rgba(46,72,108,.14);
}
.quiz-learning-guide-link span {
  color: #087fa8;
}
.quiz-forum-discussion h2 {
  color: var(--light-text);
}
.quiz-forum-discussion p {
  color: #465a74;
}
.quiz-related-section .section-heading p,
.quiz-related-card > span:last-child {
  color: #465a74;
}
@media (max-width: 900px) {
  .quiz-play-column {
    position: static;
  }
}


/* Quiz page: final light-theme contrast fixes */
.quiz-related-section .text-link {
  color: #087fa8;
  background: #eef8fc;
  border-color: rgba(8,127,168,.20);
}
.quiz-related-section .text-link:hover {
  color: #075d7c;
  background: #e3f5fb;
  border-color: rgba(8,127,168,.32);
}
.quiz-seo-content details {
  background: #ffffff;
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.quiz-seo-content summary {
  color: var(--light-text);
}
.quiz-seo-content summary::marker {
  color: #087fa8;
}
.quiz-seo-content details[open] summary {
  border-bottom-color: var(--light-border-soft);
}
.quiz-seo-content ol {
  color: #465a74;
}


/* Quiz questions list: readable light-theme text */
.quiz-seo-content li {
  color: #465a74;
}
.quiz-seo-content li::marker {
  color: #087fa8;
  font-weight: 700;
}
.quiz-seo-content li + li {
  border-top-color: rgba(46,72,108,.10);
}


/* Quiz sharing - light theme */
.quiz-share-card{background:#fff;border-color:var(--light-border);box-shadow:var(--light-shadow)}
.quiz-share-copy h2{color:var(--light-text)}
.quiz-share-copy p:not(.eyebrow),
.quiz-share-feedback{color:#465a74}


/* Completed quiz pages: keep the result card readable in light mode. */
.quiz-shell.quiz-complete .quiz-context-card,
.quiz-shell.quiz-complete .results-card {
  color: var(--light-text);
  border-color: var(--light-border);
  background: linear-gradient(145deg, #ffffff, #f3f7fd);
  box-shadow: var(--light-shadow);
}
.quiz-shell.quiz-complete .quiz-context-card h1,
.quiz-shell.quiz-complete .quiz-context-card p,
.quiz-shell.quiz-complete .results-card h1,
.quiz-shell.quiz-complete .results-card .result-copy {
  color: var(--light-text);
}
.quiz-shell.quiz-complete .quiz-context-card p,
.quiz-shell.quiz-complete .results-card .result-copy {
  color: var(--light-muted);
}
.quiz-shell.quiz-complete .results-card .result-score {
  color: #087fa8;
}
.challenge-result {
  width: 100%;
  box-sizing: border-box;
  text-align: left;
  color: var(--light-text);
  border-color: var(--light-border);
  background: #f5f9fd;
}


/* Quiz learning answers: full light-theme treatment. */
.quiz-learning-card {
  color: var(--light-text);
  border-color: var(--light-border);
  background: linear-gradient(145deg, #ffffff, #f4f8fc);
  box-shadow: var(--light-shadow);
}
.quiz-learning-card .section-heading h2 {
  color: var(--light-text);
}
.quiz-learning-card .section-heading > div > p:last-child {
  color: #465a74;
}
.quiz-learning-item {
  color: var(--light-text);
  border-color: rgba(46,72,108,.14);
  background: #ffffff;
  box-shadow: 0 5px 18px rgba(40,60,90,.05);
}
.quiz-learning-item h3 {
  color: var(--light-text);
}
.quiz-learning-number {
  color: #087fa8;
}
.quiz-learning-answer {
  color: #344862;
}
.quiz-learning-explanation {
  color: var(--color-text-subtle);
}
.quiz-learning-explanation::before {
  color: #a87400;
}


/* Library category navigation — light theme. */
.library-category-links a {
  border-color: rgba(46,72,108,.14);
  color: #344862;
  background: #fff;
  box-shadow: 0 4px 12px rgba(40,60,90,.04);
}

.library-category-links a span {
  color: #087fa8;
}

.library-category-links a:hover {
  border-color: rgba(8,127,168,.24);
  color: #182438;
  background: #f1f8fc;
}


/* Forum light-theme refinements */
.forum-hero-card,
.forum-category-card,
.forum-thread-row,
.forum-post,
.forum-compose,
.forum-login-prompt,
.forum-guidance,
.forum-stats-strip>div,
.forum-search-result {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}

.forum-search-result:hover,
.forum-category-card:hover,
.forum-thread-row:hover {
  border-color: rgba(0,127,168,.42);
  background: #fbfdff;
}

.forum-search-result h3,
.forum-search-result p,
.forum-thread-main h3,
.forum-post-body,
.forum-category-main h3,
.forum-guidance h2,
.forum-stats-strip strong {
  color: var(--light-text);
}

.forum-search-result p,
.forum-search-result-meta,
.forum-thread-main p,
.forum-thread-meta,
.forum-post-meta,
.forum-category-main p,
.forum-category-meta,
.forum-guidance-grid span,
.forum-stats-strip span {
  color: var(--light-muted);
}

.forum-search-result-icon,
.forum-category-icon,
.forum-guidance-grid strong {
  color: var(--public-accent);
}

.forum-search-form input,
.forum-form input,
.forum-form textarea,
.forum-edit-textarea,
.forum-link-form input,
.forum-report-details textarea {
  background: var(--light-panel);
  color: var(--light-text);
  border-color: var(--light-border-control);
}


/* Premium page — light theme */
.premium-hero {
  color: var(--light-text);
  background: linear-gradient(145deg, #ffffff, #f3f8fc);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.premium-hero h1 {
  color: var(--light-text);
}
.premium-lead {
  color: #465a74;
}
.premium-hero-mark {
  color: #087fa8;
  background: #eef8fc;
  border-color: rgba(8,127,168,.18);
}
.premium-free-badge {
  color: #53677f;
  background: #f3f7fb;
  border-color: var(--light-border);
}
.premium-benefits,
.premium-status-panel {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.premium-section-heading h2,
.premium-status-panel h2 {
  color: var(--light-text);
}
.premium-benefit {
  background: #ffffff;
  border-color: rgba(46,72,108,.12);
  box-shadow: 0 5px 18px rgba(40,60,90,.05);
}
.premium-benefit h3 {
  color: var(--light-text);
}
.premium-benefit p,
.premium-status-panel p {
  color: #465a74;
}
.premium-benefit > span {
  color: #087fa8;
  background: #eef8fc;
}
.premium-status-panel dl div {
  border-bottom-color: rgba(46,72,108,.10);
}
.premium-status-panel dt {
  color: #53677f;
}
.premium-status-panel dd {
  color: var(--light-text);
}

@media (max-width: 900px) {
  .premium-benefit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .premium-benefit-grid {
    grid-template-columns: 1fr;
  }
}

.forum-post-signature{border-top-color:rgba(46,72,108,.14);color:var(--light-muted)}
.forum-post-signature::before{background:linear-gradient(180deg,#a87400,rgba(168,116,0,0))}
.forum-post-signature-label{color:#a87400}
.forum-premium-badge{box-shadow:0 3px 10px rgba(180,125,15,.2),inset 0 1px 0 rgba(255,255,255,.35)}
.forum-premium-badge:hover{box-shadow:0 5px 13px rgba(180,125,15,.26),inset 0 1px 0 rgba(255,255,255,.4)}


.advanced-stat-grid,
.advanced-highlight,
.advanced-category-list {
  border-color: var(--light-border);
  background: var(--light-panel);
}

.advanced-stat-card {
  border-color: var(--light-border);
}

.advanced-stat-card strong,
.advanced-highlight strong,
.advanced-category-row-heading strong {
  color: var(--light-text);
}

.advanced-stat-card span,
.advanced-stat-card small,
.advanced-highlight span,
.advanced-category-row-heading span,
.advanced-group-heading small,
.advanced-empty {
  color: #65758d;
}

.advanced-category-track {
  background: #e8edf4;
}

.advanced-category-track span {
  background: linear-gradient(90deg,#138db6,#c48b1c);
}


/* Global light-theme contrast pass. */
.hero-text,
.section-heading p,
.quiz-feature p,
.quiz-card p,
.quiz-card .quiz-card-footer,
.quiz-meta-row,
.result-copy,
.profile-help,
.account-copy,
.account-fine-print,
.home-quiz-card p,
.home-benefits-list p,
.home-latest-content p,
.form-card label,
.account-form label,
.filter-label,
.profile-email,
.profile-member-since,
.profile-section-label,
.profile-performance-copy p,
.profile-security-card p,
.profile-history-main p,
.profile-best-copy small,
.profile-result-main small {
  color: #40546d;
}

input::placeholder,
textarea::placeholder {
  color: #5f7188;
  opacity: 1;
}

.site-header a,
.site-header button {
  color: #29415d;
}

.site-header a:hover,
.site-header button:hover {
  color: #075d7c;
}

.quiz-card .quiz-card-footer span:last-child,
.home-recent-arrow,
.profile-section-label,
.profile-details dt,
.account-tab,
.account-fine-print {
  color: #4a6079;
}

.category-pill,
.engagement-badge {
  color: #185d78;
}

.button-secondary {
  color: #29415d;
  border-color: rgba(46,72,108,.24);
}

.filter-label select,
input,
textarea,
select {
  border-color: rgba(46,72,108,.24);
}


/* Authentication pages — light theme */
.auth-form-card {
  background: #ffffff;
  border-color: rgba(46,72,108,.18);
  box-shadow: 0 18px 48px rgba(40,60,90,.10);
}
.auth-form-card label {
  color: #2f4560;
}
.auth-form-card input {
  color: #182438;
  background: #ffffff;
  border-color: rgba(46,72,108,.25);
}
.auth-form-card input:focus {
  border-color: rgba(8,127,168,.55);
  box-shadow: 0 0 0 3px rgba(8,127,168,.10);
}
.auth-form-card + p {
  color: #40546d;
}
.auth-form-card + p a {
  color: #087fa8;
}


/* Premium quizzes page — light theme */
.premium-quizzes-hero{border-color:rgba(46,72,108,.14);background:linear-gradient(145deg,#ffffff,#f5f9fd);box-shadow:0 22px 55px rgba(40,60,90,.10)}
.premium-quizzes-hero h1{color:var(--light-text)}
.premium-quizzes-hero p:not(.eyebrow){color:var(--light-muted)}
.premium-quizzes-mark{border-color:rgba(8,127,168,.18);color:#087fa8;background:rgba(8,127,168,.06)}
.premium-quizzes-list-section{border-color:var(--light-border);background:var(--light-panel);box-shadow:var(--light-shadow)}
.premium-quizzes-heading h2{color:var(--light-text)}
.premium-quizzes-heading p:not(.eyebrow){color:var(--light-muted)}
.premium-quizzes-count{border-color:rgba(8,127,168,.18);color:#087fa8;background:rgba(8,127,168,.06)}
.premium-quiz-card{border-color:var(--light-border-soft);background:#f8fafc}
.premium-quiz-card:hover{border-color:rgba(8,127,168,.25);background:#f2f9fc}
.premium-quiz-card h3{color:var(--light-text)}
.premium-quiz-card p{color:var(--light-muted)}
.premium-quiz-card-footer{border-top-color:var(--light-border-soft);color:var(--light-muted)}
.premium-quiz-card-footer strong{color:#087fa8}
.premium-quizzes-empty{border-color:var(--light-border)}
.premium-quizzes-empty h3{color:var(--light-text)}
.premium-quizzes-empty p{color:var(--light-muted)}


/* Quiz Premium header and learning panel — light theme */
.quiz-premium-badge{border-color:rgba(106,69,180,.22);color:#6540a8;background:rgba(106,69,180,.07)}
.quiz-learning-intro{border-color:var(--light-border);background:#ffffff;box-shadow:var(--light-shadow);color:var(--light-text)}
.quiz-learning-intro h2{color:var(--light-text)}
.quiz-learning-intro p:not(.eyebrow){color:#465a74}
.quiz-learning-intro p strong{color:#25364d}
.quiz-learning-guide-link{border-color:rgba(46,72,108,.14);background:#f7f9fc}
.quiz-learning-guide-link:hover{border-color:rgba(8,127,168,.24);background:#f1f8fb}
.quiz-learning-guide-link span{color:#087fa8}
.quiz-learning-guide-link strong{color:#25364d}


/* Quiz Premium badges and related-card polish */
.quiz-premium-badge {
  color: #6542b2;
  background: linear-gradient(135deg, #f3edff, #eee8ff);
  border-color: rgba(101, 66, 178, .24);
}
.quiz-related-card {
  color: var(--light-text);
  background: #ffffff;
  border-color: var(--light-border);
  box-shadow: 0 10px 28px rgba(40,60,90,.07);
}
.quiz-related-card:hover {
  background: #f5fbfd;
  border-color: rgba(8,127,168,.25);
}
.quiz-related-card h3 {
  color: var(--light-text);
}
.quiz-related-card > span:last-child {
  color: #087fa8;
}
.quiz-title-badges .category-pill {
  color: #185d78;
}


/* Quiz information cards — stronger hierarchy in light theme. */
.quiz-info-column .quiz-about-card {
  background: linear-gradient(145deg, #ffffff, #f8fbfe);
  border-color: rgba(46,72,108,.16);
  box-shadow: 0 12px 32px rgba(40,60,90,.08);
}
.quiz-info-column .quiz-about-card .eyebrow,
.quiz-info-column .quiz-learning-intro .eyebrow {
  color: #8a6500;
}
.quiz-info-column .quiz-about-card h2 {
  color: #182438;
}
.quiz-info-column .quiz-about-card p:not(.eyebrow) {
  color: #465a74;
}
.quiz-info-column .quiz-about-details {
  background: #f4f7fb;
  border-color: rgba(46,72,108,.13);
}
.quiz-info-column .quiz-about-details > div {
  border-bottom-color: rgba(46,72,108,.10);
}
.quiz-info-column .quiz-about-details span {
  color: #60738b;
}
.quiz-info-column .quiz-about-details strong,
.quiz-info-column .quiz-about-details a {
  color: #263c57;
}
.quiz-info-column .quiz-learning-intro {
  background: linear-gradient(145deg, #ffffff, #f5fbfe);
  border-color: rgba(46,72,108,.16);
  box-shadow: 0 14px 34px rgba(40,60,90,.08);
}
.quiz-info-column .quiz-learning-intro h2 {
  color: #182438;
}
.quiz-info-column .quiz-learning-intro p:not(.eyebrow) {
  color: #465a74;
}
.quiz-info-column .quiz-learning-guide-link {
  background: #f4f8fb;
  border-color: rgba(46,72,108,.13);
}
.quiz-info-column .quiz-learning-guide-link strong {
  color: #263c57;
}


/* Completed quiz results — clear success/error colours in light theme. */
.quiz-shell.quiz-complete .result-row.correct{background:#ecfbf2;border-color:#b9e8ca;border-left-color:#22a861}
.quiz-shell.quiz-complete .result-row.incorrect{background:#fff0f0;border-color:#f1c5c5;border-left-color:#d94848}
.quiz-shell.quiz-complete .result-row.correct .answer-letter{color:#11643d;background:#c9f1d8;border-color:#9eddb7}
.quiz-shell.quiz-complete .result-row.incorrect .answer-letter{color:#8d2525;background:#ffd7d7;border-color:#efb0b0}
.quiz-shell.quiz-complete .result-row.correct strong{color:#17633e}
.quiz-shell.quiz-complete .result-row.incorrect strong{color:#8d2525}


/* Keep quiz context content clean in the light theme. */
.quiz-info-column .quiz-context-card,
.quiz-info-column .quiz-context-card > div,
.quiz-info-column .quiz-context-card .quiz-context-description {
  background: transparent;
}


/* Final light-only informational page headings. */
.content-page,
.content-page-hero {
  color: var(--light-text);
}
.content-page-hero h1 {
  color: var(--light-text);
}
.content-page-hero .eyebrow,
.content-section-block .eyebrow {
  color: #087fa8;
}
.content-page-hero .hero-text {
  color: var(--light-muted);
}
.content-section-block .section-heading h2 {
  color: var(--light-text);
}


/* Consistent rounded surfaces for informational pages. */
.content-page .content-feature,
.content-page .content-info-card,
.content-page .faq-item,
.content-page .contact-info-panel {
  border-radius: 16px;
}
.content-page .content-info-card {
  border-radius: 14px;
}


/* Keep shared Learn/About links on the FactBurst accent, not browser/link purple. */
.learn-page .text-link,
.learn-page .section-heading .text-link {
  color: var(--color-primary);
}
.learn-page .text-link:hover,
.learn-page .section-heading .text-link:hover {
  color: var(--color-primary-hover);
}


/* Contact page: shared Learn-style layout and consistent rounded surfaces. */
.contact-page .contact-content-grid {
  display: grid;
}
.contact-page .learn-hub-hero {
  max-width: 1050px;
}
.contact-page .contact-content-grid {
  max-width: 1050px;
  margin: 0 auto;
  grid-template-columns: minmax(250px,.7fr) minmax(0,1.3fr);
}
.contact-page .contact-info-panel,
.contact-page .contact-form-card {
  color: var(--light-text);
  background: var(--light-panel);
  border: 1px solid var(--light-border);
  border-radius: 16px;
  box-shadow: var(--light-shadow);
}
.contact-page .contact-info-panel {
  padding: 25px;
}
.contact-page .contact-info-panel h2,
.contact-page .contact-form-heading h2 {
  color: var(--light-text);
}
.contact-page .contact-info-panel p:not(.eyebrow),
.contact-page .contact-form-heading p:not(.eyebrow) {
  color: var(--light-muted);
}
.contact-page .contact-info-panel a,
.contact-page .contact-legal-links a {
  color: var(--color-primary);
}
.contact-page .contact-info-divider {
  border-top-color: var(--light-border-soft);
}
.contact-page .contact-form-card {
  padding: clamp(24px,4vw,32px);
}
.contact-page .contact-form-heading {
  margin-bottom: 22px;
}
.contact-page .contact-form-heading h2 {
  margin: 3px 0 8px;
  font-size: clamp(25px,3vw,34px);
  letter-spacing: -.04em;
}
.contact-page .contact-form-heading p {
  margin: 0;
}
.contact-page .contact-form {
  max-width: none;
  margin: 0;
}
.contact-page .contact-form-fields {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
}
.contact-page .contact-subject-field {
  grid-column: 1 / -1;
}
.contact-page .contact-form label {
  display: grid;
  gap: 7px;
  color: var(--light-text);
  font-weight: 750;
}
.contact-page .contact-form input,
.contact-page .contact-form textarea {
  width: 100%;
  box-sizing: border-box;
  color: var(--light-text);
  background: #fff;
  border: 1px solid var(--light-border-control);
  border-radius: 11px;
}
.contact-page .contact-form textarea {
  min-height: 180px;
  resize: vertical;
}
.contact-page .contact-form > label {
  margin-top: 14px;
}
.contact-page .contact-form > .button {
  margin-top: 18px;
}
@media (max-width: 860px) {
  .contact-page .contact-content-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 620px) {
  .contact-page .contact-form-fields {
    grid-template-columns: 1fr;
  }
  .contact-page .contact-subject-field {
    grid-column: auto;
  }
}


/* Shared Learn-style surfaces must remain light even when legacy component CSS loads first. */
.learn-page .learn-hub-hero > div,
.learn-page .learn-hub-highlight,
.learn-page .learn-value-grid article,
.learn-page .learn-subject-card,
.learn-page .learn-cta,
.learn-page .learn-article-hero,
.learn-page .learn-article,
.learn-page .learn-topic-card,
.learn-page .learn-quiz-card {
  color: var(--light-text);
  background: var(--light-panel);
  border-color: var(--light-border);
  box-shadow: var(--light-shadow);
}
.learn-page .learn-hub-highlight {
  background: linear-gradient(145deg,#f8fcff,#eef7fb);
}
.learn-page .learn-hub-hero h1,
.learn-page .learn-hub-highlight strong,
.learn-page .learn-value-grid h2,
.learn-page .learn-subject-card h3,
.learn-page .learn-cta h2,
.learn-page .learn-article-hero h1 {
  color: var(--light-text);
}
.learn-page .learn-hub-hero > div:first-child > p:last-child,
.learn-page .learn-hub-highlight p,
.learn-page .learn-value-grid p,
.learn-page .learn-subject-card p,
.learn-page .learn-cta p:not(.eyebrow) {
  color: var(--light-muted);
}
.learn-page .learn-hub-highlight > span,
.learn-page .learn-value-grid article > span,
.learn-page .learn-card-link {
  color: var(--color-primary);
}
.learn-page .category-pill {
  color: #17627b;
  background: rgba(8,127,168,.07);
  border-color: rgba(8,127,168,.22);
}

/* Contact form itself is a surface; do not allow the legacy dark form background through. */
.contact-page .contact-form {
  max-width: none;
  margin: 0;
  padding: 0;
  color: var(--light-text);
  background: transparent;
  border: 0;
  box-shadow: none;
}
.contact-page .contact-form label {
  color: var(--light-text);
}
.contact-page .contact-form input,
.contact-page .contact-form textarea {
  color: var(--light-text);
  background: #fff;
  border-color: var(--light-border-control);
}
.contact-page .contact-form input::placeholder,
.contact-page .contact-form textarea::placeholder {
  color: var(--light-text-subtle);
}


/* Contact cards: balanced proportions and a clear visual gap. */
.contact-page .contact-content-grid {
  grid-template-columns: minmax(290px,.78fr) minmax(0,1.22fr);
  gap: 18px;
}
.contact-page .contact-info-panel,
.contact-page .contact-form-card {
  min-width: 0;
}


/* Shared component colour tokens. Keep component CSS colour-free so a future theme only needs this file changed. */
:root {
  --theme-border-strong: rgba(8,127,168,.34);
  --theme-warning-soft: rgba(168,116,0,.10);
  --theme-warning-border: rgba(168,116,0,.28);
  --theme-danger-soft: rgba(217,72,72,.08);
  --theme-danger-border: rgba(217,72,72,.30);
  --theme-success-soft: rgba(34,168,97,.10);
  --theme-success-border: rgba(34,168,97,.30);
  --theme-premium-soft: rgba(101,66,178,.08);
  --theme-premium-border: rgba(101,66,178,.28);
  --theme-shadow: 0 12px 36px rgba(40,60,90,.08);
  --theme-shadow-color: rgba(40,60,90,.14);
}
