/* Unstyle.css, pure HTML semantics */
@layer unstyle {
  :root {
    box-sizing: border-box;
  }

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

  * {
    min-width: 0;
    padding: unset;
    border: unset;
    margin: unset;
    color: inherit;
    font: inherit;
  }

  section,
  article,
  header,
  main,
  footer,
  aside,
  p,
  details,
  address,
  nav,
  figure,
  figcaption,
  canvas,
  img,
  video,
  audio,
  progress,
  fieldset,
  legend {
    display: block;
  }

  button,
  input,
  select {
    all: unset;
    display: inline-block;
    cursor: pointer;
  }

  button::-moz-focus-inner,
  input::-moz-focus-inner {
    padding: 0;
    border: 0;
  }

  input[type="search"] {
    box-sizing: content-box;
    -webkit-appearance: textfield;
  }
  input[type="search"]::-webkit-search-decoration,
  input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
  }
  input[type="number"]::-webkit-inner-spin-button,
  input[type="number"]::-webkit-outer-spin-button {
    height: auto;
  }

  textarea {
    border-radius: 0;
    vertical-align: top;
  }

  textarea,
  pre {
    overflow: auto;
  }

  ol,
  ul,
  li,
  dl,
  dt,
  dd {
    list-style: none;
  }

  table {
    border-collapse: collapse;
    border-spacing: 0;
  }

  hr {
    box-sizing: content-box;
    height: 0;
  }

  a,
  a:hover,
  a:active {
    text-decoration: none;
  }

  b {
    font-weight: bolder;
  }
  i {
    font-style: italic;
  }

  svg {
    fill: currentColor;
  }
  svg:not(:root) {
    overflow: hidden;
  }

  /* Consistent superscript/subscript, font-size based on PhotoShop algorithm */
  sup,
  sub {
    position: relative;
    vertical-align: middle;
    font-size: 58.3%;
    line-height: 0;
  }

  /* ~33.3% up or down for superscript and subscript; You may need to adjust for custom fonts */
  sup {
    top: -0.33333em;
  }
  sub {
    top: 0.33333em;
  }

  html,
  body {
    height: 100%;
    width: 100%;
  }

  html {
    font: 20px/1.5 sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: subpixel-antialiased;
    text-overflow: ellipsis;
  }

  body {
    overflow-x: hidden;
    overflow-y: scroll;
  }
}
