.photo-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#101827;color:#fff;overflow:hidden}
.photo-dialog::backdrop{background:#101827eb}.photo-dialog[open]{display:flex;flex-direction:column}
.photo-toolbar,.photo-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;flex-shrink:0}.photo-toolbar>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.photo-dialog button{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #64748b;border-radius:8px;background:#1e293b;color:#fff;cursor:pointer}.photo-dialog button:disabled{opacity:.4;cursor:default}.photo-dialog button:focus-visible{outline:3px solid #facc15;outline-offset:2px}
.photo-stage{flex:1;min-height:0;overflow:auto;touch-action:pan-x pan-y pinch-zoom;display:block;text-align:center}.photo-stage img{object-fit:contain;display:block;margin:auto}.photo-stage p{padding:24px}.photo-stage a{color:#93c5fd}
.photo-caption p{margin:0;max-height:72px;overflow:auto;text-align:center}.photo-thumbnails{display:flex;gap:8px;overflow:auto;padding:8px 20px 16px;flex-shrink:0}.photo-thumbnails button[aria-current=true]{border-color:#facc15;background:#334155}
@media(max-width:600px){.photo-toolbar,.photo-caption{padding:8px;gap:8px}.photo-toolbar{font-size:12px}.photo-toolbar button{padding:8px}.photo-caption p{font-size:13px}}

.photo-thumbnails button{display:flex;align-items:center;gap:6px;flex-shrink:0}.photo-thumbnails img{width:64px;height:44px;object-fit:cover;border-radius:3px}

.photo-caption p,.photo-stage p{color:#e2e8f0}
