/* BEX color — one chromatic accent, a warm neutral ramp, white. Nothing else. */
:root{
  /* Base palette */
  --color-signal-blue:#1F4FD8;
  --color-white:#FFFFFF;
  --color-bone:#F5F4F2;
  --color-ink:#1C1B19;
  --color-basalt:#3A3835;
  --color-ash:#63605B;
  --color-driftwood:#78746E;
  --color-chalk:#EAE8E4;
  --color-limestone:#D6D3CE;

  /* Derived accent steps — the only permitted variations of Signal Blue */
  --color-signal-blue-hover:#1A44BC;
  --color-signal-blue-active:#163AA0;

  /* Transparency layers */
  --color-frost:rgba(255,255,255,0.75);
  --color-overlay:rgba(128,128,128,0.65);
  --color-shadow-hint:rgba(0,0,0,0.05);
  --color-transparent:rgba(0,0,0,0);

  /* Text roles */
  --text-heading:var(--color-ink);
  --text-body:var(--color-basalt);
  --text-tertiary:var(--color-ash);
  --text-placeholder:var(--color-driftwood);
  --text-on-dark:var(--color-white);
  --text-on-accent:var(--color-white);
  --text-promo:var(--color-signal-blue);

  /* Surface roles */
  --surface-page:var(--color-white);
  --surface-card:var(--color-white);
  --surface-alt:var(--color-bone);
  --surface-dark:var(--color-ink);
  --surface-nav:var(--color-white);
  --surface-nav-frost:var(--color-frost);
  --surface-overlay:var(--color-overlay);
  --surface-float:var(--color-frost);

  /* Line roles — used sparingly; separation is normally spacing, not lines */
  --border-hairline:var(--color-chalk);
  --border-ui:var(--color-limestone);

  /* Action roles */
  --action-primary:var(--color-signal-blue);
  --action-primary-hover:var(--color-signal-blue-hover);
  --action-primary-active:var(--color-signal-blue-active);
  --action-primary-text:var(--color-white);
  --action-secondary:var(--color-white);
  --action-secondary-hover:var(--color-bone);
  --action-secondary-text:var(--color-basalt);
  --action-quiet-hover:var(--color-bone);
  --action-disabled-text:var(--color-driftwood);
  --focus-ring:var(--color-signal-blue);
}
