.audience-badge{display:inline-flex;padding:4px 9px;margin:4px 0 10px;border:1px solid var(--gold-dim);border-radius:20px;color:var(--gold-light);font-size:12px;line-height:1.4}
.audience-badge.pending{border-color:var(--border);color:var(--muted)}
.photo-trigger{position:relative;width:100%;border:0;font:inherit;color:var(--cream);cursor:zoom-in}
.photo-trigger:focus-visible,#photo-viewer button:focus-visible{outline:3px solid var(--gold-light);outline-offset:-3px}
.photo-hint{position:absolute;right:9px;bottom:9px;padding:5px 8px;border-radius:5px;background:#100e0ce6;color:var(--gold-light);font-size:11px;pointer-events:none}
#product-modal .pm-close{border:0;background:var(--card);border-radius:50%;width:36px;height:36px}
#photo-viewer{width:min(1200px,96vw);height:92vh;height:92dvh;max-width:96vw;max-height:96dvh;margin:auto;padding:0;border:1px solid var(--gold-dim);border-radius:12px;background:#15110e;color:var(--cream);overflow:hidden}
#photo-viewer::backdrop{background:rgba(0,0,0,.9)}
#photo-viewer[open]{display:flex;flex-direction:column}
.photo-viewer-toolbar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}
#photo-viewer-title{flex:1;min-width:0;font-size:14px;font-weight:500;margin:0;overflow-wrap:anywhere}
#photo-viewer button{min-height:44px;padding:8px 12px;border:1px solid var(--gold-dim);border-radius:6px;background:var(--card);color:var(--gold-light);cursor:pointer;font:inherit;flex-shrink:0}
#photo-viewer button:disabled{opacity:.5;cursor:wait}
#photo-viewer-close{font-size:23px!important}
#photo-viewer-stage{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;position:relative}
.photo-viewer-canvas{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
#photo-viewer-image{display:block;width:100%;height:100%;object-fit:contain;padding:12px}
#photo-viewer-image[hidden]{display:none}
#photo-viewer-stage.zoomed .photo-viewer-canvas{width:200%;height:200%}
#photo-viewer-status{margin:0;padding:0 16px;font-size:13px;color:var(--muted)}
#photo-viewer-status:not(:empty){padding:10px 16px}
@media(max-width:600px){#photo-viewer{width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:100dvh;border-radius:0}.photo-viewer-toolbar{flex-wrap:wrap;padding:10px}#photo-viewer-title{flex-basis:calc(100% - 65px);order:0}#photo-viewer-close{order:1}#photo-viewer-zoom{order:2;font-size:13px!important}}
