/* Bootstrap adapter layer.
 * Keep semantic block markup and map visual treatment to bootstrap-like values.
 */

/* =========================================================
   core/button style variations — Bootstrap adapter
   Overrides --wp--preset--color--* with --bs-* tokens so
   buttons inherit the live Bootstrap colour system.
   ========================================================= */

.wp-block-button.is-style-btn-primary .wp-block-button__link,
.wp-block-button.is-style-btn-primary-arrow .wp-block-button__link {
    background-color: var(--bs-primary, #0d6efd);
    color: #fff;
    border-color: var(--bs-primary, #0d6efd);
}

.wp-block-button.is-style-btn-secondary .wp-block-button__link {
    background-color: var(--bs-secondary, #6c757d);
    color: #fff;
    border-color: var(--bs-secondary, #6c757d);
}

.wp-block-button.is-style-btn-outline-primary .wp-block-button__link,
.wp-block-button.is-style-btn-outline-heart .wp-block-button__link {
    color: var(--bs-primary, #0d6efd);
    border-color: var(--bs-primary, #0d6efd);
    background-color: transparent;
}
.wp-block-button.is-style-btn-outline-primary .wp-block-button__link:hover,
.wp-block-button.is-style-btn-outline-heart .wp-block-button__link:hover {
    background-color: var(--bs-primary, #0d6efd);
    color: #fff;
}

.wp-block-button.is-style-btn-outline-secondary .wp-block-button__link {
    color: var(--bs-secondary, #6c757d);
    border-color: var(--bs-secondary, #6c757d);
    background-color: transparent;
}
.wp-block-button.is-style-btn-outline-secondary .wp-block-button__link:hover {
    background-color: var(--bs-secondary, #6c757d);
    color: #fff;
}

.wp-block-button.is-style-btn-link .wp-block-button__link {
    color: var(--bs-link-color, #0d6efd);
    background-color: transparent;
    border-color: transparent;
}

.wp-block-details.is-style-hemhem-bordered,
.wp-block-details.is-style-hemhem-flush {
    --hh-details-border-color: var(--bs-border-color, #dee2e6);
}

.wp-block-details.is-style-hemhem-bordered {
    border-radius: var(--bs-border-radius, 0.375rem);
}

.wp-block-quote.is-style-hemhem-bordered,
.wp-block-pullquote.is-style-hemhem-bordered {
    --hh-quote-border-color: var(--bs-border-color, #dee2e6);

    border-radius: var(--bs-border-radius, 0.375rem);
}

.wp-block-table.is-style-hemhem-striped {
    --hh-table-stripe-bg: var(
        --bs-table-striped-bg,
        color-mix(in srgb, currentcolor 6%, transparent)
    );
}

.wp-block-table.is-style-hemhem-bordered {
    --hh-table-border-color: var(--bs-border-color, #dee2e6);
}

.wp-block-image.is-style-hemhem-rounded,
.wp-block-image.is-style-hemhem-thumbnail,
.wp-block-gallery.is-style-hemhem-rounded,
.wp-block-gallery.is-style-hemhem-thumbnail,
.wp-block-cover.is-style-hemhem-rounded,
.wp-block-media-text.is-style-hemhem-rounded,
.wp-block-video.is-style-hemhem-rounded {
    --hh-media-border-color: var(--bs-border-color, #dee2e6);
    --hh-media-border-radius: var(--bs-border-radius, 0.375rem);
    --hh-media-thumbnail-bg: var(--bs-body-bg, #ffffff);
}

.wp-block-columns.is-style-hemhem-divided {
    --hh-layout-divider-color: var(--bs-border-color, currentcolor);
}

.wp-block-separator.is-style-hemhem-thin {
    --hh-separator-rule-width: var(--bs-border-width, 1px);
}

.wp-block-separator.is-style-hemhem-thick {
    --hh-separator-rule-width: calc(var(--bs-border-width, 1px) * 4);
}

.hh-card,
.hh-hero {
    --hh-component-border: var(--bs-border-color, #dee2e6);

    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.hh-card.hh-variant-primary,
.hh-hero.hh-variant-primary {
    --hh-component-bg: var(--bs-primary, #0d6efd);
    --hh-component-color: var(--bs-white, var(--wp--preset--color--base, inherit));
    --hh-component-border: var(--bs-primary, #0d6efd);
}

.hh-card.hh-variant-secondary,
.hh-hero.hh-variant-secondary {
    --hh-component-bg: var(--bs-secondary, #6c757d);
    --hh-component-color: var(--bs-white, var(--wp--preset--color--base, inherit));
    --hh-component-border: var(--bs-secondary, #6c757d);
}

.hh-card.hh-variant-light,
.hh-hero.hh-variant-light {
    --hh-component-bg: var(--bs-light, #f8f9fa);
    --hh-component-color: var(--bs-body-color, #212529);
    --hh-component-border: var(--bs-border-color, #dee2e6);
}

.hh-card.hh-variant-dark,
.hh-hero.hh-variant-dark {
    --hh-component-bg: var(--bs-dark, #212529);
    --hh-component-color: var(--bs-light, #f8f9fa);
    --hh-component-border: var(--bs-dark, #212529);
}

.hh-alert {
    border-left-width: 0.3rem;
}

.hh-alert.hh-variant-primary { background: #cfe2ff; color: #084298; border-color: #b6d4fe; }
.hh-alert.hh-variant-secondary { background: #e2e3e5; color: #41464b; border-color: #d3d6d8; }
.hh-alert.hh-variant-success { background: #d1e7dd; color: #0f5132; border-color: #badbcc; }
.hh-alert.hh-variant-warning { background: #fff3cd; color: #664d03; border-color: #ffecb5; }
.hh-alert.hh-variant-danger { background: #f8d7da; color: #842029; border-color: #f5c2c7; }
.hh-alert.hh-variant-info { background: #cff4fc; color: #055160; border-color: #b6effb; }
.hh-alert.hh-variant-light { background: #fcfcfd; color: #636464; border-color: #fdfdfe; }
.hh-alert.hh-variant-dark { background: #d3d3d4; color: #141619; border-color: #bcbebf; }

.hh-event-list-items,
.hh-event-calendar-items,
.hh-event-card {
    border-color: var(--bs-border-color, currentcolor);
}

.hh-event-status {
    color: var(--bs-warning-text-emphasis, currentcolor);
}

.hh-modal-dialog {
    background: var(--bs-body-bg, Canvas);
    color: var(--bs-body-color, CanvasText);
    border-radius: var(--bs-border-radius-lg, 0.5rem);
}

.hh-form-field input:not([type="checkbox"]),
.hh-form-field select,
.hh-form-field textarea {
    border-color: var(--bs-border-color, currentcolor);
    background: var(--bs-body-bg, Canvas);
    color: var(--bs-body-color, CanvasText);
    border-radius: var(--bs-border-radius, 0.375rem);
}

.hh-form-group,
.hh-form-field-radio {
    border-color: var(--bs-border-color, currentcolor);
    border-radius: var(--bs-border-radius, 0.375rem);
}

.hh-form-wizard-progress li {
    border-block-end-color: var(--bs-border-color, currentcolor);
}

.hh-form-wizard-progress li[aria-current="step"] {
    border-block-end-color: var(--bs-primary, currentcolor);
}
