/* reset all element styles */

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

ul,
ol {
  list-style: none;
}

a{
  text-decoration: none;
  color: inherit;
}

input,
button,
textarea,
select {
  font: inherit;
  color: inherit;
  background: none;
  border: none;
  outline: none;
}

button:focus,
input:focus,
textarea:focus,
select:focus {
  outline: none;
}

body {
  font-family: inherit;
  line-height: 1.5;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

blockquote,
q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: '';
  content: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

img,
svg,
video,
canvas {
  display: block;
  max-width: 100%;
  height: auto;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

button {
  -webkit-appearance: none;
  appearance: none;
}

html {
  word-break: break-word;
  scroll-behavior: smooth;
}

details {
  display: block;
}

summary {
  display: list-item;
}

fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

hr {
  border: none;
  height: 1px;
  background: #e0e0e0;
  margin: 0;
}

iframe {
  border: none;
  display: block;
}

progress {
  vertical-align: baseline;
}

meter {
  vertical-align: baseline;
}

:host {
  all: initial;
  display: block;
}