:root {
  --bg: var(--pluze-color-canvas);
  --panel: var(--pluze-color-surface);
  --text: var(--pluze-color-text);
  --muted: var(--pluze-color-text-muted);
  --line: var(--pluze-color-border);
  --sidebar: var(--pluze-brand-navy);
  --accent: var(--pluze-action-primary);
  --ok: var(--pluze-status-success);
  --warn: var(--pluze-status-warning);
  --danger: var(--pluze-status-danger);
  --info: var(--pluze-status-info);
}

[data-pluze-theme="sereno"] .btn.primary,
[data-pluze-theme="sereno"] .big-action,
[data-pluze-theme="sereno"] .bottom-nav button {
  border-color: var(--pluze-action-primary);
  background: var(--pluze-action-primary);
  color: var(--pluze-action-on-primary);
}

[data-pluze-theme="sereno"] .btn.primary:hover,
[data-pluze-theme="sereno"] .big-action:hover:not(:disabled) {
  border-color: var(--pluze-action-primary-hover);
  background: var(--pluze-action-primary-hover);
}

[data-pluze-theme="sereno"] .sidebar nav a:hover,
[data-pluze-theme="sereno"] .sidebar nav a:focus-visible {
  background: var(--pluze-color-sidebar-hover);
  color: var(--pluze-color-sidebar-on-blue);
}

[data-pluze-theme="sereno"] .sidebar nav a.active {
  background: var(--pluze-color-sidebar-active);
  color: var(--pluze-color-sidebar-active-text);
  box-shadow: var(--pluze-shadow-sm);
}

[data-pluze-theme="sereno"] .sidebar {
  color: var(--pluze-color-sidebar-on-blue);
  background: linear-gradient(160deg,
    var(--pluze-color-sidebar-blue-start),
    var(--pluze-color-sidebar-blue-end));
  border-right-color: var(--pluze-color-sidebar-line-on-blue);
  box-shadow: 0 12px 30px var(--pluze-color-sidebar-blue-shadow);
}

[data-pluze-theme="sereno"] .sidebar .brand-sidebar,
[data-pluze-theme="sereno"] .sidebar .sidebar-user {
  border-color: var(--pluze-color-sidebar-line-on-blue);
}

[data-pluze-theme="sereno"] .sidebar .brand-sidebar strong,
[data-pluze-theme="sereno"] .sidebar .sidebar-user strong,
[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher strong {
  color: var(--pluze-color-sidebar-on-blue);
}

[data-pluze-theme="sereno"] .sidebar .nav-label,
[data-pluze-theme="sereno"] .sidebar .brand-sidebar small,
[data-pluze-theme="sereno"] .sidebar .sidebar-user small,
[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher small {
  color: var(--pluze-color-sidebar-muted-on-blue);
}

[data-pluze-theme="sereno"] .sidebar nav a {
  color: var(--pluze-color-sidebar-on-blue);
}

[data-pluze-theme="sereno"] .sidebar nav a.active .nav-icon,
[data-pluze-theme="sereno"] .sidebar nav a.active svg {
  color: var(--pluze-color-sidebar-on-blue);
  background: var(--pluze-color-sidebar-blue-start);
}

[data-pluze-theme="sereno"] .page-tabs a.active,
[data-pluze-theme="sereno"] .bottom-nav a.active,
[data-pluze-theme="sereno"] .wizard-steps li.active {
  border-color: var(--pluze-action-primary);
  color: var(--pluze-action-primary);
}

[data-pluze-theme="sereno"] .card,
[data-pluze-theme="sereno"] .metric,
[data-pluze-theme="sereno"] .state-card,
[data-pluze-theme="sereno"] .topbar,
[data-pluze-theme="sereno"] .bottom-nav {
  border-color: var(--pluze-color-border);
  background: var(--pluze-color-surface);
}

[data-pluze-theme="sereno"] .login-page {
  background: linear-gradient(145deg, var(--pluze-color-surface) 0%, var(--pluze-color-canvas) 58%, var(--pluze-action-primary-soft) 100%);
}

[data-pluze-theme="sereno"] .login-card {
  border-color: var(--pluze-color-border);
  background: var(--pluze-color-surface);
  box-shadow: var(--pluze-shadow-md);
}

[data-pluze-theme="sereno"] input:focus-visible,
[data-pluze-theme="sereno"] select:focus-visible,
[data-pluze-theme="sereno"] textarea:focus-visible,
[data-pluze-theme="sereno"] button:focus-visible,
[data-pluze-theme="sereno"] a:focus-visible {
  outline: 3px solid var(--pluze-action-focus-ring);
  outline-offset: 2px;
}

[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher {
  color: var(--pluze-color-sidebar-on-blue);
  border-color: var(--pluze-color-sidebar-line-on-blue);
  background: var(--pluze-color-sidebar-icon-bg);
  box-shadow: none;
}

[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher__mark {
  border-color: var(--pluze-color-sidebar-active);
  background: var(--pluze-color-sidebar-active);
  color: var(--pluze-color-sidebar-active-text);
}

[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher select {
  border-color: var(--pluze-color-sidebar-active);
  background: var(--pluze-color-sidebar-active);
  color: var(--pluze-color-sidebar-active-text);
}

[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher__field::after {
  color: var(--pluze-color-sidebar-active-text);
}

[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher select:hover,
[data-pluze-theme="sereno"] .sidebar .pluze-product-switcher select:focus-visible {
  border-color: var(--pluze-color-sidebar-on-blue);
}

@media (prefers-reduced-motion: reduce) {
  [data-pluze-theme="sereno"] *,
  [data-pluze-theme="sereno"] *::before,
  [data-pluze-theme="sereno"] *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
