/* ════════════════════════════════════════════════════════════
   02-base.css — The Compositor's Garden
   Box-model reset, html/body declarations, print base size.
   Minimal: only rules needed by every element live here.
   ════════════════════════════════════════════════════════════ */

*, *::before, *::after {
  box-sizing: border-box;
  margin:     0;
  padding:    0;
}

/* Screen base: 1rem = 16px */
html {
  font-size:               16px;
  -webkit-font-smoothing:  antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering:          optimizeLegibility;
}

/* Print base: 1rem = 10pt (scale shifts cleanly for print)   */
@media print {
  html { font-size: 10pt; }
}

body {
  background:           var(--paper);
  color:                var(--ink);
  font-family:          var(--font-body);
  font-size:            var(--text-base);
  line-height:          var(--lh-body);

  /* Foundation OpenType features — applies document-wide.
     Overridden per-element where needed.                      */
  font-feature-settings: "kern" 1, "liga" 1, "onum" 1, "calt" 1;
  font-kerning:          auto;
}

/* Images and media always respect their container            */
img, svg, video {
  max-width: 100%;
  display:   block;
}

/* Inherit font everywhere by default                         */
input, button, select, textarea {
  font: inherit;
}
