

:root {
    --button-inverted-accent-base-bg-color: var(--color-light-accent-primary-inverted);
    --button-inverted-accent-hover-bg-color: var(--color-light-accent-primary-inverted-hover);
    --button-inverted-accent-active-bg-color: var(--color-light-accent-primary-inverted-press);
    --button-inverted-accent-disabled-bg-color: var(--color-light-neutral-translucent-100-inverted);
    --button-inverted-accent-disabled-color: var(--color-light-text-tertiary-inverted);
    --button-inverted-accent-color: var(--color-static-text-primary-inverted);
    --button-inverted-secondary-base-bg-color: var(--color-light-neutral-translucent-300-inverted);
    --button-inverted-secondary-base-border-color: transparent;
    --button-inverted-secondary-disabled-border-color: transparent;
    --button-inverted-secondary-color: var(--color-light-text-primary-inverted);
    --button-inverted-secondary-hint-color: var(--color-light-text-secondary-inverted);
    --button-inverted-outlined-base-bg-color: var(--color-light-transparent-default);
    --button-inverted-outlined-hover-bg-color: var(
        --color-light-transparent-default-inverted-hover
    );
    --button-inverted-outlined-active-bg-color: var(
        --color-light-transparent-default-inverted-press
    );
    --button-inverted-outlined-hover-border-color: var(
        --color-light-neutral-translucent-1300-inverted
    );
    --button-inverted-outlined-disabled-bg-color: var(--color-light-transparent-default);
    --button-inverted-outlined-base-border-color: var(
        --color-light-neutral-translucent-1300-inverted
    );
    --button-inverted-outlined-color: var(--color-light-text-primary-inverted);
    --button-inverted-outlined-hint-color: var(--color-light-text-secondary-inverted);
    --button-inverted-text-base-color: var(--color-light-text-primary-inverted);
    --button-inverted-text-base-hint-color: var(--color-light-text-secondary-inverted);
    --button-inverted-text-hover-color: var(--color-light-text-primary-inverted-hover);
    --button-inverted-transparent-base-color: var(--color-light-text-primary-inverted);
    --button-inverted-transparent-base-hint-color: var(--color-light-text-secondary-inverted);
    --button-inverted-transparent-hover-bg-color: var(
        --color-light-transparent-default-inverted-hover
    );
    --button-inverted-transparent-active-bg-color: var(
        --color-light-transparent-default-inverted-press
    );
    --button-spinner-inverted-static-color: var(--color-static-neutral-translucent-1300-inverted);
    --button-spinner-inverted-color: var(--color-light-neutral-translucent-1300-inverted);
}

.accent {
    color: var(--button-inverted-accent-color);
    background-color: var(--button-inverted-accent-base-bg-color);
    border: 1px solid transparent;
}

@media (hover: hover) {
        .accent:hover {
            background-color: var(--button-inverted-accent-hover-bg-color);
        }
    }

.accent:active {
        background-color: var(--button-inverted-accent-active-bg-color);
    }

.accent > .loader {
        color: var(--button-spinner-inverted-static-color);
    }

.primary {
    border: 1px solid transparent;
}

.secondary {
    color: var(--button-inverted-secondary-color);
    border: 1px solid var(--button-inverted-secondary-base-border-color);
}

.secondary > .loader {
        color: var(--button-spinner-inverted-color);
    }

.secondary:not([disabled]) .hint {
        color: var(--button-inverted-secondary-hint-color);
    }

.outlined {
    color: var(--button-inverted-outlined-color);
    background-color: var(--button-inverted-outlined-base-bg-color);
    border: 1px solid var(--button-inverted-outlined-base-border-color);
}

@media (hover: hover) {
        .outlined:hover {
            background-color: var(--button-inverted-outlined-hover-bg-color);
            border-color: var(--button-inverted-outlined-hover-border-color);
        }
    }

.outlined:active {
        background-color: var(--button-inverted-outlined-active-bg-color);
    }

.outlined > .loader {
        color: var(--button-spinner-inverted-color);
    }

.outlined:not([disabled]) .hint {
        color: var(--button-inverted-outlined-hint-color);
    }

.transparent {
    color: var(--button-inverted-transparent-base-color);
    background-color: transparent;
    border: 1px solid transparent;
}

@media (hover: hover) {
        .transparent:hover {
            background-color: var(--button-inverted-transparent-hover-bg-color);
        }
    }

.transparent:active {
        background-color: var(--button-inverted-transparent-active-bg-color);
    }

.transparent > .loader {
        color: var(--button-spinner-inverted-color);
    }

.transparent:not([disabled]) .hint {
        color: var(--button-inverted-transparent-base-hint-color);
    }

.text {
    background-color: transparent;
    color: var(--button-inverted-text-base-color);
}

@media (hover: hover) {
        .text:hover {
            color: var(--button-inverted-text-hover-color);
        }
    }

.text > .loader {
        color: var(--button-spinner-inverted-color);
    }

.text:not([disabled]) .hint {
        color: var(--button-inverted-text-base-hint-color);
    }

.component.accent[disabled] {
        color: var(--button-inverted-accent-disabled-color);
        background-color: var(--button-inverted-accent-disabled-bg-color);
    }

.component.accent.loading[disabled] {
            color: var(--button-inverted-accent-color);
            background-color: var(--button-inverted-accent-base-bg-color);
        }

.component.secondary[disabled] {
        border-color: var(--button-inverted-secondary-disabled-border-color);
    }

.component.secondary.loading[disabled] {
            color: var(--button-inverted-secondary-color);
            background-color: var(--button-inverted-secondary-base-bg-color);
            border-color: var(--button-inverted-secondary-base-border-color);
        }

.component.outlined[disabled] {
        background-color: var(--button-inverted-outlined-disabled-bg-color);
    }

.component.outlined.loading[disabled] {
            color: var(--button-inverted-outlined-color);
        }

.component.transparent[disabled] {
        background-color: transparent;
    }

.component.transparent.loading[disabled] {
            color: var(--button-inverted-transparent-base-color);
        }

.component.text.loading[disabled] {
            color: var(--button-inverted-text-base-color);
        }
