body { background-color: #030712; color: #f8fafc; overflow-x: hidden; }

/* EFEITOS PREMIUM GLASSMORPHISM */
.glass-card {
    background: linear-gradient(145deg, rgba(31, 41, 55, 0.4), rgba(17, 24, 39, 0.8));
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
}

/* TEXTO BRILHANTE ANIMADO */
@keyframes shimmer { 0% { background-position: -200% center; } 100% { background-position: 200% center; } }
.text-shimmer {
    background: linear-gradient(90deg, #fff 0%, #38bdf8 50%, #fff 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shimmer 4s linear infinite;
}

.fade-in { animation: fadeIn 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

/* CONTROLE DE SEÇÕES */
#quiz-section, #loading-section, #result-section { display: none; }
.quiz-step { display: none; }
.quiz-step.active { display: block; animation: fadeIn 0.4s; }

/* OPÇÕES DO QUIZ CUSTOMIZADAS */
.option-card {
    background: rgba(31, 41, 55, 0.3);
    border: 2px solid rgba(55, 65, 81, 0.6);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.option-card:hover { border-color: rgba(14, 165, 233, 0.4); background: rgba(31, 41, 55, 0.7); transform: translateY(-2px); }

.option-card.selected {
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.15), rgba(37, 99, 235, 0.25));
    border-color: #0ea5e9;
    box-shadow: 0 10px 30px rgba(14, 165, 233, 0.2);
}
.option-card.selected .check-circle { background-color: #0ea5e9; border-color: #0ea5e9; color: #fff; transform: scale(1.1); }
.option-card .check-circle { transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); }

/* BARRAS DE PROGRESSO DO RESULTADO */
.indicator-bar-bg { background: rgba(255,255,255,0.05); height: 8px; border-radius: 10px; overflow: hidden; width: 100%; margin-top: 8px; }
.indicator-bar-fill { height: 100%; border-radius: 10px; transition: width 1.5s cubic-bezier(0.65, 0, 0.35, 1); width: 0%; }