/*
 * Modern CSS Reset
 * Based on Josh W. Comeau's reset with custom additions
 */
/* 1. Use a more-intuitive box-sizing model */
html {
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
  border-width: 0;
  border-style: solid;
}

/* 2. Remove default margin */
*:not(dialog) {
  margin: 0;
}

/* 3. Enable keyword animations */
@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}
/* 4. Add accessible line-height and improve text rendering */
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

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

img {
  border: none;
  height: auto;
}

video {
  outline: none;
}

/* 6. Inherit fonts for form controls */
input,
button,
textarea,
select {
  font: inherit;
}

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

/* 8. Improve line wrapping */
p {
  text-wrap: pretty;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

/* ========================================
 * Custom additions
 * ======================================== */
/* Lists */
ul,
ol {
  list-style: none;
  padding: 0;
}

li {
  list-style: inherit;
}

/* Input & Textarea */
input {
  vertical-align: middle;
  min-width: 0;
}
input::placeholder {
  color: var(--input--placeholder--color, #c1c1c1);
}
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus {
  -webkit-background-clip: text;
}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield;
}

textarea {
  vertical-align: top;
  resize: vertical;
  --_cross-browser-scrollbar--thumb-color: var(--scrollbar--thumb-color, light-dark(#d1d5db, #4b5563));
  --_cross-browser-scrollbar--track-color: var(--scrollbar--track-color, transparent);
}
textarea::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
textarea::-webkit-scrollbar-track {
  background: var(--_cross-browser-scrollbar--track-color);
  border-radius: 100vw;
}
textarea::-webkit-scrollbar-thumb {
  background: var(--_cross-browser-scrollbar--thumb-color);
  border-radius: 100vw;
}
@supports (scrollbar-color: transparent transparent) {
  textarea {
    scrollbar-color: var(--_cross-browser-scrollbar--thumb-color) var(--_cross-browser-scrollbar--track-color);
    scrollbar-width: thin;
  }
}
textarea::placeholder {
  color: var(--input--placeholder--color, #c1c1c1);
}

input:focus,
textarea:focus {
  outline: none;
}

/* Button */
button,
input[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  background-color: transparent;
  padding: 0;
  text-align: left;
  color: inherit;
}
button:focus,
input[type=submit]:focus {
  outline: none;
}
button:disabled,
input[type=submit]:disabled {
  cursor: default;
}

/* Details/Summary */
details summary {
  list-style: none;
}
details summary::-webkit-details-marker {
  display: none;
}
details > * {
  box-sizing: border-box;
}

/* Links */
a {
  color: inherit;
  text-decoration: none;
  transition: color linear 0.2s;
}

/* Table */
table {
  border-collapse: collapse;
}
