// FIXME: should be a component <FilterContainer>
// used in
// - gantt-component.vue
// - Kanban.vue
// - List.vue
// - Table.vue

$filter-container-top-default: -59px;
$filter-container-top-link-share-gantt: -133px;
$filter-container-top-link-share-list: -47px;

.filter-container {
  text-align: right;
  width: 100%;
  min-width: 400px;
  max-width: 180px;
  position: absolute;
  right: 1.5rem;
  margin-top: $filter-container-top-default;
  z-index: 4;

  .items {
    display: flex;
    justify-content: flex-end;

    .button:not(:last-of-type) {
      margin-right: .5rem;
    }
  }

  .button {
    height: $switch-view-height;
  }

  .card {
    text-align: left;
  }

  .fancycheckbox {
    display: block;
  }

  .search {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-right: .5rem;

    .field {
      transition: width $transition;
      width: 100%;

      &.hidden {
        width: 0;
        height: 0;
        margin: 0;
        overflow: hidden;
      }

      .button {
        height: 100%;
      }
    }
  }

  .filters input {
    font-size: .9rem;
  }

  @media screen and (max-width: $tablet) {
    position: static;
    margin: 0 0 1rem 0 !important;
    max-width: 100%;
    min-width: auto;

    .items {
      justify-content: center;
    }

    .search {
      width: 100%;

      .control:first-child {
        width: 100%;
      }
    }
  }
}


.link-share-container .gantt-chart-container .filter-container,
.gantt-chart-container .filter-container {
  right: 0;
  margin-top: calc(#{$filter-container-top-link-share-gantt - 2} - 7rem);
}

.link-share-container .gantt-chart-container .filter-container {
  margin-top: calc(#{$filter-container-top-link-share-gantt} - 5rem);
}

.link-share-container .list-view .filter-container {
  margin-top: $filter-container-top-link-share-list - 10px;
}

.link-share-container.list\.table-view,
.link-share-container.list\.list-view {
  .filter-container {
    right: 9rem;
    margin-top: $filter-container-top-default;
  }
}