/**
* c-timepicker
*/
@import url('../../styles/variables.css');

.c-timepicker {
  display: inline-block;
  position: relative;
  border-radius: 0.2em;

  & .c-input-wrap {
    width: 12em;
  }

  & input {
    margin: 0;
    width: 100%;
  }

  & .c-timepicker__icon {
    position: absolute;
    right: 0.5em;
    top: 50%;
    transform: translateY(-50%);
    color: color(var(--text-color) l(65%));

    &.disabled {
      cursor: not-allowed;
    }
  }

  & .c-timepicker__hovericon {
    z-index: -1;
    opacity: 0;
  }

  &:hover .c-timepicker__hovericon + .c-timepicker__icon {
    z-index: -1;
    opacity: 0;
  }

  &:hover .c-timepicker__hovericon {
    z-index: 2;
    opacity: 1;
  }
}

.c-timepicker__panel {
  display: flex;
  width: 12em;

  & li {
    list-style: none;
    color: color(var(--text-color));
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin: 0;
    padding: 0 0 0 12px;
    width: 100%;
    height: 2em;
    line-height: 2em;
    text-align: left;
    cursor: pointer;
  }

  & li.disabled {
    color: color(var(--gray) l(95%));
  }

  & li.active {
    font-weight: bold;
    color: color(var(--text-color));
    background: color(var(--gray) l(95%));
  }
}

.c-timerange__panel,
.c-timepicker__wrap {
  display: none;
  background: #fff;
  border: 1px solid #d4d9db;
  overflow: hidden;

  & ul {
    list-style: none;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 0 12em;
    text-align: center;
    margin: 0;
  }

  & .c-timepicker__item {
    flex: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    max-height: 14em;

    &:hover {
      overflow-y: auto;
    }
  }

  & .c-timepicker__item + .c-timepicker__item {
    border-left: 1px solid color(var(--gray) l(85%));
  }
}

.show {
  display: block;
}

.c-timepicker__timerange {
  width: 15em;
  border: 1px solid color(var(--gray) l(85%));
  border-radius: 3px;


  & .c-timerange__wrapper {
    display: flex;

    &.readonly {
      background-color: color(var(--gray) l(97%));
      color: color(var(--gray) l(65%));
      cursor: default;
    }

    &.disabled {
      background-color: color(var(--gray) l(90%));
      color: color(var(--gray) l(75%));
      cursor: not-allowed;
    }

    & input {
      border: 0;
      box-shadow: none;
    }

    & span {
      line-height: 32px;
    }

    &.is-size__lg span {
      line-height: 40px;
      font-size: 16px;
    }

    &.is-size__sm span {
      line-height: 26px;
      font-size: 12px;
    }
  }
}

.c-timerange__panel {
  display: none;
  border-left: 1px solid color(var(--gray) l(85%));

  &.show {
    display: block;
  }

  & .c-timerange__container {
    display: flex;
  }

  & .c-timepicker__wrap {
    display: block;
    border: 0;

    & p {
      width: 100%;
      text-align: center;
    }
  }

  & .c-timepicker__panel {
    border: 1px solid color(var(--gray) l(85%));
    margin: 0.5em;
  }

  & .c-timerange__btns {
    text-align: right;
    margin: 0.5em;
  }
}
