dialog.aspektor-image-viewer{position:fixed;inset:0;margin:auto;padding:0;border:1px solid #ffffff24;border-radius:16px;box-sizing:border-box;background:#191a1df5;color:#fff;overflow:hidden;box-shadow:0 24px 90px #0008}
body dialog.aspektor-image-viewer{width:min(1100px,92vw)!important;max-width:92vw!important;height:min(820px,88dvh)!important;max-height:88dvh!important}
.aspektor-image-viewer[open]{display:flex;flex-direction:column;animation:image-viewer-appear .18s ease-out}
.aspektor-image-viewer::backdrop{background:#10111499;backdrop-filter:blur(4px)}
@keyframes image-viewer-appear{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.aspektor-image-viewer[open]{animation:none}}
@media(max-width:600px){body dialog.aspektor-image-viewer{width:96vw!important;max-width:96vw!important;height:88dvh!important;border-radius:12px}}
.aspektor-image-viewer>header,.aspektor-image-viewer>footer{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;padding:12px max(16px,env(safe-area-inset-right));border:0;background:#17181cbf;color:#fff}
.aspektor-image-viewer>header{padding-top:max(12px,env(safe-area-inset-top))}
.aspektor-image-viewer>header>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 14px/1.4 system-ui;min-width:0}
.aspektor-image-viewer>header>div{display:flex;gap:8px;flex:none}
.aspektor-image-viewer button{width:44px;height:44px;min-height:44px;padding:11px;border:0;border-radius:50%;background:#ffffff14;color:#fff;display:grid;place-items:center}
.aspektor-image-viewer button:hover{background:#ffffff26}.aspektor-image-viewer button:disabled{opacity:.25}
.aspektor-image-viewer button svg{width:22px;height:22px;fill:none}
.aspektor-image-viewer>.image-viewer-stage{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;user-select:none}
.aspektor-image-viewer .image-viewer-stage>img{display:block;max-width:calc(100% - 32px);max-height:calc(100% - 24px);width:auto;height:auto;object-fit:contain;transform-origin:center;user-select:none;-webkit-user-drag:none;pointer-events:auto}
.aspektor-image-viewer .image-viewer-stage.is-zoomed{cursor:grab}.aspektor-image-viewer .image-viewer-stage.is-zoomed:active{cursor:grabbing}
.aspektor-image-viewer>footer{justify-content:center;padding-bottom:max(12px,env(safe-area-inset-bottom))}
.aspektor-image-viewer output{min-width:80px;text-align:center;font:500 13px/1 system-ui}
img.attachment-preview{cursor:zoom-in}
