/*
 * Warm Refresh — reset.css
 * A small modern reset. Element-reset only: no colors/typography/spacing
 * decisions live here (see base.css for bare-element typographic defaults).
 */

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

body,
h1, h2, h3, h4, h5, h6,
p,
ul, ol,
fieldset {
  margin: 0;
  padding: 0;
}

img,
svg,
video {
  display: block;
  max-width: 100%;
}

nav ul,
nav ol {
  list-style: none;
}

button,
input,
select,
textarea {
  font: inherit;
}

fieldset {
  border: none;
}

/*
 * :focus-visible baseline — only suppress the default outline for
 * pointer-driven focus (mouse/touch); keyboard focus keeps the browser's
 * default outline here. components.css (Task 4) is responsible for
 * replacing that default outline with the --focus-ring treatment; this
 * file must never strip focus outlines without that replacement in place.
 */
:focus:not(:focus-visible) {
  outline: none;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
