.gallery-post-shell { max-width: 1080px; }
.gallery-post-shell .gallery-artwork-detail { display: block; }
.gallery-post-shell .gallery-artwork-frame { position: static; margin: 0; }
.gallery-artwork-open { display: block; border-radius: .85rem; cursor: pointer; }
.gallery-artwork-open:focus-visible { outline: 3px solid var(--drakima-cyan); outline-offset: 4px; }
.gallery-post-shell .gallery-artwork-full { height: auto; max-height: none; }
.gallery-post-shell .gallery-artwork-story {
    max-width: 52rem;
    margin: 1.5rem auto 0;
    padding: clamp(1.25rem, 4vw, 2.5rem);
    background: var(--drakima-panel);
    border: 1px solid var(--drakima-line-cyan);
    border-radius: .75rem;
}
.gallery-artwork-story h1 { text-wrap: balance; }
.gallery-artwork-lore { margin-top: 2rem; font-size: 1.05rem; line-height: 1.85; }
.gallery-artwork-lore :is(p, li) { line-height: inherit; }
.gallery-artwork-lore img { max-width: 100%; height: auto; }
.gallery-artwork-lore :is(pre, table) { display: block; max-width: 100%; overflow-x: auto; }
.gallery-lightbox {
    box-sizing: border-box;
    width: max-content;
    max-width: calc(100vw - 1.5rem);
    max-height: calc(100dvh - 1.5rem);
    padding: 0;
    overflow: hidden;
    color: var(--drakima-text);
    background: #070610;
    border: 1px solid var(--drakima-pink);
    border-radius: .75rem;
    box-shadow: var(--drakima-shadow-pink);
}
.gallery-lightbox::backdrop { background: rgba(0, 0, 0, .9); backdrop-filter: blur(5px); }
.gallery-lightbox img {
    display: block;
    width: auto;
    height: auto;
    max-width: calc(100vw - 1.5rem - 2px);
    max-height: calc(100dvh - 1.5rem - 2px);
    object-fit: contain;
}
.gallery-lightbox form { position: absolute; bottom: .6rem; left: 50%; transform: translateX(-50%); margin: 0; }
.gallery-lightbox-close {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid var(--drakima-pink);
    border-radius: 50%;
    color: #f7edff;
    background: rgba(7, 6, 16, .85);
    box-shadow: 0 0 12px rgba(255, 0, 255, .35);
    font: 1.8rem/1 system-ui, sans-serif;
    cursor: pointer;
}
.gallery-lightbox-close:hover { color: #070610; background: #e3b5ff; }
.gallery-lightbox-close:focus-visible { outline: 2px solid var(--drakima-cyan); outline-offset: 3px; }
html.gallery-lightbox-open { overflow: hidden; }
