:root{--hubcal-bg-light:rgba(255, 255, 255, 0.98);--hubcal-bg-dark:rgba(30, 30, 35, 0.98);--hubcal-text-light:#2c3e50;--hubcal-text-dark:#ecf0f1;--hubcal-border-light:rgba(0, 0, 0, 0.08);--hubcal-border-dark:rgba(255, 255, 255, 0.15);--hubcal-shadow-light:0 6px 25px rgba(0, 0, 0, 0.12);--hubcal-shadow-dark:0 6px 25px rgba(0, 0, 0, 0.4);--hubcal-hover-light:rgba(0, 0, 0, 0.04);--hubcal-hover-dark:rgba(255, 255, 255, 0.08);--hubcal-accent:var(--main-color, #3498db);--hubcal-accent-hover:var(--main-color-dark, #2980b9)}.hubcal-calitem{margin:12px 8px;width:calc(100% - 16px);max-width:420px;border:2px solid transparent;border-radius:12px;padding:16px;cursor:pointer;transition:all .3s cubic-bezier(.4, 0, .2, 1);background:var(--hubcal-bg-light);border-color:var(--hubcal-border-light);color:var(--hubcal-text-light);box-shadow:var(--hubcal-shadow-light);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hubcal-calitem:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(var(--main-color-rgb,52,152,219),.15);border-color:var(--hubcal-accent);background:var(--hubcal-hover-light)}.dark-theme .hubcal-calitem,.hubcal-dark-bg .hubcal-calitem,[data-theme=dark] .hubcal-calitem{background:var(--hubcal-bg-dark);border-color:var(--hubcal-border-dark);color:var(--hubcal-text-dark);box-shadow:var(--hubcal-shadow-dark)}.dark-theme .hubcal-calitem:hover,.hubcal-dark-bg .hubcal-calitem:hover,[data-theme=dark] .hubcal-calitem:hover{background:var(--hubcal-hover-dark);border-color:var(--hubcal-accent)}.hubcal-hubbappointment{max-width:420px;width:100%;margin:20px auto;padding:0;background:0 0;border-radius:16px;position:relative;transition:all .3s ease}.hubcal-horizontal-layout.hubcal-hubbappointment{max-width:none;width:100%;margin:0;background:var(--hubcal-bg-light);border:1px solid var(--hubcal-border-light);box-shadow:var(--hubcal-shadow-light)}.dark-theme .hubcal-horizontal-layout.hubcal-hubbappointment,.hubcal-dark-bg.hubcal-horizontal-layout.hubcal-hubbappointment,[data-theme=dark] .hubcal-horizontal-layout.hubcal-hubbappointment{background:var(--hubcal-bg-dark);border-color:var(--hubcal-border-dark);box-shadow:var(--hubcal-shadow-dark)}@media (min-width:1200px){.hubcal-horizontal-layout{display:flex!important;gap:24px;max-width:1200px!important;width:100%!important;margin:0 auto;padding:24px;background:var(--hubcal-bg-light);border-radius:20px;box-shadow:var(--hubcal-shadow-light);border:1px solid var(--hubcal-border-light)}.hubcal-horizontal-layout.hubcal-hubbappointment,body .modern-calendar-container .hubcal-horizontal-layout{max-width:1200px!important;width:100%!important;margin:24px auto!important}.dark-theme .hubcal-horizontal-layout,.hubcal-dark-bg .hubcal-horizontal-layout,[data-theme=dark] .hubcal-horizontal-layout{background:var(--hubcal-bg-dark);border-color:var(--hubcal-border-dark);box-shadow:var(--hubcal-shadow-dark)}.hubcal-service-info-panel{flex:0 0 300px!important;padding:20px;border-radius:16px;background:rgba(var(--main-color-rgb,52,152,219),.05);border:1px solid rgba(var(--main-color-rgb,52,152,219),.1);display:block!important;visibility:visible!important;opacity:1!important}.dark-theme .hubcal-service-info-panel,.hubcal-dark-bg .hubcal-service-info-panel,[data-theme=dark] .hubcal-service-info-panel{background:rgba(var(--main-color-rgb,52,152,219),.08);border-color:rgba(var(--main-color-rgb,52,152,219),.2)}.hubcal-calendar-panel{flex:1!important;padding:20px;border-radius:16px;background:var(--hubcal-bg-light);border:1px solid var(--hubcal-border-light);display:block!important;visibility:visible!important;opacity:1!important}.dark-theme .hubcal-calendar-panel,.hubcal-dark-bg .hubcal-calendar-panel,[data-theme=dark] .hubcal-calendar-panel{background:var(--hubcal-bg-dark);border-color:var(--hubcal-border-dark)}.hubcal-times-panel{flex:0 0 280px!important;padding:20px;border-radius:16px;background:var(--hubcal-bg-light);border:1px solid var(--hubcal-border-light);max-height:600px;overflow-y:auto;display:block!important;visibility:visible!important;opacity:1!important}.dark-theme .hubcal-times-panel,.hubcal-dark-bg .hubcal-times-panel,[data-theme=dark] .hubcal-times-panel{background:var(--hubcal-bg-dark);border-color:var(--hubcal-border-dark)}.hubcal-horizontal-layout .hubcal-hubbappointment{max-width:none;width:100%;margin:0}.hubcal-horizontal-layout .hubcal-body{max-width:none;box-shadow:none;border:none;background:0 0}.hubcal-horizontal-layout #hubcalbody1,.hubcal-horizontal-layout [id^=hubcalbody]{display:block!important}.hubcal-horizontal-layout .hubcal-confirm-active~#hubcalbody1,.hubcal-horizontal-layout .hubcal-confirm-active~[id^=hubcalbody],.hubcal-horizontal-layout .hubcal-form-active~#hubcalbody1,.hubcal-horizontal-layout .hubcal-form-active~[id^=hubcalbody],.hubcal-horizontal-layout.hubcal-form-step #hubcalbody1,.hubcal-horizontal-layout.hubcal-form-step [id^=hubcalbody]{display:none!important}.hubcal-horizontal-layout #caltimes1,.hubcal-horizontal-layout [id^=caltimes]{display:none!important}.hubcal-horizontal-layout .hubcal-body{display:block!important;visibility:visible!important}.hubcal-horizontal-layout .hubcal-calitem{display:none}.hubcal-service-title{font-size:24px;font-weight:700;color:var(--hubcal-text-light);margin-bottom:8px;line-height:1.3}.dark-theme .hubcal-service-title,.hubcal-dark-bg .hubcal-service-title,[data-theme=dark] .hubcal-service-title{color:var(--hubcal-text-dark)}.hubcal-service-duration{display:flex;align-items:center;font-size:16px;color:var(--hubcal-accent);margin-bottom:20px;font-weight:600}.hubcal-service-duration i{margin-right:8px}.hubcal-service-instructions{background:rgba(255,255,255,.8);padding:16px;border-radius:12px;margin-bottom:20px;border-left:4px solid var(--hubcal-accent)}.dark-theme .hubcal-service-instructions,.hubcal-dark-bg .hubcal-service-instructions,[data-theme=dark] .hubcal-service-instructions{background:rgba(255,255,255,.1)}.hubcal-service-instructions h4{margin:0 0 8px 0;color:var(--hubcal-accent);font-size:16px;font-weight:600}.hubcal-service-instructions p{margin:0;font-size:14px;line-height:1.5;color:var(--hubcal-text-light)}.dark-theme .hubcal-service-instructions p,.hubcal-dark-bg .hubcal-service-instructions p,[data-theme=dark] .hubcal-service-instructions p{color:var(--hubcal-text-dark)}.hubcal-times-panel-title{font-size:18px;font-weight:600;margin-bottom:16px;color:var(--hubcal-text-light);display:flex;align-items:center}.dark-theme .hubcal-times-panel-title,.hubcal-dark-bg .hubcal-times-panel-title,[data-theme=dark] .hubcal-times-panel-title{color:var(--hubcal-text-dark)}.hubcal-times-panel-title i{margin-right:8px;color:var(--hubcal-accent)}.hubcal-times-empty{text-align:center;padding:40px 20px;color:var(--hubcal-text-light);opacity:.7}.dark-theme .hubcal-times-empty,.hubcal-dark-bg .hubcal-times-empty,[data-theme=dark] .hubcal-times-empty{color:var(--hubcal-text-dark)}.hubcal-times-empty i{font-size:48px;margin-bottom:16px;color:var(--hubcal-accent);opacity:.5}.hubcal-times-container{display:flex;flex-direction:column;gap:8px}.hubcal-times-container .hubcal-time,.hubcal-times-container .hubcal-timex{width:100%;padding:12px 16px;border:2px solid var(--hubcal-border-light);border-radius:8px;background:var(--hubcal-bg-light);color:var(--hubcal-text-light);text-align:center;font-weight:600;cursor:pointer;transition:all .2s ease;margin:0}.dark-theme .hubcal-times-container .hubcal-time,.dark-theme .hubcal-times-container .hubcal-timex,.hubcal-dark-bg .hubcal-times-container .hubcal-time,.hubcal-dark-bg .hubcal-times-container .hubcal-timex,[data-theme=dark] .hubcal-times-container .hubcal-time,[data-theme=dark] .hubcal-times-container .hubcal-timex{background:var(--hubcal-bg-dark);border-color:var(--hubcal-border-dark);color:var(--hubcal-text-dark)}.hubcal-times-container .hubcal-time:hover,.hubcal-times-container .hubcal-timex:hover{border-color:var(--hubcal-accent);background:var(--hubcal-accent);color:#fff;transform:translateX(4px)}.hubcal-times-container .hubcal-selected-time{border-color:var(--hubcal-accent);background:var(--hubcal-accent);color:#fff}.hubcal-times-panel::-webkit-scrollbar{width:6px}.hubcal-times-panel::-webkit-scrollbar-track{background:var(--hubcal-border-light);border-radius:3px}.hubcal-times-panel::-webkit-scrollbar-thumb{background:var(--hubcal-accent);border-radius:3px}.dark-theme .hubcal-times-panel::-webkit-scrollbar-track,.hubcal-dark-bg .hubcal-times-panel::-webkit-scrollbar-track,[data-theme=dark] .hubcal-times-panel::-webkit-scrollbar-track{background:var(--hubcal-border-dark)}}@media (max-width:768px){.hubcal-hubbappointment{max-width:100%;margin:16px 8px}.hubcal-calitem{margin:8px 4px;padding:12px}.hubcal-horizontal-layout{display:block!important;padding:16px}}.hubcal-body{display:block;border-radius:16px;width:100%;max-width:420px;margin:0 auto;padding:0;background:var(--hubcal-bg-light);border:1px solid var(--hubcal-border-light);box-shadow:var(--hubcal-shadow-light);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);transition:all .3s ease;overflow:hidden}.hubcal-login,.hubcal-times{border-radius:16px;border:1px solid var(--hubcal-border-light);background:var(--hubcal-bg-light);box-shadow:var(--hubcal-shadow-light);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);margin:12px 0;transition:all .3s ease}.hubcal-body .hubcal-months{position:relative;padding:20px 16px 16px;margin:0;text-align:center;background:linear-gradient(135deg,var(--hubcal-accent) 0,var(--hubcal-accent-hover) 100%);color:#fff;font-weight:600;border-radius:16px 16px 0 0;box-shadow:0 2px 8px rgba(0,0,0,.1);z-index:1}.hubcal-month{position:static;padding:0;margin:0;color:inherit;text-align:center;font-size:1.4rem;font-weight:800;letter-spacing:.8px;text-shadow:0 2px 4px rgba(0,0,0,.2)}.hubcal-next-month,.hubcal-prev-month{position:absolute;top:50%;transform:translateY(-50%);cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .2s ease;background:rgba(255,255,255,.15);color:#fff;z-index:10}.hubcal-prev-month{left:16px}.hubcal-next-month{right:16px}.hubcal-next-month:hover,.hubcal-prev-month:hover{background:rgba(255,255,255,.25);transform:translateY(-50%) scale(1.05)}.hubcal-next-month i,.hubcal-prev-month i{width:16px;height:16px;margin:0;font-size:16px}.hubcal-disabled{opacity:.4;cursor:not-allowed!important;pointer-events:none}.hubcal-body .hubcal-container{display:block;padding:16px}.hubcal-body .hubcal-weekdays{text-align:center;overflow:hidden;border:none;margin-bottom:12px;padding:0 4px}.hubcal-body .hubcal-weekdays-conatiner{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:8px 0;background:rgba(var(--main-color-rgb,52,152,219),.08);border-radius:8px;margin-bottom:8px}.hubcal-body span.hubcal-weekday{color:var(--hubcal-accent);cursor:default;display:block;font-size:.95rem;font-weight:700;line-height:24px;margin:0;text-align:center;padding:4px 2px;text-transform:uppercase;letter-spacing:.5px}.hubcal-body .hubcal-days-container{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:8px 4px;justify-items:center;background:rgba(var(--main-color-rgb,52,152,219),.02);border-radius:8px}.hubcal-body .hubcal-day{width:42px;height:42px;font-size:1.1rem;padding:0;margin:0;line-height:42px;border:1px solid transparent;text-align:center;color:var(--hubcal-text-light);border-radius:10px;transition:all .2s cubic-bezier(.4, 0, .2, 1);cursor:default;font-weight:600;position:relative;overflow:hidden}.hubcal-body .hubcal-active,.hubcal-body .hubcal-today{cursor:pointer;border-color:var(--hubcal-border-light);background:rgba(var(--main-color-rgb,52,152,219),.08);font-weight:600}.hubcal-body .hubcal-active:hover,.hubcal-body .hubcal-today:hover{background:var(--hubcal-accent);color:#fff;transform:scale(1.1);box-shadow:0 4px 12px rgba(var(--main-color-rgb,52,152,219),.3);z-index:2;border-color:var(--hubcal-accent)}.hubcal-body .hubcal-selected{background:var(--hubcal-accent)!important;color:#fff!important;font-weight:700;box-shadow:0 2px 8px rgba(var(--main-color-rgb,52,152,219),.4);position:relative;overflow:hidden}.hubcal-body .hubcal-selected::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.3),transparent);transform:rotate(45deg);animation:hubcal-shimmer 1.5s ease-in-out}@keyframes hubcal-shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}50%{transform:translateX(0) translateY(0) rotate(45deg)}100%{transform:translateX(100%) translateY(100%) rotate(45deg)}}.hubcal-body .hubcal-disabled{opacity:.3;cursor:not-allowed!important;pointer-events:none}@media (max-width:768px){.hubcal-body .hubcal-days-container{gap:2px;padding:6px 2px}.hubcal-body .hubcal-day{width:40px;height:40px;line-height:40px;font-size:1rem;font-weight:600}.hubcal-body span.hubcal-weekday{font-size:1rem;font-weight:700}.hubcal-timezone-info{font-size:1.4rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.1)}}@media (max-width:480px){.hubcal-body .hubcal-day{width:36px;height:36px;line-height:36px;font-size:.95rem;font-weight:600}.hubcal-body span.hubcal-weekday{font-size:.9rem;font-weight:700}.hubcal-timezone-info{font-size:1.2rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.1)}.hubcal-time,.hubcal-timex{font-size:1.1rem;padding:14px 10px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}}.hubcal-times-det{text-align:center;padding:20px 16px;background:var(--hubcal-bg-light);border-radius:12px}.hubcal-dark-bg .hubcal-times-det{background:rgba(255,255,255,.05)}.hubcal-time,.hubcal-timex{font-size:1.2rem;font-weight:700;background:rgba(var(--main-color-rgb,52,152,219),.08);border:2px solid var(--hubcal-border-light);color:var(--hubcal-text-light);padding:16px 12px;display:inline-block;min-width:80px;margin:6px 4px;text-align:center;cursor:pointer;border-radius:10px;transition:all .2s cubic-bezier(.4, 0, .2, 1);position:relative;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.hubcal-time:hover,.hubcal-timex:hover{background:var(--hubcal-accent);border-color:var(--hubcal-accent);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--main-color-rgb,52,152,219),.25)}.hubcal-selected-time{background:var(--hubcal-accent)!important;color:#fff!important;border-color:var(--hubcal-accent)!important;box-shadow:0 2px 8px rgba(var(--main-color-rgb,52,152,219),.4);font-weight:700}.hubcal-calstep{text-align:center;padding:12px 8px 8px 8px;margin-bottom:16px}.hubcal-calstepdet{background:rgba(var(--main-color-rgb,52,152,219),.08);border:2px solid var(--hubcal-border-light);color:var(--hubcal-text-light);padding:14px 12px;display:inline-block;width:calc(25% - 6px);min-width:90px;margin:2px 3px;text-align:center;cursor:pointer;border-radius:10px;transition:all .2s ease;font-weight:700;font-size:1rem;letter-spacing:.3px;line-height:1.3;position:relative;text-shadow:0 1px 2px rgba(0,0,0,.1)}.hubcal-calstepactive{background:var(--hubcal-accent)!important;color:#fff!important;border-color:var(--hubcal-accent)!important;box-shadow:0 2px 8px rgba(var(--main-color-rgb,52,152,219),.3)}.dark-theme .hubcal-calstepdet,.hubcal-dark-bg .hubcal-calstepdet,[data-theme=dark] .hubcal-calstepdet{background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.25);color:rgba(255,255,255,.95);box-shadow:0 2px 8px rgba(0,0,0,.3)}.dark-theme .hubcal-calstepdet:hover,.hubcal-dark-bg .hubcal-calstepdet:hover,[data-theme=dark] .hubcal-calstepdet:hover{background:rgba(255,255,255,.18);border-color:var(--hubcal-accent);color:#fff;box-shadow:0 4px 12px rgba(var(--main-color-rgb,52,152,219),.4);transform:translateY(-1px)}.dark-theme .hubcal-calstepactive,.hubcal-dark-bg .hubcal-calstepactive,[data-theme=dark] .hubcal-calstepactive{background:var(--hubcal-accent)!important;color:#fff!important;border-color:var(--hubcal-accent)!important;box-shadow:0 4px 16px rgba(var(--main-color-rgb,52,152,219),.6)!important;font-weight:700!important}.dark-theme .hubcal-calstepdisabled,.hubcal-dark-bg .hubcal-calstepdisabled,[data-theme=dark] .hubcal-calstepdisabled{opacity:.3;background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.1)!important;color:rgba(255,255,255,.4)!important;cursor:not-allowed!important;pointer-events:none}.hubcal-calstepdet[data-tooltip]::before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.9);color:#fff;padding:6px 10px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;z-index:1000;margin-bottom:6px;pointer-events:none}.hubcal-calstepdet[data-tooltip]::after{content:'';position:absolute;bottom:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:rgba(0,0,0,.9);opacity:0;visibility:hidden;transition:all .2s ease;z-index:1000;margin-bottom:1px}.hubcal-calstepdet[data-tooltip]:hover::after,.hubcal-calstepdet[data-tooltip]:hover::before{opacity:1;visibility:visible}.hubcal-calstepdet i{margin-right:6px;font-size:1.1em}.hubcal-calstepdisabled{opacity:.4;cursor:not-allowed!important;pointer-events:none}@keyframes hubcal-step-shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-2px)}20%,40%,60%,80%{transform:translateX(2px)}}@keyframes hubcal-step-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}100%{transform:scale(1)}}.hubcal-step-shake{animation:hubcal-step-shake .5s ease-in-out}.hubcal-step-clicking{animation:hubcal-step-pulse .2s ease-in-out;transform-origin:center}@keyframes hubcal-time-select{0%{transform:scale(1);background:var(--hubcal-accent)}50%{transform:scale(1.1);background:var(--hubcal-accent-hover,#2980b9)}100%{transform:scale(1.05);background:var(--hubcal-accent)}}.hubcal-time-selecting{animation:hubcal-time-select .6s ease-in-out;background:var(--hubcal-accent)!important;color:#fff!important;border-color:var(--hubcal-accent)!important;pointer-events:none}.hubcal-calchangeend,.hubcal-calchangeend2{color:#fff;background:var(--hubcal-accent);border:2px solid var(--hubcal-accent);font-size:1rem;font-weight:600;width:100%;max-width:280px;padding:14px 20px;border-radius:12px;transition:all .2s ease;cursor:pointer;letter-spacing:.3px;box-shadow:0 2px 8px rgba(var(--main-color-rgb,52,152,219),.2)}.hubcal-calchangeend2:hover,.hubcal-calchangeend:hover{color:var(--hubcal-accent);border-color:var(--hubcal-accent);background:rgba(var(--main-color-rgb,52,152,219),.08);transform:translateY(-2px);box-shadow:0 4px 15px rgba(var(--main-color-rgb,52,152,219),.3)}.hubcal-emptymonth{display:none;font-size:.9rem;font-weight:500;color:var(--hubcal-accent);text-align:center;cursor:pointer;padding:20px 80px;background:rgba(var(--main-color-rgb,52,152,219),.05);border-radius:8px;margin:12px 16px;transition:all .2s ease;position:relative;z-index:1}.hubcal-emptymonth:hover{background:rgba(var(--main-color-rgb,52,152,219),.1)}.hubcal-emptymonth i{margin-left:8px;font-size:1rem}.hubcal-empty-next-month{display:inline-block;background:var(--hubcal-accent);color:#fff!important;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s ease;margin-top:10px;position:relative;z-index:50}.hubcal-empty-next-month:hover{background:var(--hubcal-accent-hover);transform:translateY(-1px);z-index:50}.hubcal-empty-content{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 20px}.hubcal-empty-icon{font-size:1.2rem;margin-bottom:5px;opacity:.8}.hubcal-empty-text{margin:0;font-size:.9rem;line-height:1.4}.hubcal-active{border-radius:10px!important;border:2px solid var(--hubcal-accent)!important;background:rgba(var(--main-color-rgb,52,152,219),.1)!important}.hubcal-dark-bg .hubcal-body,.hubcal-dark-bg .hubcal-login,.hubcal-dark-bg .hubcal-times{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.15)!important;color:#fff!important;box-shadow:0 4px 20px rgba(0,0,0,.5)!important}.hubcal-dark-bg .hubcal-body .hubcal-day{color:#fff!important}.hubcal-dark-bg .hubcal-step-info,.hubcal-dark-bg .hubcal-times-header,.hubcal-dark-bg .hubcal-times-title,.hubcal-dark-bg h4{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.3)}.hubcal-dark-bg .hubcal-times .fa-check{color:#0f8!important}.hubcal-dark-bg .hubcal-time,.hubcal-dark-bg .hubcal-timex{background:rgba(255,255,255,.15)!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important;font-weight:700!important;text-shadow:0 1px 2px rgba(0,0,0,.3)}.hubcal-dark-bg .hubcal-time:hover,.hubcal-dark-bg .hubcal-timex:hover{background:var(--hubcal-accent,#007bff)!important;color:#fff!important;border-color:var(--hubcal-accent,#007bff)!important;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,123,255,.6);text-shadow:none}.hubcal-dark-bg .hubcal-selected-time{background:var(--hubcal-accent,#007bff)!important;color:#fff!important;border-color:var(--hubcal-accent,#007bff)!important;box-shadow:0 0 0 2px rgba(0,123,255,.3);text-shadow:none}.hubcal-step-info{text-align:center;padding:8px 8px 12px 8px;margin-bottom:16px}.hubcal-selected-info{color:var(--hubcal-accent);margin:0 0 4px 0;font-size:1.1rem;font-weight:600;line-height:1.2}.hubcal-timezone-info{color:var(--hubcal-text-light);margin:0;font-size:1.3rem;font-weight:600;opacity:1;line-height:1.4;text-shadow:0 1px 2px rgba(0,0,0,.1)}.hubcal-dark-bg .hubcal-timezone-info{color:var(--hubcal-text-dark)}.hubcal-times-header{padding:16px;text-align:center;border-bottom:1px solid var(--hubcal-border-light);background:rgba(var(--main-color-rgb,52,152,219),.03)}.hubcal-times-title{margin:0;color:var(--hubcal-accent);font-size:1.1rem;font-weight:600}.hubcal-login-header{padding:16px;text-align:center;border-bottom:1px solid var(--hubcal-border-light);background:rgba(var(--main-color-rgb,52,152,219),.03)}.hubcal-login-title{margin:0;color:var(--hubcal-accent);font-size:1.1rem;font-weight:600}.hubcal-login-content{padding:20px 16px!important}.hubcal-done-content{text-align:center;padding:30px 20px}.hubcal-done-icon{margin-bottom:16px}.hubcal-done-icon i{font-size:3rem;color:var(--hubcal-accent);opacity:.8}.hubcal-done-title{color:var(--hubcal-accent);margin:0 0 20px 0;font-size:1.3rem;font-weight:600}.hubcal-done-summary{background:rgba(var(--main-color-rgb,52,152,219),.05);border-radius:8px;padding:16px;margin:20px 0;text-align:left;max-width:300px;margin-left:auto;margin-right:auto}.hubcal-done-summary p{margin:8px 0;color:var(--hubcal-text-light)}.hubcal-dark-bg .hubcal-done-summary{background:rgba(255,255,255,.08)}.hubcal-dark-bg .hubcal-done-summary p{color:var(--hubcal-text-dark)}.hubcal-done-actions{text-align:center;margin-top:25px}.hubcal-empty-content{text-align:center;padding:40px 20px}.hubcal-empty-icon{font-size:2.5rem;color:var(--hubcal-accent);opacity:.6;display:block;margin-bottom:12px}.hubcal-empty-text{color:var(--hubcal-text-light);margin:0 0 16px 0;font-size:1rem;font-weight:500}.hubcal-dark-bg .hubcal-empty-text{color:var(--hubcal-text-dark)}.hubcal-empty-action{display:inline-block;background:rgba(var(--main-color-rgb,52,152,219),.08);color:var(--hubcal-accent);padding:10px 16px;border-radius:6px;transition:all .2s ease;cursor:pointer;font-weight:500}.hubcal-empty-action:hover{background:rgba(var(--main-color-rgb,52,152,219),.15);transform:translateY(-1px)}.hubcal-empty-action i{margin-left:6px}.hubcal-calitem-title{margin:0 0 12px 0;font-size:1rem;color:var(--hubcal-text-light);line-height:1.4}.hubcal-dark-bg .hubcal-calitem-title{color:var(--hubcal-text-dark)}.hubcal-status{display:inline-block;margin-left:8px;font-size:.85rem;font-weight:500}.hubcal-form{background:0 0}@media (max-width:992px){.hubcal-calstepdet{width:calc(50% - 8px);margin:4px}.hubcal-login-header,.hubcal-times-header{padding:12px}.hubcal-done-content{padding:25px 16px}}@media (max-width:480px){.hubcal-hubbappointment{margin:12px 4px}.hubcal-body .hubcal-months{padding:16px 12px 12px}.hubcal-month{font-size:1.2rem;font-weight:800;text-shadow:0 2px 4px rgba(0,0,0,.2)}.hubcal-next-month,.hubcal-prev-month{padding:6px 8px}.hubcal-prev-month{left:8px}.hubcal-next-month{right:8px}.hubcal-calstepdet{width:calc(50% - 4px);margin:2px;padding:12px 8px;font-size:1rem;font-weight:700}.hubcal-time,.hubcal-timex{min-width:65px;margin:4px 2px;padding:10px 6px;font-size:.85rem}.hubcal-done-icon i{font-size:2.5rem}.hubcal-done-title{font-size:1.2rem}.hubcal-empty-content{padding:30px 16px}.hubcal-empty-icon{font-size:2rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.hubcal-calchangeend:focus,.hubcal-calstepdet:focus,.hubcal-day:focus,.hubcal-time:focus,.hubcal-timex:focus{outline:2px solid var(--hubcal-accent);outline-offset:2px}.hubcal-loading{position:relative;opacity:.7;pointer-events:none;transition:opacity .2s ease}.hubcal-loading-btn{position:relative;pointer-events:none}.hubcal-loading-btn::before{content:'';position:absolute;top:50%;left:50%;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:hubcal-spin-btn .8s linear infinite;transform:translate(-50%,-50%);z-index:10}.hubcal-loading-container::after{content:'';position:absolute;top:50%;left:50%;width:24px;height:24px;border:3px solid var(--hubcal-accent);border-top-color:transparent;border-right-color:transparent;border-radius:50%;animation:hubcal-spin-container 1.2s cubic-bezier(.4,0,.2,1) infinite;transform:translate(-50%,-50%);z-index:100}.hubcal-loading-pulse::after{animation:hubcal-spin-container 1.2s cubic-bezier(.4,0,.2,1) infinite,hubcal-pulse 1.5s ease-in-out infinite}.hubcal-times-loading{position:relative;min-height:120px}.hubcal-times-loading::before{content:'';position:absolute;top:50%;left:50%;width:20px;height:20px;border:2px solid var(--hubcal-accent);border-top-color:transparent;border-radius:50%;animation:hubcal-pulse-spin 1.5s ease-in-out infinite;transform:translate(-50%,-50%);z-index:10}@keyframes hubcal-spin-btn{0%{transform:translate(-50%,-50%) rotate(0)}100%{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes hubcal-spin-container{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:1}50%{transform:translate(-50%,-50%) rotate(180deg) scale(.8);opacity:.7}100%{transform:translate(-50%,-50%) rotate(360deg) scale(1);opacity:1}}@keyframes hubcal-pulse-spin{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:.8}25%{transform:translate(-50%,-50%) rotate(90deg) scale(1.1);opacity:1}50%{transform:translate(-50%,-50%) rotate(180deg) scale(.9);opacity:.6}75%{transform:translate(-50%,-50%) rotate(270deg) scale(1.1);opacity:1}100%{transform:translate(-50%,-50%) rotate(360deg) scale(1);opacity:.8}}@keyframes hubcal-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}.hubcal-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.8);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;border-radius:inherit}.hubcal-dark-bg .hubcal-loading-overlay{background:rgba(0,0,0,.6)}.hubcal-form-header{text-align:center;padding:16px 0;border-bottom:1px solid var(--hubcal-border-light);margin-bottom:16px}.hubcal-dark-bg .hubcal-form-header{border-bottom-color:rgba(255,255,255,.1)}.hubcal-form-title{color:var(--hubcal-text-primary);font-size:1.4rem;font-weight:700;margin-bottom:8px;display:flex;align-items:center;justify-content:center}.hubcal-form-subtitle{color:var(--hubcal-text-secondary);font-size:.9rem;margin:0;opacity:.8}.hubcal-form{max-width:100%;padding:0 16px}.hubcal-form-group{margin-bottom:16px;position:relative}.hubcal-form-group:last-child{margin-bottom:0}.hubcal-form-label{display:block;font-size:.85rem;font-weight:600;color:var(--hubcal-text-primary);margin-bottom:6px;display:flex;align-items:center}.hubcal-dark-bg .hubcal-form-label{color:var(--hubcal-text-primary)}.hubcal-form-input{width:100%;padding:10px 14px;border:2px solid var(--hubcal-border-light);border-radius:8px;font-size:.9rem;background:var(--hubcal-bg-white);color:var(--hubcal-text-primary);transition:all .3s ease;outline:0}.hubcal-form-input:focus{border-color:var(--hubcal-accent,#007bff);box-shadow:0 0 0 3px rgba(var(--main-color-rgb,0,123,255),.1);background:var(--hubcal-bg-white)}.hubcal-form-input::placeholder{color:var(--hubcal-text-muted);opacity:.7}.hubcal-dark-bg .hubcal-form-input{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.15);color:#fff}.hubcal-dark-bg .hubcal-form-input:focus{background:rgba(255,255,255,.08);border-color:var(--hubcal-accent,#007bff);box-shadow:0 0 0 3px rgba(var(--main-color-rgb,0,123,255),.15)}.hubcal-dark-bg .hubcal-form-input::placeholder{color:rgba(255,255,255,.5)}.hubcal-form-select{width:100%;padding:10px 14px;border:2px solid var(--hubcal-border-light);border-radius:8px;font-size:.9rem;background:var(--hubcal-bg-white);color:var(--hubcal-text-primary);transition:all .3s ease;outline:0;cursor:pointer}.hubcal-form-select:focus{border-color:var(--hubcal-accent,#007bff);box-shadow:0 0 0 3px rgba(var(--main-color-rgb,0,123,255),.1)}.hubcal-dark-bg .hubcal-form-select{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.15);color:#fff}.hubcal-dark-bg .hubcal-form-select:focus{background:rgba(255,255,255,.08);border-color:var(--hubcal-accent,#007bff)}.hubcal-dark-bg .hubcal-form-select option{background:#2c2c2c;color:#fff}.hubcal-phone-group{display:flex;gap:10px;align-items:stretch}.hubcal-phone-code{flex:0 0 120px;min-width:120px}.hubcal-phone-number{flex:1}.hubcal-form-help{font-size:.8rem;color:var(--hubcal-text-muted);margin-top:6px;display:flex;align-items:center}.hubcal-dark-bg .hubcal-form-help{color:rgba(255,255,255,.6)}.hubcal-form-suggestion{font-size:.8rem;color:var(--hubcal-text-muted);margin:6px 0 0 0;min-height:20px}.hubcal-dark-bg .hubcal-form-suggestion{color:rgba(255,255,255,.6)}.hubcal-checkbox-group{display:flex;align-items:flex-start;gap:10px;padding:12px;background:rgba(var(--main-color-rgb,0,123,255),.05);border:1px solid rgba(var(--main-color-rgb,0,123,255),.1);border-radius:8px;margin:8px 0}.hubcal-dark-bg .hubcal-checkbox-group{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.1)}.hubcal-checkbox{width:18px;height:18px;margin:0;cursor:pointer;accent-color:var(--hubcal-accent,#007bff)}.hubcal-checkbox-label{flex:1;font-size:.9rem;color:var(--hubcal-text-secondary);cursor:pointer;line-height:1.4;margin:0}.hubcal-dark-bg .hubcal-checkbox-label{color:rgba(255,255,255,.8)}.hubcal-terms-link{color:var(--hubcal-accent,#007bff);text-decoration:none;font-weight:600;transition:color .2s ease}.hubcal-terms-link:hover{color:var(--hubcal-accent,#0056b3);text-decoration:underline}.hubcal-dark-bg .hubcal-terms-link{color:#66b3ff}.hubcal-dark-bg .hubcal-terms-link:hover{color:#9cf}.hubcal-recaptcha{display:flex;justify-content:center;margin:12px 0}.hubcal-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 32px;border:none;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease;outline:0;position:relative;overflow:hidden}.hubcal-btn-primary{background:var(--hubcal-accent,#007bff);color:#fff;box-shadow:0 4px 12px rgba(var(--main-color-rgb,0,123,255),.3)}.hubcal-btn-primary:hover{background:var(--hubcal-accent-dark,#0056b3);box-shadow:0 6px 20px rgba(var(--main-color-rgb,0,123,255),.4);transform:translateY(-1px)}.hubcal-btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px rgba(var(--main-color-rgb,0,123,255),.3)}.hubcal-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.hubcal-submit-group{text-align:center;padding-top:8px}.hubcal-submit-group .hubcal-btn{width:100%;max-width:280px}@media (max-width:768px){.hubcal-form{padding:0 12px}.hubcal-form-header{padding:12px 0;margin-bottom:16px}.hubcal-form-title{font-size:1.2rem}.hubcal-phone-group{flex-direction:column;gap:8px}.hubcal-phone-code{flex:none;min-width:auto}.hubcal-form-group{margin-bottom:14px}.hubcal-submit-group .hubcal-btn{width:100%;max-width:none}.hubcal-checkbox-group{gap:8px;padding:10px}}@media (max-width:480px){.hubcal-form{padding:0 10px}.hubcal-form-input,.hubcal-form-select{padding:10px 12px;font-size:16px}.hubcal-btn{padding:12px 20px;font-size:.95rem}.hubcal-checkbox-group{gap:6px;padding:8px}.hubcal-checkbox{width:16px;height:16px;margin-top:2px}.hubcal-form-group{margin-bottom:12px}}.hubcal-confirm-container{padding:2px;max-width:100%}.hubcal-confirm-header{text-align:center;margin-bottom:24px}.hubcal-confirm-icon{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--hubcal-accent,#007bff),var(--hubcal-accent-dark,#0056b3));display:flex;align-items:center;justify-content:center;margin:0 auto 16px auto;box-shadow:0 4px 12px rgba(var(--main-color-rgb,0,123,255),.3)}.hubcal-confirm-icon i{font-size:1.8rem;color:#fff}.hubcal-confirm-title{color:var(--hubcal-text-light);font-size:1.5rem;font-weight:700;margin-bottom:8px}.hubcal-confirm-subtitle{color:var(--hubcal-text-light);font-size:1rem;margin:0;opacity:.8}.dark-theme .hubcal-confirm-title,.hubcal-dark-bg .hubcal-confirm-title,[data-theme=dark] .hubcal-confirm-title{color:var(--hubcal-text-dark)!important}.dark-theme .hubcal-confirm-subtitle,.hubcal-dark-bg .hubcal-confirm-subtitle,[data-theme=dark] .hubcal-confirm-subtitle{color:var(--hubcal-text-dark)!important;opacity:.9}.hubcal-confirm-details{background:var(--hubcal-bg-light);border:1px solid var(--hubcal-border-light);border-radius:12px;overflow:hidden}.hubcal-dark-bg .hubcal-confirm-details{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.1)}.hubcal-confirm-info{padding:20px;border-bottom:1px solid var(--hubcal-border-light)}.hubcal-dark-bg .hubcal-confirm-info{border-bottom-color:rgba(255,255,255,.1)}.hubcal-confirm-info-title{color:var(--hubcal-text-light);font-size:1.1rem;font-weight:600;margin-bottom:16px;display:flex;align-items:center}.dark-theme .hubcal-confirm-info-title,.hubcal-dark-bg .hubcal-confirm-info-title,[data-theme=dark] .hubcal-confirm-info-title{color:var(--hubcal-text-dark)!important}.hubcal-confirm-summary{display:flex;flex-direction:column;gap:12px}.hubcal-summary-item{display:flex;align-items:center;padding:10px 16px;background:rgba(var(--main-color-rgb,0,123,255),.05);border-left:3px solid var(--hubcal-accent,#007bff);border-radius:6px}.hubcal-dark-bg .hubcal-summary-item{background:rgba(255,255,255,.05)}.hubcal-summary-text{color:var(--hubcal-text-light);font-weight:700;font-size:1.1rem;min-height:24px;line-height:1.4;display:block}.dark-theme .hubcal-summary-text,.hubcal-dark-bg .hubcal-summary-text,[data-theme=dark] .hubcal-summary-text{color:var(--hubcal-text-dark)!important}.hubcal-summary-text:not(:empty){color:var(--hubcal-accent,#007bff);background:rgba(var(--main-color-rgb,0,123,255),.08);padding:4px 8px;border-radius:4px;border:1px solid rgba(var(--main-color-rgb,0,123,255),.2)}.hubcal-summary-text:empty::before{content:"No disponible";color:var(--hubcal-text-muted);font-style:italic;opacity:.6;font-weight:400}.hubcal-dark-bg .hubcal-summary-text:empty::before{color:rgba(255,255,255,.4)}.hubcal-missing-data .hubcal-missing-text{color:#dc3545;font-weight:500;font-size:.9rem;display:inline-flex;align-items:center;gap:4px}.hubcal-missing-data .hubcal-missing-text i{font-size:.85rem}.hubcal-confirm-actions{padding:20px;text-align:center}.hubcal-confirm-message{color:var(--hubcal-text-secondary);font-size:.9rem;margin-bottom:20px;padding:12px 16px;background:rgba(40,167,69,.1);border:1px solid rgba(40,167,69,.2);border-radius:8px;display:flex;align-items:center;justify-content:center;text-align:center}.hubcal-dark-bg .hubcal-confirm-message{background:rgba(40,167,69,.15);border-color:rgba(40,167,69,.3);color:rgba(255,255,255,.9)}.hubcal-confirm-buttons{display:flex;justify-content:center}.hubcal-btn-large{padding:14px 32px;font-size:1.1rem;font-weight:700;min-width:200px}.hubcal-btn-large:hover{transform:translateY(-2px)}@media (max-width:768px){.hubcal-confirm-container{padding:2px}.hubcal-confirm-header{margin-bottom:20px}.hubcal-confirm-icon{width:50px;height:50px;margin-bottom:12px}.hubcal-confirm-icon i{font-size:1.5rem}.hubcal-confirm-title{font-size:1.3rem}.hubcal-confirm-subtitle{font-size:.9rem}.hubcal-confirm-actions,.hubcal-confirm-info{padding:16px}.hubcal-summary-item{padding:8px 12px}.hubcal-btn-large{width:100%;min-width:auto;padding:12px 20px;font-size:1rem}}@media (max-width:480px){.hubcal-confirm-container{padding:2px}.hubcal-confirm-summary{gap:8px}.hubcal-summary-item{flex-direction:column;align-items:flex-start;gap:4px;padding:10px}.hubcal-summary-item i{margin-right:0!important;margin-bottom:4px}.hubcal-confirm-message{flex-direction:column;gap:6px;padding:10px 12px;font-size:.85rem}.hubcal-confirm-message i{margin-right:0!important;margin-bottom:4px}}