@import "../typography.css";
@import "../spacing.css";
@import "../colors.css";
@import "./properties.css";
@import "../z-index.css";

.dateselector {
  background-color: inherit;
  display: inline-flex;

  & > div .container {
    border-width: 0;
  }
}

.container,
.container * {
  box-sizing: border-box;
}

.container {
  border-radius: 8px;
  background-color: var(--date-selector-background-color);
  border-color: var(--date-selector-border-color);
  border-style: var(--date-selector-border-style);
  display: inline-flex;
  user-select: var(--date-selector-user-select);
}

.sidebar {
  background-color: var(--date-selector-sidebar-background);
  box-shadow: unset;
  width: var(--date-selector-sidebar-width);
  padding: 12px var(--spacing-small);
  z-index: var(--date-selector-sidebar-z-index);
  border-right: 1px dotted var(--color-squanchy-gray-50);
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.sidebar:before {
  background-color: inherit;
  border-top-left-radius: var(--date-selector-border-radius);
  content: "";
  display: block;
  height: var(--date-selector-sidebar-arrow-size);
  left: var(--date-selector-sidebar-arrow-left);
  position: absolute;
  top: var(--date-selector-sidebar-arrow-top);
  transform: var(--date-selector-sidebar-arrow-transform);
  width: var(--date-selector-sidebar-arrow-size);
}

.aside {
  background-color: var(--date-selector-sidebar-background);
  padding: 0;
}

.aside h2 {
  color: var(--date-selector-sidebar-h2-color);
  font-size: var(--date-selector-sidebar-h2-font-size);
  font-style: var(--date-selector-sidebar-h2-font-style);
  font-weight: var(--date-selector-sidebar-h2-font-weight);
  margin: var(--date-selector-sidebar-h2-margin);
  padding-left: var(--date-selector-sidebar-h2-padding-left);
  text-transform: var(--date-selector-sidebar-h2-text-transform);
}

.aside li,
.aside ol {
  margin: 0;
  padding: 0;
}

.aside li {
  list-style: none;
  height: 40px;
}

.aside li:first-child {
  margin-top: unset;
}

.aside input {
  appearance: none;
  opacity: 0;
  position: absolute;
}

.aside label {
  text-align: left;
  padding-left: var(--spacing-small);
  border-left: var(--date-selector-sidebar-label-border-left);
  border-radius: 6px;
  color: var(--date-selector-sidebar-label-color);
  cursor: pointer;
  display: block;
  font-family: var(--title-font-family);
  font-size: var(--date-selector-sidebar-label-font-size);
  font-weight: var(--date-selector-sidebar-label-font-weight);
  height: 40px;
  line-height: 40px;
  text-transform: var(--date-selector-sidebar-label-text-transform);
  transition: var(--date-selector-sidebar-label-transition);
  width: var(--date-selector-sidebar-label-width);
  will-change: var(--date-selector-sidebar-label-will-change);

  /* TODO: remove this when truncate component is available */
  white-space: nowrap;
}

.aside input:checked ~ label {
  color: var(--color-white);
  font-weight: var(--date-selector-sidebar-input-font-weight);
  background-color: var(--color-picklerick-green-100);
}

.stage {
  display: flex;
  flex: 1;
  flex-direction: column;
  height: 350px;
  justify-content: space-between;
  padding-top: var(--spacing-tiny);
  border-radius: 8px;
}

.actions {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  padding: var(--spacing-medium);
}

.selectedDays {
  color: var(--date-selector-selected-days-color);
  flex: 1;
  font-size: var(--date-selector-selected-days-font-size);
  text-align: start;
}

.actions button {
  font-size: var(--date-selector-font-size);
}

.actions button:active {
  box-shadow: none;
  outline: none;
}

.separator {
  background-color: var(--date-selector-separator);
  display: inline-block;
  height: var(--date-selector-separator-height);
  width: var(--date-selector-separator-width);
}
