/* SaaS compatibility layer for the Gentelella V4 design system. */
:root {
    --saas-accent: #1abb9c;
    --saas-accent-dark: #169f85;
    --saas-focus: rgba(26, 187, 156, .35);
}

html[data-theme="dark"] body,
html[data-theme="dark"] body.gentelella-body {
    color-scheme: dark;
}

.gentelella-body {
    min-height: 100vh;
    background: var(--body-bg, #f5f7fb);
    color: var(--text, #1e2633);
}

.gentelella-body .app-shell-content {
    min-height: calc(100vh - 120px);
}

.gentelella-body .legacy-content,
.gentelella-body .container-fluid,
.gentelella-body .container {
    color: var(--text, #1e2633);
}

.gentelella-body .text-muted,
.gentelella-body .text-secondary,
.gentelella-body .text-secondary-emphasis,
.gentelella-body .text-gray-600 {
    color: var(--text-secondary, #626d7d) !important;
}

.gentelella-body .text-white,
.gentelella-body .text-light {
    color: var(--text, #1e2633) !important;
}

html[data-theme="dark"] .gentelella-body .text-white,
html[data-theme="dark"] .gentelella-body .text-light {
    color: var(--text, #e6ebf2) !important;
}

.gentelella-body .bg-body,
.gentelella-body .bg-light,
.gentelella-body .bg-white {
    background-color: var(--bg-surface, #fff) !important;
}

.gentelella-body .card,
.gentelella-body .modal-content,
.gentelella-body .dropdown-menu,
.gentelella-body .futuristic-card,
.gentelella-body .plan-card,
.gentelella-body .testimonial-card {
    background: var(--bg-surface, #fff);
    color: var(--text, #1e2633);
    border-color: var(--border-color, #e6e7eb);
    box-shadow: var(--shadow-card, 0 2px 4px rgba(30, 38, 51, .04));
}

.gentelella-body .form-control,
.gentelella-body .form-select,
.gentelella-body input,
.gentelella-body select,
.gentelella-body textarea {
    background-color: var(--bg-surface, #fff);
    color: var(--text, #1e2633);
    border-color: var(--border-color, #e6e7eb);
}

.gentelella-body .form-control:focus,
.gentelella-body .form-select:focus,
.gentelella-body input:focus,
.gentelella-body select:focus,
.gentelella-body textarea:focus {
    border-color: var(--saas-accent);
    box-shadow: 0 0 0 3px var(--saas-focus);
}

.gentelella-body .table {
    --bs-table-bg: var(--bg-surface, #fff);
    --bs-table-color: var(--text, #1e2633);
    --bs-table-border-color: var(--border-color-light, #eff0f3);
}

html[data-theme="dark"] .gentelella-body .table {
    --bs-table-striped-bg: rgba(255, 255, 255, .025);
    --bs-table-hover-bg: rgba(26, 187, 156, .08);
}

.gentelella-body .btn-primary,
.gentelella-body .btn-success,
.gentelella-body .btn-neon {
    background: var(--saas-accent);
    border-color: var(--saas-accent);
    color: #fff;
}

.gentelella-body .btn-primary:hover,
.gentelella-body .btn-success:hover,
.gentelella-body .btn-neon:hover {
    background: var(--saas-accent-dark);
    border-color: var(--saas-accent-dark);
    color: #fff;
}

.gentelella-body .alert {
    border-color: var(--border-color, #e6e7eb);
    background: var(--bg-surface-secondary, #f9fafb);
    color: var(--text, #1e2633);
}

.gentelella-body .widget-card {
    height: 100%;
    padding: var(--space-5, 24px);
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border-color, #e6e7eb);
    border-radius: var(--radius-lg, 8px);
    box-shadow: var(--shadow-card, 0 2px 4px rgba(30, 38, 51, .04));
}

.gentelella-body .widget-card .widget-label {
    color: var(--text-muted, #7e8896);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.gentelella-body .widget-card .widget-value {
    margin-top: 6px;
    color: var(--text, #1e2633);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.1;
}

.gentelella-body .widget-card .widget-icon {
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius, 6px);
    background: var(--primary-lt, rgba(26, 187, 156, .06));
    color: var(--primary, #1abb9c);
}

.gentelella-body [data-widget-tabs] [data-widget-tab] {
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: var(--text-muted, #7e8896);
    cursor: pointer;
    font: inherit;
    padding: 8px 12px;
}

.gentelella-body [data-widget-tabs] [data-widget-tab].active {
    border-bottom-color: var(--primary, #1abb9c);
    color: var(--text, #1e2633);
    font-weight: 600;
}

.gentelella-body .theme-toggle {
    border: 1px solid var(--border-color, #e6e7eb);
    background: var(--bg-surface, #fff);
    color: var(--text-secondary, #626d7d);
}

.gentelella-body .theme-toggle:hover {
    border-color: var(--primary, #1abb9c);
    color: var(--primary, #1abb9c);
}

.gentelella-body .theme-icon-light { display: none; }
.gentelella-body .theme-icon-dark { display: inline-block; }
html[data-theme="dark"] .gentelella-body .theme-icon-light { display: inline-block; }
html[data-theme="dark"] .gentelella-body .theme-icon-dark { display: none; }

.gentelella-body .sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 90;
    background: rgba(15, 22, 35, .52);
}

.gentelella-body .sidebar-backdrop[hidden] { display: none; }

.gentelella-body .app-footer {
    border-top: 1px solid var(--border-color-light, #eff0f3);
    color: var(--text-muted, #7e8896);
    font-size: 12px;
    padding: 18px 0 24px;
}

@media (max-width: 768px) {
    .gentelella-body .app-shell-content { min-height: auto; }
    .gentelella-body .widget-card { padding: var(--space-4, 16px); }
}

.gentelella-body .skip-link {
    position: fixed;
    left: 12px;
    top: 8px;
    z-index: 200;
    transform: translateY(-150%);
    padding: 8px 12px;
    border-radius: 6px;
    background: var(--text, #1e2633);
    color: var(--bg-surface, #fff);
    font-size: 12px;
    text-decoration: none;
}

.gentelella-body .skip-link:focus { transform: translateY(0); }

.gentelella-body .user-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 120;
    min-width: 210px;
    padding: 8px;
    border: 1px solid var(--border-color, #e6e7eb);
    border-radius: var(--radius-lg, 8px);
    background: var(--bg-surface, #fff);
    box-shadow: 0 12px 32px rgba(30, 38, 51, .14);
}

.gentelella-body .user-menu[hidden] { display: none; }
.gentelella-body .user-menu-head { padding: 8px 10px 10px; border-bottom: 1px solid var(--border-color-light, #eff0f3); }
.gentelella-body .user-menu-head strong,
.gentelella-body .user-menu-head small { display: block; }
.gentelella-body .user-menu-head strong { color: var(--text, #1e2633); font-size: 13px; }
.gentelella-body .user-menu-head small { color: var(--text-muted, #7e8896); font-size: 11px; margin-top: 3px; }
.gentelella-body .user-menu a { display: block; padding: 8px 10px; border-radius: 5px; color: var(--text-secondary, #626d7d); font-size: 12px; text-decoration: none; }
.gentelella-body .user-menu a:hover { background: var(--primary-lt, rgba(26, 187, 156, .06)); color: var(--primary, #1abb9c); }
.gentelella-body .user-menu a.danger:hover { background: rgba(220, 53, 69, .08); color: #c53b49; }

.gentelella-body .brand-icon {
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: var(--primary, #1abb9c);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
}

.gentelella-body .superadmin-body .brand-icon { background: #d9534f; }
.gentelella-body .superadmin-body .sidebar { border-right-color: rgba(217, 83, 79, .18); }
.gentelella-body .superadmin-body .nav-sublink.active { color: #d9534f; background: rgba(217, 83, 79, .08); }
.gentelella-body .superadmin-body .nav-sublink.active::before { background: #d9534f; }
.gentelella-body .superadmin-body .theme-toggle:hover { border-color: #d9534f; color: #d9534f; }

@media (min-width: 769px) {
    .gentelella-body.sidebar-rail .main { margin-left: 64px; }
    .gentelella-body.sidebar-rail .topbar { left: 64px; }
}

/* Compatibilidade para páginas antigas que ainda usam o grid Bootstrap `row g-*`. */
.gentelella-body .main .row.col-4,
.gentelella-body .main .row.col-2,
.gentelella-body .main .row.col-3 { width: 100%; max-width: none; flex: none; }
.gentelella-body .main .row[class*="g-"] { display: flex; flex-wrap: wrap; gap: 0; margin-left: -8px; margin-right: -8px; }
.gentelella-body .main .row[class*="g-"] > [class*="col-"] { min-width: 0; padding-left: 8px; padding-right: 8px; margin-bottom: 16px; }
.gentelella-body .main .row[class*="g-"] > .col-xl-3 { flex: 0 0 25%; max-width: 25%; }
.gentelella-body .main .row[class*="g-"] > .col-xl-4 { flex: 0 0 33.333%; max-width: 33.333%; }
.gentelella-body .main .row[class*="g-"] > .col-xl-6 { flex: 0 0 50%; max-width: 50%; }
.gentelella-body .main .row[class*="g-"] > .col-lg-5 { flex: 0 0 41.666%; max-width: 41.666%; }
.gentelella-body .main .row[class*="g-"] > .col-lg-7 { flex: 0 0 58.333%; max-width: 58.333%; }
.gentelella-body .main .row[class*="g-"] > .col-lg-12 { flex: 0 0 100%; max-width: 100%; }
.gentelella-body .main .row[class*="g-"] > .col-md-6 { flex: 0 0 50%; max-width: 50%; }
.gentelella-body .main .row[class*="g-"] > .col-md-4 { flex: 0 0 33.333%; max-width: 33.333%; }

@media (max-width: 1100px) {
    .gentelella-body .main .row.col-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
    .gentelella-body .main .row[class*="g-"] > [class*="col-"],
    .gentelella-body .main .row[class*="g-"] > .col-xl-3,
    .gentelella-body .main .row[class*="g-"] > .col-xl-4,
    .gentelella-body .main .row[class*="g-"] > .col-xl-6,
    .gentelella-body .main .row[class*="g-"] > .col-lg-5,
    .gentelella-body .main .row[class*="g-"] > .col-lg-7,
    .gentelella-body .main .row[class*="g-"] > .col-md-6,
    .gentelella-body .main .row[class*="g-"] > .col-md-4 { flex: 0 0 100%; max-width: 100%; }
    .gentelella-body .main .row.col-4,
    .gentelella-body .main .row.col-2 { grid-template-columns: minmax(0, 1fr); }
}


/* Ajustes de navegação pública e compactação da página de planos. */
.public-body .public-header {
    background: #1a2332;
    border-bottom-color: rgba(255, 255, 255, .08);
}

.public-body .public-brand,
.public-body .public-nav a {
    color: #c5d0dc;
}

.public-body .public-brand:hover,
.public-body .public-nav a:hover,
.public-body .public-nav a.active {
    color: #fff;
}

.public-body .public-nav a:hover,
.public-body .public-nav a.active {
    background: rgba(255, 255, 255, .08);
}

.public-body .public-header .theme-toggle {
    border-color: rgba(255, 255, 255, .16);
    background: rgba(255, 255, 255, .04);
    color: #c5d0dc;
}

.public-body .public-header .theme-toggle:hover {
    border-color: var(--primary);
    color: var(--primary);
    background: rgba(255, 255, 255, .08);
}

html[data-theme="dark"] .public-body .public-header {
    background: rgba(20, 29, 43, .92);
    border-bottom-color: rgba(255, 255, 255, .08);
}

.gentelella-body .plans-page-content {
    margin-top: 0;
}

.gentelella-body .plans-page-content > .app-container {
    padding-top: 0 !important;
}

.gentelella-body .legacy-content .app-toolbar {
    padding-top: 0 !important;
    padding-bottom: 8px !important;
    margin-top: 0 !important;
}

.gentelella-body .legacy-content .app-content {
    padding-top: 0 !important;
}


/* Estabilidade dos editores e modais Bootstrap no shell Gentelella. */
.gentelella-body .modal {
    z-index: 1055;
}

.gentelella-body .modal-backdrop {
    z-index: 1050;
    background-color: #0f1623;
}

.gentelella-body .modal-backdrop.show {
    opacity: .52;
}

.gentelella-body .modal-content {
    background-color: var(--bg-surface, #fff);
    opacity: 1;
    pointer-events: auto;
}

.gentelella-body .modal:not(.show) {
    pointer-events: none;
}

.gentelella-body .modal.show {
    pointer-events: auto;
}

.gentelella-body.modal-open {
    overflow: hidden;
}

html[data-theme="dark"] .gentelella-body .modal-content {
    background-color: var(--bg-surface, #1a2332);
}

@media (prefers-reduced-motion: reduce) {
    .gentelella-body .modal.fade,
    .gentelella-body .modal.fade .modal-dialog {
        transition: none;
    }
}


/* Correção definitiva do menu: sidebar e barra superior permanecem escuras no modo claro. */
.gentelella-body .sidebar,
.gentelella-body .topbar {
    background: #1a2332 !important;
    color: #c5d0dc;
    border-color: rgba(255, 255, 255, .08) !important;
}
.gentelella-body .topbar .breadcrumb,
.gentelella-body .topbar .breadcrumb .current,
.gentelella-body .topbar .sidebar-toggle,
.gentelella-body .topbar .tb-btn {
    color: #c5d0dc !important;
}
.gentelella-body .topbar .breadcrumb .sep { color: rgba(255, 255, 255, .38) !important; }
.gentelella-body .topbar .sidebar-toggle:hover,
.gentelella-body .topbar .tb-btn:hover {
    background: rgba(255, 255, 255, .08) !important;
    color: #fff !important;
}
.gentelella-body .sidebar .nav-label { color: rgba(197, 208, 220, .56); }
.gentelella-body .sidebar .nav-link,
.gentelella-body .sidebar .nav-sublink { color: #9fb0c1; }
.gentelella-body .sidebar .nav-link:hover,
.gentelella-body .sidebar .nav-sublink:hover,
.gentelella-body .sidebar .nav-tree.has-active > .nav-toggle,
.gentelella-body .sidebar .nav-sublink.active { color: #fff; }
.gentelella-body .sidebar .nav-link:hover,
.gentelella-body .sidebar .nav-sublink:hover { background: rgba(255, 255, 255, .08); }
.gentelella-body .sidebar .nav-sublink.active { background: rgba(26, 187, 156, .16); }
html[data-theme="dark"] .gentelella-body .sidebar,
html[data-theme="dark"] .gentelella-body .topbar { background: #141d2b !important; }

/* Modal sempre opaco e acima do menu; backdrop órfão não pode capturar cliques. */
.gentelella-body .modal-dialog { position: relative; z-index: 1; }
.gentelella-body .modal-content,
.gentelella-body .modal-content .modal-header,
.gentelella-body .modal-content .modal-body,
.gentelella-body .modal-content .modal-footer {
    background-color: #ffffff !important;
    color: #172033 !important;
    opacity: 1 !important;
}
.gentelella-body .modal-backdrop { background-color: #0f1623 !important; }
.gentelella-body .modal-backdrop.show { opacity: .62 !important; }
.gentelella-body .modal:not(.show) { display: none; pointer-events: none; }
.gentelella-body .modal.show { display: block; pointer-events: auto; }
html[data-theme="dark"] .gentelella-body .modal-content,
html[data-theme="dark"] .gentelella-body .modal-content .modal-header,
html[data-theme="dark"] .gentelella-body .modal-content .modal-body,
html[data-theme="dark"] .gentelella-body .modal-content .modal-footer { background-color: #1a2332 !important; }
.gentelella-body.modal-open { overflow: hidden !important; }
.gentelella-body.modal-open .main,
.gentelella-body.modal-open .page-wrapper { opacity: 1 !important; }

/* Correção final: os modais são movidos para o body pelo runtime antes da abertura. */
.gentelella-body > .modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2000 !important;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
}
.gentelella-body > .modal:not(.show) { display: none !important; pointer-events: none !important; }
.gentelella-body > .modal.show { display: block !important; pointer-events: auto !important; opacity: 1 !important; }
.gentelella-body > .modal > .modal-dialog { position: relative; z-index: 2001 !important; }
.gentelella-body > .modal-backdrop { z-index: 1990 !important; pointer-events: auto !important; }
.gentelella-body > .modal-backdrop.show { opacity: .62 !important; }
.gentelella-body .modal-content,
.gentelella-body .modal-header,
.gentelella-body .modal-body,
.gentelella-body .modal-footer { opacity: 1 !important; }
.gentelella-body .sidebar,
.gentelella-body .topbar { background: #1a2332 !important; }
html[data-theme="dark"] .gentelella-body .sidebar,
html[data-theme="dark"] .gentelella-body .topbar { background: #141d2b !important; }
.gentelella-body .sidebar-backdrop[hidden] { display: none !important; opacity: 0 !important; pointer-events: none !important; }
.gentelella-body.modal-open .sidebar-backdrop { pointer-events: none !important; }
.gentelella-body.modal-open .sidebar { z-index: 80 !important; }
.gentelella-body.modal-open .topbar { z-index: 80 !important; }
.gentelella-body.modal-open .main { opacity: 1 !important; }


/* Refresh visual tenant: tema escuro consistente, grids e telas de edição. */
.gentelella-body {
    --ui-page-bg: #f4f7fb;
    --ui-surface: #ffffff;
    --ui-surface-soft: #f8fafc;
    --ui-border: #e5eaf0;
    --ui-text: #172033;
    --ui-muted: #687487;
    --ui-shadow: 0 12px 32px rgba(30, 42, 60, .07);
}
html[data-theme="dark"] .gentelella-body {
    --ui-page-bg: #0d1522;
    --ui-surface: #152033;
    --ui-surface-soft: #101a2a;
    --ui-border: #263750;
    --ui-text: #e8eef7;
    --ui-muted: #9aa9bc;
    --ui-shadow: 0 16px 36px rgba(0, 0, 0, .22);
}
.gentelella-body,
.gentelella-body .main { background: var(--ui-page-bg) !important; color: var(--ui-text); }
.gentelella-body .page-wrapper { max-width: 1480px; margin: 0 auto; }
.gentelella-body .legacy-content { padding-bottom: 24px; }
.gentelella-body .text-secondary-emphasis,
.gentelella-body .text-secondary { color: var(--ui-muted) !important; }
.gentelella-body .card,
.gentelella-body .ui-card {
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: 14px !important;
    box-shadow: var(--ui-shadow) !important;
    color: var(--ui-text);
}
.gentelella-body .card-header,
.gentelella-body .ui-card-header {
    background: var(--ui-surface-soft) !important;
    border-bottom: 1px solid var(--ui-border) !important;
    color: var(--ui-text);
    padding: 16px 20px;
}
.gentelella-body .card-body { padding: 20px; }
.gentelella-body .form-label { color: var(--ui-text); font-weight: 600; font-size: 13px; margin-bottom: 7px; }
.gentelella-body .form-text { color: var(--ui-muted) !important; font-size: 12px; }
.gentelella-body .form-control,
.gentelella-body .form-select,
.gentelella-body input,
.gentelella-body select,
.gentelella-body textarea {
    min-height: 42px;
    border-radius: 9px !important;
    background: var(--ui-surface) !important;
    color: var(--ui-text) !important;
    border-color: var(--ui-border) !important;
}
.gentelella-body textarea { min-height: 112px; }
.gentelella-body .form-control::placeholder,
.gentelella-body textarea::placeholder { color: var(--ui-muted); opacity: .8; }
.gentelella-body .btn { border-radius: 9px; font-weight: 600; }
.gentelella-body .btn-light,
.gentelella-body .btn-light-primary,
.gentelella-body .btn-light-danger,
.gentelella-body .btn-outline-light {
    background: var(--ui-surface-soft) !important;
    border-color: var(--ui-border) !important;
    color: var(--ui-text) !important;
}
.gentelella-body .btn-light:hover,
.gentelella-body .btn-light-primary:hover,
.gentelella-body .btn-outline-light:hover {
    background: rgba(26, 187, 156, .12) !important;
    border-color: var(--saas-accent) !important;
    color: var(--saas-accent-dark) !important;
}
.gentelella-body .ui-page-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}
.gentelella-body .ui-page-head h1,
.gentelella-body .ui-page-head h2 { color: var(--ui-text); letter-spacing: -.02em; }
.gentelella-body .ui-page-head p { color: var(--ui-muted); max-width: 720px; }
.gentelella-body .ui-page-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gentelella-body .ui-form-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(290px, .9fr);
    gap: 20px;
    align-items: start;
}
.gentelella-body .ui-form-stack { display: grid; gap: 20px; }
.gentelella-body .ui-fields-2,
.gentelella-body .ui-fields-3 {
    display: grid;
    gap: 14px;
}
.gentelella-body .ui-fields-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gentelella-body .ui-fields-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gentelella-body .ui-field-full { grid-column: 1 / -1; }
.gentelella-body .ui-section-title { color: var(--ui-text); font-size: 15px; font-weight: 700; margin: 0; }
.gentelella-body .ui-section-description { color: var(--ui-muted); font-size: 12px; margin: 4px 0 0; }
.gentelella-body .ui-check-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.gentelella-body .ui-check-item {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 58px;
    padding: 11px 12px;
    border: 1px solid var(--ui-border);
    border-radius: 10px;
    background: var(--ui-surface-soft);
    color: var(--ui-text);
}
.gentelella-body .ui-check-item:hover { border-color: var(--saas-accent); background: rgba(26, 187, 156, .07); }
.gentelella-body .ui-check-item input { min-height: auto; accent-color: var(--saas-accent); }
.gentelella-body .ui-check-item small { color: var(--ui-muted) !important; }
.gentelella-body .ui-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid var(--ui-border);
    border-radius: 12px;
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow);
}
.gentelella-body .ui-stat-card { min-height: 112px; display: flex; flex-direction: column; justify-content: space-between; }
.gentelella-body .ui-stat-card .ui-stat-label { color: var(--ui-muted); font-size: 12px; font-weight: 600; }
.gentelella-body .ui-stat-card .ui-stat-value { color: var(--ui-text); font-size: 28px; font-weight: 800; line-height: 1; }
.gentelella-body .ui-table-wrap { overflow-x: auto; border: 1px solid var(--ui-border); border-radius: 12px; }
.gentelella-body .ui-table-wrap .table { margin-bottom: 0; min-width: 760px; }
.gentelella-body .ui-table-wrap thead th { background: var(--ui-surface-soft); color: var(--ui-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; white-space: nowrap; }
.gentelella-body .ui-table-wrap tbody td { color: var(--ui-text); border-color: var(--ui-border); }
.gentelella-body .ui-empty { padding: 42px 20px; text-align: center; color: var(--ui-muted); }
.gentelella-body .sidebar,
.gentelella-body .topbar { background: #172335 !important; color: #c8d4e2; }
html[data-theme="dark"] .gentelella-body .sidebar,
html[data-theme="dark"] .gentelella-body .topbar { background: #0b1320 !important; }
.gentelella-body .sidebar .nav-tree.open .nav-sub { visibility: visible; }
.gentelella-body .sidebar .nav-sublink.active { color: #fff !important; background: rgba(26, 187, 156, .22) !important; }
@media (max-width: 1000px) {
    .gentelella-body .ui-form-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
    .gentelella-body .ui-page-head { flex-direction: column; }
    .gentelella-body .ui-page-actions { width: 100%; }
    .gentelella-body .ui-page-actions .btn { flex: 1 1 auto; }
    .gentelella-body .ui-fields-2,
    .gentelella-body .ui-fields-3,
    .gentelella-body .ui-check-grid { grid-template-columns: 1fr; }
    .gentelella-body .card-body { padding: 16px; }
}


/* Sidebar tenant: o menu deve ser escuro em ambos os temas e em todos os estados. */
.gentelella-body .sidebar,
.gentelella-body .sidebar::before,
.gentelella-body .sidebar::after,
.gentelella-body .sidebar-brand,
.gentelella-body .sidebar-nav,
.gentelella-body .sidebar-footer,
.gentelella-body .nav-group,
.gentelella-body .nav-tree,
.gentelella-body .nav-sub,
.gentelella-body .nav-sub-inner {
    background-color: #172335 !important;
    color: #c8d4e2 !important;
}
.gentelella-body .sidebar .brand-name,
.gentelella-body .sidebar .nav-text,
.gentelella-body .sidebar .nav-chev,
.gentelella-body .sidebar .nav-label,
.gentelella-body .sidebar .nav-link,
.gentelella-body .sidebar .nav-sublink,
.gentelella-body .sidebar .sidebar-user-info,
.gentelella-body .sidebar .sidebar-user-info .name,
.gentelella-body .sidebar .sidebar-user-info .role {
    color: #c8d4e2 !important;
}
.gentelella-body .sidebar button.nav-link,
.gentelella-body .sidebar .nav-link,
.gentelella-body .sidebar .nav-sublink {
    background: transparent !important;
    border-color: transparent !important;
}
.gentelella-body .sidebar .nav-link:hover,
.gentelella-body .sidebar .nav-sublink:hover,
.gentelella-body .sidebar .nav-tree.has-active > .nav-toggle,
.gentelella-body .sidebar .nav-sublink.active {
    background-color: rgba(255, 255, 255, .09) !important;
    color: #ffffff !important;
}
.gentelella-body .sidebar .nav-sublink.active {
    background-color: rgba(26, 187, 156, .22) !important;
}
html[data-theme="dark"] .gentelella-body .sidebar,
html[data-theme="dark"] .gentelella-body .sidebar::before,
html[data-theme="dark"] .gentelella-body .sidebar::after,
html[data-theme="dark"] .gentelella-body .sidebar-brand,
html[data-theme="dark"] .gentelella-body .sidebar-nav,
html[data-theme="dark"] .gentelella-body .sidebar-footer,
html[data-theme="dark"] .gentelella-body .nav-group,
html[data-theme="dark"] .gentelella-body .nav-tree,
html[data-theme="dark"] .gentelella-body .nav-sub,
html[data-theme="dark"] .gentelella-body .nav-sub-inner {
    background-color: #0b1320 !important;
}
@media (max-width: 700px) {
    .gentelella-body .sidebar,
    .gentelella-body .sidebar-nav,
    .gentelella-body .nav-sub,
    .gentelella-body .nav-sub-inner { background-color: #172335 !important; }
    html[data-theme="dark"] .gentelella-body .sidebar,
    html[data-theme="dark"] .gentelella-body .sidebar-nav,
    html[data-theme="dark"] .gentelella-body .nav-sub,
    html[data-theme="dark"] .gentelella-body .nav-sub-inner { background-color: #0b1320 !important; }
}

/* Social IA multi-provedor: layout lateral, microinterações e movimento acessível. */
.gentelella-body .social-card,
.gentelella-body .social-ai-admin-card,
.gentelella-body .social-result {
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.gentelella-body .social-card:hover,
.gentelella-body .social-ai-admin-card:hover {
    transform: translateY(-3px);
    border-color: rgba(26, 187, 156, .55) !important;
    box-shadow: 0 16px 34px rgba(8, 20, 35, .16);
}
.gentelella-body .social-ai-admin-card {
    height: 100%;
    padding: 16px;
    border: 1px solid var(--ui-border);
    border-radius: 14px;
    background: linear-gradient(145deg, var(--ui-surface), var(--ui-surface-soft));
}
.gentelella-body .social-ai-admin-grid {
    display: grid;
    grid-template-columns: minmax(170px, .82fr) minmax(0, 1.18fr);
    gap: 16px;
    align-items: start;
}
.gentelella-body .social-ai-credentials,
.gentelella-body .social-ai-models {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--ui-border);
    border-radius: 11px;
    background: rgba(255, 255, 255, .025);
}
.gentelella-body .social-ai-admin-card select,
.gentelella-body .social-ai-admin-card input {
    width: 100%;
}
.gentelella-body .social-reveal {
    animation: socialReveal .46s ease both;
}
.gentelella-body .social-reveal:nth-child(2) { animation-delay: .05s; }
.gentelella-body .social-reveal:nth-child(3) { animation-delay: .1s; }
.gentelella-body .social-reveal:nth-child(4) { animation-delay: .15s; }
.gentelella-body .social-card .card-header strong,
.gentelella-body .social-ai-admin-card > .d-flex strong {
    letter-spacing: -.01em;
}
.gentelella-body .social-card .form-label,
.gentelella-body .social-ai-admin-card .form-label {
    transition: color .2s ease;
}
.gentelella-body .social-card:focus-within .form-label,
.gentelella-body .social-ai-admin-card:focus-within .form-label {
    color: var(--saas-accent-dark) !important;
}
@keyframes socialReveal {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 850px) {
    .gentelella-body .social-ai-admin-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    .gentelella-body .social-reveal,
    .gentelella-body .social-card,
    .gentelella-body .social-ai-admin-card { animation: none !important; transition: none !important; }
}

/* Grupos e Comunidades: não permitir que o estado rail persistido esconda a navegação no desktop. */
@media (min-width: 769px) {
    .gentelella-body.sidebar-keep-expanded .sidebar { width: 248px !important; transform: translateX(0) !important; visibility: visible !important; opacity: 1 !important; }
    .gentelella-body.sidebar-keep-expanded .main { margin-left: 248px !important; }
    .gentelella-body.sidebar-keep-expanded .topbar { left: 248px !important; }
    .gentelella-body.sidebar-keep-expanded .sidebar .nav-text,
    .gentelella-body.sidebar-keep-expanded .sidebar .sidebar-user-info { display: block !important; opacity: 1 !important; visibility: visible !important; }
}

/* Correção visual global — compatibilidade Bootstrap/Gentelella. */
.gentelella-body .modal-backdrop {
    display: block !important;
    z-index: 1050 !important;
    opacity: .55 !important;
    pointer-events: auto !important;
}
.gentelella-body > .modal,
.gentelella-body .modal.show {
    display: block !important;
    z-index: 1060 !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.gentelella-body .modal:not(.show) { pointer-events: none !important; }
.gentelella-body .modal.show { pointer-events: auto !important; }
.gentelella-body .modal .modal-dialog {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    position: relative !important;
    z-index: 1061 !important;
}
.gentelella-body .modal .modal-content,
.gentelella-body .modal .modal-header,
.gentelella-body .modal .modal-body,
.gentelella-body .modal .modal-footer {
    opacity: 1 !important;
    visibility: visible !important;
}
.gentelella-body .modal .modal-content {
    background: var(--ui-surface, #fff) !important;
    color: var(--ui-text, #172033) !important;
    border: 1px solid var(--ui-border, #e5eaf0) !important;
}
.gentelella-body .btn-outline-light,
.gentelella-body .btn-light,
.gentelella-body .btn-light-primary,
.gentelella-body .btn-light-danger {
    background: var(--ui-surface-soft, #f8fafc) !important;
    border: 1px solid var(--ui-border, #e5eaf0) !important;
    color: var(--ui-text, #172033) !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.gentelella-body .btn-outline-light:hover,
.gentelella-body .btn-light:hover,
.gentelella-body .btn-light-primary:hover,
.gentelella-body .btn-light-danger:hover {
    background: rgba(26, 187, 156, .14) !important;
    border-color: var(--saas-accent, #1abb9c) !important;
    color: var(--saas-accent-dark, #169f85) !important;
}
.gentelella-body .main a:not(.btn),
.gentelella-body .main .page-link,
.gentelella-body .modal a:not(.btn) {
    color: var(--ui-text, #172033) !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.gentelella-body .main a:not(.btn):hover,
.gentelella-body .main .page-link:hover,
.gentelella-body .modal a:not(.btn):hover {
    color: var(--saas-accent-dark, #169f85) !important;
}
html[data-theme="dark"] .gentelella-body .main a:not(.btn),
html[data-theme="dark"] .gentelella-body .main .page-link,
html[data-theme="dark"] .gentelella-body .modal a:not(.btn) {
    color: var(--ui-text, #e8eef7) !important;
}
