/* --- Font & sfondo pagina --- */
body {
  font-family: 'Segoe UI', sans-serif;
  background-color: #fefefe;
  color: #333;
}

/* --- Colori principali (verde FB Therapy) --- */
.sb-button-primary {
  background-color: #009245 !important;
  color: #fff !important;
  border-radius: 6px !important;
  padding: 12px 20px !important;
  font-weight: bold;
  font-size: 16px;
  letter-spacing: 0.5px;
  transition: background 0.3s ease, transform 0.2s ease;
}

.sb-button-primary:hover {
  background-color: #00783b !important;
  transform: scale(1.03);
}

/* --- Pulsanti secondari --- */
.sb-button-secondary {
  background-color: #e0e0e0 !important;
  color: #333 !important;
  border-radius: 6px !important;
  font-size: 15px;
}

/* --- Box servizi e calendario --- */
.sb-service-box, .sb-booking-box, .sb-calendar, .sb-provider-box {
  background-color: #ffffff !important;
  border: 1px solid #ddd !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  padding: 15px !important;
  transition: all 0.3s ease;
}

.sb-service-box:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* --- Titoli e intestazioni --- */
h1, h2, h3 {
  color: #009245 !important;
  font-weight: 600;
}

/* --- Calendario e selezione data --- */
.sb-calendar-day:hover {
  background-color: #e6f4ea !important;
}

.sb-calendar-day.sb-selected {
  background-color: #009245 !important;
  color: #fff !important;
}

/* --- Step attivi --- */
.sb-step-indicator .sb-step.sb-active {
  background-color: #009245 !important;
  color: #fff !important;
  border-radius: 50%;
  transition: background 0.3s ease, transform 0.3s ease;
  transform: scale(1.05);
}

/* --- Mobile friendly fix --- */
@media only screen and (max-width: 768px) {
  .sb-service-box, .sb-booking-box {
    margin: 10px 0 !important;
  }
}
