/* TypingTest UI refresh, "keyboard-native" (2026-11-09). Scoped to html.rt-ui. */
html.rt-ui{
  --ink:#0F1F3D; --ink-2:#1B2E52; --paper:#F5F7FB; --key:#FFFFFF; --key-edge:#CBD5E3; --line:#DCE3EE;
  --signal:#FFCE1F; --signal-deep:#E8B600; --blue:#1D5BD8; --ok:#12A150; --muted:#4A5B78;
  --rt-display:"Bricolage Grotesque", "Manrope", system-ui, sans-serif; --rt-text:"Manrope", system-ui, sans-serif;
}
html.rt-ui body{background:var(--paper) !important;color:var(--ink);font-family:var(--rt-text);-webkit-font-smoothing:antialiased}
html.rt-ui body p,html.rt-ui body li,html.rt-ui .elementor-widget-text-editor{font-family:var(--rt-text)}
html.rt-ui .elementor-widget-text-editor{font-size:17px;line-height:1.65}
html.rt-ui h1,html.rt-ui h2,html.rt-ui h3,html.rt-ui h4,html.rt-ui .elementor-heading-title{font-family:var(--rt-display) !important;letter-spacing:-.02em}
html.rt-ui h2,html.rt-ui h3{color:var(--ink)}
html.rt-ui a{color:var(--blue)}
html.rt-ui :focus-visible{outline:3px solid var(--signal);outline-offset:2px}

/* Header: ink bar, calm sentence-case navigation */
html.rt-ui [data-elementor-type="header"] .elementor-element-f656645{background:var(--paper) !important}
html.rt-ui [data-elementor-type="header"] .elementor-element-b0421ab{background:var(--ink) !important;border-radius:14px;box-shadow:0 6px 0 -2px rgba(15,31,61,.18)}
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .elementor-item{font-family:var(--rt-text) !important;font-weight:600;text-transform:none !important;letter-spacing:0 !important;font-size:15px !important;color:#E9EEF7 !important}
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .elementor-item:hover,
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--signal) !important}
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .elementor-item:after{background-color:var(--signal) !important}
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .sub-menu{background:var(--key);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px -12px rgba(15,31,61,.35);padding:6px 0}
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .sub-menu a{color:var(--ink) !important;font-family:var(--rt-text) !important;font-weight:500;text-transform:none !important;letter-spacing:0 !important}
html.rt-ui [data-elementor-type="header"] .elementor-nav-menu--main .sub-menu a:hover{background:var(--paper);color:var(--blue) !important}
html.rt-ui [data-elementor-type="header"] .elementor-menu-toggle{background:var(--signal) !important;color:var(--ink) !important;border-radius:10px}
html.rt-ui [data-elementor-type="header"] nav.elementor-nav-menu--dropdown{background:var(--key);border-radius:0 0 14px 14px}
html.rt-ui [data-elementor-type="header"] nav.elementor-nav-menu--dropdown a{color:var(--ink) !important;background:transparent !important;font-family:var(--rt-text) !important;text-transform:none !important;letter-spacing:0 !important;font-weight:600}

/* Buttons: real keycaps that press down */
html.rt-ui .elementor-button{font-family:var(--rt-text) !important;font-weight:700 !important;text-transform:none !important;letter-spacing:0 !important;
  background:var(--signal) !important;color:var(--ink) !important;border:2px solid var(--ink) !important;border-radius:12px !important;
  box-shadow:0 5px 0 var(--ink) !important;padding:14px 26px !important;transition:transform .08s ease, box-shadow .08s ease}
html.rt-ui .elementor-button:hover{background:#FFD84D !important}
html.rt-ui .elementor-button:active{transform:translateY(4px);box-shadow:0 1px 0 var(--ink) !important}
html.rt-ui .elementor-element-rt2btn1 .elementor-button,
html.rt-ui .elementor-element-6ba9670 .elementor-button{background:var(--key) !important}
html.rt-ui .elementor-element-rt2btn1 .elementor-button:hover,
html.rt-ui .elementor-element-6ba9670 .elementor-button:hover{background:var(--paper) !important}
html.rt-ui .elementor-element-2c73d41 .elementor-widget-button{display:inline-block;width:auto;margin-right:14px}

/* Hero: big headline with a live typing caret */
html.rt-ui .elementor-element-3cd6bb8{background:var(--paper) !important}
html.rt-ui .elementor-element-e56efc6 .elementor-heading-title{font-size:clamp(2.2rem,3.6vw,3.3rem) !important;font-weight:800 !important;line-height:1.02 !important;color:var(--ink) !important}
html.rt-ui .elementor-element-e56efc6 .elementor-heading-title:after{content:"";display:inline-block;width:.08em;height:.9em;margin-left:.08em;vertical-align:-.08em;background:var(--signal-deep);animation:rtCaret 1.05s steps(1) infinite}
@keyframes rtCaret{50%{opacity:0}}
html.rt-ui .elementor-element-rtherosub .elementor-heading-title{font-family:var(--rt-text) !important;letter-spacing:0;font-size:18px !important;color:var(--muted) !important;max-width:34em}

/* Key tiles: the two main cards and the six tool boxes */
html.rt-ui .elementor-element-6ba9670,html.rt-ui .elementor-element-6ba9670 .elementor-inner-section,html.rt-ui .elementor-element-ee8cb8f{background:transparent !important}
html.rt-ui .elementor-element-6ba9670 .elementor-inner-section .elementor-column > .elementor-widget-wrap{background:var(--key) !important;border:1px solid var(--line);border-bottom:4px solid var(--key-edge);border-radius:18px !important;padding:28px !important;margin:8px}
html.rt-ui .elementor-element-6ba9670 .elementor-heading-title{color:var(--ink) !important;font-size:24px !important;font-weight:800 !important}
html.rt-ui .elementor-widget-icon-box .elementor-icon-box-wrapper{background:var(--key);border:1px solid var(--line);border-bottom:4px solid var(--key-edge);border-radius:16px;padding:22px 20px;margin-bottom:16px;transition:border-color .15s ease, transform .15s ease}
html.rt-ui .elementor-widget-icon-box .elementor-icon-box-wrapper:hover{border-color:var(--ink);transform:translateY(-2px)}
html.rt-ui .elementor-widget-icon-box .elementor-icon{color:var(--blue) !important;fill:var(--blue) !important}
html.rt-ui .elementor-widget-icon-box .elementor-icon-box-title,html.rt-ui .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var(--rt-display) !important;color:var(--ink) !important;font-size:19px !important;font-weight:800 !important;letter-spacing:-.01em}
html.rt-ui .elementor-widget-icon-box .elementor-icon-box-description{font-family:var(--rt-text) !important;color:var(--muted) !important;font-size:15px !important;line-height:1.55}

html.rt-ui .elementor-element-6ba9670 > .elementor-container > .elementor-column > .elementor-widget-wrap,html.rt-ui .elementor-element-e6a4bc4 > .elementor-widget-wrap{background:transparent !important;box-shadow:none !important;border:0 !important}

/* Article band: ink instead of green */
html.rt-ui .elementor-element-2441239{background:transparent !important}
html.rt-ui .elementor-element-2441239 .elementor-widget-wrap.elementor-element-populated{background:var(--ink) !important;border-radius:22px;padding:clamp(24px,5vw,56px) !important}
html.rt-ui .elementor-element-dbf8565,html.rt-ui .elementor-element-dbf8565 p,html.rt-ui .elementor-element-dbf8565 li,html.rt-ui .elementor-element-dbf8565 td{color:#E3E9F3 !important}
html.rt-ui .elementor-element-dbf8565 h2{color:#fff !important;font-size:clamp(1.6rem,3vw,2.2rem);margin-top:36px}
html.rt-ui .elementor-element-dbf8565 h2:first-child{margin-top:0}
html.rt-ui .elementor-element-dbf8565 th{color:var(--signal) !important;font-family:var(--rt-text)}
html.rt-ui .elementor-element-dbf8565 a{color:var(--signal) !important}

/* FAQ */
html.rt-ui .elementor-accordion .elementor-accordion-item{background:var(--key);border:1px solid var(--line) !important;border-radius:14px;margin-bottom:10px;overflow:hidden}
html.rt-ui .elementor-accordion .elementor-tab-title{font-family:var(--rt-text);padding:18px 22px !important}
html.rt-ui .elementor-accordion .elementor-tab-title a{color:var(--ink) !important;font-weight:700;font-size:17px}
html.rt-ui .elementor-accordion .elementor-tab-title .elementor-accordion-icon{color:var(--blue) !important}
html.rt-ui .elementor-accordion .elementor-tab-content{border-top:1px solid var(--line) !important;color:var(--muted);font-size:16px;line-height:1.65;padding:16px 22px 20px !important}
html.rt-ui .elementor-element-rtfaqh1 .elementor-heading-title{color:var(--ink) !important;font-size:clamp(1.8rem,3.4vw,2.6rem) !important;font-weight:800 !important}

/* Footer */
html.rt-ui [data-elementor-type="footer"] .elementor-element-35fb71a{background:#EAEFF6 !important;border-top:1px solid var(--line)}
html.rt-ui [data-elementor-type="footer"] .elementor-nav-menu a{font-family:var(--rt-text) !important;color:var(--ink) !important;font-weight:500}
html.rt-ui [data-elementor-type="footer"] .elementor-nav-menu a:hover{color:var(--blue) !important}

@media (max-width:767px){
  html.rt-ui .elementor-element-2c73d41 .elementor-widget-button{display:block;margin:0 0 14px}
  html.rt-ui .elementor-element-6ba9670 .elementor-inner-section .elementor-column > .elementor-widget-wrap{margin:8px 0}
  html.rt-ui .elementor-element-2441239 .elementor-widget-wrap.elementor-element-populated{border-radius:0}
}
@media (prefers-reduced-motion:reduce){
  html.rt-ui .elementor-element-e56efc6 .elementor-heading-title:after{animation:none}
  html.rt-ui .elementor-button,html.rt-ui .elementor-widget-icon-box .elementor-icon-box-wrapper{transition:none}
}

/* Typing test start card */
html.rt-ui #start-typing-modal > .elementor-widget-wrap{border:2px solid var(--ink)!important;border-radius:18px!important;box-shadow:0 8px 0 var(--ink)!important}
html.rt-ui #start-typing-modal input{border:1.5px solid var(--key-edge)!important;border-radius:10px!important}
html.rt-ui #start-typing-modal input:focus{border-color:var(--blue)!important;outline:3px solid rgba(29,91,216,.18)!important}

/* Mobile menu polish */
@media (max-width:1024px){
 html.rt-ui nav.elementor-nav-menu--dropdown{border-radius:0 0 16px 16px!important;box-shadow:0 14px 28px rgba(15,31,61,.14)!important;border:1px solid var(--line)!important;border-top:0!important}
 html.rt-ui nav.elementor-nav-menu--dropdown > ul > li > a{font-weight:700!important;color:var(--ink)!important}
 html.rt-ui nav.elementor-nav-menu--dropdown .sub-menu a{color:var(--muted)!important;border-left:2px solid var(--signal)!important}
}

/* Card titles in sentence case */
html.rt-ui .elementor-element-6ba9670 .elementor-heading-title{text-transform:lowercase!important;letter-spacing:-.01em}
html.rt-ui .elementor-element-6ba9670 .elementor-heading-title::first-letter{text-transform:uppercase}

/* Blog posts */
html.rt-ui .single-post h1, html.rt-ui .single-post .elementor-heading-title{color:var(--ink)!important}
html.rt-ui .single-post .elementor-widget-theme-post-content p,
html.rt-ui .single-post .elementor-widget-theme-post-content li{text-align:left!important;line-height:1.7}
html.rt-ui .single-post .elementor-widget-theme-post-content a{color:var(--blue)!important;text-underline-offset:3px}

/* 10-key widget */
html.rt-ui .rt10k{border:2px solid var(--ink)!important;border-radius:18px!important;box-shadow:0 8px 0 var(--ink)!important;background:#fff!important}
html.rt-ui .rt10k-stats > div{background:var(--ink)!important;border-radius:12px!important}
html.rt-ui .rt10k-input{border:1.5px solid var(--key-edge)!important;border-radius:10px!important}
html.rt-ui .rt10k-input:focus{border-color:var(--blue)!important;outline:3px solid rgba(29,91,216,.18)!important}
html.rt-ui .rt10k-queue span{background:var(--key)!important;border:1px solid var(--key-edge)!important;border-bottom-width:3px!important;border-radius:8px!important}
html.rt-ui .rt10k-restart{background:var(--signal)!important;color:var(--ink)!important;border:2px solid var(--ink)!important;border-radius:12px!important;box-shadow:0 4px 0 var(--ink)!important;text-transform:none!important}
html.rt-ui .rt10k-queue span.cur{background:var(--signal)!important;border-color:var(--ink)!important}
html.rt-ui .rt10k-queue span.ok{background:#d9f5df!important;border-color:#9fdcb0!important}
html.rt-ui .rt10k-queue span.bad,html.rt-ui .rt10k-queue span.err{background:#fde2e2!important;border-color:#f3a5a5!important}

/* Pages with their own dark page background: keep it dark so white text stays readable */
html.rt-ui body.elementor-page-41{background:var(--ink)!important}
html.rt-ui body.elementor-page-41 .elementor-element-f656645{background:var(--ink)!important}
html.rt-ui body.elementor-page-41 .elementor-element-93300fb{padding:56px 24px!important}
html.rt-ui body.elementor-page-41 .elementor-element-93300fb > .e-con-inner{max-width:820px!important;margin:0 auto!important}
html.rt-ui body.elementor-page-41 .elementor-element-93300fb p,html.rt-ui body.elementor-page-41 .elementor-element-93300fb li{text-align:left!important;line-height:1.75;color:#E6ECF5!important}
html.rt-ui body.elementor-page-41 .elementor-element-93300fb h2,html.rt-ui body.elementor-page-41 .elementor-element-93300fb h3{color:#fff!important}
html.rt-ui body.elementor-page-41 .elementor-element-93300fb a{color:var(--signal)!important;font-style:normal!important}

/* One type system everywhere (some pages fell back to a serif) */
html.rt-ui h1,html.rt-ui h2,html.rt-ui h3,html.rt-ui h4,html.rt-ui h5,html.rt-ui h6,html.rt-ui .elementor-heading-title,html.rt-ui .elementor-post__title{font-family:var(--rt-display)!important;letter-spacing:-.01em}
html.rt-ui p,html.rt-ui li,html.rt-ui td,html.rt-ui th,html.rt-ui .elementor-widget-text-editor,html.rt-ui .elementor-post__excerpt{font-family:var(--rt-text)!important}

/* Blog list cards */
html.rt-ui .elementor-post__card{background:#fff!important;border:1px solid var(--line)!important;border-bottom:4px solid var(--key-edge)!important;border-radius:16px!important;overflow:hidden;box-shadow:none!important}
html.rt-ui .elementor-post__card:hover{border-bottom-color:var(--signal)!important}
html.rt-ui .elementor-post__title a{color:var(--ink)!important;font-weight:700!important}
html.rt-ui .elementor-post__excerpt p{color:var(--muted)!important}
html.rt-ui .elementor-post__read-more{color:var(--blue)!important;text-transform:none!important;font-weight:700!important;letter-spacing:0!important;font-size:15px!important}
html.rt-ui .elementor-post__meta-data,html.rt-ui .elementor-post-date{color:var(--muted)!important}
html.rt-ui .elementor-pagination a,html.rt-ui .elementor-pagination span{color:var(--ink)!important}

/* Single post meta */
html.rt-ui .single-post .elementor-icon-list-text,html.rt-ui .single-post time,html.rt-ui .single-post .elementor-post-info__item{color:var(--muted)!important}
html.rt-ui .single-post .elementor-icon-list-icon i,html.rt-ui .single-post .elementor-icon-list-icon svg{color:var(--ink)!important;fill:var(--ink)!important}
html.rt-ui .single-post .elementor-widget-theme-post-content h2{font-size:clamp(1.5rem,2.4vw,2rem)!important;margin-top:1.6em!important}
html.rt-ui .single-post .elementor-widget-theme-post-content table{border-collapse:collapse;width:100%}
html.rt-ui .single-post .elementor-widget-theme-post-content th{background:var(--ink)!important;color:#fff!important}
html.rt-ui .single-post .elementor-widget-theme-post-content td,html.rt-ui .single-post .elementor-widget-theme-post-content th{border:1px solid var(--line)!important;padding:10px 12px!important}

/* Typing test stats: pale cyan/green on white was hard to read */
html.rt-ui .elementor-element-5499019 p,html.rt-ui .elementor-element-5499019 .elementor-widget-container,
html.rt-ui .elementor-element-9e08e2e .elementor-widget-container,html.rt-ui .rt-stat{color:var(--blue)!important;font-family:var(--rt-display)!important;font-weight:800!important}
html.rt-ui body:is(.elementor-page-416,.elementor-page-422,.elementor-page-85896) .elementor-icon-list-text{color:var(--muted)!important}
html.rt-ui body:is(.elementor-page-416,.elementor-page-422,.elementor-page-85896) .elementor-icon-list-item > a .elementor-icon-list-text{color:var(--ink)!important;font-weight:700!important}
html.rt-ui body:is(.elementor-page-416,.elementor-page-422,.elementor-page-85896) .elementor-icon-list-item > a .elementor-icon-list-icon i,
html.rt-ui body:is(.elementor-page-416,.elementor-page-422,.elementor-page-85896) .elementor-icon-list-item > a .elementor-icon-list-icon svg{color:var(--ink)!important;fill:var(--ink)!important}
html.rt-ui :is(.elementor-element-dcf9b33,.elementor-element-db2fc83,.elementor-element-405d6f0,.elementor-element-3475a58) .elementor-widget-container{color:var(--blue)!important;font-family:var(--rt-display)!important;font-weight:800!important}
html.rt-ui .elementor-element-d2285f9 .elementor-icon-list-text{color:var(--ink)!important;font-weight:700!important}
html.rt-ui :is(.elementor-element-e88b154,.elementor-element-720355e,.elementor-element-b8d1e64,.elementor-element-06af35d) .elementor-widget-container{color:var(--blue)!important;font-family:var(--rt-display)!important;font-weight:800!important}
html.rt-ui body.elementor-page-41 .elementor-element-348f7e1{background:var(--ink-2)!important;border-radius:22px!important;margin:0 16px!important;width:auto!important}
