/* Only the shared product quick-view modal; other drawers and desktop are unchanged. */
@media (max-width: 767px), (max-width: 1024px) and (hover: none) and (pointer: coarse) {
    #quick-view-modal {
        top: var(--pc-qv-top, 0px) !important;
        bottom: auto !important;
        height: 100vh;
        height: var(--pc-qv-height, 100vh);
    }

    #quick-view-modal .modal__container--quickview {
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
        max-height: 100% !important;
        padding: 8px 0 0 !important;
        padding-top: max(8px, env(safe-area-inset-top, 0px)) !important;
        box-sizing: border-box;
        transform: none !important;
        animation: none !important;
    }

    #quick-view-modal .modal__wrapper--quickview {
        display: flex !important;
        flex-direction: column !important;
        position: relative !important;
        width: 100%;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 100% !important;
        padding: 56px 0 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box;
        border-radius: 16px 16px 0 0 !important;
    }

    #quick-view-modal .modal__content--quickview {
        flex: 1 1 auto;
        min-height: 0 !important;
        max-height: 100% !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior-y: contain;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 16px !important;
        padding-bottom: max(16px, env(safe-area-inset-bottom, 0px)) !important;
        scroll-padding-bottom: 24px;
    }

    #quick-view-modal .modal__button-close {
        position: absolute !important;
        top: 6px !important;
        right: 12px !important;
        right: max(12px, env(safe-area-inset-right, 0px)) !important;
        bottom: auto !important;
        left: auto !important;
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 10px !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        z-index: 20 !important;
        opacity: 1 !important;
        color: #202020 !important;
        background: #fff !important;
        border: 1px solid #dedede !important;
        border-radius: 50% !important;
        pointer-events: auto !important;
        touch-action: manipulation;
    }

    #quick-view-modal .modal__button-close:focus-visible {
        outline: 2px solid #a56527;
        outline-offset: 2px;
    }

    /* Stack on touch tablets/landscape phones as well as narrow portrait screens. */
    #quick-view-modal .product-gallery-summary {
        flex-direction: column !important;
    }
    #quick-view-modal .woocommerce-product-gallery,
    #quick-view-modal .summary.entry-summary {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
    }
    #quick-view-modal .summary.entry-summary {
        position: static !important;
        height: auto !important;
        overflow: visible !important;
        padding: 0 20px 30px !important;
    }
}

@supports (height: 100dvh) {
    @media (max-width: 767px), (max-width: 1024px) and (hover: none) and (pointer: coarse) {
        #quick-view-modal { height: var(--pc-qv-height, 100dvh); }
    }
}
