#calendar_container{background:#fff;border-radius:12px;max-width:100%;margin:20px auto;padding:25px;box-shadow:0 4px 6px #0000001a}.nn-appointment-adv{flex-direction:row;justify-content:space-between;width:100%;display:flex}.calendar-header{border-bottom:2px solid #e0e0e0;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;display:flex}.calendar-main-title{color:#2c3e50;font-size:1.3rem;font-weight:600;margin:0!important}.cal-nav-btn{min-width:40px;height:40px;font-size:1.2rem}.triple-calendar-container{justify-content:center;gap:10px;display:flex}.single-month-calendar{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;width:33%;padding:15px}.month-title-header{text-align:center;border-bottom:2px solid #dee2e6;margin-bottom:15px;padding-bottom:10px}.month-title{color:#495057;margin:0;font-size:1.1rem;font-weight:600}.calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px;display:grid}.weekday{text-align:center;color:#fff;background:#7b7d7e;border-radius:7px;padding:6px;font-size:.85rem;font-weight:600}.calendar-weekdays .weekday{cursor:pointer;transition:all .2s}.calendar-weekdays .weekday:hover{background-color:#505050;font-weight:700}.calendar-weekdays .weekday:active{background-color:#505050}.calendar-days{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:10px;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;user-select:none;background:#fff;border:2px solid #ecf0f1;border-radius:8px;justify-content:center;align-items:center;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.calendar-day:hover:not(.empty):not(.disabled){border-color:#007aff;box-shadow:0 2px 8px #3498db4d}.calendar-day.empty{cursor:default;background:0 0;border:none}.calendar-day.disabled,.calendar-day.past{opacity:.5;color:#adb5bd!important;cursor:not-allowed!important;background:#e9ecef!important;border-color:#dee2e6!important}.calendar-day.disabled:hover,.calendar-day.past:hover{box-shadow:none!important;transform:none!important}.calendar-day.selected{color:#fff!important;background:#007aff!important;border-color:#007aff!important;font-weight:600!important}button.btn.btn-danger.btn-sm.remove-time-slot-btn{margin-right:5px}div#time_slots_container{flex-wrap:wrap;gap:10px;display:flex}.time-slot.mb-2{display:flex}select.form-select.nobat-field{padding:0 30px}#generated_time_slots_container{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}#generated_time_slots_container .pr-time{justify-content:space-between;align-items:center;display:flex}.calendar-day.excluded{color:#fff;background:#f5576c;border-color:#f5576c;font-weight:600;text-decoration:line-through}.calendar-controls{border-top:2px solid #e0e0e0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;padding-top:20px;display:flex}.control-group{gap:15px;display:flex}.control-label{cursor:pointer;align-items:center;margin:0;display:flex}.control-label input[type=radio]{display:none}.mode-badge{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:10px 20px;font-size:.95rem;font-weight:600;transition:all .3s}.mode-badge.select{color:#667eea}.mode-badge.exclude{color:#f5576c}.control-label input[type=radio]:checked+.mode-badge.select{color:#fff;background:#007aff;border-color:#007aff;box-shadow:0 3px 10px #667eea4d}.control-label input[type=radio]:checked+.mode-badge.exclude{color:#fff;background:#f5576c;border-color:#f5576c;box-shadow:0 3px 10px #f5576c4d}.control-buttons{flex-wrap:wrap;gap:8px;display:flex}.date-summary{background:#f8f9fa;border-radius:10px;justify-content:center;gap:25px;margin-top:20px;padding:15px;display:flex}.summary-item{align-items:center;gap:10px;font-size:1rem;display:flex}.summary-badge{color:#fff;text-align:center;border-radius:5px;min-width:35px;padding:6px 15px;font-weight:700}.summary-badge.selected{background:#007aff}.summary-badge.excluded,button#clear_all{background:#f5576c}#generated_time_slots_container .time-slot{align-items:center;column-gap:5px;width:170px;display:flex}button.btn.btn-sm.btn-outline-secondary.cal-nav-btn,button.btn.btn-sm.btn-outline-secondary.cal-nav-btn:hover{cursor:pointer;line-height:.5;border:none!important;font-size:24px!important}@media (width<=992px){.triple-calendar-container{flex-direction:column}.single-month-calendar{width:100%;padding:5px}.p-3.bg-light.border.rounded.mb-3,.p-3.mb-3.border.rounded{padding:5px!important}.control-buttons{flex-direction:column}.control-group{justify-content:space-between;padding:10px}.nn-card.nn-p-5.nn-my-5.nn-shadow.nn-appointment-form{padding:5px!important}.nn-wrap.nn-provider-dashboard.nn-container{width:100%;padding:10px}.nn-appointment .calendar-days{padding:0}.date-summary{flex-direction:column;align-items:center}.nn-time-generation-controls.nn-p-3.nn-bg-light.nn-border.nn-rounded.nn-mb-3{width:90%;margin:0 auto;padding:20px 0!important}.card.p-5.my-5.shadow{padding:10px!important}.time-generation-controls .calendar-days{padding:0!important}#generated_time_slots_container{grid-template-columns:repeat(1,1fr);justify-items:center;gap:10px;display:grid}#generated_time_slots_container .time-slot{width:130px}}@media (width<=768px){#calendar_container{padding:5px}.calendar-day{font-size:.85rem}.weekday{padding:4px;font-size:.75rem}.calendar-controls{flex-direction:column;align-items:stretch}.control-buttons{width:100%}.control-buttons button{flex:1;padding:8px 12px;font-size:.85rem}.month-title{font-size:1rem}}