:root {
  color-scheme: light;
  --saas-background: #f4f6f9;
  --saas-foreground: #17263a;
  --saas-card: #ffffff;
  --saas-card-foreground: #17263a;
  --saas-primary: #1769d2;
  --saas-primary-hover: #0f5cbc;
  --saas-primary-foreground: #ffffff;
  --saas-secondary: #eef3f8;
  --saas-secondary-foreground: #334a62;
  --saas-muted: #f3f5f7;
  --saas-muted-foreground: #6f8093;
  --saas-accent: #eaf3fd;
  --saas-accent-foreground: #174f89;
  --saas-success: #158552;
  --saas-success-soft: #eaf7f0;
  --saas-warning: #a86608;
  --saas-warning-soft: #fff7e6;
  --saas-destructive: #b42318;
  --saas-destructive-hover: #9f1e15;
  --saas-destructive-soft: #fff3f2;
  --saas-border: #dfe5ec;
  --saas-border-strong: #cbd5e1;
  --saas-input: #cbd5e1;
  --saas-ring: rgba(23, 105, 210, .18);
  --saas-radius-sm: 6px;
  --saas-radius-md: 9px;
  --saas-radius-lg: 12px;
  --saas-shadow-sm: 0 1px 2px rgba(15, 39, 70, .05), 0 5px 16px rgba(15, 39, 70, .035);
  --saas-shadow-md: 0 12px 30px rgba(15, 39, 70, .08);
  --saas-content-max: 1536px;
  --saas-sidebar-width: 232px;
  --saas-header-height: 72px;
}

.nb-saas-card {
  border: 1px solid var(--saas-border);
  border-radius: var(--saas-radius-md);
  background: var(--saas-card);
  color: var(--saas-card-foreground);
  box-shadow: var(--saas-shadow-sm);
}

.nb-saas-alert {
  padding: 11px 13px;
  border: 1px solid var(--saas-border);
  border-radius: var(--saas-radius-md);
  background: var(--saas-card);
  color: var(--saas-foreground);
}
.nb-saas-alert[data-tone="success"] { border-color: #cbe8d7; background: var(--saas-success-soft); color: var(--saas-success); }
.nb-saas-alert[data-tone="warning"] { border-color: #efd9aa; background: var(--saas-warning-soft); color: var(--saas-warning); }
.nb-saas-alert[data-tone="danger"] { border-color: #efcbc8; background: var(--saas-destructive-soft); color: var(--saas-destructive); }

:is(button, a, input, select, textarea):focus-visible {
  outline: 0;
  box-shadow: 0 0 0 3px var(--saas-ring);
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
