.evidence-viewer:not([open]) { display: none; }
.evidence-viewer { width: min(1200px, calc(100vw - 24px)); max-width: none; max-height: calc(100dvh - 24px); padding: 0; border: 1px solid #64748b; border-radius: 12px; background: #10151e; color: #fff; }
.evidence-viewer::backdrop { background: rgb(0 0 0 / 85%); }
.evidence-viewer-panel { display: flex; flex-direction: column; max-height: calc(100dvh - 28px); }
.evidence-viewer-toolbar { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; padding: 8px 12px; border-bottom: 1px solid #64748b; }
.evidence-viewer-toolbar button, .evidence-viewer-toolbar a { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid #64748b; border-radius: 6px; background: #17202e; color: #fff; font: inherit; cursor: pointer; }
.evidence-viewer-toolbar button:disabled { opacity: .5; cursor: wait; }
.evidence-viewer :focus-visible { outline: 3px solid #ffcc66; outline-offset: 2px; }
.evidence-viewer-viewport { min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 12px; text-align: center; }
.evidence-viewer-viewport img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 230px); margin: auto; object-fit: contain; }
.evidence-viewer-viewport img[hidden] { display: none; }
.evidence-viewer-viewport.is-zoomed img { max-width: none; max-height: none; margin: 0; }
.evidence-viewer-caption { margin: 0; padding: 12px 16px; font-size: .875rem; line-height: 1.5; }
.evidence-viewer-status { margin: 0; padding: 0 16px; }
.evidence-viewer-status:not(:empty) { padding-block: 16px; }
