/* Albert design tokens — export 3, f-series.
   Written by the design. Crosses byte-identical: the port ships this file rather
   than maintaining a copy, so a value is written in exactly one place.

   Tier is readable from the prefix:
     --raw-*    tier 1, a raw value with no meaning attached. Pages must NOT reference these.
     --color-*  --space-*  --size-*  --radius   tier 2, a role. Pages reference these.
     --c-*      tier 3, one component's own knob.

   Tier 1 names are ordinal, not a lightness scale: this palette has no scale, and a
   numbered name would imply one.

   Export 4 unified ten near-duplicate groups on Ed's eye, and the ordinals are renumbered
   to close the gaps. No resolved value moved except the ten in the unification table in
   CHANGES.md. */

:root {
  /* tier 1 — primitives */
  --raw-ink-1: #06080D;
  --raw-ink-2: #111823;
  --raw-ink-3: #1B2432;
  --raw-ink-4: #24303F;
  --raw-slate-1: #3A4E68;
  --raw-slate-2: #6F8299;
  --raw-slate-3: #9DAEC2;
  --raw-slate-4: #E6EDF6;
  --raw-blue-1: #12294A;
  --raw-blue-2: #8CC5F5;
  --raw-blue-3: #CFE6FF;
  --raw-amber-1: #241A0E;
  --raw-amber-2: #9C7644;
  --raw-amber-3: #D9A05B;
  --raw-orange-1: #F0704A;
  --raw-orange-2: #FF9933;
  --raw-step-1: clamp(15px,3.6vw,17px);
  --raw-step-2: clamp(16px,1.5vw,18px);
  --raw-step-3: clamp(17px,1.7vw,21px);
  --raw-step-4: clamp(22px,2.4vw,28px);
  --raw-step-5: clamp(26px,3.2vw,36px);
  --raw-step-6: clamp(28px,3.6vw,42px);
  --raw-gap-3: clamp(16px,1.8vw,20px);
  --raw-gap-8: clamp(18px,2.2vw,26px);
  --raw-gap-10: clamp(24px,2.4vw,32px);
  --raw-gap-11: clamp(24px,3.4vw,42px);
  --raw-gap-12: clamp(26px,3vw,34px);
  --raw-gap-13: clamp(28px,3.5vw,44px);
  --raw-gap-15: clamp(32px,4vw,48px);
  --raw-gap-16: clamp(32px,4.5vw,56px);
  --raw-gap-18: clamp(36px,5vw,64px);
  --raw-gap-20: clamp(48px,7vw,78px);
  --raw-gap-21: clamp(56px,7vw,88px);
  --raw-cap: max(clamp(20px,4vw,48px), calc((100% - 1400px) / 2));
  --raw-radius: 3px;



  /* tier 2 — surfaces */
  --color-page: var(--raw-ink-1);
  --color-card: var(--raw-ink-2);
  --color-row-hover: var(--raw-ink-4);
  --color-info-fill: var(--raw-blue-1);
  --color-amber-fill: var(--raw-amber-3);
  --color-disabled-bg: var(--raw-ink-3);

  /* tier 2 — borders */
  --color-border: var(--raw-slate-1);
  --color-border-subtle: var(--raw-ink-4);
  --color-border-amber: var(--raw-amber-1);
  --color-border-accent: var(--raw-blue-2);
  --color-border-hover: var(--raw-blue-3);
  --color-border-error: var(--raw-orange-1);

  /* tier 2 — text */
  --color-text: var(--raw-slate-4);
  --color-text-muted: var(--raw-slate-3);
  --color-text-dim: var(--raw-slate-2);
  --color-disabled-fg: var(--raw-slate-2);
  --color-amber: var(--raw-amber-3);
  --color-amber-index: var(--raw-amber-2);
  --color-error: var(--raw-orange-1);
  /* tier 2 — accent. link and accent hold one value today and are the pair most
        likely to diverge; that is why they are two roles, not one. */
  --color-link: var(--raw-blue-2);
  --color-link-hover: var(--raw-blue-3);
  --color-accent: var(--raw-blue-2);
  --color-accent-hover: var(--raw-blue-3);
  --color-on-accent: var(--raw-ink-1);
  --color-focus-ring: var(--raw-blue-2);

  /* tier 2 — type */
  --size-wordmark: var(--raw-step-1);
  --size-body: var(--raw-step-2);
  --size-lede: var(--raw-step-3);
  --size-h2-sm: var(--raw-step-4);
  --size-h2: var(--raw-step-5);
  --size-h1: var(--raw-step-6);

  /* tier 2 — space */
  --space-gutter: var(--raw-cap);
  --space-main-top: var(--raw-gap-18);
  --space-section-pad: var(--raw-gap-13);
  --space-section-gap: var(--raw-gap-13);
  --space-block-pad: var(--raw-gap-10);
  --space-band-y: var(--raw-gap-20);
  --space-main-bottom: var(--raw-gap-21);
  --space-stack-xl: var(--raw-gap-16);
  --space-stack-lg: var(--raw-gap-11);
  --space-page-gap: var(--raw-gap-15);
  --space-stack-md: var(--raw-gap-12);
  --space-stack-sm: var(--raw-gap-8);
  --space-stack-xs: var(--raw-gap-3);
  --space-col-lg: var(--raw-gap-11);
  --space-col-md: var(--raw-gap-8);
  --space-col-xl: var(--raw-gap-16);
  --space-heading-gap: var(--raw-gap-8);
  --space-rule-top: var(--raw-gap-8);
  --space-rule-top-sm: var(--raw-gap-3);
  --radius: var(--raw-radius);

  /* tier 3 — component knobs */
  --c-site-headline: var(--raw-orange-2);
  --c-nav-pill-hover: var(--color-accent-hover);
  --c-divider-rule: var(--raw-slate-1);

  /* Was --barpad. Overwritten at runtime by the sticky-bar measurement on the home and
     Albert pages; the two values below are the pre-measurement fallback. */
  --c-nav-offset: 72px;
}

@media (max-width: 1039px) {
  :root { --c-nav-offset: 116px; }
}
