/* ============================================================
 * AUTO-GENERATED — DO NOT EDIT BY HAND.
 * Generated from design-tokens.json by scripts/generate.mjs.
 * Theme: Neoturne
 * To change it: edit design-tokens.json and run `pnpm generate`.
 * @traceability FR-001, FR-002, FR-003
 * ============================================================ */

:root {
  /* Theme */
  --theme-name: "Neoturne";
  --theme-description: "A cyberpunk/neon-themed design system with dark UI and light canvas areas";

  /* Colors */
  --primary-color: #06b6d4;
  --primary-light: #22d3ee;
  --primary-dark: #0891b2;
  --primary-bg: rgba(6, 182, 212, 0.1);
  --primary-bg-dark: rgba(6, 182, 212, 0.2);

  --secondary-color: #E5EC00;
  --secondary-light: #f0f542;
  --secondary-dark: #b8bd00;
  --secondary-bg: rgba(229, 236, 0, 0.1);

  --tertiary-color: #ec4899;
  --tertiary-light: #f472b6;
  --tertiary-dark: #db2777;
  --tertiary-bg: rgba(236, 72, 153, 0.1);

  --bg-color: #0f172a;
  --bg-color-elevated: #1e293b;
  --bg-color-hover: #334155;
  --white: #fefefe;
  --text-primary: #f1f5f9;
  --text-secondary: #cbd5e1;
  --text-dim: #94a3b8;
  --text-muted: #64748b;
  --scrim: rgba(0, 0, 0, 0.6);

  --border-color: #334155;
  --border-color-light: #475569;
  --border-color-dark: #1e293b;

  --canvas-bg: #faf7f0;
  --canvas-text: #1e293b;
  --canvas-text-secondary: #475569;
  --canvas-border: #cbd5e1;

  --success-color: #10b981;
  --success-bg: rgba(16, 185, 129, 0.1);
  --success-bg-strong: rgba(16, 185, 129, 0.2);
  --error-color: #ef4444;
  --error-dark: #dc2626;
  --error-bg: rgba(239, 68, 68, 0.1);
  --error-bg-strong: rgba(239, 68, 68, 0.2);
  --warning-color: #f59e0b;
  --warning-bg: rgba(245, 158, 11, 0.1);
  --warning-bg-strong: rgba(245, 158, 11, 0.2);
  --info-color: #3b82f6;
  --info-bg: rgba(59, 130, 246, 0.1);
  --info-bg-strong: rgba(59, 130, 246, 0.2);

  /* Arise — ground, emission, aura */
  --void: #010204;
  --void-floor: #040609;

  --emission: #22d3ee;
  --emission-deep: #06b6d4;
  --emission-core: #e0fbff;
  --halation-lead: #8ae4f6;
  --halation-trail: #5fdcf2;

  --dormant-seam: 0.015;
  --dormant-seam-mid: 0.05;
  --dormant-peak: 0.09;
  --dormant-glyph: 0.13;
  --dormant-glow: 0px;
  --dormant-glow-alpha: 0;
  --summoned-seam: 0.06;
  --summoned-seam-mid: 0.3;
  --summoned-peak: 0.5;
  --summoned-glyph: 0.75;
  --summoned-glow: 0px;
  --summoned-glow-alpha: 0;
  --awakened-seam: 0.1;
  --awakened-seam-mid: 0.8;
  --awakened-peak-mix: 0.48;
  --awakened-glyph: 1;
  --awakened-glow: 26px;
  --awakened-glow-alpha: 0.2;

  --seam-width: 1px;
  --seam-corner-spread: 18deg;

  --aura-neutral: #22d3ee;
  --aura-neutral-cal: 0.66;
  --aura-red: #ff3037;
  --aura-red-cal: 1;
  --aura-violet: #a855f7;
  --aura-violet-cal: 1;
  --aura-yellow: #E5EC00;
  --aura-yellow-cal: 0.46;

  --aura-neutral-rgb: 34, 211, 238;
  --aura-red-rgb: 255, 48, 55;
  --aura-violet-rgb: 168, 85, 247;
  --aura-yellow-rgb: 229, 236, 0;

  --status-success: #34d399;
  --status-error: #ff3037;
  --status-warning: #fbbf24;
  --status-info: #60a5fa;

  /* Typography */
  --font-heading: 'Rajdhani', 'IBM Plex Sans', sans-serif;
  --font-body: 'IBM Plex Sans', sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;

  --font-size-2xl: 32px;
  --font-size-xl: 24px;
  --font-size-large: 18px;
  --font-size-base: 16px;
  --font-size-small: 14px;

  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  --line-height-heading: 1.2;
  --line-height-body: 1.6;
  --line-height-input: 1.5;

  --letter-spacing-normal: normal;
  --letter-spacing-wide: 0.05em;
  --letter-spacing-wider: 0.1em;

  /* Spacing */
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 0.75rem;
  --spacing-base: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 3rem;
  --spacing-3xl: 4rem;

  /* Shadows */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);

  /* Effects */
  --glow-cyan: 0 0 20px rgba(6, 182, 212, 0.5);
  --glow-cyan-strong: 0 0 30px rgba(6, 182, 212, 0.7);
  --glow-yellow: 0 0 20px rgba(229, 236, 0, 0.5);
  --glow-magenta: 0 0 20px rgba(236, 72, 153, 0.5);
  --glow-red: 0 0 20px rgba(239, 68, 68, 0.5);

  --blur-sm: 2px;
  --blur-md: 4px;
  --blur-lg: 8px;

  /* Border Radius */
  --border-radius: 0;
  --border-radius-sm: 2px;
  --border-radius-md: 4px;
  --border-radius-lg: 8px;

  /* Transitions */
  --transition-fast: 0.1s ease;
  --transition-base: 0.15s ease;
  --transition-slow: 0.3s ease;

  /* Z-index */
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;

  /* Touch Targets */
  --touch-target-min: 44px;

  /* Breakpoints */
  --breakpoint-mobile: 600px;
  --breakpoint-tablet: 768px;
  --breakpoint-desktop: 1024px;

  /* Layout */
  --max-width-container: 1200px;
  --max-width-form: 420px;
  --card-min-width: 280px;

  /* Animations */
  --animation-spin: 0.8s;
  --animation-pulse: 2s;
  --animation-float: 3s;
  --animation-fade-in: 0.2s;
  --animation-slide-up: 0.3s;

  --ease-default: ease;
  --ease-linear: linear;
  --ease-out: ease-out;
  --ease-in-out: ease-in-out;

  /* Component Sizes */
  --button-height-small: 36px;
  --button-height-medium: 44px;
  --button-height-large: 52px;
  --input-height: 44px;
  --textarea-min-height: 120px;
  --card-padding-compact: 12px;
  --card-padding-default: 24px;
  --card-padding-spacious: 32px;
  --modal-width-small: 400px;
  --modal-width-medium: 500px;
  --modal-width-large: 700px;
  --toast-min-width: 300px;
  --toast-max-width: 500px;
  --image-card-preview-height: 180px;
  --text-card-min-height: 250px;
  --text-card-max-length: 5000;
  --note-card-min-height: 40px;
  --note-card-max-length: 150;
}
