.vault-shell{display:grid;gap:14px;min-width:0}.vault-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.vault-toolbar h2{margin:0 0 4px}.vault-toolbar p{margin:0;color:var(--muted)}
.vault-layout{display:grid;grid-template-columns:var(--vault-folder-width,240px) 8px minmax(330px,1fr) 8px var(--vault-preview-width,620px);gap:4px;min-height:calc(100vh - 210px)}.vault-width-resizer{position:relative;min-width:8px;border-radius:4px;cursor:col-resize;touch-action:none;outline:none}.vault-width-resizer::before{content:"";position:absolute;top:12px;bottom:12px;left:3px;width:2px;border-radius:1px;background:rgba(151,174,206,.22);transition:background-color .16s ease,box-shadow .16s ease}.vault-width-resizer:hover::before,.vault-width-resizer:focus-visible::before{background:#64d8c6;box-shadow:0 0 0 2px rgba(100,216,198,.15)}body.vault-width-resizing{cursor:col-resize!important;user-select:none!important}.vault-sidebar,.vault-main,.vault-preview{min-height:0;overflow:hidden}.vault-sidebar{padding:12px}.vault-sidebar-title{padding:4px 8px 10px}.vault-tree-node{width:100%;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;text-align:left;gap:7px;background:transparent;border:0;color:var(--text);padding:8px;border-radius:8px}.vault-tree-node span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-tree-node:hover,.vault-tree-node.active{background:rgba(100,190,255,.13);color:#dff5ff}.vault-tree-node em{font-style:normal;color:var(--muted);font-size:.75rem}.vault-tree-children{margin-left:13px;border-left:1px solid rgba(160,210,255,.14);padding-left:5px}
.vault-main{display:flex;flex-direction:column;padding:0}.vault-main-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid var(--border)}.vault-breadcrumbs{display:flex;align-items:center;gap:6px;min-width:0;overflow:auto}.vault-breadcrumbs button{background:none;border:0;color:var(--muted);padding:4px}.vault-breadcrumbs button.current{color:var(--text);font-weight:700}.vault-items{padding:8px;display:flex;flex-direction:column;gap:4px;overflow:auto;min-height:0;align-content:initial}.vault-item{position:relative;min-height:128px;border:1px solid rgba(150,205,245,.13);background:rgba(170,220,255,.045);border-radius:13px;padding:13px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;color:var(--text);text-align:left;overflow:hidden}.vault-item:hover,.vault-item.selected{border-color:rgba(105,210,255,.72);background:rgba(105,195,255,.12);transform:translateY(-1px)}.vault-folder-card{cursor:pointer}.vault-big-folder{font-size:2.2rem;color:#94d9ff}.vault-file-icon{display:grid;place-items:center;width:48px;height:56px;border-radius:7px;background:rgba(116,209,255,.16);color:#bceaff;font-size:.76rem;font-weight:800}.vault-item strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-item small{color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-select{position:absolute;top:8px;right:8px}.vault-select input{width:18px;height:18px}
.vault-preview{display:flex;flex-direction:column;padding:0;min-width:0}.vault-preview>header{padding:12px;display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border)}.vault-preview-body{min-height:390px;flex:1;display:grid;place-items:center;background:#10151d;overflow:hidden}.vault-preview-frame{width:100%;height:100%;min-height:580px;border:0;background:white}.vault-preview-image{max-width:100%;max-height:100%;object-fit:contain}.vault-preview-meta{padding:12px;overflow:auto}.vault-preview-meta dl{margin:0;display:grid;gap:7px}.vault-preview-meta dl div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:8px}.vault-preview-meta dt{color:var(--muted)}.vault-preview-meta dd{margin:0;overflow-wrap:anywhere}.vault-preview-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.vault-preview-unavailable{text-align:center;padding:24px}.vault-empty,.vault-loading{grid-column:1/-1;display:grid;place-items:center;min-height:240px;color:var(--muted)}
.vault-import-dialog{width:min(1280px,98vw);max-width:1280px;max-height:94vh;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:16px;padding:0}.vault-import-dialog::backdrop,.vault-viewer-dialog::backdrop{background:rgba(0,0,0,.78)}.vault-import-dialog form{padding:24px;display:grid;gap:16px;max-height:92vh;overflow:auto}.vault-import-dialog header{display:flex;justify-content:space-between;align-items:start}.vault-import-dialog h3{margin:0 0 4px}.vault-import-dialog p{margin:0;color:var(--muted)}.vault-import-grid{display:grid;grid-template-columns:minmax(340px,1.35fr) minmax(340px,1.35fr) minmax(150px,.45fr);gap:14px}.vault-import-grid .span-2{grid-column:1/3}.vault-import-grid label{min-width:0}.vault-import-grid input,.vault-import-grid select{width:100%;min-width:0}.vault-import-grid select{font-size:.96rem;text-overflow:ellipsis}.vault-import-grid .wide-select select{min-height:46px}.vault-ocr-review{display:grid;gap:12px;border-top:1px solid var(--border);padding-top:14px}.vault-ocr-review pre{white-space:pre-wrap;max-height:220px;overflow:auto;background:rgba(0,0,0,.28);padding:10px;border-radius:8px}.actions.compact{flex-wrap:wrap}.actions.compact span{font-size:.84rem;color:var(--muted)}
.vault-viewer-dialog{width:min(1500px,98vw);height:min(94vh,1050px);max-width:none;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:16px;padding:0;overflow:hidden}.vault-viewer-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--border)}.vault-viewer-body{height:calc(100% - 62px);background:#0e131a;display:grid;place-items:center}.vault-viewer-body .vault-preview-frame.large{width:100%;height:100%;min-height:0}.vault-viewer-body .vault-preview-image.large{max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:1100px){.vault-layout{grid-template-columns:220px minmax(0,1fr);gap:14px}.vault-width-resizer{display:none}.vault-preview{position:fixed;right:12px;top:80px;bottom:12px;width:min(540px,calc(100vw - 24px));z-index:80;transform:translateX(calc(100% + 30px));transition:.2s}.vault-preview.open{transform:none;box-shadow:0 20px 60px rgba(0,0,0,.5)}.vault-import-grid{grid-template-columns:1fr 1fr}.vault-import-grid .span-2{grid-column:1/-1}}
@media(max-width:720px){.vault-toolbar,.vault-main-toolbar{align-items:stretch;flex-direction:column}.vault-layout{grid-template-columns:1fr;min-height:auto}.vault-sidebar{max-height:220px;overflow:auto}.vault-items{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.vault-item{min-height:115px}.vault-import-dialog{width:98vw}.vault-import-dialog form{padding:15px}.vault-import-grid{grid-template-columns:1fr}.vault-import-grid .span-2{grid-column:auto}.vault-viewer-dialog{width:100vw;height:100dvh;border-radius:0}.vault-viewer-dialog>header{padding:10px}.vault-preview-frame{min-height:70vh}}

/* V10.10 compact File Vault metadata */
.vault-preview-meta{padding:9px 11px 11px;overflow:auto}
.vault-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}
.vault-meta-grid>div{min-width:0;padding:7px 8px;border:1px solid rgba(145,205,245,.14);border-radius:9px;background:rgba(126,196,255,.045)}
.vault-meta-grid span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.055em}
.vault-meta-grid strong{display:block;margin-top:2px;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vault-original-name{margin-top:7px;color:var(--muted);font-size:.74rem}.vault-original-name summary{cursor:pointer;color:#9ecdf2}.vault-original-name span{display:block;margin-top:4px;overflow-wrap:anywhere}
.vault-preview-actions{margin-top:9px}.vault-preview-actions button,.vault-preview-actions .button{padding:7px 9px;font-size:.75rem}
@media(max-width:520px){.vault-meta-grid{grid-template-columns:1fr 1fr}.vault-meta-grid strong{font-size:.76rem}}


/* V10.13 — compact Finder-style list and wide editable preview */
.vault-list-header,.vault-row{display:grid;grid-template-columns:28px 38px minmax(150px,1fr) minmax(95px,.55fr) 58px minmax(86px,.55fr) 82px;align-items:center;gap:8px;min-width:650px}
.vault-list-header{position:sticky;top:0;z-index:3;padding:7px 9px;background:rgba(15,23,34,.97);border-bottom:1px solid var(--border);color:var(--muted);font-size:.69rem;text-transform:uppercase;letter-spacing:.045em}
.vault-row{width:100%;min-height:52px;padding:7px 9px;border:1px solid transparent;border-radius:9px;background:rgba(126,196,255,.025);color:var(--text);text-align:left}
button.vault-row{font:inherit}.vault-row:hover,.vault-row.selected{border-color:rgba(105,210,255,.48);background:rgba(120,205,255,.10)}
.vault-row .vault-select{position:static;display:grid;place-items:center}.vault-file-icon.compact{width:31px;height:36px;font-size:.62rem}.vault-folder-list-icon{font-size:1.45rem;color:#94d9ff;text-align:center}
.vault-row-name{min-width:0;display:flex;flex-direction:column}.vault-row-name strong,.vault-row-name small,.vault-row-type,.vault-row-vendor{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-row-name small{color:var(--muted);font-size:.67rem}.vault-row-type,.vault-row-year,.vault-row-vendor,.vault-row-amount{font-size:.73rem;color:#c8d7e6}.vault-row-amount{text-align:right;font-variant-numeric:tabular-nums}
.vault-preview-body{min-height:440px}.vault-preview-frame{min-height:620px}.vault-preview-meta{max-height:310px}
.vault-preview-editor{display:grid;gap:8px}.vault-preview-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.vault-preview-editor-grid label{min-width:0;font-size:.68rem;color:var(--muted)}.vault-preview-editor-grid label.wide{grid-column:1/-1}.vault-preview-editor-grid input,.vault-preview-editor-grid select{width:100%;min-width:0;padding:7px 8px;font-size:.76rem}
.vault-inline-status{min-height:1.25em;margin:2px 0 0;color:var(--muted);font-size:.76rem}.vault-inline-status.success{color:var(--success)}.vault-inline-status.error{color:var(--danger)}
@media(max-width:1100px){.vault-list-header,.vault-row{min-width:620px}.vault-preview-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-preview-editor-grid label.wide{grid-column:1/-1}}
@media(max-width:720px){.vault-list-header,.vault-row{grid-template-columns:26px 34px minmax(150px,1fr) 82px;min-width:430px}.vault-list-header>*:nth-child(5),.vault-list-header>*:nth-child(6),.vault-list-header>*:nth-child(7),.vault-row>*:nth-child(5),.vault-row>*:nth-child(6),.vault-row>*:nth-child(7){display:none}.vault-preview-editor-grid{grid-template-columns:1fr 1fr}}

/* V10.16 — metadata sorting, full folder operations and wider import review */
.vault-import-dialog{width:min(1800px,99vw);max-width:1800px}
.vault-import-dialog form{padding:28px}
.vault-toolbar-actions{justify-content:flex-end}
.vault-sort-control{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.72rem}
.vault-sort-control select{min-width:135px;padding:7px 9px}
.vault-folder-dialog{width:min(760px,96vw);background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:16px;padding:0}
.vault-folder-dialog::backdrop{background:rgba(0,0,0,.78)}
.vault-folder-dialog form{display:grid;gap:16px;padding:22px}
.vault-folder-dialog header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.vault-folder-dialog h3,.vault-folder-dialog p{margin:0}
.vault-folder-dialog label{display:grid;gap:7px}
.vault-folder-dialog select{width:100%;min-height:48px}
.vault-folder-dialog footer{display:flex;justify-content:flex-end}
@media(max-width:900px){.vault-toolbar-actions{justify-content:flex-start}.vault-sort-control{width:100%}.vault-sort-control select{flex:1}.vault-import-dialog form{padding:16px}}

/* V10.17 Import Document uses the available desktop width. */
@media(min-width:901px){
  .vault-import-dialog{width:calc(100vw - 32px)!important;max-width:none!important}
  .vault-import-dialog form{width:100%;padding:30px 34px}
  .vault-import-dialog .form-grid,.vault-import-dialog .vault-import-grid{grid-template-columns:repeat(4,minmax(210px,1fr));gap:18px}
  .vault-import-dialog label,.vault-import-dialog select,.vault-import-dialog input{min-width:0}
}
