*, *::before, *::after {
  box-sizing: border-box;
}

*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
    all: unset;
    display: revert;
    hyphens: none;
    overflow-wrap: normal;
    word-break: normal;
}

:where(pre),
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

body, h1, h2, h3, h4, h5, h6, p, ul, ol, li, pre, blockquote {
  display: block;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, pre, blockquote {
  margin: 0 0 1rem 0;
}

ol, ul, menu, summary {
  list-style: none;
}

ul, ol {
  padding-left: clamp(1rem, 2vw, 2rem);
  list-style: disc;
}

ol {
  counter-reset: revert;
}

li {
  margin-bottom: 0.5rem;
}

table {
  border-collapse: collapse;
}

img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

input, textarea {
  user-select: auto;
}

textarea {
  white-space: revert;
}

meter {
  appearance: revert;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]:not([contenteditable="false"])) {
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  line-break: anywhere;
  -webkit-user-select: auto;
  user-select: auto;
}

:where([draggable="true"]) {
  -webkit-user-drag: element;
}

::-webkit-details-marker {
  display: none;
}

a, button {
  cursor: revert;
}