/* Domain layout; presentation belongs to styles/components.css. */
.document-module { display: grid; gap: var(--space-8); }
.document-hero { display: flex; justify-content: space-between; align-items: flex-start;  gap: var(--space-8); }
.document-hero-actions, .document-card__actions, .document-proposal-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.document-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.document-kpis article { display: grid; }
.document-reconciliation { overflow: hidden; }
.document-reconciliation summary { display: flex; justify-content: space-between; gap: var(--space-6); padding: var(--space-6); }
.document-reconciliation > div { display: grid; }
.document-reconciliation article { display: flex; justify-content: space-between; gap: var(--space-6); padding: .8rem var(--space-6); }
.document-toolbar { display: grid; grid-template-columns: minmax(16rem, 1fr) minmax(11rem, .3fr) auto auto; gap: var(--space-6); align-items: center; }
.document-list { display: grid; gap: var(--space-6); }
.document-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--space-6); padding: var(--space-6); }
.document-card__body { min-width: 0; }
.document-card__body h3 { margin: .4rem 0 .25rem; }
.document-card__body p, .document-card__body small { margin: 0; }
.document-card__badges { display: flex; flex-wrap: wrap; gap: .4rem; }
.document-card__badges span { padding: .2rem .55rem; }
.document-card__actions { justify-content: flex-end; max-width: 28rem; }
.document-card__actions .document-delete { flex: 0 0 auto; }
.document-delete .ui-icon { width: 1.1em; height: 1.1em; }
.document-package { width: min(680px, calc(100vw - 2rem)); }
.document-package-list { display: grid; gap: var(--space-4); }
.document-package-row { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); padding-block: var(--space-3); border-bottom: 1px solid var(--line); }
.document-package-row:last-child { border-bottom: 0; }
.document-package-row > div:first-child { display: grid; min-width: 0; gap: var(--space-1); overflow-wrap: anywhere; }
.document-package-row strong { font-weight: var(--weight-medium); }
.document-package-row small { color: var(--muted); }
.document-package-actions { display: flex; flex-shrink: 0; gap: var(--space-2); }
@media (max-width: 480px) {
  .document-package-row { align-items: stretch; flex-direction: column; }
  .document-package-actions > .c-button { flex: 1; }
  .document-package .c-modal__footer { flex-wrap: wrap; }
  .document-package .c-modal__footer > .c-button { flex: 1 1 100%; }
}
.document-proposal { display: grid; }
.document-proposal > header { display: flex; justify-content: space-between; gap: var(--space-6); }
.document-proposal h3 { margin: .25rem 0 0; }
.document-proposal-grid, .document-operation-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); }
.document-proposal-grid .is-wide, .document-operation-grid .is-wide { grid-column: 1 / -1; }
.document-operation-modal { box-sizing: border-box; width: min(780px, calc(100vw - 2rem)); max-width: calc(100vw - 2rem); }
.document-operation-modal .c-modal__content { width: 100%; max-width: 100%; }
.document-preview { width: min(1280px, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); }
.document-preview .c-modal__content { height: calc(100dvh - 2rem); max-height: calc(100dvh - 2rem); }
.document-preview .c-modal__body { display: flex; flex-direction: column; gap: var(--space-3); min-height: 0; padding: var(--space-4); }
.document-preview__heading { flex: 1; min-width: 0; }
.document-preview__name { margin: var(--space-2) 0 0; overflow-wrap: anywhere; color: var(--muted); font-size: var(--type-small); }
.document-preview__date { width: min(100%, 18rem); }
.document-preview__frame { display: block; flex: 1 1 auto; width: 100%; min-height: 12rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); overflow: auto; }
.document-preview__pages { display: grid; gap: var(--space-4); justify-items: center; padding: var(--space-4); }
.document-preview__page { width: min(100%, 800px); min-width: 0; text-align: center; color: var(--muted); }
.document-preview__page canvas { display: block; width: 100%; height: auto; background: #fff; box-shadow: var(--shadow); }
.document-preview__page > span { display: block; padding-top: var(--space-2); font-size: var(--type-small); }
@media (max-width: 900px) {
.document-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.document-toolbar { grid-template-columns: minmax(0, 1fr) minmax(0, .7fr); }
.document-toolbar > span { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
.document-hero { display: grid; }
.document-hero .c-button { width: 100%; }
.document-kpis, .document-toolbar { grid-template-columns: 1fr; }
.document-card { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); padding: var(--space-5); }
.document-card__actions { grid-column: 1 / -1; }
.document-card__actions .c-button { flex: 1 1 10rem; }
.document-reconciliation article { display: grid; }
.document-hero-actions, .document-proposal > header { display: grid; }
.document-proposal-grid, .document-operation-grid { grid-template-columns: 1fr; }
.document-proposal-grid .is-wide, .document-operation-grid .is-wide { grid-column: auto; }
}

.document-scope { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); }
.document-scope > span { margin-right: auto; overflow-wrap: anywhere; }

.document-archive-filters { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4); }
