/* Document workbench: shared tools above navigation, file list and inspector.
 * Native actions and Angular visibility remain authoritative. All dimensions
 * use logical properties so the same components support Arabic and English. */
@media screen {
  .sx-documents-workspace.dms-view {
    --sx-doc-ink:var(--sx-text); --sx-doc-muted:var(--sx-muted); --sx-doc-border:var(--sx-border);
    --sx-doc-border-strong:var(--sx-border-strong); --sx-doc-surface:var(--sx-surface);
    --sx-doc-brand:var(--sx-primary); --sx-doc-brand-soft:var(--sx-brand-soft); --sx-doc-focus:var(--sx-primary);
    width:100%; max-width:none; min-width:0; height:auto; min-height:100%; margin:0; padding:24px; color:var(--sx-text); background:var(--sx-canvas); overflow:visible;
  }
  .sx-documents-workspace > .panel { height:auto; border:0; margin:0; box-shadow:none; background:transparent; }
  .sx-documents-workspace > .panel > .padder { height:auto; padding:0; }
  .sx-documents-workspace .sx-workspace-heading { margin-bottom:20px; }
  .sx-documents-workspace .sx-documents-header { padding:0 0 14px; border:0; }
  .sx-documents-header .row { margin:0; min-width:0; }
  .sx-documents-header .row:not(.ng-hide) { display:flex; align-items:center; gap:12px; }
  .sx-documents-header .row:before, .sx-documents-header .row:after, .sx-documents-header .clearfix { display:none; }
  .sx-documents-header .sx-documents-location-actions { order:3; }
  .sx-documents-header .sx-documents-location-actions .btn { width:36px; padding:6px; }
  .sx-documents-header .sx-folder-toggle { flex:0 0 auto; }
  .sx-documents-header .breadcrumbs { flex:1; width:0; min-width:0; padding:0; overflow-x:auto; scrollbar-width:thin; }
  .sx-documents-header .breadcrumbs:not(.ng-hide) { display:flex; align-items:center; gap:6px; }
  .sx-documents-workspace .breadcrumbs .btn { flex:0 0 auto; max-width:280px; min-height:36px; padding:7px 4px; border:0; border-radius:0; color:var(--sx-muted); background:transparent; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .sx-documents-workspace .breadcrumbs .btn:last-of-type { color:var(--sx-text); font-weight:600; }
  .sx-documents-workspace .sx-documents-toolbar { padding:12px; margin-bottom:16px; background:var(--sx-surface); border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); }
  .sx-documents-workspace .sx-documents-primary-actions:not(.ng-hide),
  .sx-documents-workspace .sx-documents-location-actions:not(.ng-hide),
  .sx-documents-workspace .sx-documents-secondary-options:not(.ng-hide) { display:flex; align-items:center; gap:8px; }
  .sx-documents-workspace .sx-documents-primary-actions { width:100%; float:none !important; flex-wrap:wrap; }
  .sx-documents-workspace .sx-documents-location-actions { order:2; }
  .sx-documents-location-actions > .btn-group { margin:0; }
  .sx-documents-header .sx-documents-location-actions .btn-group > .btn { width:44px; }
  .sx-documents-workspace .sx-documents-create-menu { order:2; margin:0; }
  .sx-documents-workspace .sx-documents-search { order:0; flex:1 1 240px; min-width:160px; position:relative; margin:0; }
  .sx-documents-search .form-inline { display:block; width:100%; }
  .sx-documents-workspace .sx-documents-search .form-control { width:100%; height:40px; padding-inline:36px 12px; border:1px solid var(--sx-border); border-radius:var(--sx-radius); box-shadow:none; background:var(--sx-surface-muted); font-size:13px; }
  .sx-documents-workspace .sx-documents-search > .btn { position:absolute; inset-inline-start:0; top:0; width:36px; border:0; background:transparent; color:var(--sx-muted); }
  .sx-documents-workspace .sx-documents-filters { order:1; position:relative; margin:0; }
  .sx-documents-primary-actions > .btn, .sx-documents-primary-actions > .sx-documents-more-toggle { order:3; }
  .sx-documents-primary-actions > .sx-documents-secondary-options { order:4; }
  .sx-documents-workspace .sx-documents-secondary-options { flex-basis:100%; flex-wrap:wrap; border-top:1px solid var(--sx-border); padding-top:12px; margin-top:4px; }
  .sx-documents-workspace .sx-documents-toolbar .btn, .sx-documents-header .btn { height:40px; min-height:40px; padding:8px 12px; font-size:13px; border-radius:var(--sx-radius); white-space:nowrap; }
  .sx-documents-workspace .sx-documents-toolbar .btn:not(.ng-hide) { display:inline-flex; align-items:center; justify-content:center; gap:6px; }
  .sx-documents-workspace .sx-documents-toolbar .btn .visible-lg-inline { display:inline !important; }
  .sx-documents-workspace .dropdown-menu { min-width:190px; max-width:min(340px,calc(100vw - 40px)); text-align:start; border:1px solid var(--sx-border); border-radius:var(--sx-radius); box-shadow:0 8px 24px #102b1f18; }
  .sx-documents-workspace .dropdown-menu > li > a { padding:9px 14px; white-space:normal; font-size:13px; }
  .sx-documents-workspace #current-filters { position:absolute; top:calc(100% + 8px); inset-inline-end:0; z-index:60; width:min(380px,calc(100vw - 48px)); padding:16px; border:1px solid var(--sx-border); background:var(--sx-surface); border-radius:var(--sx-radius-lg); box-shadow:0 8px 24px #102b1f18; max-height:60vh; overflow-y:auto; }
  .sx-documents-workspace #current-filters .form-control { width:100%; min-width:0; }
  .sx-documents-workspace #items-filter { display:block; }
  .sx-filter-profile__toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; padding:10px 16px; border:0; background:transparent; color:var(--sx-text); text-align:start; font:inherit; }
  .sx-filter-profile__toggle:hover, .sx-filter-profile__toggle[aria-expanded="true"] { background:var(--sx-surface-muted,#f3f7f5); color:var(--sx-primary); }
  .sx-filter-profile__toggle[aria-expanded="true"] i { transform:rotate(180deg); }
  .sx-filter-profile__fields { list-style:none; margin:0 12px 8px; padding:0; border-inline-start:2px solid var(--sx-border); }
  .sx-filter-profile__fields a { display:block; padding:9px 16px; white-space:normal; color:var(--sx-text); }
  .sx-filter-profile__fields a:hover, .sx-filter-profile__fields a:focus { background:var(--sx-surface-muted,#f3f7f5); color:var(--sx-primary); }

  .sx-documents-workspace #items-filter.open > .dropdown-menu { position:static; float:none; width:100%; max-height:280px; overflow-y:auto; margin-top:8px; }
  .sx-archive-import-progress { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:12px 16px; border-bottom:1px solid var(--sx-border); background:var(--sx-surface-muted); font-size:12px; }
  .sx-archive-import-progress strong { max-width:45%; overflow-wrap:anywhere; }
  .sx-documents-workspace .sx-documents-search-context { font-size:12px; line-height:1.7; }
  .sx-documents-workspace .sx-documents-active-filters .btn { margin:3px; }
  .sx-documents-workspace .sx-documents-layout { position:relative; height:auto; margin:0; gap:16px; min-width:0; align-items:stretch; grid-template-columns:212px minmax(0,1fr); }
  .sx-documents-workspace .sx-documents-layout:not(.ng-hide) { display:grid; }
  .sx-documents-workspace.sx-documents-preview-open .sx-documents-layout { grid-template-columns:212px minmax(0,1fr) 300px; }
  .sx-documents-workspace.sx-documents-folders-collapsed .sx-documents-layout { grid-template-columns:minmax(0,1fr); }
  .sx-documents-workspace.sx-documents-folders-collapsed.sx-documents-preview-open .sx-documents-layout { grid-template-columns:minmax(0,1fr) 300px; }
  .sx-documents-layout:before, .sx-documents-layout:after { display:none; }
  .sx-documents-workspace .sx-documents-tree { flex:0 0 212px; width:212px; min-width:0; float:none; border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); background:var(--sx-surface); overflow:hidden; }
  .sx-documents-workspace .sx-documents-tree .tree-title { padding:15px 16px; font-size:13px; font-weight:600; text-align:start; border-bottom:1px solid var(--sx-border); min-height:56px; }
  .sx-documents-workspace .sx-folder-close { padding:0; width:24px; height:24px; min-height:24px; border:0; }
  .sx-documents-workspace .sx-documents-tree cabinets-tree { display:block; padding:8px; overflow:auto; max-height:calc(100vh - 340px); min-height:300px; }
  .sx-documents-workspace .sx-documents-tree .cabinet > a { display:flex; align-items:center; gap:8px; padding:10px 8px; margin:2px 0; border:0; border-radius:var(--sx-radius); font-size:13px; font-weight:500; line-height:1.5; min-height:40px; }
  .sx-documents-workspace .sx-documents-tree .cabinet > a i { flex:0 0 18px; margin:0; font-size:16px; }
  .sx-documents-workspace .sx-tree-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .sx-documents-workspace .sx-documents-tree .cabinet > a.active { background:var(--sx-brand-soft); color:var(--sx-primary); font-weight:600; }
  .sx-documents-workspace .sx-documents-tree a:hover { background:var(--sx-surface-muted); }
  .sx-documents-workspace treecontrol li { padding-top:0; padding-bottom:0; min-width:0; }
  .sx-documents-workspace treecontrol li .tree-label { display:inline-block; max-width:calc(100% - 25px); min-height:34px; padding:7px 4px; font-size:12px; vertical-align:middle; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .sx-documents-workspace treecontrol li .tree-selected { color:var(--sx-primary); background:var(--sx-brand-soft); border-radius:4px; }
  .sx-documents-workspace.sx-documents-folders-collapsed .sx-documents-tree { display:none; }
  .sx-documents-browse .sx-documents-results.no-padder, .sx-documents-browse .sx-documents-results > .box { display:contents; }
  .sx-documents-workspace .sx-documents-files { position:relative; display:flex; flex-direction:column; min-width:0; min-height:360px; background:var(--sx-surface); border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); }
  .sx-documents-panel-header { display:flex; align-items:center; flex-wrap:wrap; gap:12px; min-height:56px; padding:12px 16px; border-bottom:1px solid var(--sx-border); }
  .sx-documents-panel-header h4 { margin:0; font-size:13px; font-weight:600; line-height:1.6; }
  .sx-documents-panel-header h4 i { margin-inline-end:6px; }
  .sx-documents-panel-header document-pagination-panel { flex:1; min-width:0; font-size:12px; color:var(--sx-muted); text-align:end; }
  .sx-documents-workspace .sx-documents-results-utility { min-height:52px; padding:8px 12px; gap:10px; background:var(--sx-surface); border-bottom:1px solid var(--sx-border); }
  .sx-documents-workspace .sx-documents-results-utility:not(.ng-hide) { display:flex; align-items:center; flex-wrap:wrap; }
  .sx-documents-pagination-summary .pull-right { float:none !important; }
  .sx-documents-pagination-summary .DocumentPaginationPanel-selector { clear:both; }
  .sx-documents-workspace .sx-documents-selection-tools:not(.ng-hide) { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
  .sx-documents-selection-tools .btn { min-height:32px; font-size:12px; border-radius:var(--sx-radius); }
  .sx-documents-selection-tools.has-selection { color:var(--sx-primary); }
  .sx-documents-selection-count { padding-inline:4px; font-size:12px; }
  .sx-documents-workspace .sx-documents-browser { display:contents; }
  .sx-documents-workspace .sx-documents-results-list { position:relative; display:block; flex:1; min-width:0; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; padding:0; min-height:280px; max-height:calc(100vh - 430px); background:var(--sx-surface); border-radius:0 0 var(--sx-radius-lg) var(--sx-radius-lg); }
  .sx-documents-workspace .sx-file-list-heading { position:sticky; top:0; z-index:2; display:grid; grid-template-columns:minmax(0,1fr) 100px 56px 88px 28px; gap:12px; padding:12px 16px; border-bottom:1px solid var(--sx-border); background:var(--sx-surface-muted); color:var(--sx-muted); font-size:11px; }
  .sx-documents-workspace .sx-documents-row { position:relative; min-height:70px; padding:12px 16px; margin:0; border:0; border-bottom:1px solid var(--sx-border); font-size:13px; line-height:1.5; cursor:pointer; }
  .sx-documents-workspace .sx-documents-row:not(.ng-hide) { display:grid; grid-template-columns:28px minmax(0,1fr) 100px 156px 28px; align-items:center; gap:12px; }
  .sx-documents-workspace .sx-documents-row:last-of-type { border-bottom:0; }
  .sx-documents-workspace .sx-documents-row:hover { background:var(--sx-surface-muted); }
  .sx-documents-workspace .sx-documents-row-selected { background:var(--sx-brand-soft); box-shadow:inset 0 0 0 1px var(--sx-border-strong); }
  .sx-documents-workspace .sx-documents-row > .fa-stack { margin:0; width:28px; height:32px; line-height:32px; font-size:13px; }
  .sx-documents-workspace .sx-documents-row .selected-item-icon { font-size:12px; background:var(--sx-brand-soft); border-radius:50%; width:16px; height:16px; line-height:16px; top:16px; inset-inline-end:-4px; inset-inline-start:auto; }
  .sx-documents-workspace .sx-documents-row > a { color:var(--sx-text); min-width:0; font-weight:500; word-break:normal; }
  .sx-documents-workspace .sx-file-name { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; line-height:1.7; }
  .sx-documents-workspace .sx-documents-row .dms-item-description { font-size:10px; font-weight:400; line-height:1.6; color:var(--sx-muted); margin-top:3px; }
  .sx-documents-workspace .sx-documents-row small[ng-show="document.description"], .sx-documents-workspace .sx-documents-row small[ng-show="directory.description"] { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .sx-documents-workspace .sx-documents-row .label { display:inline-block; padding:3px 5px; font-size:10px; font-weight:500; border-radius:4px; line-height:1.2; margin-inline:0 3px; }
  .sx-documents-workspace .sx-file-category { min-width:0; font-size:11px; }
  .sx-documents-workspace .sx-file-category .label { max-width:100px; overflow:hidden; text-overflow:ellipsis; vertical-align:middle; white-space:nowrap; }
  .sx-documents-workspace .sx-document-row-meta { display:grid; grid-template-columns:56px 88px; gap:12px; color:var(--sx-muted); font-size:11px; white-space:nowrap; }
  .sx-documents-workspace .sx-documents-row > [data-document-row-actions] { grid-column:-2; float:none !important; }
  .sx-documents-workspace .sx-documents-row > [data-document-row-actions] .btn { width:28px; height:32px; padding:0; color:var(--sx-muted); }
  .sx-documents-workspace .sx-documents-row .dropdown-menu { inset-inline-start:auto; inset-inline-end:0; top:100%; }
  .sx-documents-workspace .sx-documents-row[directory] > a { grid-column:2 / -2; }
  .sx-documents-workspace .sx-documents-row > a[ng-if="document.object_type == 'TrashTransaction'"] { grid-column:2 / -2; }
  .sx-documents-workspace .sx-documents-results-list > [role="status"], .sx-documents-workspace .sx-documents-results-list > [role="alert"] { position:static; padding:64px 24px; transform:none; }
  .sx-documents-workspace .sx-documents-preview { background:var(--sx-surface); border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); min-width:0; max-height:calc(100vh - 310px); overflow-y:auto; overscroll-behavior:contain; }
  .sx-documents-preview document-inspector { display:block; }
  .sx-documents-preview .sx-documents-preview-header { padding:16px; min-height:56px; position:sticky; top:0; z-index:2; background:var(--sx-surface); }
  .sx-documents-preview-header h4 { margin:0; font-size:13px; line-height:1.6; font-weight:600; overflow-wrap:anywhere; padding-inline-end:30px; }
  .sx-documents-preview-header h4 > i { margin-inline-end:6px; }
  .sx-documents-preview-header > button { position:absolute; inset-inline-end:10px; top:12px; height:32px; width:32px; }
  .sx-documents-preview .wrapper { padding:16px; }
  .sx-inspector-file-name { margin:0 0 16px; font-size:13px; font-weight:600; line-height:1.7; overflow-wrap:anywhere; }
  .sx-documents-workspace .sx-documents-preview .sx-action-row:not(.ng-hide) { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:20px; }
  .sx-documents-workspace .sx-documents-preview .sx-action-row > .btn { min-width:0; min-height:40px; padding:9px; font-size:12px; }
  .sx-inspector-primary-actions { display:flex; align-items:center; gap:8px; grid-column:1 / -1; min-width:0; }
  .sx-inspector-primary-actions > .btn { flex:1; min-width:0; height:40px; padding:9px; font-size:12px; border-radius:var(--sx-radius); }
  .sx-inspector-primary-actions .sx-documents-ai-assistant { display:contents; }
  .sx-documents-ai-assistant .sx-icon-button { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; padding:0; border-radius:var(--sx-radius); }
  .sx-documents-ai-assistant .sx-icon-button i { margin:0; }
  .sx-documents-bulk-ai .ai-assistant-entry { display:block; }
  .sx-documents-bulk-ai .btn { display:flex; align-items:center; gap:8px; width:100%; border:0; border-radius:0; padding:8px 20px; text-align:start; }
  .sx-tree-status { padding:16px; color:var(--sx-muted); font-size:12px; line-height:1.6; }
  .sx-documents-loading { display:flex; align-items:center; justify-content:center; gap:10px; color:var(--sx-muted); }
  .sx-documents-workspace .sx-documents-category-tags { margin:12px 0; display:flex; flex-wrap:wrap; gap:4px; }
  .sx-documents-category-tags .label { background:var(--sx-brand-soft); color:var(--sx-primary); white-space:normal; padding:5px 8px; font-weight:500; }
  .sx-documents-workspace .sx-documents-preview-details { display:grid; grid-template-columns:minmax(70px, .8fr) minmax(0,1.2fr); gap:12px; margin:0; font-size:12px; line-height:1.6; }
  .sx-documents-preview-details dt { color:var(--sx-muted); font-weight:400; padding:0; }
  .sx-documents-preview-details dd { margin:0; min-width:0; overflow-wrap:anywhere; padding:0; }
  .sx-inspector-thumbnail { position:relative; display:block; width:100%; padding:14px; margin:0 0 16px; border:1px solid var(--sx-border); border-radius:var(--sx-radius); background:var(--sx-surface-muted); color:var(--sx-muted); }
  attachment-thumbnail { display:flex; align-items:center; justify-content:center; min-height:120px; }
  attachment-thumbnail canvas, attachment-thumbnail img { max-width:100%; max-height:150px; width:auto; height:auto; box-shadow:0 2px 8px #102b1f18; }
  .sx-thumbnail-status { display:flex; flex-direction:column; align-items:center; gap:12px; font-size:12px; }
  .sx-thumbnail-status i { font-size:32px; }
  .sx-inspector-thumbnail-caption { position:absolute; bottom:8px; inset-inline-end:8px; font-size:11px; }
  .sx-documents-workspace .sx-documents-upload-queue { position:fixed; bottom:16px; inset-inline-end:24px; width:min(480px,calc(100vw - 32px)); z-index:70; background:var(--sx-surface); border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); box-shadow:0 8px 24px #102b1f18; }
  .sx-documents-workspace #upload-panel-toggle { padding:12px; cursor:pointer; }
  .sx-documents-workspace #upload-panel-content { max-height:38vh; overflow:auto; }
  .sx-documents-workspace a:focus-visible, .sx-documents-workspace button:focus-visible, .sx-documents-workspace input:focus-visible, .sx-documents-workspace [tabindex]:focus-visible { outline:2px solid var(--sx-primary); outline-offset:2px; }
  /* Wide workspaces show three independent panels. Medium screens keep the
     file list readable and offer the folder tree in a drawer. */
  @media(min-width:1051px) and (max-width:1439px) {
    .sx-documents-workspace.sx-documents-preview-open .sx-documents-layout { grid-template-columns:minmax(0,1fr) 300px; }
    .sx-documents-workspace.sx-documents-preview-open .sx-documents-tree { display:none; }
    .sx-documents-workspace.sx-documents-preview-open.sx-documents-folders-open .sx-documents-tree { display:block; position:absolute; top:0; inset-inline-start:0; width:260px; z-index:40; box-shadow:0 8px 24px #102b1f24; }
  }
  @media(max-width:1050px) {
    .sx-documents-workspace .sx-documents-layout, .sx-documents-workspace.sx-documents-preview-open .sx-documents-layout, .sx-documents-workspace.sx-documents-folders-collapsed.sx-documents-preview-open .sx-documents-layout { grid-template-columns:minmax(0,1fr); }
    .sx-documents-workspace .sx-documents-preview { position:absolute; top:0; inset-inline-end:0; width:320px; z-index:30; box-shadow:0 8px 24px #102b1f24; }
  }
  @media(max-width:1050px) {
    .sx-documents-workspace .sx-documents-tree { display:none; }
    .sx-documents-workspace.sx-documents-folders-open .sx-documents-tree { display:block; position:absolute; top:0; inset-inline-start:0; z-index:40; width:260px; box-shadow:0 8px 24px #102b1f24; }
    .sx-documents-workspace .sx-documents-tree cabinets-tree { max-height:calc(100vh - 350px); }
  }
  @media(max-width:767px) {
    .sx-documents-workspace.dms-view { padding:16px; }
    .sx-documents-workspace .sx-workspace-heading__hint { display:none; }
    .sx-documents-workspace .sx-documents-search { flex-basis:100%; }
    .sx-documents-workspace .sx-documents-toolbar { padding:10px; }
    .sx-documents-workspace .sx-documents-toolbar .btn { padding-inline:10px; }
    .sx-documents-workspace .sx-documents-location-actions { order:2; }
    .sx-documents-workspace .sx-documents-more-toggle { margin-inline-start:auto; }
    .sx-documents-workspace .sx-file-list-heading { grid-template-columns:1fr 28px; }
    .sx-documents-workspace .sx-file-list-heading > span:nth-child(2), .sx-documents-workspace .sx-file-list-heading > span:nth-child(3), .sx-documents-workspace .sx-file-list-heading > span:nth-child(4) { display:none; }
    .sx-documents-workspace .sx-documents-row:not(.ng-hide) { grid-template-columns:28px minmax(0,1fr) 28px; gap:10px; padding:12px; }
    .sx-documents-workspace .sx-file-category, .sx-documents-workspace .sx-document-row-meta { display:none; }
    .sx-documents-workspace .sx-documents-preview { position:relative; width:100%; box-shadow:none; max-height:none; }
    .sx-documents-preview-open .sx-documents-files { display:none !important; }
    .sx-documents-workspace .sx-documents-preview-details { grid-template-columns:1fr 1.4fr; }
  }
}

/* Batch review keeps each source, decision and metadata group together. */
.ai-archive-workspace .ai-archive-item-summary { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.ai-archive-workspace .ai-archive-item-summary strong { flex:1; min-width:160px; overflow-wrap:anywhere; }
.ai-archive-workspace .ai-archive-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; }
.ai-archive-workspace .ai-archive-fields label { display:block; margin-bottom:6px; }
.ai-archive-workspace .ai-archive-metadata { margin-top:18px; border-top:1px solid #dde6df; padding-top:12px; }
.ai-archive-workspace summary { cursor:pointer; font-weight:600; padding:8px 0; }
.ai-archive-workspace .btn i { margin-inline-end:6px; }
.ai-archive-workspace input[type=file] { width:100%; padding:12px; border:1px dashed #9eb4a8; border-radius:8px; }
@media(max-width:600px) { .ai-archive-workspace .ai-archive-fields { grid-template-columns:1fr; } }

/* Shared document workspace and viewer: clear hierarchy, native operations. */
@media screen {
  .attachment-viewer.sx-document-viewer { padding: 16px 52px; background: rgba(19, 31, 27, .86); color: #243d34; }
  .sx-document-viewer .attachment-viewer-content { display: flex; flex-direction: column; height: 100%; background: #eef2f0; border-radius: 14px; overflow: hidden; box-shadow: 0 20px 80px rgba(0,0,0,.3); }
  .sx-document-viewer .attachment-viewer-header { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; height: auto; min-height: 72px; flex: 0 0 auto; padding: 16px 20px; background: #fff; border-bottom: 1px solid #dee7e2; }
  .sx-document-viewer .attachment-viewer-header h2 { display: flex; align-items: center; gap: 10px; flex: 1 1 240px; min-width: 0; font-size: 16px; font-weight: 600; }
  .sx-document-viewer .attachment-viewer-header h2 span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .sx-document-viewer .sx-viewer-primary-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  .sx-document-viewer .sx-viewer-primary-actions .btn, .sx-document-viewer .sx-viewer-tools .btn,
  .sx-document-insights .btn, .sx-document-insights-header .btn { min-height: 40px; border-radius: 8px; font-size: 13px; padding: 9px 12px; }
  .sx-document-viewer .sx-viewer-primary-actions .btn { display: inline-flex; align-items: center; gap: 7px; }
  .sx-document-viewer .sx-viewer-tools:not(.ng-hide) { display: flex; }
  .sx-document-viewer .sx-viewer-tools { flex: 0 0 auto; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px 20px; position: relative; z-index: 3; overflow: visible; background: #f7faf8; border-bottom: 1px solid #dee7e2; }
  .sx-document-viewer .sx-viewer-tools .pull-right { float: none !important; }
  .sx-document-viewer .attachment-viewer-content-inner { position: relative; z-index: 1; display: flex; flex: 1 1 auto; min-height: 0; height: auto; background: #edf1ef; color: #243d34; }
  .sx-document-viewer .attachment-viewer-content-info { flex: 0 0 280px; width: 280px; float: none; height: auto; overflow-y: auto; border-inline-end: 1px solid #dee7e2; }
  .sx-document-viewer .attachment-viewer-content-info .wrapper { padding: 12px 16px; }
  .sx-document-viewer .attachment-viewer-content-info .wrapper-sm { padding: 14px 0; line-height: 1.7; overflow-wrap: anywhere; }
  .sx-document-viewer .attachment-viewer-content-info strong { font-size: 12px; color: #60766b; font-weight: 500; }
  .sx-document-viewer .attachment-viewer-content-info .label { display: inline-block; margin-block: 3px; padding: 6px 8px; border-radius: 5px; white-space: normal; }
  .sx-document-viewer .sx-viewer-canvas { flex: 1 1 auto; min-width: 0; height: 100%; }
  .sx-document-viewer .attachment-viewer-nav .prev, .sx-document-viewer .attachment-viewer-nav .next { width: 36px; height: 36px; color: white; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.15); }
  .sx-document-viewer .attachment-viewer-nav .prev { left: auto !important; right: auto !important; inset-inline-start: 8px !important; }
  .sx-document-viewer .attachment-viewer-nav .next { left: auto !important; right: auto !important; inset-inline-end: 8px !important; }
  .sx-document-viewer .attachment-viewer-nav .fa-2x { font-size: 16px; }
  .sx-document-insights-header { display: flex; align-items: start; justify-content: space-between; gap: 16px; padding: 20px 24px; }
  .sx-document-insights-header::before, .sx-document-insights-header::after { display: none; }
  .ai-summary-modal .modal-dialog { margin-block: 24px; }
  .ai-summary-modal .modal-content { display: flex; flex-direction: column; max-height: calc(100vh - 48px); }
  .ai-summary-modal .modal-header, .ai-summary-modal .modal-footer { flex: 0 0 auto; }
  .ai-summary-modal .modal-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; }
  .sx-document-insights-header .modal-title { font-size: 20px; }
  .sx-document-insights-header p { margin: 6px 0 0; font-size: 13px; overflow-wrap: anywhere; }
  .sx-icon-button { width: 40px; min-width: 40px; }
  .sx-document-insights { padding: 0 24px 24px; font-size: 14px; }
  .sx-insights-tabs { display: flex; gap: 24px; border-bottom: 1px solid #dee7e2; }
  .sx-insights-tabs button { background: none; border: 0; border-bottom: 3px solid transparent; padding: 16px 2px 12px; color: #60766b; }
  .sx-insights-tabs button.active { border-bottom-color: #176b59; color: #176b59; font-weight: 600; }
  .sx-insights-panel { padding-top: 22px; line-height: 1.8; }
  .sx-category-proposal { border: 1px solid #dee7e2; border-radius: 12px; background: #f8fbf9; padding: 20px; margin-block: 18px; }
  .sx-proposal-label { color: #176b59; font-size: 12px; font-weight: 600; }
  .sx-category-proposal h4 { font-size: 20px; margin: 8px 0; }
  .sx-category-proposal details { margin-top: 12px; color: #60766b; }
  .sx-insights-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 16px; }
  .sx-category-review { border-top: 1px solid #dee7e2; padding-top: 16px; margin-top: 16px; }
  .sx-category-review label { display: block; margin: 10px 0 6px; font-size: 13px; }
  .sx-category-review input { height: 42px; border-radius: 8px; }
  @media (max-width: 991px) {
    .sx-documents-workspace .sx-documents-layout { overflow: visible; }
    .sx-document-viewer .attachment-viewer-content-info { flex-basis: 240px; width: 240px; }
  }
  @media (max-width: 767px) {
    .attachment-viewer.sx-document-viewer { padding: 8px; }
    .sx-document-viewer .attachment-viewer-header { padding: 12px; }
    .sx-document-viewer .attachment-viewer-header h2 { flex-basis: 100%; }
    .sx-document-viewer .sx-viewer-primary-actions { width: 100%; justify-content: flex-end; }
    .sx-document-viewer .sx-viewer-primary-actions .btn > span { display: none; }
    .sx-document-viewer .attachment-viewer-content-inner { position: relative; }
    .sx-document-viewer .attachment-viewer-content-info { position: absolute; inset-inline-end: 0; inset-block: 0; z-index: 2; width: min(280px, 85%); box-shadow: 0 0 24px rgba(0,0,0,.15); }
    .sx-document-viewer .attachment-viewer-nav { display: none; }
    .sx-document-insights-header { padding: 16px; }
    .sx-document-insights { padding-inline: 16px; }
  }
}
@media screen {
  .sx-documents-workspace .sx-documents-row-selected { box-shadow:none; }
  /* File names fill the grid cell. The shared focus outline would frame the
   * entire cell on a mouse click, duplicating the row's selection highlight. */
  .sx-documents-workspace .sx-documents-row:focus,
  .sx-documents-workspace .sx-documents-row > a:focus { outline:none !important; }
  .sx-documents-workspace .sx-documents-row:focus-visible > a,
  .sx-documents-workspace .sx-documents-row > a:focus-visible {
    text-decoration:underline;
    text-decoration-color:var(--sx-primary);
    text-decoration-thickness:2px;
    text-underline-offset:4px;
  }
}

/* Shared file/folder action menu. Geometry is anchored by FileActionsMenu so
 * the scrolling list never clips the native operations. */
@media screen {
  .sx-documents-workspace .sx-documents-row > [data-document-row-actions] .sx-file-actions > .dropdown-toggle {
    width:32px; height:36px; border:1px solid transparent; border-radius:var(--sx-radius); background:transparent;
  }
  .sx-file-actions > .dropdown-toggle:hover, .sx-file-actions.open > .dropdown-toggle {
    color:var(--sx-primary); background:var(--sx-brand-soft); border-color:var(--sx-border);
  }
  .sx-file-actions > .dropdown-toggle:focus-visible { outline:2px solid var(--sx-primary); outline-offset:2px; }
  .sx-file-actions > .dropdown-menu {
    width:220px; min-width:0; max-width:calc(100vw - 24px); padding:6px; margin:0;
    border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg);
    background:var(--sx-surface); box-shadow:0 8px 24px #102b1f18;
    overflow-y:auto; overscroll-behavior:contain; text-align:start; z-index:1000;
  }
  .sx-file-actions.open > .dropdown-menu { display:block !important; }
  .sx-file-actions > .dropdown-menu > li { display:block; float:none; }
  .sx-file-actions > .dropdown-menu > li > a {
    display:flex; align-items:center; gap:12px; min-height:40px; padding:9px 12px;
    border-radius:6px; color:var(--sx-text); font-size:13px; line-height:22px; white-space:nowrap;
  }
  .sx-file-actions > .dropdown-menu > li > a > i {
    flex:0 0 18px; width:18px; margin:0; font-size:16px; line-height:22px; color:var(--sx-muted); text-align:center;
  }
  .sx-file-actions > .dropdown-menu > li > a:hover,
  .sx-file-actions > .dropdown-menu > li > a:focus { background:var(--sx-surface-muted); color:var(--sx-primary); }
  .sx-file-actions > .dropdown-menu > li.divider { width:auto; height:1px; margin:6px 8px; background:var(--sx-border); }
  .sx-file-actions > .dropdown-menu > li > .sx-file-action-danger,
  .sx-file-actions > .dropdown-menu > li > .sx-file-action-danger > i { color:var(--sx-danger); }
}
