/* Documentary gallery: original previews, deliberate actions, keyboard-accessible dialog. */
.doc-entry{min-height:40px;padding:8px 12px;border:1px solid var(--edge);background:var(--panel);color:var(--ink);font:600 12px var(--sans,system-ui);cursor:pointer}
.doc-dialog{width:min(1180px,94vw);max-width:94vw;height:min(900px,92vh);max-height:92vh;border:1px solid var(--edge);padding:0;background:var(--bg);color:var(--ink);font:14px/1.5 var(--sans,system-ui)}
.doc-dialog[open]{display:flex;flex-direction:column}.doc-dialog::backdrop{background:#0009}
/* The inert map must not widen the page behind the native modal on mobile. */
body:has(#documentary-dialog[open]) #app{max-width:100vw;overflow:clip}
.doc-dialog>header,.doc-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:var(--panel);flex:0 0 auto;border-bottom:1px solid var(--edge);flex-wrap:wrap}
.doc-dialog>header h2{margin:3px 0;font-size:23px}.doc-dialog>header span{font-size:10px;color:var(--muted);letter-spacing:.09em}
.doc-dialog>footer{justify-content:flex-end;border-top:1px solid var(--edge);border-bottom:0}
.doc-dialog button,.doc-dialog select{min-height:38px;padding:8px 12px;color:var(--ink);border:1px solid var(--edge);background:var(--bg);font:inherit;cursor:pointer}
.doc-dialog button:hover,.doc-dialog button:focus-visible{border-color:var(--accent);outline:2px solid var(--soft)}.doc-dialog button:disabled{opacity:.45;cursor:not-allowed}
.doc-content{overflow:auto;padding:18px 22px;min-height:0;flex:1}.doc-warning{border-left:3px solid var(--accent);padding:12px;background:var(--soft);margin-top:0}
.doc-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.doc-toolbar label{display:grid;gap:5px;min-width:220px;flex:1}.doc-toolbar select{max-width:100%}
#doc-status{color:var(--muted);min-height:22px}#doc-status.error{color:var(--ink);border-left:3px solid #c37a49;padding:7px}
.doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:14px}.doc-card{background:var(--panel);border:1px solid var(--edge);min-width:0}
.doc-card>label{display:flex;align-items:center;gap:8px;padding:10px;cursor:pointer}.doc-card>img{display:block;width:100%;max-height:300px;object-fit:contain;background:#141b1c}.doc-card>div{padding:12px}.doc-card p{font-size:12px;margin:5px 0}.doc-card small{overflow-wrap:anywhere;color:var(--muted)}
.doc-empty{color:var(--muted);padding:14px;border:1px dashed var(--edge)}.doc-pair{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid var(--edge)}.doc-pair p{margin:4px 0;font-size:12px}
.doc-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.doc-detail-grid figure{margin:0}.doc-detail-grid img{width:100%;background:#263236}.doc-detail-grid figcaption{font-size:12px;color:var(--muted)}
.doc-metrics{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.doc-metrics>div{flex:1 1 180px;border:1px solid var(--edge);padding:12px;background:var(--panel)}.doc-metrics dt{font-size:12px;color:var(--muted)}.doc-metrics dd{margin:4px 0 0;font-size:18px;font-weight:600}.doc-method{font-size:12px;color:var(--muted)}.doc-card strong,.doc-detail-grid figcaption{overflow-wrap:anywhere}
.doc-dialog details{margin:18px 0}.doc-dialog summary{cursor:pointer;font-weight:600;padding:7px 0}#doc-folder{display:block;overflow-wrap:anywhere;padding:12px;background:var(--soft)}
@media(max-width:760px){.doc-dialog{height:94vh;max-height:94vh}.doc-content{padding:14px}.doc-detail-grid{grid-template-columns:1fr}.doc-dialog>footer button{width:100%}.doc-pair{align-items:start;flex-direction:column}}
.doc-acquisition{min-width:0;border:1px solid var(--edge);background:var(--panel)}.doc-acquisition>header{padding:12px;border-bottom:1px solid var(--edge)}.doc-acquisition h4{font-size:14px;line-height:1.5;margin:0;overflow-wrap:anywhere}.doc-acquisition>header p{font-size:12px;line-height:1.6;margin:6px 0 0}.doc-acquisition>.doc-card{border:0}.doc-variants{padding:0 12px}.doc-variants-grid{display:grid;gap:12px}.doc-variants .doc-card{background:var(--bg)}.doc-variants summary{font-size:13px;overflow-wrap:anywhere}.doc-tile{font-family:var(--mono);color:var(--ink)}
.doc-retention{padding:10px;margin:10px 0;border-left:3px solid var(--edge);background:var(--bg)}.doc-retention strong{display:block;font-size:12px;line-height:1.5}.doc-retention p{font-size:12px;line-height:1.6;margin:4px 0}.doc-retention small{display:block;font-size:10px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.doc-retention-expiring,.doc-retention-expired{border-left-color:var(--warning,#d4aa75)}.doc-retention-expired strong{color:var(--warning,#d4aa75)}
.doc-local-quality{padding-top:6px;color:var(--ink)}.doc-quality{border:1px solid var(--edge);padding:14px;margin:12px 0;background:var(--panel)}.doc-quality strong{font-size:15px;line-height:1.5}.doc-quality>p{font-size:12px;line-height:1.7;margin-top:6px}.doc-quality-limited{border-left:3px solid var(--warning,#d4aa75)}.doc-quality-filtered{border-left:3px solid var(--accent)}.doc-card .doc-quality-limited{padding-left:8px}.doc-pair-quality{color:var(--ink)}.doc-comparison-group{border:1px solid var(--edge);margin-bottom:12px}.doc-comparison-group>details{padding:0 12px}.doc-comparison-group summary{font-size:12px;overflow-wrap:anywhere}.doc-pair>div{min-width:0;overflow-wrap:anywhere}.doc-pair>button{flex-shrink:0}.doc-raw-metrics,.doc-raw-mask{padding:10px;border:1px dashed var(--edge);color:var(--muted)}.doc-raw-mask figure{margin:0;max-width:400px}.doc-raw-mask img{max-width:100%;height:auto}.doc-raw-mask figcaption{font-size:12px;line-height:1.6}.doc-detail-grid .doc-retention{margin-top:8px}.doc-dialog .doc-method{overflow-wrap:anywhere}
@media(max-width:760px){.doc-grid{grid-template-columns:minmax(0,1fr)}.doc-pair{gap:10px}.doc-pair>button{width:100%}.doc-quality{padding:10px}.doc-variants{padding:0 9px}}
.doc-retention-protected{border-left-color:var(--accent)}
.doc-protect-btn{width:100%;margin:6px 0;font-size:12px}.doc-protect-btn.is-protected{border-color:var(--accent);font-weight:600}
