/*
 * Minimal CSS reset (modern, opinionated)
 * Replaces full Tailwind preflight (~380KB) with a focused baseline (~2KB).
 * Inspired by Tailwind preflight, modern-normalize, and Josh Comeau's reset.
 */

/* 1. Use border-box everywhere */
*, *::before, *::after { box-sizing: border-box; }

/* 2. Remove default margin */
* { margin: 0; }

/* 3. Allow percentage-based heights in the application */
html, body { height: 100%; }

/* 4. Typographic tweaks: improved line height, smooth fonts */
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* 5. Improve media defaults */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

/* 6. Remove built-in form typography styles */
input, button, textarea, select { font: inherit; color: inherit; }

/* 7. Avoid text overflow */
p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; }

/* 8. Heading reset */
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }

/* 9. List reset for lists with role */
ol[role="list"], ul[role="list"] { list-style: none; padding: 0; }

/* 10. Anchor reset */
a { color: inherit; text-decoration: inherit; background-color: transparent; }

/* 11. Button reset */
button {
  background-color: transparent;
  background-image: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}

/* 12. HR reset */
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}

/* 13. Tables — collapse borders by default */
table { border-collapse: collapse; border-color: inherit; text-indent: 0; }

/* 14. Hide [hidden] */
[hidden] { display: none !important; }

/* 15. Focus outline — handled per-element with :focus-visible in app CSS */
:focus { outline: none; }
