/* Local draft. See foundations/visual-foundations.md.
   Base radius and shared geometry/motion live here. Palette: theme.css.
   Component colour/elevation assignments: components/components.css. */
:root { --radius: 0.625rem; }
:root, .dark, :root[data-theme="dark"] {
  --radius-none: 0;
  --radius-sm: calc(var(--radius) * .6);
  --radius-md: calc(var(--radius) * .8);
  --radius-lg: var(--radius);
  --radius-full: 9999px;
  --radius-circle: 50%;

  --border-width: 1px;
  --border-style: solid;
  --shadow-none: none;
  --floating-border-width: var(--border-width);
  --floating-shadow-geometry: 0 8px 24px 0;

  --icon-size-2xs: .75rem;
  --icon-size-xs: .875rem;
  --icon-size-sm: 1rem;
  --icon-size-md: 1.25rem;
  --icon-stroke-width: 2;

  --motion-duration-none: 0ms;
  --motion-duration-feedback: 150ms;
  --motion-duration-spin: 800ms;
  --motion-easing-feedback: ease-out;

  /* Existing provisional focus geometry; accessibility guidance still owns it. */
  --focus-ring-width: 2px;
  --focus-ring-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  :root, .dark, :root[data-theme="dark"] {
    --motion-duration-feedback: var(--motion-duration-none);
  }
}
