.wsb-booking-wrapper{

max-width:720px;
width:100%;

margin:auto;

padding:40px;

background:#ffffff;

border-radius:18px;

box-shadow:0 25px 70px rgba(0,0,0,.08);

font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto;

}

/* field */

.wsb-field{

width:100%;

margin-bottom:22px;

}

/* label */

.wsb-field label{

display:block;

font-weight:600;

margin-bottom:8px;

font-size:15px;

}

/* SELECT FIX */

#wsb-service{

width:100%;

height:50px;

padding:0 14px;

font-size:16px;

border-radius:10px;

border:1px solid #e5e7eb;

background:white;

line-height:normal;

white-space:normal;

overflow:visible;

text-overflow:unset;

}

/* calendario */

.wsb-calendar-area{

margin-bottom:28px;

}

/* horarios */

.wsb-times h3{

margin-bottom:12px;

font-size:18px;

}

/* grid horarios */

#wsb-slots{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(130px,1fr));

gap:12px;

}

/* slot */

.wsb-slot{

padding:14px;

border-radius:10px;

text-align:center;

cursor:pointer;

font-weight:600;

border:1px solid #e5e7eb;

background:#fafafa;

transition:all .25s ease;

}

/* hover */

.wsb-slot:hover{

background:#3b82f6;

color:white;

transform:translateY(-2px);

}

/* seleccionado */

.wsb-slot.active{

background:#111827;

color:white;

}

/* bloqueado */

.wsb-slot.disabled{

background:#f1f5f9;

color:#9ca3af;

cursor:not-allowed;

}

/* botón */

#wsb-book-btn{

margin-top:28px;

width:100%;

height:54px;

background:#10b981;

color:white;

font-size:17px;

font-weight:600;

border:none;

border-radius:12px;

cursor:pointer;

transition:.2s;

}

#wsb-book-btn:hover{

background:#059669;

}

/* responsive */

@media(max-width:640px){

.wsb-booking-wrapper{

padding:24px;

}

#wsb-slots{

grid-template-columns:repeat(2,1fr);

}

}

/* Improvements added automatically */
.wsb-booking-wrapper{
max-width:1100px;
margin:auto;
}

.wsb-calendar-area{
display:flex;
justify-content:center;
align-items:center;
}

.wsb-day{
padding:18px 10px;
font-size:16px;
font-weight:500;
}

.wsb-days{
display:grid;
grid-template-columns:repeat(7,1fr);
gap:14px;
}
