:root {
  --po-bg: #060a14;
  --po-bg-soft: #0b1324;
  --po-panel: #111c2f;
  --po-panel-2: #17263d;
  --po-border: #273758;
  --po-text: #eaf1ff;
  --po-text-soft: #9aabca;
  --po-accent: #ff6a00;
  --po-accent-2: #ff8a33;
}

body,
body[data-layout-mode="dark"],
html {
  background-color: var(--po-bg) !important;
  color: var(--po-text);
}

#layout-wrapper,
.page-content,
.main-content,
.page-content-wrapper,
.container-fluid,
.content-page {
  background: linear-gradient(180deg, #081223 0%, #060a14 70%) !important;
}

#page-topbar,
.navbar-header,
.vertical-menu,
.left-side-menu,
.sidebar-content {
  background: linear-gradient(180deg, #0f1c30 0%, #0a1426 100%) !important;
  border-color: var(--po-border) !important;
}

.metismenu li a,
.vertical-menu .menu-title,
.navbar-brand-box,
.logo,
.topnav,
.breadcrumb-item,
.page-title,
h1,h2,h3,h4,h5,h6,
p,
label,
small,
.text-muted {
  color: var(--po-text-soft) !important;
}

.page-title,
h1,h2,h3,h4,h5,h6,
.card-title,
strong,
.text-dark {
  color: var(--po-text) !important;
}

.card,
.modal-content,
.dropdown-menu,
.list-group-item,
.alert,
.popover,
.toast,
.swal2-popup {
  background: linear-gradient(145deg, var(--po-panel) 0%, var(--po-panel-2) 100%) !important;
  border: 1px solid var(--po-border) !important;
  color: var(--po-text);
}

.table,
.table td,
.table th,
.table-bordered,
.dataTables_wrapper .dataTables_paginate .paginate_button,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info {
  color: var(--po-text-soft) !important;
  border-color: var(--po-border) !important;
}

.table thead th,
.table-hover tbody tr:hover {
  background-color: rgba(255, 106, 0, 0.08) !important;
  color: var(--po-text) !important;
}

.form-control,
.custom-select,
.select2-container--default .select2-selection--single,
.input-group-text {
  background-color: #0c1528 !important;
  border-color: var(--po-border) !important;
  color: var(--po-text) !important;
}

.form-control:focus,
.custom-select:focus,
.btn:focus,
a:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 106, 0, 0.2) !important;
  border-color: var(--po-accent-2) !important;
}

a,
.btn-link,
.nav-link.active,
.breadcrumb-item.active,
.text-primary {
  color: var(--po-accent-2) !important;
}

a:hover,
.btn-link:hover {
  color: #ffb37c !important;
}

.btn-primary,
.page-item.active .page-link,
.badge-primary,
.custom-control-input:checked ~ .custom-control-label::before {
  background: linear-gradient(135deg, #ff6a00 0%, #e45100 100%) !important;
  border-color: #ff6a00 !important;
  color: #fff !important;
}

.btn-secondary,
.btn-light,
.page-link,
.btn-dark {
  background-color: #1b2b46 !important;
  border-color: var(--po-border) !important;
  color: var(--po-text) !important;
}

.footer,
.card-footer,
.dropdown-divider,
hr,
.border,
.border-top,
.border-right,
.border-bottom,
.border-left {
  border-color: var(--po-border) !important;
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-thumb {
  background: #294066;
  border-radius: 8px;
}

::-webkit-scrollbar-track {
  background: #0b1324;
}


/* Correções para remover fundos claros/azulados remanescentes */
body[data-topbar="colored"] #page-topbar,
body[data-topbar="dark"] #page-topbar,
body[data-sidebar="dark"] .vertical-menu,
body[data-sidebar-size="sm"] .navbar-brand-box,
.navbar-brand-box,
.logo,
.logo-light,
.logo-dark {
  background: #0a111f !important;
}

.layout-boxed body,
body,
.main-content,
.page-content,
.page-content-wrapper,
.page-title-box,
.page-title-box .container-fluid,
.container-fluid,
.right-bar,
.rightbar-overlay {
  background-image: none !important;
  background-color: #050b16 !important;
}

.page-title-box,
.page-title-box .breadcrumb,
.page-title-box .page-title-right,
.page-title-box .row,
.page-title-box .col-md-8 {
  background: transparent !important;
}

body[data-sidebar="dark"] .navbar-brand-box {
  border-right: 1px solid var(--po-border) !important;
}

.card,
.widget-chart,
.widget-chart-box,
.widget-box,
.stat-card,
[class*="bg-primary"],
[class*="bg-info"] {
  background-image: none !important;
}


/* Footer: remove fundo branco */
.footer,
.footer .container-fluid,
.footer .row,
.footer .col-sm-6 {
  background: #050b16 !important;
  background-image: none !important;
}

.footer,
.footer .text-sm-right,
.footer a,
.footer .text-reset {
  color: var(--po-text-soft) !important;
}


/* Sincronia visual dos componentes */
.card,
.modal-content,
.dropdown-menu,
.list-group-item,
.table,
.form-control,
.custom-select,
.btn,
.input-group-text,
.page-link {
  border-radius: 10px !important;
}

.card,
.modal-content,
.table,
.form-control,
.custom-select,
.input-group-text,
.page-link,
.dropdown-menu {
  background-color: #101a2d !important;
  background-image: none !important;
}

/* Header unificado com ID + usuário + créditos */
.header-user-summary {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--po-border) !important;
  border-radius: 10px !important;
  background: #101a2d !important;
  color: var(--po-text) !important;
  padding: 8px 12px !important;
}

.header-user-summary-icon {
  font-size: 20px;
  color: var(--po-accent-2) !important;
}

.header-user-summary-text {
  gap: 12px;
  align-items: center;
  font-size: 13px;
}

.header-user-summary .summary-item {
  color: var(--po-text-soft) !important;
  font-size: 13px;
  white-space: nowrap;
}

.header-user-summary .summary-item strong {
  color: var(--po-text) !important;
  font-weight: 700;
}

.header-user-summary .header-profile-user {
  width: 30px;
  height: 30px;
  border: 2px solid #2a3d60;
}

.header-user-summary:hover {
  border-color: var(--po-accent-2) !important;
}


/* Logo com a mesma cor do header */
.navbar-brand-box,
.navbar-brand-box .logo,
.navbar-brand-box .logo-light,
.navbar-brand-box .logo-dark {
  background: linear-gradient(180deg, #0f1c30 0%, #0a1426 100%) !important;
}

/* DataTables com paleta proporcional */
.table.dataTable tbody td,
.table.dataTable tbody th,
.table-striped tbody tr:nth-of-type(odd),
.table-striped tbody tr:nth-of-type(even),
table.dataTable.display tbody tr.odd,
table.dataTable.display tbody tr.even,
.dataTables_wrapper .dataTables_processing {
  background: #101a2d !important;
  color: var(--po-text-soft) !important;
}

table.dataTable thead th,
.table thead th {
  background: #15243c !important;
  color: var(--po-text) !important;
  border-color: var(--po-border) !important;
}
