.professional-avatar img{border:3px solid var(--bs-purple-lighter);box-shadow:0 2px 6px rgba(88,34,173,.15);transition:all .3s ease}.professional-avatar img:hover{border-color:var(--bs-purple-light);box-shadow:0 4px 12px rgba(88,34,173,.25);transform:scale(1.05)}@media (min-width:576px){.professional-avatar img{height:100px;width:100px}}@media (min-width:992px){.professional-avatar img{height:110px;width:110px}}.week-navigation{background:linear-gradient(135deg,var(--bs-purple-lighter),var(--bs-purple-pale));border:1px solid var(--bs-purple-light)}.calendar-swiper{position:relative}.swiper-navigation{display:flex;justify-content:space-between;left:0;padding:0 .75rem;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:10}.swiper-navigation button{align-items:center;background:var(--bs-white);border:2px solid var(--bs-purple);border-radius:50%;box-shadow:0 2px 8px rgba(88,34,173,.2);color:var(--bs-purple);cursor:pointer;display:flex;height:44px;justify-content:center;pointer-events:all;transition:all .3s ease;width:44px}.swiper-navigation button:hover{background:var(--bs-purple);box-shadow:0 4px 12px rgba(88,34,173,.4);color:var(--bs-white);transform:scale(1.1)}.swiper-navigation button:active{transform:scale(.95)}.swiper-navigation button i{font-size:1.2rem}@media (min-width:992px){.swiper-navigation button{height:52px;width:52px}.swiper-navigation button i{font-size:1.4rem}}.days-swiper{touch-action:pan-y;transition:transform .4s cubic-bezier(.4,0,.2,1)}.day-header{background:linear-gradient(135deg,var(--bs-purple) 0,var(--bs-purple-dark) 100%)}.time-slots{display:grid;gap:.85rem;grid-template-columns:repeat(2,1fr);max-height:420px;overflow-y:auto;padding:.5rem}.time-slots::-webkit-scrollbar{width:8px}.time-slots::-webkit-scrollbar-track{background:var(--bs-light-gray);border-radius:4px}.time-slots::-webkit-scrollbar-thumb{background:var(--bs-purple-light);border-radius:4px;transition:all .3s ease}.time-slots::-webkit-scrollbar-thumb:hover{background:var(--bs-purple)}@media (min-width:576px){.time-slots{gap:1rem;grid-template-columns:repeat(3,1fr)}}@media (min-width:992px){.time-slots{gap:1.25rem;grid-template-columns:repeat(4,1fr);max-height:520px}}@media (min-width:1200px){.time-slots{grid-template-columns:repeat(5,1fr)}}.time-slot .slot-input{display:none}.time-slot .slot-input:checked+.slot-label{background:var(--bs-purple);border-color:var(--bs-purple);box-shadow:0 4px 12px rgba(88,34,173,.4);color:#fff;transform:scale(1.05)}.time-slot .slot-input:disabled+.slot-label{background:var(--bs-light-gray);border-color:var(--bs-medium-gray);color:var(--bs-text-gray);cursor:not-allowed;opacity:.4}.time-slot .slot-input:disabled+.slot-label:hover{background:var(--bs-light-gray);border-color:var(--bs-medium-gray);box-shadow:none;transform:none}.time-slot .slot-label{align-items:center;background:var(--bs-white);border:2px solid var(--bs-medium-gray);border-radius:.75rem;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:center;min-height:65px;padding:1.1rem .75rem;text-align:center;transition:all .3s ease;user-select:none}.time-slot .slot-label:hover:not(.disabled){background:var(--bs-purple-pale);border-color:var(--bs-purple);box-shadow:0 4px 8px rgba(88,34,173,.15);transform:translateY(-2px)}.time-slot .slot-label:active:not(.disabled){transform:scale(.98)}.no-slots{background:var(--bs-purple-pale);border:2px dashed var(--bs-purple-lighter);border-radius:.75rem;color:var(--bs-text-gray);grid-column:1/-1;padding:3.5rem 1rem;text-align:center}.no-slots i{color:var(--bs-purple-light);font-size:3.5rem;margin-bottom:1.25rem;opacity:.5}.no-slots p{color:var(--bs-purple);font-size:1.05rem;font-weight:600;margin:0}.swiper-dot{background:var(--bs-medium-gray);border:2px solid transparent;border-radius:50%;cursor:pointer;height:10px;transition:all .3s ease;width:10px}.swiper-dot:hover{background:var(--bs-purple-light);transform:scale(1.2)}.swiper-dot.active{background:var(--bs-purple);border-radius:5px;box-shadow:0 2px 6px rgba(88,34,173,.3);width:28px}.customer-section .customer-header{background:linear-gradient(135deg,var(--bs-purple) 0,var(--bs-purple-dark) 100%);box-shadow:0 4px 12px rgba(88,34,173,.3)}.customer-section .login-prompt .btn-login{background:var(--bs-purple);border:none;color:#fff;transition:all .3s ease}.customer-section .login-prompt .btn-login:hover{background:var(--bs-purple-darker);box-shadow:0 4px 12px rgba(88,34,173,.3);transform:translateY(-2px)}.customer-section .customer-form-fields{display:none}.customer-section .customer-form-fields.show{animation:fadeSlideIn .3s ease-out;display:block}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.text-purple{color:var(--bs-purple)!important}.bg-purple{background-color:var(--bs-purple)!important}.bg-purple-pale{background-color:var(--bs-purple-pale)!important}.border-purple-lighter{border-color:var(--bs-purple-lighter)!important}.btn-outline-purple{background:var(--bs-white);border-color:var(--bs-purple);color:var(--bs-purple);transition:all .3s ease}.btn-outline-purple:hover{background:var(--bs-purple);box-shadow:0 4px 12px rgba(88,34,173,.3);color:var(--bs-white);transform:translateY(-2px)}.btn-purple{background:var(--bs-purple);border:none;color:#fff;transition:all .3s ease}.btn-purple:hover{background:var(--bs-purple-darker);box-shadow:0 4px 12px rgba(88,34,173,.3);transform:translateY(-2px)}