/* KeyTute palette: owner-selected white, blue, black and neutral gray. */
@media screen {
 /* Neutral content backgrounds are white in the light theme; dark surfaces
    continue to follow the user's dark-mode preference. */
 html[data-theme="light"] body #main-content :is(.learn-page,.practice-page,.stats-page,.typing-dashboard,.test-page,.exam-page,.journey-page,.res-page,.pricing-page,.legal-page,.contact-page,.session-launcher-rules,.session-launcher-rule,.practice-custom-workspace,.daily-current,.daily-locked,.test-highlights,.exam-filters,.exam-notice,.res-reference-panel,.res-article-contents,.res-pack-callout,.pricing-free-first,.pricing-trust,.pricing-final-cta,.legal-choices,.legal-preferences,.legal-related,.auth-layout){background:#fff!important}
 html[data-theme="light"] body #main-content :is(.practice-attempts-table,.stats-history,.test-history-table,.pricing-comparison) :is(th,tr){background-color:#fff}
 html[data-theme] body{--content-card-surface:var(--ui-surface);--content-group-surface:var(--ui-raised);--content-container-shadow:var(--ui-shadow);--color-primary:#005da6;--color-primary-dark:#004578;--color-primary-light:var(--ui-accent);--color-primary-hover:#004578;--color-heading:var(--ui-text);--color-heading-dark:var(--ui-text);--color-text:var(--ui-muted);--color-text-soft:var(--ui-muted);--color-muted:var(--ui-muted);--color-background:var(--ui-page);--color-background-soft:var(--ui-raised);--color-background-card:var(--ui-surface);--color-background-muted:var(--ui-raised);--color-border:var(--ui-line);--color-border-soft:var(--ui-line);--color-border-medium:var(--ui-line);--color-white:var(--ui-surface);--footer-background:var(--ui-raised);--footer-text:var(--ui-muted);--blue:#005da6;--navy:var(--ui-text);--muted:var(--ui-muted);--line:var(--ui-line)}
 html[data-theme] body.site-wallpaper{background:var(--ui-page);color:var(--ui-text)}
 html[data-theme] body :is(.homepage-shell--content,.homepage-main,.homepage-main>section){background:#fff!important;border:0!important;box-shadow:none!important}
 html[data-theme] body .homepage-main>section>h2,html[data-theme] body .homepage-main .section-heading h2{color:#000}
 html[data-theme] body .homepage-main>section>p,html[data-theme] body .homepage-main .section-heading p{color:#616161!important}
 html[data-theme] body .homepage-main :is(h2,h3){color:var(--ui-text)}
 html[data-theme] body .homepage-main p{color:var(--ui-muted)!important}
 html[data-theme] body :is(.feature-item,.path-card,.practice-card,.test-exam-card){background:var(--ui-surface);border-color:var(--ui-line)}
 html[data-theme] body :is(.feature-number,.path-step,.practice-time,.test-exam-label,.section-link){color:var(--ui-accent)}
 html[data-theme] body .session-launcher-rules p{color:var(--ui-muted)}
 html[data-theme] body .stats-distribution small,html[data-theme] body .pricing-final-cta p{color:var(--ui-muted)}
 html[data-theme] body :is(.daily-locked .daily-name,.stats-insight-number,.stats-history th,.stats-duration-list i,.legal-hub-group a span){color:var(--ui-muted)}
 html[data-theme] body .pricing-final-cta .pricing-eyebrow{color:var(--ui-accent)}
 html[data-theme] body .test-browse-passages>summary{color:var(--ui-text)}
 html[data-theme] body .test-history .test-history-empty,
 html[data-theme] body .stats-chart-panel .stats-trends,
 html[data-theme] body .stats-chart-panel .stats-trends>div,
 html[data-theme] body .res-article{border:0!important}
 html[data-theme] body :is(.res-article-aside,.res-pack-callout,.res-article-action,.legal-article,.legal-related,.legal-hub-group,.pricing-final-cta,.pricing-trust){border:0!important}
 html[data-theme] body :is(.contact-form-card,.exam-standard-strip,.exam-custom-callout),
 html[data-theme] body .homepage-main :is(.feature-item,.path-card){border:0!important}
 html[data-theme] body .practice-submenu{border:0}
 html[data-theme] body .practice-page .practice-submenu{gap:10px;padding:0;background:transparent}
 html[data-theme] body .practice-page .practice-submenu-link{box-sizing:border-box;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-surface);color:var(--ui-text);text-decoration:none}
 html[data-theme] body .practice-page .practice-submenu-link::before,html[data-theme] body .practice-page .practice-submenu-link::after{content:none}
 html[data-theme] body .practice-page .practice-submenu-link:hover{background:var(--ui-raised);border-color:var(--ui-accent);color:var(--ui-accent)}
 html[data-theme] body .practice-page .practice-submenu-link.active{background:#005da6;border-color:#005da6;color:#fff}
 html[data-theme] body .practice-page .practice-submenu-link.active:hover{background:#004578;border-color:#004578;color:#fff}
 html[data-theme] body .res-category-nav a.selected{background:#005da6;border-color:#005da6;color:#fff}
 html[data-theme] body :is(.practice-card,.path-card,.feature-item):hover{background:var(--ui-raised);border-color:var(--ui-accent)}
 html[data-theme] body :is(.practice-stats,.practice-attempts-table,.test-history,.exam-list,.pricing-comparison,.res-faqs,.pricing-faqs){background-color:var(--ui-raised)!important;border-color:var(--ui-line)!important}
 html[data-theme] body .learn-page .learn-curriculum{background:#fff!important;border:0!important;box-shadow:none!important;color:#273746}
 html[data-theme] body .learn-page .learn-curriculum :is(.curriculum-item a,.curriculum-title){color:#273746}
 html[data-theme] body .learn-page .learn-curriculum :is(.is-locked .curriculum-title,.curriculum-item small){color:#616161}
 html[data-theme] body .learn-page #curriculum-heading{background:transparent;border:0;box-shadow:none;color:var(--ui-text)}
 html[data-theme] body .learn-page .practice-intro{border:0!important}
 html[data-theme] body .learn-page .learn-level-selector{background:none!important;border:1px solid #a3a3a3;box-shadow:none}
 html[data-theme] body .learn-page .learn-level-selector label{color:var(--ui-text)!important;font-size:18px!important;line-height:1.4!important;letter-spacing:normal!important;white-space:nowrap;overflow-wrap:normal}
 html[data-theme] body .learn-page .learn-level-selector select{background:#fff;color:#273746;border-color:#8baec8}
 html[data-theme] body .learn-page .learn-selector-bubbles{display:none}
 html[data-theme] body .learn-page .learn-level-selector::before,html[data-theme] body .learn-page .learn-level-selector::after{content:none!important}
 /* White content surfaces stay white in light mode and follow dark mode. */
 html[data-theme="dark"] body :is(.homepage-shell--content,.homepage-main,.homepage-main>section,.learn-page .learn-curriculum){background:var(--ui-surface)!important;color:var(--ui-text)}
 html[data-theme="dark"] body .homepage-main>section>h2,html[data-theme="dark"] body .homepage-main .section-heading h2,html[data-theme="dark"] body .learn-page .learn-curriculum :is(.curriculum-item a,.curriculum-title){color:var(--ui-text)}
 html[data-theme="dark"] body .homepage-main>section>p,html[data-theme="dark"] body .homepage-main .section-heading p,html[data-theme="dark"] body .learn-page .learn-curriculum :is(.is-locked .curriculum-title,.curriculum-item small){color:var(--ui-muted)!important}
 html[data-theme="dark"] body .learn-page .learn-level-selector select{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-line)}
 html[data-theme] body .site-header{background:linear-gradient(115deg,#3377a6 0%,#16456f 48%,#081d3b 100%);border-bottom:1px solid #779fbe;box-shadow:none}
 html[data-theme] body :is(.brand,.nav-link,.login-link,.mobile-menu-button,.auth-logo){color:var(--ui-text)}
 html[data-theme] body :is(.nav-link.active,.nav-link:hover,.login-link:hover,.mobile-nav-link.active){color:var(--ui-accent)}
 html[data-theme] body :is(.nav-link,.login-link)::after{background:var(--ui-accent)}
 html[data-theme] body .signup-link{background:#005da6;color:#fff;border:1px solid #005da6}
 html[data-theme] body .signup-link:hover{background:#004578;border-color:#004578}
 html[data-theme] body :is(.mobile-menu,.account-menu-panel,.nav-games .games-nav-panel){background:var(--ui-surface);border-color:var(--ui-line);color:var(--ui-text)}
 html[data-theme] body :is(.mobile-nav-link,.account-menu-panel a,.account-menu-panel button,.games-nav-panel a){color:var(--ui-text)}
 html[data-theme] body .games-nav-toggle{color:var(--ui-text);border-color:var(--ui-line);background:transparent}
 html[data-theme] body :is(.hero-section,.practice-intro,.stats-hero,.test-hero,.exam-header,.journey-hero,.res-hero,.pricing-hero,.legal-header,.contact-hero){--intro-bg:var(--ui-raised);--intro-text:var(--ui-text);--intro-muted:var(--ui-muted);--intro-accent:var(--ui-accent);--intro-border:var(--ui-line);background:var(--ui-raised)!important;border-color:var(--ui-line)!important;color:var(--ui-text)!important}
 html[data-theme] body :is(.practice-intro,.stats-hero,.test-hero,.exam-header,.journey-hero,.res-hero,.pricing-hero,.legal-header,.contact-hero){border:0!important}
 html[data-theme] body :is(.hero-section,.practice-intro,.stats-hero,.test-hero,.exam-header,.journey-hero,.res-hero,.pricing-hero,.legal-header,.contact-hero) :is(h1,h2,h3,strong){color:var(--ui-text)!important}
 html[data-theme] body :is(.hero-section,.practice-intro,.stats-hero,.test-hero,.exam-header,.journey-hero,.res-hero,.pricing-hero,.legal-header,.contact-hero) :is(p,li,small){color:var(--ui-muted)!important}
 html[data-theme] body :is(.hero-section,.practice-intro,.stats-hero,.test-hero,.exam-header,.journey-hero,.res-hero,.pricing-hero,.legal-header) :is(.hero-label,.practice-intro-eyebrow,.test-eyebrow,.exam-eyebrow,.journey-eyebrow,.res-eyebrow,.pricing-eyebrow,.legal-eyebrow){color:var(--ui-accent)!important}
 html[data-theme] body .practice-section-heading{background:transparent!important;color:var(--ui-text)!important}
 html[data-theme] body .hero-section.home-keyboard-hero{background:var(--ui-page)!important;border:0!important;border-bottom:1px solid var(--ui-line)!important}
 html[data-theme] body .home-keyboard-hero .hero-content h1{color:var(--ui-text)!important}
 html[data-theme] body .home-keyboard-hero .hero-content h1>span{color:var(--ui-accent)!important}
 html[data-theme] body .home-keyboard-hero .hero-content .hero-label{color:var(--ui-accent)!important}
 html[data-theme] body .home-keyboard-hero .hero-content .hero-description{color:var(--ui-muted)!important}
 html[data-theme] body .home-keyboard-hero .home-keyboard-art{opacity:.18}
 html[data-theme] body .home-keyboard-hero .hero-points>span{color:var(--ui-muted)}
 html[data-theme] body .home-keyboard-hero .hero-point-check{background:var(--ui-raised);color:var(--ui-accent)}
 html[data-theme] body :is(.primary-button,.button-primary,.res-button,.legal-button,.auth-submit,.auth-primary,.exam-button,.button,.practice-daily-button,.session-launcher-start,.test-button,.test-select,.contact-button,.journey-button,.lesson-duration-form button,.intro-next button){background:#005da6;border-color:#005da6;color:#fff}
 html[data-theme] body .pricing-button:not(:disabled){background:#005da6;border-color:#005da6;color:#fff}
 html[data-theme] body :is(.primary-button,.button-primary,.res-button,.legal-button,.auth-submit,.auth-primary,.exam-button,.button,.practice-daily-button,.session-launcher-start,.test-button,.test-select,.contact-button,.journey-button,.lesson-duration-form button,.intro-next button):hover{background:#004578;border-color:#004578;color:#fff}
 html[data-theme] body .home-keyboard-hero .hero-actions .primary-button{background:#005da6;border-color:#005da6;color:#fff}
 html[data-theme] body :is(.secondary-button,.button-secondary,.legal-secondary,.exam-button-secondary,.journey-secondary,.chip),html[data-theme] body .home-keyboard-hero .hero-actions .secondary-button{background:var(--ui-surface);border-color:var(--ui-accent);color:var(--ui-accent)}
 html[data-theme] body :is(.practice-submenu,.test-filters,.content-selection,.test-selected,.pricing-premium>header,.pricing-comparison thead th,.pricing-comparison .pricing-group th,.learn-level-selector,.res-article-contents){background:var(--ui-raised);border-color:var(--ui-line)}
 html[data-theme] body :is(.practice-submenu-link,.test-passage-meta,.test-passage-number,.test-steps span,.curriculum-item small){color:var(--ui-muted)}
 html[data-theme] body :is(.practice-submenu-link.active,.practice-card-action,.test-link,.pricing-continue,.pricing-price>strong,.pricing-later){color:var(--ui-accent)}
 html[data-theme] body :is(.practice-mode-card,.game-card,.game-panel,.test-passages>li,.test-configuration,.res-guide-card,.res-featured,.res-article,.res-article-aside,.pricing-card,.pricing-faqs,.legal-hub-group,.legal-article,.legal-toc,.intro-rule-grid>section,.intro-teacher-note,.intro-next,.daily-today-panel,.daily-range,.journey-card,.stats-panel,.auth-form-panel,.exam-panel,.exam-set-card){background:var(--ui-surface);border-color:var(--ui-line);color:var(--ui-text)}
 html[data-theme] body :is(.practice-mode-card,.game-card,.game-panel,.test-passages,.res-guide-card,.res-featured,.pricing-card,.pricing-faqs,.legal-hub-group,.daily-today-panel,.daily-range,.journey-card,.exam-panel,.exam-set-card) :is(h2,h3,h4){color:var(--ui-text)}
 html[data-theme] body :is(.practice-mode-card,.game-card,.game-panel,.test-passages,.res-guide-card,.res-featured,.pricing-card,.pricing-faqs,.daily-today-panel,.daily-range,.journey-card,.exam-panel,.exam-set-card) p{color:var(--ui-muted)}
 html[data-theme] body .games-page{background:var(--ui-page);background-image:none}
 html[data-theme] body .auth-panel{background:var(--ui-raised);border-color:var(--ui-line);color:var(--ui-text)}
 html[data-theme] body .auth-panel :is(h2,p,li,small){color:var(--ui-text)}
 html[data-theme] body .auth-panel h2 span{color:var(--ui-accent)}
 html[data-theme] body .auth-panel li span{color:var(--ui-accent);background:var(--ui-surface)}
 html[data-theme] body .auth-keyboard kbd{background:var(--ui-surface);border-color:var(--ui-line);color:var(--ui-accent)}
 html[data-theme] body :is(.auth-input,.contact-field input,.contact-field textarea,.contact-field select,.test-filters select,.filters input,.filters select){background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-line)}
 html[data-theme] body #site-settings{--sp-bg:var(--ui-raised);--sp-card:var(--ui-surface);--sp-text:var(--ui-text);--sp-muted:var(--ui-muted);--sp-border:var(--ui-line);--sp-accent:var(--ui-accent);--sp-control:var(--ui-raised)}
 html[data-theme] body .site-header :is(.brand,.nav-link,.login-link,.mobile-menu-button,.games-nav-toggle){color:#fff}
 html[data-theme] body .site-header :is(.nav-link.active,.nav-link:hover,.login-link:hover){color:#fff}
 html[data-theme] body .site-header :is(.nav-link,.login-link)::after{background:#b9e2ff}
 html[data-theme] body .site-header .games-nav-toggle{border:0;box-shadow:none}
 html[data-theme] body .site-header .games-nav-panel a:is(:hover,:focus-visible){background:#dceeff;color:#123453}
 html[data-theme="dark"] body .site-header .games-nav-panel a:is(:hover,:focus-visible){background:#173e61;color:#fff}
 html[data-theme] body .site-header .games-nav-toggle:hover{border:0;box-shadow:none;filter:none;background:transparent;color:#b9e2ff}
 html[data-theme] body .site-header .account-menu>summary{background:#123453;color:#fff;border-color:#a9cbe3}
 html[data-theme] body .site-header .signup-link{background:#fff;color:#123453;border-color:#fff}
 html[data-theme] body .site-header .signup-link:hover{background:#dcefff;color:#123453;border-color:#dcefff}
 html[data-theme] body .site-header :is(.brand,.nav-link,.login-link,.mobile-menu-button,.games-nav-toggle,.account-menu>summary,.signup-link):focus-visible{outline-color:#fff}
 html[data-theme] body .site-footer{background:linear-gradient(115deg,#3377a6 0%,#16456f 48%,#081d3b 100%);color:#fff;border-top:1px solid #779fbe}
 html[data-theme] body .site-footer :is(h2,h3,p,a){color:#fff}
 html[data-theme] body .site-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
 html[data-theme] body .site-footer a:focus-visible{outline-color:#fff}
 html[data-theme] body .site-footer .footer-bottom{border-top:1px solid #ffffff40}
 html[data-theme] body .sidebar{background:#005da6;color:#fff}
 html[data-theme] body .sidebar :is(a,summary,small,.sidebar-foot){color:#fff}
 html[data-theme] body .topbar{background:var(--ui-surface);border-color:var(--ui-line)}
 html[data-theme] body :is(.danger,.danger-link,.exam-danger),html[data-theme] body .topbar .account form .text-button{background:var(--ui-danger);border-color:var(--ui-danger);color:#fff}
 html[data-theme] body.typing-session{background:var(--ui-page)}
 html[data-theme] body.typing-session :is(.typing-stats,.typing-passage,.finger-panel){background:var(--ui-surface);border-color:var(--ui-line)}
 html[data-theme] body.typing-session .typing-workarea textarea{background:var(--ui-page);border-color:var(--ui-line)}
}
