:root,
.theme-neves{
  --theme-60:#fff;
  --primary:#2d2a63;
  --accent:#c82333;
}

.theme-purple{
  --theme-60:#fff;
  --primary:#4425a7;
  --accent:#0bbed4;
}

.theme-blue{
  --theme-60:#fff;
  --primary:#2b6cb0;
  --accent:#0ea5e9;
}

.theme-green{
  --theme-60:#fff;
  --primary:#008235;
  --accent:#22c55e;
}

.theme-red{
  --theme-60:#fff;
  --primary:#d72638;
  --accent:#f59e0b;
}

.theme-black{
  --theme-60:#fff;
  --primary:#222;
  --accent:#0bbed4;
}

:root,
.theme-neves,
.theme-purple,
.theme-blue,
.theme-green,
.theme-red,
.theme-black{
  --primary-dark:color-mix(in srgb,var(--primary) 78%,#000);
  --primary-light:color-mix(in srgb,var(--primary) 10%,var(--theme-60));
  --accent-dark:color-mix(in srgb,var(--accent) 78%,#000);
  --accent-light:color-mix(in srgb,var(--accent) 10%,var(--theme-60));
  --sidebar:var(--primary);
  --sidebar-hover:rgba(255,255,255,.13);
  --button:var(--accent);
  --button-hover:var(--accent-dark);
  --nc-bg:var(--theme-60);
  --nc-surface:var(--theme-60);
  --nc-brand:var(--primary);
  --nc-accent:var(--accent);
}

.sidebar{background:var(--sidebar)!important}
.nav-link:hover,.nav-link-active{background:var(--sidebar-hover)!important}
.nav-link-active{box-shadow:inset 3px 0 0 var(--button)!important}
.mobile-menu-button span{background:var(--primary)!important}
.topbar .eyebrow,.eyebrow{color:var(--button)!important}
.topbar-user strong{background:var(--primary)!important}
.primary-button{background:var(--button)!important;color:#fff!important}
.primary-button:hover{background:var(--button-hover)!important}
.secondary-button{color:var(--primary)!important}
.form-stack input:focus,
.filter-form input:focus,
.filter-form select:focus,
.person-form input:focus,
.person-form select:focus,
.person-form textarea:focus,
.quick-summary-card select:focus,
.quick-summary-card input:focus,
.production-item select:focus,
.production-item input:focus{
  border-color:color-mix(in srgb,var(--primary) 55%,#fff)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)!important;
}
.stat-card strong,
.quick-action strong,
.report-card strong,
.payable-row dd,
.transfer-summary strong,
.dashboard-hero h2{color:var(--primary)!important}
.price-value,
.entry-value strong{color:var(--button)!important}
.quick-action:hover,
.report-card:hover,
.dashboard-alert-card:hover{border-color:color-mix(in srgb,var(--button) 32%,#fff)!important}
.quick-action .icon,
.stat-icon{color:var(--button)!important}
.badge-type,
.dashboard-alert-neutral strong,
.item-counter{
  background:var(--primary-light)!important;
  color:var(--primary-dark)!important;
  border-color:color-mix(in srgb,var(--primary) 22%,#fff)!important;
}
.dashboard-net-card,
.closing-net-card,
.subtotal-box{
  background:linear-gradient(135deg,var(--sidebar) 0%,var(--primary-dark) 100%)!important;
}
.dashboard-net-card span,
.dashboard-net-card strong,
.dashboard-net-card p,
.closing-net-card span,
.closing-net-card strong,
.closing-net-card p,
.subtotal-box span,
.subtotal-box strong{color:#fff!important}
.dashboard-hero{
  background:linear-gradient(135deg,var(--theme-60) 0%,var(--theme-60) 60%,var(--accent-light) 100%)!important;
}
.login-copy h1{color:var(--primary)!important}
.login-page{
  background:linear-gradient(135deg,var(--theme-60) 0%,var(--theme-60) 60%,var(--accent-light) 100%)!important;
}

/* Theme coverage for high-specificity financial widgets */
.stat-card.dashboard-net-card,
.stat-card.closing-net-card,
.cash-summary-grid .stat-card.closing-net-card,
.financial-summary-grid .stat-card.closing-net-card,
.dashboard-grid .stat-card.closing-net-card{
  background:linear-gradient(135deg,var(--sidebar) 0%,var(--primary-dark) 100%)!important;
  border-color:color-mix(in srgb,var(--primary) 26%,#fff)!important;
}

.stat-card.dashboard-net-card span,
.stat-card.dashboard-net-card strong,
.stat-card.dashboard-net-card p,
.stat-card.closing-net-card span,
.stat-card.closing-net-card strong,
.stat-card.closing-net-card p{
  color:#fff!important;
}

.cash-summary-grid .stat-card strong,
.financial-summary-grid .stat-card strong,
.dashboard-grid .stat-card strong{
  color:var(--primary)!important;
}

.cash-summary-grid .closing-net-card strong,
.financial-summary-grid .closing-net-card strong,
.dashboard-grid .closing-net-card strong{
  color:#fff!important;
}

.badge-cash-entrada,
.badge-financial-pago,
.badge-financial-recebido{
  background:var(--primary-light)!important;
  color:var(--primary-dark)!important;
  border-color:color-mix(in srgb,var(--primary) 24%,#fff)!important;
}

.badge-cash-saida,
.badge-financial-vencido,
.financial-overdue-row td:first-child strong,
.cash-exit-value{
  color:var(--button-hover)!important;
}

.cash-entry-value{
  color:var(--primary-dark)!important;
}

.financial-inline-pay select:focus{
  border-color:color-mix(in srgb,var(--primary) 55%,#fff)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)!important;
}

@media print{
  .print-header{border-bottom-color:var(--primary)!important}
  .print-header h1{color:var(--primary)!important}
}
