*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
img, svg { max-width: 100%; display: block; }
button { font: inherit; color: inherit; cursor: pointer; }
fieldset { border: 0; padding: 0; margin: 0; }
legend { padding: 0; }
ol, ul { padding: 0; margin: 0; list-style: none; }
a { color: inherit; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.skip {
  position: absolute; left: -9999px; top: auto;
  width: 1px; height: 1px; overflow: hidden;
}
.skip:focus {
  position: fixed; left: 1rem; top: 1rem; width: auto; height: auto;
  background: var(--color-bg); padding: 0.5rem 0.75rem; z-index: 1000;
  border: 1px solid var(--color-rule);
}
