/* ============================================
   Design Tokens — Code 369 Portais Universitários
   (tema dark futurista alinhado ao ai-first)
   ============================================ */

:root {
  /* === Cores da marca Code 369 (preservadas) === */
  --c-primary: #7c4dff;
  --c-primary-50: #1d1533;
  --c-primary-100: #2a1e4a;
  --c-primary-200: #3a2a66;
  --c-primary-300: #543896;
  --c-primary-400: #6a44c7;
  --c-primary-500: #7c4dff;
  --c-primary-600: #8f68ff;
  --c-primary-700: #a582ff;
  --c-primary-800: #c3a6ff;
  --c-primary-900: #e4d9ff;

  /* === Cores Destaque (Roxo Code 369) === */
  --c-accent: #22d3ee;
  --c-accent-50: #0c2836;
  --c-accent-100: #123a4d;
  --c-accent-200: #16546b;
  --c-accent-300: #1b7190;
  --c-accent-400: #1d93b8;
  --c-accent-500: #22d3ee;
  --c-accent-600: #54def2;
  --c-accent-700: #86e9f7;
  --c-accent-800: #bdf3fb;
  --c-accent-900: #e2fafd;

  /* === Cores Acadêmicas (azul/ciano) === */
  --c-academic: #3b82f6;
  --c-academic-50: #0d1830;
  --c-academic-500: #3b82f6;
  --c-academic-700: #60a5fa;

  /* === Neutros === */
  --c-text: #f2f4fb;
  --c-text-secondary: #b8c0d4;
  --c-text-muted: #8491ab;
  --c-text-inverse: #ffffff;
  --c-text-link: var(--c-accent-500);

  /* === Fundos === */
  --c-bg: #070b18;
  --c-bg-alt: #0a0f1f;
  --c-bg-subtle: #0d1428;
  --c-bg-muted: #111a33;
  --c-bg-dark: #060a14;
  --c-bg-darker: #04070f;
  --c-bg-primary: var(--c-primary-500);
  --c-bg-accent: var(--c-accent-500);
  --c-bg-glass: rgba(255, 255, 255, 0.05);
  --c-bg-glass-strong: rgba(255, 255, 255, 0.09);

  /* === Bordas === */
  --c-border: rgba(255, 255, 255, 0.12);
  --c-border-light: rgba(255, 255, 255, 0.07);
  --c-border-strong: rgba(255, 255, 255, 0.2);
  --c-border-focus: var(--c-accent-500);

  /* === Estados === */
  --c-success: #34d399;
  --c-success-bg: rgba(52, 211, 153, 0.12);
  --c-warning: #fbbf24;
  --c-warning-bg: rgba(251, 191, 36, 0.12);
  --c-error: #f87171;
  --c-error-bg: rgba(248, 113, 113, 0.12);
  --c-info: #60a5fa;
  --c-info-bg: rgba(96, 165, 250, 0.12);

  /* === Tipografia === */
  --ff-display: 'Space Grotesk', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ff-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
  --ff-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;

  --fs-2xs: 0.6875rem;
  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-md: 1.125rem;
  --fs-base: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: 1.375rem;
  --fs-2xl: 1.75rem;
  --fs-3xl: 2.25rem;
  --fs-4xl: clamp(2.5rem, 6vw, 3.5rem);
  --fs-5xl: clamp(2.75rem, 7vw, 4rem);

  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;

  --lh-tight: 1.12;
  --lh-snug: 1.3;
  --lh-normal: 1.5;
  --lh-relaxed: 1.65;

  --ls-tight: -0.03em;
  --ls-normal: 0;
  --ls-wide: 0.02em;
  --ls-wider: 0.05em;

  /* === Espaçamentos === */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.25rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-10: 2.5rem;
  --sp-12: 3rem;
  --sp-16: 4rem;
  --sp-20: 5rem;
  --sp-24: 6rem;

  /* === Bordas e Sombras === */
  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 9999px;

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-sm: 0 2px 12px rgba(2, 6, 23, 0.35);
  --shadow-md: 0 8px 32px rgba(2, 6, 23, 0.45);
  --shadow-lg: 0 24px 64px rgba(2, 6, 23, 0.55);
  --shadow-xl: 0 32px 80px rgba(2, 6, 23, 0.6);
  --glow-violet: 0 0 24px rgba(124, 77, 255, 0.35);
  --glow-cyan: 0 0 24px rgba(34, 211, 238, 0.3);

  /* === Gradientes === */
  --grad-brand: linear-gradient(135deg, #7c4dff 0%, #3b82f6 50%, #22d3ee 100%);
  --grad-brand-soft: linear-gradient(135deg, #9d7bff 0%, #60a5fa 50%, #67e8f9 100%);
  --grad-violet: linear-gradient(135deg, #7c4dff, #43286f);
  --grad-text: linear-gradient(120deg, #9d7bff 0%, #60a5fa 45%, #67e8f9 100%);

  /* === Layout === */
  --max-w: 1200px;
  --max-w-narrow: 760px;
  --max-w-wide: 1400px;
  --container: 1200px;
  --header-h: 76px;
  --grid-gap: 24px;
  --section-py: var(--sp-24);
  --section-py-mobile: var(--sp-16);

  /* === Transições === */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --t-fast: 0.18s var(--ease);
  --t-base: 0.32s var(--ease);
  --t-slow: 0.6s var(--ease);

  /* === Z-index === */
  --z-header: 100;
  --z-dropdown: 101;
  --z-overlay: 90;
  --z-modal: 103;
  --z-toast: 104;
}
