/* ==========================================================================
   NEOTEC — Color tokens
   Source: Neotec Brand Guideline v.01, "Paleta de Cores"
   Brand primitives: Neotec Blue #004FFF · Slate Blue #435E8D ·
                      Mist #E5E7F4 · Graphite #737373
   The brand guideline is dark-first (all mockups shown on near-black),
   so the semantic layer below is built as a dark theme by default —
   Mist stands in for primary text on the dark canvas exactly as the
   guideline specifies ("Mist — texto principal sobre fundo escuro").
   ========================================================================== */

:root {
  /* ---- Brand primitives (from guideline, do not rename) ---- */
  --neotec-blue: #004FFF;       /* RGB 0 79 255 — destaques, CTAs, ícones ativos */
  --neotec-blue-rgb: 0, 79, 255; /* @kind other */
  --slate-blue: #435E8D;        /* RGB 67 94 141 — superfícies, variações do símbolo */
  --slate-blue-rgb: 67, 94, 141; /* @kind other */
  --mist: #E5E7F4;              /* RGB 229 231 244 — texto principal sobre fundo escuro */
  --mist-rgb: 229, 231, 244; /* @kind other */
  --graphite: #737373;          /* RGB 115 115 115 — texto secundário, legendas, bordas */
  --graphite-rgb: 115, 115, 115; /* @kind other */

  /* ---- Extended neutral scale (derived for dark-UI depth) ---- */
  --neo-black-0: #030304;   /* deepest canvas */
  --neo-black-1: #08090C;   /* app/site background */
  --neo-black-2: #0E1015;   /* elevated surface (panels, nav) */
  --neo-black-3: #16181F;   /* card surface */
  --neo-black-4: #1E212A;   /* hover surface / inputs */
  --neo-black-5: #2A2E3A;   /* strongest surface, popovers */

  /* ---- Blue ramp (accent, derived from Neotec Blue) ---- */
  --blue-100: #E8EEFF;
  --blue-300: #7FA2FF;
  --blue-500: var(--neotec-blue);
  --blue-600: #0040D6;
  --blue-700: #0032A8;
  --blue-glow: rgba(0, 79, 255, 0.45);

  /* ---- Text ---- */
  --text-primary: var(--mist);
  --text-secondary: #A7ABBE;      /* graphite lifted for dark-bg contrast */
  --text-tertiary: #6E7284;
  --text-disabled: #4A4D5B;
  --text-on-accent: #FFFFFF;
  --text-link: var(--blue-300);
  --text-link-hover: var(--mist);

  /* ---- Surfaces ---- */
  --surface-canvas: var(--neo-black-1);
  --surface-sunken: var(--neo-black-0);
  --surface-elevated: var(--neo-black-2);
  --surface-card: var(--neo-black-3);
  --surface-hover: var(--neo-black-4);
  --surface-pressed: var(--neo-black-5);
  --surface-accent: var(--neotec-blue);
  --surface-accent-hover: var(--blue-600);
  --surface-accent-pressed: var(--blue-700);

  /* ---- Glass / liquid-glass surfaces ---- */
  --glass-fill: rgba(233, 235, 250, 0.06);
  --glass-fill-hover: rgba(233, 235, 250, 0.10);
  --glass-fill-strong: rgba(233, 235, 250, 0.14);
  --glass-border: rgba(233, 235, 250, 0.14);
  --glass-border-strong: rgba(233, 235, 250, 0.24);
  --glass-accent-fill: rgba(0, 79, 255, 0.16);
  --glass-accent-border: rgba(0, 79, 255, 0.4);

  /* ---- Borders / dividers ---- */
  --border-subtle: rgba(233, 235, 250, 0.08);
  --border-default: rgba(233, 235, 250, 0.14);
  --border-strong: rgba(233, 235, 250, 0.24);
  --border-accent: var(--neotec-blue);

  /* ---- Semantic status (kept desaturated/premium, blue stays sole hero hue) ---- */
  --status-success: #34D399;
  --status-success-bg: rgba(52, 211, 153, 0.12);
  --status-warning: #F5B84B;
  --status-warning-bg: rgba(245, 184, 75, 0.12);
  --status-danger: #F1665C;
  --status-danger-bg: rgba(241, 102, 92, 0.12);
  --status-info: var(--blue-300);
  --status-info-bg: var(--glass-accent-fill);

  /* ---- Focus ---- */
  --focus-ring: rgba(0, 79, 255, 0.55);
}
