/* ATS Typing Test 1.0.0 — inherits theme vars with fallbacks */
.ats-test{--i:var(--ink,#16232E);--m:var(--muted,#5C6B78);--c:var(--card,#fff);--l:var(--line,#E6E1D6);
 --a:var(--accent,#2563EB);--as:var(--accent-soft,#DBEAFE);--g:var(--good,#16A34A);--b:var(--bad,#DC2626);
 --mono:var(--mono,'IBM Plex Mono',monospace);margin:1.2em 0}
.ats-test *{box-sizing:border-box}
.ats-tt-modes{display:flex;gap:8px;margin-bottom:14px}
.ats-tt-modes button{font-weight:600;font-size:14px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--i);background:transparent;color:var(--i);cursor:pointer}
.ats-tt-modes button.on{background:var(--i);color:#fff}
.ats-tt-stage,.ats-tt-results{background:var(--c);border:1px solid var(--l);border-radius:16px;padding:24px}
.ats-tt-hud{display:flex;gap:26px;margin-bottom:14px;font-family:var(--mono);font-size:13px;color:var(--m)}
.ats-tt-hud b{font-size:22px;color:var(--i);display:block}
.ats-tt-hud .hud-wpm b{color:var(--a)}
.ats-tt-words{font-family:var(--mono);font-size:20px;line-height:2.1;user-select:none;height:130px;overflow:hidden;cursor:text}
.ats-tt-words .w{margin-right:.55ch;display:inline-block}
.w.done{color:#9AA7B1}.w.done.err{color:var(--b);text-decoration:underline}
.w.cur{background:var(--as);border-radius:5px;padding:0 4px}
.w.cur .ok{color:var(--g)}.w.cur .no{color:var(--b);background:#FEE2E2;border-radius:2px}
.ats-tt-note{margin:12px 0 0;font-size:13px;color:var(--m)}
.ats-tt-note kbd{font-family:var(--mono);background:var(--bg,#F7F5F0);border:1px solid var(--l);border-radius:5px;padding:1px 7px}
/* results */
.ats-tt-big{display:flex;gap:30px;flex-wrap:wrap;margin:4px 0 20px}
.ats-tt-big div b{font-size:42px;font-family:var(--mono);display:block;line-height:1.1;color:var(--i)}
.ats-tt-big div.main b{color:var(--a)}
.ats-tt-big div span{font-size:12px;color:var(--m);text-transform:uppercase;letter-spacing:.07em}
.ats-tt-card{background:var(--bg,#F7F5F0);border-radius:12px;padding:16px 20px;margin-bottom:16px}
.ats-tt-card h3{font-size:15px;margin:0 0 10px;color:var(--i)}
.ats-tt-bar{height:14px;background:#E8E4DA;border-radius:999px;position:relative;margin:16px 0 8px}
.ats-tt-bar .fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#93C5FD,var(--a))}
.ats-tt-bar .avg{position:absolute;top:-7px;width:2.5px;height:28px;background:var(--i)}
.ats-tt-bar .avg i{position:absolute;top:-19px;left:-11px;font-size:10.5px;font-family:var(--mono);font-style:normal;color:var(--m)}
.ats-tt-line{font-size:14.5px;margin:0}
.ats-tt-line b{color:var(--a)}
.ats-tt-card select{font-size:14px;padding:6px 10px;border-radius:8px;border:1.5px solid var(--l);background:#fff}
.ats-tt-card table{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
.ats-tt-card th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--m);padding:6px 10px;border-bottom:2px solid var(--l)}
.ats-tt-card td{padding:7px 10px;border-bottom:1px solid var(--l)}
.tt-tag{font-size:11px;padding:2px 9px;border-radius:999px;font-weight:700}
.tt-tag.hit{background:#DCFCE7;color:var(--g)}.tt-tag.close{background:#FEF3C7;color:#D97706}.tt-tag.miss{background:#FEE2E2;color:var(--b)}
.ats-tt-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.ats-tt-actions button{font-weight:700;font-size:15px;padding:11px 20px;border-radius:999px;cursor:pointer;border:none}
.ats-tt-actions .primary{background:var(--a);color:#fff}
.ats-tt-actions .ghost{background:transparent;border:1.5px solid var(--i);color:var(--i)}
@media(max-width:560px){.ats-tt-words{font-size:17px;height:148px}.ats-tt-big div b{font-size:32px}}
