* {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  font-family: Inter, sans-serif;
}

body {
  background: var(--light);
  color: #333333;
  position: relative;
  padding: 0;
  margin: 0;
  min-width: 300px;
}

h1, h2, h3 {
  color: #333333;
}

a, a:visited {
  color: var(--primary) !important;
}
a:hover, a:visited:hover {
  color: var(--dark);
}

a.btn {
  border-radius: 1rem 1rem;
  padding: 1rem 3rem;
  font-size: larger;
  background: var(--primary);
  color: #f0f0f0 !important;
  text-decoration: none;
  font-weight: bold;
}

input[type=checkbox].toggle {
  font-size: 1.1rem;
  appearance: none;
  width: 3.5em;
  height: 1.5em;
  background: var(--primary);
  border-radius: 3em;
  position: relative;
  cursor: pointer;
  outline: none;
  transition: all 0.2s ease-in-out;
  border: 1px solid var(--dark);
}
input[type=checkbox].toggle:checked {
  background: var(--light);
}
input[type=checkbox].toggle:after {
  position: absolute;
  content: "";
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  background: url("/svg/heart/primary") no-repeat 50% 50% #f0f0f0;
  background-size: 50% 50%;
  border: solid 1px var(--dark);
  box-shadow: 0 0 0.25em rgba(51, 51, 51, 0.3);
  transform: translateY(-2px);
  left: -0.25em;
  transition: all 0.2s ease-in-out;
}
input[type=checkbox].toggle:checked:after {
  left: calc(100% - 1.25em);
  background-color: var(--light);
}
