/* Nexora — Plataforma de Prestação de Contas (White Label)
   Design tokens semânticos, inspirados na convenção shadcn/ui (triplas HSL consumidas via hsl(var(--x))).
   O motor de marca (js/brands.js) sobrescreve o bloco "Brand-controlled" em runtime. */

:root {
  color-scheme: light;

  /* Base neutra (light) */
  --background: 0 0% 100%;
  --foreground: 240 10% 12%;
  --card: 0 0% 100%;
  --card-foreground: 240 10% 12%;
  --popover: 0 0% 100%;
  --popover-foreground: 240 10% 12%;
  --secondary: 240 5% 96%;
  --secondary-foreground: 240 6% 20%;
  --muted: 240 5% 96%;
  --muted-foreground: 240 4% 46%;
  --border: 240 6% 90%;
  --input: 240 6% 88%;

  --destructive: 4 74% 46%;
  --destructive-foreground: 0 0% 100%;
  --success: 152 60% 30%;
  --success-foreground: 0 0% 100%;
  --warning: 38 92% 38%;
  --warning-foreground: 0 0% 100%;
  --info: 214 84% 46%;
  --info-foreground: 0 0% 100%;

  --chart-1: 12 76% 55%;
  --chart-2: 173 45% 40%;
  --chart-3: 221 60% 45%;
  --chart-4: 43 74% 55%;
  --chart-5: 280 45% 55%;

  /* Brand-controlled — valores padrão (preset Nexora); js/brands.js sobrescreve em runtime */
  --primary: 240 48% 35%;
  --primary-foreground: 0 0% 100%;
  --accent: 191 100% 50%;
  --accent-foreground: 243 36% 9%;
  --ring: 191 100% 50%;
  --radius: 0.625rem;
  --font-sans: "Plus Jakarta Sans", "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;

  --sidebar-background: 243 36% 9%;
  --sidebar-foreground: 0 0% 92%;
  --sidebar-primary: 240 48% 35%;
  --sidebar-primary-foreground: 0 0% 100%;
  --sidebar-accent: 247 45% 14%;
  --sidebar-accent-foreground: 0 0% 96%;
  --sidebar-border: 240 8% 18%;

  /* Escala fixa (não controlada por marca) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  --shadow-sm: 0 1px 2px rgb(0 0 0 / 6%);
  --shadow-md: 0 4px 12px rgb(0 0 0 / 8%);
  --shadow-lg: 0 12px 32px rgb(0 0 0 / 12%);

  --topbar-height: 64px;
  --sidebar-width: 264px;
  --sidebar-width-collapsed: 72px;

  --duration-fast: 120ms;
  --duration-normal: 200ms;
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
}

[data-theme="dark"] {
  color-scheme: dark;

  --background: 240 10% 6%;
  --foreground: 0 0% 94%;
  --card: 240 9% 9%;
  --card-foreground: 0 0% 94%;
  --popover: 240 9% 9%;
  --popover-foreground: 0 0% 94%;
  --secondary: 240 6% 14%;
  --secondary-foreground: 0 0% 92%;
  --muted: 240 6% 14%;
  --muted-foreground: 240 5% 64%;
  --border: 240 6% 20%;
  --input: 240 6% 22%;

  --destructive: 4 70% 58%;
  --destructive-foreground: 0 0% 100%;
  --success: 152 50% 42%;
  --success-foreground: 0 0% 100%;
  --warning: 38 88% 52%;
  --warning-foreground: 0 0% 10%;
  --info: 214 80% 60%;
  --info-foreground: 0 0% 100%;

  --primary-foreground: 0 0% 100%;
  --accent-foreground: 0 0% 100%;

  --sidebar-background: 240 12% 5%;
  --sidebar-foreground: 0 0% 90%;
  --sidebar-accent: 240 8% 13%;
  --sidebar-accent-foreground: 0 0% 96%;
  --sidebar-border: 240 8% 16%;

  --shadow-sm: 0 1px 2px rgb(0 0 0 / 30%);
  --shadow-md: 0 4px 16px rgb(0 0 0 / 40%);
  --shadow-lg: 0 16px 40px rgb(0 0 0 / 50%);
}
