/* frontend styles v6.2 — improved */
.exxar-booking-widget-v62{display:flex;gap:20px;align-items:flex-start;max-width:1000px;margin:20px auto;background:#fff;border-radius:12px;box-shadow:0 10px 30px rgba(13,38,59,0.06);padding:18px;box-sizing:border-box}
:root { --exxar-step-default: #1e88e5; }
.exxar-booking-widget-v62{--step-color:var(--exxar-step-default)}
.exxar-left-steps{width:260px;background:linear-gradient(180deg,#f7fbff, #fff);padding:14px;border-radius:10px;border:1px solid #eef6ff;box-sizing:border-box}
.exxar-left-steps ul{list-style:none;margin:0;padding:0}
.exxar-left-steps li{display:flex;align-items:center;gap:10px;padding:10px;border-left:4px solid transparent;margin-bottom:10px;background:transparent;border-radius:8px;cursor:default;transition:all .18s}
.exxar-left-steps li .step-number{display:inline-flex;width:32px;height:32px;border-radius:50%;background:#f1f5f9;color:#111;align-items:center;justify-content:center;font-weight:700}
.exxar-left-steps li.active{background:#f0f8ff;border-left-color:var(--step-color);transform:translateX(2px);box-shadow:inset 0 0 0 1px rgba(30,136,229,0.06)}
.exxar-left-steps li.active .step-number{background:var(--step-color);color:#fff}
.exxar-left-steps li .step-text{font-size:14px;color:#25303b}
.exxar-right-form{flex:1;padding:6px 4px}
.exxar-right-form h3{margin-top:0;font-size:20px;color:#12263a}
.exxar-right-form input[type="text"], .exxar-right-form input[type="email"], .exxar-right-form textarea, .exxar-right-form select{width:100%;padding:12px;margin-bottom:10px;border:1px solid #e6eef7;border-radius:10px;box-sizing:border-box;outline:none}
.exxar-right-form input:focus, .exxar-right-form textarea:focus, .exxar-right-form select:focus{box-shadow:0 0 0 4px rgba(30,136,229,0.06);border-color:var(--step-color)}
.exxar-right-form button{background:var(--step-color);color:#fff;padding:10px 14px;border-radius:10px;border:0;cursor:pointer;font-weight:600}
.exxar-calendar-row{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.exxar-calendar-inline{min-width:320px}
#exxar_calendar{max-width:360px;background:#fff;border-radius:10px;padding:10px;border:1px solid #eef6ff;position:relative;z-index:1000;min-height:320px}
.exxar-timeslots{flex:1}
#exxar_slots_container{display:flex;flex-wrap:wrap;gap:10px;min-height:48px}
.exxar-slot{padding:8px 12px;border-radius:8px;border:1px solid #dbeffd;background:#fff;cursor:pointer;box-shadow:0 2px 6px rgba(15,41,74,0.03);user-select:none}
.exxar-slot.booked{opacity:0.45;border-style:dashed;cursor:not-allowed;background:#f9fafb}
.exxar-slot.selected{background:var(--step-color);color:#fff;border-color:rgba(0,0,0,0.08)}
.exxar-flex-options{margin-top:10px;display:flex;gap:12px;align-items:center}
.exxar-flex-options label{cursor:pointer}
.exxar-booking-success{background:#e8f9ed;border:1px solid #cfead1;padding:12px;margin-bottom:12px;border-radius:8px;color:#0b6f3a}
.exxar-summary{background:#fbfdff;border:1px solid #eef6ff;padding:12px;border-radius:10px;margin-bottom:12px}
.exxar-thank-image{margin:12px 0;display:flex;justify-content:center}
.exxar-confirm-note{font-size:13px;color:#6b7280;margin-bottom:8px}
.muted{color:#6b7280;font-size:14px}

/* responsive */
@media(max-width:900px){.exxar-booking-widget-v62{flex-direction:column;padding:14px}.exxar-left-steps{width:100%}}

/* small helper for required fields */
.exxar-invalid{border-color:#dc2626 !important;box-shadow:0 0 0 4px rgba(220,38,38,0.06) !important}

/* ensure calendar inline doesn't push layout on open */
.flatpickr-calendar.inline{position:static !important}
