/* Shared document and photograph viewer. */
.scene-material-card.has-new-tab { position:relative; }
.scene-material-card.has-new-tab > h4,.scene-material-card.has-new-tab > .material-location { padding-right:30px; }
.scene-material-new-tab { position:absolute; top:10px; right:10px; display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:5px; color:var(--paper-dim); background:transparent; font:22px/1 var(--font-sans); }
.scene-material-open:hover .scene-material-new-tab { color:var(--amber-bright); background:var(--accent-soft); }
.scene-material-open:focus-visible .scene-material-new-tab { outline:2px solid var(--amber-bright); outline-offset:2px; }
.material-card.has-audio-transcript { height:auto; min-height:0; align-self:start; }
.scene-material-card > .scene-material-transcript { display:inline-flex; align-items:center; align-self:flex-start; flex:0 0 auto; width:auto; min-height:32px; padding:4px 0; border:0; border-radius:0; margin:0; color:var(--paper-dim); background:transparent; font:400 13px/1.5 var(--font-sans); text-align:left; text-decoration:none; cursor:pointer; }
.scene-material-card > .scene-material-transcript:hover { color:var(--amber-bright); text-decoration:underline; text-underline-offset:3px; }
.scene-material-card > .scene-material-transcript:focus-visible { outline:2px solid var(--amber-bright); outline-offset:3px; }
@media(max-width:640px) { .scene-material-card > .scene-material-transcript { min-height:36px; } }
.material-evidence.is-transcript-open > .scene-material-open { flex:0 0 auto; }
.material-audio-transcript { min-width:0; max-height:24rem; overflow-y:auto; overscroll-behavior:contain; flex:0 0 auto; padding:16px; border:1px solid var(--border-dim); border-radius:6px; background:var(--bg-panel); color:var(--paper); font:14px/1.7 var(--font-sans); scrollbar-width:thin; }
.material-audio-transcript:focus-visible { outline:2px solid var(--amber); outline-offset:2px; }
.material-transcript-status { margin:0; color:var(--paper-dim); }
.material-transcript-text { overflow-wrap:anywhere; }
.material-transcript-text h2 { display:none; }
.material-transcript-text .cassette-line { margin:18px 0; }
.material-transcript-text .cassette-line dt,.material-transcript-text .finale-transcript b { display:block; margin-bottom:6px; color:var(--amber-bright); font-size:12px; letter-spacing:.06em; text-transform:uppercase; }
.material-transcript-text .cassette-line dd { margin:0; }
.material-transcript-text p { margin:0 0 16px; }
.material-transcript-text .cassette-sound,.material-transcript-text .finale-translation-label { color:var(--paper-dim); font-size:13px; }
.material-transcript-text .cassette-sound { font-style:italic; }
.material-transcript-text ::highlight(case-transcript-quotes) { background:#d8a75c55; color:inherit; }
#pdf-modal.is-cassette .document-workspace { width:min(1360px,100%); height:min(800px,calc(100dvh - 48px)); }
#pdf-modal.is-cassette .case-pdf { background:#191613; border-color:#75603c; }
#pdf-modal.is-cassette .pdf-toolbar { padding:24px 34px 22px; gap:12px; background:#191613; border-bottom:1px solid #675333; }
#pdf-modal.is-cassette .pdf-toolbar:before { content:'FOUND MATERIAL'; color:#b89b6b; font:10px/1.4 Arial,sans-serif; letter-spacing:.2em; }
#pdf-modal.is-cassette .viewer-heading #pdf-title { font:normal 34px/1.2 var(--font-serif); color:#e6dcc7; }
#pdf-modal.is-cassette .viewer-controls { display:flex; }
#pdf-modal.is-cassette .viewer-page-controls,#pdf-modal.is-cassette .viewer-zoom-controls,#pdf-modal.is-cassette #document-new-tab { display:none; }
#pdf-modal.is-cassette .pdf-toolbar #pdf-close { background:transparent; border:0; font-size:28px; }
#pdf-modal.is-cassette #pdf-pages { padding:0; background:#191613; }
@media(max-width:600px) {
 #pdf-modal.is-cassette .document-workspace { height:calc(100dvh - 16px); }
 #pdf-modal.is-cassette .pdf-toolbar { padding:18px 20px; }
 #pdf-modal.is-cassette .viewer-heading #pdf-title { font-size:25px; }
}
#pdf-modal { padding: 24px; align-items: center; overflow: hidden; }
.document-workspace { width: min(1200px,100%); height: calc(100dvh - 48px); max-height: calc(100dvh - 48px); }
.document-tab .screen,.document-tab #pause-overlay { display:none !important; }
.document-tab #pdf-modal { padding:0; }
.document-tab .document-workspace,.document-tab .document-workspace.with-materials { width:100%; height:100dvh; max-height:100dvh; }
.document-tab .document-workspace > .case-pdf { border-radius:0; }
.document-workspace.with-materials { width: min(1600px,100%); }
.document-workspace > .case-pdf { width: 100%; height: 100%; max-height: 100%; overflow: hidden; border-radius: 4px; }
.pdf-toolbar { display: grid; grid-template-columns: minmax(0,1fr) auto 36px; align-items: center; flex: 0 0 auto; gap: 16px; padding: 14px 20px; border-bottom: 1px solid var(--border-dim); background: var(--bg-panel); }
#pdf-modal.is-cassette .pdf-toolbar { grid-template-columns: minmax(0,1fr) auto 36px; }
#pdf-modal.is-cassette .pdf-toolbar:before { grid-column: 1 / -1; }
.viewer-heading { display: flex; align-items: center; gap: 20px; min-width: 0; }
.viewer-heading #pdf-title { flex: 1; min-width: 0; margin: 0; color: var(--paper); font: 700 20px/1.35 var(--font-serif); overflow-wrap: anywhere; }
.pdf-toolbar #pdf-close { order: 0; flex: 0 0 36px; width: 36px; min-height: 36px; padding: 0; font: 24px/1 var(--font-serif); color: var(--paper-dim); }
.viewer-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; min-width: 0; }
.viewer-page-controls,.viewer-zoom-controls { display: flex; align-items: center; flex: 0 0 auto; min-height: 36px; border: 1px solid var(--border-dim); border-radius: 3px; overflow: hidden; }
.pdf-toolbar .viewer-controls button { height: 36px; min-height: 36px; padding: 0 12px; font: 14px/1 var(--font-serif); cursor: pointer; }
.pdf-toolbar .viewer-page-controls button,.pdf-toolbar .viewer-zoom-controls button { border: 0; border-radius: 0; background: transparent; }
.pdf-toolbar #pdf-fit { min-width: 64px; border-left: 1px solid var(--border-dim); border-right: 1px solid var(--border-dim); font: 13px/1 var(--font-mono); }
.viewer-page-controls #pdf-page-count { min-width: 50px; text-align: center; font: 12px var(--font-mono); }
.viewer-secondary-controls { display: flex; align-items: center; gap: 10px; margin-left: auto; flex-wrap: wrap; }
.pdf-toolbar #document-new-tab,.pdf-toolbar #document-materials-toggle { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 0 12px; margin: 0; font: 14px/1.2 var(--font-serif); text-decoration: none; white-space: nowrap; color: var(--paper-dim); }
.pdf-toolbar #document-new-tab { border: 1px solid transparent; }
.pdf-toolbar #document-new-tab { width:36px; padding:0; font-size:22px; }
.pdf-toolbar #document-materials-toggle[aria-expanded="true"] { border-color: var(--amber); color: var(--amber-bright); }
.pdf-toolbar button:hover:not(:disabled),.pdf-toolbar a:hover { background: #ffffff08; color: var(--amber-bright); }
.pdf-toolbar button:focus-visible,.pdf-toolbar a:focus-visible { outline: 2px solid var(--amber); outline-offset: -3px; }
#pdf-status:not(:empty) { padding: 12px 20px; font-size: 14px; }
#pdf-modal[data-format="photo"] .document-workspace { height: auto; }
#pdf-modal[data-format="photo"] .document-workspace.with-materials { height: calc(100dvh - 48px); }
#pdf-modal[data-format="photo"] .case-pdf { height: auto; }
#pdf-modal[data-format="photo"] #pdf-pages { display: flex; flex-direction: column; flex: 0 0 auto; min-height: 160px; max-height: calc(100dvh - 140px); padding: 20px; scrollbar-gutter: auto; background: #11100f; }
#pdf-modal[data-format="photo"] #pdf-pages > .case-object-photo,#pdf-modal[data-format="photo"] #pdf-pages > .case-object-crop { margin: auto; flex-shrink: 0; }
.case-object-crop .case-object-photo { margin: 0; }
#pdf-modal[data-format="html"] #pdf-pages { flex: 1 1 0; }
@media(max-width:900px) {
  .pdf-toolbar { grid-template-columns: minmax(0,1fr) 36px; }
  .pdf-toolbar .viewer-controls { grid-column: 1 / -1; grid-row: 2; }
  .pdf-toolbar #pdf-close { grid-column: 2; grid-row: 1; }
  #pdf-modal.is-cassette .viewer-heading { grid-column: 1; grid-row: 2; }
  #pdf-modal.is-cassette .viewer-controls { grid-row: 3; }
  #pdf-modal.is-cassette .pdf-toolbar #pdf-close { grid-row: 2; }
  .document-workspace.with-materials { height: calc(100dvh - 32px); }
  .document-workspace.with-materials > .case-pdf { height: 100%; }
}
@media(max-width:600px) {
  #pdf-modal { padding: 8px; }
  .document-workspace,.document-workspace.with-materials { height: calc(100dvh - 16px); max-height: calc(100dvh - 16px); }
  #pdf-modal[data-format="photo"] .document-workspace.with-materials { height: calc(100dvh - 16px); }
  .pdf-toolbar { padding: 12px; gap: 10px; }
  .viewer-heading #pdf-title { font-size: 17px; }
  .viewer-controls { gap: 8px; }
  .viewer-secondary-controls { margin-left: 0; gap: 4px; }
  .pdf-toolbar #document-new-tab,.pdf-toolbar #document-materials-toggle { padding: 0 8px; font-size: 12px; }
  #pdf-modal[data-format="photo"] #pdf-pages { padding: 12px; min-height: 120px; max-height: calc(100dvh - 160px); }
}
