@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;900&display=swap');

body { 
    font-family: 'Inter', sans-serif; 
    background-color: #09090b; /* zinc-950 */
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
    background-size: 30px 30px;
}

/* ========================================== */
/* BARRA DE ROLAGEM                           */
/* ========================================== */
.custom-scrollbar::-webkit-scrollbar { 
    width: 6px; 
}
.custom-scrollbar::-webkit-scrollbar-track { 
    background: rgba(255, 255, 255, 0.05); 
}
.custom-scrollbar::-webkit-scrollbar-thumb { 
    background: #facc15; /* Amarelo ZZZ */
    border-radius: 10px; 
}

/* ========================================== */
/* ANIMAÇÕES                                  */
/* ========================================== */
.fade-in { 
    animation: fadeIn 0.5s ease-out forwards; 
}

@keyframes fadeIn { 
    from { opacity: 0; transform: translateY(10px); } 
    to { opacity: 1; transform: translateY(0); } 
}

/* Animação de Acerto - Pulinho com Brilho Amarelo (ZZZ) */
.correct-anim {
    animation: jumpPop 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

@keyframes jumpPop {
    0% { 
        transform: scale(1) translateY(0); 
        filter: brightness(1) drop-shadow(0 0 0px rgba(250, 204, 21, 0)); 
    }
    50% { 
        transform: scale(1.05) translateY(-5px); 
        /* Brilho Amarelo temático do ZZZ */
        filter: brightness(1.2) drop-shadow(0 0 25px rgba(250, 204, 21, 0.8)); 
    }
    100% { 
        transform: scale(1) translateY(0); 
        filter: brightness(1) drop-shadow(0 0 0px rgba(250, 204, 21, 0)); 
    }
}

/* ========================================== */
/* AJUSTES DE LAYOUT E SCANLINES              */
/* ========================================== */
.image-slot {
    position: relative;
    width: 100%;
    height: 350px;
    margin-bottom: 2rem;
    border-radius: 1.5rem;
    overflow: hidden;
    
    /* Fundo escuro com as scanlines POR TRÁS do personagem */
    background-color: #18181b; /* zinc-900 */
    background-image: linear-gradient(rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.25) 50%);
    background-size: 100% 4px;
    
    display: flex;
    align-items: center;
    justify-content: center;
    border: 4px solid #27272a; /* zinc-800 */
    box-shadow: inset 0 2px 4px 0 rgba(0, 0, 0, 0.5);
}

/* Garante que a imagem do personagem fique por cima do fundo listrado */
.image-slot img {
    position: relative;
    z-index: 10;
}

@media (min-width: 768px) { 
    .image-slot { height: 400px; } 
}