.calendar{display:inline-flex;position:relative;width:100%}.calendar__input-wrapper{cursor:pointer;position:relative;width:100%}.calendar__input{background-color:var(--calendar-input-background-default,var(--calendar-input-background-default));border:1px solid var(--calendar-input-border-color-default,var(--calendar-input-border-color-default));border-radius:var(--calendar-input-radius,var(--calendar-input-radius));color:var(--calendar-input-text-default,var(--calendar-input-text-default));cursor:pointer;font-size:var(--calendar-input-fontSize-md,var(--calendar-input-fontSize-md));height:var(--calendar-input-height-md,var(--calendar-input-height-md));padding:0 calc(var(--calendar-input-padding-x, var(--calendar-input-padding-x)) + 24px) 0 var(--calendar-input-padding-x,var(--calendar-input-padding-x));transition:border-color .15s ease;width:100%}.calendar__input::-moz-placeholder{color:var(--calendar-input-text-placeholder,var(--calendar-input-text-placeholder))}.calendar__input::placeholder{color:var(--calendar-input-text-placeholder,var(--calendar-input-text-placeholder))}.calendar__input:hover:not(:disabled),.calendar__input[data-state~=hover]:not(:disabled){border-color:var(--calendar-input-border-color-hover,var(--calendar-input-border-color-hover))}.calendar__input:focus,.calendar__input[data-state~=focus]{border-color:var(--calendar-input-border-color-focus,var(--calendar-input-border-color-focus));outline:var(--calendar-focus-ringWidth,var(--calendar-focus-ringWidth)) solid var(--calendar-focus-ringColor,var(--calendar-focus-ringColor));outline-offset:var(--calendar-focus-ringOffset,var(--calendar-focus-ringOffset))}.calendar__input:disabled{background-color:var(--calendar-input-background-disabled,var(--calendar-input-background-disabled));border-color:var(--calendar-input-border-color-disabled,var(--calendar-input-border-color-disabled));color:var(--calendar-input-text-disabled,var(--calendar-input-text-disabled));cursor:not-allowed}.calendar__input-icon{align-items:center;color:var(--calendar-input-text-placeholder,var(--calendar-input-text-placeholder));display:flex;justify-content:center;pointer-events:none;position:absolute;right:var(--calendar-input-padding-x,var(--calendar-input-padding-x));top:50%;transform:translateY(-50%)}.calendar__panel{background-color:var(--calendar-background,var(--calendar-background));border:var(--calendar-border-width,var(--calendar-border-width)) solid var(--calendar-border-color,var(--calendar-border-color));border-radius:var(--calendar-radius,var(--calendar-radius));box-shadow:var(--calendar-shadow,var(--calendar-shadow));padding:var(--calendar-padding,var(--calendar-padding));width:var(--calendar-width,var(--calendar-width))}.calendar__panel--mode-inline{box-shadow:none;position:relative}.calendar__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--calendar-header-gap,var(--calendar-header-gap));padding:var(--calendar-header-padding,var(--calendar-header-padding))}.calendar__title{flex:1;text-align:center}.calendar__title-btn{background:transparent;border:none;border-radius:var(--calendar-nav-radius,var(--calendar-nav-radius));color:var(--calendar-header-text,var(--calendar-header-text));cursor:pointer;font-size:var(--calendar-header-fontSize,var(--calendar-header-fontSize));font-weight:var(--calendar-header-fontWeight,var(--calendar-header-fontWeight));padding:4px 8px;transition:background-color .15s ease}.calendar__title-btn:hover,.calendar__title-btn[data-state~=hover]{background-color:var(--calendar-nav-background-hover,var(--calendar-nav-background-hover))}.calendar__nav{align-items:center;background-color:var(--calendar-nav-background-default,var(--calendar-nav-background-default));border:none;border-radius:var(--calendar-nav-radius,var(--calendar-nav-radius));color:var(--calendar-nav-color-default,var(--calendar-nav-color-default));cursor:pointer;display:flex;height:var(--calendar-nav-size,var(--calendar-nav-size));justify-content:center;padding:0;transition:all .15s ease;width:var(--calendar-nav-size,var(--calendar-nav-size))}.calendar__nav:hover,.calendar__nav[data-state~=hover]{background-color:var(--calendar-nav-background-hover,var(--calendar-nav-background-hover));color:var(--calendar-nav-color-hover,var(--calendar-nav-color-hover))}.calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.calendar__weekday{align-items:center;color:var(--calendar-weekday-text,var(--calendar-weekday-text));display:flex;font-size:var(--calendar-weekday-fontSize,var(--calendar-weekday-fontSize));font-weight:var(--calendar-weekday-fontWeight,var(--calendar-weekday-fontWeight));justify-content:center;padding:var(--calendar-weekday-padding,var(--calendar-weekday-padding));text-transform:uppercase}.calendar__days{display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.calendar__day{align-items:center;aspect-ratio:1/1;background-color:var(--calendar-day-background-default,var(--calendar-day-background-default));border:none;border-radius:var(--calendar-day-radius,var(--calendar-day-radius));color:var(--calendar-day-text-default,var(--calendar-day-text-default));cursor:pointer;display:flex;font-size:var(--calendar-day-fontSize,var(--calendar-day-fontSize));justify-content:center;min-width:0;padding:0;transition:all .15s ease;width:100%}.calendar__day:hover:not(:disabled),.calendar__day[data-state~=hover]:not(:disabled){background-color:var(--calendar-day-background-hover,var(--calendar-day-background-hover))}.calendar__day:disabled{cursor:default}.calendar__day--other-month{color:var(--calendar-day-text-muted,var(--calendar-day-text-muted));opacity:.4}.calendar__day--today{background-color:var(--calendar-day-background-today,var(--calendar-day-background-today));box-shadow:inset 0 0 0 1px currentColor;color:var(--calendar-day-text-today,var(--calendar-day-text-today));font-weight:600}.calendar__day--state-selected{color:var(--calendar-day-text-selected,var(--calendar-day-text-selected))}.calendar__day--state-selected,.calendar__day--state-selected:hover,.calendar__day--state-selected[data-state~=hover]{background-color:var(--calendar-day-background-selected,var(--calendar-day-background-selected))}.calendar__day--in-range{background-color:var(--calendar-day-background-range,var(--calendar-day-background-range));border-radius:0}.calendar__months{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.calendar__month{align-items:center;background:transparent;border:none;border-radius:var(--calendar-day-radius,var(--calendar-day-radius));color:var(--calendar-day-text-default,var(--calendar-day-text-default));cursor:pointer;display:flex;font-size:14px;justify-content:center;padding:12px 8px;transition:background-color .15s ease}.calendar__month:hover,.calendar__month[data-state~=hover]{background-color:var(--calendar-day-background-hover,var(--calendar-day-background-hover))}.calendar__month--state-selected{background-color:var(--calendar-day-background-selected,var(--calendar-day-background-selected));color:var(--calendar-day-text-selected,var(--calendar-day-text-selected))}.calendar__years{display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.calendar__year{align-items:center;background:transparent;border:none;border-radius:var(--calendar-day-radius,var(--calendar-day-radius));color:var(--calendar-day-text-default,var(--calendar-day-text-default));cursor:pointer;display:flex;font-size:14px;justify-content:center;padding:12px 8px;transition:background-color .15s ease}.calendar__year:hover,.calendar__year[data-state~=hover]{background-color:var(--calendar-day-background-hover,var(--calendar-day-background-hover))}.calendar__year--state-selected{background-color:var(--calendar-day-background-selected,var(--calendar-day-background-selected));color:var(--calendar-day-text-selected,var(--calendar-day-text-selected))}.calendar__footer{border-top:1px solid var(--calendar-border-color,var(--calendar-border-color));display:flex;justify-content:center;margin-top:var(--calendar-header-gap,var(--calendar-header-gap));padding-top:var(--calendar-header-gap,var(--calendar-header-gap))}.calendar__today-btn{background:transparent;border:none;border-radius:var(--calendar-nav-radius,var(--calendar-nav-radius));color:var(--calendar-day-text-today,var(--calendar-day-text-today));cursor:pointer;font-size:14px;font-weight:500;padding:6px 12px;transition:background-color .15s ease}.calendar__today-btn:hover,.calendar__today-btn[data-state~=hover]{background-color:var(--calendar-day-background-hover,var(--calendar-day-background-hover))}.calendar--state-disabled .calendar__input-wrapper{cursor:not-allowed}.calendar--state-disabled .calendar__input-icon{opacity:.5}.calendar--state-invalid .calendar__input,.calendar--state-invalid .calendar__input:focus,.calendar--state-invalid .calendar__input[data-state~=focus]{border-color:var(--calendar-input-border-color-error,var(--calendar-input-border-color-error))}.calendar--size-sm .calendar__input{font-size:var(--calendar-input-fontSize-sm,var(--calendar-input-fontSize-sm));height:var(--calendar-input-height-sm,var(--calendar-input-height-sm))}.calendar--size-md .calendar__input{font-size:var(--calendar-input-fontSize-md,var(--calendar-input-fontSize-md));height:var(--calendar-input-height-md,var(--calendar-input-height-md))}.calendar--size-lg .calendar__input{font-size:var(--calendar-input-fontSize-lg,var(--calendar-input-fontSize-lg));height:var(--calendar-input-height-lg,var(--calendar-input-height-lg))}
