:root {
  --theme-color-page: #11150f;
  --theme-color-surface: #1b2018;
  --theme-color-surface-alt: #272b20;
  --theme-color-surface-dark: #10140e;
  --theme-color-text: #f1ebdd;
  --theme-color-text-muted: #c2bdab;
  --theme-color-text-on-dark: #f8f0df;
  --theme-color-text-on-accent: #171a11;
  --theme-color-primary: #26301f;
  --theme-color-primary-hover: #35402a;
  --theme-color-accent: #e0b86f;
  --theme-color-accent-hover: #efce90;
  --theme-color-border: #615b45;
  --theme-color-success: #9cd1ab;
  --theme-color-error: #ffc8b9;
  --theme-color-focus: #eec47f;

  --theme-font-body: 'Segoe UI', 'Inter', Arial, sans-serif;
  --theme-font-heading: Georgia, 'Times New Roman', serif;
  --theme-font-size-body: .94rem;
  --theme-font-weight-heading: 600;
  --theme-line-height-body: 1.45;
  --theme-line-height-heading: 1.04;

  --theme-radius-small: .4rem;
  --theme-radius-medium: .75rem;
  --theme-radius-large: .6rem;
  --theme-radius-button: .45rem;
  --theme-border-width: 1px;
  --theme-focus-width: 3px;
  --theme-focus-offset: 3px;

  --theme-shadow-small: 0 5px 24px rgb(0 0 0 / .24);
  --theme-shadow-medium: 0 20px 50px rgb(0 0 0 / .28);
  --theme-shadow-large: 0 24px 70px rgb(0 0 0 / .38);

  --theme-motion-fast: 160ms;
  --theme-motion-normal: 260ms;
  --theme-motion-slow: 420ms;
  --theme-easing: cubic-bezier(.2, .8, .2, 1);

  --theme-header-background: rgb(12 15 10 / .96);
  --theme-header-text: #f1ebdd;
  --theme-header-border: #3b392c;
  --theme-header-blur: 18px;

  --theme-section-light-background: #11150f;
  --theme-section-light-text: #f1ebdd;
  --theme-section-surface-background: #151a12;
  --theme-section-surface-text: #f1ebdd;
  --theme-section-dark-background: #10140e;
  --theme-section-dark-text: #f1ebdd;
  --theme-section-accent-background: #1d2618;
  --theme-section-accent-text: #f1ebdd;

  --theme-text-muted-current: #c2bdab;
  --theme-card-background: #1c2118;
  --theme-card-text: #f6ecda;
  --theme-card-border: #61553a;
  --theme-button-secondary-background: transparent;
  --theme-button-secondary-text: #eac47e;
  --theme-button-secondary-border: #a58b56;
  --theme-button-secondary-hover: rgb(255 255 255 / .10);
  --theme-input-background: #f9f7f0;
  --theme-answer-background: #303628;
  --theme-answer-selected-background: #44432d;
  --theme-progress-track: rgb(100 118 128 / .20);
  --theme-success-background: #e6f4ed;
  --theme-error-background: #fceaea;
  --theme-warning-background: #fff0d8;
  --theme-warning-text: #6b3900;
  --theme-icon-filter: none;
  --theme-icon-background: rgb(240 154 36 / .14);
  --theme-icon-border: 1px solid rgb(240 154 36 / .30);
  --theme-icon-radius: .8rem;
  --theme-image-placeholder-background: #1c2118;
  --theme-card-accent-background: none;
  --theme-step-background: linear-gradient(90deg, rgb(255 255 255 / .04), transparent);
  --theme-logo-filter: none;

  --theme-footer-background: #0b0e0a;
  --theme-footer-text: #f6ecda;
  --theme-footer-muted: #ccc4ae;
  --theme-footer-border: #544b36;

  --theme-hero-decoration: radial-gradient(circle at 72% 25%,rgb(120 97 41 / .13),transparent 58%);
  --theme-hero-decoration-opacity: 1;
}
/* THEME: HARVEST OG / forest & warm gold. Variants are layout-only opt-ins. */
.section--variant-dark,.section--variant-accent,.section--variant-surface,.section--variant-light {
  --theme-text-muted-current: #c2bdab;
  --theme-card-background: #1c2118;
  --theme-card-text: #f6ecda;
  --theme-card-border: #61553a;
  --theme-color-text: #f1ebdd;
  --theme-color-text-muted: #c2bdab;
  --theme-color-accent: #e0b86f;
  --theme-color-accent-hover: #efce90;
  --theme-color-text-on-accent: #171a11;
}
/* HARVEST: opt-in section-specific palette, no engine geometry overrides. */
.section--questionnaire .questionnaire {
  --theme-color-text: #f5eddb;
  --theme-color-text-muted: #c7bea7;
  --theme-color-border: #75643e;
  --theme-card-background: #181d15;
  --theme-card-text: #f5eddb;
  --theme-answer-background: #1a2017;
  --theme-answer-selected-background: #40341d;
  --theme-input-background: #1b2018;
  --theme-card-border: #75643e;
  --theme-color-accent: #e0b86f;
  --theme-color-accent-hover: #efce90;
  --theme-color-text-on-accent: #171a11;
}
