.ab-booking-wizard{max-width:500px;margin:2.5rem auto;background:#fff;border-radius:1.2rem;box-shadow:0 8px 32px 0 rgba(162,89,255,.1),0 1.5px 6px 0 rgba(0,0,0,.04);padding:2.5rem 2.5rem 2.5rem 2.5rem;font-family:"Inter",Arial,sans-serif;color:#222;overflow:visible;box-sizing:border-box}.ab-booking-title{font-size:2.1rem;font-weight:700;margin-bottom:2rem;text-align:left;color:#6c2eb7}.ab-booking-stepper{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;position:relative}.ab-step{flex:1 1 0;display:flex;flex-direction:column;align-items:center;position:relative;z-index:2}.ab-step-number{width:2.2rem;height:2.2rem;border-radius:50%;background:#f5f5f7;color:#6c2eb7;font-weight:700;font-size:1.2rem;display:flex;align-items:center;justify-content:center;margin-bottom:.3rem;border:2px solid #f5f5f7;transition:background .2s,color .2s,border .2s;z-index:2}.ab-booking-stepper::before{content:"";position:absolute;top:1.1rem;left:0;right:0;height:3px;background:#f5f5f7;z-index:1}.ab-step.active .ab-step-number{background:#a259ff;color:#fff;border:2px solid #a259ff}.ab-step.completed .ab-step-number{background:#a259ff;color:#fff;border:2px solid #a259ff}.ab-step-label{font-size:1rem;color:#888;font-weight:500;letter-spacing:.01em}.ab-step.active .ab-step-label{color:#6c2eb7;font-weight:700}.ab-step:not(:last-child)::after{content:none}.ab-step.active:not(:last-child)::after{background:#a259ff}.ab-step.completed:not(:last-child)::after{background:#a259ff}.ab-booking-step{display:none}.ab-step-active{display:block}.ab-form-group{margin-bottom:1.5rem}.ab-form-group label{font-weight:400;margin-bottom:.5rem;display:block;color:#222;font-size:1rem}.ab-form-group select,.ab-form-group input[type=text],.ab-form-group input[type=email],.ab-form-group textarea{width:100%;padding:.7rem 1rem;border:1.5px solid #e0e0e0;border-radius:.7rem;font-size:1rem;background:#f5f5f7;margin-top:.2rem;transition:border .2s}.ab-form-group select:focus,.ab-form-group input:focus,.ab-form-group textarea:focus{border-color:#a259ff;outline:none}.ab-required{color:#a259ff;font-weight:700}.ab-form-group input[type=text],.ab-form-group input[type=email],.ab-form-group textarea{background:#fff;border:1.5px solid #e0e0e0;color:#222;font-size:1rem;border-radius:.7rem;padding:.7rem 1rem;margin-top:.2rem;margin-bottom:.2rem;transition:border .2s}.ab-form-group input[type=text]::placeholder,.ab-form-group input[type=email]::placeholder,.ab-form-group textarea::placeholder{color:#bdbdbd;font-weight:400}.ab-field-desc{color:#888;font-size:.95rem;margin-bottom:.2rem;margin-top:.2rem}.ab-checkbox-border{width:100%;height:2px;background:#e0e0e0;margin:2.2rem 0 .7rem 0;border-radius:2px}.ab-checkbox-group input[type=checkbox]{accent-color:#a259ff;width:1.2rem;height:1.2rem}.ab-checkbox-group label{color:#888;font-size:1rem;font-weight:400;margin-bottom:0}.ab-reason-other{margin-top:-1rem}.ab-time-slots{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.5rem;margin-bottom:2.2rem;position:relative}.ab-time-slots::after{content:"";display:block;width:100%;height:2px;background:#e0e0e0;margin:2.2rem 0 0 0;border-radius:2px}.ab-form-actions{margin-top:2.2rem;padding-top:0}.ab-slot-btn{background:#f5f5f7;color:#222;border:1.5px solid #f5f5f7;border-radius:.7rem;padding:.6rem 1.2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border .2s}.ab-slot-btn.selected,.ab-slot-btn:active{background:#a259ff;color:#fff;border:1.5px solid #a259ff}.ab-form-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:2.2rem}.ab-btn{padding:.7rem 2.2rem;border-radius:.7rem;border:none;font-size:1.1rem;font-weight:600;cursor:pointer;background:#f5f5f7;color:#6c2eb7;transition:background .2s,color .2s}.ab-btn-cancel{background:#fff;color:#888;border:1.5px solid #e0e0e0}.ab-btn-next,.ab-btn-send{background:#a259ff;color:#fff;border:1.5px solid #a259ff}.ab-btn-next:disabled,.ab-btn-send:disabled{opacity:.6;cursor:not-allowed}.ab-btn-back{background:#f5f5f7;color:#6c2eb7;border:1.5px solid #f5f5f7}.ab-error{color:#dc2626;font-size:.95rem;margin-top:.3rem}.ab-summary-section{background:#f5f5f7;border-radius:.7rem;padding:1.2rem 1rem;margin-bottom:1.2rem}.ab-summary-section h3{margin-top:0;margin-bottom:.7rem;font-size:1.1rem;font-weight:700;color:#6c2eb7;display:flex;align-items:center;justify-content:space-between}.ab-btn-edit{background:none;color:#6c2eb7;border:none;font-size:1rem;font-weight:600;cursor:pointer;text-decoration:underline;margin-left:.5rem}.ab-booking-confirmation{text-align:center;padding:2.5rem 1rem}.ab-booking-confirmation h2{color:#6c2eb7;font-size:2rem;margin-bottom:1.2rem}@media(max-width: 600px){.ab-booking-wizard{max-width:100%;padding:1.2rem .5rem}.ab-booking-title{font-size:1.3rem}.ab-booking-stepper{margin-bottom:1.2rem}.ab-form-actions{flex-direction:column;gap:.7rem}}
