
:root{font-family:Arial,Helvetica,sans-serif;color:#173961;background:#07111f;font-size:14px}*{box-sizing:border-box}body{margin:0;background:#07111f url('image-1.png') center/cover fixed no-repeat;min-height:100vh}button,input{font:inherit}button{cursor:pointer;font-weight:700;color:#08274d;border:1px solid #7399cb;border-radius:5px;padding:7px 15px;background:linear-gradient(#fff,#e5effc 48%,#bad3f1);box-shadow:inset 0 1px 1px #fff,inset 0 -2px 4px #7897ba55,0 2px 5px #0002}button:hover{filter:brightness(1.07)}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible{outline:2px solid #087af4;outline-offset:1px}header{height:58px;display:flex;align-items:center;padding:8px 18px;color:white;background:linear-gradient(90deg,#03113b,#082968 52%,#03113b);border-bottom:1px solid #4b86da;gap:20px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-family:'Segoe UI',Arial,sans-serif;font-weight:600}.brand img{width:36px;height:36px;object-fit:contain}h1{font-size:20px;text-align:center;margin:0;flex:1;padding-right:210px}.toolbar{margin:7px 10px;padding:9px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;border:1px solid #9bb8db;border-radius:6px;background:linear-gradient(#ebf3fdf2,#cddff4e8);box-shadow:0 4px 12px #0003}.toolbar .hint{margin-left:auto;font-size:13px}.workspace{display:grid;grid-template-columns:minmax(690px,1fr) minmax(350px,440px);gap:18px;margin:28px 26px;align-items:start}.panel{border:1px solid #6494cd;border-radius:6px;background:#e2edfacb;box-shadow:0 4px 12px #0004;overflow:hidden}.panel-title{margin:0;background:linear-gradient(#1688f4,#0a60c4);color:#fff;font-size:15px;font-weight:800;text-align:center;padding:9px}.table-wrap{height:calc(100vh - 241px);min-height:360px;overflow:auto;scrollbar-color:#84a8d6 #dce9f7}table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}col.rownum{width:39px}col.name{width:23%}col.dimension{width:10%}col.edge{width:8%}col.decor{width:20%}th{position:sticky;top:0;z-index:2;background:#64c6f4;color:#113453;font-size:12px;height:38px;border-right:1px solid #6294bc;border-bottom:1px solid #4678a1;white-space:nowrap}th:first-child{left:0;z-index:3}td{padding:0;border-right:1px solid #91adc8;border-bottom:1px solid #91adc8;height:29px;background:#edf5fcbb}td:first-child{font-size:12px;text-align:center;background:#c8ddf0;color:#466887;position:sticky;left:0;z-index:1}tr:nth-child(even) td:not(:first-child){background:#e1edf9bb}td input{display:block;border:0;background:transparent;width:100%;height:29px;padding:3px 7px;min-width:0;color:#163958;border-radius:0}td input.numeric{text-align:right}td input.edge{text-align:center}td:focus-within{background:linear-gradient(#fff3a9,#ffd735) !important;box-shadow:inset 0 0 0 2px #087bf3}input[aria-invalid="true"]{background:#ffe0df;color:#a02222}.table-footer{padding:9px 12px;background:#d4e4f5;display:flex;align-items:center;gap:12px;font-size:12px}.table-footer button{padding:4px 10px;font-size:12px}.sidebar{display:grid;gap:16px}.summary{padding:16px}.equation{display:grid;gap:8px}.metric{border:1px solid #749cc5;border-radius:4px;padding:12px;background:#dcecf9cc}.metric.primary{background:linear-gradient(#7fd5ff,#44b6f0);border-color:#5a9abc}.metric.yellow{background:linear-gradient(#fffac5,#ffec70)}.metric .label{font-weight:700;font-size:13px;line-height:1.45}.value{display:block;font-weight:800;font-size:28px;text-align:right;margin-top:6px;color:#0c3155;font-variant-numeric:tabular-nums}.unit{font-weight:normal;font-size:14px}.meters{display:block;text-align:right;font-size:13px;margin-top:3px;color:#33587a}.operator{text-align:center;font-weight:900;font-size:23px;line-height:1}.counts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.counts .value{font-size:25px}.note{font-size:12px;line-height:1.55;margin:13px 0 0}.guide{padding:14px 16px;font-size:13px;line-height:1.65}.guide p{margin:0 0 7px}.guide p:last-child{margin:0}.status{padding:9px 12px;min-height:35px;border-top:1px solid #91adc8;background:#e6f0f8;font-size:12px}.status.error{background:#ffe5de;color:#902c20}#projectInput{display:none}@media(max-width:1150px){.workspace{grid-template-columns:1fr;margin:18px 12px}.sidebar{grid-template-columns:1fr 1fr}.table-wrap{height:55vh}.toolbar .hint{width:100%;margin:0}h1{padding-right:0;font-size:17px}}@media(max-width:720px){header{height:auto;flex-direction:column;gap:8px}h1{font-size:18px}.brand img{width:30px;height:30px}.workspace{display:block}.sidebar{display:block;margin-top:16px}.sidebar>.panel{margin-bottom:16px}table{min-width:850px}.toolbar button{font-size:12px;padding:7px 9px}.toolbar .hint{line-height:1.5}}

/* v2: компактная страница, единое поле вставки, просмотр данных по страницам. */
html,body{height:100%;overflow:hidden}body{display:flex;flex-direction:column}header{height:48px;min-height:48px;padding:5px 14px}.brand img{width:32px;height:32px}h1{font-size:18px}.toolbar{margin:5px 10px;padding:6px;flex-shrink:0}.toolbar button{font-size:12px;padding:5px 10px}.toolbar .hint{font-size:12px}.workspace{flex:1;min-height:0;width:calc(100% - 32px);max-width:1560px;align-self:center;grid-template-columns:minmax(0,1fr) 330px;gap:14px;margin:14px 16px 16px;align-items:stretch}.workspace>section{display:flex;flex-direction:column;min-height:0}.panel-title{font-size:13px;padding:7px}.table-wrap{height:auto;min-height:0;flex:1;overflow:hidden}th{height:29px;font-size:11px}td{height:27px;padding:3px 6px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}td.numeric{text-align:right}td.edge{text-align:center}.paste-row td{padding:0;height:33px}.paste-row td:first-child{font-size:14px}.paste-row input{height:33px;text-align:left;background:linear-gradient(#fff7b5,#ffd735);font-weight:700;color:#173961;padding:6px 10px;cursor:text}.paste-row input::placeholder{color:#173961;opacity:1}.table-footer{padding:6px 9px;gap:9px;flex-shrink:0;font-size:11px}.table-footer button{padding:2px 8px}.status{padding:6px 9px;min-height:28px;flex-shrink:0;font-size:11px}.sidebar{display:block;min-height:0}.sidebar>.panel{height:100%;display:flex;flex-direction:column}.summary{padding:10px;min-height:0;display:flex;flex-direction:column;justify-content:center;flex:1}.equation{gap:5px}.metric,.metric.yellow,.metric.primary{background:linear-gradient(#7fd5ff,#44b6f0);border-color:#5a9abc;padding:9px}.metric .label{font-size:12px}.value{font-size:25px;margin-top:3px}.meters{font-size:12px}.operator{font-size:18px}.counts{gap:7px;margin-top:10px}.counts .value{font-size:22px}.note{font-size:11px;margin-top:9px}.table-wrap table{min-width:0}td[aria-invalid="true"]{background:#ffe0df!important;color:#a02222}@media(max-width:1150px){.workspace{grid-template-columns:minmax(0,1fr) 300px;margin:10px 12px 12px;width:calc(100% - 24px)}.toolbar .hint{width:auto;margin-left:auto}.sidebar{display:block}.table-wrap{height:auto}}@media(max-width:720px){header{flex-direction:row;gap:8px}.brand span{font-size:11px}h1{font-size:12px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:6px;width:calc(100% - 12px);margin:6px}.sidebar{margin:0}.sidebar>.panel{margin:0}.summary{padding:6px}.metric .label{font-size:10px}.value{font-size:19px}.counts{grid-template-columns:1fr}.counts .value{font-size:16px}.metric{padding:5px!important}th,td{font-size:9px}.toolbar{gap:4px}.toolbar .hint{display:none}.note{font-size:9px}}

/* v3: уменьшенные блоки по образцу, внутренняя прокрутка и компактная вставка. */
.workspace{flex:none;width:76%;max-width:1560px;height:min(64vh,calc(100vh - 150px));margin:auto;grid-template-columns:minmax(0,1fr) minmax(250px,22%);gap:14px;align-self:center}.table-wrap{overflow:auto;min-height:0;scrollbar-color:#7ca8d1 #dceaf7;scrollbar-width:thin}.paste-bar{padding:7px 9px;border-bottom:1px solid #91adc8;background:#d4e4f588;flex-shrink:0}.paste-button{display:block;width:190px;height:30px;border:1px solid #bb971c;border-radius:6px;background:linear-gradient(#fff8ba,#ffe261 48%,#edc723);box-shadow:inset 0 1px 2px #fff,0 2px 4px #0002;text-align:center;color:#173961;font-size:12px;font-weight:700;cursor:pointer}.paste-button:focus{outline:2px solid #087af4;outline-offset:1px}.value{font-size:18px;font-weight:700}.counts .value{font-size:18px}.summary{justify-content:center;padding:9px}.metric,.metric.primary,.metric.yellow{padding:8px}.metric .label{font-size:11px}.meters{font-size:11px}.note{font-size:10px}.operator{font-size:16px}.counts{margin-top:8px}.table-footer{min-height:25px}.unit{font-size:12px}@media(max-width:1150px){.workspace{width:92%;height:min(70vh,calc(100vh - 155px));margin:auto;grid-template-columns:minmax(0,1fr) 260px;gap:10px}}@media(max-height:650px){.workspace{height:calc(100vh - 140px)}.summary{padding:5px}.metric,.metric.primary,.metric.yellow{padding:5px}.metric .label{font-size:10px}.value,.counts .value{font-size:16px}.meters{font-size:10px}.note{margin-top:5px;font-size:9px}.equation{gap:3px}}@media(max-width:720px){.workspace{width:98%;grid-template-columns:minmax(0,1fr) 205px;gap:6px}.counts{grid-template-columns:1fr 1fr}.paste-button{width:160px}.metric .label{font-size:9px}}

.file-menu-wrap{position:relative}.file-menu{display:none;position:absolute;left:0;top:calc(100% + 4px);min-width:180px;padding:5px;border:1px solid #7e9fc4;border-radius:6px;background:linear-gradient(#f7fbff,#dbe9f8);box-shadow:0 6px 18px #0004;z-index:20}.file-menu.open{display:block}.file-menu button{display:block;width:100%;border:0;box-shadow:none;background:transparent;text-align:left;padding:8px!important}.file-menu button:hover{background:#cfe6fb}.file-menu hr{border:0;border-top:1px solid #a2b8d1;margin:4px}.paste-button::placeholder{color:#173961;opacity:1}.export-modal[hidden]{display:none}.export-modal{position:fixed;inset:0;background:#031129b3;z-index:40;display:grid;place-items:center}.export-box{width:min(440px,95vw);background:#e2edfa;border:1px solid #6494cd;border-radius:6px;overflow:hidden;box-shadow:0 8px 32px #0007}.export-body{padding:18px;line-height:1.5;font-size:13px}.export-body label{display:block;padding:8px 0;font-weight:700}.export-actions{display:flex;justify-content:flex-end;gap:8px}#exportError{color:#9b2920;margin-bottom:0}#pdfReportRoot{display:none}
@media print{@page{margin:10mm}html,body{height:auto!important;min-height:0!important;overflow:visible!important;background:white!important;display:block!important;color:#173961!important}body>*:not(#pdfReportRoot){display:none!important}#pdfReportRoot{display:block!important;width:100%;font-family:Arial,Helvetica,sans-serif}.print-header{display:flex;justify-content:space-between;gap:5mm;align-items:center;border-bottom:1px solid #335e91;padding-bottom:3mm;margin-bottom:5mm;font-size:10pt}.print-header b{font-size:12pt}.print-title{font-size:11pt;color:#173961;border-bottom:1px solid #7b9bbd;padding:2mm 0;margin:4mm 0}.print-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2mm;break-inside:avoid;margin-bottom:5mm}.print-metric{border:1px solid #7b9bbd;padding:3mm;font-size:9pt;background:#e2f0fb!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-metric b{display:block;font-size:11pt;margin-top:2mm}.print-note{font-size:9pt}.print-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:8pt}.print-table thead{display:table-header-group}.print-table th{position:static;white-space:normal;height:auto;padding:2mm 1mm;font-size:8pt;background:#d9eafa!important;border:1px solid #7b9bbd;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-table td,.print-table td:first-child{position:static;height:auto;padding:1.5mm 1mm;background:white!important;border:1px solid #a5b8cd;white-space:normal;overflow-wrap:anywhere;font-size:8pt;text-overflow:clip}.print-table tr{break-inside:avoid}.print-empty{font-size:10pt}}
