/** HEADINGS **/
/** LABELS **/
/** SPANS **/
/** PARAGRAPHS **/
/** CODE/CONSOLE **/
@property --rotation {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}
@keyframes rotate-border {
  to {
    --rotation: 360deg;
  }
}
:host {
  /**
   * @prop --calendar-background-color: The calendar background color.
   * @prop --calendar-width: The calendar container width.
   * @prop --calendar-horizontal-padding: The calendar container horizontal padding.
   * @prop --calendar-vertical-padding: The calendar container vertical padding.
   * @prop --calendar-month-title-text-color: The calendar month text color.
   * @prop --calendar-month-weekday-text-color: The calendar week day text color.
   */
  --calendar-width: 196px;
  --calendar-horizontal-padding: 0px;
  --calendar-vertical-padding: 0px;
  --calendar-background-color: var(--kv-neutral-7, #2a2a2a);
  --calendar-month-title-text-color: var(--kv-neutral-2, #e5e5e5);
  --calendar-month-weekday-text-color: var(--kv-neutral-4, #bebebe);
}

.calendar {
  padding: var(--calendar-vertical-padding) var(--calendar-horizontal-padding);
  background-color: var(--calendar-background-color);
  border-radius: 4px;
  width: var(--calendar-width);
  box-sizing: border-box;
}
.calendar__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--kv-spacing-2x, 8px);
}
.calendar__header .month {
  font-family: var(--kv-primary-font, "proxima-nova", sans-serif, "Arial");
  font-size: 14px;
  font-weight: 400;
  font-stretch: normal;
  font-style: normal;
  line-height: 21px;
  letter-spacing: normal;
  text-transform: none;
  color: var(--calendar-month-title-text-color);
  user-select: none;
}
.calendar__header .navigator {
  min-width: 16px;
  cursor: pointer;
}
.calendar__header .navigator--disabled {
  cursor: not-allowed;
}
.calendar__header .navigator--disabled kv-icon {
  --icon-color: var(--kv-neutral-5, #707070);
}
.calendar__body .calendar-month {
  display: grid;
  grid-template-columns: repeat(auto-fit, calc((var(--calendar-width) - var(--calendar-horizontal-padding) * 2) / 7 * 7));
}
.calendar__body .calendar-month__weekdays {
  display: flex;
  align-items: center;
  justify-content: space-between;
  user-select: none;
  margin-bottom: var(--kv-spacing, 4px);
}
.calendar__body .calendar-month__weekdays .weekday {
  font-family: var(--kv-primary-font, "proxima-nova", sans-serif, "Arial");
  font-size: 12px;
  font-weight: 400;
  font-stretch: normal;
  font-style: normal;
  line-height: 18px;
  letter-spacing: normal;
  text-transform: none;
  width: calc((var(--calendar-width) - var(--calendar-horizontal-padding) * 2) / 7);
  color: var(--calendar-month-weekday-text-color);
  text-align: center;
}
.calendar__body .calendar-month__days {
  display: grid;
  grid-template-columns: repeat(auto-fit, calc((var(--calendar-width) - var(--calendar-horizontal-padding) * 2) / 7));
}