*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f13;--card: #1a1a24;--border: #2a2a3a;--accent: #6c63ff;--accent-hover: #5a52e0;--text: #f0f0f5;--text-muted: #8888aa;--green: #4ade80;--radius: 14px}html,body,#root{height:100%;min-height:100vh;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}body{overflow-x:hidden}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:24px 16px 40px;max-width:480px;margin:0 auto}.start-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:80vh;gap:20px;animation:fadeIn .4s ease}.start-icon{font-size:72px;line-height:1}.start-screen h1{font-size:26px;font-weight:700;letter-spacing:-.5px}.start-screen p{font-size:15px;color:var(--text-muted);line-height:1.6;max-width:320px}.progress-wrap{width:100%;margin-bottom:24px}.progress-info{display:flex;justify-content:space-between;font-size:13px;color:var(--text-muted);margin-bottom:8px}.progress-bar{width:100%;height:6px;background:var(--border);border-radius:99px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#a78bfa);border-radius:99px;transition:width .4s ease}.question-card{width:100%;animation:slideUp .35s ease}.q-number{font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.q-text{font-size:18px;font-weight:600;line-height:1.5;margin-bottom:24px;white-space:pre-line}.options{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}.option-btn{width:100%;background:var(--card);border:2px solid var(--border);color:var(--text);border-radius:var(--radius);padding:14px 18px;font-size:15px;text-align:left;cursor:pointer;transition:all .18s ease;display:flex;align-items:center;gap:12px;line-height:1.4}.option-btn:active{transform:scale(.98)}.option-btn.selected{border-color:var(--accent);background:#6c63ff1f;color:#fff}.option-btn:hover:not(.selected){border-color:#3a3a55;background:#1f1f2e}.option-letter{width:28px;height:28px;border-radius:50%;background:var(--border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;transition:all .18s}.option-btn.selected .option-letter{background:var(--accent);color:#fff}.btn-primary{width:100%;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);padding:16px;font-size:16px;font-weight:700;cursor:pointer;transition:all .18s ease;letter-spacing:.2px}.btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-result{background:linear-gradient(135deg,#6c63ff,#a78bfa);font-size:17px;padding:18px;box-shadow:0 4px 24px #6c63ff66}.btn-result:hover:not(:disabled){box-shadow:0 6px 30px #6c63ff8c;transform:translateY(-2px)}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;gap:16px;color:var(--text-muted);font-size:15px;padding:24px}.error-screen p{line-height:1.6}.loading{display:flex;align-items:center;justify-content:center;min-height:80vh}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}
