.contract-import-actions{display:flex;gap:8px;align-items:center;margin-left:auto}
.contract-import-dialog{width:min(1420px,97vw);max-height:96vh}
.document-contract-body{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(620px,1.5fr);gap:18px;align-items:start}
.document-contract-source{position:sticky;top:0;display:grid;gap:12px;min-width:0}
.document-source-head{display:flex;justify-content:space-between;align-items:center}
.document-source-head strong{font-size:13px;color:#173c52}
.document-source-head span{padding:4px 8px;border-radius:999px;background:#e7f5f5;color:#087f93;font-size:9px;font-weight:800}
.document-contract-source iframe{width:100%;height:68vh;border:1px solid #d9e3e8;border-radius:10px;background:#fff}
.document-contract-source article,.document-word-preview{padding:15px;border:1px solid #dce6ea;border-radius:10px;background:#f7fafb}
.document-contract-source article span{font-size:9px;font-weight:800;letter-spacing:.7px;color:#087f93}
.document-contract-source article p,.document-word-preview p{margin:8px 0 0;color:#61737f;font-size:11px;line-height:1.65}
.document-word-preview{display:grid;place-items:center;min-height:280px;text-align:center}
.document-word-preview b{display:grid;place-items:center;width:64px;height:64px;border-radius:12px;background:#1f5d9b;color:#fff;font:800 32px Arial}
.document-word-preview strong{margin-top:14px;color:#173c52}
.document-word-preview pre{box-sizing:border-box;width:100%;max-height:42vh;margin:14px 0 0;padding:12px;overflow:auto;border:1px solid #d8e1e6;border-radius:8px;background:#fff;color:#384f5b;font:10px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;text-align:left;white-space:pre-wrap;word-break:break-word}
.document-contract-review{display:grid;gap:15px;min-width:0}
.document-review-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #cfe8db;border-radius:9px;background:#eff9f4}
.document-review-banner strong{white-space:nowrap;color:#16704b}
.document-review-banner span{font-size:10px;color:#5c7167}
.document-warning-list{padding:13px 15px;border-left:3px solid #d99932;background:#fff8e9;color:#695a3f}
.document-warning-list strong{font-size:11px}
.document-warning-list ul,.document-contract-period>header ul{margin:7px 0 0;padding-left:18px;font-size:10px;line-height:1.55}
.document-supplier-fields,.document-periods{padding:16px;border:1px solid #dce5ea;border-radius:11px;background:#fff}
.document-supplier-fields h3,.document-periods h3{margin:0 0 13px;color:#173c52;font-size:14px}
.document-periods-title{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}
.document-periods-title h3{margin-bottom:5px}
.document-periods-title p{margin:0;color:#758590;font-size:10px}
.document-contract-period{margin:0 0 13px;border:1px solid #dce5ea;border-radius:10px;overflow:hidden;background:#fbfcfd}
.document-contract-period.needs-review{border-color:#e1bd72}
.document-contract-period>header{padding:10px 13px;background:#f1f6f8}
.document-contract-period.needs-review>header{background:#fff7e6}
.document-contract-period>header>div{display:flex;justify-content:space-between;gap:12px}
.document-contract-period>header span{font-size:9px;letter-spacing:.8px;color:#087f93}
.document-contract-period>header strong{font-size:10px;color:#355468}
.document-contract-period>header p{margin:5px 0 0;color:#66808c;font-size:9px}
.document-contract-period .contract-period{margin:0;border:0;border-radius:0;background:#fff}
.document-contract-period .contract-period-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}
.document-contract-period .contract-remove{top:12px;right:12px}
.document-contract-dialog .dialog-body{max-height:calc(96vh - 154px);overflow:auto}
.document-contract-dialog .dialog-actions{position:sticky;bottom:0;z-index:5;background:#fff}
.document-contract-dialog .form-error:not(:empty){padding:10px 12px;border-radius:8px;background:#fff0ee;color:#9c332b}
@media(max-width:1050px){.document-contract-body{grid-template-columns:1fr}.document-contract-source{position:static}.document-contract-source iframe{height:48vh}.document-contract-period .contract-period-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}}
@media(max-width:650px){.contract-import-actions{width:100%;margin-left:0;flex-wrap:wrap}.contract-import-dialog{width:100vw;max-height:100dvh}.document-contract-dialog .dialog-body{max-height:calc(100dvh - 150px)}.document-contract-period .contract-period-grid{grid-template-columns:1fr}.document-review-banner,.document-periods-title{align-items:flex-start;flex-direction:column}}

.document-review-banner.ai-ready{background:#e9f7fb;border-color:#b7dfe8}.document-review-banner.ai-ready strong,.document-review-banner.ai-ready span{color:#075b70}.document-review-banner.ai-fallback{background:#fff8e8;border-color:#ead6a5}.document-review-banner.ai-fallback strong,.document-review-banner.ai-fallback span{color:#79591d}
