.dcal-header{display:flex !important;align-items:center !important;justify-content:space-between !important;margin-bottom:1rem !important}
.dcal-nav{width:2rem !important;height:2rem !important;display:flex !important;align-items:center !important;justify-content:center !important;border-radius:.5rem !important;font-size:1.25rem !important;background:none !important;border:none !important;cursor:pointer !important;color:rgb(var(--color-gray-500)) !important;transition:background .15s,color .15s !important}
.dcal-nav:hover:not(:disabled){background:rgb(var(--color-gray-100)) !important;color:rgb(var(--color-gray-900)) !important}
.dark .dcal-nav:hover:not(:disabled){background:rgb(var(--color-gray-800)) !important;color:#fff !important}
.dcal-nav:disabled{opacity:.3 !important;cursor:not-allowed !important}
.dcal-title{font-weight:600 !important;font-size:.9375rem !important;color:rgb(var(--color-gray-900)) !important}
.dark .dcal-title{color:rgb(var(--color-gray-100)) !important}
.dcal-grid{display:grid !important;grid-template-columns:repeat(7,1fr) !important;gap:.125rem !important}
.dcal-day{aspect-ratio:1 !important;display:flex !important;align-items:center !important;justify-content:center !important;font-size:.875rem !important;border-radius:9999px !important;transition:background .15s,color .15s !important}
.dcal-day.avail{cursor:pointer !important;font-weight:500 !important;color:rgb(var(--color-gray-900)) !important}
.dark .dcal-day.avail{color:rgb(var(--color-gray-100)) !important}
.dcal-day.avail:hover{background:rgb(var(--color-primary-100)) !important;color:rgb(var(--color-primary-700)) !important}
.dark .dcal-day.avail:hover{background:rgb(var(--color-primary-950)) !important;color:rgb(var(--color-primary-300)) !important}
.dcal-day.disabled{color:rgb(var(--color-gray-300)) !important;cursor:not-allowed !important;font-weight:400 !important}
.dark .dcal-day.disabled{color:rgb(var(--color-gray-700)) !important}
.dcal-day.sel{background:rgb(var(--color-primary-500))!important;color:#fff!important;font-weight:700 !important}
.dtime-slot{padding:.5rem .25rem !important;text-align:center !important;font-size:.8125rem !important;font-weight:500 !important;border-radius:.5rem !important;border:1px solid rgb(var(--color-gray-200)) !important;cursor:pointer !important;background:none !important;color:rgb(var(--color-gray-700)) !important;transition:border-color .15s,background .15s,color .15s !important}
.dark .dtime-slot{border-color:rgb(var(--color-gray-700)) !important;color:rgb(var(--color-gray-300)) !important}
.dtime-slot:hover{border-color:rgb(var(--color-primary-400)) !important;background:rgb(var(--color-primary-50)) !important;color:rgb(var(--color-primary-600)) !important}
.dark .dtime-slot:hover{background:rgb(var(--color-primary-950)) !important;color:rgb(var(--color-primary-300)) !important}
.dtime-slot.sel{background:rgb(var(--color-primary-500)) !important;border-color:transparent !important;color:#fff !important}
.step-dots{display:flex !important;gap:.5rem !important;align-items:center !important}
.step-dot{width:.625rem !important;height:.625rem !important;border-radius:50% !important;background:#e5e7eb !important;transition:background .2s !important}
.step-dot.active{background:rgb(var(--color-primary-500)) !important}
.sched-card{background:#fff !important;border-radius:1.5rem !important;padding:2rem !important;box-shadow:0 8px 48px rgba(0,0,0,.2) !important}
.sched-step{display:none !important}
.sched-step.active{display:block !important}
.cal-header{display:flex !important;align-items:center !important;justify-content:space-between !important;margin-bottom:1rem !important}
.cal-month-label{font-size:.9375rem !important;font-weight:700 !important;color:#111 !important}
.cal-nav{width:2rem !important;height:2rem !important;border-radius:.5rem !important;border:1px solid #e5e7eb !important;background:#fff !important;cursor:pointer !important;display:flex !important;align-items:center !important;justify-content:center !important;color:#555 !important;transition:background .15s !important;flex-shrink:0 !important}
.cal-nav:hover{background:#f3f4f6 !important}
.cal-grid{display:grid !important;grid-template-columns:repeat(7,1fr) !important;gap:.2rem !important}
.cal-dow{text-align:center !important;font-size:.625rem !important;font-weight:700 !important;color:#9ca3af !important;text-transform:uppercase !important;padding:.25rem 0 !important;letter-spacing:.04em !important}
.cal-day{text-align:center !important;padding:.5rem .125rem !important;border-radius:.4375rem !important;font-size:.8125rem !important;cursor:pointer !important;transition:background .12s,color .12s !important;color:#111 !important;background:transparent !important;border:none !important;font-family:inherit !important;width:100% !important}
.cal-day:hover:not(:disabled){background:rgb(var(--color-primary-50)) !important;color:rgb(var(--color-primary-600)) !important}
.cal-day.selected{background:rgb(var(--color-primary-500)) !important;color:#fff !important;font-weight:700 !important}
.cal-day.today:not(.selected):not(:disabled){font-weight:700 !important;box-shadow:inset 0 0 0 1.5px rgb(var(--color-primary-400)) !important;color:rgb(var(--color-primary-600)) !important}
.cal-day:disabled{color:#d1d5db !important;cursor:not-allowed !important;background:transparent !important}
.cal-day.cal-empty{cursor:default !important;pointer-events:none !important}
.time-slots-wrap{margin-top:1.125rem !important;border-top:1px solid #f3f4f6 !important;padding-top:1.125rem !important}
.time-slots-label{font-size:.8125rem !important;font-weight:600 !important;color:#374151 !important;margin-bottom:.5rem !important;display:flex !important;align-items:baseline !important;gap:.375rem !important;flex-wrap:wrap !important}
.time-slots-label span{font-weight:400 !important;color:#9ca3af !important;font-size:.75rem !important}
.time-slots-grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:.3rem !important}
.time-slot{padding:.5rem .125rem !important;border-radius:.4375rem !important;border:1px solid #e5e7eb !important;background:#fff !important;font-size:.75rem !important;text-align:center !important;cursor:pointer !important;transition:all .12s !important;color:#374151 !important;font-family:inherit !important;line-height:1.3 !important}
.time-slot:hover{border-color:rgb(var(--color-primary-400)) !important;color:rgb(var(--color-primary-600)) !important;background:rgb(var(--color-primary-50)) !important}
.time-slot.selected{background:rgb(var(--color-primary-500)) !important;border-color:rgb(var(--color-primary-500)) !important;color:#fff !important;font-weight:600 !important}
.sched-summary{display:flex !important;align-items:flex-start !important;gap:.625rem !important;background:rgb(var(--color-primary-50)) !important;border:1px solid rgb(var(--color-primary-100)) !important;border-radius:.75rem !important;padding:.75rem 1rem !important;margin-bottom:1.25rem !important;font-size:.875rem !important;color:rgb(var(--color-primary-700)) !important;line-height:1.5 !important}
.sched-field{display:flex !important;flex-direction:column !important;gap:.3rem !important}
.sched-field label{font-size:.8125rem !important;font-weight:600 !important;color:#374151 !important}
.sched-field input,.sched-field select,.sched-field textarea{width:100% !important;padding:.5625rem .8125rem !important;border-radius:.5625rem !important;border:1px solid #d1d5db !important;font-size:.9375rem !important;font-family:inherit !important;background:#fff !important;color:#111 !important;transition:border-color .15s !important;outline:none !important;box-sizing:border-box !important}
.sched-field input:focus,.sched-field select:focus,.sched-field textarea:focus{border-color:rgb(var(--color-primary-500)) !important;box-shadow:0 0 0 3px rgba(14,165,233,.12) !important}
.sched-field input::placeholder,.sched-field textarea::placeholder{color:#9ca3af !important}
.sched-err{font-size:.8125rem !important;color:#ef4444 !important;margin-top:.2rem !important;display:none !important}
.sched-err.show{display:block !important}
#sched-btn-next:disabled{opacity:.45 !important;cursor:not-allowed !important}