/* The existing poster determines layout; the frame is clipped to its rendered pixels. */
.platform-figure .showcase-stage{position:relative}
.showcase-embed-layer{position:absolute;overflow:hidden;pointer-events:auto;z-index:1;contain:layout paint}
.showcase-embed-layer[hidden]{display:none}
.showcase-embed-frame{position:absolute;inset:0 auto auto 0;display:block;max-width:none;border:0;margin:0;padding:0;transform-origin:0 0;pointer-events:auto;background:#0a0a0a}
.platform-figure figcaption{flex-wrap:wrap;gap:8px 16px}
.platform-figure #platform-caption{flex:1 1 240px;min-width:0}
.showcase-controls{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;margin-left:auto}
.showcase-controls button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:6px 8px;border:0;background:transparent;color:var(--body,#dadbdf);font:inherit;font-size:12px;line-height:18px;white-space:nowrap;cursor:pointer}
.showcase-controls button svg{width:16px;height:16px;flex-shrink:0}
.showcase-controls button:hover:not(:disabled){color:#fff}
.showcase-controls button:disabled{opacity:.45;cursor:default}
.showcase-controls button:focus-visible{outline:2px solid #45dfff;outline-offset:2px;border-radius:6px}
@media(max-width:640px){.platform-figure #platform-caption{flex-basis:100%}.showcase-controls{margin-left:0}.showcase-controls button{min-height:44px}.platform-figure figcaption>[data-platform-zoom]{margin-left:auto}}

.image-stage{position:relative;display:flex;align-items:center;justify-content:center;height:min(72dvh,900px);min-height:280px}
.image-dialog .image-stage>img{display:block;width:100%;height:100%;max-height:none;object-fit:contain}
.image-dialog #image-caption{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 20px;margin-top:16px;color:var(--body);font-size:14px}
.image-dialog #image-caption .showcase-controls{margin-left:0}
.image-dialog .dialog-close{width:44px;height:44px}
