button {
  font-size: var(--sz4);
  font-weight: 600;

  padding: var(--sz3) var(--sz5);
  min-height: 44px;
  min-width: 44px;
  border-radius: var(--sz3);

  background: var(--txt0);
  color: var(--bg1);

  cursor: pointer;
  
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

button:active {
  transform: scale(0.95);
}

button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

button:disabled:active {
  transform: none;
}

button.square{
  aspect-ratio: 1;
}