/* Shared page patterns. Typography and palette come exclusively from workspace-theme.
 * Native Angular visibility, business actions and permission gates stay authoritative. */
@media screen {
  .sx-workbench { --sx-page-gap:24px; --sx-panel-padding:20px; min-width:0; }
  .sx-workbench .sx-action-row:not(.ng-hide) { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
  .sx-workbench .sx-action-row > .btn-group { margin:0; }
  .sx-workbench .sx-action-row > .btn,
  .sx-workbench .sx-action-row > .btn-group > .btn { min-height:40px; border-radius:var(--sx-radius); padding:8px 12px; }
  .sx-workbench .sx-action-row .sx-icon-button { width:40px; padding:8px; }
  .sx-workbench .btn:focus-visible,
  .sx-workspace-split__resize:focus-visible { outline:2px solid var(--sx-focus); outline-offset:3px; }
  /* The inspector and document information page use the same navigation,
   * action spacing and readable metadata rhythm as the file workspace. */
  .sx-document-detail.row { margin-inline:0; max-width:100%; }
  .sx-document-detail.row > .col-md-12 { padding-inline:0; }
  .sx-document-detail .sx-documents-workspace { padding:24px; }
  .sx-document-detail .sx-documents-workspace > .panel { border:0; background:transparent; box-shadow:none; margin:0; }
  .sx-document-detail .sx-documents-workspace > .panel > .padder { padding:0; }
  .sx-document-detail .sx-document-detail__header { padding:0; }
  .sx-document-detail .sx-document-detail__heading:not(.ng-hide) { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
  .sx-document-detail .sx-document-detail__heading { padding:20px 24px; margin:0; background:transparent; border-color:var(--sx-border); }
  .sx-document-detail .sx-document-detail__heading::before,
  .sx-document-detail .sx-document-detail__heading::after { display:none; }
  .sx-document-detail .sx-document-detail__heading > div { padding:0; width:auto; }
  .sx-document-detail .sx-document-detail__heading > div:first-child { flex:1 1 320px; min-width:0; }
  .sx-document-detail .dir-info-title { font-size:22px; line-height:1.5; margin:0; overflow-wrap:anywhere; }
  .sx-document-detail .sx-document-detail__body { padding:24px; }
  .sx-document-detail .sx-document-detail__body > .row.wrapper { padding:0; margin:0 0 24px; }
  .sx-document-detail .sx-document-detail__body > .row.wrapper > .col-md-12 { padding:0; }
  .sx-document-detail .sx-document-detail__body .text-md.bg-light { background:transparent; border:0; padding:0 0 12px; color:var(--sx-text); font-size:16px; font-weight:600; }
  .sx-document-detail .sx-document-properties-card { padding:20px; margin-bottom:20px; border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); background:var(--sx-surface); }
  .sx-document-detail .sx-document-properties-card > .row.wrapper { margin:0; padding:0; }
  .sx-document-detail .sx-document-properties-card > .row.wrapper > .col-md-12 { padding:0; }
  .sx-document-detail .sx-document-detail__metadata:not(.ng-hide) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 24px; }
  .sx-document-detail .sx-document-detail__metadata::before,
  .sx-document-detail .sx-document-detail__metadata::after { display:none; }
  .sx-document-detail .sx-document-detail__metadata > .col-md-6 { display:contents; }
  .sx-document-detail .sx-document-detail__metadata .row:not(.ng-hide) { display:flex; flex-direction:column; gap:5px; }
  .sx-document-detail .sx-document-detail__metadata .row { margin:0; padding:14px 0; border-color:var(--sx-border); min-width:0; }
  .sx-document-detail .sx-document-detail__metadata .row::before,
  .sx-document-detail .sx-document-detail__metadata .row::after { display:none; }
  .sx-document-detail .sx-document-detail__metadata .row > div { width:100%; padding:0; min-width:0; line-height:1.65; font-size:13px; overflow-wrap:anywhere; }
  .sx-document-detail .sx-document-detail__metadata .row > div:empty::after { content:"—"; color:var(--sx-muted); }
  .sx-document-detail .sx-document-detail__metadata strong { color:var(--sx-muted); font-size:11px; font-weight:400; }
  .sx-document-detail .sx-document-detail__metadata .label { display:inline-block; padding:5px 9px; margin-block:2px; border-radius:var(--sx-radius-sm); white-space:normal; }
  .sx-document-detail .sx-document-section-title { font-size:15px; font-weight:600; margin-bottom:14px; }
  .sx-document-detail .sx-document-properties-card .nav-tabs { display:flex; flex-wrap:nowrap; overflow:auto; margin:0; border:0; border-bottom:1px solid var(--sx-border); }
  .sx-document-detail .sx-document-properties-card .nav-tabs > li { flex:0 0 auto; }
  .sx-document-detail .sx-document-properties-card .nav-tabs > li > a { background:transparent; border:0; border-bottom:3px solid transparent; border-radius:0; padding:12px; font-size:12px; }
  .sx-document-detail .sx-document-properties-card .nav-tabs > li.active > a { color:var(--sx-primary); border-bottom-color:var(--sx-primary); }
  .sx-document-detail .sx-document-properties-card .tab-content { border:0; padding:16px 0 0; }
  .sx-document-detail .sx-document-detail__body { background:var(--sx-canvas); }
  .sx-document-detail .sx-documents-results.no-padder { display:block; width:auto; min-width:0; height:auto; float:none; padding:0 !important; }
  .sx-document-detail .sx-documents-results > .box { display:block; height:auto; }
  .sx-document-detail .sx-document-detail__header,
  .sx-document-detail .sx-document-detail__body { position:relative; height:auto; width:auto; }
  @media (max-width:1200px) { .sx-document-detail .sx-document-detail__metadata:not(.ng-hide) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
  .sx-workspace-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
  .sx-workspace-heading__eyebrow { display:block; font-size:11px; color:var(--sx-muted); margin-bottom:4px; }
  .sx-workspace-heading h1 { margin:0; font-size:24px; font-weight:700; line-height:1.5; }
  .sx-workspace-heading__hint { color:var(--sx-muted); font-size:12px; }
  .sx-documents-workspace .sx-documents-row > a > bdi { display:block; min-width:0; max-width:100%; overflow-wrap:anywhere; }
  .sx-documents-workspace .sx-documents-row .dms-item-description { display:inline-block; margin-top:4px; }
  .sx-documents-workspace .sx-documents-preview .sx-action-row > .btn { flex:1 1 auto; }
  .sx-attachment-preview__canvas { height:calc(100vh - 220px); min-height:320px; }
  pdf-preview { display:block; height:100%; min-height:200px; }
  .sx-pdf-frame { display:block; width:100%; height:100%; border:0; }
  .sx-workspace-split { min-width:0; }
  .sx-workspace-split__resize { flex:0 0 12px; align-self:stretch; min-height:200px; position:relative; cursor:col-resize; touch-action:none; }
  .sx-workspace-split__resize::after { content:""; position:absolute; inset:0 5px; background:var(--sx-border); border-radius:2px; }
  .sx-workspace-split__resize:hover::after, .sx-workspace-split__resize:focus::after { background:var(--sx-primary); }
  .sx-workspace-split__resize[hidden] { display:none; }
  .sx-workspace-split--resizing { user-select:none; }
  .sx-workspace-split--resizing [data-workspace-pane] iframe,
  .sx-workspace-split--resizing [data-workspace-pane] embed { pointer-events:none; }
  .sx-workspace-split [data-workspace-pane] .sx-attachment-preview:not(.ng-hide) { display:flex; flex-direction:column; }
  .sx-workspace-split [data-workspace-pane] .sx-attachment-preview { height:clamp(420px,65vh,680px); margin:0; padding:0; border:1px solid var(--sx-border); border-radius:var(--sx-radius); background:var(--sx-surface); overflow:hidden; }
  .sx-workspace-split .box.wrapper-md > .fixed.wrapper.b-b.sx-attachment-preview__header { position:static; margin:0; padding:12px; background:var(--sx-surface); }
  .sx-workspace-split .sx-attachment-preview__header .row:not(.ng-hide) { display:flex; flex-direction:column; gap:10px; margin:0; }
  .sx-workspace-split .sx-attachment-preview__header .row > div { width:100%; padding:0; }
  .sx-workspace-split .sx-attachment-preview__header .row::before, .sx-workspace-split .sx-attachment-preview__header .row::after { display:none; }
  .sx-workspace-split .sx-attachment-preview__header h1 { font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
  .sx-workspace-split .sx-attachment-preview__header hr { display:none !important; }
  .sx-workspace-split .sx-attachment-preview__actions { margin:0; justify-content:flex-start; }
  .sx-workspace-split .sx-attachment-preview__actions:not(.ng-hide), .sx-workspace-split .sx-attachment-preview__actions > span:not(.ng-hide) { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
  .sx-workspace-split .sx-attachment-preview__actions .btn { min-height:36px; padding:7px 9px; font-size:12px; }
  .sx-workspace-split .sx-attachment-preview__tools { padding:10px 12px; margin:0; background:var(--sx-surface-muted); }
  .sx-workspace-split .sx-attachment-preview__canvas { flex:1 1 0; min-height:0; height:auto; background:var(--sx-canvas); }
  /* Contextual read-only briefing. All supporting evidence stays available. */
  .sx-workbench .sx-briefing { background:var(--sx-surface-muted); border:1px solid var(--sx-border); border-radius:var(--sx-radius-lg); box-shadow:none; }
  .sx-workbench .sx-briefing .panel-heading { display:flex; gap:8px; flex-wrap:wrap; align-items:center; padding:12px 16px; background:transparent; border:0; font-weight:600; }
  .sx-workbench .sx-briefing .panel-heading button { margin-inline-start:auto; float:none !important; }
  .sx-workbench .sx-briefing .panel-body { padding:0 16px 16px; }
  .sx-workbench .sx-briefing__summary { font-size:14px; line-height:1.75; margin:0 0 12px; }
  .sx-workbench .sx-briefing .alert { padding:0; border:0; border-radius:0; background:transparent; font-size:12px; margin:0 0 8px; }
  .sx-workbench .sx-briefing details > summary { color:var(--sx-primary); cursor:pointer; font-weight:600; padding:6px 0; }
  .sx-workbench .sx-briefing details > div { padding-top:12px; border-top:1px solid var(--sx-border); margin-top:8px; }
  @media (max-width:767px) {
    .sx-workbench { --sx-page-gap:16px; --sx-panel-padding:16px; }
    .sx-document-detail .sx-documents-workspace { padding:16px; }
    .sx-document-detail .sx-document-detail__metadata:not(.ng-hide) { grid-template-columns:1fr; gap:0; }
    .sx-workspace-heading { align-items:flex-start; flex-direction:column; gap:6px; }
  }
}
@media print {
  .sx-workspace-split__resize, .sx-workspace-split > [data-workspace-pane] { display:none !important; }
}

.sx-appearance-controls { display:grid; grid-template-columns:repeat(auto-fit,minmax(165px,1fr)); gap:20px; margin-block:20px; }
.sx-appearance-controls label { display:flex; flex-direction:column; gap:9px; font-weight:600; }
.sx-appearance-controls input[type=color] { width:100%; height:44px; border:1px solid #d8e3dc; border-radius:8px; background:white; padding:5px; }
.sx-task-workspace #edit-info-basic .sx-work-item__metadata { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.sx-task-workspace #edit-info-basic .sx-work-item__metadata > div { width:auto; float:none; padding:0; }
.sx-task-workspace #edit-info-basic .sx-work-item__field--wide { grid-column:1/-1; }
.sx-task-workspace #edit-info-basic .title { display:block; padding:0; margin:0 0 9px; border:0; font-weight:600; color:#344c43; }
.sx-task-workspace #edit-info-basic .form-control,.sx-task-workspace #edit-info-basic .ui-select-match>.btn { min-height:44px; border-radius:8px; }
@media(max-width:640px) { .sx-task-workspace #edit-info-basic .sx-work-item__metadata {grid-template-columns:1fr;} }

.sx-entity-workspace{padding:24px;max-width:1500px;margin:auto}.sx-entity-toolbar,.sx-entity-tree__toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}.sx-entity-tree{margin-top:20px;padding:20px;background:#fff;border:1px solid #dce7e2;border-radius:16px}.sx-entity-tree__toolbar input{flex:1;min-width:200px;max-width:520px;height:44px}.sx-entity-tree__rows{list-style:none;margin:0;padding:0}.sx-entity-tree__rows>li{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf1ef;min-height:64px;padding:10px 12px}.sx-entity-tree__name{border:0;background:transparent;display:flex;align-items:center;gap:12px;flex:1;text-align:start;color:#183d33;min-width:0}.sx-entity-tree__name small{color:#647870}.sx-entity-tree__actions{display:flex;gap:8px}.sx-entity-tree__toggle{width:36px;height:36px;background:transparent}.sx-entity-tree__toggle:disabled{visibility:hidden}.sx-entity-tree__root{padding:12px;color:#647870;border:1px dashed #c9d9d1;border-radius:8px;margin:16px 0}.sx-entity-tree__drop{background:#e3f1eb;outline:2px solid #176b59}.sx-entity-tree__moving{opacity:.6;pointer-events:none}@media(max-width:600px){.sx-entity-workspace{padding:12px}.sx-entity-tree{padding:12px}.sx-entity-tree__name{flex-wrap:wrap}.sx-entity-tree__name small{width:100%}.sx-entity-tree__toolbar .btn{flex:1}}

.sx-module-overview{display:block;margin:16px 24px}.sx-module-overview__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.sx-module-overview__card{background:#fff;border:1px solid #dce7e2;border-radius:12px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.sx-module-overview__card span{color:#526b61}.sx-module-overview__card strong{font-size:30px;line-height:1.2;color:#183d33;font-variant-numeric:tabular-nums}.sx-module-overview__card--overdue strong{color:#a53b47}.sx-module-overview__scope{font-size:12px;color:#647870;margin:8px 0 0}@media(max-width:900px){.sx-module-overview__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.sx-module-overview{margin:12px}.sx-module-overview__grid{gap:8px}.sx-module-overview__card{padding:12px}.sx-module-overview__card strong{font-size:24px}}
