/* ZeckenBox — Spacing, radius, shadow, border, motion tokens.
   The physical product is a rounded, rugged outdoor case; the digital system mirrors
   that with generously rounded corners, soft product-photography shadows and calm motion. */
:root{
  /* Spacing scale (4px base) */
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* Radii — box is soft-cornered; cards echo it */
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;   /* default card */
  --radius-xl: 24px;   /* panels, the case shell */
  --radius-2xl: 32px;
  --radius-pill: 999px;
  --radius-logo: 22%;  /* the red logo tile corner ratio */

  /* Borders */
  --border-width: 1px; /* @kind spacing */
  --border: var(--border-width) solid var(--color-border);
  --border-strong: var(--border-width) solid var(--color-border-strong);

  /* Shadows — soft, product-photography style; no harsh drop shadows */
  --shadow-xs: 0 1px 2px rgba(29,29,27,0.06);
  --shadow-sm: 0 1px 3px rgba(29,29,27,0.08), 0 1px 2px rgba(29,29,27,0.04);
  --shadow-md: 0 4px 14px rgba(29,29,27,0.08);
  --shadow-lg: 0 12px 34px rgba(29,29,27,0.12);
  --shadow-olive: 0 12px 30px rgba(71,83,58,0.28); /* elevated olive surfaces */

  /* Focus ring */
  --focus-ring: 0 0 0 3px var(--color-ring);

  /* Motion — calm, functional; short ease-outs, no bounce */
  --ease-standard: cubic-bezier(0.2, 0, 0.2, 1); /* @kind other */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);     /* @kind other */
  --dur-fast: 120ms;  /* @kind other */
  --dur-base: 200ms;  /* @kind other */
  --dur-slow: 320ms;  /* @kind other */

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 760px;
}
