.cup-modal-slider{position:relative;min-height:420px;overflow:hidden}.cup-auth-panel{position:relative;transform:translateX(0);transition:transform 0.3s ease-out;will-change:transform;z-index:1}.cup-forgot-panel{position:absolute;top:0;left:0;right:0;bottom:0;transform:translateX(100%);transition:transform 0.3s ease-out;will-change:transform;z-index:2}.cup-modal-slider.show-forgot .cup-auth-panel{transform:translateX(-100%)}.cup-modal-slider.show-forgot .cup-forgot-panel{transform:translateX(0)}.cup-modal input:focus,.cup-modal select:focus,.cup-modal textarea:focus{z-index:1}.cup-modal-tab.active{background-color:var(--card);color:var(--primary);box-shadow:0 1px 2px 0 rgb(0 0 0 / .05)}.cup-modal-tab:not(.active){color:var(--muted-foreground)}.cup-modal-tab:not(.active):hover{color:var(--foreground)}.cup-modal-backdrop{transition:opacity 0.3s ease-out}.cup-modal-content{transition:transform 0.3s ease-out,opacity 0.3s ease-out}.cup-modal.hidden{display:none!important}@keyframes cup-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.cup-button-loading.animate-spin{animation:cup-spin 1s linear infinite}@media (max-width:640px){.cup-modal-slider{min-height:auto}.cup-modal-content{margin:1rem;max-height:calc(100vh - 2rem);overflow-y:auto}}.cup-modal-content::-webkit-scrollbar{width:6px}.cup-modal-content::-webkit-scrollbar-track{background:#fff0}.cup-modal-content::-webkit-scrollbar-thumb{background-color:var(--muted-foreground) / .3;border-radius:3px}.cup-modal-content::-webkit-scrollbar-thumb:hover{background-color:var(--muted-foreground) / .5}.cup-datepicker-wrapper{position:relative;display:flex;width:100%}.cup-datepicker-wrapper .cup-date-field{padding-right:3rem}.cup-datepicker-toggle{position:absolute;right:.25rem;top:50%;transform:translateY(-50%);height:2rem;width:2rem;display:flex;align-items:center;justify-content:center;color:var(--muted-foreground);border-radius:.375rem;transition:all 0.2s ease}.cup-datepicker-toggle:hover{color:var(--primary);background-color:var(--accent)}.cup-datepicker-wrapper:focus-within .cup-datepicker-toggle{color:var(--primary)}.cup-datepicker-toggle svg{transition:transform 0.2s ease}.cup-datepicker-toggle:hover svg{transform:scale(1.1)}.cup-datepicker-wrapper.active .cup-datepicker-toggle{color:var(--primary);background-color:var(--accent)}.flatpickr-calendar{background:var(--card);border:1px solid var(--border);border-radius:.75rem;box-shadow:0 10px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1);font-family:inherit}.flatpickr-months{background:var(--muted);border-radius:.75rem .75rem 0 0;padding:.5rem 0}.flatpickr-months .flatpickr-month{color:var(--foreground)}.flatpickr-current-month{font-weight:600}.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-current-month input.cur-year{color:var(--foreground);font-weight:600}.flatpickr-weekdays{background:#fff0}.flatpickr-weekday{color:var(--muted-foreground);font-weight:500;font-size:.75rem}.flatpickr-day{color:var(--foreground);border-radius:.375rem;transition:all 0.15s ease}.flatpickr-day:hover{background:var(--accent);border-color:var(--accent)}.flatpickr-day.today{border-color:var(--primary);color:var(--primary);font-weight:600}.flatpickr-day.today:hover{background:var(--primary);color:var(--primary-foreground)}.flatpickr-day.selected,.flatpickr-day.selected:hover{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);font-weight:600}.flatpickr-day.disabled,.flatpickr-day.disabled:hover{color:var(--muted-foreground);opacity:.5}.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color:var(--muted-foreground);opacity:.6}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{color:var(--foreground);fill:var(--foreground);transition:all 0.15s ease;border-radius:.375rem;padding:.25rem}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{background:var(--accent);color:var(--primary);fill:var(--primary)}.dark .flatpickr-calendar{background:var(--card);border-color:var(--border)}.dark .flatpickr-months{background:var(--muted)}.dark .flatpickr-day{color:var(--foreground)}.dark .flatpickr-day:hover{background:var(--accent);border-color:var(--accent)}