/* Local semantic aliases; Geist color values live in geist-foundations.css. */
:root,.light,.dark {
  --canvas:var(--ds-background-100);
  --surface:var(--ds-background-200);
  --hover:var(--ds-gray-100);
  --text:var(--ds-gray-1000);
  --copy:var(--ds-gray-1000);
  --muted:var(--ds-gray-900);
  --line:var(--ds-gray-400);
  --control:var(--ds-gray-800);
  --accent:var(--ds-blue-900);
  --positive:var(--ds-green-900);
  --caution:var(--ds-amber-900);
  --danger:var(--ds-red-900);
  --inverse:var(--ds-gray-1000);
  --inverse-text:var(--ds-background-100);
  --primary-hover:var(--ds-gray-900);
  --secondary-hover:var(--ds-gray-200);
  --overlay:#0006;
  --radius-control:6px;
  --radius-panel:4px;
  --radius-action:999px;
  --button-height-hero:44px;
  --button-padding-block-hero:11px;
  --button-padding-inline-hero:22px;
  --button-height:36px;
  --button-padding-block:7px;
  --button-padding-inline:20px;
  --button-padding-pill:24px;
  --button-height-compact:28px;
  --button-padding-block-compact:3px;
  --button-padding-inline-compact:16px;
  --button-padding-pill-compact:16px;
  --header-height:52px;
  --action-group-gap:10px;
  --copy-gap:12px;
  --action-gap:24px;
  --hero-media-gap:56px;
  --feature-space:64px;
  --layout-gap:64px;
  --layout-inset:0px;
  --media-inset:32px;
  --media-radius:6px;
  --shadow-float:var(--ds-shadow-menu);
  --fast:150ms;
}
:root {
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px;
  --space-5:20px; --space-6:24px; --space-8:32px; --space-12:48px; --space-16:64px;
  --container:1300px; --gutter:20px;
}
@media(max-width:640px) {:root {--gutter:20px;--hero-media-gap:36px;--feature-space:48px;--layout-inset:0px;--layout-gap:28px;--media-inset:12px;}}
@media(prefers-reduced-motion:reduce) {:root {--fast:.01ms;}}
