/* AMPM Pilates - Custom Styles */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Class cards */
.class-card {
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.class-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Smooth button transitions */
button, a {
  transition: all 0.15s ease;
}

/* Disable double-click on forms */
form.submitted button[type="submit"] {
  pointer-events: none;
  opacity: 0.6;
}

/* Day tab active state */
.day-tab.active {
  border-color: #4A5632;
  background-color: #F2F3ED;
}

/* Filter tab active state */
.filter-tab.active {
  background-color: #4A5632;
  color: #fff !important;
  border-color: #4A5632;
}

/* Hide scrollbar on day tabs */
.day-tabs::-webkit-scrollbar {
  display: none;
}

/* Offset anchors for sticky header */
.day-section {
  scroll-margin-top: 70px;
}

/* Confirmation checkmark pop-in */
@keyframes checkPop {
  0% { transform: scale(0.8); opacity: 0; }
  50% { transform: scale(1.1); }
  100% { transform: scale(1); opacity: 1; }
}
.animate-check {
  animation: checkPop 0.4s ease-out;
}

/* Admin tables: ensure clean horizontal scroll on mobile */
table {
  min-width: 640px;
}

/* Scrollbar styling for horizontal scroll areas */
.overflow-x-auto {
  -webkit-overflow-scrolling: touch;
}
.overflow-x-auto::-webkit-scrollbar {
  height: 4px;
}
.overflow-x-auto::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 2px;
}

/* Print styles for admin */
@media print {
  nav, .no-print {
    display: none !important;
  }
}
