/* ============================================================
   CALYX — SPACING, RADII, SHADOWS, MOTION
   Edges echo the crisp cut of acrylic; shadows stay soft & few.
   ============================================================ */

:root {
  /* --- Spacing (4px base) --------------------------------- */
  --space-0:  0;
  --space-1:  0.25rem;   /* 4  */
  --space-2:  0.5rem;    /* 8  */
  --space-3:  0.75rem;   /* 12 */
  --space-4:  1rem;      /* 16 */
  --space-5:  1.5rem;    /* 24 */
  --space-6:  2rem;      /* 32 */
  --space-7:  3rem;      /* 48 */
  --space-8:  4rem;      /* 64 */
  --space-9:  6rem;      /* 96 */
  --space-10: 8rem;      /* 128 */

  /* --- Layout --------------------------------------------- */
  --container-max: 1200px;
  --container-prose: 68ch;
  --gutter: var(--space-5);

  /* --- Radii (crisp acrylic edges — restrained) ----------- */
  --radius-xs:   2px;
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   14px;
  --radius-xl:   22px;
  --radius-pill: 999px;

  /* --- Borders -------------------------------------------- */
  --border-width: 1px;
  --border-width-thick: 1.5px;
  --hairline: var(--border-width) solid var(--border-hairline);

  /* --- Shadows (soft, warm-cast, sparing) ----------------- */
  --shadow-xs: 0 1px 2px rgba(21, 19, 15, 0.06);
  --shadow-sm: 0 1px 3px rgba(21, 19, 15, 0.07), 0 1px 2px rgba(21, 19, 15, 0.05);
  --shadow-md: 0 4px 14px rgba(21, 19, 15, 0.08), 0 2px 4px rgba(21, 19, 15, 0.05);
  --shadow-lg: 0 14px 40px rgba(21, 19, 15, 0.10), 0 4px 10px rgba(21, 19, 15, 0.05);
  --shadow-xl: 0 28px 70px rgba(21, 19, 15, 0.14);

  /* Acrylic / glass: cool refracted lift + inner light edge */
  --shadow-acrylic:
    0 18px 50px rgba(20, 39, 29, 0.16),
    0 2px 8px rgba(20, 39, 29, 0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.55),
    inset 0 0 0 1px rgba(255, 255, 255, 0.18);

  /* Etched: subtle pressed-in grey, for laser-etch surfaces  */
  --shadow-etch-inset: inset 0 1px 1px rgba(21, 19, 15, 0.10);

  --ring-focus: 0 0 0 3px var(--focus-ring);

  /* --- Motion (calm, organic; no bounce) ------------------ */
  --ease-out:   cubic-bezier(0.22, 0.61, 0.36, 1);    /* @kind other */
  --ease-in-out: cubic-bezier(0.45, 0, 0.25, 1);       /* @kind other */
  --duration-fast: 140ms;                              /* @kind other */
  --duration-base: 220ms;                              /* @kind other */
  --duration-slow: 420ms;                              /* @kind other */
  --transition-base: all var(--duration-base) var(--ease-out);
}
