/* SteadiLev Design System — reset.css */

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

/* Body defaults reconciled 2026-08-12 with the live steadilev.ai.
   Three changes worth knowing about, because they move every surface that
   consumes index.css:
     weight 300 (was 400)  · the brand's reading weight
     line-height 1.65 (was 1.55) · long-form breathing room
     colour text-muted (was text) · body copy is Onyx 400; full Soft Linen is
       reserved for headings and <b>/<strong>, so emphasis has somewhere to go.
   font-size is deliberately unset: the browser default (16px) is the base and
   the type presets in components.css size everything that matters. */
body {
  font-family: var(--font-body);
  font-weight: 300;
  line-height: 1.65;
  background: var(--color-bg);
  color: var(--color-text-muted);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  transition: background 0.18s ease, color 0.18s ease;
}
b, strong { color: var(--color-text); font-weight: 600; }

h1, h2, h3, h4, h5, h6, p, ul, ol { margin: 0; padding: 0; }
ul, ol { list-style: none; }
a { color: inherit; text-decoration: none; }
button {
  font: inherit; background: none; border: none; padding: 0;
  cursor: pointer; color: inherit;
}
img, svg { display: block; max-width: 100%; }
input, textarea, select { font: inherit; color: inherit; }
code, pre { font-family: var(--font-mono); }

/* Focus and selection conventions (added 2026-08-12, from live).
   The ring is the action colour, not the accent: a Teal ring on Onyx sits at
   4.46:1, which is the same reason Teal lost the primary button. */
::selection { background: color-mix(in srgb, var(--color-accent) 35%, transparent); color: var(--color-text); }
:focus-visible { outline: 2px solid var(--color-action); outline-offset: 3px; }
