/**
 * SphereNexus v2.4.2 — Professional inline article image controls.
 * Keeps the main featured hero large while constraining images embedded in post content.
 */

/* Reset imported wide/full alignment styles inside the article body. */
.single-article .sn-single-v23-content .alignwide,
.single-article .sn-single-v23-content .alignfull,
.single-article .sn-single-v23-content .wp-block-image.alignwide,
.single-article .sn-single-v23-content .wp-block-image.alignfull {
    width: 100% !important;
    max-width: 680px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Keep all image containers neat, centered and narrower than the text column. */
.single-article .sn-single-v23-content figure,
.single-article .sn-single-v23-content picture,
.single-article .sn-single-v23-content .wp-caption,
.single-article .sn-single-v23-content .wp-block-image,
.single-article .sn-single-v23-content .gallery-item {
    width: 100% !important;
    max-width: 680px !important;
    margin: 28px auto !important;
    float: none !important;
}

/* Imported RSS images often contain inline width/height attributes. Override them safely. */
.single-article .sn-single-v23-content img,
.single-article .sn-single-v23-content picture img,
.single-article .sn-single-v23-content figure img,
.single-article .sn-single-v23-content p > a > img,
.single-article .sn-single-v23-content p > img {
    display: block !important;
    width: auto !important;
    max-width: min(100%, 680px) !important;
    height: auto !important;
    max-height: 520px !important;
    margin: 28px auto !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 30px rgba(7, 27, 49, 0.08);
}

/* Avoid doubled vertical margins when an image is already inside a figure/caption. */
.single-article .sn-single-v23-content figure img,
.single-article .sn-single-v23-content picture img,
.single-article .sn-single-v23-content .wp-caption img,
.single-article .sn-single-v23-content .wp-block-image img,
.single-article .sn-single-v23-content .gallery-item img {
    margin: 0 auto !important;
}

/* Keep imported captions aligned with the image instead of spanning the entire page. */
.single-article .sn-single-v23-content figcaption,
.single-article .sn-single-v23-content .wp-caption-text,
.single-article .sn-single-v23-content .gallery-caption {
    max-width: 680px;
    margin: 9px auto 0;
    padding: 0 8px;
    color: #68768a;
    font-family: var(--sn-font-ui);
    font-size: 12px !important;
    line-height: 1.55;
    text-align: center;
}

/* WordPress left/right alignment remains professional without breaking article flow. */
.single-article .sn-single-v23-content .alignleft,
.single-article .sn-single-v23-content .alignright {
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Galleries stay contained and images remain consistent. */
.single-article .sn-single-v23-content .wp-block-gallery,
.single-article .sn-single-v23-content .gallery {
    width: 100%;
    max-width: 720px;
    margin: 30px auto;
    gap: 12px;
}

.single-article .sn-single-v23-content .wp-block-gallery img,
.single-article .sn-single-v23-content .gallery img {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 360px !important;
    margin: 0 !important;
    object-fit: cover !important;
    box-shadow: none;
}

/* Mobile/tablet: use available width but preserve safe side spacing and reasonable height. */
@media (max-width: 782px) {
    .single-article .sn-single-v23-content figure,
    .single-article .sn-single-v23-content picture,
    .single-article .sn-single-v23-content .wp-caption,
    .single-article .sn-single-v23-content .wp-block-image,
    .single-article .sn-single-v23-content .gallery-item,
    .single-article .sn-single-v23-content .alignwide,
    .single-article .sn-single-v23-content .alignfull {
        max-width: 100% !important;
        margin-top: 22px !important;
        margin-bottom: 22px !important;
    }

    .single-article .sn-single-v23-content img,
    .single-article .sn-single-v23-content picture img,
    .single-article .sn-single-v23-content figure img,
    .single-article .sn-single-v23-content p > a > img,
    .single-article .sn-single-v23-content p > img {
        max-width: 100% !important;
        max-height: 380px !important;
        margin-top: 22px !important;
        margin-bottom: 22px !important;
        border-radius: 8px !important;
    }

    .single-article .sn-single-v23-content figure img,
    .single-article .sn-single-v23-content picture img,
    .single-article .sn-single-v23-content .wp-caption img,
    .single-article .sn-single-v23-content .wp-block-image img,
    .single-article .sn-single-v23-content .gallery-item img {
        margin: 0 auto !important;
    }
}

@media (max-width: 480px) {
    .single-article .sn-single-v23-content img,
    .single-article .sn-single-v23-content picture img,
    .single-article .sn-single-v23-content figure img,
    .single-article .sn-single-v23-content p > a > img,
    .single-article .sn-single-v23-content p > img {
        max-height: 300px !important;
    }
}
