/*
 * Seezeit UI tokens
 *
 * Scoped web projection of the shared Seezeit token work in
 * office-templates/tokens/web (draft dated 2026-10-18), reconciled there with
 * the meal plan, the built LimeSurvey theme and KERN UX. This file deliberately
 * contains no component selectors. It is not a second source of truth: product
 * and framework adapters consume this reviewed subset at their scoped seam.
 */
:root {
  /* Brand primitives */
  --seezeit-color-orange: #f47d19;
  --seezeit-color-orange-hover: #ff913c;
  --seezeit-color-orange-ink: #ad5900;
  --seezeit-color-cyan: #3fb6e9;
  --seezeit-color-cyan-ink: #0a7ea3;
  --seezeit-color-cyan-wash: #e7f6fc;
  --seezeit-color-navy: #001f2f;
  --seezeit-color-navy-raised: #0b3448;
  --seezeit-color-yellow: #ffba00;
  --seezeit-color-white: #fff;

  /* Neutral and functional primitives */
  --seezeit-color-page: #eeeff2;
  --seezeit-color-surface: var(--seezeit-color-white);
  --seezeit-color-surface-control: #f3f4f7;
  --seezeit-color-surface-subtle: #f7f9fa;
  --seezeit-color-text: var(--seezeit-color-navy);
  --seezeit-color-text-muted: #486a7c;
  --seezeit-color-text-on-dark: var(--seezeit-color-white);
  --seezeit-color-border: #b9c6ce;
  --seezeit-color-edge: #a0b2bd;
  --seezeit-color-border-strong: #486a7c;
  --seezeit-color-border-choice: #a8c8d5;
  --seezeit-color-danger: #b02228;
  --seezeit-color-danger-hover: #961d22;
  --seezeit-color-danger-surface: #fee4e0;
  --seezeit-color-warning: #925400;
  --seezeit-color-warning-surface: #ffe7b6;
  --seezeit-color-success: #007155;
  --seezeit-color-success-surface: #cdf2e4;

  /* Semantic interaction roles */
  --seezeit-color-action-default: var(--seezeit-color-navy);
  --seezeit-color-action-on-default: var(--seezeit-color-white);
  --seezeit-color-action-commit: var(--seezeit-color-orange);
  --seezeit-color-action-commit-hover: var(--seezeit-color-orange-hover);
  --seezeit-color-action-progress: var(--seezeit-color-yellow);
  --seezeit-color-action-progress-hover: #ffd247;
  --seezeit-color-action-on-fill: var(--seezeit-color-navy);
  --seezeit-color-action-indicator: var(--seezeit-color-orange);
  --seezeit-color-action-on-indicator: var(--seezeit-color-navy);
  /* Compatibility aliases for the first PowerMail adapter. */
  --seezeit-color-action-primary: var(--seezeit-color-action-commit);
  --seezeit-color-action-primary-hover: var(--seezeit-color-action-commit-hover);
  --seezeit-color-action-on-primary: var(--seezeit-color-action-on-fill);
  --seezeit-color-action-secondary: var(--seezeit-color-navy);
  --seezeit-color-action-on-secondary: var(--seezeit-color-white);
  --seezeit-color-action-secondary-hover: #ebedee;
  --seezeit-color-progress-fill: var(--seezeit-color-orange);
  --seezeit-color-progress-track: var(--seezeit-color-border);
  --seezeit-color-link: var(--seezeit-color-navy);
  --seezeit-color-link-hover: var(--seezeit-color-orange-ink);
  --seezeit-color-focus: var(--seezeit-color-navy);

  /* Typography */
  --seezeit-font-family-text: "Cehora SZ", "Helvetica Neue", Helvetica, Arial, "Liberation Sans", "Noto Sans", sans-serif;
  --seezeit-font-weight-medium: 600;
  --seezeit-font-weight-title: 700;
  --seezeit-font-weight-emphasis: 800;
  --seezeit-line-height-body: 1.5;
  --seezeit-line-height-control: 1.3;

  /* Spacing and geometry */
  --seezeit-space-1: 0.25rem;
  --seezeit-space-2: 0.5rem;
  --seezeit-space-3: 0.75rem;
  --seezeit-space-4: 1rem;
  --seezeit-space-5: 1.5rem;
  --seezeit-space-6: 2rem;
  --seezeit-radius-control: 4px;
  --seezeit-radius-sheet: 12px;
  --seezeit-radius-pill: 999px;
  --seezeit-control-height: 48px;
  --seezeit-control-height-compact: 44px;
  --seezeit-check-size: 20px;
  --seezeit-focus-width: 3px;

  /* Depth and motion */
  --seezeit-color-control-edge: rgb(0 31 47 / 35%);
  --seezeit-color-filled-edge: rgb(0 0 0 / 18%);
  --seezeit-shadow-raised: 0 10px 24px -12px rgb(0 0 0 / 18%);
  --seezeit-shadow-action-edge: inset 0 -4px 0 var(--seezeit-color-control-edge);
  --seezeit-shadow-action-raised: inset 0 -4px 0 var(--seezeit-color-filled-edge), var(--seezeit-shadow-raised);
  --seezeit-shadow-disclosure-card: 0 3px 0 var(--seezeit-color-edge), var(--seezeit-shadow-raised);
  --seezeit-shadow-overlay: 0 20px 50px rgb(0 0 0 / 20%);
  --seezeit-motion-fast: 100ms;
  --seezeit-motion-default: 160ms;
  --seezeit-motion-layout: 220ms;
  --seezeit-ease-out: cubic-bezier(.16, 1, .3, 1);
}

/*
 * A theme scope exposes contextual aliases without changing unrelated legacy
 * pages. Components opt in by adding this class to their nearest shared root.
 */
.seezeit-theme {
  --seezeit-context-page: var(--seezeit-color-page);
  --seezeit-context-surface: var(--seezeit-color-surface);
  --seezeit-context-surface-control: var(--seezeit-color-surface-control);
  --seezeit-context-text: var(--seezeit-color-text);
  --seezeit-context-text-muted: var(--seezeit-color-text-muted);
  --seezeit-context-border: var(--seezeit-color-border);
  --seezeit-context-border-strong: var(--seezeit-color-border-strong);
  --seezeit-context-focus: var(--seezeit-color-focus);
  color-scheme: light;
}

/* Dark mode is intentionally absent. The shared web draft requires
 * data-kern-theme="light" until a separate dark palette has been decided and
 * tested; an operating-system preference must not recolor embedded forms. */
