/* Element defaults. Values come from theme/values.css. */
* { box-sizing: border-box; }
html, body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font-family); font-size: var(--font-size-base);
  -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; }
svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
img { display: block; }
::selection { background: var(--accent-soft); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: var(--radius-xs); }
mark { background: var(--highlight); color: inherit; border-radius: var(--radius-2xs); padding: 0 1px; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }
