/* Shell global: topstrip, tema, reforço mobile */
:root {
  --app-brand-mid: #5a8f2a;
  --app-accent: #8cbf26;
  --app-accent-soft: #ecfdf3;
  --app-topbar-bg: #ffffff;
  --app-topbar-border: #e5e7eb;
}

[data-app-theme='dark'] {
  --app-dark-bg: #09090b;
  --app-dark-surface: #18181b;
  --app-dark-surface-mid: #1f1f23;
  --app-dark-card: #27272a;
  --app-dark-border: #3f3f46;
  --app-dark-muted: #a1a1aa;
  --app-dark-heading: #f4f4f5;
  --app-topbar-bg: #18181b;
  --app-topbar-border: #3f3f46;
  color-scheme: dark;
}

.app-global-topstrip {
  flex-shrink: 0;
  border-color: rgba(15, 23, 42, 0.08) !important;
}

.app-global-topstrip .app-wordmark {
  color: var(--bs-success);
  font-size: 1.125rem;
  letter-spacing: -0.03em;
}

[data-app-theme='dark'] .app-global-topstrip.bg-body {
  background-color: var(--app-topbar-bg) !important;
}

[data-app-theme='dark'] .app-global-topstrip .app-wordmark {
  color: #d4d4d8;
}

.app-global-topstrip .app-topstrip-groups .btn-outline-secondary {
  border-color: rgba(15, 23, 42, 0.12);
}

[data-app-theme='dark'] .app-global-topstrip .app-topstrip-groups .btn-outline-secondary {
  color: #e4e4e7;
  border-color: #52525b;
  background: var(--app-dark-card);
}

.app-global-topstrip .app-topstrip-groups .btn-outline-secondary:hover {
  background: rgba(140, 191, 38, 0.12);
  border-color: rgba(140, 191, 38, 0.45);
  color: inherit;
}

[data-app-theme='dark'] .app-global-topstrip .app-topstrip-groups .btn-outline-secondary:hover {
  background: #3f3f46 !important;
  border-color: #71717a !important;
  color: #fafafa !important;
}

/* Área sob o cabeçalho: sidebar + conteúdo (Financeiro, Agenda, etc.) */
.app-admin-workspace {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

body.app-has-global-nav .layout.admin-main-layout {
  flex: 1;
  min-height: 0;
  width: 100%;
  display: flex;
  align-items: stretch;
  overflow: hidden;
}

body.app-has-global-nav .layout.admin-main-layout > .sidebar {
  min-height: 0;
}

body.app-has-global-nav .layout.admin-main-layout > .content {
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/* Sidebars apenas com menu — sem marca duplicada */
.sidebar-min {
  display: flex;
  flex-direction: column;
}

[data-app-theme='dark'] .layout.admin-main-layout .sidebar {
  background: var(--app-dark-surface) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .layout.admin-main-layout .sidebar-nav a {
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] .layout.admin-main-layout .sidebar-nav a.active,
[data-app-theme='dark'] .layout.admin-main-layout .sidebar-nav a:hover {
  background: rgba(244, 244, 245, 0.08);
  color: var(--app-dark-heading);
}

/* Páginas com nav global: corpo em coluna + área útil scrollável */
body.app-has-global-nav {
  height: 100vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  margin: 0;
}

body.app-has-global-nav .app-scroll-main {
  flex: 1;
  min-height: 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/* CRM: shell interno já é flex horizontal */
body.app-has-global-nav .app-shell-layout {
  flex: 1;
  min-height: 0;
  display: flex;
}

/* ===== Modo escuro — CRM (principais blocos) ===== */
[data-app-theme='dark'] body.app-has-global-nav {
  background: var(--app-dark-bg);
  color: #e4e4e7;
}

/* Hero + fluxo vertical (Base de clientes, Marketing, topo do Atendimento) */
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main {
  background: var(--app-dark-bg);
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .page-hero,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero {
  background: var(--app-dark-surface) !important;
  border-bottom-color: var(--app-dark-border) !important;
  color: #fafafa;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero h1,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero h1,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .h1,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .h4,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .h4 {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero p,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero p,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .text-muted,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .text-muted,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .text-secondary {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero strong,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero strong {
  color: #fafafa;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .text-primary,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .text-primary,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .text-success {
  color: #93c5fd !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .badge,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .badge {
  filter: brightness(1.05);
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .btn-outline-secondary,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .btn-outline-secondary {
  color: #e4e4e7 !important;
  border-color: #71717a !important;
  background: transparent !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .page-hero .btn-outline-secondary:hover,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .btn-outline-secondary:hover {
  background: #3f3f46 !important;
  border-color: #a1a1aa !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .content {
  background: var(--app-dark-bg);
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .text-muted.small,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .alert,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main label.text-secondary,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .form-label {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .form-control,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .form-select {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .card-table-wrap {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  box-shadow: none !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .table {
  color: #e4e4e7;
  --bs-table-bg: transparent;
  --bs-table-color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .table thead {
  background: var(--app-dark-surface-mid) !important;
  background-image: none !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .table thead th {
  color: var(--app-dark-muted) !important;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .table tbody td {
  border-color: var(--app-dark-border) !important;
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main tr.cliente-row:hover {
  background: rgba(255, 255, 255, 0.06) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .ltv-hint {
  border-bottom-color: var(--app-dark-muted);
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .admin-page-main .alert-warning {
  background: rgba(234, 179, 8, 0.12);
  border-color: rgba(234, 179, 8, 0.35);
  color: #fef3c7;
}

/* Colaboradores, Financeiro, etc.: <main class="content"> */
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content {
  background: var(--app-dark-bg) !important;
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content h4 {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .text-muted,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content label {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content h6 {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .card-soft {
  background: var(--app-dark-surface) !important;
  border-color: var(--app-dark-border) !important;
  box-shadow: none !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .form-control,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .form-select {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .table {
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .table-equipe thead th:last-child,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .table-equipe tbody td:last-child {
  background: var(--app-dark-card) !important;
  box-shadow: -6px 0 12px rgba(0, 0, 0, 0.35);
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout > main.content .table-equipe code {
  color: #fda4af;
}

/* Marketing dentro de admin-page-main */
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .steps-card {
  background: var(--app-dark-surface);
  border-color: var(--app-dark-border);
  box-shadow: none;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .steps-card .text-dark {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .step-num {
  background: #3f3f46;
  color: #fafafa;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .card-panel,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .accordion-item {
  background: var(--app-dark-card);
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .accordion-button {
  background: var(--app-dark-card);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .accordion-button:not(.collapsed) {
  background: var(--app-dark-surface-mid);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .accordion-body {
  background: var(--app-dark-card);
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .var-hint code,
[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout .var-hint li code {
  background: var(--app-dark-bg);
  color: #a7f3d0;
}

/* Atendimento: KPIs + abas sob fundo escuro */
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content .at-tabs a {
  background: var(--app-dark-card);
  border-color: var(--app-dark-border);
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content .at-tabs a.active {
  background: #fafafa !important;
  border-color: #fafafa !important;
  color: #09090b !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content .kpi {
  background: var(--app-dark-surface);
  border-color: var(--app-dark-border);
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content .kpi .label {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content .kpi .num {
  color: #fafafa;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content.text-secondary {
  color: inherit;
}

/* ---- Atendimento: inbox em modo escuro (painéis, chat, detalhes) ---- */
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content {
  background: var(--app-dark-bg) !important;
  color: #e4e4e7 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill section.content .text-secondary {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill section.content .text-dark {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .alert-success {
  background: rgba(22, 163, 74, 0.2);
  border-color: rgba(34, 197, 94, 0.55);
  color: #bbf7d0 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .alert-danger {
  background: rgba(220, 38, 38, 0.2);
  border-color: rgba(248, 113, 113, 0.5);
  color: #fecaca !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .alert-warning {
  background: rgba(234, 179, 8, 0.12);
  border-color: rgba(234, 179, 8, 0.4);
  color: #fde68a !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .alert-info {
  background: rgba(59, 130, 246, 0.15);
  border-color: rgba(59, 130, 246, 0.35);
  color: #dbeafe !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .card-soft {
  background: var(--app-dark-surface) !important;
  border-color: var(--app-dark-border) !important;
  box-shadow: none !important;
  color: #e4e4e7 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .border,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .border-start,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .border-bottom,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .border-top {
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .mobile-section-title {
  background: var(--app-dark-surface-mid) !important;
  color: #fafafa !important;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-list .fw-bold,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-list .text-dark {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-list .text-muted.small {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-list .form-control,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-list .form-select {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-item {
  color: #e4e4e7 !important;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-item strong {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-item:hover {
  background: rgba(244, 244, 245, 0.06) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-item.active {
  background: rgba(34, 197, 94, 0.2) !important;
  border-left-color: #22c55e !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-item .text-muted,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .conversation-item .small.text-muted {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-header {
  background: var(--app-dark-surface-mid) !important;
  border-color: var(--app-dark-border) !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-header strong,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-header .fw-semibold {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-header .small,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-header .text-muted {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-body {
  background: var(--app-dark-bg) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-row.inbound .message-bubble {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-row.inbound .message-text {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-row.outbound .message-bubble {
  background: #166534 !important;
  border-color: #22c55e !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-row.outbound .message-text {
  color: #ecfdf5 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-author {
  color: #86efac !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-row.inbound .message-author {
  color: #7dd3fc !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-time,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-meta {
  color: #a1a1aa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-attachment {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #bbf7d0 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-attachment small {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-media-actions a {
  color: #6ee7b7 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .message-meta .at-msg-tick {
  color: #cbd5e1 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-compose {
  background: var(--app-dark-surface) !important;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-compose textarea,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-compose .form-control {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-compose .text-muted {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-attach-help {
  color: #a1a1aa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel h2,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel h5,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel h6 {
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel dt {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel dd {
  color: #e4e4e7 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel .text-muted {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel .form-control,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .at-details-panel .form-select {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-placeholder {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-placeholder .text-success {
  color: #86efac !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .empty-state {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .qr-box {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill > section.content > .card-soft .table,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .card-soft > .table,
[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .card-soft > .table-responsive .table {
  --bs-table-bg: transparent;
  --bs-table-color: #e4e4e7;
  color: #e4e4e7;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .card-soft .table thead th {
  background: var(--app-dark-surface-mid);
  border-color: var(--app-dark-border) !important;
  color: #fafafa !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .card-soft .table td {
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .bg-light {
  background: var(--app-dark-card) !important;
  color: #e4e4e7 !important;
}

[data-app-theme='dark'] body.app-has-global-nav .layout.admin-main-layout section.page-hero .badge.text-bg-light {
  background: var(--app-dark-card) !important;
  color: #e4e4e7 !important;
  border-color: var(--app-dark-border) !important;
}

@media (max-width: 768px) {
  [data-app-theme='dark'] body.app-has-global-nav .main-area.admin-main-fill .chat-header {
    background: var(--app-dark-surface-mid) !important;
    border-radius: 14px 14px 0 0;
  }

  [data-app-theme='dark'] body.app-has-global-nav {
    background: var(--app-dark-bg) !important;
  }
}

[data-app-theme='dark'] .app-shell-layout .sidebar,
[data-app-theme='dark'] .app-shell-layout .main-area {
  background: var(--app-dark-bg);
  border-color: var(--app-dark-border) !important;
  color: #e4e4e7;
}

[data-app-theme='dark'] .app-shell-layout .sidebar-nav a {
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] .app-shell-layout .sidebar-logo .fw-bold {
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .app-shell-layout .sidebar-logo a {
  color: inherit !important;
}

[data-app-theme='dark'] .app-shell-layout .sidebar-nav a:hover {
  background: rgba(244, 244, 245, 0.08);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .app-shell-layout .sidebar-nav a.active {
  background: rgba(244, 244, 245, 0.12);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .app-shell-layout .topbar {
  background: var(--app-dark-surface) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .app-shell-layout .topbar .text-secondary,
[data-app-theme='dark'] .app-shell-layout .topbar label {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] .app-shell-layout input#filtro.form-control-sm,
[data-app-theme='dark'] .app-shell-layout #filtro.form-control.bg-white.text-dark {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .app-shell-layout #filtro::placeholder {
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] .app-shell-layout .topbar select.form-select {
  background-color: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .app-shell-layout .kanban-column {
  background: var(--app-dark-surface);
  border: 1px solid var(--app-dark-border) !important;
}

[data-app-theme='dark'] .app-shell-layout .column-header {
  background: var(--app-dark-surface-mid);
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .app-shell-layout .column-body {
  background: transparent;
}

[data-app-theme='dark'] .app-shell-layout .kanban-card {
  background: var(--app-dark-card);
  border-color: var(--app-dark-border) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}

[data-app-theme='dark'] .app-shell-layout .kanban-card:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.45);
}

[data-app-theme='dark'] .app-shell-layout .kanban-card .kanban-card-cliente {
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .app-shell-layout .kanban-card .kanban-card-cliente.text-muted {
  color: #c4c4cc !important;
}

[data-app-theme='dark'] .app-shell-layout .kanban-card .text-muted,
[data-app-theme='dark'] .app-shell-layout .kanban-card small.text-muted {
  color: #d4d4d8 !important;
}

[data-app-theme='dark'] .app-shell-layout .kanban-card .small:not(.text-success):not(.text-danger):not(.text-warning) {
  color: #d4d4d8;
}

[data-app-theme='dark'] .app-shell-layout .kanban-card .fw-bold.text-success {
  color: #86efac !important;
}

[data-app-theme='dark'] .app-shell-layout .card-drag-handle {
  background: linear-gradient(180deg, #3f3f46 0%, var(--app-dark-card) 100%);
  border-right-color: #52525b !important;
  color: #e4e4e7 !important;
}

[data-app-theme='dark'] .app-shell-layout .tech-tag {
  background: rgba(63, 63, 70, 0.6);
  border-color: #52525b;
  color: #d9f99d;
}

[data-app-theme='dark'] .app-shell-layout .kanban-card-pdf {
  background: rgba(39, 39, 42, 0.95);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

[data-app-theme='dark'] .app-shell-layout .badge-comercial.aberto {
  background: #422006 !important;
  color: #fef3c7 !important;
  border-color: #b45309 !important;
}

[data-app-theme='dark'] .app-shell-layout .badge-comercial.ganha {
  background: rgba(22, 163, 74, 0.28) !important;
  color: #bbf7d0 !important;
  border-color: #22c55e !important;
}

[data-app-theme='dark'] .app-shell-layout .badge-comercial.perdida {
  background: rgba(220, 38, 38, 0.25) !important;
  color: #fecaca !important;
  border-color: #ef4444 !important;
}

[data-app-theme='dark'] .app-shell-layout .dashboard-grid {
  background: var(--app-dark-bg);
}

[data-app-theme='dark'] .app-shell-layout .card-dash {
  background: var(--app-dark-surface);
  border: 1px solid var(--app-dark-border);
  border-left-width: 5px;
  box-shadow: none;
}

[data-app-theme='dark'] .app-shell-layout .card-dash h3 {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] .app-shell-layout .card-dash .number {
  color: #93c5fd !important;
}

[data-app-theme='dark'] .app-shell-layout .card-dash.highlight .number {
  color: #bef264 !important;
}

[data-app-theme='dark'] .app-shell-layout .crm-hint-row {
  background: var(--app-dark-surface) !important;
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] .app-shell-layout .crm-hint-row strong {
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .app-shell-layout .crm-hint-row .text-secondary {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] .app-shell-layout .empty-column {
  border-color: #52525b;
  background: var(--app-dark-card);
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] .app-shell-layout .form-control:not(#filtro),
[data-app-theme='dark'] .app-shell-layout .form-select {
  background: var(--app-dark-card);
  border-color: var(--app-dark-border);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .app-shell-layout .modal-pipefy .modal-content {
  background: var(--app-dark-surface);
  color: #e4e4e7;
}

[data-app-theme='dark'] .app-shell-layout .modal-pipefy .modal-header {
  background: var(--app-dark-surface-mid);
  border-color: var(--app-dark-border);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .app-shell-layout .modal-main {
  background: var(--app-dark-surface);
  border-color: var(--app-dark-border) !important;
  color: #e4e4e7;
}

[data-app-theme='dark'] .app-shell-layout .modal-sidebar {
  background: var(--app-dark-bg);
  border-left: none;
}

[data-app-theme='dark'] .app-shell-layout .pipe-label {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] .app-shell-layout .pipe-input {
  background: var(--app-dark-card) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .app-shell-layout .nav-tabs-custom {
  border-bottom-color: var(--app-dark-border);
}

[data-app-theme='dark'] .app-shell-layout .nav-tabs-custom .nav-link {
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] .app-shell-layout .nav-tabs-custom .nav-link.active {
  color: #93c5fd;
  border-bottom-color: #93c5fd !important;
}

/* Painel gerencial (classes legadas) */
[data-app-theme='dark'] .painel-gerencial-wrap {
  --light-bg: var(--app-dark-bg);
  --card-bg: var(--app-dark-surface);
  --secondary-blue: #7ab8ff;
  background: var(--app-dark-bg) !important;
  color: #e4e4e7;
}

[data-app-theme='dark'] .painel-gerencial-wrap .header {
  border-color: var(--app-dark-border);
}

[data-app-theme='dark'] .painel-gerencial-wrap h1 {
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .painel-gerencial-wrap .card,
[data-app-theme='dark'] .painel-gerencial-wrap .table-container {
  background: var(--app-dark-surface) !important;
  box-shadow: none;
  border: 1px solid var(--app-dark-border);
}

[data-app-theme='dark'] .painel-gerencial-wrap table thead {
  background: var(--app-dark-surface-mid);
  color: var(--app-dark-heading);
}

[data-app-theme='dark'] .painel-gerencial-wrap th,
[data-app-theme='dark'] .painel-gerencial-wrap td {
  border-color: var(--app-dark-border);
}

[data-app-theme='dark'] .painel-gerencial-wrap tr:hover {
  background: rgba(244, 244, 245, 0.04);
}

[data-app-theme='dark'] .painel-gerencial-wrap .filtros-bar {
  background: var(--app-dark-surface);
  border-color: var(--app-dark-border);
}

/* Campo */
[data-app-theme='dark'] .campo-page .card-eq {
  background: var(--app-dark-surface);
  border-color: var(--app-dark-border);
  color: #e4e4e7;
}

[data-app-theme='dark'] .campo-page .card-eq h5 {
  color: #f1f5f9 !important;
}

/* Coluna principal tipo “sidebar + hero + lista” (clientes, marketing) */
body.app-has-global-nav .layout.admin-main-layout > .admin-page-main {
  flex: 1;
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  -webkit-overflow-scrolling: touch;
}

/* Atendimento: área principal com scroll sob topstrip global */
body.app-has-global-nav .layout.admin-main-layout > main.main-area.admin-main-fill {
  flex: 1;
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-direction: column;
}

body.app-has-global-nav .admin-main-fill > section.page-hero {
  flex-shrink: 0;
}

/* ===== Gerador / simulador de proposta (/formulario-proposta) ===== */
.proposta-page--public {
  min-height: 100vh;
  margin: 0;
  background: #f4f4f5;
}

.proposta-page-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 2rem;
  box-sizing: border-box;
}

.proposta-layout-grid {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 1.25rem;
  align-items: start;
}

@media (max-width: 992px) {
  .proposta-layout-grid {
    grid-template-columns: 1fr;
  }

  .proposta-card-resumo {
    position: relative !important;
    top: auto !important;
  }
}

body.app-has-global-nav .proposta-page-inner {
  max-width: 1200px;
}

.proposta-page-header {
  background: var(--bs-body-bg);
  border-color: rgba(15, 23, 42, 0.1);
}

[data-app-theme='dark'] .proposta-page--public {
  background: var(--app-dark-bg);
  color: #e4e4e7;
}

[data-app-theme='dark'] .proposta-public-bar.bg-body {
  background: var(--app-dark-surface) !important;
  border-color: var(--app-dark-border) !important;
}

.proposta-public-bar .text-muted {
  color: var(--app-secondary-color, #71717a) !important;
}

[data-app-theme='dark'] .proposta-page-header {
  background: var(--app-dark-surface);
  border-color: var(--app-dark-border) !important;
  color: #fafafa;
}

[data-app-theme='dark'] .proposta-page-header .text-muted {
  color: var(--app-dark-muted) !important;
}

.proposta-col-form {
  background: var(--bs-body-bg);
}

[data-app-theme='dark'] body.app-has-global-nav .proposta-col-form {
  background: var(--app-dark-card);
}

[data-app-theme='dark'] .proposta-page--public .proposta-col-form {
  background: var(--app-dark-card);
  border-color: var(--app-dark-border) !important;
  color: #e4e4e7;
}

.proposta-assistente {
  background: #f8fafc;
  border-color: rgba(63, 63, 70, 0.2) !important;
}

[data-app-theme='dark'] .proposta-assistente {
  background: var(--app-dark-surface-mid);
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] .proposta-assistente .text-muted {
  color: var(--app-dark-muted) !important;
}

.proposta-grid-tecnico,
.grid-tecnico {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.875rem;
}

.grid-tecnico-full {
  grid-column: 1 / -1;
}

@media (max-width: 576px) {
  .grid-tecnico {
    grid-template-columns: 1fr 1fr;
  }
}

.proposta-card-resumo {
  position: sticky;
  top: 1rem;
  background: linear-gradient(165deg, #15803d 0%, #14532d 100%);
  color: #f0fdf4;
  border-color: rgba(20, 83, 45, 0.65) !important;
  box-shadow: 0 10px 28px rgba(20, 83, 45, 0.22);
}

.proposta-card-resumo .text-muted {
  color: rgba(240, 253, 244, 0.78) !important;
}

.proposta-resumo-linha {
  display: flex;
  justify-content: space-between;
  padding: 0.55rem 0;
  font-size: 0.95rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.proposta-resumo-linha--discount {
  color: #fecaca;
}

.proposta-resumo-total {
  color: #bbf7d0;
  border-top-color: rgba(255, 255, 255, 0.22) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .proposta-col-form .form-label,
[data-app-theme='dark'] body.app-has-global-nav .proposta-col-form label {
  color: var(--app-dark-muted) !important;
}

[data-app-theme='dark'] body.app-has-global-nav .proposta-col-form .form-control,
[data-app-theme='dark'] body.app-has-global-nav .proposta-col-form .form-select {
  background: var(--app-dark-surface-mid) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .proposta-page--public .proposta-col-form .form-label {
  color: var(--app-dark-muted);
}

[data-app-theme='dark'] .proposta-page--public .proposta-col-form .form-control,
[data-app-theme='dark'] .proposta-page--public .proposta-col-form .form-select {
  background: var(--app-dark-surface-mid) !important;
  border-color: var(--app-dark-border) !important;
  color: var(--app-dark-heading) !important;
}

[data-app-theme='dark'] .proposta-col-form code {
  color: #fcd34d;
}

.proposta-col-form .links-footer,
.proposta-col-form a:not(.btn) {
  font-size: 0.9rem;
}

[data-app-theme='light'] body.app-has-global-nav .proposta-col-form .text-muted.small,
.proposta-page--public .proposta-col-form .text-muted {
  opacity: 0.95;
}

/* PDF pré-visualização */
.pdf-preview-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10050;
  background: rgba(9, 9, 11, 0.65);
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.pdf-preview-overlay.is-open {
  display: flex;
}

.pdf-preview-panel {
  background: var(--bs-body-bg);
  width: min(960px, 100%);
  max-height: 92vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.pdf-preview-close {
  border: none;
  background: #f4f4f5;
}

[data-app-theme='dark'] .pdf-preview-panel {
  background: var(--app-dark-card);
  color: #fafafa;
  border-color: var(--app-dark-border) !important;
}

[data-app-theme='dark'] .pdf-preview-header {
  border-color: var(--app-dark-border) !important;
}

.pdf-preview-iframe {
  flex: 1;
  min-height: 70vh;
  width: 100%;
  background: #52525b;
}

[data-app-theme='dark'] .pdf-preview-close {
  background: var(--app-dark-border);
  color: #fafafa;
}

/* === Mobile (≤991px): nav global + offcanvas — evitar menu “travado”, scroll iOS e sidebar duplicada === */
@media (max-width: 991.98px) {
  body.app-has-global-nav {
    height: auto;
    min-height: 100dvh;
    min-height: -webkit-fill-available;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  body.app-has-global-nav > header.app-global-topstrip {
    position: sticky;
    top: 0;
    z-index: 1035;
    flex-shrink: 0;
  }

  body.app-has-global-nav .app-admin-workspace {
    flex: 1 1 auto;
    min-height: 0;
    overflow: visible;
  }

  body.app-has-global-nav .layout.admin-main-layout {
    flex: 1 1 auto;
    min-height: 0;
    overflow: visible;
    align-items: stretch;
  }

  /* Menu lateral interno some: no mobile o atalho é o botão + offcanvas (mesmos links). */
  body.app-has-global-nav .layout.admin-main-layout > aside.sidebar.sidebar-min {
    display: none !important;
  }

  body.app-has-global-nav .app-shell-layout > aside.sidebar.sidebar-min {
    display: none !important;
  }

  body.app-has-global-nav .app-shell-layout {
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    overflow: visible;
    width: 100%;
  }

  body.app-has-global-nav .app-shell-layout > .main-area {
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
  }

  /* Uma coluna de scroll principal (menos nested overflow que no Safari iOS). */
  body.app-has-global-nav .layout.admin-main-layout > main.content,
  body.app-has-global-nav .layout.admin-main-layout > main.main-area.admin-main-fill,
  body.app-has-global-nav .layout.admin-main-layout > .admin-page-main {
    overflow: visible !important;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    width: 100%;
  }

  #appNavOffcanvas .offcanvas-body {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    touch-action: pan-y;
  }
}
