/* 1.2.11. Scoped to RealesWP cart/checkout; no payment iframe/content overrides. */
html.hprc-commerce-document {
    height: auto !important;
    min-height: 100%;
    transform: none !important;
    filter: none !important;
    perspective: none !important;
    contain: none !important;
    content-visibility: visible !important;
    will-change: auto !important;
}
body.hprc-commerce-page {
    height: auto !important;
    min-height: 100vh;
    min-height: 100dvh;
    transform: none !important;
    filter: none !important;
    perspective: none !important;
    contain: none !important;
    content-visibility: visible !important;
    will-change: auto !important;
}
/* The theme's map application shell must not become a nested checkout scroller. */
body.hprc-commerce-legacy-shell:not(.modal-open) { overflow-y: auto !important; }
body.hprc-commerce-page .hprc-commerce-shell {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
    filter: none !important;
    perspective: none !important;
    contain: none !important;
    content-visibility: visible !important;
    will-change: auto !important;
}
body.hprc-commerce-page #content.hprc-commerce-shell {
    width: 100% !important; float: none !important; min-height: 0;
}
body.hprc-commerce-page .page-wrapper.hprc-commerce-shell {
    box-sizing: border-box; width: 100%; max-width: 1200px;
    margin-left: auto; margin-right: auto;
}
body.hprc-commerce-page .hprc-commerce-column { width: 100% !important; float: none !important; }
body.hprc-commerce-page .hprc-commerce-sidebar { display: none !important; }
body.hprc-commerce-page .page-content.hprc-commerce-shell {
    padding-bottom: calc(90px + env(safe-area-inset-bottom, 0px));
}
body.hprc-commerce-page .woocommerce,
body.hprc-commerce-page .wp-block-woocommerce-checkout,
body.hprc-commerce-page .wp-block-woocommerce-cart { min-width: 0; max-width: 100%; }
body.hprc-commerce-page .woocommerce form input:not([type="checkbox"]):not([type="radio"]),
body.hprc-commerce-page .woocommerce form select,
body.hprc-commerce-page .woocommerce form textarea { box-sizing: border-box; max-width: 100%; }

/* Chat fallback only. TrustedSite retains all provider-owned layout/animation. */
body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready).hplc-widget {
    position: fixed !important;
    top: auto !important;
    bottom: calc(var(--hprc-viewport-bottom, 0px) + 12px + env(safe-area-inset-bottom, 0px)) !important;
    left: auto !important;
    right: max(12px, env(safe-area-inset-right, 0px)) !important;
    transform: none !important;
}

body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready) .hplc-panel {
    left: auto !important; right: 0 !important;
    max-height: calc(var(--hprc-visible-height, 100vh) - 32px - env(safe-area-inset-bottom, 0px)) !important;
}
body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready):not(.hplc-is-starting) .hplc-panel {
    height: min(700px, calc(var(--hprc-visible-height, 100vh) - 32px - env(safe-area-inset-bottom, 0px))) !important;
}
body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready) .hplc-messages { min-height: 0 !important; }
body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready) .hplc-start-form,
body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready) .hplc-composer { min-height: 0 !important; overflow-y: auto !important; }
/* While typing in checkout, leave the on-screen keyboard/input area unobstructed.
   Chat stays visible while typing inside the chat panel itself. */
body.hprc-checkout-keyboard #hplc-widget:not(.is-open) { visibility: hidden !important; pointer-events: none !important; }
@media (max-width: 767px) {
    body.hprc-commerce-page .page-wrapper.hprc-commerce-shell { padding-left: 16px; padding-right: 16px; }
    body.hprc-commerce-page .woocommerce form .form-row-first,
    body.hprc-commerce-page .woocommerce form .form-row-last,
    body.hprc-commerce-page #customer_details > .col-1,
    body.hprc-commerce-page #customer_details > .col-2 { width: 100% !important; float: none !important; clear: both; }
    body.hprc-commerce-page .woocommerce form input:not([type="checkbox"]):not([type="radio"]),
    body.hprc-commerce-page .woocommerce form select,
    body.hprc-commerce-page .woocommerce form textarea { font-size: 16px; }
    body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready):not(.is-open) .hplc-launcher {
        min-height: 46px !important; min-width: 46px !important; max-width: 140px !important;
        padding: 0 12px !important; gap: 6px !important; font-size: 13px !important;
    }
    body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready):not(.is-open) .hplc-launcher__icon { width: 22px !important; }
}
@media (max-width: 520px) {
    body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready) .hplc-panel { left: 0 !important; right: 0 !important; }
    body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready).hplc-widget.is-open {
        left: max(12px, env(safe-area-inset-left, 0px)) !important;
        right: max(12px, env(safe-area-inset-right, 0px)) !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.hprc-commerce-page #hplc-widget:not(.hplc-viewport-ready) .hplc-launcher { transition: none !important; }
}
