:root { --bg-gradient: linear-gradient(135deg, #0f2027 0%, #203a43 50%, #2c5364 100%); --glass-bg: rgba(32, 58, 67, 0.6); --glass-border: 1px solid rgba(255, 255, 255, 0.15); --text-main: #fff; --accent-color: #00d2ff; }
body { background: var(--bg-gradient); color: var(--text-main); font-family: 'Segoe UI', sans-serif; margin: 0; min-height: 100vh; overflow-x: hidden; }
.wrapper { display: flex; height: 100vh; overflow: hidden; position: relative; z-index: 1; }
.content { flex: 1; padding: 30px; overflow-y: auto; }
.glass-panel { background: var(--glass-bg); backdrop-filter: blur(12px); border: var(--glass-border); border-radius: 16px; box-shadow: 0 8px 32px rgba(0,0,0,0.3); padding: 25px; margin-bottom: 25px; color: white; }
h1,h2,h3 { color: #fff; margin-top:0; } input,select,textarea { width: 100%; padding: 12px; margin: 5px 0 15px 0; border-radius: 8px; border: 1px solid rgba(255,255,255,0.2); background: rgba(0,0,0,0.3); color: #fff; }
button,.btn-primary { background: linear-gradient(90deg, #00d2ff 0%, #3a7bd5 100%); color: #fff; border: none; padding: 12px 25px; border-radius: 50px; font-weight: bold; cursor: pointer; text-decoration: none; display: inline-block; }
.btn-back { background: #4a69bd; color: white; padding: 10px 20px; border-radius: 50px; text-decoration: none; display: inline-block; text-align: center; }
table { width: 100%; border-collapse: collapse; margin-top: 15px; } th { text-align: left; padding: 15px; background: rgba(255,255,255,0.05); color: var(--accent-color); border-bottom: 2px solid rgba(255,255,255,0.1); } td { padding: 15px; border-bottom: 1px solid rgba(255,255,255,0.05); }
/* Sidebar Verde */
.sidebar { width: 130px; background: linear-gradient(180deg, rgba(15, 50, 40, 0.9) 0%, rgba(5, 30, 20, 0.95) 100%) !important; border-right: 1px solid rgba(46,204,113,0.2); display: flex; flex-direction: column; align-items: center; padding-top: 20px; z-index: 100; box-shadow: 5px 0 25px rgba(0,0,0,0.3); }
.sidebar-profile img { width: 60px; height: 60px; border-radius: 50%; border: 2px solid var(--accent-color); margin-bottom: 5px; }
.sidebar-profile span { font-size: 0.75rem; opacity: 0.8; display:block; text-align:center; margin-bottom:20px; }
.icon-3d { font-size: 2.5rem; background: linear-gradient(45deg, #00d2ff 0%, #3a7bd5 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; filter: drop-shadow(0 0 10px rgba(0,210,255,0.5)); }
.sidebar img.icon-3d { width: auto; max-width: 80px; max-height: 70px; margin-bottom: 20px; -webkit-text-fill-color: initial; background: none; }
.menu-item { width: 60px; height: 60px; display: flex; justify-content: center; align-items: center; border-radius: 15px; margin-bottom: 15px; background: rgba(255,255,255,0.05); transition: 0.3s; position: relative; text-decoration: none; border: 1px solid rgba(255,255,255,0.05); }
.menu-item i { font-size: 1.5rem; color: #fff; } .menu-item:hover { background: rgba(46, 204, 113, 0.3) !important; transform: translateY(-5px); box-shadow: 0 0 15px rgba(46, 204, 113, 0.4); }
.link-text { position: absolute; left: 80px; background: #fff; color: #000; padding: 5px 10px; border-radius: 5px; font-weight: bold; font-size: 0.8rem; white-space: nowrap; opacity: 0; visibility: hidden; pointer-events: none; transition: 0.2s; transform: translateX(-10px); }
.menu-item:hover .link-text { opacity: 1; visibility: visible; transform: translateX(0); }
/* Cards */
.dashboard-card { display: flex; align-items: center; gap: 15px; padding: 15px; border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; transition: 0.3s; }
.dashboard-card:hover { transform: translateY(-5px); }
.card-icon-wrapper { width: 50px; height: 50px; border-radius: 50%; display: flex; justify-content: center; align-items: center; font-size: 1.5rem; background: rgba(255,255,255,0.1); }
.card-receita { background: linear-gradient(135deg, rgba(46,204,113,0.2), rgba(39,174,96,0.3)); border-color: rgba(46,204,113,0.4); } .card-receita .card-icon-wrapper { color:#2ecc71; border:1px solid #2ecc71; }
.card-despesa { background: linear-gradient(135deg, rgba(231,76,60,0.2), rgba(192,57,43,0.3)); border-color: rgba(231,76,60,0.4); } .card-despesa .card-icon-wrapper { color:#e74c3c; border:1px solid #e74c3c; }
.card-saldo { background: linear-gradient(135deg, rgba(52,152,219,0.2), rgba(41,128,185,0.3)); border-color: rgba(52,152,219,0.4); } .card-saldo .card-icon-wrapper { color:#3498db; border:1px solid #3498db; }
.card-pagar { background: linear-gradient(135deg, rgba(243,156,18,0.2), rgba(211,84,0,0.3)); border-color: rgba(243,156,18,0.4); } .card-pagar .card-icon-wrapper { color:#f39c12; border:1px solid #f39c12; }
.card-vencer { background: linear-gradient(135deg, rgba(155,89,182,0.2), rgba(142,68,173,0.3)); border-color: rgba(155,89,182,0.4); } .card-vencer .card-icon-wrapper { color:#9b59b6; border:1px solid #9b59b6; }
/* Canvas */
#dashCanvas, #nc { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; }
/* Backup Btns */
.btn-backup-fixed { width: 100%; height: 50px; background: linear-gradient(135deg, #11998e, #38ef7d); border-radius: 8px; color: white; font-weight: bold; display: flex; align-items: center; justify-content: center; gap: 10px; text-decoration: none; box-shadow: 0 4px 6px rgba(0,0,0,0.1); }
.restore-input-group { display: flex; width: 100%; height: 50px; border-radius: 8px; overflow: hidden; box-shadow: 0 4px 6px rgba(0,0,0,0.1); border: 1px solid rgba(255,255,255,0.1); }
.restore-label { flex: 1; background: rgba(0,0,0,0.3); color: #ccc; display: flex; align-items: center; padding-left: 20px; cursor: pointer; }
.restore-btn { width: 60px; height: 100%; background: linear-gradient(135deg, #e74c3c, #c0392b); border: none; color: white; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }
/* User Layout */
.user-form-grid { display: grid; grid-template-columns: 320px 1fr; gap: 30px; align-items: start; }
.perm-item { display: flex; align-items: center; padding: 12px; background: rgba(255,255,255,0.05); border-radius: 10px; cursor: pointer; margin-bottom: 10px; }
.perm-item input { margin: 0 15px 0 0; width: auto; }
/* Report Filter */
.filter-container { background: rgba(0,0,0,0.2); border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; padding: 20px; display: flex; gap: 15px; align-items: flex-end; flex-wrap: wrap; }
.filter-group { flex: 1; min-width: 150px; display: flex; flex-direction: column; }
.filter-group input, .filter-group select { margin: 0; height: 45px; }
.actions-group { display: flex; gap: 10px; margin-left: auto; }
.btn-action { height: 45px; padding: 0 20px; border-radius: 8px; font-weight: bold; display: flex; align-items: center; gap: 8px; border: none; cursor: pointer; color: white; }
.btn-filtrar { background: linear-gradient(135deg, #00d2ff, #3a7bd5); } .btn-pdf { background: linear-gradient(135deg, #11998e, #38ef7d); }
/* Print */
@media print { .sidebar, .no-print, .btn-primary { display: none !important; } body, .glass-panel { background: #fff !important; color: #000 !important; box-shadow: none; border: none; } .report-header { display: flex !important; justify-content: space-between; border-bottom: 2px solid #000; margin-bottom: 20px; } } .report-header { display: none; }

/* --- ATUALIZAÇÃO GRID DASHBOARD (5 CARDS) --- */
.dashboard-grid-5 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

/* Novas Cores de Cards */
/* Laranja (Pendente Geral) */
.card-pendente {
    background: linear-gradient(135deg, rgba(230, 126, 34, 0.15) 0%, rgba(211, 84, 0, 0.3) 100%);
    border-color: rgba(230, 126, 34, 0.3);
}
.card-pendente .card-icon-wrapper { color: #e67e22; background: rgba(230, 126, 34, 0.2); }
.card-pendente p { color: #fff; }

/* Roxo (A Vencer Mês) */
.card-vencer {
    background: linear-gradient(135deg, rgba(155, 89, 182, 0.15) 0%, rgba(142, 68, 173, 0.3) 100%);
    border-color: rgba(155, 89, 182, 0.3);
}
.card-vencer .card-icon-wrapper { color: #9b59b6; background: rgba(155, 89, 182, 0.2); }
.card-vencer p { color: #fff; }

/* Ajuste Responsivo */
@media (max-width: 1200px) {
    .dashboard-grid-5 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
    .dashboard-grid-5 { grid-template-columns: 1fr; }
}

/* --- FIX LAYOUT DASHBOARD --- */

/* Linha com 3 Cards (Cima) */
.grid-row-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Força 3 colunas iguais */
    gap: 20px;
    margin-bottom: 20px;
}

/* Linha com 2 Cards (Baixo) */
.grid-row-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Força 2 colunas iguais */
    gap: 20px;
    margin-bottom: 30px;
}

/* Responsividade (Só vira coluna única em celular muito pequeno) */
@media (max-width: 900px) {
    .grid-row-3, .grid-row-2 {
        grid-template-columns: 1fr; /* Em tablets/celular vira lista */
    }
}

/* --- NOVAS CORES PARA PREVISÃO --- */

/* Receita a Vencer (Turquesa/Ciano Escuro) */
.card-receita-prev {
    background: linear-gradient(135deg, rgba(22, 160, 133, 0.15) 0%, rgba(26, 188, 156, 0.3) 100%);
    border-color: rgba(26, 188, 156, 0.3);
}
.card-receita-prev .card-icon-wrapper { color: #1abc9c; background: rgba(22, 160, 133, 0.2); }
.card-receita-prev p { color: #fff; }

/* Despesa a Vencer (Laranja Alerta) */
.card-despesa-prev {
    background: linear-gradient(135deg, rgba(211, 84, 0, 0.15) 0%, rgba(230, 126, 34, 0.3) 100%);
    border-color: rgba(230, 126, 34, 0.3);
}
.card-despesa-prev .card-icon-wrapper { color: #e67e22; background: rgba(211, 84, 0, 0.2); }
.card-despesa-prev p { color: #fff; }

/* Total Dívida (Roxo/Indigo) */
.card-total-divida {
    background: linear-gradient(135deg, rgba(142, 68, 173, 0.15) 0%, rgba(155, 89, 182, 0.3) 100%);
    border-color: rgba(155, 89, 182, 0.3);
}
.card-total-divida .card-icon-wrapper { color: #9b59b6; background: rgba(142, 68, 173, 0.2); }
.card-total-divida p { color: #fff; }

/* Garante que a linha de baixo também tenha 3 colunas se houver espaço */
.grid-row-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}
@media (max-width: 1000px) {
    .grid-row-3 { grid-template-columns: 1fr; }
}

/* --- BOTÃO RECEBER NEON FLUTUANTE --- */
.btn-receber-neon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 16px;
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
    color: white !important;
    border-radius: 30px; /* Formato Pílula */
    font-size: 0.8rem;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    border: none;
    box-shadow: 0 4px 10px rgba(46, 204, 113, 0.3); /* Sombra suave verde */
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); /* Animação elástica */
    margin-right: 10px;
}

.btn-receber-neon i {
    background: rgba(255, 255, 255, 0.2);
    padding: 4px;
    border-radius: 50%;
    font-size: 0.7rem;
}

.btn-receber-neon:hover {
    transform: translateY(-4px) scale(1.05); /* Sobe e cresce */
    box-shadow: 0 8px 20px rgba(46, 204, 113, 0.5); /* Brilho intenso */
    background: linear-gradient(135deg, #2ecc71 0%, #58d68d 100%); /* Fica mais claro */
}

.btn-receber-neon:active {
    transform: translateY(-1px);
    box-shadow: 0 2px 5px rgba(46, 204, 113, 0.3);
}

/* --- BOTÕES 3D SUSPENSOS (RELATÓRIOS) --- */

/* Classe Base do Botão 3D */
.btn-3d {
    height: 48px; /* Altura exata dos inputs para alinhar */
    padding: 0 25px;
    border: none;
    border-radius: 8px; /* Cantos suaves */
    font-family: 'Segoe UI', sans-serif;
    font-weight: 700;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    position: relative;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); /* Efeito elástico */
    text-decoration: none;
}

/* Efeito Hover (Levitar) */
.btn-3d:hover {
    transform: translateY(-4px);
}
.btn-3d:active {
    transform: translateY(-1px);
}

/* VARIAÇÕES DE CORES E SOMBRAS (GLOW) */

/* Azul Escuro (Atalhos: Atual/Ant) */
.btn-3d-dark {
    background: linear-gradient(135deg, #34495e 0%, #2c3e50 100%);
    box-shadow: 0 4px 0 #1a252f, 0 5px 10px rgba(0,0,0,0.3); /* Borda 3D sólida em baixo */
}
.btn-3d-dark:hover {
    background: linear-gradient(135deg, #3d566e 0%, #34495e 100%);
    box-shadow: 0 6px 0 #1a252f, 0 10px 20px rgba(44, 62, 80, 0.4);
}

/* Ciano Vibrante (Filtrar) */
.btn-3d-cyan {
    background: linear-gradient(135deg, #00d2ff 0%, #3a7bd5 100%);
    box-shadow: 0 4px 0 #2980b9, 0 5px 15px rgba(0, 210, 255, 0.4);
}
.btn-3d-cyan:hover {
    box-shadow: 0 6px 0 #2980b9, 0 10px 25px rgba(0, 210, 255, 0.6);
}

/* Verde Esmeralda (PDF) */
.btn-3d-green {
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
    box-shadow: 0 4px 0 #219150, 0 5px 15px rgba(46, 204, 113, 0.4);
}
.btn-3d-green:hover {
    box-shadow: 0 6px 0 #219150, 0 10px 25px rgba(46, 204, 113, 0.6);
}

/* Ajuste de Margem para os grupos */
.date-shortcuts { margin-bottom: 2px; } /* Pequeno ajuste visual */
.actions-group { margin-bottom: 2px; }

/* --- FIX BOTOES REDONDOS E DATAS --- */

/* Input de Data Compacto */
.input-date-compact {
    width: 160px !important; /* Tamanho fixo ideal para datas */
    flex: none !important;   /* Não estica */
    text-align: center;
}

/* Botão Redondo (Cápsula) */
.btn-round {
    height: 48px;
    border-radius: 50px !important; /* Totalmente redondo */
    padding: 0 25px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: none;
    cursor: pointer;
    transition: 0.3s;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    color: white;
    text-decoration: none;
}

.btn-round:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
}

/* Container de Atalhos (Garante linha horizontal) */
.shortcuts-row {
    display: flex;
    gap: 10px;
    align-items: flex-end; /* Alinha com a base dos inputs */
    margin-right: 15px; /* Espaço antes dos botões de ação */
}

/* Ajuste específico para o Azul Escuro Redondo */
.btn-round-dark {
    background: linear-gradient(135deg, #34495e 0%, #2c3e50 100%);
    border: 1px solid rgba(255,255,255,0.1);
}
.btn-round-dark:hover { background: #3d566e; }

/* Ajuste específico para o Ciano Redondo */
.btn-round-cyan {
    background: linear-gradient(135deg, #00d2ff 0%, #3a7bd5 100%);
}

/* Ajuste específico para o Verde Redondo */
.btn-round-green {
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
}

/* Força o formulário a não quebrar linha desnecessariamente */
.filter-container {
    flex-wrap: nowrap !important; /* Tenta manter na linha */
    overflow-x: auto; /* Se a tela for muito pequena, permite rolar lateralmente em vez de quebrar feio */
    padding-bottom: 10px; /* Espaço para scrollbar se aparecer */
}
/* No mobile, volta a quebrar */
@media (max-width: 1000px) {
    .filter-container { flex-wrap: wrap !important; }
}

/* Botão Arquivar (Roxo/Cinza Neon) */
.btn-archive-neon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(155, 89, 182, 0.2);
    color: #9b59b6;
    border: 1px solid #9b59b6;
    margin-right: 10px;
    transition: 0.3s;
    text-decoration: none;
}
.btn-archive-neon:hover {
    background: #9b59b6;
    color: white;
    box-shadow: 0 0 10px rgba(155, 89, 182, 0.5);
    transform: scale(1.1);
}

/* Link de alternar visualização */
.toggle-archive {
    font-size: 0.85rem;
    color: #bbb;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: 0.3s;
    background: rgba(255,255,255,0.05);
    padding: 5px 10px;
    border-radius: 20px;
}
.toggle-archive:hover {
    background: rgba(255,255,255,0.1);
    color: white;
}
.toggle-archive.active {
    background: rgba(155, 89, 182, 0.2);
    color: #9b59b6;
    border: 1px solid #9b59b6;
}

/* Botão Receber Circular (Estilo Arquivar mas Verde) */
.btn-receber-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(46, 204, 113, 0.2); /* Fundo verde transparente */
    color: #2ecc71; /* Ícone verde neon */
    border: 1px solid #2ecc71; /* Borda fina */
    margin-right: 5px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.btn-receber-circle:hover {
    background: #2ecc71; /* Preenche de verde ao passar mouse */
    color: white; /* Ícone vira branco */
    box-shadow: 0 0 10px rgba(46, 204, 113, 0.6); /* Brilho neon */
    transform: scale(1.1);
}

/* --- MELHORIA VISUAL RELATÓRIOS --- */

/* Grid dos Cards de Resumo */
.summary-hero-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-bottom: 35px;
}

/* Card Gigante (Hero) */
.summary-card-lg {
    padding: 30px 20px;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.1);
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s;
}
.summary-card-lg:hover {
    transform: translateY(-5px);
}

/* Tipografia do Card */
.summary-card-lg h3 {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
    opacity: 0.9;
    z-index: 2;
}
.summary-card-lg .value {
    font-size: 2.2rem;
    font-weight: 800;
    z-index: 2;
    text-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

/* Ícone de Fundo Gigante */
.summary-card-lg i {
    position: absolute;
    right: -20px;
    bottom: -20px;
    font-size: 8rem;
    opacity: 0.1;
    z-index: 1;
    transform: rotate(-15deg);
}

/* Cores Específicas */
.bg-receita { background: linear-gradient(135deg, rgba(46, 204, 113, 0.2) 0%, rgba(39, 174, 96, 0.4) 100%); border-color: rgba(46, 204, 113, 0.3); }
.bg-despesa { background: linear-gradient(135deg, rgba(231, 76, 60, 0.2) 0%, rgba(192, 57, 43, 0.4) 100%); border-color: rgba(231, 76, 60, 0.3); }
.bg-saldo   { background: linear-gradient(135deg, rgba(52, 152, 219, 0.2) 0%, rgba(41, 128, 185, 0.4) 100%); border-color: rgba(52, 152, 219, 0.3); }

/* Ícone Circular na Tabela (Tipo) */
.type-icon-circle {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.type-in {
    background: rgba(46, 204, 113, 0.2);
    color: #2ecc71;
    border: 1px solid #2ecc71;
}
.type-out {
    background: rgba(231, 76, 60, 0.2);
    color: #e74c3c;
    border: 1px solid #e74c3c;
}

/* Ajuste Responsivo */
@media (max-width: 900px) {
    .summary-hero-grid { grid-template-columns: 1fr; }
}

/* --- SIDEBAR SOPHISTICATED GLASS (OVERRIDE) --- */

.sidebar {
    /* Fundo Transparente com Desfoque (Glassmorphism Real) */
    background: rgba(10, 15, 30, 0.4) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    
    /* Borda sutil apenas para separar do conteúdo */
    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: none !important; /* Remove sombra pesada para leveza */
}

/* Área do Perfil - Limpeza Visual */
.sidebar-profile {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}
.sidebar-profile img {
    box-shadow: 0 0 15px rgba(0, 210, 255, 0.3); /* Glow suave na foto */
}

/* --- ÍCONES SUSPENSOS --- */

.menu-item {
    background: transparent !important; /* Começa invisível */
    border: 1px solid transparent !important; /* Sem borda inicial */
    width: 55px;
    height: 55px;
    margin-bottom: 20px;
    border-radius: 18px !important; /* Mais arredondado */
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) !important; /* Efeito elástico */
}

.menu-item i {
    font-size: 1.6rem !important;
    /* Gradiente padrão suave */
    background: linear-gradient(135deg, #a8c0ff 0%, #3f2b96 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
    transition: 0.3s;
}

/* --- EFEITO HOVER (NEON & SUSPENSÃO) --- */

.menu-item:hover {
    /* Fundo Gradiente Suave ao passar o mouse */
    background: linear-gradient(145deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05)) !important;
    
    /* Borda brilhante sutil */
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    
    /* Levitação e Movimento para a direita */
    transform: translateX(8px) scale(1.1) !important;
    
    /* NEON GLOW (A mágica acontece aqui) */
    box-shadow: 
        0 0 20px rgba(0, 210, 255, 0.3),  /* Brilho interno azul */
        0 10px 20px rgba(0, 0, 0, 0.2)    /* Sombra de profundidade */
        !important;
}

.menu-item:hover i {
    /* Ícone fica "Aceso" (Branco Brilhante) */
    background: white;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 8px rgba(0, 210, 255, 0.8));
    transform: scale(1.2);
}

/* Tooltip (Nome do Menu) - Ajuste para o novo design */
.link-text {
    left: 75px !important;
    background: rgba(15, 32, 39, 0.95) !important;
    border: 1px solid rgba(0, 210, 255, 0.3);
    box-shadow: 0 0 15px rgba(0, 210, 255, 0.2);
    font-size: 0.85rem;
    letter-spacing: 0.5px;
}

/* --- SIDEBAR CINZA CLARO / FROSTED GLASS --- */

.sidebar {
    /* Gradiente Cinza Claro/Branco muito sutil e transparente */
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.05) 100%) !important;
    
    /* Desfoque para garantir legibilidade */
    backdrop-filter: blur(25px) !important;
    -webkit-backdrop-filter: blur(25px) !important;
    
    /* Borda mais clara para destacar o vidro */
    border-right: 1px solid rgba(255, 255, 255, 0.15) !important;
    
    /* Sombra leve */
    box-shadow: 5px 0 30px rgba(0, 0, 0, 0.2) !important;
}

/* Ajuste na cor dos ícones inativos para contrastar melhor com o fundo claro */
.menu-item i {
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3)) !important; /* Sombra no ícone para não sumir */
}

/* --- DASHBOARD ULTRA TRANSPARENTE --- */

/* 1. Ajuste do Fundo da Página (Base para a animação) */
body {
    /* Gradiente Radial para dar profundidade (Centro mais claro, bordas escuras) */
    background: radial-gradient(circle at center, #1e3c72 0%, #2a5298 0%, #0f151a 100%) !important;
}

/* 2. Painéis de Vidro (Onde fica o conteúdo) */
.glass-panel {
    /* Fundo Muito Transparente (Apenas 20% de opacidade escura) */
    background: rgba(15, 20, 30, 0.2) !important;
    
    /* Desfoque Alto para garantir leitura do texto */
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    
    /* Borda finíssima e clara */
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    
    /* Sombra suave para separar do fundo */
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1) !important;
    
    color: #fff !important;
}

/* Ajuste nos Títulos para não perderem contraste */
h1, h2, h3 {
    text-shadow: 0 2px 10px rgba(0,0,0,0.5);
}

/* Ajuste nas Tabelas para manter leitura */
td {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}
tr:hover td {
    background: rgba(255, 255, 255, 0.05) !important;
}

/* --- CORREÇÃO DE TEXTO SIDEBAR (BRANCO) --- */

/* 1. Tooltip (Nome que aparece ao passar o mouse) */
.link-text {
    color: #ffffff !important; /* Branco Puro */
    background: rgba(0, 0, 0, 0.85) !important; /* Fundo preto quase sólido para contraste */
    border: 1px solid rgba(255, 255, 255, 0.2) !important; /* Borda fina branca */
    text-shadow: 0 1px 2px rgba(0,0,0,1) !important; /* Sombra no texto */
    font-weight: 600 !important;
    letter-spacing: 0.5px;
}

/* Seta do Tooltip (A pontinha que aponta pro ícone) */
.link-text::before {
    background: rgba(0, 0, 0, 0.85) !important; /* Mesma cor do fundo */
    border-left: 1px solid rgba(255, 255, 255, 0.2); /* Borda combinando */
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

/* 2. Nome do Usuário (Abaixo da foto) */
.sidebar-profile span {
    color: #ffffff !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.9) !important; /* Sombra forte para ler sobre o vidro */
    font-weight: 700 !important;
    margin-top: 5px;
}

/* 3. Ícones Inativos (Garantir que sejam visíveis mas discretos) */
.menu-item i {
    color: rgba(255, 255, 255, 0.8) !important; /* Branco levemente transparente */
    text-shadow: 0 2px 5px rgba(0,0,0,0.3);
}

/* Ícone Ativo/Hover (Branco Brilhante) */
.menu-item:hover i {
    color: #ffffff !important;
    filter: drop-shadow(0 0 5px #fff);
}

/* --- SIDEBAR LARANJA SUNSET (SÓLIDO/MODERNO) --- */

.sidebar {
    /* Gradiente Laranja Profundo (Bloqueia o fundo) */
    background: linear-gradient(180deg, #ff9966 0%, #ff5e62 100%) !important;
    
    /* Remove transparência excessiva para focar no menu */
    opacity: 1 !important;
    
    /* Sombra projetada para separar do conteúdo */
    box-shadow: 10px 0 30px rgba(0, 0, 0, 0.4) !important;
    
    /* Borda sutil para acabamento */
    border-right: 1px solid rgba(255, 255, 255, 0.2) !important;
}

/* Ajuste do Hover dos Ícones para combinar com o Laranja */
.menu-item:hover {
    /* Fundo branco translúcido */
    background: rgba(255, 255, 255, 0.25) !important;
    border-color: rgba(255, 255, 255, 0.6) !important;
    
    /* Brilho quente/solar */
    box-shadow: 
        0 0 20px rgba(255, 255, 255, 0.4), 
        0 5px 15px rgba(0,0,0,0.2) !important;
}

/* Ícones inativos ficam brancos para contraste máximo */
.menu-item i {
    color: rgba(255, 255, 255, 0.9) !important;
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.2)) !important;
}

/* Ícone Ativo/Hover */
.menu-item:hover i {
    color: #fff !important;
    background: none !important; /* Remove gradiente interno do ícone para ficar branco puro */
    -webkit-text-fill-color: #fff !important;
}

/* --- SIDEBAR CINZA ESCURO (PROFISSIONAL) --- */

.sidebar {
    /* Gradiente Cinza Chumbo/Grafite */
    background: linear-gradient(180deg, #2c3e50 0%, #1a252f 100%) !important;
    
    /* Opacidade total para esconder a animação de fundo */
    opacity: 1 !important;
    backdrop-filter: none !important;
    
    /* Borda sutil para separar */
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
    
    /* Sombra forte para dar profundidade */
    box-shadow: 5px 0 15px rgba(0, 0, 0, 0.5) !important;
}

/* Hover dos Ícones no fundo escuro */
.menu-item:hover {
    /* Fundo levemente mais claro */
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    
    /* Mantém o efeito de brilho/suspensão */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3) !important;
    transform: translateX(5px) !important;
}

/* Ícones padrão (Branco Gelo) */
.menu-item i {
    color: #ecf0f1 !important;
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.5)) !important;
}

/* Perfil */
.sidebar-profile {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* --- ÍCONES COLORIDOS INDIVIDUAIS --- */

/* Reset básico para garantir que o gradiente pegue */
.menu-item i {
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    font-weight: bold !important;
    filter: drop-shadow(0 2px 3px rgba(0,0,0,0.3)); /* Sombra para destacar do fundo cinza */
    transition: transform 0.3s;
}

/* 1. Dashboard (Azul Ciano) */
a[href*="dashboard.php"] i {
    background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);
}

/* 2. A Receber (Verde Esmeralda) */
a[href*="receber.php"] i {
    background: linear-gradient(135deg, #2af598 0%, #009efd 100%);
}

/* 3. A Pagar (Vermelho Rosado) */
a[href*="pagar.php"] i {
    background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 99%, #feada6 100%);
}

/* 4. Relatórios (Roxo Ametista) */
a[href*="relatorios.php"] i {
    background: linear-gradient(135deg, #a18cd1 0%, #fbc2eb 100%);
}

/* 5. Clientes (Laranja Solar) */
a[href*="clientes.php"] i {
    background: linear-gradient(135deg, #f6d365 0%, #fda085 100%);
}

/* 6. Fornecedores (Amarelo Ouro) */
a[href*="fornecedores.php"] i {
    background: linear-gradient(135deg, #f09819 0%, #edde5d 100%);
}

/* 7. Almoxarifado (Bronze/Cobre) */
a[href*="almoxarifado.php"] i {
    background: linear-gradient(135deg, #e6b980 0%, #eacda3 100%);
}

/* 8. Categorias (Verde Lima) */
a[href*="categorias.php"] i {
    background: linear-gradient(135deg, #d4fc79 0%, #96e6a1 100%);
}

/* 9. Usuários (Azul Indigo) */
a[href*="usuarios.php"] i {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

/* 10. Configurações (Prata/Cinza) */
a[href*="configuracoes.php"] i {
    background: linear-gradient(135deg, #e0e0e0 0%, #bdc3c7 100%);
}

/* 11. Sair (Vermelho Alerta) */
a[href*="logout.php"] i {
    background: linear-gradient(135deg, #ff416c 0%, #ff4b2b 100%);
}

/* Efeito Hover Individual (Aumenta o brilho da cor específica) */
.menu-item:hover i {
    transform: scale(1.2);
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.6));
    -webkit-text-fill-color: transparent !important; /* Mantém o gradiente */
}

/* --- DATAS COLORIDAS E ALINHADAS --- */

/* Ajuste de Espaçamento (Baixar a caixa) */
.filter-group label {
    margin-bottom: 12px !important; /* Aumenta espaço entre texto e input */
    font-size: 0.8rem;
    letter-spacing: 1px;
}

/* Base do Input de Data */
.input-date-design {
    border-width: 2px !important; /* Borda mais grossa */
    font-weight: bold !important;
    background: rgba(0, 0, 0, 0.2) !important; /* Fundo mais escuro para contraste */
    transition: 0.3s;
    padding-left: 15px !important; /* Espaço interno */
}

/* INÍCIO: Tema Verde Neon */
.input-date-start {
    border-color: #2ecc71 !important;
    color: #2ecc71 !important;
    box-shadow: 0 4px 10px rgba(46, 204, 113, 0.1);
}
.input-date-start:focus {
    box-shadow: 0 0 15px rgba(46, 204, 113, 0.3) !important;
}
/* Pinta o ícone do calendário de Verde */
.input-date-start::-webkit-calendar-picker-indicator {
    filter: invert(67%) sepia(66%) saturate(464%) hue-rotate(97deg) brightness(87%) contrast(85%);
    transform: scale(1.3); /* Ícone maior */
    cursor: pointer;
    background-color: transparent;
}

/* FIM: Tema Rosa/Vermelho Neon */
.input-date-end {
    border-color: #ff5e62 !important;
    color: #ff5e62 !important;
    box-shadow: 0 4px 10px rgba(255, 94, 98, 0.1);
}
.input-date-end:focus {
    box-shadow: 0 0 15px rgba(255, 94, 98, 0.3) !important;
}
/* Pinta o ícone do calendário de Rosa */
.input-date-end::-webkit-calendar-picker-indicator {
    filter: invert(57%) sepia(38%) saturate(4644%) hue-rotate(325deg) brightness(101%) contrast(101%);
    transform: scale(1.3); /* Ícone maior */
    cursor: pointer;
    background-color: transparent;
}

/* --- BOTÃO VERDE NEON (ESTILO RECEBER) --- */
.btn-neon-green {
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
    color: white !important;
    border: none;
    border-radius: 50px; /* Pílula */
    padding: 10px 30px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 0.9rem;
    cursor: pointer;
    box-shadow: 0 5px 15px rgba(46, 204, 113, 0.3);
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.btn-neon-green:hover {
    transform: translateY(-4px) scale(1.02);
    box-shadow: 0 10px 25px rgba(46, 204, 113, 0.5); /* Glow forte */
    background: linear-gradient(135deg, #2ecc71 0%, #58d68d 100%);
}

.btn-neon-green i {
    font-size: 1.1rem;
}

/* --- MENU ALMOXARIFADO 3D --- */

/* Botão Base (Vidro Limpo) */
.btn-menu-3d {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    color: #eee;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9rem;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    overflow: hidden;
}

/* Estado Ativo (Fundo Iluminado) */
.btn-menu-3d.active {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
    color: #fff;
}

/* Hover (Levitar) */
.btn-menu-3d:hover {
    transform: translateY(-3px);
    background: rgba(255, 255, 255, 0.15);
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
}

/* ÍCONES 3D COLORIDOS (A Mágica) */
.btn-menu-3d i {
    font-size: 1.3rem;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 2px 3px rgba(0,0,0,0.3)); /* Sombra 3D */
    transition: transform 0.3s;
}

.btn-menu-3d:hover i {
    transform: scale(1.2);
    filter: drop-shadow(0 0 5px rgba(255,255,255,0.5));
}

/* Cores Específicas dos Ícones */

/* Produtos (Bronze/Laranja) */
.ico-prod { background: linear-gradient(135deg, #e6b980 0%, #eacda3 100%); }

/* Movimentar (Azul Ciano) */
.ico-mov { background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%); }

/* Histórico (Roxo) */
.ico-hist { background: linear-gradient(135deg, #a18cd1 0%, #fbc2eb 100%); }

/* Categorias (Verde) */
.ico-cat { background: linear-gradient(135deg, #d4fc79 0%, #96e6a1 100%); }

/* Relatórios (Vermelho) */
.ico-rel { background: linear-gradient(135deg, #ff9a9e 0%, #fecfef 100%); }


/* --- FORMULÁRIO DE USUÁRIO CENTRALIZADO --- */
.user-form-center {
    max-width: 900px;
    margin: 0 auto;
    padding: 20px;
}

/* Container de Permissões */
.perm-grid-3d {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

/* O Card da Permissão (Label que age como botão) */
.perm-card-3d {
    position: relative;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    padding: 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 140px;
}

/* Esconde o checkbox real */
.perm-card-3d input {
    display: none;
}

/* O Ícone 3D dentro do card */
.perm-card-3d i {
    font-size: 2.5rem;
    margin-bottom: 15px;
    transition: 0.3s;
    filter: drop-shadow(0 5px 5px rgba(0,0,0,0.3));
    /* Gradiente padrão (Cinza/Inativo) */
    background: linear-gradient(135deg, #7f8c8d 0%, #bdc3c7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Texto da Permissão */
.perm-card-3d span {
    font-size: 0.9rem;
    font-weight: 600;
    color: #bdc3c7;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: 0.3s;
}

/* --- ESTADOS (QUANDO SELECIONADO) --- */

/* Hover */
.perm-card-3d:hover {
    background: rgba(255, 255, 255, 0.08);
    transform: translateY(-5px);
}

/* Checkbox Marcado (Ativa o Card) */
.perm-card-3d input:checked + div {
    /* Nada aqui, usamos seletor pai :has se suportado ou logica direta no i */
}

/* Estilo ATIVO (Quando o input dentro está checked) - Truque CSS */
.perm-card-3d:has(input:checked) {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.5);
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    transform: translateY(-5px);
}

/* CORES DOS ÍCONES QUANDO ATIVOS */

/* Financeiro (Verde/Azul) */
.perm-card-3d:has(input[value="financeiro"]:checked) i {
    background: linear-gradient(135deg, #2af598 0%, #009efd 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 10px rgba(42, 245, 152, 0.6));
    transform: scale(1.2);
}
.perm-card-3d:has(input[value="financeiro"]:checked) { border-color: #2af598; box-shadow: 0 0 15px rgba(42, 245, 152, 0.2); }

/* Almoxarifado (Bronze) */
.perm-card-3d:has(input[value="almoxarifado"]:checked) i {
    background: linear-gradient(135deg, #e6b980 0%, #eacda3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 10px rgba(230, 185, 128, 0.6));
    transform: scale(1.2);
}
.perm-card-3d:has(input[value="almoxarifado"]:checked) { border-color: #e6b980; box-shadow: 0 0 15px rgba(230, 185, 128, 0.2); }

/* Relatórios (Roxo) */
.perm-card-3d:has(input[value="relatorios"]:checked) i {
    background: linear-gradient(135deg, #a18cd1 0%, #fbc2eb 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 10px rgba(161, 140, 209, 0.6));
    transform: scale(1.2);
}
.perm-card-3d:has(input[value="relatorios"]:checked) { border-color: #a18cd1; box-shadow: 0 0 15px rgba(161, 140, 209, 0.2); }

/* Pessoas (Laranja) */
.perm-card-3d:has(input[value="pessoas"]:checked) i {
    background: linear-gradient(135deg, #f6d365 0%, #fda085 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 10px rgba(246, 211, 101, 0.6));
    transform: scale(1.2);
}
.perm-card-3d:has(input[value="pessoas"]:checked) { border-color: #f6d365; box-shadow: 0 0 15px rgba(246, 211, 101, 0.2); }

/* Texto Ativo */
.perm-card-3d:has(input:checked) span {
    color: #fff;
    text-shadow: 0 0 5px rgba(255,255,255,0.5);
}

/* --- AJUSTE MASCOTES 3D REALISTAS --- */
.profile-preview, .sidebar-profile img {
    background: radial-gradient(circle at center, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0.05) 70%);
    border: 2px solid rgba(255,255,255,0.3) !important;
    backdrop-filter: blur(5px);
    box-shadow: 
        0 0 20px rgba(0, 210, 255, 0.4),
        inset 0 0 20px rgba(255,255,255,0.1);
}

.mascote-option {
    background: rgba(255,255,255,0.1);
    border-radius: 50%;
    padding: 2px;
}
.mascote-option:hover {
    background: rgba(255,255,255,0.3);
}

/* AJUSTE FINAL VISUAL MASCOTES */
.profile-preview, .sidebar-profile img {
    background: transparent !important; /* Remove fundo antigo pra não conflitar */
    border: 3px solid rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0 0 25px rgba(255, 255, 255, 0.2) !important;
    padding: 2px; /* Espaço entre borda e imagem */
}

/* --- AJUSTE FINO DE TAMANHO DOS AVATARES --- */

/* Imagem Principal (Preview) */
.profile-preview-lg {
    width: 110px !important; /* Era 150px */
    height: 110px !important;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0 0 20px rgba(0, 210, 255, 0.3) !important;
    background: radial-gradient(circle at center, rgba(255,255,255,0.1) 0%, transparent 70%);
}

/* Opções de Seleção (Bolinhas pequenas) */
.mascote-option {
    width: 40px !important; /* Era 50px */
    height: 40px !important;
    cursor: pointer;
    transition: transform 0.2s;
    border: 2px solid transparent;
}

.mascote-option:hover {
    transform: scale(1.15);
}

.mascote-option.selected {
    border-color: #00d2ff;
    box-shadow: 0 0 10px #00d2ff;
}

/* --- BOTÕES DE STATUS DE USUÁRIO --- */
.btn-power {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid;
    margin-right: 5px;
    transition: all 0.3s;
    background: rgba(0,0,0,0.2);
    text-decoration: none;
}

/* Estado: Ativo (Botão para Desativar - Vermelho) */
.btn-power-off {
    border-color: #ff5e62;
    color: #ff5e62;
}
.btn-power-off:hover {
    background: #ff5e62;
    color: white;
    box-shadow: 0 0 10px rgba(255, 94, 98, 0.6);
}

/* Estado: Inativo (Botão para Ativar - Verde) */
.btn-power-on {
    border-color: #2ecc71;
    color: #2ecc71;
}
.btn-power-on:hover {
    background: #2ecc71;
    color: white;
    box-shadow: 0 0 10px rgba(46, 204, 113, 0.6);
}

/* Visual da linha de usuário inativo */
.row-inactive td {
    opacity: 0.5; /* Deixa o texto apagado */
    filter: grayscale(100%); /* Tira a cor */
}
/* Mantém os botões da linha inativa visíveis e coloridos */
.row-inactive td:last-child {
    opacity: 1;
    filter: none;
}

/* --- REAJUSTE DE TAMANHOS DA SIDEBAR --- */

/* 1. Logo do Sistema (Destaque Maior) */
.sidebar-logo-container {
    margin-bottom: 10px;
    text-align: center;
    width: 100%;
    padding: 0 10px;
}

.sidebar-logo-container img, 
.sidebar-logo-container .icon-3d {
    width: 110px !important; /* Aumentado */
    max-width: 100% !important;
    height: auto !important;
    max-height: 110px !important;
    filter: drop-shadow(0 5px 15px rgba(0,0,0,0.3));
    transition: transform 0.3s;
}

.sidebar-logo-container:hover img {
    transform: scale(1.05);
}

/* 2. Perfil do Usuário (Menor e Discreto) */
.sidebar-profile {
    margin-bottom: 25px !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    width: 80%; /* Linha divisória menor */
}

.sidebar-profile img {
    width: 45px !important; /* Diminuído (era 60px) */
    height: 45px !important;
    border: 2px solid rgba(255, 255, 255, 0.5) !important; /* Borda mais fina */
    box-shadow: 0 0 10px rgba(0,0,0,0.2) !important;
    margin-bottom: 5px !important;
}

.sidebar-profile span {
    font-size: 0.7rem !important; /* Fonte menor */
    opacity: 0.9;
    font-weight: 600 !important;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

/* --- AJUSTE FINO SIDEBAR (LOGO MAIOR) --- */

/* 1. Alargar a Sidebar para caber a logo maior */
.sidebar {
    width: 160px !important; /* Era 130px */
}

/* 2. Logo Gigante */
.sidebar-logo-container {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 10px 0;
    margin-bottom: 5px;
}

.sidebar-logo-container img, 
.sidebar-logo-container .icon-3d {
    width: 140px !important;      /* Aumentado de 110px para 140px */
    max-height: 140px !important;
    object-fit: contain;
    filter: drop-shadow(0 5px 10px rgba(0,0,0,0.4)) !important;
}

/* 3. Alinhamento Perfeito do Perfil (Mascote + Nome) */
.sidebar-profile {
    display: flex !important;
    flex-direction: column !important; /* Um embaixo do outro */
    align-items: center !important;    /* Centraliza horizontalmente */
    justify-content: center !important;
    text-align: center !important;
    width: 90% !important; /* Linha divisória mais larga */
    margin: 0 auto 20px auto !important;
}

.sidebar-profile img {
    width: 50px !important; /* Tamanho confortável */
    height: 50px !important;
    margin: 0 auto 8px auto !important; /* Margem inferior para separar do nome */
    display: block;
}

.sidebar-profile span {
    width: 100%;
    display: block;
    text-align: center;
    margin: 0 !important;
    line-height: 1.2;
}

/* Ajuste dos itens do menu para a nova largura */
.menu-item {
    width: 60px !important; /* Mantém o botão quadrado */
    margin-left: auto !important;
    margin-right: auto !important; /* Centraliza na barra mais larga */
}

/* Ajuste do Tooltip para a nova largura da sidebar */
.link-text {
    left: 90px !important; /* Afasta mais para a direita pois a barra cresceu */
}

/* --- NOTIFICAÇÃO DE SAUDAÇÃO (TOAST) --- */
.welcome-toast {
    position: fixed;
    top: -100px; /* Começa escondido pra cima */
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    
    /* Estilo Vidro Premium */
    background: rgba(15, 20, 30, 0.95);
    backdrop-filter: blur(15px);
    border: 1px solid #00d2ff;
    box-shadow: 0 0 30px rgba(0, 210, 255, 0.3);
    
    padding: 15px 40px;
    border-radius: 50px;
    
    display: flex;
    align-items: center;
    gap: 15px;
    
    transition: top 0.8s cubic-bezier(0.68, -0.55, 0.27, 1.55); /* Efeito elástico */
}

.welcome-toast.show {
    top: 30px; /* Desce para a tela */
}

.welcome-icon {
    font-size: 1.5rem;
    color: #00d2ff;
    animation: wave 2s infinite;
}

.welcome-text h4 {
    margin: 0;
    color: #fff;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.welcome-text p {
    margin: 0;
    color: #ccc;
    font-size: 0.85rem;
}

@keyframes wave {
    0%, 100% { transform: rotate(0deg); }
    25% { transform: rotate(-20deg); }
    75% { transform: rotate(20deg); }
}

/* --- ESTILO GOOGLE DRIVE --- */
.gdrive-card {
    grid-column: 1 / -1; /* Ocupa largura total */
    background: rgba(66, 133, 244, 0.1) !important;
    border: 1px solid rgba(66, 133, 244, 0.3) !important;
    position: relative;
    overflow: hidden;
}

.gdrive-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    border-bottom: 1px solid rgba(66, 133, 244, 0.2);
    padding-bottom: 15px;
}

.gdrive-status {
    font-size: 0.8rem;
    font-weight: bold;
    padding: 5px 15px;
    border-radius: 20px;
    text-transform: uppercase;
}
.status-connected { background: rgba(46, 204, 113, 0.2); color: #2ecc71; border: 1px solid #2ecc71; }
.status-disconnected { background: rgba(255, 94, 98, 0.2); color: #ff5e62; border: 1px solid #ff5e62; }

/* Botão Google */
.btn-google {
    background: #4285F4;
    color: white;
    border: none;
    width: 100%;
    padding: 15px;
    border-radius: 8px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
    transition: 0.3s;
    text-transform: uppercase;
    text-decoration: none;
}
.btn-google:hover { background: #357ae8; box-shadow: 0 5px 15px rgba(66, 133, 244, 0.4); }

/* --- BOTÕES 3D CONFIGURAÇÕES --- */

/* Classe Base 3D */
.btn-3d-config {
    width: 100%;
    height: 50px;
    border: none;
    border-radius: 12px;
    font-family: 'Segoe UI', sans-serif;
    font-weight: 800;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: relative;
    transition: all 0.1s;
    text-decoration: none;
    margin-top: 10px; /* Espaço do label */
}

/* Efeito de Clique (Afunda) */
.btn-3d-config:active {
    transform: translateY(4px);
    box-shadow: none !important; /* Remove a sombra dura */
}

/* VARIAÇÕES DE COR (FUNDO + SOMBRA DURA) */

/* Azul (Conectar Google) */
.btn-3d-blue {
    background: #4a90e2;
    box-shadow: 0 5px 0 #2c5aa0, 0 10px 10px rgba(0,0,0,0.3);
}
.btn-3d-blue:hover { background: #5da0ef; }

/* Laranja (Salvar Chaves) */
.btn-3d-orange {
    background: #f39c12;
    box-shadow: 0 5px 0 #c27c0e, 0 10px 10px rgba(0,0,0,0.3);
}
.btn-3d-orange:hover { background: #f1c40f; }

/* Ciano (Logo) */
.btn-3d-cyan {
    background: #00d2ff;
    box-shadow: 0 5px 0 #009acb, 0 10px 10px rgba(0,0,0,0.3);
}
.btn-3d-cyan:hover { background: #33d9ff; }

/* Verde (Backup Download) */
.btn-3d-green {
    background: #2ecc71;
    box-shadow: 0 5px 0 #219150, 0 10px 10px rgba(0,0,0,0.3);
}
.btn-3d-green:hover { background: #4cd137; }

/* Vermelho (Upload/Restore) */
.btn-3d-red {
    background: #e74c3c;
    box-shadow: 0 5px 0 #c0392b, 0 10px 10px rgba(0,0,0,0.3);
}
.btn-3d-red:hover { background: #ff5e62; }


/* --- INPUT DE ARQUIVO CUSTOMIZADO (GLASS BAR) --- */
.file-upload-wrapper {
    display: flex;
    align-items: flex-end; /* Alinha com o botão pela base */
    gap: 15px;
}

.file-name-display {
    flex: 1;
    height: 50px;
    background: rgba(0, 0, 0, 0.3);
    border: 2px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    display: flex;
    align-items: center;
    padding: 0 20px;
    color: #ccc;
    font-size: 0.9rem;
    font-style: italic;
    white-space: nowrap;
    overflow: hidden;
    margin-top: 10px; /* Alinha com botões que tem margin */
    box-shadow: inset 0 2px 5px rgba(0,0,0,0.5); /* Profundidade */
}

/* O botão que ativa o input file */
.btn-file-trigger {
    width: auto !important;
    padding: 0 25px;
    margin-top: 10px;
}

/* --- BOTÕES ÍCONE DE VIDRO (ESTILO SIDEBAR) --- */

.btn-glass-icon {
    width: 55px;
    height: 55px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 18px; /* Arredondado igual sidebar */
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: white;
    cursor: pointer;
    position: relative;
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    text-decoration: none;
    margin-right: 10px;
}

.btn-glass-icon i {
    font-size: 1.5rem;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
    transition: 0.3s;
}

/* Tooltip (Nome da Ação) - Aparece na Direita */
.tooltip-text {
    position: absolute;
    left: 65px; /* Ao lado do botão */
    background: rgba(0, 0, 0, 0.9);
    color: #fff;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 0.8rem;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-10px);
    transition: 0.2s;
    border: 1px solid rgba(255,255,255,0.2);
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
    font-weight: 600;
    z-index: 100;
}
/* Seta do tooltip */
.tooltip-text::before {
    content: ''; position: absolute; left: -4px; top: 50%; transform: translateY(-50%) rotate(45deg);
    width: 8px; height: 8px; background: rgba(0,0,0,0.9); border-left: 1px solid rgba(255,255,255,0.2); border-bottom: 1px solid rgba(255,255,255,0.2);
}

/* Hover Effect (Igual Sidebar) */
.btn-glass-icon:hover {
    background: linear-gradient(145deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05));
    border-color: rgba(255, 255, 255, 0.3);
    transform: translateY(-5px); /* Flutua pra cima */
}
.btn-glass-icon:hover .tooltip-text {
    opacity: 1; visibility: visible; transform: translateX(0);
}
.btn-glass-icon:hover i {
    background: white; /* Fica branco brilhante */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.8));
    transform: scale(1.2);
}

/* CORES ESPECÍFICAS PARA OS ÍCONES (Normal State) */

/* Salvar (Laranja) */
.ico-save { background: linear-gradient(135deg, #f09819 0%, #edde5d 100%); }
.btn-glass-icon:hover .ico-save { filter: drop-shadow(0 0 10px #f09819) !important; }

/* Google/Conectar (Azul) */
.ico-google { background: linear-gradient(135deg, #4285F4 0%, #2c5aa0 100%); }
.btn-glass-icon:hover .ico-google { filter: drop-shadow(0 0 10px #4285F4) !important; }

/* Download/Backup (Verde) */
.ico-down { background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%); }
.btn-glass-icon:hover .ico-down { filter: drop-shadow(0 0 10px #2ecc71) !important; }

/* Upload/Restore (Vermelho) */
.ico-up { background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%); }
.btn-glass-icon:hover .ico-up { filter: drop-shadow(0 0 10px #e74c3c) !important; }

/* Câmera/Logo (Ciano) */
.ico-cam { background: linear-gradient(135deg, #00d2ff 0%, #3a7bd5 100%); }
.btn-glass-icon:hover .ico-cam { filter: drop-shadow(0 0 10px #00d2ff) !important; }


/* --- LAYOUT CONFIGURAÇÕES COMPACTO --- */

/* Grid Principal 2x2 */
.config-grid-2x2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}

/* Cabeçalho do Card (Sempre visível) */
.config-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    margin-bottom: 15px;
    min-height: 40px;
}

.config-header h3 {
    margin: 0;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Área do Formulário (Oculta por padrão) */
.config-body-hidden {
    display: none;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Botão Toggle (Pequeno e Redondo) */
.btn-toggle-config {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
}
.btn-toggle-config:hover {
    background: var(--accent-color);
    box-shadow: 0 0 10px var(--accent-color);
}

/* Responsividade */
@media (max-width: 900px) {
    .config-grid-2x2 { grid-template-columns: 1fr; }
}

/* --- BOTÕES LIQUID GLASS (ESTILO SIDEBAR) --- */

.btn-liquid {
    width: 60px;
    height: 60px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    
    /* Vidro Transparente Base */
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(5px);
    border-radius: 18px;
    
    color: rgba(255, 255, 255, 0.8);
    cursor: pointer;
    position: relative;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    text-decoration: none;
    margin: 5px;
}

.btn-liquid i {
    font-size: 1.6rem;
    transition: 0.3s;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
}

/* Efeito Hover Genérico (Levitar) */
.btn-liquid:hover {
    transform: translateY(-5px);
    background: rgba(255, 255, 255, 0.15);
}

.btn-liquid:hover i {
    color: #fff;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.8));
    transform: scale(1.1);
}

/* --- VARIAÇÕES NEON (HOVER) --- */

/* Salvar (Laranja/Ouro) */
.liquid-save:hover {
    border-color: #f39c12;
    box-shadow: 0 0 20px rgba(243, 156, 18, 0.4), inset 0 0 10px rgba(243, 156, 18, 0.1);
}
.liquid-save:hover i { color: #f39c12; }

/* Google (Azul) */
.liquid-blue:hover {
    border-color: #4285F4;
    box-shadow: 0 0 20px rgba(66, 133, 244, 0.4), inset 0 0 10px rgba(66, 133, 244, 0.1);
}
.liquid-blue:hover i { color: #4285F4; }

/* Download/Sucesso (Verde) */
.liquid-green:hover {
    border-color: #2ecc71;
    box-shadow: 0 0 20px rgba(46, 204, 113, 0.4), inset 0 0 10px rgba(46, 204, 113, 0.1);
}
.liquid-green:hover i { color: #2ecc71; }

/* Perigo/Upload (Vermelho) */
.liquid-red:hover {
    border-color: #ff5e62;
    box-shadow: 0 0 20px rgba(255, 94, 98, 0.4), inset 0 0 10px rgba(255, 94, 98, 0.1);
}
.liquid-red:hover i { color: #ff5e62; }

/* Câmera/Logo (Ciano) */
.liquid-cyan:hover {
    border-color: #00d2ff;
    box-shadow: 0 0 20px rgba(0, 210, 255, 0.4), inset 0 0 10px rgba(0, 210, 255, 0.1);
}
.liquid-cyan:hover i { color: #00d2ff; }


/* --- TOOLTIP (NOME AO PASSAR MOUSE) --- */
.liq-tooltip {
    position: absolute;
    bottom: -35px; /* Aparece embaixo do botão */
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    background: rgba(0, 0, 0, 0.9);
    color: #fff;
    padding: 5px 10px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: bold;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: 0.2s;
    pointer-events: none;
    border: 1px solid rgba(255,255,255,0.2);
    z-index: 100;
}
/* Seta do tooltip */
.liq-tooltip::before {
    content: ''; position: absolute; top: -4px; left: 50%; transform: translateX(-50%) rotate(45deg);
    width: 8px; height: 8px; background: rgba(0,0,0,0.9); border-left: 1px solid rgba(255,255,255,0.2); border-top: 1px solid rgba(255,255,255,0.2);
}

.btn-liquid:hover .liq-tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

/* --- CARD COMPACTO (LOGO & BACKUP) --- */
.card-compact {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    height: 100%; /* Ocupa altura disponível */
}

.card-compact-info {
    display: flex;
    align-items: center;
    gap: 15px;
}

.card-compact-icon {
    font-size: 2.5rem;
    opacity: 0.5;
}

.card-compact-text h4 {
    margin: 0;
    font-size: 1rem;
    color: #fff;
}
.card-compact-text p {
    margin: 0;
    font-size: 0.8rem;
    color: #ccc;
}
/* Ícone IXC */
.ico-ixc { background: linear-gradient(135deg, #FF6600 0%, #333 100%); }
.btn-glass-icon:hover .ico-ixc { filter: drop-shadow(0 0 10px #FF6600) !important; }
