/* Estilos Globais */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

body {
    font-family: 'Inter', sans-serif;
    background-color: #f1f5f9; /* slate-100 */
}

/* Cor primária para ícones e destaques */
.icon-primary-color {
    color: #ffdd00;
}

/* Botão de confirmação do SweetAlert */
.btn-swal-confirm {
    color: #1f2937 !important; /* Texto escuro para melhor contraste */
}

/* --- ESTILOS DE AUTENTICAÇÃO (LOGIN / REGISTRO) --- */
.auth-card {
    width: 100%;
    max-width: 420px;
    background-color: #ffffff;
    border-radius: 0.75rem;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    padding: 2.5rem;
}

.form-input:focus {
    outline: none;
    border-color: #ffdd00;
    box-shadow: 0 0 0 3px rgba(255, 221, 0, 0.4);
}

.btn-primary {
    background-color: #ffdd00;
    color: #1f2937;
    font-weight: 600;
}
.btn-primary:hover {
    background-color: #eab308;
}
.btn-primary:disabled {
    background-color: #fde68a;
    cursor: not-allowed;
}

.auth-link {
    font-weight: 500;
    color: #ca8a04;
    text-decoration: none;
}
.auth-link:hover {
    color: #a16207;
    text-decoration: underline;
}

/* --- ESTILOS DO LAYOUT INTERNO (DASHBOARD) --- */

/* Transição do conteúdo principal */
.main-content {
    transition: margin-left 0.3s ease-in-out;
}

/* Sidebar no estado recolhido (desktop) */
.sidebar.recolhido {
    width: 5rem; /* 80px */
}
.sidebar.recolhido .sidebar-text,
.sidebar.recolhido .submenu-arrow,
.sidebar.recolhido .brand-text {
    display: none;
}
.sidebar.recolhido .brand-icon {
    display: inline-block;
}

/* Ajuste da margem do conteúdo principal com base no sidebar (desktop) */
.main-content.sidebar-recolhido {
    margin-left: 5rem;
}
.main-content.sidebar-expandido {
    margin-left: 16rem;
}

/* Estilos para submenus do sidebar */
.sidebar ul li .submenu-list {
    display: none;
    padding-left: 1rem; /* Indentação do submenu */
}
.sidebar ul li.menu-open .submenu-list {
    display: block;
}
.sidebar ul li.menu-open .sidebar-submenu-toggle {
    background-color: #374151; /* Cor de fundo para o item de menu ativo */
    color: #ffdd00;
}
.sidebar ul li.menu-open .submenu-arrow {
    transform: rotate(180deg);
}

/* Efeitos de hover nos ícones e texto do sidebar */
.sidebar-link:hover i,
.sidebar-submenu-toggle:hover i,
.sidebar-link:hover .sidebar-text,
.sidebar-submenu-toggle:hover .sidebar-text {
    color: #ffdd00;
}

/* --- RESPONSIVIDADE (MOBILE) --- */
@media (max-width: 767px) {
    #sidebar {
        transform: translateX(-100%);
        transition: transform 0.3s ease-in-out;
        z-index: 50; /* Garante que o sidebar fique sobre o conteúdo */
    }
    #sidebar.sidebar-mobile-open {
        transform: translateX(0);
    }

    /* O conteúdo principal ocupa 100% da largura no mobile */
    .main-content {
        margin-left: 0 !important;
        transition: none;
    }

    /* Esconde o botão de recolher do desktop */
    #sidebar-toggle {
        display: none;
    }
    
    /* Garante que o sidebar não fique no estado "recolhido" no mobile */
    .sidebar.recolhido {
        width: 16rem; /* Restaura a largura total */
    }
     .sidebar.recolhido .sidebar-text,
    .sidebar.recolhido .submenu-arrow,
    .sidebar.recolhido .brand-text {
        display: inline-block;
    }
}

/* Z-INDEX para garantir a sobreposição correta */
.main-content {
    position: relative;
    z-index: 10;
}


