:root {
  /* --- BRAND PALETTE --- */
  --clr-primary: #00ff41;
  --clr-secondary: #00a529;

  --clr-primary-100: #ffffff;
  --clr-primary-200: #c8ffd6; /* AA on --clr-base-700 */
  --clr-primary-600: #8ac18a; /* AA on --clr-base-700+ */

  --clr-text-bright: var(var(--clr-primary-100));
  --clr-text: var(var(--clr-primary-200));
  --clr-text-muted: var(var(--clr-primary-600));

  --clr-base-900: #0a0f0a;
  --clr-base-800: #172317;
  --clr-base-700: #223f22;

  /* --- ACCENT PALETTE --- */

  --colour1-900: #001a00;
  --colour1-500: #00ff41;

  --colour2-900: #001a0d;
  --colour2-500: #33ff88;

  /* --- GLASS BACKGROUNDS --- */
  --glass-bg: var(--glass-bg-base);
  --glass-border: var(--glass-border-base);

  --glass-bg-base: rgba(0, 255, 65, 0.02);
  --glass-border-base: rgba(0, 255, 65, 0.06);

  /* Themed Glass */
  --glass-bg-colour1: rgba(0, 255, 65, 0.06);
  --glass-border-colour1: rgba(0, 255, 65, 0.2);

  --glass-bg-colour2: rgba(51, 255, 136, 0.06);
  --glass-border-colour2: rgba(51, 255, 136, 0.2);

  /* --- GLOWS --- */
  --glow-colour1: rgba(0, 255, 65, 0.5);
  --glow-colour2: rgba(51, 255, 136, 0.4);

  /* --- OPACITY VARIANTS --- */

  /* Neutral  */
  --base-10: rgba(10, 15, 10, 0.1);
  --base-15: rgba(10, 15, 10, 0.15);
  --base-20: rgba(10, 15, 10, 0.2);
  --base-30: rgba(10, 15, 10, 0.3);
  --base-40: rgba(10, 15, 10, 0.4);

  /* Brand */
  --primary-10: rgba(0, 255, 65, 0.1);
  --primary-15: rgba(0, 255, 65, 0.15);
  --primary-20: rgba(0, 255, 65, 0.2);
  --primary-30: rgba(0, 255, 65, 0.3);
  --primary-40: rgba(0, 255, 65, 0.4);

  --secondary-10: rgba(51, 255, 136, 0.1);
  --secondary-15: rgba(51, 255, 136, 0.15);
  --secondary-20: rgba(51, 255, 136, 0.2);
  --secondary-30: rgba(51, 255, 136, 0.3);
  --secondary-40: rgba(51, 255, 136, 0.4);

  /* --- THEME LOGIC  --- */

  --clr-primary: var(--colour1-500);
  --primary-bg: var(--colour1-900);
  --primary-glow: var(--glow-colour1);
  --primary-glass-bg: var(--glass-bg-colour1);
  --primary-glass-border: var(--glass-border-colour1);

  --clr-secondary: var(--colour2-500);
  --secondary-bg: var(--colour2-900);
  --secondary-glow: var(--glow-colour2);
  --secondary-glass-bg: var(--glass-bg-colour2);
  --secondary-glass-border: var(--glass-border-colour2);

  --glow-primary: var(--primary-glow);
  --glow-secondary: var(--secondary-glow);

  /* --- BLUR SYSTEM --- */
  --blur-light: 0.8rem;
  --blur-medium: 1.6rem;
  --blur-heavy: 3.2rem;
  --blur-max: 6.4rem;

  --glass-effect-light: blur(var(--blur-light)) saturate(180%);
  --glass-effect-medium: blur(var(--blur-medium)) saturate(180%);
  --glass-effect-heavy: blur(var(--blur-heavy)) saturate(180%);
}
