html { -webkit-tap-highlight-color: transparent; }
body { min-height: 100dvh; }
@media (min-width: 1024px) {
  body { background: radial-gradient(circle at top, #e6fffb 0, #fafaf9 38rem); }
}
@media (min-width: 640px) {
  .modal-backdrop { align-items: center; justify-content: center; padding: 1.5rem; }
  .modal-backdrop > form,
  .modal-backdrop > div { width: min(100%, 38rem); border-radius: 1.5rem; padding: 1.75rem; }
  .modal-backdrop > div { max-width: 28rem; }
}
button, input, select { font: inherit; }
.safe-bottom { padding-bottom: max(1.25rem, env(safe-area-inset-bottom)); }
.safe-top { padding-top: max(1rem, env(safe-area-inset-top)); }
.hide-scrollbar { scrollbar-width: none; }
.hide-scrollbar::-webkit-scrollbar { display: none; }
.modal-backdrop { background: rgba(15, 23, 42, .48); backdrop-filter: blur(4px); }
.card-enter { animation: card-enter .22s ease-out both; }
@keyframes card-enter { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
