/* Estrutura Principal */
.app-container { display: flex; height: 100vh; width: 100vw; overflow: hidden; }

/* Sidebar */
.app-sidebar {
    width: 260px; min-width: 260px;
    display: flex; flex-direction: column; transition: all 0.3s;
    z-index: 1050;
}

/* Área Direita */
.app-content-wrapper { flex-grow: 1; display: flex; flex-direction: column; min-width: 0; }

/* Main (O Frame de trabalho) */
.app-main { flex-grow: 1; overflow-y: auto; background: #f4f7f6; padding: 20px; }

/* Footer */
.app-footer { height: 40px; background: #fff; border-top: 1px solid #dee2e6; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; font-size: 0.8rem; }

/* Responsividade Mobile */
@media (max-width: 991px) {
    .app-sidebar { margin-left: -260px; position: absolute; height: 100%; }
    .app-sidebar.active { margin-left: 0; }
}

/* Overlay para fechar o menu no mobile */
.sidebar-overlay {
    display: none; position: fixed; width: 100%; height: 100%;
    background: rgba(0,0,0,0.5); z-index: 1040;
}
.sidebar-overlay.active { display: block; }

.space-tab { margin-left: 20px; }

/* Sidebar Adaptativa e Sólida */
.app-sidebar {
    /* Usa o fundo secundário do tema para dar contraste com o corpo da página */
    background-color: var(--bs-secondary-bg) !important;
    /* Adiciona uma borda sutil para separar visualmente em temas muito claros */
    border-right: 1px solid var(--bs-border-color-translucent);
    /* Garante que não haja transparência em telas menores */
    opacity: 1 !important;
    z-index: 1050;
}

/* Header Adaptativo */
.navbar.bg-arkvo-header {
    background-color: var(--bs-body-bg) !important;
}

/* Ajuste para o conteúdo não "sumir" no branco */
.app-main {
    background-color: var(--bs-tertiary-bg);
}

/* Faz o card parecer mais "elevado" e moderno */
.card {
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: transform 0.2s;
}

/* Remove o sublinhado do botão "Ver mais" */
.btn-link:hover {
    text-decoration: none;
}