// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only

@use '../mixins';
@use '../variables';

.module-SearchInput {
  &__container {
    position: relative;
    flex: 1 0 0;
    margin-inline: 16px;
    margin-bottom: 8px;
  }

  &__icon {
    height: 16px;
    inset-inline-start: 8px;
    pointer-events: none;
    position: absolute;
    top: 6px;
    width: 16px;

    @include mixins.light-theme {
      @include mixins.color-svg(
        '../images/icons/v3/search/search-compact-light.svg',
        variables.$color-gray-45
      );
    }
    @include mixins.dark-theme {
      @include mixins.color-svg(
        '../images/icons/v3/search/search-compact-light.svg',
        variables.$color-gray-25
      );
    }
  }

  &__input {
    @include mixins.font-body-2;
    border: solid 1px transparent;
    border-radius: 8px;
    height: 28px;
    padding-inline: 30px 5px;
    width: 100%;

    @include mixins.light-theme {
      background-color: variables.$color-black-alpha-06;
      color: variables.$color-gray-90;

      &:placeholder {
        color: variables.$color-gray-45;
      }
    }
    @include mixins.dark-theme {
      background-color: variables.$color-white-alpha-12;
      color: variables.$color-gray-05;

      &:placeholder {
        color: variables.$color-gray-25;
      }
    }

    &:focus {
      @include mixins.keyboard-mode {
        border: solid 1px variables.$color-ultramarine;
      }
      outline: none;
    }

    &--with-text {
      padding-inline-end: 30px;
    }
  }

  &__cancel {
    height: 16px;
    position: absolute;
    inset-inline-end: 8px;
    top: 6px;
    width: 16px;

    @include mixins.light-theme {
      @include mixins.color-svg(
        '../images/icons/v3/x/x-compact.svg',
        variables.$color-gray-60
      );
    }
    @include mixins.dark-theme {
      @include mixins.color-svg(
        '../images/icons/v3/x/x-compact.svg',
        variables.$color-gray-25
      );
    }
  }

  &__description {
    margin-block-start: 12px;
    @include mixins.font-subtitle;

    @include mixins.light-theme {
      color: variables.$color-gray-60;
    }
    @include mixins.dark-theme {
      color: variables.$color-gray-05;
    }
  }
}
