.appointment-date{position:relative;margin:20px 0}.appointment-date input[type="date"],.appointment-date input[type="datetime-local"]{width:98%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background-color:#fff;color:#333;transition:all 0.3s ease;cursor:pointer}.appointment-date input[type="date"]::-webkit-calendar-picker-indicator,.appointment-date input[type="datetime-local"]::-webkit-calendar-picker-indicator{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="%23007cba" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>');background-size:20px 20px;cursor:pointer;padding:5px}.appointment-date label{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:14px}.accordion-section{border:1px solid #ccc;border-radius:6px;margin-bottom:10px}.accordion-header{background:#f7f7f7;padding:15px;font-weight:700;cursor:pointer}.accordion-content{display:none;padding:15px;background:#fff}.accordion-content.open{display:block}.slot-option{display:inline-flex;align-items:center;position:relative;margin:8px;padding:12px 16px;border:2px solid #ddd;border-radius:5px;cursor:pointer;transition:all 0.3s ease;background-color:#fafafa}.slot-option:hover{background-color:#f0f8ff;border-color:#007cba}.slot-option.selected{background-color:#e6f3ff;border-color:#007cba}.slot-time{font-size:14px;color:#333}.tick-icon{position:absolute;top:-8px;right:-8px;background:#007cba;color:#fff;width:20px;height:20px;border-radius:50%;display:none;align-items:center;justify-content:center;font-size:12px}.slot-option.selected .tick-icon{display:flex}.slot-duration-info{margin-top:10px;color:#666}.duration-badge{font-size:.8em;color:#666;font-weight:400}.slot-duration{font-size:.85em;color:#888;margin-left:5px}.break-slot{background-color:#ffe6e6;border-color:#f99;cursor:not-allowed;opacity:.7}.break-icon{color:#d63638}#date-status-message{padding:8px 12px;border-radius:4px;font-size:14px}.off-day-message{background-color:#ffe6e6;color:#d63638;border:1px solid #f99}.available-day-message{background-color:#e6ffe6;color:#46b450;border:1px solid #9f9}.available-slot.disabled{background:linear-gradient(135deg,#f8f8f8 0%,#eeeeee 100%);border:2px solid #d32f2f;opacity:.8;cursor:not-allowed;position:relative;padding:12px 50px 12px 16px;background-image:repeating-linear-gradient(45deg,transparent,transparent 8px,rgb(211 47 47 / .1) 8px,rgb(211 47 47 / .1) 16px)}.available-slot.disabled .slot-time{color:#333;font-weight:600;font-size:14px}.available-slot.disabled::before{content:'🔒';position:absolute;top:4px;right:4px;font-size:12px;z-index:1}.available-slot.disabled::after{content:'BOOKED';position:absolute;right:8px;bottom:4px;font-size:10px;font-weight:700;color:#d32f2f;background-color:rgb(255 255 255 / .95);padding:1px 4px;border-radius:2px;border:1px solid #d32f2f;z-index:1;line-height:1}.available-slot.booked-alt{background:#fff5f5;border:2px dashed #f56565;opacity:.9;cursor:not-allowed;position:relative;padding:12px 16px}.available-slot.booked-alt .slot-time{color:#2d3748;font-weight:500}.available-slot.booked-alt::before{content:'BOOKED';position:absolute;top:-8px;right:8px;background:#f56565;color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:3px;z-index:1}.available-slot.disabled{animation:gentle-pulse 3s infinite}#staff_member_select{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background-color:#fff;color:#333;transition:all 0.3s ease;appearance:none;cursor:pointer;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23007cba" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-down" viewBox="0 0 24 24"><polyline points="6 9 12 15 18 9"/></svg>');background-repeat:no-repeat;background-position:right 12px center;background-size:16px}#staff_member_select:hover{border-color:#007cba;background-color:#f9fcff}#staff_member_select:focus{outline:none;border-color:#007cba;box-shadow:0 0 0 3px rgb(0 124 186 / .2)}#staff_member_select option{padding:12px 16px;font-size:15px;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background-color:#fff;color:#333;border-bottom:1px solid #eee}#staff-message{padding:8px 12px;border-radius:4px;font-size:14px;margin-top:5px}.staff-available-message{background-color:#e6ffe6;color:#46b450;border:1px solid #9f9}.staff-error-message{background-color:#ffe6e6;color:#d63638;border:1px solid #f99}@keyframes gentle-pulse{0%,100%{opacity:.8}50%{opacity:.6}}.shake-animation{animation:shake 0.6s ease-in-out}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.available-slot:not(.disabled):not(.booked){background-color:#fafafa;border:2px solid #ddd}.available-slot:not(.disabled):not(.booked):hover{background-color:#f0f8ff;border-color:#007cba}.available-slot:not(.disabled):not(.booked).selected{background-color:#e6f3ff;border-color:#007cba}#appointment_slots_wrapper{max-height:300px;overflow-y:auto;padding-right:8px}#appointment_slots_wrapper::-webkit-scrollbar{width:6px}#appointment_slots_wrapper::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}#appointment_slots_wrapper::-webkit-scrollbar-thumb:hover{background:#999}