/* Scoped to the original-file dialog; other application modals are unchanged. */
#sourceDialog { width:calc(100vw - 40px); max-width:1600px; height:calc(100dvh - 40px); max-height:none; padding:0; overflow:hidden; border:1px solid var(--border,#d7e1e8); border-radius:16px; }
#sourceDialog > article { height:100%; padding:0; display:flex; flex-direction:column; min-height:0; overflow:hidden; }
#sourceDialog .dialog-heading { margin:0; padding:12px 18px; gap:16px; align-items:center; border-bottom:1px solid var(--border,#d7e1e8); flex-shrink:0; }
#sourceDialog .dialog-heading > div { min-width:0; }
#sourceDialog .dialog-heading h2 { font-size:16px; line-height:1.4; margin:2px 0 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#sourceDialog .eyebrow { font-size:9px; }
#sourceDialog .icon-button { flex-shrink:0; width:36px; height:36px; }
#sourceDialog .source-details { flex-shrink:0; padding:5px 18px; border-bottom:1px solid var(--border,#d7e1e8); font-size:11px; }
#sourceDialog .source-details summary { cursor:pointer; color:var(--muted,#567); }
#sourceDialog .source-details .dialog-note { margin:8px 0; }
#sourceDialog .source-meta { margin:0 0 6px; }
#sourceDialog .source-dialog-actions { display:none; }
#sourceDialog [hidden] { display:none !important; }
#sourceDialog .file-preview { display:flex; flex-direction:column; gap:0; min-width:0; min-height:0; flex:1; overflow:hidden; }
.file-preview-toolbar { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; padding:8px 16px; border-bottom:1px solid var(--border,#d7e1e8); flex-shrink:0; }
.file-preview-controls { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#sourceDialog .file-preview-toolbar select { width:auto; max-width:240px; margin:0; }
#sourceDialog .file-preview-toolbar button, #sourceDialog .file-preview-toolbar select, .file-preview-download { min-height:34px; padding:6px 10px; border:1px solid var(--border,#cddde6); border-radius:8px; background:var(--surface,#fff); color:var(--text,#132b3b); font:inherit; font-size:12px; text-decoration:none; }
#sourceDialog .file-preview-toolbar label { margin:0; display:flex; align-items:center; gap:8px; font-size:12px; }
.file-preview-toolbar button:disabled { opacity:.4; cursor:default; }
.file-preview-toolbar button:not(:disabled), .file-preview-toolbar select { cursor:pointer; }
.file-preview-download { margin-left:auto; white-space:nowrap; }
.file-preview-download:hover { border-color:#008b9d; color:#007487; }
.file-preview-pages { flex:1; min-height:0; overflow:auto; background:#e5ebef; padding:16px; overscroll-behavior:contain; }
.file-preview-pages canvas { display:block; background:white; margin:0 auto; box-shadow:0 3px 18px #15263424; }
.file-preview-notice { margin:24px; padding:20px; border:1px solid var(--border,#cddde6); border-radius:12px; line-height:1.6; }
.file-preview-image { display:block; max-width:100%; max-height:100%; object-fit:contain; margin:auto; }
.file-preview-sheet { overflow:auto; flex:1; min-height:0; overscroll-behavior:contain; }
.file-preview-sheet table { border-collapse:collapse; width:max-content; min-width:100%; font-size:12px; }
.file-preview-sheet td { border:1px solid var(--border,#cddde6); padding:8px 12px; max-width:360px; overflow-wrap:anywhere; white-space:pre-wrap; vertical-align:top; }
.file-preview-sheet tr:nth-child(even) { background:rgba(0,150,170,.06); }
.file-preview-caption { padding:8px 16px; color:var(--muted,#567); font-size:11px; flex-shrink:0; }
.file-preview-text { white-space:pre-wrap; overflow-wrap:anywhere; overflow:auto; flex:1; padding:20px; }
.document-preview-reason { grid-column:1/-1; line-height:1.5; }
@media (max-width:600px) {
  #sourceDialog { width:100vw; height:100dvh; max-width:none; border-radius:0; border:0; }
  #sourceDialog .dialog-heading { padding:10px 12px; }
  #sourceDialog .dialog-heading h2 { font-size:14px; }
  .file-preview-toolbar { padding:8px; gap:8px; }
  .file-preview-controls { width:100%; justify-content:space-between; gap:6px; }
  .file-preview-pages { padding:8px; }
  #sourceDialog .file-preview-toolbar select { max-width:210px; }
}
