/* v1.3.0 backup-only recovery. */
.rp-blog-image-restore-media {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 16 / 10;
    min-height: 220px;
    overflow: hidden !important;
    background: #e8e5dd;
}
.rp-blog-image-restore-media > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
.rbir-image-missing { display: none !important; }

/* Never allow the Blog-card injector to appear on an individual article. */
.single-post .rp-blog-image-restore-media { display: none !important; }

/* Legacy source/creator captions are intentionally suppressed in the current design. */
.single-post .rp-blog-source-image figcaption,
.single-post .rp-blog-source-hero figcaption,
.single-post figcaption { display: none !important; }

/* Normal article hero below the title: contained, centred, never a full-page banner. */
.single-post .rp-container--narrow > .rp-blog-source-hero {
    width: min(100%, 680px) !important;
    margin: 0 auto 2rem !important;
}
.single-post .rp-blog-source-hero img.rbir-single-image,
.single-post .rp-container--narrow > img.rbir-single-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: 430px !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 auto !important;
    border-radius: 18px !important;
}

/* Theme-appended article images: compact gallery, with no huge blank gaps. */
.single-post .rp-blog-source-gallery {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1.25rem !important;
    margin: 2rem 0 0 !important;
}
.single-post .rp-blog-source-gallery .rp-blog-source-image {
    margin: 0 !important;
    min-width: 0 !important;
}
.single-post .rp-blog-source-gallery img.rbir-single-image {
    display: block !important;
    width: 100% !important;
    height: 320px !important;
    max-height: 320px !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
    border-radius: 18px !important;
}

@media (max-width: 720px) {
    .rp-blog-image-restore-media { min-height: 180px; }
    .single-post .rp-blog-source-gallery { grid-template-columns: 1fr !important; }
    .single-post .rp-blog-source-gallery img.rbir-single-image {
        height: auto !important;
        max-height: 440px !important;
        object-fit: contain !important;
    }
}
