/*
 * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
 * This file is licensed to you under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License. You may obtain a copy
 * of the License at https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under
 * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
 * OF ANY KIND, either express or implied. See the License for the specific language
 * governing permissions and limitations under the License.
 */

@reference '@accelint/design-foundation/styles';

@layer components.l1 {
  .queryBuilder {
    @apply outline outline-transparent;
  }

  .ruleGroup {
    @apply gap-s rounded-medium p-s outline-info-bold col-span-full flex flex-col outline;
  }

  .header {
    @apply gap-s flex;
  }

  .body {
    @apply gap-x-s grid;

    @variant empty {
      @apply hidden;
    }

    &.showRuleLines {
      grid-template-columns: 10px minmax(100px, 1fr) min-content;
    }

    &.hideRuleLines {
      grid-template-columns: minmax(100px, 1fr) min-content;
    }
  }

  .combinators {
    @apply my-s;
  }

  .rule {
    @apply gap-xs py-s flex;

    &.horizontal {
      @apply items-center;
      min-height: 50px;
    }

    &.vertical {
      @apply flex-col items-stretch;
    }
  }

  .cloneRule,
  .cloneGroup,
  .lockRule,
  .lockGroup {
    @apply fg-info-bold;

    @variant hover {
      @apply fg-info-hover;
    }
  }

  .fields,
  .value,
  .operators {
    @apply w-full;
  }
}

@layer components.l2 {
  .ruleLines {
    min-height: 46px;
    width: 20px;
  }

  .textInput {
    @apply min-h-xl;
  }

  .fields,
  .operators {
    @variant group-size-small/combobox-field {
      max-width: 250px;
    }
  }

  .value {
    max-width: 250px;
  }
}
