/* Custom styles for the driving school website */

/* Base styles */
body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  line-height: 1.6;
}

/* School card hover effect */
.school-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.school-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

/* Form styles */
input:focus, select:focus {
  outline: none;
  ring: 2px;
  ring-color: #3b82f6;
  border-color: #3b82f6;
}

/* Custom checkbox styles */
input[type="checkbox"] {
  cursor: pointer;
}

/* Button hover animation */
button, a.button {
  transition: all 0.3s ease;
}

button:hover, a.button:hover {
  transform: translateY(-1px);
}

/* Calendar styles */
.calendar-day.available {
  background-color: #10b981;
  color: white;
  cursor: pointer;
}

.calendar-day.unavailable {
  background-color: #ef4444;
  color: white;
  cursor: not-allowed;
}

.calendar-day.active {
  background-color: #3b82f6;
  color: white;
  border: 2px solid #1e40af;
}

.time-slot {
  transition: all 0.2s ease;
}

.time-slot:hover {
  transform: scale(1.05);
}

.time-slot.selected {
  transform: scale(1.1);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  
  .calendar-grid {
    gap: 0.25rem;
  }
  
  .time-slots {
    grid-template-columns: repeat(auto-fill, minmax(4rem, 1fr));
  }
}