:root{--primary: #4f46e5;--primary-hover: #4338ca;--secondary: #64748b;--bg-soft: #f8fafc;--surface: #ffffff;--text-main: #0f172a;--text-sub: #475569;--border: #e2e8f0;--radius: 16px;--shadow-soft: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .01);--shadow-card: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .025);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}body{background-color:#f1f5f9;margin:0;font-family:Inter,system-ui,sans-serif}.page-wrapper{min-height:90vh;display:flex;align-items:center;justify-content:center;position:relative;padding:20px;overflow-x:hidden}.pattern-bg{position:absolute;inset:0;background-image:radial-gradient(#cbd5e1 1px,transparent 1px);background-size:32px 32px;opacity:.3;z-index:-1}.quiz-card{background:var(--surface);width:100%;max-width:800px;min-height:500px;border-radius:24px;padding:48px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;align-items:center;text-align:center;transition:var(--transition);position:relative}.intro h1{font-size:2.5rem;font-weight:800;margin-bottom:16px;background:linear-gradient(135deg,#4f46e5,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}.intro p{font-size:1.125rem;color:var(--text-sub);max-width:500px;margin-bottom:40px;line-height:1.6}.intro-features{display:flex;gap:24px;margin-bottom:48px;flex-wrap:wrap;justify-content:center}.intro-features span{background:#f1f5f9;padding:8px 16px;border-radius:100px;font-size:.9rem;font-weight:500;color:var(--text-main)}.progress-header{width:100%;margin-bottom:40px;display:flex;flex-direction:column;gap:8px}.progress-track{width:100%;height:8px;background:#f1f5f9;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4f46e5,#8b5cf6);border-radius:10px;transition:width .5s cubic-bezier(.4,0,.2,1)}.step-count{font-size:.8rem;color:#94a3b8;font-weight:600;text-transform:uppercase;letter-spacing:.05em;text-align:right}.question-block h2{font-size:2rem;font-weight:700;color:var(--text-main);margin-bottom:12px}.q-desc{color:var(--text-sub);font-size:1.05rem;margin-bottom:40px}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;width:100%;margin-bottom:40px}.option-card{background:#fff;border:2px solid var(--border);border-radius:16px;padding:24px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:12px}.option-card:hover{border-color:#a5b4fc;transform:translateY(-4px);box-shadow:var(--shadow-soft)}.option-card.selected{border-color:var(--primary);background:#eef2ff;box-shadow:0 0 0 2px #4f46e533}.opt-icon{font-size:2.5rem}.opt-label{font-weight:600;color:var(--text-main);font-size:1.05rem}.opt-desc{font-size:.85rem;color:var(--text-sub);line-height:1.4}.btn-primary{background:var(--primary);color:#fff;border:none;padding:16px 48px;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #4f46e54d}.btn-primary.full{width:100%}.btn-secondary{background:transparent;color:var(--secondary);border:2px solid var(--border);padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:.2s}.btn-secondary:hover{border-color:#cbd5e1;color:var(--text-main)}.nav-row{display:flex;justify-content:space-between;width:100%;margin-top:auto}.btn-back{background:transparent;border:none;color:#94a3b8;font-weight:600;cursor:pointer;padding:8px 16px;font-size:1rem}.btn-back:hover{color:var(--text-main)}.calculating .spinner-graph{width:60px;height:60px;border:4px solid #e2e8f0;border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:24px}.calc-bar-container{width:100%;max-width:300px;height:6px;background:#f1f5f9;border-radius:10px;margin:20px 0 12px;overflow:hidden}.calc-bar-fill{height:100%;background:var(--primary);border-radius:10px;transition:width .1s linear}.calc-text{font-weight:500;color:var(--text-sub);font-size:.9rem}.email-gate{justify-content:center}.email-gate h2{font-size:2rem;margin-bottom:8px}.email-gate .sub{font-size:1.1rem;color:var(--text-sub);margin-bottom:32px}.email-form{display:flex;flex-direction:column;gap:12px;width:100%;max-width:400px;margin-bottom:24px}.email-form input{padding:16px;border:2px solid var(--border);border-radius:12px;font-size:1rem}.btn-text{background:none;border:none;color:#94a3b8;text-decoration:underline;cursor:pointer;font-size:.9rem}.results-header{margin-bottom:40px}.results-header h2{font-size:2.25rem;font-weight:800;margin-bottom:8px}.top-result{background:#fdfefe;width:100%;border:2px solid var(--primary);border-radius:20px;padding:32px;position:relative;margin-bottom:40px;box-shadow:0 10px 25px -5px #4f46e51a}.result-badge{position:absolute;top:-16px;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;padding:6px 20px;border-radius:100px;font-weight:700;font-size:.85rem;text-transform:uppercase}.top-result h3{font-size:2.5rem;margin:12px 0;color:var(--text-main)}.tags{display:flex;justify-content:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}.tags span{background:#eef2ff;color:var(--primary);padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:capitalize}.result-desc{color:var(--text-sub);font-size:1.1rem;line-height:1.6;margin-bottom:32px}.runners-up{width:100%;text-align:left;margin-bottom:40px}.runners-up h4{color:#94a3b8;text-transform:uppercase;font-size:.85rem;letter-spacing:.05em;margin-bottom:16px}.ru-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.ru-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:var(--text-main);transition:.2s}.ru-card:hover{border-color:var(--primary);transform:translateY(-2px)}.ru-card h5{margin:0;font-size:1.05rem}.ru-card span{font-size:.9rem;color:var(--primary);font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .4s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.quiz-card{padding:24px;min-height:auto}.intro h1{font-size:2rem}.options-grid{grid-template-columns:1fr}.nav-row{flex-direction:column-reverse;gap:16px}.btn-back{align-self:center}}
