/* ============================================================
   SPACING, RULE & SHAPE
   The plate is the only chrome: a 1px ink border, a hairline
   inset rule, and a SINGLE hard offset cast shadow (printed,
   not floating). Corners are incised everywhere — radius is 0.
   ============================================================ */
:root{
  /* modular spacing scale (0.25rem base, ~1.5 ratio) */
  --space-3xs: 0.25rem;   /*  4px */
  --space-2xs: 0.5rem;    /*  8px */
  --space-xs:  0.75rem;   /* 12px */
  --space-sm:  1rem;      /* 16px */
  --space-md:  1.5rem;    /* 24px */
  --space-lg:  2.25rem;   /* 36px */
  --space-xl:  3.5rem;    /* 56px */
  --space-2xl: 5.5rem;    /* 88px */
  --space-3xl: 8rem;      /* 128px */

  /* fluid gutter / section rhythm */
  --gutter:   clamp(1.4rem, 0.9rem + 2.2vw, 3.4rem); /* @kind spacing */
  --section-y: clamp(4rem, 2.5rem + 6vw, 9rem); /* @kind spacing */
  --content-max: 76rem;

  /* --- rule weights --- */
  --hair: 0.5px;   /* inset plate rule, dividers over paper */
  --line: 1px;     /* structural borders, plate edge */

  /* --- shape --- */
  --radius: 0;             /* incised corners — never rounded */
  --plate-inset: 6px;      /* gap from plate edge to hairline rule */

  /* --- the cast: one hard offset, no blur, printed onto paper --- */
  --cast:      10px 12px 0 -2px color-mix(in srgb, var(--ink) 14%, transparent);
  --cast-sm:    6px  7px 0 -2px color-mix(in srgb, var(--ink) 14%, transparent);
  --cast-deep: 16px 18px 0 -3px color-mix(in srgb, var(--ink) 16%, transparent);

  /* --- motion: mechanical, stepped — a press, not a glide --- */
  --step-ease: steps(4); /* @kind other */
  --dur: 0.18s; /* @kind other */
}
