:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:#0f0f1a;color:#f0f0f5}.app{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.menu{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:2rem}.menu-header{text-align:center}.logo{font-size:3.5rem;margin-bottom:.5rem}.menu-header h1{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;background:linear-gradient(135deg,#60a5fa,#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{color:#ffffff80;font-size:1rem;margin-top:.25rem}.difficulty-grid{display:flex;flex-direction:column;gap:.75rem;width:100%}.difficulty-card{--accent: #4ade80;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem 1rem;border-radius:1rem;border:2px solid rgba(255,255,255,.08);background:#ffffff08;color:inherit;cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:1rem;position:relative;overflow:hidden}.difficulty-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--accent, #4ade80),transparent);opacity:0;transition:opacity .2s ease}.difficulty-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 30px -8px #00000080}.difficulty-card:hover:before{opacity:.06}.diff-emoji{font-size:2rem;position:relative}.diff-label{font-size:1.2rem;font-weight:700;color:var(--accent);position:relative}.diff-ops{font-size:.8rem;color:#fff6;font-family:ui-monospace,monospace;letter-spacing:.15em;position:relative}.diff-time{font-size:.75rem;color:#ffffff59;position:relative}.diff-high{font-size:.75rem;color:var(--accent);opacity:.7;margin-top:.25rem;position:relative}.hint{color:#ffffff4d;font-size:.8rem;text-align:center}.play{width:100%;max-width:480px;display:flex;flex-direction:column;gap:1.5rem}.play-top{display:flex;justify-content:space-between;align-items:center}.stat{display:flex;flex-direction:column;align-items:center;gap:.1rem}.stat-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#fff6}.stat-value{font-size:1.5rem;font-weight:800;font-variant-numeric:tabular-nums}.streak-val{color:#f97316}.progress-info{font-size:.85rem;color:#ffffff80;font-variant-numeric:tabular-nums}.timer-bar-bg{width:100%;height:6px;border-radius:3px;background:#ffffff14;overflow:hidden}.timer-bar-fill{height:100%;border-radius:3px;transition:width 1s linear,background-color .3s ease}.timer-bar-fill.low{animation:pulse-bar .5s ease infinite alternate}@keyframes pulse-bar{0%{opacity:1}to{opacity:.5}}.question-card{background:linear-gradient(135deg,#ffffff0a,#ffffff05);border:1px solid rgba(255,255,255,.08);border-radius:1.25rem;padding:2.5rem 2rem;text-align:center}.question-text{font-size:2.5rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.question-mark{color:#818cf8}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.option-btn{padding:1.25rem;font-size:1.4rem;font-weight:700;font-family:inherit;border-radius:1rem;border:2px solid rgba(255,255,255,.1);background:#ffffff0a;color:inherit;cursor:pointer;transition:all .15s ease;font-variant-numeric:tabular-nums}.option-btn:hover:not(:disabled){border-color:#ffffff4d;background:#ffffff14;transform:scale(1.03)}.option-btn:active:not(:disabled){transform:scale(.97)}.option-btn.correct{border-color:#4ade80;background:#4ade8026;color:#4ade80;animation:pop .3s ease}.option-btn.wrong{border-color:#f87171;background:#f8717126;color:#f87171;animation:shake .3s ease}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.feedback{text-align:center;padding:.75rem 1rem;border-radius:.75rem;font-weight:700;font-size:1rem;animation:fade-in .2s ease}.fb-correct{background:#4ade801a;color:#4ade80;border:1px solid rgba(74,222,128,.2)}.fb-wrong{background:#f871711a;color:#f87171;border:1px solid rgba(248,113,113,.2)}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.result{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center}.result-grade{font-size:5rem;font-weight:900;line-height:1;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:grade-pop .5s ease}@keyframes grade-pop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.new-high{font-size:1.1rem;font-weight:700;color:#facc15;animation:shimmer 1.5s ease infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.6}}.result h2{font-size:1.5rem;font-weight:700;color:#ffffffd9}.result-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;width:100%}.result-stat{display:flex;flex-direction:column;gap:.2rem;padding:1rem;border-radius:.75rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.rs-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#fff6}.rs-value{font-size:1.3rem;font-weight:800}.result-actions{display:flex;gap:.75rem;width:100%}.btn{flex:1;padding:.9rem 1.5rem;border-radius:.75rem;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .15s ease;border:none}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px -4px #6366f180}.btn-ghost{background:#ffffff0f;color:#ffffffb3;border:1px solid rgba(255,255,255,.1)}.btn-ghost:hover{background:#ffffff1a;color:#fff}
