
:root {
  --bnc-theme-plate-bg: rgba(255,255,255,.92);
  --bnc-theme-plate-bg-strong: rgba(255,255,255,.98);
  --bnc-theme-plate-border: rgba(var(--bnc-primary-rgb), .16);
  --bnc-theme-sheen-start: rgba(var(--bnc-primary-rgb), .13);
  --bnc-theme-sheen-end: rgba(var(--bnc-accent-rgb), .12);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(var(--bnc-primary-rgb), .16), rgba(var(--bnc-accent-rgb), .18));
  --bnc-theme-orb-shadow: 0 16px 30px rgba(var(--bnc-primary-rgb), .16);
  --bnc-theme-soft-text: var(--bnc-primary-strong);
  --bnc-theme-chip-bg: rgba(var(--bnc-primary-rgb), .09);
  --bnc-theme-highlight: rgba(var(--bnc-primary-rgb), .06);
  --bnc-theme-highlight-strong: rgba(var(--bnc-primary-rgb), .12);
  --bnc-theme-table-row: rgba(var(--bnc-primary-rgb), .032);
  --bnc-theme-sheen-size: 220px;
}

html[data-bnc-theme="ocean"], body[data-bnc-theme="ocean"] {
  --bnc-theme-sheen-start: rgba(37,99,235,.16);
  --bnc-theme-sheen-end: rgba(6,182,212,.16);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(37,99,235,.18), rgba(6,182,212,.22));
}
html[data-bnc-theme="emerald"], body[data-bnc-theme="emerald"] {
  --bnc-theme-sheen-start: rgba(15,118,110,.16);
  --bnc-theme-sheen-end: rgba(34,197,94,.15);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(15,118,110,.18), rgba(34,197,94,.20));
}
html[data-bnc-theme="violet"], body[data-bnc-theme="violet"] {
  --bnc-theme-sheen-start: rgba(124,58,237,.16);
  --bnc-theme-sheen-end: rgba(236,72,153,.16);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(124,58,237,.18), rgba(236,72,153,.20));
}
html[data-bnc-theme="sunset"], body[data-bnc-theme="sunset"] {
  --bnc-theme-sheen-start: rgba(234,88,12,.17);
  --bnc-theme-sheen-end: rgba(245,158,11,.16);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(234,88,12,.19), rgba(245,158,11,.22));
}
html[data-bnc-theme="ruby"], body[data-bnc-theme="ruby"] {
  --bnc-theme-sheen-start: rgba(220,38,38,.17);
  --bnc-theme-sheen-end: rgba(244,63,94,.16);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(220,38,38,.18), rgba(244,63,94,.22));
}
html[data-bnc-theme="slate"], body[data-bnc-theme="slate"] {
  --bnc-theme-sheen-start: rgba(51,65,85,.16);
  --bnc-theme-sheen-end: rgba(15,118,110,.14);
  --bnc-theme-orb-bg: linear-gradient(135deg, rgba(51,65,85,.18), rgba(15,118,110,.20));
}

body[data-bnc-theme] .bnc-theme-panel,
body[data-bnc-theme] .bnc-stat-card,
body[data-bnc-theme] .bnc-ct-kpi,
body[data-bnc-theme] .bnc-ct-stat,
body[data-bnc-theme] .bnc-ct-mini,
body[data-bnc-theme] .bnc-mini-stat,
body[data-bnc-theme] .rep-stat,
body[data-bnc-theme] .bnc-highlight-card,
body[data-bnc-theme] .card.custom-card[data-bnc-role],
body[data-bnc-theme] .custom-card[data-bnc-role] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--bnc-theme-plate-border) !important;
  background: linear-gradient(180deg, var(--bnc-theme-plate-bg), var(--bnc-theme-plate-bg-strong)) !important;
  box-shadow: 0 14px 32px rgba(15,23,42,.06);
}

body[data-bnc-theme] .bnc-theme-panel::before,
body[data-bnc-theme] .bnc-stat-card::before,
body[data-bnc-theme] .bnc-ct-kpi::before,
body[data-bnc-theme] .bnc-ct-stat::before,
body[data-bnc-theme] .bnc-ct-mini::before,
body[data-bnc-theme] .bnc-mini-stat::before,
body[data-bnc-theme] .rep-stat::before,
body[data-bnc-theme] .bnc-highlight-card::before,
body[data-bnc-theme] .card.custom-card[data-bnc-role]::before,
body[data-bnc-theme] .custom-card[data-bnc-role]::before {
  content: "";
  position: absolute;
  inline-size: var(--bnc-theme-sheen-size);
  block-size: var(--bnc-theme-sheen-size);
  inset-inline-start: -18%;
  inset-block-start: -65%;
  border-radius: 50%;
  background: radial-gradient(circle, var(--bnc-theme-sheen-start) 0%, transparent 66%);
  pointer-events: none;
  opacity: .95;
  z-index: -1;
}

body[data-bnc-theme] .bnc-theme-panel::after,
body[data-bnc-theme] .bnc-stat-card::after,
body[data-bnc-theme] .bnc-ct-kpi::after,
body[data-bnc-theme] .bnc-ct-stat::after,
body[data-bnc-theme] .bnc-ct-mini::after,
body[data-bnc-theme] .bnc-mini-stat::after,
body[data-bnc-theme] .rep-stat::after,
body[data-bnc-theme] .bnc-highlight-card::after,
body[data-bnc-theme] .card.custom-card[data-bnc-role]::after,
body[data-bnc-theme] .custom-card[data-bnc-role]::after {
  content: "";
  position: absolute;
  inset-inline-end: -16%;
  inset-block-end: -62%;
  inline-size: calc(var(--bnc-theme-sheen-size) * .86);
  block-size: calc(var(--bnc-theme-sheen-size) * .86);
  border-radius: 50%;
  background: radial-gradient(circle, var(--bnc-theme-sheen-end) 0%, transparent 70%);
  pointer-events: none;
  z-index: -1;
}

body[data-bnc-theme] .bnc-metric-card .value,
body[data-bnc-theme] .bnc-metric-card .bnc-ct-kpi-value,
body[data-bnc-theme] .bnc-metric-card .bnc-mini-stat-value,
body[data-bnc-theme] .bnc-metric-card .fs-3.fw-bold,
body[data-bnc-theme] .bnc-metric-card .fw-bold.fs-3,
body[data-bnc-theme] .bnc-metric-card .v {
  color: var(--bnc-text-strong) !important;
  letter-spacing: -.02em;
  text-shadow: 0 1px 0 rgba(255,255,255,.28);
}

body[data-bnc-theme] .bnc-metric-card .label,
body[data-bnc-theme] .bnc-metric-card .bnc-ct-kpi-label,
body[data-bnc-theme] .bnc-metric-card .bnc-mini-stat-label,
body[data-bnc-theme] .bnc-metric-card .text-muted.small,
body[data-bnc-theme] .bnc-metric-card .l {
  color: var(--bnc-theme-soft-text) !important;
}

body[data-bnc-theme] .bnc-theme-icon,
body[data-bnc-theme] .bnc-stat-icon,
body[data-bnc-theme] .bnc-icon-orb,
body[data-bnc-theme] .bnc-inline-icon-orb,
body[data-bnc-theme] .bnc-icon-button .bnc-button-icon,
body[data-bnc-theme] .header-link-icon,
body[data-bnc-theme] .rep-bottom-nav i,
body[data-bnc-theme] .bnc-installer-bottom-nav i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 2.7rem;
  block-size: 2.7rem;
  border-radius: 18px;
  background: var(--bnc-theme-orb-bg);
  color: var(--bnc-primary-strong) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48), var(--bnc-theme-orb-shadow);
}

body[data-bnc-theme] .rep-bottom-nav i,
body[data-bnc-theme] .bnc-installer-bottom-nav i {
  inline-size: 2.25rem;
  block-size: 2.25rem;
  border-radius: 15px;
}

body[data-bnc-theme] .bnc-theme-icon i,
body[data-bnc-theme] .bnc-stat-icon i,
body[data-bnc-theme] .bnc-icon-orb i,
body[data-bnc-theme] .bnc-inline-icon-orb i,
body[data-bnc-theme] .bnc-icon-button .bnc-button-icon i,
body[data-bnc-theme] .header-link-icon i,
body[data-bnc-theme] .rep-bottom-nav i::before,
body[data-bnc-theme] .bnc-installer-bottom-nav i::before {
  filter: saturate(1.04);
}

body[data-bnc-theme] .bnc-icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .52rem;
}

body[data-bnc-theme] .bnc-icon-button .bnc-button-icon {
  inline-size: 2rem;
  block-size: 2rem;
  border-radius: 14px;
  flex: 0 0 auto;
}

body[data-bnc-theme] .bnc-action-zone .btn,
body[data-bnc-theme] .btn-list .btn,
body[data-bnc-theme] .card-footer .btn,
body[data-bnc-theme] .modal-footer .btn,
body[data-bnc-theme] .page-header .btn,
body[data-bnc-theme] .page-title-box .btn {
  border-radius: 15px !important;
}

body[data-bnc-theme] .btn-primary,
body[data-bnc-theme] .btn-outline-primary,
body[data-bnc-theme] .btn-light,
body[data-bnc-theme] .btn-outline-secondary,
body[data-bnc-theme] .btn-outline-dark,
body[data-bnc-theme] .btn-wave {
  position: relative;
  overflow: hidden;
}

body[data-bnc-theme] .btn-primary::after,
body[data-bnc-theme] .btn-outline-primary::after,
body[data-bnc-theme] .btn-light::after,
body[data-bnc-theme] .btn-outline-secondary::after,
body[data-bnc-theme] .btn-outline-dark::after,
body[data-bnc-theme] .btn-wave::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,.22) 35%, transparent 68%);
  transform: translateX(-120%);
  transition: transform .42s ease;
  pointer-events: none;
}

body[data-bnc-theme] .btn-primary:hover::after,
body[data-bnc-theme] .btn-outline-primary:hover::after,
body[data-bnc-theme] .btn-light:hover::after,
body[data-bnc-theme] .btn-outline-secondary:hover::after,
body[data-bnc-theme] .btn-outline-dark:hover::after,
body[data-bnc-theme] .btn-wave:hover::after {
  transform: translateX(125%);
}

body[data-bnc-theme] .bnc-theme-table,
body[data-bnc-theme] .table.bnc-theme-table {
  --bs-table-bg: transparent;
}

body[data-bnc-theme] .bnc-theme-table thead th,
body[data-bnc-theme] .table.bnc-theme-table thead th {
  position: relative;
  background: linear-gradient(180deg, rgba(var(--bnc-primary-rgb), .10), rgba(255,255,255,.92)) !important;
  border-block-end-color: rgba(var(--bnc-primary-rgb), .18) !important;
}

body[data-bnc-theme] .bnc-theme-table thead th::after,
body[data-bnc-theme] .table.bnc-theme-table thead th::after {
  content: "";
  position: absolute;
  inset-inline-start: .65rem;
  inset-inline-end: .65rem;
  inset-block-end: 0;
  block-size: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(var(--bnc-primary-rgb), .82), rgba(var(--bnc-accent-rgb), .84));
  opacity: .9;
}

body[data-bnc-theme] .bnc-theme-table tbody tr > *:first-child,
body[data-bnc-theme] .table.bnc-theme-table tbody tr > *:first-child {
  font-weight: 700;
}

body[data-bnc-theme] .bnc-theme-table tbody tr:nth-child(even) > *,
body[data-bnc-theme] .table.bnc-theme-table tbody tr:nth-child(even) > * {
  background: var(--bnc-theme-table-row);
}

body[data-bnc-theme] .bnc-theme-table tbody tr:hover > *,
body[data-bnc-theme] .table.bnc-theme-table tbody tr:hover > * {
  background: rgba(var(--bnc-primary-rgb), .12) !important;
}

body[data-bnc-theme] .bnc-theme-table .badge,
body[data-bnc-theme] .table.bnc-theme-table .badge {
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35);
}

body[data-bnc-theme] .bnc-themed-empty {
  position: relative;
  border: 1px dashed rgba(var(--bnc-primary-rgb), .26);
  background: linear-gradient(135deg, rgba(var(--bnc-primary-rgb), .045), rgba(var(--bnc-accent-rgb), .055));
  border-radius: 20px;
  padding: 1.1rem;
}

body[data-bnc-theme] .bnc-themed-empty .empty-state-icon,
body[data-bnc-theme] .bnc-themed-empty .bnc-empty-icon,
body[data-bnc-theme] .bnc-themed-empty .ri,
body[data-bnc-theme] .bnc-themed-empty .ti {
  color: var(--bnc-primary-strong) !important;
}

body[data-bnc-theme] .bnc-page-accent,
body[data-bnc-theme] .page-header,
body[data-bnc-theme] .page-title-box,
body[data-bnc-theme] .bnc-page-intro {
  position: relative;
}

body[data-bnc-theme] .bnc-page-accent::after,
body[data-bnc-theme] .page-header::after,
body[data-bnc-theme] .page-title-box::after,
body[data-bnc-theme] .bnc-page-intro::after {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: -.3rem;
  block-size: 4px;
  inline-size: min(160px, 42%);
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(var(--bnc-primary-rgb), .88), rgba(var(--bnc-accent-rgb), .85));
  opacity: .92;
}

body[data-bnc-theme] .bnc-theme-switcher-menu .bnc-theme-swatch.is-active {
  box-shadow: 0 0 0 .2rem rgba(var(--bnc-primary-rgb), .14), 0 .85rem 1.6rem rgba(var(--bnc-primary-rgb), .16);
}

body[data-bnc-theme] .bnc-theme-switcher-inline .badge,
body[data-bnc-theme] .bnc-theme-switcher-actions .badge {
  background: var(--bnc-theme-chip-bg) !important;
  border-color: rgba(var(--bnc-primary-rgb), .18) !important;
  color: var(--bnc-primary-strong) !important;
}

html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-theme-panel,
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-stat-card,
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-kpi,
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-stat,
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-mini,
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-mini-stat,
html[data-bnc-motion="lively"] body[data-bnc-theme] .rep-stat {
  animation: bncThemeFloat 7.4s ease-in-out infinite;
}

html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-theme-panel:nth-child(2n),
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-stat-card:nth-child(2n),
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-kpi:nth-child(2n),
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-stat:nth-child(2n),
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-mini:nth-child(2n),
html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-mini-stat:nth-child(2n),
html[data-bnc-motion="lively"] body[data-bnc-theme] .rep-stat:nth-child(2n) {
  animation-delay: -2.1s;
}

@keyframes bncThemeFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}

html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-theme-panel,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-stat-card,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-ct-kpi,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-ct-stat,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-ct-mini,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-mini-stat,
html[data-theme-mode="dark"] body[data-bnc-theme] .rep-stat,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-highlight-card,
html[data-theme-mode="dark"] body[data-bnc-theme] .card.custom-card[data-bnc-role],
html[data-theme-mode="dark"] body[data-bnc-theme] .custom-card[data-bnc-role] {
  background: linear-gradient(180deg, rgba(2,6,23,.82), rgba(15,23,42,.96)) !important;
  border-color: rgba(var(--bnc-primary-rgb), .24) !important;
}

html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-theme-table thead th,
html[data-theme-mode="dark"] body[data-bnc-theme] .table.bnc-theme-table thead th {
  background: linear-gradient(180deg, rgba(var(--bnc-primary-rgb), .18), rgba(15,23,42,.95)) !important;
}

html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-theme-table tbody tr:hover > *,
html[data-theme-mode="dark"] body[data-bnc-theme] .table.bnc-theme-table tbody tr:hover > * {
  background: rgba(var(--bnc-primary-rgb), .16) !important;
}

html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-theme-icon,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-stat-icon,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-icon-orb,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-inline-icon-orb,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-icon-button .bnc-button-icon,
html[data-theme-mode="dark"] body[data-bnc-theme] .header-link-icon,
html[data-theme-mode="dark"] body[data-bnc-theme] .rep-bottom-nav i,
html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-installer-bottom-nav i {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 16px 28px rgba(2,6,23,.36);
}

html[data-theme-mode="dark"] body[data-bnc-theme] .bnc-themed-empty {
  background: linear-gradient(135deg, rgba(var(--bnc-primary-rgb), .09), rgba(var(--bnc-accent-rgb), .10));
}

@media (max-width: 991.98px) {
  body[data-bnc-theme] .bnc-theme-icon,
  body[data-bnc-theme] .bnc-stat-icon,
  body[data-bnc-theme] .bnc-icon-orb,
  body[data-bnc-theme] .bnc-inline-icon-orb,
  body[data-bnc-theme] .header-link-icon {
    inline-size: 2.45rem;
    block-size: 2.45rem;
    border-radius: 16px;
  }
}

@media (max-width: 575.98px) {
  body[data-bnc-theme] .bnc-theme-panel::before,
  body[data-bnc-theme] .bnc-stat-card::before,
  body[data-bnc-theme] .bnc-ct-kpi::before,
  body[data-bnc-theme] .bnc-ct-stat::before,
  body[data-bnc-theme] .bnc-ct-mini::before,
  body[data-bnc-theme] .bnc-mini-stat::before,
  body[data-bnc-theme] .rep-stat::before,
  body[data-bnc-theme] .bnc-highlight-card::before,
  body[data-bnc-theme] .card.custom-card[data-bnc-role]::before,
  body[data-bnc-theme] .custom-card[data-bnc-role]::before {
    inline-size: 180px;
    block-size: 180px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-theme-panel,
  html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-stat-card,
  html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-kpi,
  html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-stat,
  html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-ct-mini,
  html[data-bnc-motion="lively"] body[data-bnc-theme] .bnc-mini-stat,
  html[data-bnc-motion="lively"] body[data-bnc-theme] .rep-stat {
    animation: none !important;
  }
}
