/* Identidad visual compartida con RNX Market. Se carga despues del tema legado. */
:root {
  --bg-main: #f4f7fb;
  --bg-component: #ffffff;
  --bg-component-hover: #f1f5f9;
  --border-color: #dfe7f1;
  --accent-primary: #2563eb;
  --accent-primary-hover: #1d4ed8;
  --accent-primary-light: #60a5fa;
  --text-primary: #0f172a;
  --text-secondary: #64748b;
  --text-placeholder: #94a3b8;
  --text-on-accent: #ffffff;
  --text-table-body: #334155;
  --color-success: #16a34a;
  --color-success-hover: #15803d;
  --color-danger: #dc2626;
  --color-danger-hover: #b91c1c;
  --color-danger-text-subtle: #b91c1c;
  --color-warning-bg: #fff7ed;
  --color-warning-border: #f59e0b;
  --color-warning-text: #9a3412;
  --color-info-bg: #eff6ff;
  --color-info-text: #1d4ed8;
  --border-radius: 14px;
  --main-content-max-width: 1440px;
}

body { background: var(--bg-main) !important; color: var(--text-primary) !important; }
#admin-page-content-wrapper { background: var(--bg-main) !important; }
.admin-container-fluid { padding: 28px 30px !important; }

#admin-sidebar-wrapper {
  background: #0f172a !important;
  border-right: 0 !important;
  box-shadow: 8px 0 28px rgba(15, 23, 42, .12) !important;
}
#admin-sidebar-wrapper .sidebar-header {
  min-height: 78px;
  padding: 10px 20px !important;
  background: #0f172a !important;
  border-bottom-color: rgba(148, 163, 184, .16) !important;
}
#admin-sidebar-wrapper .sidebar-brand-text { width: 100%; }
#admin-sidebar-wrapper .sidebar-brand-text img {
  width: 198px !important;
  height: 46px !important;
  margin: 0 !important;
  object-fit: contain;
  object-position: left center;
}
#admin-sidebar-wrapper .sidebar-user-greeting {
  color: #cbd5e1 !important;
  border-bottom-color: rgba(148, 163, 184, .14) !important;
}
#admin-sidebar-wrapper ul li a { color: #94a3b8 !important; border-left-width: 3px !important; }
#admin-sidebar-wrapper ul li a i.glyphicon { color: #64748b !important; }
#admin-sidebar-wrapper ul li a:hover {
  color: #f8fafc !important;
  background: rgba(59, 130, 246, .12) !important;
}
#admin-sidebar-wrapper ul li.active > a {
  color: #fff !important;
  background: linear-gradient(90deg, rgba(37, 99, 235, .95), rgba(6, 182, 212, .72)) !important;
  border-left-color: #67e8f9 !important;
}
#admin-sidebar-wrapper ul ul a { background: rgba(2, 6, 23, .3) !important; }
#admin-sidebar-wrapper .sidebar-footer {
  background: #0f172a !important;
  color: #64748b !important;
  border-top-color: rgba(148, 163, 184, .14) !important;
}

.admin-navbar-top {
  background: rgba(255, 255, 255, .95) !important;
  border-bottom-color: var(--border-color) !important;
  box-shadow: 0 5px 22px rgba(15, 23, 42, .06) !important;
  backdrop-filter: blur(14px);
}
.admin-navbar-top .sidebar-toggler { color: #334155 !important; }

.panel-custom,
.rnx-side-card {
  background: #fff !important;
  border-color: var(--border-color) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .07) !important;
}
.panel-custom .panel-heading {
  background: #fff !important;
  border-bottom-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}
.form-control,
div.dataTables_wrapper div.dataTables_length select,
div.dataTables_wrapper div.dataTables_filter input {
  background: #fff !important;
  border-color: #cbd5e1 !important;
  color: #0f172a !important;
}
.form-control:focus { background: #fff !important; }
table.table-custom,
table.dataTable.table-custom,
table.table-custom thead th,
table.dataTable.table-custom thead th { background: #fff !important; }
table.table-custom tbody tr:hover,
table.dataTable.table-custom tbody tr:hover { background: #f8fafc !important; }
.admin-footer { background: #fff !important; }

body.login-page-body {
  background: radial-gradient(circle at 15% 15%, #dbeafe 0, transparent 34%),
              radial-gradient(circle at 88% 82%, #cffafe 0, transparent 30%), #f4f7fb !important;
}
body.login-page-body .login-container { max-width: 430px !important; border-radius: 22px !important; box-shadow: 0 22px 60px rgba(15, 23, 42, .13) !important; }
.rnx-admin-login-brand { display: block; width: 230px; margin: 0 auto 24px; }
.rnx-admin-login-brand img { display: block; width: 100%; height: auto; }

@media (max-width: 991.98px) {
  .admin-container-fluid { padding: 22px 16px !important; }
}
