/* Dokumentenablage (Simulation): structure tree, list with preview, filing dialog.
   Builds on sim.css (dv-*); only what the list needs on top. */
.dms { flex: 1 1 auto; min-height: 0; display: flex; }
.dms-tree { flex: 0 0 196px; border-right: 1px solid var(--dv-line); display: flex; flex-direction: column; min-height: 0; background: #fff; overflow: auto; }
.dms-tree .dv-tree { padding-top: 2px; overflow: visible; flex: 0 0 auto; }
.dms-tree .dv-tree .it { white-space: nowrap; }
.dms-n { margin-left: auto; padding-left: 8px; color: var(--dv-muted); font-size: 11px; }
.dms-tree a.it.sel .dms-n { color: var(--dv-text); }
.dms-navextra { flex: 0 0 auto !important; padding-top: 0 !important; }
.dms-main { flex: 1 1 auto; min-width: 0; min-height: 0; display: flex; flex-direction: column; }
.dms-filter { flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: flex-end; padding: 6px 10px; background: linear-gradient(#F7F9F5, #E9EEE4); border-bottom: 1px solid var(--dv-line); }
.dms-filter label { display: flex; flex-direction: column; gap: 1px; font-size: 11px; color: #3F4A4E; }
.dms-filter .dv-in { font-size: 12px; }
.dms-main > .dv-msg { flex: 0 0 auto; margin: 6px 10px 0; }
.dms-grid { flex: 1 1 40%; min-height: 110px; }
.dms-grid.dragover { outline: 3px dashed var(--dv-green-line); outline-offset: -4px; background: var(--dv-sort); }
.dv-grid td.num { font-variant-numeric: tabular-nums; }
.dms-ext { display: inline-block; min-width: 24px; margin-right: 6px; padding: 0 3px; font-size: 9.5px; line-height: 13px; text-align: center; text-transform: uppercase; color: #fff; background: #B8433A; border-radius: 2px; vertical-align: 1px; }
.dms-ext:empty { display: none; }
.dms-pager { flex: 0 0 auto; display: flex; gap: 8px; align-items: center; padding: 3px 10px; background: var(--dv-grey); border-top: 1px solid var(--dv-line); border-bottom: 1px solid var(--dv-line); }
.dms-pager .grow { flex: 1; }
.dms-pager .note { color: var(--dv-muted); font-size: 11px; }
.dms-pager .dv-btn { padding: 0 9px; }
.dms-detail { flex: 0 0 42%; min-height: 200px; max-height: 50%; display: flex; background: #fff; }
.dms-preview { flex: 1 1 auto; min-width: 0; background: #7B858A; padding: 6px; }
.dms-preview iframe { width: 100%; height: 100%; border: 1px solid #5A6468; background: #fff; }
.dms-info { flex: 0 0 330px; border-left: 1px solid var(--dv-line); overflow: auto; display: flex; flex-direction: column; }
.dms-kv { grid-template-columns: 96px minmax(0, 1fr); padding: 6px 10px; gap: 1px 8px; }
.dms-kv dd { overflow-wrap: anywhere; }
.dms-actions { display: flex; flex-wrap: wrap; gap: 5px; padding: 6px 10px 2px; }
.dms-actions form { margin: 0; }
.dms-hint { margin: auto; padding: 14px 22px; max-width: 560px; text-align: center; color: var(--dv-muted); }
/* filing form (dialog and page) */
.dms-abl-dialog { width: min(640px, 94vw); max-width: none; }
.dms-abl-dialog .db { padding: 10px 14px; max-height: 80vh; overflow: auto; }
.dms-page { padding: 10px 14px; max-width: 760px; overflow: auto; }
.dms-dropzone { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 14px; margin-bottom: 10px; border: 2px dashed var(--dv-green-line); background: var(--dv-sort); border-radius: 3px; text-align: center; cursor: pointer; }
.dms-dropzone.dragover { background: var(--dv-green); }
.dms-dropzone .big { font-weight: 600; font-size: 13px; }
.dms-files { color: var(--dv-muted); }
.dms-fgrid { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: flex-end; }
.dms-fgrid .dv-f.wide { flex: 1 1 100%; }
.dms-fgrid .dv-in.w100 { width: 100%; }
.dms-props-grid { padding: 8px 14px 0; }
.dms-fbtns { display: flex; justify-content: flex-end; gap: 8px; margin-top: 12px; }
.dms-props .dv-actions { margin-top: auto; }
.dms-props { overflow: auto; }
.dv-dialog-back[hidden] { display: none; }
.dms-filter .dv-in.w6 { width: 70px; } .dms-filter .dv-in.w10 { width: 110px; } .dms-filter .dv-in.w12 { width: 120px; }
.dms-filter .dv-in.w16 { width: 150px; }
.dms-info { flex: 0 0 300px; }
.dv-grid td.c-mandant { max-width: 150px; }
.dv-grid td.c-beschreibung { max-width: 250px; } .dv-grid td.c-ordner { max-width: 100px; } .dv-grid td.c-register { max-width: 124px; }
.dms-cell { display: flex; align-items: center; min-width: 0; }
.dms-t { overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.dms-cell .dv-api-mark, .dms-cell .dms-ext { flex: 0 0 auto; }
.dms-detail.empty { flex: 0 0 auto; min-height: 0; max-height: none; border-top: 1px solid var(--dv-line); }
.dms-detail.empty .dms-hint { margin: 0 auto; padding: 8px 22px; max-width: none; }
.dms-pager span { white-space: nowrap; } .dms-pager .note { white-space: normal; flex: 1 1 auto; min-width: 0; }
.dms-filter .dv-in.w24 { width: 170px; }
