/* Darolshafa V794 — internal doctor booking calendar/time selector only */
#doctorsInternalBooking .appointment-selection-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);gap:16px;align-items:stretch}
#doctorsInternalBooking .booking-calendar-panel,#doctorsInternalBooking .booking-time-panel{border:1px solid rgba(204,126,255,.34);background:rgba(38,4,63,.35);border-radius:18px;padding:16px;min-width:0}
#doctorsInternalBooking .booking-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
#doctorsInternalBooking .booking-panel-head>div:first-child{display:flex;align-items:center;gap:10px}
#doctorsInternalBooking .booking-panel-head b{display:block;font-size:15px}
#doctorsInternalBooking .booking-panel-head small{display:block;margin-top:3px;color:#d9bcea;font-size:11px;line-height:1.8}
#doctorsInternalBooking .booking-step-number{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#b446ef,#7b22c8);font-weight:900;box-shadow:0 7px 20px #6b16a83d}
#doctorsInternalBooking .booking-month-nav{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:5px;border-radius:12px}
#doctorsInternalBooking .booking-month-nav strong{min-width:130px;text-align:center;font-size:14px}
#doctorsInternalBooking .booking-month-nav button{width:34px;height:34px;border:1px solid rgba(215,151,255,.35);border-radius:9px;background:rgba(114,31,164,.45);color:#fff;font:900 22px/1 inherit;cursor:pointer}
#doctorsInternalBooking .booking-month-nav button:disabled{opacity:.3;cursor:not-allowed}
#doctorsInternalBooking .calendar-week-head,#doctorsInternalBooking .calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
#doctorsInternalBooking .calendar-week-head{margin-bottom:6px}
#doctorsInternalBooking .calendar-week-head span{text-align:center;color:#d9bcea;font-size:10px;font-weight:800;padding:6px 2px}
#doctorsInternalBooking .calendar-day{appearance:none;min-height:62px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#a98fb9;padding:7px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-family:inherit}
#doctorsInternalBooking button.calendar-day{cursor:pointer}
#doctorsInternalBooking .calendar-day .day-number{font-weight:900;font-size:15px}
#doctorsInternalBooking .calendar-day small{font-size:8px;white-space:nowrap}
#doctorsInternalBooking .calendar-day.has-schedule:not(.is-full):not(.is-past){color:#fff;border-color:rgba(199,116,255,.58);background:linear-gradient(180deg,rgba(155,52,213,.48),rgba(101,24,144,.32));box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
#doctorsInternalBooking .calendar-day.has-schedule:not(.is-full):not(.is-past):hover{transform:translateY(-1px);border-color:#d99cff;background:linear-gradient(180deg,rgba(176,64,238,.68),rgba(112,30,157,.48))}
#doctorsInternalBooking .calendar-day.is-selected{outline:2px solid #f0cbff;outline-offset:1px;background:linear-gradient(135deg,#b546ef,#7421bd)!important;box-shadow:0 8px 20px #5c0e8b55}
#doctorsInternalBooking .calendar-day.is-full{color:#f4a8bd;background:rgba(133,30,68,.24);border-color:rgba(236,100,142,.3)}
#doctorsInternalBooking .calendar-day.no-schedule,#doctorsInternalBooking .calendar-day.is-past{opacity:.45;cursor:not-allowed}
#doctorsInternalBooking .calendar-day.is-blank{visibility:hidden;min-height:0;padding:0;border:0}
#doctorsInternalBooking .booking-calendar-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#d9bcea;font-size:10px}
#doctorsInternalBooking .booking-calendar-legend span{display:flex;align-items:center;gap:5px}
#doctorsInternalBooking .legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#8a6d9b}
#doctorsInternalBooking .legend-dot.available{background:#ba57ed}.booking-calendar-legend .legend-dot.full{background:#e35d88}.booking-calendar-legend .legend-dot.disabled{background:#6f5a7c}
#doctorsInternalBooking .booking-time-panel{display:flex;flex-direction:column}
#doctorsInternalBooking .booking-time-head{margin-bottom:10px}
#doctorsInternalBooking .appointment-time-slots{flex:1;min-height:255px}
#doctorsInternalBooking .time-slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-content:start}
#doctorsInternalBooking .appointment-time-btn{border:1px solid rgba(199,116,255,.45);background:rgba(121,35,170,.32);color:#fff;border-radius:13px;padding:12px 8px;min-height:62px;font-family:inherit;cursor:pointer;text-align:center}
#doctorsInternalBooking .appointment-time-btn b{display:block;font-size:13px;direction:ltr}
#doctorsInternalBooking .appointment-time-btn small{display:block;margin-top:5px;font-size:9px;color:#ddbfea}
#doctorsInternalBooking .appointment-time-btn:hover{border-color:#d99cff;background:rgba(160,55,215,.5)}
#doctorsInternalBooking .appointment-time-btn.is-selected{background:linear-gradient(135deg,#b546ef,#7421bd);border-color:#f0cbff;box-shadow:0 8px 18px #5b0d8d55}
#doctorsInternalBooking .appointment-time-btn.is-full{opacity:.5;cursor:not-allowed;background:rgba(120,35,63,.24);border-color:rgba(230,93,135,.27)}
#doctorsInternalBooking .booking-empty-state{min-height:200px;border:1px dashed rgba(204,126,255,.28);border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:18px;color:#d7b8e8;gap:7px}
#doctorsInternalBooking .booking-empty-state span{font-size:26px}
#doctorsInternalBooking .booking-empty-state b{font-size:13px;color:#fff}
#doctorsInternalBooking .booking-empty-state small{font-size:10px;line-height:2;max-width:260px}
#doctorsInternalBooking .booking-hidden-control{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
#doctorsInternalBooking .booking-guide-box p{font-size:11px;line-height:2;color:#dcc1eb;margin:0 0 8px}
@media(max-width:960px){#doctorsInternalBooking .appointment-selection-grid{grid-template-columns:1fr}#doctorsInternalBooking .appointment-time-slots{min-height:170px}}
@media(max-width:620px){#doctorsInternalBooking .booking-calendar-panel,#doctorsInternalBooking .booking-time-panel{padding:11px;border-radius:14px}#doctorsInternalBooking .calendar-week-head,#doctorsInternalBooking .calendar-month-grid{gap:3px}#doctorsInternalBooking .calendar-day{min-height:52px;border-radius:9px;padding:5px 2px}#doctorsInternalBooking .calendar-day .day-number{font-size:13px}#doctorsInternalBooking .calendar-day small{font-size:7px}#doctorsInternalBooking .calendar-week-head span{font-size:8px}#doctorsInternalBooking .time-slot-grid{grid-template-columns:1fr 1fr}#doctorsInternalBooking .booking-month-nav{width:100%;justify-content:space-between}#doctorsInternalBooking .booking-panel-head{align-items:flex-start}}
