:root {
  /* Colors - Light Theme */
  --color-primary: #1d1d1f;
  --color-primary-rgb: 29, 29, 31;
  --color-primary-light: #343435;
  --color-primary-lighter: #4a4a4c;
  --color-primary-dark: #0f0f10;
  --color-primary-darker: #030303;

  --color-accent: #dd550c;
  --color-accent-rgb: 221, 85, 12;
  --color-accent-light: #c74d0b;
  --color-accent-lighter: #b1440a;
  --color-accent-dark: #6f2b06;
  --color-accent-darker: #160801;

  --color-info: #c3cad7;
  --color-info-light: #EAF0FF;
  --color-info-dark: #62656c;

  --color-success: #09a25a;
  --color-success-light: #E6F6EF;
  --color-success-dark: #05512d;

  --color-warning: #e1ac67;
  --color-warning-light: #FEF4E6;
  --color-warning-dark: #715634;

  --color-danger: #e84e46;
  --color-danger-light: #FEECEB;
  --color-danger-dark: #742723;

  --color-neutral: #1d1d1f;
  --color-neutral-light: #cccccc;
  --color-neutral-lighter: #fafafa;
  --color-neutral-dark: #666666;
  --color-neutral-darker: #222222;

  /* Form Specific Colors */
  --color-background: var(--color-neutral-lighter);
  --color-text: var(--color-neutral);
  --color-border: var(--color-neutral-light);
  --color-disabled: var(--color-neutral-light);
  --color-error: var(--color-danger);
  --color-success: var(--color-success);
  --color-focus: var(--color-accent);

  /* Typography */
  --font-family-base: 'Inter', sans-serif;
  --font-family-heading: 'Inter', sans-serif;
  --font-family-decorative: 'DM Serif Display', serif;

  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 800;
  --font-weight-light: 300;

  --font-size-base: 18px;
  --font-size-small: 14px;
  --font-size-medium: 24px;
  --font-size-large: 30px;
  --font-size-xlarge: 38px;

  --line-height-normal: 1.5;
  --line-height-tight: 1.2;
  --line-height-loose: 1.75;

  --letter-spacing-normal: 0;
  --letter-spacing-tight: -0.01em;
  --letter-spacing-wide: 0.05em;

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

  --margin-small: var(--spacing-sm);
  --margin-medium: var(--spacing-md);
  --margin-large: var(--spacing-lg);

  /* Form Elements */
  --input-height: 60px;
  --input-padding: var(--spacing-sm) var(--spacing-md);
  --input-border-width: 1px;
  --input-border-radius: 0.4rem;
  --input-font-size: var(--font-size-base);
  --input-bg-color: #ffffff;
  --input-text-color: var(--color-text);
  --input-placeholder-color: var(--color-neutral-dark);
  --input-focus-border-color: var(--color-accent);
  --input-focus-shadow: 0 0 0 2px rgba(var(--color-accent-rgb), 0.2);

  /* Buttons */
  --button-padding-y: var(--spacing-sm);
  --button-padding-x: var(--spacing-lg);
  --button-border-radius: var(--input-border-radius);
  --button-font-size: var(--font-size-base);
  --button-font-weight: var(--font-weight-medium);
  --button-bg-color: var(--color-accent);
  --button-continue-bg-color: var(--color-neutral);
  --button-continue-text-color: var(--color-neutral-light);
  --button-text-color: #ffffff;
  --button-border-width: var(--input-border-width);
  --button-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  --continue-button-bg-hover-color: var(--color-accent-lighter);
  --continue-button-text-hover-color: var(--color-neutral-lighter);
  --continue-button-text-color: var(--color-neutral-light);
  --continue-button-bg-color: var(--button-continue-bg-color);

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);

  /* Transitions */
  --transition-base: all 0.3s ease-out;
  --transition-fast: all 0.15s ease-out;
  --transition-slow: all 0.5s ease-out;

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

  /* Breakpoints */
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;

  /* Form Builder Specific */
  --form-builder-max-width: 80vw;
  --form-builder-padding: 2rem;
  --form-builder-mobile-padding: 1rem;
  --form-builder-group-padding: 20px;
  --form-builder-group-margin: 20px;
  --form-builder-progress-height: 70px;

  --h1-font-size: 32px;
  --h2-font-size: 24px;
  --h3-font-size: 20px;
  --h4-font-size: 18px;
  --h5-font-size: 16px;
  --h6-font-size: 14px;
}

/* Dark mode overrides */
[data-theme="dark"] {
  --color-primary: #1d1d1f;
  --color-primary-rgb: 29, 29, 31;
  --color-primary-light: #343435;
  --color-primary-lighter: #4a4a4c;
  --color-primary-dark: #0f0f10;
  --color-primary-darker: #030303;

  --color-accent: #ed5f07;
  --color-accent-rgb: 237, 95, 7;
  --color-accent-light: #ef6f20;
  --color-accent-lighter: #f17f39;
  --color-accent-dark: #f49f6a;
  --color-accent-darker: #f6af83;

  --color-info: #5889FF;
  --color-info-light: #101C4D;
  --color-info-dark: #5889FF;

  --color-success: #32D583;
  --color-success-light: #0F372A;
  --color-success-dark: #32D583;

  --color-warning: #FFA526;
  --color-warning-light: #342810;
  --color-warning-dark: #FFA526;

  --color-danger: #FF4D42;
  --color-danger-light: #3D1513;
  --color-danger-dark: #FF4D42;

  --color-neutral: #F5F5F7;
  --color-neutral-light: #DCDCDF;
  --color-neutral-lighter: #B9B9BF;
  --color-neutral-dark: #97979F;
  --color-neutral-darker: #75757F;

  /* Form Specific Colors - Dark Mode */
  --color-background: #1D1D1F;
  --color-text: var(--color-neutral);
  --color-border: var(--color-neutral-darker);
  --color-disabled: var(--color-neutral-darker);
  --input-bg-color: var(--color-neutral-darker);
  --input-text-color: var(--color-neutral);
  --input-placeholder-color: var(--color-neutral-light);
  --button-bg-color: var(--color-accent);
  --button-text-color: var(--color-neutral);
} 