/* Habitat — Spacing, layout, radius, shadow, motion
   Base unit 8px. Editorial restraint: near-flat, hairline rules over shadows,
   minimal radius. The grid is asymmetric (8-col content + 4-col margin). */
:root {
  /* ---- Spacing scale (8px base) ---- */
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 80px;     /* Desktop page margin */
  --space-10: 120px;
  --space-11: 160px;

  /* ---- Layout ---- */
  --page-margin: 80px;        /* Desktop spread */
  --page-margin-mobile: 32px; /* Mobile / export */
  --measure: 68ch;            /* Optimal reading column */
  --measure-narrow: 56ch;
  --content-max: 1240px;
  --grid-cols: 12;            /* @kind other */
  --grid-content: 8;          /* @kind other */
  --grid-margin: 4;           /* Marginalia column */

  /* ---- Radius (minimal — editorial, not SaaS) ---- */
  --radius-0: 0;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-pill: 999px;       /* Tags / chips only */

  /* ---- Borders ---- */
  --hairline: 1px;
  --rule-weight: 2px;         /* Pull-quote / structural rules */

  /* ---- Shadow (used sparingly — Habitat prefers rules to shadow) ---- */
  --shadow-none: none;
  --shadow-card: 0 1px 2px rgba(31, 29, 30, 0.05);
  --shadow-raised: 0 8px 24px -12px rgba(31, 29, 30, 0.18);

  /* ---- Motion (restrained — fades and small shifts, no bounce) ---- */
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);   /* @kind other */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);   /* @kind other */
  --dur-fast: 120ms;   /* @kind other */
  --dur: 200ms;        /* @kind other */
  --dur-slow: 360ms;   /* @kind other */
}
