.days-container{overflow-x:auto;white-space:nowrap;grid-gap:5px;gap:5px}.days-container,.hours-container{display:flex;scroll-behavior:smooth;padding:10px}.hours-container{flex-wrap:wrap;grid-gap:.5rem;gap:.5rem;align-items:flex-start}.appointment-select{width:100%}.appointment-select .days-container,.appointment-select .days-container-mobile{display:flex;grid-gap:10px;gap:10px;overflow-x:auto;padding:10px 0;flex-wrap:nowrap;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.appointment-select .days-container button{min-width:120px;flex-shrink:0}.appointment-select .hours-container{max-height:300px;overflow-y:auto}.appointment-select .hours-container .btn{text-align:left;flex:0 0 auto;min-width:80px}.appointment-select .employee-badge{font-size:.75rem;white-space:nowrap}.appointment-select .weekday{font-size:.8rem;text-transform:capitalize}.appointment-select-mobile{padding:0}.appointment-select-mobile .compact-navigation{grid-gap:8px;gap:8px;align-items:center;padding:8px 0}.appointment-select-mobile .compact-nav-btn{min-width:32px;min-height:44px;padding:8px 6px;border-radius:8px;flex-shrink:0}.appointment-select-mobile .days-container-mobile{grid-gap:6px;gap:6px;overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding:8px 4px;flex:1 1;display:flex;align-items:center}.appointment-select-mobile .compact-day-btn{min-width:calc(14.28571vw - 17.42857px);max-width:calc(14.28571vw - 17.42857px);min-height:68px;padding:8px 4px;font-size:.75rem;flex-shrink:0;border-radius:12px;transition:all .2s ease}.appointment-select-mobile .compact-day-btn.single-nav{min-width:calc(14.28571vw - 13.14286px);max-width:calc(14.28571vw - 13.14286px)}.appointment-select-mobile .compact-day-btn:focus,.appointment-select-mobile .compact-day-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.appointment-select-mobile .mobile-day-content{text-align:center;line-height:1.2;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.appointment-select-mobile .mobile-weekday{font-size:.65rem;font-weight:600;text-transform:uppercase;color:inherit;margin-bottom:2px;letter-spacing:.5px}.appointment-select-mobile .mobile-day-number{font-size:1.4rem;font-weight:700;margin:2px 0;line-height:1}.appointment-select-mobile .mobile-month{font-size:.6rem;font-weight:500;text-transform:uppercase;opacity:.85;margin-top:2px;letter-spacing:.3px}.appointment-select-mobile .hours-container-mobile{max-height:200px;padding:12px 0;grid-gap:8px;gap:8px;overflow-y:auto;-webkit-overflow-scrolling:touch}.appointment-select-mobile .mobile-time-slot{padding:4px 0;width:100%}.appointment-select-mobile .mobile-time{font-size:1rem;font-weight:600}.appointment-select-mobile .mobile-employee-name{font-size:.75rem;background-color:hsla(0,0%,100%,.2);padding:2px 8px;border-radius:12px;color:inherit;font-weight:500}.appointment-select-mobile .hours-container-mobile .btn{flex:0 0 auto;width:100%;min-height:56px;font-size:.9rem;padding:12px 16px;border-radius:12px;transition:all .2s ease;margin-bottom:4px}.appointment-select-mobile .hours-container-mobile .btn:focus,.appointment-select-mobile .hours-container-mobile .btn:hover{transform:translateY(-1px);box-shadow:0 3px 6px rgba(0,0,0,.1)}@media (max-width:768px){.appointment-select-mobile .compact-day-btn{min-width:calc(14.28571vw - 14px);max-width:calc(14.28571vw - 14px);min-height:72px}.appointment-select-mobile .compact-day-btn.single-nav{min-width:calc(14.28571vw - 9.71429px);max-width:calc(14.28571vw - 9.71429px)}.appointment-select-mobile .hours-container-mobile .btn{min-height:60px}.appointment-select-mobile .compact-nav-btn{min-height:48px;min-width:30px}.appointment-select-mobile .days-container-mobile{grid-gap:3px;gap:3px;padding:8px 2px}}@media (max-width:480px){.appointment-select-mobile .compact-day-btn{min-width:calc(14.28571vw - 10.57143px);max-width:calc(14.28571vw - 10.57143px);min-height:76px;padding:6px 2px}.appointment-select-mobile .compact-day-btn.single-nav{min-width:calc(14.28571vw - 7px);max-width:calc(14.28571vw - 7px)}.appointment-select-mobile .mobile-day-number{font-size:1.5rem}.appointment-select-mobile .mobile-weekday{font-size:.7rem}.appointment-select-mobile .mobile-month{font-size:.65rem}.appointment-select-mobile .hours-container-mobile .btn{min-height:64px;font-size:1rem}.appointment-select-mobile .mobile-time{font-size:1.1rem}}.appointment-select-mobile .compact-navigation{position:relative;z-index:1}.appointment-select-mobile .btn-primary.compact-day-btn{background:linear-gradient(135deg,var(--bs-primary),#0056b3);border-color:var(--bs-primary);box-shadow:0 4px 12px rgba(0,123,255,.3)}.appointment-select-mobile .btn-primary.compact-day-btn .mobile-day-number{text-shadow:0 1px 2px rgba(0,0,0,.2)}.appointment-select-mobile .hours-container-mobile .btn-primary{background:linear-gradient(135deg,var(--bs-primary),#0056b3);border-color:var(--bs-primary);box-shadow:0 4px 12px rgba(0,123,255,.3)}.border-dotted{border-style:dotted!important}.border-dashed{border-style:dashed!important}