/* Mobile quick-view layout: stack media above product details and use the viewport efficiently. */
@media (max-width: 767px) {
    .ks-pc-modal {
        align-items: flex-end;
        padding: 0;
    }

    .ks-pc-dialog {
        width: 100%;
        max-width: 100%;
        max-height: calc(100vh - 16px);
        max-height: calc(100dvh - 16px);
        margin: 0;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        box-shadow: 0 -18px 55px rgba(30, 20, 12, .22);
    }

    .ks-pc-close {
        top: 12px;
        right: 12px;
        width: 36px;
        height: 36px;
        background: rgba(255, 253, 252, .96);
        box-shadow: 0 5px 16px rgba(47, 36, 24, .10);
    }

    .ks-pc-quick-content {
        display: flex;
        flex-direction: column;
        min-height: 0;
        width: 100%;
    }

    .ks-pc-media {
        flex: 0 0 auto;
        width: 100%;
        min-height: 245px;
        padding: 46px 20px 18px;
        border-bottom: 1px solid #E8E0D5;
    }

    .ks-pc-image-link {
        min-height: 180px;
    }

    .ks-pc-product-image {
        width: auto;
        max-width: min(72vw, 280px);
        height: auto;
        max-height: 235px;
    }

    .ks-pc-summary,
    .ks-pc-quick-content[dir="rtl"] .ks-pc-summary {
        width: 100%;
        min-width: 0;
        padding: 24px 20px 28px;
        border-top: 0;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        justify-content: flex-start;
    }

    .ks-pc-brand {
        margin-bottom: 6px;
        font-size: 10.5px;
    }

    .ks-pc-title {
        margin: 0 42px 10px 0;
        font-size: 22px;
        line-height: 1.35;
        overflow-wrap: anywhere;
    }

    .ks-pc-quick-content[dir="rtl"] .ks-pc-title {
        margin: 0 0 10px 42px;
        line-height: 1.6;
    }

    .ks-pc-price {
        margin-bottom: 14px;
        font-size: 18px;
    }

    .ks-pc-description {
        margin-bottom: 16px;
        font-size: 13px;
        line-height: 1.7;
    }

    .ks-pc-meta {
        margin-bottom: 18px;
    }

    .ks-pc-meta > div {
        grid-template-columns: minmax(92px, .7fr) minmax(0, 1fr);
        gap: 10px;
        padding: 9px 0;
    }

    .ks-pc-meta dt,
    .ks-pc-meta dd {
        font-size: 11.5px;
    }

    .ks-pc-actions .ks-card-action {
        min-height: 46px;
        font-size: 12px !important;
    }

    .ks-pc-full-details {
        margin-top: 15px;
    }

    .ks-pc-loading,
    .ks-pc-error {
        min-height: 320px;
        padding: 32px 20px;
    }
}
