/* Career Fast Pass — Design System v2 (shared tokens)
   Single source of truth for design tokens. Link this in a page's <head>
   BEFORE the page's own <style> block, then delete that page's local token
   definitions so it inherits these. School branding still wins because its
   <style> block is injected later in the cascade.

   TOKENS ONLY — no component classes. Linking this file changes nothing on
   its own; it is purely additive. A page opts in by removing its local
   redefinitions of these custom properties. This keeps blast radius near zero
   and lets pages migrate one at a time (ARCHITECTURE.md: migrations serialized).

   The legacy alias layer at the bottom maps the old per-template names
   (--blue, --s-1, --r-sm, --primary, etc.) onto the v2 canonical names so
   existing templates keep rendering during migration. Delete an alias once no
   template references it. */

:root {
  /* ============ BRAND ============ */
  --color-brand-blue: #3b82f6;
  --color-brand-indigo: #6366f1;
  --color-brand-violet: #8b5cf6;
  --color-brand-blue-dark: #2563eb;
  --color-brand-indigo-dark: #4f46e5;
  --color-brand-violet-dark: #7c3aed;
  --color-brand-blue-deep: #1e40af;
  --color-brand-blue-deepest: #1e3a8a;

  /* ============ SEMANTIC ============ */
  --color-primary: var(--color-brand-blue);
  --color-primary-hover: var(--color-brand-blue-dark);
  --color-success: #10b981;
  --color-success-dark: #059669;
  --color-success-bg: #d1fae5;
  --color-success-text: #065f46;
  --color-warning: #f59e0b;
  --color-warning-bg: #fef3c7;
  --color-warning-text: #92400e;
  --color-danger: #ef4444;
  --color-danger-bg: #fee2e2;
  --color-danger-text: #991b1b;
  --color-info-bg: #eff6ff;
  --color-info-text: #1e40af;

  /* ============ NEUTRALS ============ */
  --color-white: #ffffff;
  --color-gray-50: #f9fafb;
  --color-gray-100: #f3f4f6;
  --color-gray-200: #e5e7eb;
  --color-gray-300: #d1d5db;
  --color-gray-400: #9ca3af;
  --color-gray-500: #6b7280;
  --color-gray-600: #4b5563;
  --color-gray-700: #374151;
  --color-gray-800: #1f2937;
  --color-gray-900: #0f172a;

  /* ============ TEXT ============ */
  --color-text-primary: var(--color-gray-800);
  --color-text-secondary: var(--color-gray-500);
  --color-text-tertiary: var(--color-gray-400);
  --color-text-on-dark: var(--color-white);
  --color-text-link: var(--color-primary);

  /* ============ BORDERS ============ */
  --color-border-subtle: rgba(229, 231, 235, 0.6);
  --color-border-default: var(--color-gray-200);
  --color-border-strong: var(--color-gray-300);
  --color-border-brand: var(--color-primary);

  /* ============ BACKGROUNDS ============ */
  --color-bg-page: var(--color-gray-50);
  --color-bg-card: var(--color-white);
  --color-bg-elevated: var(--color-white);
  --color-bg-subtle: var(--color-gray-100);

  /* ============ SCORE / KIT STRENGTH ============ */
  --score-strong: var(--color-success);
  --score-ok: var(--color-warning);
  --score-weak: var(--color-danger);

  /* ============ SECTION IDENTITY (product-level, not school-branded) ============ */
  --section-resume: #3b82f6;
  --section-cover-letter: #10b981;
  --section-linkedin: #6366f1;
  --section-interview: #f59e0b;
  --section-careers: #8b5cf6;
  --section-college: #ec4899;
  --section-jobs: #0d9488;

  /* ============ GRADIENTS ============ */
  --gradient-primary: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);
  --gradient-primary-hover: linear-gradient(135deg, #2563eb 0%, #4f46e5 100%);
  --gradient-accent: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);
  --gradient-marketing-cta: linear-gradient(135deg, #1e3a8a 0%, #6366f1 50%, #8b5cf6 100%);
  --gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);
  --gradient-journey: linear-gradient(135deg, #3b82f6 0%, #6366f1 50%, #8b5cf6 100%);
  --gradient-icon-blue: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);
  --gradient-icon-purple: linear-gradient(135deg, #8b5cf6 0%, #db2777 100%);
  --gradient-icon-emerald: linear-gradient(135deg, #10b981 0%, #0891b2 100%);
  --gradient-icon-amber: linear-gradient(135deg, #f59e0b 0%, #ef4444 100%);

  /* ============ TYPOGRAPHY ============ */
  --font-family-base: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-size-2xs: 10px; --font-size-xs: 11px; --font-size-sm: 12px;
  --font-size-base: 13px; --font-size-md: 14px; --font-size-lg: 15px;
  --font-size-xl: 17px; --font-size-2xl: 20px; --font-size-3xl: 28px;
  --font-size-4xl: 32px; --font-size-5xl: 38px; --font-size-6xl: 44px; --font-size-7xl: 52px;
  --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600;
  --font-weight-bold: 700; --font-weight-extrabold: 800;
  --line-height-tight: 1.1; --line-height-snug: 1.3; --line-height-normal: 1.5; --line-height-relaxed: 1.6;

  /* ============ SPACING (4px scale) ============ */
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 20px;
  --space-6: 24px; --space-7: 28px; --space-8: 32px; --space-9: 36px; --space-10: 40px;
  --space-12: 48px; --space-14: 56px; --space-16: 64px; --space-20: 80px; --space-24: 96px;

  /* ============ RADIUS ============ */
  --radius-xs: 4px; --radius-sm: 6px; --radius-md: 8px; --radius-lg: 10px; --radius-xl: 12px;
  --radius-2xl: 14px; --radius-3xl: 18px; --radius-4xl: 20px; --radius-full: 99px;

  /* ============ SHADOWS (layered, blue-tinted, inset highlight) ============ */
  --shadow-card-sm: 0 2px 8px rgba(0,0,0,.04), 0 1px 2px rgba(59,130,246,.04), inset 0 1px 0 rgba(255,255,255,1);
  --shadow-card-md: 0 4px 14px rgba(0,0,0,.05), 0 2px 4px rgba(59,130,246,.04), inset 0 1px 0 rgba(255,255,255,1);
  --shadow-card-hover: 0 12px 28px rgba(59,130,246,.08), 0 4px 8px rgba(59,130,246,.04), inset 0 1px 0 rgba(255,255,255,1);
  --shadow-card-lift: 0 20px 44px rgba(59,130,246,.12), 0 6px 14px rgba(124,58,237,.06), inset 0 1px 0 rgba(255,255,255,1);
  --shadow-btn-primary: 0 4px 14px rgba(59,130,246,.25), inset 0 1px 0 rgba(255,255,255,.2);
  --shadow-elevated: 0 20px 60px rgba(59,130,246,.15), 0 10px 30px rgba(124,58,237,.08), inset 0 1px 0 rgba(255,255,255,.9);
  --shadow-paper: 0 6px 24px rgba(17,24,39,.10);

  /* ============ TRANSITIONS ============ */
  --transition-fast: .15s ease; --transition-base: .2s ease; --transition-slow: .25s ease;

  /* ============ MOBILE-FIRST ============ */
  --tap-min: 44px;
  --header-height: 56px;
  --tabbar-height: 60px;
  --sidebar-width: 260px;
}

/* ============ LEGACY ALIAS LAYER — remove per-token as pages migrate ============
   These let existing templates that reference the old names keep rendering
   while a page is being moved onto the canonical v2 names above. */
:root {
  --blue: var(--color-primary);
  --blue-dk: var(--color-primary-hover);
  --blue-lt: var(--color-info-bg);
  --primary: var(--color-primary);
  --primary-tint: var(--color-info-bg);
  --primary-deep: var(--color-brand-blue-dark);
  --bg-page: var(--color-bg-page);
  --bg-surface: var(--color-bg-card);
  --text-primary: var(--color-text-primary);
  --text-secondary: var(--color-text-secondary);
  --s-1: var(--space-1); --s-2: var(--space-2); --s-3: var(--space-3);
  --s-4: var(--space-4); --s-5: var(--space-5); --s-6: var(--space-6);
  --s-8: var(--space-8); --s-10: var(--space-10);
  --r-sm: var(--radius-sm); --r-md: var(--radius-md); --r-lg: var(--radius-xl);
}
