/*
 * Copyright (c) 2016-2025 Broadcom. All Rights Reserved.
 * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
 * This software is released under MIT license.
 * The full license information can be found in LICENSE in the root directory of this project.
 */
@use '../utils/mixins';
@use '@cds/core/tokens/tokens.scss';
@use '../utils/variables/variables.density' as density;

@include mixins.exports('accordion.properties') {
  @include mixins.root-or-host() {
    &,
    [clr-density] {
      --clr-accordion-border-radius: #{density.$clr-base-border-radius-s};
      --clr-accordion-step-title-min-width: #{density.$clr-base-layout-space-4xl};
      --clr-accordion-content-font-size: #{density.$clr-base-typography-font-size-inline};
    }

    &,
    [cds-theme] {
      --clr-accordion-text-color: #{tokens.$cds-alias-object-interaction-color};
      --clr-accordion-text-color-hover: #{tokens.$cds-alias-object-interaction-color-hover};
      --clr-accordion-text-color-active: #{tokens.$cds-alias-object-interaction-color-active};
      --clr-accordion-panel-disabled-color: #{tokens.$cds-alias-object-interaction-color-disabled};

      // @TODO (v18) remove in favor of `clr-accordion-header-open-background-color`
      --clr-accordion-active-background-color: #{tokens.$cds-alias-object-interaction-background-selected};
      --clr-accordion-content-background-color: #{tokens.$cds-alias-object-container-background};
      --clr-accordion-content-color: #{tokens.$cds-alias-typography-color-450};

      --clr-accordion-header-background-color: #{tokens.$cds-alias-object-container-background};
      --clr-accordion-header-disabled-background-color: #{tokens.$cds-alias-object-container-background};
      --clr-accordion-header-hover-background-color: #{tokens.$cds-alias-object-interaction-background-hover};
      --clr-accordion-header-active-background-color: #{tokens.$cds-alias-object-interaction-background-active};
      // @TODO (v18) set to `$cds-alias-object-interaction-background-selected` when `clr-accordion-active-background-color` is removed
      --clr-accordion-header-open-background-color: var(--clr-accordion-active-background-color);
      --clr-accordion-header-open-active-background-color: var(
        --cds-alias-object-interaction-background-selected-active
      );
      --clr-accordion-header-open-hover-background-color: var(--cds-alias-object-interaction-background-selected-hover);

      --clr-accordion-error-color: #{tokens.$cds-alias-status-danger};
      --clr-accordion-complete-color: #{tokens.$cds-alias-status-success};

      --clr-accordion-border-color: #{tokens.$cds-alias-object-border-color};

      --clr-accordion-border-left-color-complete: #{tokens.$cds-alias-status-success};
      --clr-accordion-border-left-color-error: #{tokens.$cds-alias-status-danger};

      --clr-accordion-header-left-indicator: inset #{tokens.$cds-global-space-5} 0 0 #{tokens.$cds-alias-status-neutral-tint};
      --clr-accordion-header-left-current-indicator: inset #{tokens.$cds-global-space-5} 0 0 #{tokens.$cds-alias-object-interaction-background-highlight};
    }
  }
}
