@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Fira+Code:wght@400;500;700&display=swap";:root{--bg-color:#0f172a;--text-primary:#f8fafc;--text-secondary:#64748b;--accent-color:#38bdf8;--error-color:#f43f5e;--success-color:#22c55e;--glass-bg:#1e293bb3;--glass-border:#ffffff1a;--font-sans:"Outfit", sans-serif;--font-mono:"Fira Code", monospace;--transition-fast:.15s ease-in-out;--transition-normal:.3s ease-in-out}[data-theme=light]{--bg-color:#f8fafc;--text-primary:#0f172a;--text-secondary:#94a3b8;--accent-color:#0ea5e9;--glass-bg:#ffffffb3;--glass-border:#0000001a}[data-theme=dracula]{--bg-color:#282a36;--text-primary:#f8f8f2;--text-secondary:#6272a4;--accent-color:#ff79c6;--error-color:#f55;--success-color:#50fa7b;--glass-bg:#282a36cc;--glass-border:#ffffff0d}[data-theme=cyberpunk]{--bg-color:#fce22a;--text-primary:#121212;--text-secondary:#5a5a5a;--accent-color:#ff003c;--error-color:#00f0ff;--success-color:#0f0;--glass-bg:#fce22a99;--glass-border:#0003}[data-theme=nord]{--bg-color:#2e3440;--text-primary:#eceff4;--text-secondary:#4c566a;--accent-color:#88c0d0;--error-color:#bf616a;--success-color:#a3be8c;--glass-bg:#3b4252b3;--glass-border:#ffffff0d}*{box-sizing:border-box;margin:0;padding:0}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}body{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-primary);min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);flex-direction:column;display:flex;overflow-x:hidden}#root{flex-direction:column;width:100%;max-width:1200px;min-height:100vh;margin:0 auto;padding:2rem;display:flex}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:0 4px 30px #0000001a}.button{color:var(--text-secondary);cursor:pointer;font-family:var(--font-sans);transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;display:inline-flex}.button:hover,.button.active{color:var(--text-primary);background:var(--glass-bg)}.button-primary{background:var(--accent-color);color:var(--bg-color);font-weight:600}.button-primary:hover{filter:brightness(1.1);transform:translateY(-2px)}.text-mono{font-family:var(--font-mono)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.caret{background-color:var(--accent-color);z-index:10;border-radius:4px;width:3px;height:1.5em;transition:left .1s cubic-bezier(.2,0,0,1),top .1s cubic-bezier(.2,0,0,1);animation:1s step-end infinite blink;position:absolute}.caret.typing{opacity:1;animation:none}.typing-container{-webkit-user-select:none;user-select:none;outline:none;font-size:1.5rem;line-height:1.6;position:relative}.words-wrapper{flex-wrap:wrap;align-content:flex-start;height:160px;padding:.5rem;display:flex;position:relative;overflow:hidden}.word{color:var(--text-secondary);margin-bottom:.4em;margin-right:.6em;transition:opacity .2s;display:inline-block}.word.active{opacity:1}.letter{transition:color .15s ease-out}.letter.correct{color:var(--text-primary)}.letter.incorrect{color:var(--error-color);text-decoration:underline;-webkit-text-decoration-color:var(--error-color);text-decoration-color:var(--error-color)}.letter.extra{color:var(--error-color);opacity:.7}.letter.untyped{color:var(--text-secondary)}.stats-grid{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;display:flex}.stat-card{text-align:center;max-width:220px;transition:transform var(--transition-fast);flex-direction:column;flex:150px;justify-content:center;align-items:center;padding:1.5rem;display:flex}.stat-card:hover{transform:translateY(-4px)}.stat-value{color:var(--accent-color);font-size:2.5rem;font-weight:700;font-family:var(--font-mono);margin-bottom:.5rem}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--glass-bg);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}
