.catalunya-button {
    border: 0.1rem solid var(--theme-color-black-800);
    border-radius: var(--radius-border-button);
    color: var(--color-text-button);
    text-align: center;
    display: inline-block;
    cursor: pointer;

    padding: var(--space-padding-button-small);

    @media (min-width: 1024px) {
        padding: var(--space-padding-button-medium);
    }

    @media (min-width: 1920px) {
        padding: var(--space-padding-button-big);
    }
}

.disabled {
    cursor: not-allowed;
    border-color: var(--color-background-button-inactive);
}

.primary {
    background-color: var(--color-background-button-primary-default);

    &:hover {
        background-color: var(--color-background-button-primary-hover);
    }

    &:active {
        background-color: var(--color-background-button-primary-pressed);
    }

    &.disabled {
        background-color: var(--color-background-button-inactive);
    }
}

.primary-dark {
    color: var(--color-text-button-primary-dark);
    background-color: var(--color-background-button-primary-dark-default);

    &:hover {
        background-color: var(--color-background-button-primary-dark-hover);
    }

    &:active {
        background-color: var(--color-background-button-primary-dark-pressed);
    }

    &.disabled {
        background-color: var(--color-background-button-inactive);
        color: var(--color-text-button);
    }
}

.secondary {
    background-color: var(--color-background-button-secondary-default);
    color: var(--color-text-button-secondary-default);
    border-color: var(--color-border-button-secondary-default);

    &:hover {
        color: var(--color-text-button-secondary-hover);
        border-color: var(--color-border-button-secondary-hover);
    }

    &:active {
        color: var(--color-text-button-secondary-pressed);
        box-shadow: var(--shadow-border-button-secondary-pressed);
    }

    &.disabled {
        background-color: var(--color-background-button-inactive);
        box-shadow: none;
    }
}

.action,
.action-dark {
    padding: var(--space-padding-button-action-small);

    @media (min-width: 1024px) {
        padding: var(--space-padding-button-action-medium);
    }

    @media (min-width: 1920px) {
        padding: var(--space-padding-button-action-big);
    }
}

.action {
    border-radius: 0;
    background-color: var(--color-background-button-action-default);

    &:hover {
        background-color: var(--color-background-button-action-hover);
    }

    &:active {
        background-color: var(--color-background-button-action-pressed);
    }

    &.disabled {
        background-color: var(--color-background-button-inactive);
    }
}

.action-dark {
    border-radius: 0;
    color: var(--color-text-button-primary-dark);
    background-color: var(--color-background-button-primary-dark-default);

    &:hover {
        background-color: var(--color-background-button-primary-dark-hover);
    }

    &:active {
        background-color: var(--color-background-button-primary-dark-pressed);
    }

    &.disabled {
        background-color: var(--color-background-button-inactive);
        color: var(--color-text-button);
    }
}

.full-width {
    width: 100%;
}