.image-button-component {
    display: flex;
    height: 40px;
    width: 40px;
    justify-content: center;
    align-items: center;
    color: var(--color-text);
    transition-property: color, filter;
}

@media (hover: hover) and (pointer: fine) {
    .image-button-component {
        transition-timing-function: var(--transition-timing-function);
        transition-duration: var(--transition-duration);
    }
}

@media (hover: none) {
    .image-button-component {
        transition-timing-function: var(--mobile-transition-timing-function);
        transition-duration: var(--mobile-transition-duration);
    }
}

.image-button-component-image {
    height: 40px;
    width: 40px;
    object-fit: contain;
    transition-property: width, height;
}

@media (hover: hover) and (pointer: fine) {
    .image-button-component-image {
        transition-timing-function: var(--transition-timing-function);
        transition-duration: var(--transition-duration);
    }
}

@media (hover: none) {
    .image-button-component-image {
        transition-timing-function: var(--mobile-transition-timing-function);
        transition-duration: var(--mobile-transition-duration);
    }
}

/* Default variant */
@media (hover: hover) and (pointer: fine) {
    .image-button-component.variant-default:hover {
        cursor: pointer;
        color: var(--color-highlight);
        filter: var(--shadow-drop-highlight);
    }

    .image-button-component.variant-default:hover .image-button-component-image {
        height: 48px;
        width: 48px;
    }
}

@media (hover: none) {
    .image-button-component.variant-default:active {
        color: var(--color-highlight);
        filter: var(--shadow-drop-highlight);
    }

    .image-button-component.variant-default:active .image-button-component-image {
        height: 48px;
        width: 48px;
    }
}

/* Highlighted variant */
.image-button-component.variant-highlighted {
    color: var(--color-highlight);
    filter: var(--shadow-drop-highlight);
}

.image-button-component.variant-highlighted .image-button-component-image {
    height: 48px;
    width: 48px;
}
