@import '../../scss/styles';

@layer payload-default {
  .search-bar {
    --icon-width: 40px;
    --search-bg: var(--theme-elevation-50);

    display: grid;
    grid-template-columns: auto 1fr;
    width: 100%;
    background-color: var(--search-bg);
    border-radius: var(--style-radius-m);
    position: relative;
    min-height: 46px;
    isolation: isolate;

    &:has(.search-bar__actions) {
      grid-template-columns: auto 1fr auto;
    }

    &:has(.popup--active) {
      z-index: 1;
    }

    .icon--search {
      grid-column: 1/2;
      grid-row: 1/2;
      z-index: 1;
      align-self: center;
      justify-self: center;
      pointer-events: none;
      width: 40px;
    }

    .search-filter {
      grid-column: 1/3;
      grid-row: 1/2;
      background-color: transparent;
      border-radius: inherit;
      input {
        height: 100%;
        padding-bottom: calc(var(--base) * 0.5);
        padding-top: calc(var(--base) * 0.5);
        padding-inline-start: var(--icon-width);
        padding-inline-end: var(--base);
        background-color: transparent;
      }
    }

    &__actions {
      display: flex;
      align-items: center;
      gap: calc(var(--base) / 4);
      padding: calc(var(--base) * 0.5);
      grid-column: 3/4;
    }

    @include small-break {
      min-height: 40px;
      background-color: transparent;

      &:has(.search-bar__actions) {
        row-gap: calc(var(--base) / 2);
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto;
      }

      .search-filter {
        background-color: var(--search-bg);
      }

      &__actions {
        grid-row: 2/3;
        grid-column: 1/3;
        display: flex;
        align-items: center;
        gap: calc(var(--base) / 4);
        padding: 0;
      }
    }
  }
}
