/**
 * Site-wide night mode — dark surfaces so light text stays readable.
 */
html.dark-theme,
html.dark-theme body,
body.dark-theme {
    background-color: #0b1220 !important;
    color: #e2e8f0;
    --kl-ink: #f1f5f9;
    --kl-muted: #cbd5e1;
    --gks-text: #f1f5f9;
}

html.dark-theme body.kl-page,
body.dark-theme.kl-page {
    background:
        radial-gradient(circle at 12% 8%, rgba(124, 58, 237, .18) 0 10%, transparent 11%),
        radial-gradient(circle at 90% 4%, rgba(14, 165, 233, .12) 0 8%, transparent 9%),
        #0b1220 !important;
    color: #e2e8f0 !important;
}

html.dark-theme .logo-box a,
body.dark-theme .logo-box a {
    display: inline-flex;
    align-items: center;
    background: #0f172a;
    border: 1px solid #334155;
    border-radius: 12px;
    padding: 4px 8px;
}
html.dark-theme .brand-logo,
body.dark-theme .brand-logo {
    background: transparent;
    mix-blend-mode: screen;
    filter: saturate(1.05);
}

html.dark-theme .kl-activity,
html.dark-theme .kl-faq details,
html.dark-theme .kl-card,
html.dark-theme .kl-mini,
html.dark-theme .kl-hud,
html.dark-theme .kl-quiz,
html.dark-theme .kl-practice,
html.dark-theme .kl-practice-hero,
html.dark-theme .kl-wordbox,
html.dark-theme .kl-story,
html.dark-theme .kl-moral,
html.dark-theme .kl-stamp-board,
html.dark-theme .kl-stamp,
html.dark-theme .kl-note,
html.dark-theme .kl-prose,
html.dark-theme .kl-linkbar,
html.dark-theme .kl-bottom,
html.dark-theme .kl-flash,
html.dark-theme .kl-flash-body,
html.dark-theme .kl-review li,
html.dark-theme .kl-come-back,
html.dark-theme .kl-color-sheet,
html.dark-theme .kl-day,
html.dark-theme .kl-beat-best,
html.dark-theme .kl-opt,
html.dark-theme .kl-btn-ghost,
html.dark-theme .kl-subnav a,
html.dark-theme .kl-chip,
html.dark-theme .kl-reader,
html.dark-theme .kl-pic-card,
html.dark-theme .kl-barah-wrap,
html.dark-theme .kl-num100-wrap,
body.dark-theme .kl-activity,
body.dark-theme .kl-faq details,
body.dark-theme .kl-card,
body.dark-theme .kl-mini,
body.dark-theme .kl-hud,
body.dark-theme .kl-quiz,
body.dark-theme .kl-practice,
body.dark-theme .kl-practice-hero,
body.dark-theme .kl-wordbox,
body.dark-theme .kl-story,
body.dark-theme .kl-moral,
body.dark-theme .kl-stamp-board,
body.dark-theme .kl-stamp,
body.dark-theme .kl-note,
body.dark-theme .kl-prose,
body.dark-theme .kl-linkbar,
body.dark-theme .kl-bottom,
body.dark-theme .kl-flash,
body.dark-theme .kl-flash-body,
body.dark-theme .kl-review li,
body.dark-theme .kl-come-back,
body.dark-theme .kl-color-sheet,
body.dark-theme .kl-day,
body.dark-theme .kl-beat-best,
body.dark-theme .kl-opt,
body.dark-theme .kl-btn-ghost,
body.dark-theme .kl-subnav a,
body.dark-theme .kl-chip,
body.dark-theme .kl-reader,
body.dark-theme .kl-pic-card,
body.dark-theme .kl-barah-wrap,
body.dark-theme .kl-num100-wrap {
    background: #1e293b !important;
    color: #e2e8f0 !important;
    border-color: #334155 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .28);
}

html.dark-theme .kl-section h2,
html.dark-theme .kl-stamp-board h2,
html.dark-theme .kl-stamp-board p,
html.dark-theme .kl-faq summary,
html.dark-theme .kl-faq p,
html.dark-theme .kl-activity h3,
html.dark-theme .kl-activity p,
html.dark-theme .kl-card strong,
html.dark-theme .kl-card p,
html.dark-theme .kl-q,
html.dark-theme .kl-feedback,
html.dark-theme .kl-reveal,
html.dark-theme .kl-wave-label,
html.dark-theme .kl-crumb,
html.dark-theme .kl-mini strong,
html.dark-theme .kl-mini span,
html.dark-theme .kl-prose h2,
html.dark-theme .kl-prose p,
html.dark-theme .kl-note,
html.dark-theme .kl-stamp strong,
html.dark-theme .kl-stamp span,
body.dark-theme .kl-section h2,
body.dark-theme .kl-stamp-board h2,
body.dark-theme .kl-stamp-board p,
body.dark-theme .kl-faq summary,
body.dark-theme .kl-faq p,
body.dark-theme .kl-activity h3,
body.dark-theme .kl-activity p,
body.dark-theme .kl-card strong,
body.dark-theme .kl-card p,
body.dark-theme .kl-q,
body.dark-theme .kl-feedback,
body.dark-theme .kl-reveal,
body.dark-theme .kl-wave-label,
body.dark-theme .kl-crumb,
body.dark-theme .kl-mini strong,
body.dark-theme .kl-mini span,
body.dark-theme .kl-prose h2,
body.dark-theme .kl-prose p,
body.dark-theme .kl-note,
body.dark-theme .kl-stamp strong,
body.dark-theme .kl-stamp span {
    color: #f1f5f9 !important;
}

html.dark-theme .kl-card p,
html.dark-theme .kl-mini span,
html.dark-theme .kl-meta,
html.dark-theme .kl-stamp-note,
html.dark-theme .kl-prose a,
html.dark-theme .kl-crumb a,
html.dark-theme .kl-hud-dash,
body.dark-theme .kl-card p,
body.dark-theme .kl-mini span,
body.dark-theme .kl-meta,
body.dark-theme .kl-stamp-note,
body.dark-theme .kl-prose a,
body.dark-theme .kl-crumb a,
body.dark-theme .kl-hud-dash {
    color: #99f6e4 !important;
}

html.dark-theme .kl-opt:hover,
html.dark-theme .kl-opt:focus,
body.dark-theme .kl-opt:hover,
body.dark-theme .kl-opt:focus {
    background: #334155 !important;
    border-color: #2dd4bf !important;
}

html.dark-theme .kl-opt.is-good,
body.dark-theme .kl-opt.is-good {
    background: #14532d !important;
    border-color: #22c55e !important;
    color: #bbf7d0 !important;
}

html.dark-theme .kl-opt.is-almost,
body.dark-theme .kl-opt.is-almost {
    background: #7c2d12 !important;
    border-color: #fb923c !important;
    color: #ffedd5 !important;
}

html.dark-theme .kl-btn,
body.dark-theme .kl-btn {
    color: #1e1b4b !important;
}

html.dark-theme .kl-mission-hero,
html.dark-theme .kl-beat-hero,
html.dark-theme .kl-hero,
body.dark-theme .kl-mission-hero,
body.dark-theme .kl-beat-hero,
body.dark-theme .kl-hero {
    color: #fff !important;
}

html.dark-theme .kl-mission-hero h1,
html.dark-theme .kl-mission-hero p,
html.dark-theme .kl-hero h1,
html.dark-theme .kl-hero p,
body.dark-theme .kl-mission-hero h1,
body.dark-theme .kl-mission-hero p,
body.dark-theme .kl-hero h1,
body.dark-theme .kl-hero p {
    color: #fff !important;
}

html.dark-theme .gk-q,
html.dark-theme .gk-opt,
html.dark-theme .gk-faq details,
html.dark-theme .gk-card,
html.dark-theme .gks-sidebar-card,
html.dark-theme .gks-content-card,
html.dark-theme .premium-quiz-card,
html.dark-theme .widget,
html.dark-theme .sidenav .widget,
html.dark-theme .dq-why-card,
html.dark-theme .dq-rel-card,
html.dark-theme .gks-hub-faq,
html.dark-theme .gks-more,
html.dark-theme .search-card,
html.dark-theme .sr-tips,
body.dark-theme .gk-q,
body.dark-theme .gk-opt,
body.dark-theme .gk-faq details,
body.dark-theme .gk-card,
body.dark-theme .gks-sidebar-card,
body.dark-theme .gks-content-card,
body.dark-theme .premium-quiz-card,
body.dark-theme .widget,
body.dark-theme .sidenav .widget,
body.dark-theme .dq-why-card,
body.dark-theme .dq-rel-card,
body.dark-theme .gks-hub-faq,
body.dark-theme .gks-more,
body.dark-theme .search-card,
body.dark-theme .sr-tips {
    background: #1e293b !important;
    color: #e2e8f0 !important;
    border-color: #334155 !important;
}

html.dark-theme .gk-q-head,
html.dark-theme .gk-opt,
html.dark-theme .gk-faq summary,
html.dark-theme .gk-card strong,
html.dark-theme .gks-sec h2,
body.dark-theme .gk-q-head,
body.dark-theme .gk-opt,
body.dark-theme .gk-faq summary,
body.dark-theme .gk-card strong,
body.dark-theme .gks-sec h2 {
    color: #f8fafc !important;
}

html.dark-theme .mega-menu-content,
body.dark-theme .mega-menu-content {
    background: #0f172a !important;
    border-color: #334155 !important;
}

html.dark-theme .mega-column,
body.dark-theme .mega-column {
    background: #1e293b !important;
    border-color: #334155 !important;
}

html.dark-theme .mega-column a,
body.dark-theme .mega-column a {
    color: #e2e8f0 !important;
}

html.dark-theme .mega-column a:hover,
body.dark-theme .mega-column a:hover {
    background: #334155 !important;
    color: #5eead4 !important;
}

html.dark-theme .mega-column a .mega-hint,
body.dark-theme .mega-column a .mega-hint {
    color: #94a3b8 !important;
}

html.dark-theme .gks-premium-header,
body.dark-theme .gks-premium-header {
    background: #0f172a !important;
    border-bottom-color: #334155 !important;
}

html.dark-theme .nav-item-link,
body.dark-theme .nav-item-link {
    color: #e2e8f0 !important;
}

html.dark-theme .nav-item-link:hover,
html.dark-theme .nav-item-link[aria-expanded="true"],
body.dark-theme .nav-item-link:hover,
body.dark-theme .nav-item-link[aria-expanded="true"] {
    color: #5eead4 !important;
}

html.dark-theme .mobile-hamburger-btn,
body.dark-theme .mobile-hamburger-btn {
    background: #1e293b;
    border-color: #475569;
    color: #e2e8f0;
}

html.dark-theme .mobile-hamburger-btn .bar,
body.dark-theme .mobile-hamburger-btn .bar {
    background: #e2e8f0;
}

html.dark-theme .gks-prod-copy strong,
body.dark-theme .gks-prod-copy strong {
    color: #f1f5f9 !important;
}

html.dark-theme .kl-flash-q,
html.dark-theme .kl-flash summary,
html.dark-theme .kl-flash-opt,
html.dark-theme .kl-practice-hero h2,
html.dark-theme .kl-practice-hero p,
html.dark-theme .kl-practice h2,
html.dark-theme .kl-result .big,
html.dark-theme .kl-score-kicker,
html.dark-theme .kl-score-pct,
html.dark-theme .kl-review strong,
html.dark-theme .kl-review span,
body.dark-theme .kl-flash-q,
body.dark-theme .kl-flash summary,
body.dark-theme .kl-flash-opt,
body.dark-theme .kl-practice-hero h2,
body.dark-theme .kl-practice-hero p,
body.dark-theme .kl-practice h2,
body.dark-theme .kl-result .big,
body.dark-theme .kl-score-kicker,
body.dark-theme .kl-score-pct,
body.dark-theme .kl-review strong,
body.dark-theme .kl-review span {
    color: #f8fafc !important;
}

html.dark-theme .kl-flash-hint,
body.dark-theme .kl-flash-hint {
    color: #ddd6fe !important;
    background: #4c1d95 !important;
}

html.dark-theme .kl-flash-opt,
body.dark-theme .kl-flash-opt {
    background: #334155 !important;
    border-color: #475569 !important;
}

html.dark-theme .kl-flash-opt b,
body.dark-theme .kl-flash-opt b {
    background: #5b21b6 !important;
    color: #ede9fe !important;
}

html.dark-theme .kl-flash-opt.is-right,
body.dark-theme .kl-flash-opt.is-right {
    background: #14532d !important;
    border-color: #22c55e !important;
    color: #bbf7d0 !important;
}

html.dark-theme .kl-flash-ans,
body.dark-theme .kl-flash-ans {
    background: #14532d !important;
    color: #bbf7d0 !important;
}

html.dark-theme .kl-practice-hero,
body.dark-theme .kl-practice-hero {
    background: linear-gradient(135deg, #334155 0%, #1e293b 100%) !important;
}

html.dark-theme p,
html.dark-theme li,
html.dark-theme h1,
html.dark-theme h2,
html.dark-theme h3,
html.dark-theme h4,
html.dark-theme label,
html.dark-theme summary,
body.dark-theme p,
body.dark-theme li,
body.dark-theme h1,
body.dark-theme h2,
body.dark-theme h3,
body.dark-theme h4,
body.dark-theme label,
body.dark-theme summary {
    color: inherit;
}

html.dark-theme .kl-page h1:not(.kl-mission-hero h1):not(.kl-hero h1),
html.dark-theme .kl-page h2,
html.dark-theme .kl-page h3,
html.dark-theme .kl-page p,
html.dark-theme .kl-page li,
html.dark-theme .kl-page span.kl-flash-q,
body.dark-theme .kl-page h2,
body.dark-theme .kl-page h3,
body.dark-theme .kl-page p {
    color: #f1f5f9;
}

html.dark-theme .mobile-navigation-drawer,
body.dark-theme .mobile-navigation-drawer {
    background: #0f172a !important;
    color: #f1f5f9 !important;
    border-left: 1px solid #334155;
}

html.dark-theme .mobile-navigation-drawer .drawer-header,
html.dark-theme .mobile-navigation-drawer .drawer-footer-auth,
body.dark-theme .mobile-navigation-drawer .drawer-header,
body.dark-theme .mobile-navigation-drawer .drawer-footer-auth {
    border-color: #334155 !important;
}

html.dark-theme .mobile-navigation-drawer .menu-title,
body.dark-theme .mobile-navigation-drawer .menu-title {
    color: #5eead4 !important;
}

html.dark-theme .mobile-navigation-drawer .close-drawer-btn,
body.dark-theme .mobile-navigation-drawer .close-drawer-btn {
    color: #e2e8f0 !important;
}

html.dark-theme .mobile-navigation-drawer .gks-drawer-filter,
body.dark-theme .mobile-navigation-drawer .gks-drawer-filter {
    background: #1e293b !important;
    color: #f8fafc !important;
    border-color: #475569 !important;
}

html.dark-theme .mobile-navigation-drawer .gks-drawer-jumps a,
body.dark-theme .mobile-navigation-drawer .gks-drawer-jumps a {
    background: #1e293b !important;
    color: #5eead4 !important;
    border-color: #334155 !important;
}

html.dark-theme .mobile-navigation-drawer .drawer-group-label,
body.dark-theme .mobile-navigation-drawer .drawer-group-label {
    color: #94a3b8 !important;
}

html.dark-theme .mobile-navigation-drawer .collapse-toggle,
html.dark-theme .mobile-navigation-drawer .collapse-toggle.nav-police-link,
html.dark-theme .mobile-navigation-drawer .nav-police-link,
html.dark-theme .mobile-navigation-drawer .mobile-nav-links a,
html.dark-theme .mobile-navigation-drawer .collapse-menu a,
body.dark-theme .mobile-navigation-drawer .collapse-toggle,
body.dark-theme .mobile-navigation-drawer .collapse-toggle.nav-police-link,
body.dark-theme .mobile-navigation-drawer .nav-police-link,
body.dark-theme .mobile-navigation-drawer .mobile-nav-links a,
body.dark-theme .mobile-navigation-drawer .collapse-menu a {
    color: #f8fafc !important;
    background: transparent !important;
}

html.dark-theme .mobile-navigation-drawer .mobile-nav-links > li > a,
html.dark-theme .mobile-navigation-drawer .collapse-toggle,
body.dark-theme .mobile-navigation-drawer .mobile-nav-links > li > a,
body.dark-theme .mobile-navigation-drawer .collapse-toggle {
    background: #1e293b !important;
    border-radius: 10px;
    padding: 11px 12px;
}

html.dark-theme .mobile-navigation-drawer .mobile-nav-links a:hover,
html.dark-theme .mobile-navigation-drawer .collapse-toggle:hover,
html.dark-theme .mobile-navigation-drawer .nav-police-link:hover,
body.dark-theme .mobile-navigation-drawer .mobile-nav-links a:hover,
body.dark-theme .mobile-navigation-drawer .collapse-toggle:hover,
body.dark-theme .mobile-navigation-drawer .nav-police-link:hover {
    background: #334155 !important;
    color: #5eead4 !important;
}

html.dark-theme .mobile-navigation-drawer .nav-police-badge,
body.dark-theme .mobile-navigation-drawer .nav-police-badge {
    background: #fff;
    border-color: #e8c547;
}
