#btn-next[data-astro-cid-so7jxkal].btn-loading{color:transparent;pointer-events:none}#btn-next[data-astro-cid-so7jxkal].btn-loading:after{content:"";position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:btn-next-spin .6s linear infinite}@keyframes btn-next-spin{to{transform:rotate(360deg)}}.calendar-container{position:relative;width:100%}.calendar-input{position:relative;cursor:pointer;padding-right:2.5rem;user-select:none;-webkit-user-select:none}.calendar-input:after{content:"";position:absolute;right:14px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #6b7280;transition:transform .2s ease;pointer-events:none}.calendar-input.open:after{transform:translateY(-50%) rotate(180deg)}.calendar-popup{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 20px 40px -8px #00000026,0 8px 16px -4px #00000014;z-index:99999;opacity:0;transform:translateY(-8px) scale(.98);pointer-events:none;transition:opacity .15s ease,transform .15s ease;overflow:hidden;max-height:calc(100svh - 300px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.calendar-popup.open{opacity:1;transform:translateY(0) scale(1);pointer-events:none}.calendar-popup.open button,.calendar-popup.open select{pointer-events:auto}.calendar-header{display:flex;align-items:center;padding:14px 12px 12px;border-bottom:1px solid #f3f4f6;gap:8px}.calendar-selects{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.calendar-month-select,.calendar-year-select{flex:1;min-width:0;padding:8px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb;color:#111827;font-size:14px;font-weight:600;cursor:pointer;outline:none;transition:all .15s ease;-webkit-appearance:none;appearance:none;text-align:center}.calendar-month-select:hover,.calendar-year-select:hover{background:#f3f4f6;border-color:#d1d5db}.calendar-month-select:focus,.calendar-year-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}.calendar-nav-btn{width:44px;height:44px;min-width:44px;border:1px solid #e5e7eb;background:#f9fafb;border-radius:10px;color:#374151;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s ease;flex-shrink:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.calendar-nav-btn:hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.calendar-nav-btn:active{background:#dbeafe;transform:scale(.93)}.calendar-grid{padding:12px 12px 16px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.calendar-weekday{text-align:center;font-size:11px;font-weight:700;color:#9ca3af;padding:4px 0 6px;letter-spacing:.05em;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-day{width:100%;min-height:48px;border:none;background:transparent;border-radius:10px;color:#374151;font-size:15px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s ease,transform .1s ease,color .1s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation;pointer-events:auto}.calendar-day:hover:not(.disabled){background:#eff6ff;color:#2563eb}.calendar-day:active:not(.disabled){transform:scale(.88);background:#dbeafe}.calendar-day.today:not(.selected){background:#dbeafe;color:#1d4ed8;font-weight:700;box-shadow:inset 0 0 0 1.5px #93c5fd}.calendar-day.selected{background:#2563eb!important;color:#fff!important;font-weight:700;border-radius:12px;box-shadow:0 3px 10px #2563eb73;transform:scale(1.05)}.calendar-day.selected:hover{background:#1d4ed8!important}.calendar-day.disabled{color:#d1d5db;cursor:not-allowed;opacity:.45}.calendar-day.disabled:hover{background:transparent;color:#d1d5db;transform:none}.calendar-day.other-month{color:#d1d5db;opacity:.5}#session-time{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:2.5rem}
