/* Default button styles */
.wp-block-button:not(.is-style-outline) .wp-block-button__link {

    transition: color 0.1s ease-in-out, background-color 0.1s ease-in-out;
    
    &.has-secondary-background-color,
    &.has-accent-variant-background-color {
        color: var(--wp--preset--color--base);
    }
    
    &.has-primary-background-color,
    &.has-accent-background-color {
        color: var(--wp--preset--color--contrast);
    }

    &.has-accent-variant-background-color:hover {
        background: var(--wp--preset--color--accent) !important;
        color: var(--wp--preset--color--contrast) !important;
    }

    &:hover {
        background: var(--wp--preset--color--accent-variant) !important;
        color: var(--wp--preset--color--base) !important;
    }
}

/* Outline button styles */
.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button.is-style-outline > .wp-block-button__link.has-background {
    color: inherit;
    background: transparent !important;
    transition: border-color 0.1s ease-in-out;

    &:hover {
        border-color: var(--wp--preset--color--accent-variant);
    }

    .is-style-section-base:has(.wp-block-sowmedia-visual) & { background-color: var(--wp--preset--color--base) !important; }
    .is-style-section-primary:has(.wp-block-sowmedia-visual) & { background-color: var(--wp--preset--color--primary) !important; }
    .is-style-section-primary-alt:has(.wp-block-sowmedia-visual) & { background-color: color-mix( in srgb, var(--wp--preset--color--primary) 80%, var(--wp--preset--color--base) ) !important; }
    .is-style-section-secondary:has(.wp-block-sowmedia-visual) & { background-color: var(--wp--preset--color--secondary) !important; }
    .is-style-section-contrast:has(.wp-block-sowmedia-visual) & { background-color: var(--wp--preset--color--contrast) !important; }
    .is-style-section-accent:has(.wp-block-sowmedia-visual) & { background-color: var(--wp--preset--color--accent) !important; }
}

/* Exceptions for this block in section styles */
.is-style-section-accent-variant .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
    background: var(--wp--preset--color--accent) !important;
    color: var(--wp--preset--color--contrast) !important;
}

.is-style-section-accent-variant .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.is-style-section-accent-variant .wp-block-button.is-style-outline > .wp-block-button__link.has-background:hover {
    border-color: var(--wp--preset--color--secondary);
}

/* Edit spacing based on previous block */
:not(.is-layout-flex) > .wp-block-post-excerpt + .wp-block-buttons,
:not(.is-layout-flex) > .wp-block-paragraph + .wp-block-buttons {
    margin-top: var(--wp--preset--spacing--60);
}