/**
 * AUTO-GENERATED CSS Variables
 * DO NOT EDIT THIS FILE MANUALLY
 * Generated from: frontend/lib/design-tokens.ts
 * Run 'npm run generate:vars' to update
 */

:root {
  /* ==== BRAND CORE COLOURS ==== */
  --rask-white: #FFFFFF;
  --rask-black: #000000;
  --rask-primary: #1a1a1a;
  --rask-bg: #FFFAF0;
  --rask-bg-secondary: #E2EBF4;
  --rask-accent-purple: #C3AAF5;
  --rask-link: #5250F5;
  --rask-blue: #5250F5;
  --rask-success: #07723F;
  --rask-danger: #F65D1A;
  --rask-warning: #F4D876;
  --rask-indigo: #5250F5;
  --rask-light-blue: #B4CFEB;
  --rask-orange: #EB6513;
  --rask-pink: #E798E7;
  --rask-teal: #024F57;
  --rask-forest: #2D5303;
  --rask-success-green: #07723F;
  --rask-olive: #D8DE9B;
  --rask-gold: #F4D876;
  --rask-tan: #B8A168;
  --rask-dark-gold: #775D10;
  --rask-maroon: #1a1a1a;
  --rask-terracotta: #904B35;
  --rask-brown: #B44537;
  --rask-peach: #FFD5BC;
  --rask-coral: #FF9676;
  --rask-light-pink: #FEBAEB;
  --rask-lavender: #BFCAEF;
  --rask-pale-purple: #D2C5F5;
  --rask-sand: #E2D9C6;
  --rask-cream: #F3E1BA;
  --rask-navy: #023057;
  --rask-gray: #5F5F5F;
  --rask-pale-gold: #EADE8A;
  --rask-reddish-brown: #9A5142;
  --rask-light-yellow: #FCECB3;
  --rask-ice-blue: #E2EBF4;
  --rask-magenta: #F3CCF3;
  --rask-deep-maroon: #410016;

  /* ==== SEMANTIC COLOURS ==== */
  --success-50: #D8DE9B;
  --success-100: #E6E9C8;
  --success-200: #D0D695;
  --success-300: #B9C362;
  --success-400: #A3B02E;
  --success-500: #07723F;
  --success-600: #066035;
  --success-700: #044E2B;
  --success-800: #033B21;
  --success-900: #2D5303;
  --error-50: #FFD5BC;
  --error-100: #FF9676;
  --error-200: #904B35;
  --error-300: #B44537;
  --error-400: #9A5142;
  --error-500: #F65D1A;
  --error-600: #D14F16;
  --error-700: #AC4112;
  --error-800: #87330E;
  --error-900: #1a1a1a;
  --warning-50: #FCECB3;
  --warning-100: #EADE8A;
  --warning-200: #E1D261;
  --warning-300: #D8C638;
  --warning-400: #CFBA0F;
  --warning-500: #F4D876;
  --warning-600: #B8A168;
  --warning-700: #9C8958;
  --warning-800: #807148;
  --warning-900: #775D10;
  --info-50: #BFCAEF;
  --info-100: #F3CCF3;
  --info-200: #D2C5F5;
  --info-300: #C3AAF5;
  --info-400: #E798E7;
  --info-500: #5250F5;
  --info-600: #4644D0;
  --info-700: #3A38AB;
  --info-800: #2E2D86;
  --info-900: #023057;

  /* ==== NEUTRAL COLOURS ==== */
  --neutral-50: #FFFAF0;
  --neutral-100: #E2EBF4;
  --neutral-200: #E2D9C6;
  --neutral-300: #F3E1BA;
  --neutral-400: #B4CFEB;
  --neutral-500: #5F5F5F;
  --neutral-600: #1a1a1a;
  --neutral-700: #1a1a1a;
  --neutral-800: #1a1a1a;
  --neutral-900: #1a1a1a;

  /* ==== SURFACE COLOURS ==== */
  --surface-canvas: #FFFAF0;
  --surface-card-neutral: #FFFFFF;
  --surface-card-inset: #FFFFFF;
  --surface-card-tinted-brand: #BFCAEF;
  --surface-card-tinted-warm: #FFD5BC;
  --surface-card-tinted-warning: #FCECB3;
  --surface-card-tinted-cool: #E2EBF4;
  --surface-card-contrast: #1a1a1a;
  --surface-border-subtle: #E2D9C6;
  --surface-border-emphasis: #B4CFEB;
  --surface-reading-progress-track: #E2EBF4;
  --surface-reading-progress-fill: #5250F5;
  --surface-tinted-forest-surface: #2D5303;
  --surface-tinted-forest-ink: #FFFAF0;
  --surface-tinted-forest-muted-ink: #E2D9C6;
  --surface-tinted-forest-sub-surface: #FFFAF01A;
  --surface-tinted-maroon-surface: #410016;
  --surface-tinted-maroon-ink: #FFFAF0;
  --surface-tinted-maroon-muted-ink: #E2D9C6;
  --surface-tinted-maroon-sub-surface: #FFFAF01A;
  --surface-tinted-gold-surface: #F4D876;
  --surface-tinted-gold-ink: #1a1a1a;
  --surface-tinted-gold-muted-ink: #775D10;
  --surface-tinted-gold-sub-surface: #1A1A1A0D;
  --surface-tinted-sky-surface: #B4CFEB;
  --surface-tinted-sky-ink: #1a1a1a;
  --surface-tinted-sky-muted-ink: #023057;
  --surface-tinted-sky-sub-surface: #1A1A1A0D;

  /* ==== TYPOGRAPHY ==== */
  --font-display: 'DM Serif Display', Georgia, serif;
  --font-body: 'Source Sans 3', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'Roboto Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* ==== PUBLIC SITE TYPOGRAPHY (rask.au — Figma 2138:8339) ==== */
  --public-text-display-hero-size: clamp(36px, 4.5vw + 1rem, 70px);
  --public-text-display-hero-lh: 1;
  --public-text-display-hero-weight: 400;
  --public-text-display-hero-ls: -0.01em;
  --public-text-heading-section-size: clamp(26px, 2.5vw + 1rem, 48px);
  --public-text-heading-section-lh: 1.125;
  --public-text-heading-section-weight: 400;
  --public-text-heading-section-ls: -0.01em;
  --public-text-heading-serif-card-size: 24px;
  --public-text-heading-serif-card-size-mobile: 22px;
  --public-text-heading-serif-card-lh: 1.25;
  --public-text-heading-serif-card-weight: 400;
  --public-text-heading-serif-card-ls: 0;
  --public-text-heading-card-size: 26px;
  --public-text-heading-card-size-mobile: 22px;
  --public-text-heading-card-lh: 1.25;
  --public-text-heading-card-weight: 500;
  --public-text-heading-card-ls: 0;
  --public-text-heading-small-size: 22px;
  --public-text-heading-small-size-mobile: 20px;
  --public-text-heading-small-lh: 1.25;
  --public-text-heading-small-weight: 500;
  --public-text-heading-small-ls: 0;
  --public-text-eyebrow-size: 16px;
  --public-text-eyebrow-lh: 1.25;
  --public-text-eyebrow-weight: 600;
  --public-text-eyebrow-ls: 0;
  --public-text-body-lead-size: 20px;
  --public-text-body-lead-lh: 1.5;
  --public-text-body-lead-weight: 400;
  --public-text-body-lead-ls: 0;
  --public-text-body-size: 16px;
  --public-text-body-lh: 1.5;
  --public-text-body-weight: 400;
  --public-text-body-ls: 0;
  --public-text-body-small-size: 14px;
  --public-text-body-small-lh: 1.5;
  --public-text-body-small-weight: 400;
  --public-text-body-small-ls: 0;
  --public-text-button-size: 18px;
  --public-text-button-lh: 1.5;
  --public-text-button-weight: 700;
  --public-text-button-ls: 0.01em;
  --public-text-header-nav-size: 16px;
  --public-text-header-nav-lh: 1.25;
  --public-text-header-nav-weight: 500;
  --public-text-header-nav-ls: 0;
  --public-text-footer-nav-size: 16px;
  --public-text-footer-nav-lh: 2;
  --public-text-footer-nav-weight: 400;
  --public-text-footer-nav-ls: 0;
  --public-text-badge-size: 14px;
  --public-text-badge-lh: 1.25;
  --public-text-badge-weight: 600;
  --public-text-badge-ls: 0;
  --public-text-caption-size: 12px;
  --public-text-caption-lh: 1.5;
  --public-text-caption-weight: 400;
  --public-text-caption-ls: 0;
  --public-color-text-primary: #0F0E0D;
  --public-color-text-secondary: #2C2A28;
  --public-color-text-tertiary: #4A4845;
  --public-color-text-quaternary: #6E6B66;
  --public-color-text-primary-dark: #FFFAF0;
  --public-color-text-secondary-dark: #E8E0D0;
  --public-color-text-tertiary-dark: #C8C0B0;
  --public-color-text-quaternary-dark: #8A8278;
  --public-color-surface-paper: #FFFAF0;
  --public-color-surface-true-dark: #0F0E0D;
  --public-color-surface-white: #FFFFFF;
  --public-color-surface-button: #000000;
  --public-color-divider: #CED4DA;
  --public-color-surface-card: #FFFFFF;
  --public-color-brand-surface-coral: #FFBBA6;

  /* ==== CHART COLOURS ==== */
  --chart-grid: #e5e7eb;
  --chart-axis: #6b7280;
  --chart-tooltip-bg: #FFFAF0;
  --chart-tooltip-border: #e5e7eb;
  --chart-series-1: #5250F5;
  --chart-series-2: #07723F;
  --chart-series-3: #C3AAF5;
  --chart-series-4: #F4D876;
  --chart-series-5: #EB6513;
  --chart-series-6: #B4CFEB;
  --chart-series-7: #E798E7;
  --chart-series-8: #024F57;
  --chart-series-9: #FFD5BC;
  --chart-series-10: #023057;

  /* ==== RADIUS ==== */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-button-cta: 5px 20px 5px 20px;
  --radius-control-pill: 9999px;
  --radius-field-pill: 9999px;
  --radius-field-multiline: 24px;
  --radius-full: 9999px;

  /* ==== SHADOWS ==== */
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1);
  --rask-shadow-soft: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
  --rask-soft: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
  --rask-shadow-elevated: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --rask-elevated: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --rask-shadow-card: 0 1px 3px 0 rgba(0, 0, 0, 0.08);
  --rask-card: 0 1px 3px 0 rgba(0, 0, 0, 0.08);

  /* ==== SURFACE SHADOWS ==== */
  --surface-shadow-neutral: 0 10px 30px -22px rgba(26, 26, 26, 0.2), 0 8px 18px -18px rgba(26, 26, 26, 0.12);
  --surface-shadow-elevated: 0 20px 44px -28px rgba(26, 26, 26, 0.24), 0 12px 26px -20px rgba(26, 26, 26, 0.16);
  --surface-shadow-module: 0 24px 52px -30px rgba(82, 80, 245, 0.28), 0 14px 30px -22px rgba(26, 26, 26, 0.14);
  --surface-shadow-contrast: 0 24px 56px -30px rgba(0, 0, 0, 0.34), 0 14px 30px -22px rgba(0, 0, 0, 0.2);

  /* ==== ULTRA MEMBERSHIP TIER ==== */
  --rask-ultra-ink: #191722;
  --rask-ultra-accent: #C3AAF5;
  --rask-ultra-surface: #E9E9FF;
  --rask-ultra-badge: #C7C6FF;

  /* ==== PUBLIC SITE LAYOUT & SURFACES (rask.au — Layout Spec v1.1) ==== */
  --layout-container-page-max: 1440px;
  --layout-container-narrow-max: 880px;
  --layout-container-text-max: 640px;
  --layout-container-gutter: 32px;
  --layout-section-padding-sm: 48px;
  --layout-section-padding-sm-mobile: 36px;
  --layout-section-padding-md: 72px;
  --layout-section-padding-md-mobile: 54px;
  --layout-section-padding-lg: 96px;
  --layout-section-padding-lg-mobile: 72px;
  --layout-card-padding-sm: 24px;
  --layout-card-padding-lg: 32px;
  --layout-card-padding-xl: 48px;
  --layout-gap-xs: 8px;
  --layout-gap-sm: 12px;
  --layout-gap-md: 24px;
  --layout-gap-lg: 32px;
  --layout-radius-closer: 32px 32px 0 0;
  /* ==== PUBLIC SITE BUTTON SURFACES (rask.au — Public Button Spec v1.0) ==== */
  --public-surface-button-primary: #0F0E0D;
  --public-surface-button-primary-dark: #FFFAF0;
  --public-surface-button-primary-hover: #2C2A28;
  --public-surface-button-primary-hover-dark: #E8E0D0;
  --public-surface-button-secondary: #FFFFFF80;
  --public-surface-button-secondary-dark: #FFFFFF33;
  --public-surface-button-secondary-hover: #FFFFFFB2;
  --public-surface-button-secondary-hover-dark: #FFFFFF4D;
  --public-text-button-primary: #FFFAF0;
  --public-text-button-primary-dark: #0F0E0D;
  --public-text-button-secondary: #2C2A28;
  --public-text-button-secondary-dark: #FFFFFF;
  --public-button-padding-x: 30px;
  --public-button-padding-y: 14px;
  --public-button-height: 55px;
  --public-button-gap: 10px;
  --public-button-icon-size: 18px;
  --public-shadow-button: 0 0 7px 1px rgba(0, 0, 0, 0.05);
  /* ==== PUBLIC SITE ULTRA GRADIENT (rask.au — Tier reference card v1.0) ==== */
  --public-ultra-gradient-start: #410016;
  --public-ultra-gradient-end: #C3AAF5;
}

/* ==== PUBLIC SITE TIER COLOURS (rask.au — Tier Spec v1.0) ==== */
/* Free is the default tier; mirrored to :root so unscoped sections render as Free. */
:root, .tier-free {
  --rask-tier-accent: #B8D6EE;
  --rask-tier-accent-soft: #EAF3FA;
  --rask-tier-accent-dark: #410016;
  --rask-tier-accent-disabled: #B8D6EE4D;
  --rask-tier-accent-dark-disabled: #4100164D;
  --rask-tier-accent-hover: #CAE7FF;
  --rask-tier-accent-dark-hover: #60112C;
  --rask-tier-hero-surface: #B8D6EE;
  --rask-tier-surface-canvas: #FFFAF0;
  --rask-tier-button-shadow: 0 4px 4px 0 #B8D6EE;
  --rask-tier-button-shadow-dark: 0 4px 4px 0 #410016;
}

.tier-pro {
  --rask-tier-accent: #FF9676;
  --rask-tier-accent-soft: #FFDFD6;
  --rask-tier-accent-dark: #410016;
  --rask-tier-accent-disabled: #FFB59F4D;
  --rask-tier-accent-dark-disabled: #4100164D;
  --rask-tier-accent-hover: #FFB59F;
  --rask-tier-accent-dark-hover: #60112C;
  --rask-tier-hero-surface: #FF9676;
  --rask-tier-surface-canvas: #FFFAF0;
  --rask-tier-button-shadow: 0 4px 4px 0 #FF9676;
  --rask-tier-button-shadow-dark: 0 4px 4px 0 #410016;
}

.tier-super {
  --rask-tier-accent: #EADE8A;
  --rask-tier-accent-soft: #F9F5DC;
  --rask-tier-accent-dark: #410016;
  --rask-tier-accent-disabled: #FFF6BA4D;
  --rask-tier-accent-dark-disabled: #4100164D;
  --rask-tier-accent-hover: #FFF6BA;
  --rask-tier-accent-dark-hover: #60112C;
  --rask-tier-hero-surface: #EADE8A;
  --rask-tier-surface-canvas: #FFFAF0;
  --rask-tier-button-shadow: 0 4px 4px 0 #EADE8A;
  --rask-tier-button-shadow-dark: 0 4px 4px 0 #410016;
}

.tier-ultra {
  --rask-tier-accent: #C3AAF5;
  --rask-tier-accent-soft: #EDE6FC;
  --rask-tier-accent-dark: #410016;
  --rask-tier-accent-disabled: #E0D2FC4D;
  --rask-tier-accent-dark-disabled: #19172233;
  --rask-tier-accent-hover: #E0D2FC;
  --rask-tier-accent-dark-hover: #60112C;
  --rask-tier-hero-surface: #FFFAF008;
  --rask-tier-surface-canvas: #191722;
  --rask-tier-button-shadow: 0 4px 4px 0 #C3AAF5;
  --rask-tier-button-shadow-dark: 0 4px 4px 0 #410016;
}

/* ==== PUBLIC SITE THEME MODES (rask.au — Layout Spec §16.5) ==== */
/* Light is the default theme mode; mirrored to :root so unscoped pages render light. */
:root, .theme-light {
  --surface-canvas: #FFFAF0;
  --surface-button-primary: #0F0E0D;
  --text-button-primary: #FFFAF0;
  --text-button-secondary: #2C2A28;
}

.theme-dark {
  --surface-canvas: #0F0E0D;
  --surface-button-primary: #FFFAF0;
  --text-button-primary: #0F0E0D;
  --text-button-secondary: #FFFFFF;
}

/* Legacy & Shadcn compatibility variables (Mapped to Rask Tokens) */
:root {
  --background: var(--rask-bg);
  --foreground: var(--rask-primary);
  --card: var(--rask-white);
  --card-foreground: var(--rask-primary);
  --popover: var(--rask-white);
  --popover-foreground: var(--rask-primary);
  --primary: var(--rask-blue);
  --primary-foreground: var(--rask-white);
  --secondary: var(--rask-bg-secondary);
  --secondary-foreground: var(--rask-primary);
  --muted: var(--rask-bg-secondary);
  --muted-foreground: var(--neutral-500);
  --accent: var(--rask-accent-purple);
  --accent-foreground: var(--rask-primary);
  --destructive: var(--rask-danger);
  --destructive-foreground: var(--rask-white);
  --border: var(--neutral-200);
  --input: var(--neutral-200);
  --ring: var(--rask-blue);
}
