/* Approved readability refinements; typing passages keep their existing fonts. */
@media screen {
  html[data-theme] body .contact-page :is(.contact-note p,.contact-fine,.contact-errors,.errorlist){font-size:13px!important;line-height:1.7}
  html[data-theme] body .contact-page .contact-ack{font-size:14px;line-height:1.7}

  html[data-theme] body .exam-page .exam-set-top{font-size:12px}
  html[data-theme] body .exam-page :is(.exam-set-card>p,.exam-set-details){font-size:13px;line-height:1.65}
  html[data-theme] body .exam-page .exam-set-card .exam-button{font-size:13px}

  html[data-theme] body .res-page :is(.res-section-heading p,.res-featured p,.res-guide-card p,.res-download p,.res-article-aside p,.res-article-action p){font-size:15px;line-height:1.75}
  html[data-theme] body .res-page :is(.res-article-aside h3,.res-download h3){font-size:16px;line-height:1.5}

  html[data-theme] body .legal-page .legal-hub-group h2{font-size:20px;line-height:1.4}

  html[data-theme] body :is(.practice-page,.test-page) :is(.session-launcher-head p,.session-launcher-status,.session-launcher-rules article p,.test-rules,.test-configuration>ul,.test-configuration fieldset>p){font-size:15px;line-height:1.75}
  html[data-theme] body :is(.practice-page,.test-page) :is(.practice-local-note,.session-launcher-footnote,.test-section-head p,.test-guest-note,.test-start-row>span){font-size:14px;line-height:1.7}
  html[data-theme] body .typing-dashboard :is(.stats-metric h2,.stats-metric p,.stats-trends span,.stats-trends small,.stats-small-label,.stats-fine,.stats-toolbar>div>span){font-size:14px;line-height:1.6}

  html[data-theme] body .contact-hero h1{font-size:34px;line-height:1.25;letter-spacing:-.5px}
  html[data-theme] body .pricing-page .pricing-free-first h2{font-size:18px;line-height:1.5}
  html[data-theme] body .pricing-page .pricing-benefits h3{font-size:16px;line-height:1.5}
  html[data-theme] body .game-card-heading .game-status{font-size:13px}

  html[data-theme] body :is(.practice-page,.test-page,.exam-page,.res-page,.legal-page,.contact-page,.journey-page,.auth-page) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),select,textarea){font-size:16px;line-height:1.5}
  html[data-theme] body :is(.practice-page,.test-page,.exam-page,.res-page,.legal-page,.contact-page,.journey-page,.auth-page) label{font-size:14px;line-height:1.5}
  html[data-theme] body.auth-page label{font-size:14px;line-height:1.5}

  html[data-theme] body:not(.typing-session):not(.exam-window):not(.game-with-rails) :is(.primary-button,.button-primary,.session-launcher-start,.auth-primary,.pricing-button,.contact-button,.journey-button,.res-button,.legal-button,.practice-daily-button,.stats-button,.button){font-size:16px;line-height:1.5}
  html[data-theme] body:not(.typing-session):not(.exam-window) :is(.exam-button,.test-button,.test-select){font-size:15px;line-height:1.5}
  html[data-theme] body:not(.typing-session):not(.exam-window):not(.game-with-rails) :is(.secondary-button,.button-secondary,.exam-button-secondary,.journey-secondary,.pricing-secondary-button,.stats-button-secondary,.legal-secondary,.chip){font-size:14px;line-height:1.5}
  @media(max-width:600px){html[data-theme] body .contact-hero h1{font-size:26px}}
}
