html {
  height: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body {
  min-height: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  -webkit-overflow-scrolling: touch;
}
html, body {
  overflow-x: visible;
  max-width: 100%;
}

button, input, textarea, select {
  -webkit-appearance: none;
  appearance: none;
  font-family: inherit;
}
input, textarea {
  font-size: 16px;
}
.check input {
  -webkit-appearance: none;
  appearance: none;
}

button, a, label, .cell, .pick {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.meter {
  background: rgba(44, 33, 28, 0.08);
  background: conic-gradient(var(--sage) calc(var(--p) * 1%), rgba(44, 33, 28, 0.08) 0);
}

.cell {
  aspect-ratio: auto;
}

@media (max-width: 767px) {
  .island {
    bottom: 0.4rem;
    bottom: constant(safe-area-inset-bottom);
    bottom: env(safe-area-inset-bottom);
    padding-bottom: max(0.35rem, env(safe-area-inset-bottom));
  }
  .stage {
    padding-bottom: 5.6rem;
    padding-bottom: calc(5.6rem + constant(safe-area-inset-bottom));
    padding-bottom: calc(5.6rem + env(safe-area-inset-bottom));
  }
}
