/*! PLF v0.1.0 | MIT */
/* extension: date-only calendar */
[data-plf-root] .calendar {
  box-sizing: border-box;
  inline-size: var(--plf-calendar-width, calc(20 * var(--plf-rem)));
  max-inline-size: 100%;
  color: var(--plf-calendar-color, var(--plf-color-text));
  font: var(--plf-control-font-size)/var(--plf-line-height) var(--plf-font-family);
}
[data-plf-root] .calendar:where([data-plf-month-count="2"]) {
  inline-size: var(--plf-calendar-width, calc(40 * var(--plf-rem)));
}
[data-plf-root] :is(.calendar-view, [data-plf-part~="calendar-view"]) {
  box-sizing: border-box;
  margin-block-start: var(--plf-space-3);
  padding: var(--plf-calendar-padding, var(--plf-space-3));
  border: var(--plf-border-width) solid var(--plf-calendar-border, var(--plf-color-border-subtle));
  border-radius: var(--plf-calendar-radius, var(--plf-radius-lg));
  background: var(--plf-calendar-bg, transparent);
}
[data-plf-root] :is(.calendar-header, [data-plf-part~="calendar-header"]), [data-plf-root] :is(.calendar-navigation, [data-plf-part~="calendar-navigation"]), [data-plf-root] :is(.calendar-footer, [data-plf-part~="calendar-footer"]) {
  display: flex;
  align-items: center;
  gap: var(--plf-space-2);
}
[data-plf-root] :is(.calendar-header, [data-plf-part~="calendar-header"]) {
  flex-wrap: wrap;
  justify-content: space-between;
}
[data-plf-root] :is(.calendar-months, [data-plf-part~="calendar-months"]) {
  display: flex;
  gap: var(--plf-space-4);
}
[data-plf-root] :is(.calendar-month-view, [data-plf-part~="calendar-month-view"]) {
  min-width: 0px;
  flex: 1;
}
[data-plf-root] :where(.calendar[data-plf-month-count="2"]) :is(.calendar-header, [data-plf-part~="calendar-header"]) {
  display: grid;
  grid-template-columns: var(--plf-control-height-sm) minmax(0, 1fr) var(--plf-control-height-sm);
  gap: var(--plf-space-1);
}
[data-plf-root] :is(.calendar-caption, [data-plf-part~="calendar-caption"]) {
  min-width: 0px;
  grid-column: 2;
}
[data-plf-root] :is(.calendar-previous, [data-plf-part~="calendar-previous"]) {
  grid-column: 1;
  grid-row: 1;
}
[data-plf-root] :is(.calendar-next, [data-plf-part~="calendar-next"]) {
  grid-column: 3;
  grid-row: 1;
}
[data-plf-root] :is(.calendar-previous, [data-plf-part~="calendar-previous"]), [data-plf-root] :is(.calendar-next, [data-plf-part~="calendar-next"]) {
  inline-size: var(--plf-control-height-sm);
  padding-inline: 0;
}
[data-plf-root] :is(.calendar-jump, [data-plf-part~="calendar-jump"]) {
  display: flex;
  align-items: center;
  gap: var(--plf-space-2);
  margin-block-end: var(--plf-space-2);
}
[data-plf-root] :is(.calendar-navigation, [data-plf-part~="calendar-navigation"]) {
  min-width: 0px;
  flex: 1;
  gap: var(--plf-space-1);
}
[data-plf-root] :is(.calendar-month-picker, [data-plf-part~="calendar-month-picker"]) {
  --_plf-input-height: var(--plf-control-height-sm);
  --_plf-input-padding-block: var(--plf-space-1);
  --_plf-input-padding-inline: calc(1.5 * var(--plf-space-1));
  --_plf-input-icon-size: 1em;
  min-width: 0px;
  flex: 1;
}
[data-plf-root] :is(.calendar-month-picker, [data-plf-part~="calendar-month-picker"]) :is(.select-trigger, [data-plf-part~="select-trigger"]) {
  gap: var(--plf-space-1);
}
[data-plf-root] :is(.calendar-month-picker, [data-plf-part~="calendar-month-picker"]) :is(.select-popup, [data-plf-part~="select-popup"]) {
  inline-size: calc(10 * var(--plf-rem));
  min-inline-size: min(var(--_plf-anchor-trigger-width, 0px), var(--_plf-anchor-width, calc(100vw - 16px)));
}
[data-plf-root] :is(.calendar-year, [data-plf-part~="calendar-year"]) {
  min-width: 0px;
  inline-size: calc(4.5 * var(--plf-rem));
}
[data-plf-root] :is(.calendar-grid, [data-plf-part~="calendar-grid"]) {
  inline-size: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}
[data-plf-root] :is(.calendar-weekday, [data-plf-part~="calendar-weekday"]) {
  text-align: center;
  padding: var(--plf-space-2) 0;
  color: var(--plf-color-text-muted);
  font-size: var(--plf-font-size-sm);
  font-weight: var(--plf-font-weight-normal);
}
[data-plf-root] :is(.calendar-cell, [data-plf-part~="calendar-cell"]) {
  text-align: center;
  padding: var(--plf-space-1) 0;
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]) {
  box-sizing: border-box;
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  min-block-size: var(--plf-calendar-day-height, var(--plf-control-height-md));
  margin: 0;
  padding: var(--plf-space-1);
  border: var(--plf-border-width) solid transparent;
  border-radius: var(--plf-radius-md);
  background: transparent;
  box-shadow: none;
  color: inherit;
  font: inherit;
  letter-spacing: normal;
  text-transform: none;
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where(:not([aria-disabled="true"])):where(:hover) {
  background: var(--plf-calendar-hover-bg, var(--plf-color-surface-muted));
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where([data-plf-calendar-outside="true"]) {
  color: var(--plf-color-text-muted);
}
[data-plf-root] :is(.calendar-outside, [data-plf-part~="calendar-outside"]) {
  pointer-events: none;
  cursor: default;
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where([aria-current="date"]) {
  border-color: var(--plf-color-input);
  font-weight: var(--plf-font-weight-semibold);
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where([data-plf-calendar-range="middle"]) {
  border-radius: 0;
  background: var(--plf-calendar-range-bg, var(--plf-color-primary-subtle));
  color: var(--plf-calendar-color, var(--plf-color-text));
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where([data-plf-calendar-selected="true"]:not([data-plf-calendar-range="middle"]), [data-plf-calendar-range="start"], [data-plf-calendar-range="end"]) {
  border-color: var(--plf-calendar-selected-bg, var(--plf-color-primary));
  background: var(--plf-calendar-selected-bg, var(--plf-color-primary));
  color: var(--plf-calendar-selected-color, var(--plf-color-on-primary));
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where([aria-disabled="true"]) {
  cursor: not-allowed;
  opacity: var(--plf-calendar-disabled-opacity, 0.5);
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):focus {
  outline: none;
}
[data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):focus-visible {
  position: relative;
  outline: var(--plf-focus-width) solid var(--plf-focus-color);
  outline-offset: var(--plf-focus-offset);
}
[data-plf-root] :is(.calendar-footer, [data-plf-part~="calendar-footer"]) {
  justify-content: space-between;
  margin-block-start: var(--plf-space-3);
}
[data-plf-root] :is(.calendar-status, [data-plf-part~="calendar-status"]) {
  overflow-wrap: anywhere;
  margin: var(--plf-space-2) 0 0;
  color: var(--plf-color-text-muted);
  font-size: var(--plf-font-size-sm);
}
[data-plf-root] :is(.calendar-view, [data-plf-part~="calendar-view"]):where([hidden]), [data-plf-root] :is(.calendar-month-view, [data-plf-part~="calendar-month-view"]):where([hidden]), [data-plf-root] :is(.calendar-jump, [data-plf-part~="calendar-jump"]):where([hidden]) {
  display: none !important;
}
@media (forced-colors: active) {
  [data-plf-root] :is(.calendar-day, [data-plf-part~="calendar-day"]):where([data-plf-calendar-selected="true"]:not([data-plf-calendar-range="middle"]), [data-plf-calendar-range="start"], [data-plf-calendar-range="end"]) {
    border-color: Highlight;
  }
}
[data-plf-root] :is(.calendar-chevron, [data-plf-part~="calendar-chevron"]) {
  inline-size: var(--plf-control-icon-size);
  block-size: var(--plf-control-icon-size);
}
[data-plf-root] :where(.calendar-previous, [data-plf-part~="calendar-previous"]) > :is(.calendar-chevron, [data-plf-part~="calendar-chevron"]) {
  --_plf-icon: var(--_plf-icon-chevron-left);
}
[data-plf-root] :where(.calendar-next, [data-plf-part~="calendar-next"]) > :is(.calendar-chevron, [data-plf-part~="calendar-chevron"]) {
  --_plf-icon: var(--_plf-icon-chevron-right);
}
[data-plf-root] :is(.calendar-chevron, [data-plf-part~="calendar-chevron"]):where(:dir(rtl)) {
  transform: rotate(180deg);
}
