:root{color-scheme:light;font-family:"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.4;color:#292d34;background:#f2f3f5;--accent:#f5d96a;--accent-light:#fff8d9;--line:#dfe3e8;--muted:#6a7380;--field:#f8f9fb}
*{box-sizing:border-box}body{margin:0;padding-bottom:30px;min-width:360px}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;color:#8b939e;background:#f1f2f4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[role=listbox]:focus-visible{outline:2px solid #9c791b;outline-offset:2px}[hidden]{display:none!important}
.workspace-bar{height:56px;padding:0 24px;display:flex;align-items:center;gap:32px;background:#f3db77;border-bottom:1px solid #d7c36c;position:sticky;top:0;z-index:50}.workspace-brand{font-size:22px;font-weight:750;letter-spacing:.04em;color:#3e3b30;text-decoration:none}.workspace-bar nav{align-self:stretch;display:flex;gap:4px}.workspace-bar nav a{display:flex;align-items:center;padding:0 22px;text-decoration:none;color:#3e3b30;border-bottom:3px solid transparent;font-weight:600}.workspace-bar nav a:hover{background:#fff4bf}.workspace-bar nav a.active{background:#fff9e4;border-bottom-color:#927627}.workspace-tools{margin-left:auto;color:#615b40;font-size:12px;white-space:nowrap}
#app{padding:18px 24px 22px;max-width:2200px;margin:auto}.access-window{min-width:0}.window-title{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;min-height:36px}.window-caption{font-size:23px;line-height:1.2;font-weight:650;letter-spacing:-.02em}.window-tools{display:flex;gap:8px}.window-tools button{background:white;border:1px solid var(--line);border-radius:6px;min-height:34px;padding:5px 14px;font-size:13px}
.modern-form{min-width:0;max-width:100%;display:flex;flex-direction:column;gap:12px}.page-grid{display:grid;gap:16px;align-items:start;min-width:0}.order-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contract-layout{grid-template-columns:minmax(0,1fr) minmax(420px,.47fr)}.invoice-layout{grid-template-columns:minmax(320px,.9fr) minmax(440px,1.35fr) minmax(360px,.85fr)}.form-column,.documents-layout,.attachment-layout,.generic-layout,.table-form{display:flex;flex-direction:column;gap:12px;min-width:0}.panel{min-width:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 1px 2px #18233205;overflow:visible}.panel-title{font-size:14px;line-height:20px;font-weight:650;margin:0;padding:12px 16px 10px;border-bottom:1px solid #edf0f3}.panel-body{padding:14px 16px;display:flex;flex-direction:column;gap:12px;min-width:0}.panel .panel{box-shadow:none;background:#fbfcfd}.panel .panel .panel-title{font-size:13px;padding:8px 12px}.panel .panel .panel-body{padding:10px 12px;gap:8px}.field-grid{display:grid;gap:10px 14px;align-items:end;min-width:0}.cols-1{grid-template-columns:minmax(0,1fr)}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.field{min-width:0;display:flex;flex-direction:column;gap:5px}.field-caption{font-size:12px;line-height:17px;color:var(--muted);min-height:17px;overflow-wrap:break-word}.access-control{position:static;min-width:0;max-width:100%;margin:0;line-height:1.4;white-space:normal}.control-label,.control-rectangle,.control-line,.control-group,.control-image,.focus-anchor,.surface-filler,.native-copy,.modern-note-label{display:none!important}.control-text,.control-combo{width:100%;min-height:36px;background:var(--field);border:1px solid #dfe3e9;border-radius:5px;overflow:visible;box-shadow:none}.control-text:has(textarea){min-height:58px}.control-text input,.control-text textarea,.control-combo select{display:block;min-width:0;width:100%;height:34px;border:0;background:transparent;border-radius:4px;padding:7px 10px;outline-offset:0;text-align:left;opacity:1;-webkit-text-fill-color:currentColor}.control-text textarea{resize:vertical;min-height:56px;height:56px;line-height:20px;white-space:pre-wrap;overflow-wrap:break-word}.control-text input:read-only,.control-text textarea:read-only{cursor:default}.control-text input::placeholder{color:#9299a3}.control-combo select:disabled{opacity:1;color:#313743;-webkit-text-fill-color:#313743;cursor:default}.control-combo select{padding-right:24px;text-overflow:ellipsis}.editing-control{background:#fffdf2;border-color:#c6ac50}.editing-control:focus-within{border-color:#ab8420;box-shadow:0 0 0 2px #e7ce6730}.editing-control input,.editing-control textarea{color:#20242b}
.action-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.action-bar>.field{flex:1 1 110px;max-width:220px}.action-bar>.control-check,.action-bar>.control-radio{flex-shrink:0}.control-command,.control-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-height:36px;padding:7px 13px;background:#fff;border:1px solid #cfd5dd;border-radius:5px;text-align:center;font-size:13px;line-height:20px;white-space:nowrap;box-shadow:0 1px 1px #1a26350a}.control-command span,.control-toggle span{white-space:nowrap}.control-command:hover:not(:disabled),.control-toggle:hover:not(:disabled){background:#faf7e9;border-color:#b7a464}.control-command img,.control-toggle img{width:17px;height:17px;object-fit:contain;flex-shrink:0}.control-command[data-action-role=primary],.control-toggle[data-action-role=primary],.control-command[data-action-role=accounting]{background:var(--accent);border-color:#d4b852;font-weight:600}.control-toggle[aria-pressed=true]{background:var(--accent-light);border-color:#d4bf72}.control-toggle[data-action-role=primary][aria-pressed=true]{background:var(--accent)}.danger-action{color:#a23e36}.danger-action:hover:not(:disabled){background:#fff2ef;border-color:#dba29b}.control-check,.control-radio{display:inline-flex;align-items:center;gap:8px;min-height:36px;font-size:13px;line-height:19px;cursor:pointer;overflow:visible}.control-check input,.control-radio input{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:#ad8729}.control-check span,.control-radio span{white-space:normal;overflow-wrap:break-word}.control-check:has(input:disabled),.control-radio:has(input:disabled){cursor:default;color:#606975}.inline-caption{font-size:12px;color:var(--muted);margin-right:4px}.muted{color:var(--muted);margin:0}.control-subform{min-width:0;max-width:100%;border:0;background:transparent;overflow:visible}.control-subform>.modern-form{width:100%;height:auto}.subject-field textarea{min-height:100px}
.list-table{min-width:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:white}.list-head,.list-entry{display:grid;grid-template-columns:var(--list-columns);min-width:0;align-items:center}.list-head{background:#f5f6f8;border-bottom:1px solid var(--line);font-size:12px;font-weight:600;color:#636c79;min-height:34px}.list-head>span{padding:7px 10px;white-space:normal}.control-list{max-height:var(--list-height,280px);min-height:68px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;outline-offset:-2px}.list-entry{font-size:13px;min-height:34px;border-bottom:1px solid #eef0f3;cursor:pointer}.list-entry:last-child{border-bottom:0}.list-entry>span{display:block;width:auto!important;min-width:0;max-width:100%;padding:7px 10px;white-space:normal;overflow-wrap:break-word;line-height:19px}.list-entry>span:first-child{font-weight:600}.list-entry:hover{background:#fffbed}.list-entry.selected{background:#fff2bf;color:#3f3720;box-shadow:inset 3px 0 #c1a440}.list-entry:focus-visible{outline:2px solid #a58124;outline-offset:-2px}.empty-state{font-size:13px;color:#838c99;display:flex;align-items:center;justify-content:center;min-height:76px;padding:20px;text-align:center;background:#fbfcfd}.details-card{background:#fff;border:1px solid var(--line);border-radius:6px;min-width:0}.details-card>summary{cursor:pointer;font-size:13px;font-weight:500;padding:10px 12px;color:#58616f}.details-card[open]>summary{border-bottom:1px solid #edf0f3}.details-body{display:flex;flex-direction:column;gap:12px;padding:12px;min-width:0}.panel .details-card{box-shadow:none}
.data-table-scroll{max-width:100%;min-width:0;overflow:auto;border:1px solid var(--line);border-radius:5px;background:white;max-height:270px;overscroll-behavior:contain}.table-grid{display:grid;grid-template-columns:var(--table-columns);min-width:max-content;align-items:stretch}.table-head{position:sticky;top:0;z-index:2;background:#f4f5f7;color:#626c79;font-size:12px;font-weight:600;min-height:36px}.table-head>div{padding:9px 10px;white-space:nowrap}.table-row{min-height:36px;border-top:1px solid #e8ebef}.table-row:nth-child(odd){background:#fafbfc}.table-cell{min-width:0;display:flex;align-items:stretch;border-right:1px solid #eef0f2}.table-cell:last-child{border-right:0}.table-cell>.control-text,.table-cell>.control-combo{border:0;min-height:36px;box-shadow:none;border-radius:0;background:transparent}.table-cell input,.table-cell textarea,.table-cell select{font-size:13px;min-height:36px;height:36px;padding:8px 10px;line-height:19px;resize:none}.table-cell:has(.editing-control){background:#fffbea}.table-footer{padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#fafbfc}.table-footer .field-caption{font-size:11px}.table-footer .control-text,.table-footer .control-combo{background:#fff}
.native-modal{border:1px solid #cfd5dd;border-radius:10px;padding:22px 24px;box-shadow:0 14px 60px #17253a40;width:calc(100vw - 80px);max-width:1840px;max-height:calc(100vh - 64px);overflow:auto;background:#f2f3f5;overscroll-behavior:contain}.native-modal::backdrop{background:#202b3b66}.native-modal .window-title{position:sticky;top:-22px;z-index:20;padding:12px 0;background:#f2f3f5}.native-modal .window-caption{font-size:20px}.native-modal .panel-title{padding-top:10px;padding-bottom:8px}.native-modal .panel-body{padding:12px 14px}.native-modal .panel .panel-body{padding:10px 12px}
#status{position:fixed;z-index:1000;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);min-height:28px;display:flex;align-items:center;padding:5px 24px;font-size:11px;line-height:17px;color:#737c89;white-space:normal}#status.error{background:#fff0ec;color:#a03e31}
@media(min-width:1700px){.order-layout .panel-title{padding-top:11px;padding-bottom:9px}.order-layout>.form-column:last-child>.panel:last-child .panel-body{padding-top:10px;padding-bottom:10px}}
@media(max-width:1500px){#app{padding:16px}.invoice-layout{grid-template-columns:minmax(280px,.8fr) minmax(400px,1.2fr)}.invoice-layout>.form-column:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.contract-layout{grid-template-columns:minmax(0,1fr) 390px}.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.control-command,.control-toggle{font-size:12px;padding-left:10px;padding-right:10px}}
@media(max-width:1100px){.invoice-layout>.form-column:last-child{grid-column:auto;display:flex}.workspace-bar{padding:0 16px;gap:16px}.workspace-bar nav a{padding:0 14px}.workspace-tools{font-size:11px}.documents-layout>.cols-2{grid-template-columns:minmax(0,1fr)}.native-modal{width:calc(100vw - 28px);max-height:calc(100vh - 28px);padding:16px}.window-caption{font-size:20px}}
@media(max-width:650px){.workspace-tools{display:none}.workspace-bar{height:52px;padding:0 10px;gap:12px}.workspace-bar nav a{font-size:12px;padding:0 10px}.workspace-brand{font-size:18px}#app{padding:12px}.cols-2,.cols-3,.cols-4{grid-template-columns:minmax(0,1fr)}.span-2,.span-3{grid-column:auto}.window-caption{font-size:19px}.panel-body{padding:12px}.control-command,.control-toggle{max-width:100%;white-space:normal}.control-command span,.control-toggle span{white-space:normal}.list-entry>span{padding-left:6px;padding-right:6px}.list-head>span{padding-left:6px;padding-right:6px}.invoice-layout{grid-template-columns:minmax(0,1fr)}.native-modal .window-title{top:-16px}#status{padding-left:12px;padding-right:12px}}
/* Full HD alignment and density: labels share a baseline, panels start together. */
.field-grid{align-items:start}.cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.field-grid>.action-bar{align-self:end;min-height:36px}.table-grid{min-width:100%;width:100%}.table-cell input,.table-cell textarea{min-width:0;width:100%}.table-cell>.access-control{flex:1 1 0;width:0;min-width:0}.control-text textarea{field-sizing:content;min-height:34px;height:auto;max-height:160px;resize:vertical}.control-text:has(textarea){min-height:36px}.subject-field textarea{min-height:100px}.order-layout [data-control="Поле336"] textarea{min-height:54px}.order-layout [data-control="Поле2"] textarea,.order-layout [data-control="Поле337"] textarea{min-height:34px}.order-layout>.form-column:last-child>.panel:last-child .field-grid{align-items:stretch}.order-layout>.form-column:last-child>.panel:last-child .field{align-self:end}.order-layout>.form-column:last-child>.panel:last-child .panel-body .panel .panel-body{padding:8px 10px;gap:4px}.order-layout>.form-column:last-child>.panel:last-child .control-command{padding-left:8px;padding-right:8px}.order-layout .list-table .control-list{max-height:338px}.order-layout [data-control="Поле426"]{max-height:68px}.contract-layout>.form-column:last-child .list-table .control-list{max-height:310px}.contract-layout [data-control="Список368"],.contract-layout [data-control="Поле426"]{max-height:68px}.contract-layout .attachment-layout>.panel>.panel-body{padding-top:10px;padding-bottom:10px}.contract-layout .table-form{gap:8px}.contract-layout .attachment-layout{gap:10px}.contract-layout .attachment-layout .cols-6 .control-text input{font-size:13px;padding-left:7px;padding-right:7px}.contract-layout .attachment-layout .cols-6 .field-caption{font-size:11px}
@media(max-width:1500px){.cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}.order-layout .list-table .control-list{max-height:388px}.contract-layout .cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.cols-6{grid-template-columns:minmax(0,1fr)}}
.control-list{min-height:34px}
@media(min-width:1700px){
 #app{padding-top:14px;padding-bottom:16px}.window-title{margin-bottom:12px;min-height:32px}.window-caption{font-size:22px}
 .panel-title,.order-layout .panel-title{padding:9px 14px 8px}.panel-body{padding:10px 14px;gap:9px}.field-grid{gap:8px 12px}
 .control-text,.control-combo{min-height:34px}.control-text input,.control-combo select{height:32px;padding-top:6px;padding-bottom:6px}.control-text textarea{padding-top:6px;padding-bottom:6px;min-height:32px}.control-text:has(textarea){min-height:34px}
 .control-command,.control-toggle{min-height:34px;padding-top:6px;padding-bottom:6px}.control-check,.control-radio{min-height:34px}
 .order-layout [data-control="Поле336"] textarea{min-height:46px}.order-layout [data-control="Поле2"] textarea,.order-layout [data-control="Поле337"] textarea{min-height:32px}
 .order-layout .list-table .control-list{max-height:310px}.order-layout [data-control="Поле426"]{max-height:68px}
 .contract-layout>.form-column:last-child [data-control="Список35"]{max-height:230px}
 .contract-layout .attachment-layout>.panel>.panel-body{padding-top:10px;padding-bottom:10px}
}

.costs-layout,.partner-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.43fr)}.tabset{min-width:0;border:1px solid var(--line);border-radius:7px;background:white}.tab-bar{display:flex;gap:2px;border-bottom:1px solid var(--line);background:#f8f9fb;padding:0 12px;border-radius:7px 7px 0 0}.tab-bar button{font-size:13px;background:transparent;border:0;border-bottom:3px solid transparent;min-height:42px;padding:10px 16px;color:#68717f}.tab-bar button[aria-selected=true]{border-bottom-color:#b09432;color:#41391f;background:#fff9e4;font-weight:600}.tab-panels{padding:14px;min-width:0}.generic-layout{max-width:1500px}.modern-form[data-form^="USysLogin"]{max-width:480px}.modern-form[data-form^="USysLogin"] .cols-3{grid-template-columns:minmax(0,1fr)}.native-modal:has(.modern-form[data-form^="USysLogin"]){width:530px}
@media(min-width:1700px){.contract-layout>.form-column:last-child [data-control="Список35"]{max-height:210px}}
@media(max-width:1100px){.costs-layout,.partner-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.tab-bar{overflow:auto;padding:0 4px}.tab-bar button{white-space:nowrap;padding-left:10px;padding-right:10px}.tab-panels{padding:10px}}
@media(min-width:1700px){body{padding-bottom:28px}#app{padding-bottom:8px}}
.action-bar>.control-check,.action-bar>.control-radio{flex-shrink:1;max-width:100%}.field-grid>.control-check,.field-grid>.control-radio{align-self:end}.field-grid>.panel{align-self:start}
.empty-state,.control-text input::placeholder{color:var(--muted)}#status{color:#69727f}
.required-mark{color:#a84136}.field-error{color:#aa3c31;font-size:12px;line-height:17px}.control-text:has([aria-invalid=true]),.control-combo:has([aria-invalid=true]){border-color:#bd5349;background:#fff8f6}.field-grid>.control-check{min-height:34px}

.control-text textarea{resize:none}
.document-modal{width:min(1360px,calc(100vw - 48px));padding:24px}.document-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.document-header h2{margin:0;font-size:21px;line-height:28px}.document-close,.document-actions button,.document-print-link{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 14px;border:1px solid #cfd5dd;border-radius:5px;background:white;font-size:13px;line-height:20px;white-space:nowrap;text-decoration:none;color:inherit;cursor:pointer}.document-actions button:disabled{opacity:.5;cursor:default}.document-actions .document-primary{background:var(--accent);border-color:#d4b852}.document-notice{font-size:13px;line-height:20px;margin:16px 0;color:#646d79}.document-content{min-width:0}.document-content h3{font-size:18px;line-height:26px;margin:0 0 16px}.document-content p{font-size:13px;line-height:20px;margin:8px 0}.document-table-wrap{width:100%;overflow:auto;margin:18px 0;border:1px solid var(--line);border-radius:5px}.document-table{border-collapse:collapse;width:100%;font-size:12px;line-height:18px}.document-table th,.document-table td{padding:9px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;white-space:normal;overflow-wrap:break-word}.document-table th{background:#f5f6f8;font-weight:600}.document-table tr:last-child td{border-bottom:0}.document-table th:nth-child(2){min-width:180px}.document-total{text-align:right;font-weight:600}.document-limitations{margin-top:18px;font-size:13px;line-height:20px;color:#646d79}.document-limitations summary{cursor:pointer}.document-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}

/* Original report pages retain their own physical size inside the preview. */
.document-pdf-preview{width:100%;height:600px;min-height:400px;border:1px solid #d9dfe5;border-radius:8px;background:#edf0f3;display:block;margin-top:14px}
.source-report-modal{width:min(1420px,calc(100vw - 48px));max-height:calc(100vh - 48px)}
.source-report-modal .document-content>p,.source-report-modal .document-content>h3{margin:5px 0}
.source-report-modal .document-limitations{margin-top:10px}
@media(max-height:850px){.document-pdf-preview{height:48vh;min-height:300px}}
.document-preview-tools{display:flex;align-items:center;gap:16px;margin:10px 0}
.document-preview-tools button{border:1px solid #d9dfe5;border-radius:5px;background:#fff;padding:6px 12px;cursor:pointer}
.document-paper-preview{height:600px;overflow:auto;background:#e2e6eb;border:1px solid #ccd3dc;border-radius:8px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:16px}
.document-paper-preview img{display:block;flex:none;width:100%;height:auto;max-width:1000px;background:#fff;box-shadow:0 2px 8px #0002}
.document-paper-preview.fit-page img{width:auto;max-width:100%;max-height:560px;object-fit:contain}
@media(max-height:850px){.document-paper-preview{height:45vh}.document-paper-preview.fit-page img{max-height:calc(45vh - 40px)}}

/* Color identifies the working area, as in the original forms. */
:root{background:#e9edf2;--field:#fff;--line:#cbd3de;--muted:#566170}
.panel{background:var(--section-bg,#fff7e2);border-color:var(--section-line,#d8ca9d);box-shadow:0 1px 3px #2634470a}
.panel[data-surface=record]{--section-bg:#fff7e2;--section-heading:#f7e9bf;--section-line:#d8ca9d}
.panel[data-surface=search]{--section-bg:#e8effb;--section-heading:#d6e3f7;--section-line:#b4c7e4;--table-heading:#dce7f8;--list-row:#f0f4fc}
.panel[data-surface=attachment]{--section-bg:#e9f2d9;--section-heading:#d8e7ba;--section-line:#b7c991;--table-heading:#dce9c4;--list-row:#f2f7e9}
.panel[data-surface=finance]{--section-bg:#fff0d7;--section-heading:#f5deb4;--section-line:#d5bb8f}
.panel[data-surface=service]{--section-bg:#efedf7;--section-heading:#e2ddef;--section-line:#c3bcd7}
.panel>.panel-title{background:var(--section-heading,#f7e9bf);border-bottom-color:var(--section-line,#d8ca9d);border-radius:7px 7px 0 0;color:#354052}
.panel .panel{background:var(--section-bg,#fff7e2)}
.field-caption{color:#566170}
.list-table,.data-table-scroll{border-color:var(--section-line,#c3ccda)}
.list-head,.table-head{background:var(--table-heading,#e1e8f2);color:#39475b}
.list-entry{background:var(--list-row,#f5f7fb)}
.list-entry:hover{background:#fff7d6}
.list-entry.selected{background:#ffedaa;box-shadow:inset 3px 0 #b28b23}
.details-card{background:#f0f3f8;border-color:#cbd3df}
.details-card>summary{background:#e7ecf4;color:#445269;border-radius:5px;font-weight:600}
.details-card[open]>summary{border-radius:5px 5px 0 0;border-bottom-color:#cbd3df}
.tabset{border-color:#bdcbdc}.tab-bar{background:#dfe8f4;border-bottom-color:#bdcbdc}.tab-panels{background:#f1f5fa}

/* Adjacent application/contract registers share one vertical reading level. */
.contract-layout{grid-template-columns:minmax(0,1.55fr) minmax(660px,1fr)}
.contract-registers{display:grid;grid-template-columns:204px minmax(0,1fr);gap:12px;align-items:stretch;min-width:0}
.contract-registers>.list-register{display:grid;grid-template-rows:40px minmax(310px,1fr) auto;overflow:hidden}
.register-heading{display:grid;grid-template-columns:var(--list-columns);align-items:center;min-width:0;background:var(--section-heading);border-bottom:1px solid var(--section-line);color:#354052}
.register-heading>*{min-width:0;margin:0;padding:9px 10px;font-size:12px;line-height:20px}
.register-heading>.register-title{font-size:14px;font-weight:650}
.contract-registers .list-register>.control-list{min-height:310px;max-height:310px;background:var(--list-row,#fff)}
.contract-registers .action-bar{margin:0;padding:12px;border-top:1px solid var(--section-line);align-items:stretch;min-height:100px;align-content:start}
.contract-registers .attachment-register .action-bar{flex-direction:column;gap:8px}
.contract-registers .attachment-register .control-command{width:100%;padding-left:8px;padding-right:8px}
.contract-registers .contract-register .control-command,.contract-registers .contract-register .control-toggle{padding-left:10px;padding-right:10px}
.contract-layout>.form-column:first-child>.panel[data-surface=attachment]>.panel-body{padding:10px}
.contract-layout .attachment-layout>.panel:first-child{border:0;background:transparent;box-shadow:none}
.contract-layout .attachment-layout .data-table-scroll{border-color:#b7c991}
.contract-layout .attachment-layout .table-head{background:#dce9c4}
.contract-layout .attachment-layout>.details-card{background:#f3f7e9;border-color:#bdcba4}
.contract-layout .attachment-layout>.details-card>summary{background:#dfeaca;color:#455633}
@media(max-width:1500px){.contract-layout{grid-template-columns:minmax(0,1fr) minmax(520px,.8fr)}.contract-registers{grid-template-columns:184px minmax(0,1fr)}.contract-registers .list-head>span,.contract-registers .list-entry>span{padding-left:7px;padding-right:7px}}
@media(max-width:1100px){.contract-layout{grid-template-columns:minmax(0,1fr)}.contract-registers{grid-template-columns:204px minmax(0,1fr)}}
@media(max-width:650px){.contract-registers{grid-template-columns:minmax(0,1fr)}.contract-registers>.list-register{grid-template-rows:40px minmax(34px,auto) auto}.contract-registers .list-register>.control-list{min-height:34px;max-height:240px}.contract-registers .action-bar{min-height:0}.contract-registers .attachment-register .action-bar{flex-direction:row}}

.partner-lookup{position:relative;overflow:visible}
.partner-lookup>input{width:100%;height:34px;min-width:0;border:0;border-radius:4px;background:transparent;padding:7px 34px 7px 10px}
.partner-lookup>input:disabled{opacity:1;color:#313743;-webkit-text-fill-color:#313743;cursor:default}
.partner-lookup-toggle{position:absolute;right:2px;top:2px;width:28px;height:28px;padding:0;border:0;border-radius:4px;background:transparent;color:#59687c;font-size:19px;line-height:24px}
.partner-lookup:has(input:disabled)>.partner-lookup-toggle{pointer-events:none;color:#8b939e}
.partner-lookup-toggle:hover{background:#e8edf5}
.field:has(.suggestions-open){position:relative;z-index:80}
.partner-suggestions{position:absolute;left:-1px;right:-1px;top:calc(100% + 5px);z-index:90;max-height:260px;overflow:auto;overscroll-behavior:contain;border:1px solid #aabbd3;border-radius:6px;background:#fff;box-shadow:0 6px 20px #24375426;padding:4px}
.partner-suggestion{padding:8px 10px;min-height:36px;border-radius:4px;cursor:pointer;color:#27364b}
.partner-suggestion:hover,.partner-suggestion.active{background:#e6eefb}
.partner-suggestion-name,.partner-suggestion-detail{display:block;white-space:normal;overflow-wrap:anywhere}
.partner-suggestion-detail{font-size:11px;color:#637084;margin-top:2px}
.partner-suggestions-empty{padding:12px 10px;font-size:13px;color:#626f80}
@media(min-width:1700px){.partner-lookup>input{height:32px;padding-top:6px;padding-bottom:6px}}

/* Keep the source proportions: wide working area, compact reference lists. */
@media(min-width:1101px){
 .order-layout{grid-template-columns:minmax(0,1fr) 400px}
 .contract-layout{grid-template-columns:minmax(0,1fr) 440px}
 .contract-registers{grid-template-columns:124px minmax(0,1fr)}
 .contract-registers .register-heading>*{padding-left:8px;padding-right:8px}
 .contract-registers .register-heading>.register-title{font-size:13px}
 .contract-registers .action-bar{padding:10px 8px;min-height:96px;gap:6px}
 .contract-registers .control-command,.contract-registers .control-toggle{font-size:12px;padding-left:7px!important;padding-right:7px!important}
 .order-layout>.form-column:last-child .cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .order-layout>.form-column:last-child .panel-body{padding:10px 12px;gap:8px}
 .order-layout>.form-column:last-child>.panel:first-child [data-field-for="Поле334"]>.field-caption,.order-layout>.form-column:last-child>.panel:first-child [data-field-for="Search5"]>.field-caption{display:none}
 .order-layout>.form-column:last-child .action-bar>.field{flex-direction:row;align-items:center;gap:5px;flex:1 1 100px;max-width:none}
 .order-layout>.form-column:last-child .action-bar>.field>.field-caption{font-size:11px;white-space:nowrap;min-height:0}
 .order-layout>.form-column:last-child .action-bar>.field>.access-control{flex:1;min-width:0}
 .order-layout>.form-column:last-child .action-bar>.field input{font-size:12px;padding-left:4px;padding-right:4px}
 .order-layout .list-table [data-control="Список16"]{max-height:240px}
 .order-layout .print-actions{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(0,1fr);gap:8px}
 .print-kind{font-size:12px;font-weight:600;color:#526077}
 .contract-summary .panel-body{padding:8px 12px;gap:7px}
 .contract-summary .field,.contract-layout .attachment-layout>.panel:first-child .field{flex-direction:row;align-items:center;gap:8px}
 .contract-summary .field-caption,.contract-layout .attachment-layout>.panel:first-child .field-caption{flex:0 0 auto;min-height:0;white-space:nowrap}
 .contract-summary .field>.access-control,.contract-summary .field>.action-bar,.contract-layout .attachment-layout>.panel:first-child .field>.access-control{flex:1;min-width:0}
 .contract-layout .attachment-layout{gap:8px}
 .contract-layout .attachment-layout>.panel:first-child>.panel-body{padding:0}
 .contract-working-area .table-form>.data-table-scroll{height:400px;max-height:400px}
 .contract-layout .attachment-layout>.panel[data-surface=finance]>.panel-title{font-size:13px;padding:6px 10px}
 .contract-layout .attachment-layout>.panel[data-surface=finance]>.panel-body{padding:8px 10px;gap:7px}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .field{flex-direction:row;align-items:center;gap:6px}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .field-caption{flex:0 0 auto;white-space:nowrap;min-height:0;font-size:11px}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .field>.access-control{flex:1;min-width:0}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .control-text input{font-size:12px;padding-left:6px;padding-right:6px}
 .contract-layout .details-card>summary{padding:8px 10px}
}

/* Desktop density: the section menu identifies the primary page. */
.workspace-bar{height:40px;padding:0 20px;gap:24px}
.workspace-brand{font-size:19px}.workspace-bar nav a{font-size:13px;padding:0 16px}
.workspace-tools{font-size:11px}
#app{padding:10px 20px 12px}
.window-title{min-height:26px;margin-bottom:8px}.window-caption{font-size:18px}
.modern-form,.form-column,.page-grid{gap:10px}
.panel-body{padding:8px 12px;gap:8px}.field-grid{gap:8px 10px}.field{gap:4px}
.field-caption{font-size:11px;line-height:16px;min-height:16px}
.control-text,.control-combo,.control-text:has(textarea){min-height:32px}
.control-text input,.control-combo select,.partner-lookup>input{height:30px;padding-top:5px;padding-bottom:5px}
.control-command,.control-toggle{min-height:30px;padding-top:4px;padding-bottom:4px}
.control-check,.control-radio{min-height:30px}
.list-entry{min-height:30px}.list-entry>span{padding:5px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.table-row{min-height:32px}.table-cell>.control-text,.table-cell>.control-combo,.table-cell input,.table-cell textarea,.table-cell select{min-height:32px;height:32px}
.table-cell input,.table-cell textarea,.table-cell select{padding-top:6px;padding-bottom:6px}
.register-heading>*{padding-top:6px;padding-bottom:6px}
.contract-registers>.list-register{grid-template-rows:32px minmax(310px,1fr) auto}
.contract-registers .action-bar{min-height:82px;padding-top:8px;padding-bottom:8px}
.contract-registers .control-command img,.contract-registers .control-toggle img{display:none}
@media(min-width:1101px){
 .order-layout,.contract-layout{grid-template-columns:minmax(0,1fr) 500px}
 .contract-registers{grid-template-columns:80px minmax(0,1fr);gap:10px}
 .contract-registers .attachment-register .action-bar{padding-left:4px;padding-right:4px}
 .contract-registers .list-entry>span{padding-left:8px;padding-right:8px}
 .contract-summary .panel-body{padding:8px 10px;gap:6px}
 .contract-layout .attachment-layout>.attachment-totals>.panel-body{padding:8px 10px;gap:6px}
 .order-layout .order-main-fields{grid-template-columns:110px minmax(260px,1.25fr) 90px 168px minmax(190px,1fr) minmax(190px,1fr)}
 .order-layout .order-production-fields{grid-template-columns:minmax(135px,1fr) minmax(135px,1fr) repeat(4,108px) 200px minmax(140px,1fr)}
 .contract-summary .contract-main-fields{grid-template-columns:170px 210px 110px 300px 200px minmax(220px,1fr)}
 .contract-summary .contract-party-fields{grid-template-columns:minmax(230px,1.2fr) minmax(230px,1.2fr) minmax(200px,1fr) minmax(190px,1fr)}
 .order-layout .order-main-fields [data-control="Поле2"] textarea,.order-layout .order-production-fields [data-control="Поле337"] textarea{min-height:30px}
 .order-layout [data-control="Поле336"] textarea{min-height:220px;max-height:300px}
 .order-layout .order-register{display:grid;grid-template-rows:32px minmax(440px,1fr) auto;overflow:hidden}
 .order-layout .order-register>[data-control="Список16"]{min-height:440px;max-height:440px}
 .order-register>.action-bar{padding:8px 10px;border-top:1px solid var(--section-line)}
 .order-related .field-grid:first-child{grid-template-columns:minmax(260px,540px)}
 .order-related .field-grid:nth-child(3){grid-template-columns:200px minmax(220px,380px)}
}
@media(min-width:1700px){
 #app{padding:10px 20px 8px}.window-caption{font-size:18px}.window-title{min-height:26px;margin-bottom:8px}
 .control-text,.control-combo,.control-text:has(textarea){min-height:32px}.control-text input,.control-combo select,.partner-lookup>input{height:30px}
 .control-command,.control-toggle,.control-check,.control-radio{min-height:30px}
}
@media(min-width:1101px) and (max-width:1699px){
 .order-layout,.contract-layout{grid-template-columns:minmax(0,1fr) 420px}
 .order-layout .order-main-fields{grid-template-columns:110px minmax(180px,1fr) 90px 148px}
 .order-layout .order-production-fields{grid-template-columns:repeat(4,minmax(108px,1fr))}
 .contract-summary .contract-main-fields{grid-template-columns:repeat(3,minmax(180px,1fr))}
 .contract-summary .contract-party-fields{grid-template-columns:repeat(2,minmax(200px,1fr))}
}
@media(max-width:650px){.workspace-bar{padding:0 10px;gap:12px}.workspace-brand{font-size:18px}.workspace-bar nav a{font-size:12px;padding:0 10px}#app{padding:10px 12px}}

/* Related lists and notes use the available desktop height. */
.attachment-heading{grid-template-columns:170px 220px minmax(0,1fr)}
.attachment-heading>.action-bar{justify-content:flex-end}
@media(min-width:1101px) and (min-height:600px){
 #app :is(.order-layout,.contract-layout,.partner-layout){height:calc(100dvh - 86px);align-items:stretch;min-height:0}
 #app :is(.order-layout,.contract-layout,.partner-layout)>.form-column{height:100%;min-height:0}
 #app :is(.order-layout,.contract-layout,.partner-layout):has(details[open])>.form-column{overflow:auto}
 #app .form-column>.panel,#app .form-column>.details-card,#app .form-column>.tabset{flex-shrink:0}
 #app .order-layout>.form-column:first-child>.panel:first-child{flex:1 1 0;min-height:0;display:flex;flex-direction:column}
 #app .order-layout>.form-column:first-child>.panel:first-child>.panel-body{height:100%;min-height:0}
 #app .order-layout .order-main-fields,#app .order-layout .order-production-fields{flex:none}
 #app .order-layout .order-note-fields{flex:1 1 0;min-height:0;grid-template-rows:minmax(0,1fr)}
 #app .order-note-fields>.field{min-height:0;height:100%}
 #app .order-note-fields .field-caption{flex:none}
 #app .order-note-fields .control-text{flex:1 1 0;min-height:34px}
 #app .order-layout .order-note-fields [data-control="Поле336"] textarea{field-sizing:fixed;height:100%;min-height:32px;max-height:none;overflow:auto}
 #app .order-layout .order-register{flex:1 1 0;min-height:0;grid-template-rows:32px minmax(0,1fr) auto}
 #app .order-layout .order-register>[data-control="Список16"]{height:auto;min-height:0;max-height:none}
 #app .contract-layout .contract-registers{flex:1 1 0;min-height:0}
 #app .contract-registers>.list-register{min-height:0;grid-template-rows:32px minmax(0,1fr) auto}
 #app .contract-registers .list-register>.control-list{min-height:0;max-height:none;height:auto}
 #app .contract-layout .contract-working-area{flex:1 1 0;min-height:0;display:flex;flex-direction:column}
 #app .contract-working-area>.panel-body,#app .contract-working-area [data-control="contract_attach"],#app .contract-working-area [data-related-form="contract_attach"],#app .contract-working-area .attachment-layout{flex:1 1 0;min-height:0;height:100%}
 #app .contract-working-area [data-control="contract_attach"],#app .contract-working-area [data-control="formas"]{display:flex;flex-direction:column}
 #app .contract-working-area .attachment-layout>.panel,#app .contract-working-area .attachment-layout>.details-card{flex:none}
 #app .contract-working-area [data-control="formas"],#app .contract-working-area [data-related-form="contract_attach_adv"],#app .contract-working-area .table-form{flex:1 1 0;min-height:0;height:100%}
 #app .contract-working-area .table-form>.data-table-scroll{flex:1 1 0;height:auto;min-height:76px;max-height:none}
 #app .contract-working-area .table-form>.details-card{flex:none}
 #app .partner-layout>.form-column:last-child>.panel:first-child{flex:1 1 0;min-height:0;display:flex;flex-direction:column}
 #app .partner-layout>.form-column:last-child>.panel:first-child>.panel-body{flex:1 1 0;min-height:0}
 #app .partner-layout>.form-column:last-child .list-table{flex:1 1 0;min-height:0;display:flex;flex-direction:column}
 #app .partner-layout>.form-column:last-child .list-head{flex:none}
 #app .partner-layout>.form-column:last-child [data-control="Список60"]{flex:1 1 0;min-height:0;max-height:none}
}
@media(max-width:650px){.attachment-heading{grid-template-columns:120px minmax(0,1fr)}.attachment-heading>.action-bar{grid-column:1/-1}}
@media(min-width:1101px) and (min-height:600px){#app .contract-registers .action-bar{height:85px;min-height:85px}}
@media(min-width:1101px) and (min-height:600px){body{padding-bottom:28px}#app{padding-bottom:8px}#app .partner-layout>.form-column:first-child{overflow:auto;scrollbar-gutter:stable}}

/* Customers: one frame per working area, with no repeated section titles. */
.partner-search{display:flex;flex-direction:column;gap:8px;padding:8px 12px}
.partner-register>.register-heading{border-top:1px solid var(--section-line);flex:none}
.partner-register>.register-heading>.register-title{font-size:12px}
.partner-register>.action-bar{flex:none;padding:8px 12px;border-top:1px solid var(--section-line)}
.partner-layout>.form-column:first-child>.tabset .tab-panels{padding:0}
.partner-layout>.form-column:first-child>.tabset .table-form{gap:0}
.partner-layout>.form-column:first-child>.tabset .data-table-scroll{border:0;border-radius:0}
.partner-layout .related-table-actions{padding:8px 12px;border-top:1px solid var(--line)}

/* Fields follow the data's meaning, rather than their former Access height. */
.control-text:has(textarea){min-height:32px}
.control-text textarea{field-sizing:content;height:auto;min-height:30px;max-height:none;line-height:20px;overflow-wrap:anywhere}
.partner-lookup>textarea{display:block;width:100%;min-width:0;min-height:30px;height:auto;field-sizing:content;resize:none;border:0;border-radius:4px;background:transparent;padding:5px 34px 5px 10px;line-height:20px;overflow-wrap:anywhere}
.partner-lookup>textarea:disabled{opacity:1;color:#313743;-webkit-text-fill-color:#313743;cursor:default}
.partner-lookup:has(textarea:disabled)>.partner-lookup-toggle{pointer-events:none;color:#8b939e}
.fit-select{position:relative}
.fit-select select{position:absolute;inset:0;width:100%;height:100%!important;opacity:0;cursor:pointer}
.fit-select select:disabled{cursor:default}
.select-value{display:block;min-height:30px;padding:5px 30px 5px 10px;line-height:20px;white-space:normal;overflow-wrap:anywhere;pointer-events:none}
.fit-select::after{content:'⌄';position:absolute;right:9px;top:4px;pointer-events:none;color:#76818d}
.fit-select:focus-within{outline:2px solid #9c791b;outline-offset:1px}
[data-value-kind=money] input,[data-value-kind=percent] input,[data-value-kind=quantity] input,[data-value-kind=number] input,[data-value-kind=integer] input,[data-value-kind=position] input{text-align:right;font-variant-numeric:tabular-nums}
[data-value-kind=inn] input,[data-value-kind=kpp] input,[data-value-kind=ogrn] input,[data-value-kind=okpo] input,[data-value-kind=account] input{font-variant-numeric:tabular-nums}
.table-cell>.control-text:has(textarea),.table-cell textarea{height:auto;min-height:32px;max-height:none}
.table-cell textarea{field-sizing:content;overflow-wrap:anywhere}
.generic-layout .field-grid:has(>.field),.details-body>.field-grid:has(>.field),.table-form>.field-grid:has(>.field),.print-profile .field-grid,.invoice-layout .field-grid:has(>.field){display:flex;flex-wrap:wrap;align-items:flex-start}
.generic-layout .field-grid>.field,.details-body>.field-grid>.field,.table-form>.field-grid>.field,.print-profile .field,.invoice-layout .field-grid>.field{flex:0 1 var(--field-width,230px);max-width:100%}
.generic-layout .field[data-value-kind=long-text],.details-body>.field-grid>.field[data-value-kind=long-text],.table-form>.field-grid>.field[data-value-kind=long-text],.print-profile .field[data-value-kind=long-text],.invoice-layout .field[data-value-kind=long-text]{flex:2 1 var(--field-width,300px);min-width:min(100%,240px)}
.invoice-layout .field[data-value-kind=money]{--field-width:170px}
.partner-type-fields,.partner-registration-fields{display:flex;flex-wrap:wrap;align-items:flex-end}
.partner-type-fields>.field,.partner-registration-fields>.field{flex:0 1 var(--field-width,190px);max-width:100%}
.partner-type-fields>[data-field-for="Поле172"]{flex:1 1 300px}
.partner-type-fields>[data-field-for="Поле174"]{flex-basis:130px}
.partner-type-fields>.control-check{align-self:flex-end}
.partner-name-fields{grid-template-columns:minmax(260px,.9fr) minmax(320px,1.7fr)}
.partner-registration-fields>[data-field-for="Город"]{flex:1 1 210px}
.partner-search .action-bar>.field{flex:0 1 220px;max-width:220px}
.partner-search .action-bar{align-items:flex-end}
.partner-search .action-bar>.control-check{min-height:32px}
@media(min-width:1101px){
 .order-layout .order-main-fields{grid-template-columns:148px minmax(260px,1.35fr) 124px 168px minmax(210px,1fr) minmax(210px,1fr)}
 .contract-summary .contract-main-fields{grid-template-columns:220px 205px 105px 300px 200px minmax(230px,1fr)}
 .contract-summary .contract-party-fields>.field{flex-direction:column;align-items:stretch;gap:4px}
 .contract-summary .contract-party-fields .field-caption{min-height:16px;flex:none;white-space:normal}
 .contract-summary .contract-party-fields .access-control{flex:none}
 .attachment-heading{grid-template-columns:190px 220px minmax(0,1fr)}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .field{flex-direction:column;align-items:stretch;gap:4px}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .field-caption{flex:none;min-height:16px}
 .contract-layout .attachment-layout>.panel[data-surface=finance] .field>.access-control{flex:none}
 .attachment-money-fields{grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) 100px repeat(3,minmax(170px,1fr))}
 .order-print-options{grid-template-columns:210px minmax(0,1fr);align-items:center}
 .order-print-options>.field{flex-direction:row;align-items:center;gap:8px}
 .order-print-options .field-caption{white-space:nowrap;min-height:0}
 .order-print-options [data-control="Поле355"]{width:112px;flex:none}
 #app .order-layout>.form-column:first-child,#app .contract-layout>.form-column:first-child{overflow:auto;scrollbar-gutter:stable}
 #app .order-layout>.form-column:first-child>.panel:first-child{min-height:min-content}
 #app .order-layout>.form-column:first-child>.panel:first-child>.panel-body{height:auto;flex:1}
 #app .order-layout .order-note-fields{min-height:100px}
 #app .contract-layout .contract-working-area{min-height:340px}
}
@media(min-width:1101px) and (max-width:1699px){
 .order-layout .order-main-fields{grid-template-columns:148px minmax(160px,1fr) 124px 148px}
 .contract-summary .contract-main-fields{grid-template-columns:repeat(3,minmax(180px,1fr))}
 .attachment-money-fields{grid-template-columns:repeat(3,minmax(160px,1fr))}
}
@media(max-width:1100px){.attachment-money-fields{grid-template-columns:repeat(3,minmax(160px,1fr))}}
@media(max-width:650px){.partner-name-fields{grid-template-columns:minmax(0,1fr)}.partner-type-fields>.field,.partner-registration-fields>.field{min-width:0}.partner-type-fields>[data-field-for="Поле172"]{flex-basis:100%}.attachment-money-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.generic-layout .field,.details-body>.field-grid>.field,.invoice-layout .field{flex-grow:1}}
.control-combo.fit-select select,.control-combo.fit-select select:disabled{opacity:0;color:transparent;-webkit-text-fill-color:transparent}
#app .partner-layout:has(.print-profile[open]) .partner-register{flex:none;height:360px;min-height:360px}

/* The composition is the main contract workspace, including at laptop height. */
.compact-disclosure{position:relative;flex:none;align-self:end}
.compact-disclosure>summary{min-height:30px;padding:4px 10px;white-space:nowrap;font-weight:500}
.compact-disclosure>.details-body{position:absolute;z-index:80;right:0;width:min(680px,calc(100vw - 80px));max-height:min(60vh,520px);overflow:auto;background:#f6f8fc;border:1px solid #b8c5d7;border-radius:6px;box-shadow:0 8px 28px #23304426}
.compact-disclosure .field-caption{white-space:normal!important}
.contract-summary .compact-disclosure .field{flex-direction:column;align-items:stretch;gap:4px}
.contract-summary .compact-disclosure .field>.access-control{flex:none}
.contract-summary .compact-disclosure .field-caption{flex:none;min-height:16px}
.contract-passport>.details-body{top:calc(100% + 6px)}
.attachment-extra>.details-body,.payment-details>.details-body{bottom:calc(100% + 6px)}
.payment-details>.details-body{width:min(460px,calc(100vw - 80px))}
.contract-layout .attachment-layout>.attachment-totals>.panel-body{padding:6px 10px;gap:6px}
.attachment-totals{position:relative}
.attachment-totals .compact-disclosure{position:static}
.attachment-totals .compact-disclosure>.details-body{right:10px}
.contract-layout .attachment-totals .compact-disclosure>summary{padding:4px 10px}
@media(min-width:1101px){
 .contract-summary .contract-main-fields{grid-template-columns:140px 112px 80px minmax(170px,1fr) 190px}
 .contract-summary .contract-main-fields>.field{flex-direction:column;align-items:stretch;gap:4px}
 .contract-summary .contract-main-fields>.field>.field-caption{min-height:16px;flex:none}
 .contract-summary .contract-main-fields>.field>.access-control,.contract-summary .contract-main-fields>.field>.action-bar{flex:none}
 .contract-summary .contract-main-fields>.field:last-child .action-bar{min-height:32px;flex-wrap:nowrap}
 .contract-summary .contract-party-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end}
 .contract-layout .attachment-money-fields{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) 80px minmax(140px,1fr)}
 #app .contract-layout .contract-working-area{min-height:470px}
 #app .contract-working-area .table-form>.data-table-scroll{min-height:0}
}
@media(min-width:1700px){
 .contract-summary .contract-main-fields{grid-template-columns:160px 112px 80px 250px 200px}
 .contract-summary .contract-party-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
 .contract-summary .contract-main-fields{justify-content:start}
 .contract-summary .contract-main-fields>[data-field-for="type_contr1"]{min-width:250px}
}
@media(max-width:1100px){.contract-summary .contract-main-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.contract-party-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contract-passport{grid-column:1/-1;justify-self:end}.attachment-money-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Compact dates and document numbers also apply to the related accounting forms. */
.documents-layout .field-grid:has(>.field),.act-layout .field-grid:has(>.field){display:flex;flex-wrap:wrap;align-items:flex-start}
.documents-layout .field-grid>.field,.act-layout .field-grid>.field{flex:0 1 var(--field-width,230px);max-width:100%}
.documents-layout .field[data-value-kind=long-text],.act-layout .field[data-value-kind=long-text]{flex:2 1 var(--field-width,300px);min-width:min(100%,240px)}
.attachment-heading .control-text[data-value-kind=date],.order-production-fields .control-text[data-value-kind=date]{max-width:112px}

/* Contract fields and totals requested on screen, without expanding the supplier. */
.contract-summary .contract-main-fields{justify-content:stretch}
.contract-summary .contract-main-fields>[data-field-for="type_contr1"]{min-width:0}
.contract-summary .contract-service>.details-body{top:calc(100% + 6px)}
.attachment-layout>.attachment-totals>.panel-body{flex-direction:row;align-items:flex-end;flex-wrap:wrap;gap:8px 12px}
.attachment-layout .attachment-money-fields{display:flex;flex-wrap:wrap;gap:8px;flex:none;max-width:100%}
.attachment-layout .attachment-money-fields>.field{flex:0 0 var(--money-field-width,112px);width:var(--money-field-width,112px);max-width:100%}
.attachment-layout .attachment-money-fields>.field[data-value-kind=percent]{flex-basis:72px;width:72px}
.attachment-layout>.attachment-totals input{font-size:12px;padding-left:6px;padding-right:6px}
.attachment-totals .action-bar{flex:none;align-items:flex-end}
.composition-table .table-head>div:nth-child(-n+1),.composition-table .table-head>div:nth-child(3),.composition-table .table-head>div:nth-child(4){padding-left:4px;padding-right:4px}
.composition-table .table-cell [data-value-kind=position] input,.composition-table .table-cell [data-value-kind=quantity] input{padding-left:4px;padding-right:4px}
.composition-table .table-cell .select-value{padding-left:5px;padding-right:22px}
.composition-table .table-cell .fit-select::after{right:5px}
@media(min-width:1101px){
 .contract-summary .contract-party-fields{grid-template-columns:220px minmax(0,1fr) auto;align-items:start}
 #app .contract-layout .contract-working-area{min-height:380px}
}
@media(min-width:1700px){
 .contract-summary .contract-main-fields{grid-template-columns:148px 112px 80px 180px 112px minmax(240px,1fr) minmax(240px,1fr)}
}
@media(min-width:1101px) and (max-width:1699px){
 .contract-summary .contract-main-fields{grid-template-columns:148px 112px 80px minmax(150px,1fr) 112px}
 .contract-summary .contract-main-fields>[data-field-for="Поле564"]{grid-column:span 3}
 .contract-summary .contract-main-fields>[data-field-for="ПолеСоСписком562"]{grid-column:span 2}
 .contract-summary .contract-party-fields{grid-template-columns:200px minmax(0,1fr) auto}
 #app .contract-layout .contract-working-area{min-height:320px}
}
.contract-summary .contract-party-fields{grid-template-columns:220px minmax(0,1fr)}
.workspace-tools{display:flex;align-items:center;gap:20px}
#current-date{font-size:13px;color:#48432e;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(min-width:1101px) and (max-width:1699px){.contract-summary .contract-party-fields{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:650px){.workspace-tools{display:none}}

/* Two rows with bounded field widths, including the laptop viewport. */
@media(min-width:1280px){
 .contract-summary .contract-header-two-rows{display:flex;flex-wrap:wrap;gap:4px 8px;justify-content:start;align-items:start}
 .contract-summary .contract-header-two-rows::after{content:"";flex:0 0 100%;height:0;order:6}
 .contract-summary .contract-header-two-rows>.field{flex:var(--contract-field-ratio) 0 var(--contract-field-width);width:var(--contract-field-width);min-width:0}
 .contract-summary .contract-header-two-rows>[data-field-for="Поле251"]{--contract-field-width:132px;--contract-field-ratio:132;order:1}
 .contract-summary .contract-header-two-rows>[data-field-for="data_sign"]{--contract-field-width:108px;--contract-field-ratio:108;order:2}
 .contract-summary .contract-header-two-rows>[data-field-for="NDS"]{--contract-field-width:72px;--contract-field-ratio:72;order:3}
 .contract-summary .contract-header-two-rows>[data-field-for="type_contr1"]{--contract-field-width:145px;--contract-field-ratio:145;order:4}
 .contract-summary .contract-header-two-rows>[data-field-for="Дата2"]{--contract-field-width:108px;--contract-field-ratio:108;order:5}
 .contract-summary .contract-header-two-rows>[data-field-for="ПолеСоСписком19"]{--contract-field-width:170px;--contract-field-ratio:170;order:6}
 .contract-summary .contract-header-two-rows>[data-field-for="ПолеСоСписком20"]{--contract-field-width:248px;--contract-field-ratio:248;order:7}
 .contract-summary .contract-header-two-rows>[data-field-for="Поле564"]{--contract-field-width:219px;--contract-field-ratio:219;order:8}
 .contract-summary .contract-header-two-rows>[data-field-for="ПолеСоСписком562"]{--contract-field-width:286px;--contract-field-ratio:286;order:9}
 .contract-summary .contract-header-two-rows [data-control="NDS"] input{padding-left:5px;padding-right:5px}
 .contract-summary .contract-header-two-rows [data-control="ПолеСоСписком19"] textarea{font-size:13px;padding-right:28px}
}
@media(min-width:1280px) and (max-width:1699px){.contract-summary .contract-header-two-rows::after{order:6}}

@media(min-width:1280px){
 .contract-summary .contract-header-two-rows input,.contract-summary .contract-header-two-rows textarea,.contract-summary .contract-header-two-rows .select-value{text-align:center}
}

/* Financial rows follow the same proportional alignment as the contract card. */
.attachment-layout .attachment-money-fields{flex:1 0 100%;width:100%}
.attachment-layout .attachment-money-fields>.field{flex:var(--money-field-weight,112) 0 var(--money-field-width,112px);width:auto}
.attachment-layout .attachment-money-fields>.field[data-value-kind=percent]{flex:72 0 72px;width:auto}
.contract-summary .contract-header-two-rows .field-caption,.attachment-money-fields .field-caption{text-align:center}
.attachment-totals input{text-align:center}

/* Shared field alignment and proportional directory rows on the other two pages. */
.order-layout .field-caption,.partner-layout .field-caption{text-align:center}
.order-layout input:not([type=checkbox]):not([type=radio]),.order-layout textarea,.order-layout .select-value,
.partner-layout input:not([type=checkbox]):not([type=radio]),.partner-layout textarea,.partner-layout .select-value{text-align:center}
.partner-layout .partner-type-fields>.field,.partner-layout .partner-registration-fields>.field{flex:var(--field-grow,1) 1 var(--field-width,190px)}
.partner-layout .print-profile .field{flex:var(--field-grow,1) 1 var(--field-width,230px)}
.contract-layout .field-caption,.contract-layout .field input,.contract-layout .field textarea,.contract-layout .field .select-value{text-align:center}

/* Orders use two header rows at Full HD and three on smaller desktops. */
.order-layout .order-header-fields{gap:8px;align-items:start}
#app .order-layout .order-header-fields{flex:none}
.order-layout .order-note-fields .field-caption,.order-layout .order-note-fields textarea{text-align:left}
.order-layout .order-register .action-bar>[data-field-for="Поле298"]{flex:0 0 76px;max-width:76px}
@media(min-width:1101px){
 .order-layout>.form-column:last-child>.panel:first-child .order-search-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .order-layout .order-search-fields>[data-field-for="Поле334"]{grid-column:auto}
}
@media(min-width:1280px){
 .order-layout .order-header-fields{grid-template-columns:repeat(24,minmax(0,1fr))}
 .order-header-fields>[data-field-for="Поле10"]{grid-row:1;grid-column:1/span 4}
 .order-header-fields>[data-field-for="Поле2"]{grid-row:1;grid-column:5/span 8}
 .order-header-fields>[data-field-for="Поле31"]{grid-row:1;grid-column:13/span 4}
 .order-header-fields>[data-field-for="ПолеСоСписком350"]{grid-row:1;grid-column:17/span 4}
 .order-header-fields>[data-field-for="ПолеСоСписком338"]{grid-row:1;grid-column:21/span 4}
 .order-header-fields>[data-field-for="ПолеСоСписком14"]{grid-row:2;grid-column:1/span 11}
 .order-header-fields>[data-field-for="ПолеСоСписком219"]{grid-row:2;grid-column:12/span 5}
 .order-header-fields>[data-field-for="Поле29"]{grid-row:2;grid-column:17/span 4}
 .order-header-fields>[data-field-for="Поле30"]{grid-row:2;grid-column:21/span 4}
 .order-header-fields>[data-field-for="data_inp"]{grid-row:3;grid-column:1/span 4}
 .order-header-fields>[data-field-for="Поле97"]{grid-row:3;grid-column:5/span 4}
 .order-header-fields>[data-field-for="Поле99"]{grid-row:3;grid-column:9/span 4}
 .order-header-fields>[data-field-for="Поле101"]{grid-row:3;grid-column:13/span 4}
 .order-header-fields>[data-field-for="Поле337"]{grid-row:3;grid-column:17/span 8}
}
@media(min-width:1700px){
 .order-layout .order-header-fields{grid-template-columns:repeat(24,minmax(0,1fr))}
 .order-header-fields>[data-field-for="Поле10"]{grid-row:1;grid-column:1/span 3}
 .order-header-fields>[data-field-for="Поле2"]{grid-row:1;grid-column:4/span 4}
 .order-header-fields>[data-field-for="Поле31"]{grid-row:1;grid-column:8/span 2}
 .order-header-fields>[data-field-for="ПолеСоСписком350"]{grid-row:1;grid-column:10/span 2}
 .order-header-fields>[data-field-for="ПолеСоСписком14"]{grid-row:1;grid-column:12/span 9}
 .order-header-fields>[data-field-for="ПолеСоСписком219"]{grid-row:1;grid-column:21/span 4}
 .order-header-fields>[data-field-for="Поле29"]{grid-row:2;grid-column:1/span 3}
 .order-header-fields>[data-field-for="Поле30"]{grid-row:2;grid-column:4/span 3}
 .order-header-fields>[data-field-for="data_inp"]{grid-row:2;grid-column:7/span 2}
 .order-header-fields>[data-field-for="Поле97"]{grid-row:2;grid-column:9/span 2}
 .order-header-fields>[data-field-for="Поле99"]{grid-row:2;grid-column:11/span 2}
 .order-header-fields>[data-field-for="Поле101"]{grid-row:2;grid-column:13/span 2}
 .order-header-fields>[data-field-for="ПолеСоСписком338"]{grid-row:2;grid-column:15/span 3}
 .order-header-fields>[data-field-for="Поле337"]{grid-row:2;grid-column:18/span 7}
}
@media(min-width:1280px){
 .partner-layout .partner-registration-fields{flex-wrap:nowrap;gap:8px;align-items:flex-start}
 .partner-layout .partner-registration-fields>.field{flex:var(--registration-weight) 1 var(--registration-width);min-width:var(--registration-width)}
 .partner-registration-fields>[data-field-for="ПолеСоСписком203"]{--registration-width:100px;--registration-weight:100}
 .partner-registration-fields>[data-field-for="Город"]{--registration-width:132px;--registration-weight:132}
 .partner-registration-fields>[data-field-for="Поле293"]{--registration-width:72px;--registration-weight:72}
 .partner-registration-fields>[data-field-for="Поле193"]{--registration-width:116px;--registration-weight:116}
 .partner-registration-fields>[data-field-for="Поле281"]{--registration-width:96px;--registration-weight:96}
 .partner-registration-fields>[data-field-for="Поле266"]{--registration-width:140px;--registration-weight:140}
 .partner-registration-fields>[data-field-for="Поле296"]{--registration-width:104px;--registration-weight:0;max-width:104px}
}

/* Single-line compact controls; full company names remain in suggestions/title. */
.order-header-fields [data-control="ПолеСоСписком219"]{height:32px}
.order-header-fields [data-control="ПолеСоСписком219"] textarea{field-sizing:fixed;height:30px;min-height:30px;max-height:30px;white-space:nowrap;overflow:hidden;font-size:13px;padding-right:28px}
.order-header-fields [data-control="ПолеСоСписком338"] .select-value,.order-header-fields [data-control="ПолеСоСписком350"] .select-value{height:30px;min-height:30px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:6px;padding-right:24px}

.order-header-fields [data-control="Поле2"],.order-header-fields [data-control="Поле337"]{height:32px;min-height:32px;max-height:32px;overflow:hidden}
.order-header-fields [data-control="Поле2"] textarea,.order-header-fields [data-control="Поле337"] textarea{field-sizing:fixed;height:30px;min-height:30px;max-height:30px;white-space:nowrap;overflow:hidden}

.order-header-fields [data-control="Поле2"] textarea,.order-header-fields [data-control="Поле337"] textarea{padding-top:5px;padding-bottom:5px;line-height:20px}

.record-pager{position:sticky;bottom:0;display:flex;gap:8px;align-items:center;justify-content:center;padding:4px;background:#f6f3e8;border-top:1px solid #d8d3bd;font-size:12px}.record-pager button{min-width:28px;cursor:pointer}

/* Stable slots across records; amounts and row contents do not move adjacent fields. */
.attachment-layout .attachment-money-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 80px repeat(3,minmax(0,1fr));gap:8px}
.attachment-layout .attachment-money-fields>.field,.attachment-layout .attachment-money-fields>.field[data-value-kind=percent]{width:auto;min-width:0;max-width:100%}
.access-form[aria-busy=true]{cursor:progress}
.access-form[aria-busy=true] .control-command,.access-form[aria-busy=true] .control-toggle{pointer-events:none;opacity:.65}
.table-cell{position:relative}.table-cell .field-error{font-size:11px;padding:3px;color:#a32620}
@media(max-width:1100px){.attachment-layout .attachment-money-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.order-layout,.contract-layout,.partner-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.attachment-layout .attachment-money-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-summary .contract-header-two-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.contract-summary .contract-header-two-rows>.field{width:auto;min-width:0}.contract-summary .contract-header-two-rows::after{display:none}.contract-registers{grid-template-columns:72px minmax(0,1fr)}.native-modal .field-grid{max-width:100%}}

/* Expanded tools stay in their card and cannot cover editing or navigation controls. */
.attachment-totals .action-bar{flex:1 1 100%;min-width:0;max-width:100%;flex-wrap:wrap}
.attachment-totals .attachment-extra{max-width:100%}
.attachment-totals .attachment-extra[open]{flex-basis:100%;width:100%}
.attachment-totals .attachment-extra>.details-body{position:static;width:100%;max-width:100%;max-height:min(360px,50vh);overflow:auto;box-shadow:none}
.attachment-heading>.action-bar{flex-wrap:wrap;gap:6px}
.outside-filter::after{content:'Вне отбора';font-size:10px;color:#7a6330;padding:2px 8px;grid-column:1/-1}

.form-notice{margin:0;padding:10px 12px;border:1px solid #d8c58d;border-radius:6px;background:#fff9e6;color:#665420;font-size:13px}

/* A longer contract type or company name must not change the summary height. */
.contract-summary .control-text,.contract-summary .control-combo{height:32px;min-height:32px;max-height:32px}
.contract-summary .control-text input,.contract-summary .control-text textarea,.contract-summary .control-combo textarea,.contract-summary .fit-select .select-value{field-sizing:fixed;display:block;height:30px;min-height:30px;max-height:30px;padding-top:5px;padding-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;resize:none;line-height:20px}
.contract-summary [data-control="type_contr1"] .select-value{font-size:12px;padding-left:4px;padding-right:22px}

/* The register keeps usable space while the document profile is expanded. */
#app .partner-layout:has(.print-profile[open])>.form-column:last-child>.partner-register{flex:0 0 auto;height:auto;min-height:0}
#app .partner-layout:has(.print-profile[open]) .partner-register>[data-control="Список60"]{flex:0 0 220px;height:220px;min-height:220px;max-height:220px}

/* Empty and populated order links reserve the same compact space. */
#app .contract-layout .contract-related [data-control="Поле426"]{height:0;min-height:0;max-height:none;flex:1 1 0}
#app .contract-layout .contract-related [data-control="Поле426"]>.empty-state{height:100%;min-height:0;padding:4px 8px}
/* Reclaim the unused action-row space for the contract register. */
#app .contract-registers>.contract-register>.action-bar{height:auto;min-height:43px;padding:6px 8px;align-content:center;align-items:center}

/* Related orders use the full left column; document actions and date share the right. */
.contract-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;min-height:128px}
.contract-related-tools{display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-width:0}
.contract-related-tools>.action-bar{flex-direction:column;align-items:stretch;gap:6px}
#app .contract-layout .contract-related .list-table{display:flex;flex-direction:column;min-height:0}
.contract-related .list-head{flex:none}
/* Keep manual dates and their native calendar together at every form width. */
.date-picker{display:flex;align-items:stretch;position:relative;width:100%;min-width:0;flex:1}
.date-picker>.date-picker-text{flex:1;min-width:0;width:0}
.date-picker>.date-picker-text[type=date]::-webkit-calendar-picker-indicator{display:none}
.date-picker-button{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 24px;min-height:28px;border-left:1px solid #d5dbe4;background:#f5f7fa;color:#53667e;border-radius:0 4px 4px 0}
.control-text .date-picker>input.date-picker-text{padding-left:6px;padding-right:4px}
.date-picker-button svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.date-picker-button:has(input:enabled):hover{background:#e5edf8}
.date-picker-button:has(input:disabled){opacity:.45}
.date-picker-button:focus-within{outline:2px solid #527dab;outline-offset:-2px}
.date-picker .date-picker-button input.date-calendar-input{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-width:none;padding:0;border:0;opacity:0;cursor:pointer}
.date-picker .date-picker-button input.date-calendar-input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}
.date-picker .date-picker-button input.date-calendar-input:disabled{cursor:default}
.floating-suggestions{max-width:calc(100vw - 24px);color:#313743;font:14px/1.4 Arial,sans-serif}
.floating-suggestions .partner-suggestion{min-height:44px;padding:8px 10px;white-space:normal;overflow-wrap:anywhere}
.floating-suggestions .partner-suggestion-name,.floating-suggestions .partner-suggestion-detail{white-space:normal;overflow-wrap:anywhere}
.partner-suggestion[aria-disabled=true]{opacity:.5;cursor:default}
