:root{--bg-primary:#f6f8fb;--bg-secondary:#fff;--text-primary:#333;--text-secondary:#7a8288;--text-light:#fff;--color-purple:#8e70af;--color-green:#33a474;--color-blue:#4298b4;--color-yellow:#e4ae3a;--border-color:#e5e8ed;--shadow-color:#1e293b14;--font-body:"Inter", system-ui, sans-serif;--font-heading:"Outfit", "Inter", system-ui, sans-serif}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;margin:0;padding:0;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}.clean-panel{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 4px 20px var(--shadow-color);border-radius:12px}.mbti-btn{background:var(--bg-secondary);border:2px solid var(--border-color);color:var(--text-primary);cursor:pointer;font-size:1.1rem;font-weight:500;font-family:var(--font-body);text-align:center;border-radius:30px;padding:16px 24px;transition:all .2s;display:inline-block}.mbti-btn:hover{box-shadow:0 4px 12px var(--shadow-color);background:#f1f4f8;transform:translateY(-2px)}.mbti-btn.active-purple{border-color:var(--color-purple);background:var(--color-purple);color:#fff}.mbti-btn.active-green{border-color:var(--color-green);background:var(--color-green);color:#fff}.mbti-btn.active-blue{border-color:var(--color-blue);background:var(--color-blue);color:#fff}.mbti-btn.active-yellow{border-color:var(--color-yellow);background:var(--color-yellow);color:#fff}.option-card{color:var(--text-primary);cursor:pointer;text-align:left;background:#fff;border:2px solid #e1e5eb;border-radius:12px;align-items:center;margin-bottom:12px;padding:16px 20px;font-size:1.05rem;transition:all .15s ease-in-out;display:flex}.option-card:hover{background:#fdfdfd;border-color:#cbd2d9}.option-card.selected{border-color:var(--color-purple);background:#8e70af0d;font-weight:600}.heading-large{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:1rem;font-size:2.5rem;font-weight:700}.heading-medium{font-family:var(--font-heading);color:var(--text-primary);font-size:1.5rem;font-weight:600}.text-muted{color:var(--text-secondary)}.fade-in{animation:.4s ease-out forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.badge{color:var(--text-secondary);background:#f1f4f8;border:1px solid #e1e5eb;border-radius:20px;margin:4px;padding:6px 14px;font-size:.9rem;font-weight:600;display:inline-block}
