/* ======================================================================== *
 * Copyright 2026 HCL America Inc.                                          *
 * Licensed 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                                  *
 *                                                                          *
 * http://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 CONDITIONS OF ANY KIND, either express or implied. *
 * See the License for the specific language governing permissions and      *
 * limitations under the License.                                           *
 * ======================================================================== */

@use "sass:map";
@use "../../common/palette";
@use "../../common/themeMap.module";

@mixin enchanted-fab-ai-base-styles {
    // Style the exported parts directly on enchanted-fab-ai
    &::part(fab),
    &::part(fab-rtl) {
        background: map.get(themeMap.$enchantedPalette, "BLUE300_DARK");
        color: map.get(themeMap.$enchantedPalette, "HCLSOFTWAREBLUE06");
        border: none;
    }

    &::part(icon) {
        --_icon-instance-color: map.get(themeMap.$enchantedPalette, "HCLSOFTWAREBLUE06");
    }

    &[extended]::part(label),
    &[extended]::part(label-rtl) {
        color: map.get(themeMap.$enchantedPalette, "BLACK87P");
    }

    &::part(fab):hover,
    &::part(fab-rtl):hover {
        background: map.get(themeMap.$enchantedPalette, "BLUE300");
        color: map.get(themeMap.$enchantedPalette, "HCLSOFTWAREBLUE07_DARK");
    }

    &::part(fab):focus,
    &::part(fab-rtl):focus {
        outline: 2px solid map.get(themeMap.$enchantedPalette, "HCLSOFTWAREBLUE07");
        outline-offset: 1px;
        border-radius: 7px;
    }

    &::part(fab):hover:focus,
    &::part(fab-rtl):hover:focus {
        background: map.get(themeMap.$enchantedPalette, "BLUE300");
        outline: 2px solid map.get(themeMap.$enchantedPalette, "HCLSOFTWAREBLUE07");
        outline-offset: 1px;
        border-radius: 7px;
        color: map.get(themeMap.$enchantedPalette, "HCLSOFTWAREBLUE07_DARK");
    }
}