/* styles-prod-order-cut.css — лист «План кроя» заказа (pages-prod-order-cut*.js, 31.10.2026).
   Тот же вид, что «Норма материала» (styles-prod-order-norm.css): таблицы .plan-table, поля
   в ячейках рамкой, серое — система, жёлтое — мастер. Здесь те же правила для двух таблиц
   листа (#prodOrderCutSum — заказ и остаток, #prodOrderCutTable — крои) + подписи разделов. */

.pk-wrap { padding-bottom: 10px; }
.pk-cap { display: flex; align-items: center; gap: 6px; padding: 9px 4px 6px; font-weight: 800; color: #284d72; font-size: 12px; text-transform: uppercase; letter-spacing: .02em; }

.pk-table { table-layout: fixed; }
.pk-table > tbody > tr > td { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }
.pk-table > tbody > tr > td:focus-within { overflow: visible; }
.pk-table th { position: relative; }
.pk-table td.pn-c { text-align: center; }
.pk-table td.pn-num { text-align: right; }
.pk-table td.pn-item { white-space: normal; line-height: 1.25; }
.pk-table td.pn-sys { color: #40506d; }
.pk-table tr.pn-first > td { border-top: 1px solid #b9cadf; }
.pk-table .pn-sep { border-left: 2px solid #9fb3d1; }
.pk-table th.pn-sz-th { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pk-table .pk-b { font-weight: 700; }
.pk-table td.pk-lb { color: #5d6b80; }
.pk-table td.pk-none { background: #eef2f7; }
.pk-table .pk-zero { color: #a9b3c2; }
.pk-table .pk-rem { color: #b26b00; font-weight: 700; }
.pk-table .pk-over { color: #d93a3a; font-weight: 700; }
.pk-table .pk-ok { color: #1d7a3a; font-weight: 700; }
.pk-table tr.pk-remrow > td { border-bottom: 1px solid #9fb3d1; }
/* «в плане» (pages-prod-order-cut-sum.js): меньше заказа — оранжевое, больше — красное; цвета — как у pn-warn/pn-err. */
.pk-table td.pk-plan-under { background: #fff5e6; color: #b26b00; font-weight: 700; box-shadow: inset 0 0 0 1px #e08a00; }
.pk-table td.pk-plan-over { background: #fdecec; color: #d93a3a; font-weight: 700; box-shadow: inset 0 0 0 1px #d93a3a; }
.pk-table td.pk-empty { color: #8a96a8; padding: 10px; }
.pk-table .pk-st { display: inline-block; border-radius: 7px; padding: 1px 8px; background: #e7ecf5; color: #4a5874; font-weight: 700; }

/* Поле: рамка как у даты «Состава ПЗ», число справа — как в «Норме материала». */
.pk-table .pn-cell { display: flex; align-items: center; gap: 2px; box-sizing: border-box; width: 100%; border: 1px solid #cdd5e0; border-radius: 4px; background: #fff; padding: 0 3px; min-height: 24px; }
.pk-table .pn-in { flex: 1 1 auto; min-width: 0; width: 100%; border: 0; background: transparent; font: inherit; color: inherit; padding: 3px 1px; text-align: right; outline: 0; }
.pk-table .pn-in.pn-txt { text-align: left; }
.pk-table .pn-u { flex: 0 0 auto; color: #5d6b80; }
.pk-table td.pn-sz { text-align: center; padding: 2px 3px; }
.pk-table .pn-sz-in { box-sizing: border-box; width: 100%; border: 1px solid #cdd5e0; border-radius: 4px; background: #fff; text-align: center; font-weight: 700; padding: 2px 1px; }
.pk-table .pn-sz-q { color: #5d6b80; line-height: 1.2; min-height: 12px; }
.pk-table td.pn-sz-none { background: #eef2f7; }
.pk-table .pn-cell.pn-calc { background: #eef2f7; }
.pk-table .pn-cell.pn-calc .pn-in, .pk-table .pn-cell.pn-man .pn-in { font-weight: 700; }
.pk-table .pn-cell.pn-man { background: #fff7d6; border-color: #e6c95c; }
.pk-table .pn-cell.pn-err, .pk-table .pn-sz-in.pn-err { border-color: #d93a3a; box-shadow: 0 0 0 1px #d93a3a; background: #fdecec; }
.pk-table .pn-cell.pn-warn, .pk-table .pn-sz-in.pn-warn { border-color: #e08a00; box-shadow: 0 0 0 1px #e08a00; background: #fff5e6; }
.pk-table tr.pn-tot > td { font-weight: 700; background: #eef3fa; border-top: 2px solid #9fb3d1; }

/* Выпадашка «цвет» — шрифт ячейки листа, как поля рядом. */
.pk-table .pk-pair-btn { font: inherit; }
/* Цвет — по центру ячейки, как короткие колонки листа; ткань на крой — серое поле системы. */
.pk-table td.pn-c .pk-pair-wrap { display: inline-flex; justify-content: center; }
.pk-table td.pk-kg { background: #eef2f7; }
/* Крой в заданиях: строка серая, правка закрыта; в «задания» — номера и статусы. */
.pk-table tr.pk-sent > td { background: #f1f4f8; color: #5d6b80; }
.pk-table tr.pk-sent .pn-cell, .pk-table tr.pk-sent .pn-sz-in { background: #f1f4f8; border-color: #e1e7ef; color: #5d6b80; }
/* Пустую партию ткани вписывают и у кроя в работе — поле живое; вписанная — серая (только чтение),
   замена значком ✎ (.pz-cut-lot-edit, styles-pz-groups.css) — services/cut_lot.py. */
.pk-table tr.pk-sent .pn-cell[data-pk-e="part"] { background: #fff; border-color: #cdd5e0; color: inherit; }
.pk-table tr.pk-sent .pn-cell.pk-lot-set { background: #f1f4f8; border-color: #e1e7ef; font-weight: 600; }
.pk-table .pn-cell .pz-cut-lot-edit { margin-left: 2px; height: 20px; line-height: 18px; padding: 0 5px; }

/* «План кроя по заказу» (01.11.2026, pages-prod-order-cut-sum.js): изделие крупно слева, как в
   спецификации Barzu; строка «заказ» — опорная (фон, жирно), под ней сделано / осталось. */
.pk-table tr.pk-sum-order > td { border-top: 2px solid #b9cadf; background: #e9f0fa; font-size: 13px; font-weight: 700; color: #1d2a3b; }
.pk-table tr.pk-sum-order > td.pk-sum-no, .pk-table tr.pk-sum-order > td.pk-sum-photo, .pk-table tr.pk-sum-order > td.pk-sum-item, .pk-table tr.pk-sum-order > td.pk-sum-side { background: transparent; }
.pk-table td.pk-sum-no { font-size: 15px; }
.pk-table td.pk-sum-item { white-space: normal; padding: 6px 10px; }
.pk-table .pk-sum-name { font-size: 13px; font-weight: 700; color: #1d2a3b; line-height: 1.3; }
.pk-table .pk-sum-color { margin-top: 3px; font-size: 12px; font-weight: 600; color: #1d2a3b; }
.pk-table .pk-sum-chip { display: inline-block; margin-top: 5px; padding: 1px 10px; border: 1.5px solid #8fa6c4; border-radius: 999px; background: #fff; color: #1d2a3b; font-size: 12px; font-weight: 600; }
.pk-table td.pk-sum-side { overflow: visible; }
/* «техкарта» — файлы кроя, как «файлы СЗ» (app-prod-attach.js). */
.pk-table td.pk-file { overflow: visible; }

/* Автокрой (01.11.2026; без тумблера режима — 02.11.2026, pages-prod-order-cut-auto.js). Строка над
   кроями: ограничения — поле листа; у цвета — «+ добор»; добор — жёлтое (вписал мастер);
   автокрой системы — серые поля (цвет = источник, свод §2). */
.pk-cap .pk-auto-strip { display: inline-flex; align-items: center; gap: 4px; margin-left: 26px; font-weight: 600; text-transform: none; letter-spacing: 0; vertical-align: middle; }
.pk-auto-strip .pk-auto-lb { margin-left: 6px; }
.pk-auto-strip .pk-auto-gap { margin-left: 22px; }
.pk-auto-strip .pk-auto-num { box-sizing: border-box; width: 52px; border: 1px solid #cdd5e0; border-radius: 4px; background: #fff; text-align: right; font: inherit; font-weight: 700; padding: 2px 4px; margin: 0 4px; }
.pk-sum-item .pk-mode-line { margin-top: 6px; display: flex; align-items: center; gap: 4px; color: #5d6b80; }
.pk-sum-item .pk-dob-add { font-size: 13px; }
.pk-table td.pk-sum-item, .pk-table tr.pk-dob-row td.pk-lb { overflow: visible; }
.pk-mode-wrap { position: relative; display: inline-flex; }
.pk-mode-wrap .pk-mode-btn { font: inherit; }
.pk-mode-wrap.open { z-index: 30; }
.pk-table .pk-dob-in { width: 52px; background: #fff7d6; border-color: #e6c95c; }
.pk-table tr.pk-auto .pn-cell[data-pk-e="layers"], .pk-table tr.pk-auto .pn-sz-in { background: #eef2f7; }
.pk-table .pk-new { color: #b26b00; font-weight: 700; }

/* «Артикулы ▾» на панели «Плана кроя» и «Нормы материала» — канон массового выбора в выпадашке
 * (pages-prod-order-arts.js; .masters-section + .prod-order-nom-bar). */
.po-arts-wrap { display: inline-block; }
.po-arts-menu { min-width: 220px; max-height: 360px; }
