: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:#0b0e14;color:#e8eaf0}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem}.app-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.app-header h1{font-size:1.75rem;font-weight:700;letter-spacing:-.03em}.stage-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;padding:.2rem .6rem;border-radius:999px}.subtitle{color:#ffffff80;font-size:.95rem;margin-bottom:2rem}.lesson-list{width:100%;max-width:420px;display:flex;flex-direction:column;gap:.75rem}.lesson-card{display:flex;align-items:center;gap:1rem;width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1rem 1.25rem;cursor:pointer;transition:background .15s,border-color .15s;text-align:left;color:inherit;font-family:inherit}.lesson-card:hover{background:#ffffff12;border-color:#6366f166}.lesson-num{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-weight:700;font-size:1rem;flex-shrink:0}.lesson-info{flex:1;min-width:0}.lesson-title{font-weight:600;font-size:1rem}.lesson-meta{font-size:.8rem;color:#ffffff73}.best-score{color:#22c55e}.lesson-arrow{font-size:1.5rem;color:#ffffff40}.lesson-view{width:100%;max-width:500px}.lesson-top-bar{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.back-btn{background:none;border:none;color:#fff9;cursor:pointer;font-size:.9rem;padding:.25rem 0;font-family:inherit}.back-btn:hover{color:#fff}.progress-bar{flex:1;height:4px;background:#ffffff14;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#6366f1);border-radius:999px;transition:width .3s ease}.step-count{font-size:.8rem;color:#fff6;font-variant-numeric:tabular-nums}.question-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2rem;margin-bottom:1.5rem}.question-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#ffffff59;margin-bottom:.5rem}.question-text{font-size:1.35rem;font-weight:600;line-height:1.4}.options{display:flex;flex-direction:column;gap:.65rem}.option-btn{width:100%;text-align:left;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem 1.25rem;font-size:1rem;color:#e8eaf0;cursor:pointer;transition:background .15s,border-color .15s;font-family:inherit}.option-btn:hover{background:#ffffff14;border-color:#6366f166}.answer-reveal{border-radius:16px;padding:2rem;text-align:center;animation:fadeUp .25s ease}.answer-reveal.correct{background:#22c55e14;border:1px solid rgba(34,197,94,.25)}.answer-reveal.wrong{background:#ef444414;border:1px solid rgba(239,68,68,.25)}.answer-icon{font-size:2.5rem;margin-bottom:.5rem}.answer-label{font-size:.9rem;color:#fff9;margin-bottom:.5rem}.answer-text{font-size:1.2rem;font-weight:600;margin-bottom:1.25rem}.next-btn{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;border:none;border-radius:10px;padding:.75rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s}.next-btn:hover{opacity:.9}.review{width:100%;max-width:400px;text-align:center}.review-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:2.5rem 2rem;margin-bottom:1.5rem}.review-emoji{font-size:3rem;margin-bottom:.75rem}.review-card h2{font-size:1.3rem;margin-bottom:1rem}.review-score{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#3b82f6,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.25rem}.review-percent{font-size:.9rem;color:#ffffff73}.review-actions{display:flex;gap:.75rem}.retry-btn,.home-btn{flex:1;padding:.85rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s;border:none}.retry-btn{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff}.home-btn{background:#ffffff0f;color:#fffc;border:1px solid rgba(255,255,255,.1)}.retry-btn:hover,.home-btn:hover{opacity:.9}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
