.article__cover:not(.media-ph) { height: auto; }
.article__cover .article__cover-img { width: 100%; height: auto; object-fit: contain; }
.article-image-link { position: relative; display: inline-block; max-width: 100%; vertical-align: top; cursor: zoom-in; }
.article-image-link img { display: block; margin: 0; }
.article-image-link:focus-visible { outline: 3px solid #008eae; outline-offset: 4px; }
.article-image-link::after { content: '查看大图'; position: absolute; top: 8px; right: 8px; padding: 5px 9px; border: 1px solid rgb(7 59 92 / 15%); border-radius: 4px; background: rgb(255 255 255 / 94%); color: #073b5c; font-size: .8rem; line-height: 1.4; text-align: center; }
.article-image-dialog { width: min(1200px, 96vw); max-width: 96vw; height: 92dvh; max-height: 92dvh; padding: 16px; border: 0; background: #fff; color: #073b5c; }
.article-image-dialog::backdrop { background: rgb(0 0 0 / 80%); }
.article-image-dialog__tools { display: flex; gap: 12px; justify-content: flex-end; margin-bottom: 12px; }
.article-image-dialog button { min-height: 44px; padding: 8px 16px; cursor: pointer; background: #073b5c; color: white; border: 0; }
.article-image-dialog button:focus-visible { outline: 3px solid #008eae; outline-offset: 3px; }
.article-image-dialog__viewport { height: calc(100% - 100px); overflow: auto; overscroll-behavior: contain; }
.article-image-dialog img { display: block; width: 100%; height: 100%; object-fit: contain; }
.article-image-dialog.is-zoomed img { width: var(--image-width); max-width: none; height: auto; }
.article-image-dialog__caption { margin: 10px 0 0; font-size: .85rem; }
