/* ============================================
   GOOGLE GEMINI STUDENT CLUB — DESIGN TOKENS
   ============================================ */

:root {
  /* --- Google Brand Colors --- */
  --g-blue: #4285F4;
  --g-red: #EA4335;
  --g-yellow: #FBBC04;
  --g-green: #34A853;

  /* --- Gemini Gradient Palette --- */
  --gemini-start: #4285F4;
  --gemini-mid: #1A73E8;
  --gemini-end: #0D47A1;
  --gemini-gradient: linear-gradient(135deg, var(--gemini-start), var(--gemini-mid), var(--gemini-end));
  --gemini-gradient-h: linear-gradient(90deg, #4285F4, #34A853, #FBBC04, #EA4335);
  --gemini-gradient-shine: linear-gradient(135deg, #4285F4 0%, #9B72CB 25%, #D96570 50%, #D96570 75%, #FBBC04 100%);

  /* --- Surface Colors (Light Mode) --- */
  --bg-primary: #FFFFFF;
  --bg-secondary: #F8F9FA;
  --bg-tertiary: #F1F3F4;
  --bg-elevated: #FFFFFF;
  --bg-overlay: rgba(0, 0, 0, 0.5);

  /* --- Text Colors --- */
  --text-primary: #202124;
  --text-secondary: #5F6368;
  --text-tertiary: #80868B;
  --text-inverse: #FFFFFF;
  --text-link: #1A73E8;
  --text-link-hover: #174EA6;

  /* --- Border Colors --- */
  --border-light: #E8EAED;
  --border-medium: #DADCE0;
  --border-focus: #4285F4;

  /* --- Status Colors --- */
  --status-success: #34A853;
  --status-success-bg: #E6F4EA;
  --status-warning: #FBBC04;
  --status-warning-bg: #FEF7E0;
  --status-error: #EA4335;
  --status-error-bg: #FCE8E6;
  --status-info: #4285F4;
  --status-info-bg: #E8F0FE;

  /* --- Typography --- */
  --font-primary: 'Inter', 'Google Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-display: 'Google Sans', 'Inter', sans-serif;
  --font-mono: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace;

  --fs-xs: 0.75rem;     /* 12px */
  --fs-sm: 0.8125rem;   /* 13px */
  --fs-base: 0.9375rem; /* 15px */
  --fs-md: 1rem;        /* 16px */
  --fs-lg: 1.125rem;    /* 18px */
  --fs-xl: 1.25rem;     /* 20px */
  --fs-2xl: 1.5rem;     /* 24px */
  --fs-3xl: 1.875rem;   /* 30px */
  --fs-4xl: 2.25rem;    /* 36px */
  --fs-5xl: 3rem;       /* 48px */
  --fs-6xl: 3.75rem;    /* 60px */

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

  --lh-tight: 1.2;
  --lh-normal: 1.5;
  --lh-relaxed: 1.75;

  /* --- Spacing (4px base) --- */
  --space-1: 0.25rem;   /* 4px */
  --space-2: 0.5rem;    /* 8px */
  --space-3: 0.75rem;   /* 12px */
  --space-4: 1rem;      /* 16px */
  --space-5: 1.25rem;   /* 20px */
  --space-6: 1.5rem;    /* 24px */
  --space-8: 2rem;      /* 32px */
  --space-10: 2.5rem;   /* 40px */
  --space-12: 3rem;     /* 48px */
  --space-16: 4rem;     /* 64px */
  --space-20: 5rem;     /* 80px */
  --space-24: 6rem;     /* 96px */

  /* --- Border Radius --- */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 24px;
  --radius-pill: 9999px;
  --radius-circle: 50%;

  /* --- Shadows (3-tier) --- */
  --shadow-xs: 0 1px 2px rgba(60, 64, 67, 0.1);
  --shadow-sm: 0 1px 3px rgba(60, 64, 67, 0.15), 0 1px 2px rgba(60, 64, 67, 0.1);
  --shadow-md: 0 4px 6px rgba(60, 64, 67, 0.12), 0 1px 3px rgba(60, 64, 67, 0.08);
  --shadow-lg: 0 10px 20px rgba(60, 64, 67, 0.12), 0 3px 6px rgba(60, 64, 67, 0.08);
  --shadow-xl: 0 20px 40px rgba(60, 64, 67, 0.15), 0 5px 10px rgba(60, 64, 67, 0.1);
  --shadow-glow-blue: 0 0 20px rgba(66, 133, 244, 0.3);
  --shadow-glow-multi: 0 0 30px rgba(66, 133, 244, 0.15), 0 0 60px rgba(155, 114, 203, 0.1);

  /* --- Glassmorphism --- */
  --glass-bg: rgba(255, 255, 255, 0.72);
  --glass-border: rgba(255, 255, 255, 0.35);
  --glass-blur: blur(20px);
  --glass-bg-dark: rgba(30, 30, 46, 0.75);
  --glass-border-dark: rgba(255, 255, 255, 0.08);

  /* --- Transitions --- */
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 400ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-spring: 500ms cubic-bezier(0.34, 1.56, 0.64, 1);

  /* --- Z-Index Scale --- */
  --z-base: 1;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-overlay: 300;
  --z-modal: 400;
  --z-toast: 500;
  --z-tooltip: 600;

  /* --- Layout --- */
  --max-width: 1200px;
  --max-width-narrow: 800px;
  --navbar-height: 70px;
  --sidebar-width: 280px;
}

/* ============================================
   DARK MODE
   ============================================ */
[data-theme="dark"] {
  --bg-primary: #1E1E2E;
  --bg-secondary: #181825;
  --bg-tertiary: #11111B;
  --bg-elevated: #2A2A3C;
  --bg-overlay: rgba(0, 0, 0, 0.7);

  --text-primary: #CDD6F4;
  --text-secondary: #A6ADC8;
  --text-tertiary: #6C7086;
  --text-inverse: #1E1E2E;
  --text-link: #89B4FA;
  --text-link-hover: #B4D0FB;

  --border-light: #313244;
  --border-medium: #45475A;
  --border-focus: #89B4FA;

  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.35);
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.4);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.5);

  --glass-bg: var(--glass-bg-dark);
  --glass-border: var(--glass-border-dark);
}
