/* RESET E COMPORTAMENTO BASE */
body { 
    background-color: #f3f4f6; 
    overscroll-behavior-y: none; 
    -webkit-tap-highlight-color: transparent; 
}

/* ANIMAÇÃO DAS ABAS */
.aba-conteudo { 
    display: none; 
    opacity: 0; 
    transition: opacity 0.3s ease; 
}
.aba-conteudo.ativa { 
    display: block; 
    opacity: 1; 
    animation: slideUp 0.3s ease-out forwards; 
}
@keyframes slideUp { 
    from { transform: translateY(10px); opacity: 0; } 
    to { transform: translateY(0); opacity: 1; } 
}

/* SCROLLBARS PADRONIZADAS (Invisíveis nos menus) */
::-webkit-scrollbar { width: 4px; height: 4px; } 
::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 10px; }
nav::-webkit-scrollbar { display: none; }

/* BOTÃO PADRÃO (Vinho Ativo / Cinza Inativo) */
.btn-padrao { 
    background-color: #4A0E17; 
    color: white; 
    font-weight: 900; 
    transition: transform 0.1s, filter 0.2s, background-color 0.2s, opacity 0.2s; 
    text-transform: uppercase; 
    letter-spacing: 0.05em; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 8px; 
    width: 100%; 
    padding: 12px; 
    border-radius: 12px; 
    font-size: 14px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    border: none; 
    outline: none;
    cursor: pointer;
}
.btn-padrao:disabled {
    background-color: #9ca3af !important; /* Cinza Inativo */
    color: #f3f4f6 !important;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
}
.btn-padrao:active:not(:disabled) { 
    transform: scale(0.96); 
    filter: brightness(0.9); 
}
.btn-padrao:hover:not(:disabled) { 
    background-color: #7a1726; 
}

/* NAVEGAÇÃO INFERIOR */
.nav-btn { 
    color: #9ca3af; /* Cinza padrão */
    transition: color 0.2s, transform 0.1s; 
    background: transparent;
    border: none;
    cursor: pointer;
}
.nav-btn.ativo { color: #4A0E17; /* Vinho Ativo */ }
.nav-btn:active { transform: scale(0.90); }

.glass-effect { 
    background: rgba(255, 255, 255, 0.95); 
    backdrop-filter: blur(10px); 
}

/* INPUTS */
.input-lf { 
    width: 100%; 
    padding: 12px; 
    border: 2px solid #e5e7eb; 
    border-radius: 12px; 
    font-size: 14px; 
    outline: none; 
    transition: border-color 0.2s; 
    background-color: white;
}
.input-lf:focus { border-color: #D4AF37; }