/* Атрибут hidden имеет приоритет над предметной сеткой. */
.expense-form.is-packaging [hidden],.packaging-expense-fields[hidden],.packaging-expense-fields [hidden],.pack-order-editor [hidden],.packaging-list [hidden]{display:none!important}
/* Один тип упаковки — одна строка в привычном списке изделий. */
.select-box-selected{display:flex;align-items:baseline;gap:10px;min-width:0;overflow:hidden}
.select-box-selected .select-box-size{flex:none}
.select-box-selected .select-box-products{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}
.packaging-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--section-gap);margin-bottom:var(--section-gap)}.packaging-tools input{min-width:0;height:var(--pack-control-height);font-size:16px}.packaging-tools>div{display:flex;gap:8px}.packaging-tools button{min-height:44px;font-size:13px}.packaging-tools [aria-pressed=true]{border-color:var(--teal);color:var(--teal)}
.packaging-list{gap:10px}.packaging-row{display:grid;grid-template-columns:64px minmax(0,1fr) 100px 150px;align-items:center;gap:16px;padding:16px 18px;min-width:0}
.packaging-thumb{display:flex;align-items:center;justify-content:center;width:64px;height:64px}.packaging-thumb .pack-icon{width:64px;height:56px}
.packaging-title{min-width:0}.packaging-title h3{font:700 16px/1.3 var(--font-display)}.packaging-title p{font-size:13px;line-height:1.45;color:var(--text-muted);margin-top:5px;overflow-wrap:anywhere}
.packaging-balance{text-align:right}.stock-count{display:flex;align-items:center;justify-content:flex-end;gap:4px}.stock-count input{width:74px;min-width:0;height:44px;border-color:transparent;background:transparent;text-align:right;font:500 18px var(--font-mono);padding:6px 2px;appearance:textfield}.stock-count input::-webkit-inner-spin-button{appearance:none}.stock-count input:hover{border-color:var(--border);background:var(--surface)}.stock-count input:focus{border-color:var(--teal);background:var(--surface)}.stock-count span{font-size:12px;color:var(--text-muted)}
.stock-state{display:block;font-size:12px;line-height:1.4;color:var(--text-muted)}.stock-state:empty{display:none}.stock-state.is-low{color:var(--amber)}
.packaging-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.packaging-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}.packaging-actions button{font-size:12px;min-height:44px;padding:8px 12px}
/* Композиция одинаковая в двух режимах: переключатель, выбор, размеры, количество. */
.box-editor-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;align-items:center;min-width:0}.box-editor-bar{grid-column:1/-1;grid-row:1;display:flex;align-items:center;justify-content:flex-start;gap:16px;min-height:44px}.box-editor-bar>div{display:flex;gap:16px;min-width:0} .box-portrait{grid-column:1;grid-row:2;display:grid;justify-items:center;gap:0;min-width:0;perspective:500px}.pack-source{display:flex;align-items:center;justify-content:center;min-height:32px;min-width:48px;font-size:13px;transform-origin:center}.pack-source a{display:flex;align-items:center;min-height:32px;color:var(--text-muted);text-decoration-color:var(--border)}.pack-source a:hover{color:var(--teal)}
.box-editor-bar button{min-height:44px;padding:2px 0;border:0;border-bottom:1px solid transparent;background:none;font-size:13px;color:var(--text-muted);white-space:nowrap}.box-editor-bar button[aria-pressed=true]{color:var(--text);border-bottom-color:var(--teal)}.box-editor-bar button:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.custom-preview{display:flex;align-items:center;justify-content:center;min-width:0}.custom-preview .pack-icon{width:192px;height:var(--pack-preview-height);max-width:100%;overflow:visible}.custom-preview .box-ink{fill:var(--surface);stroke-width:1.5}
.pack-existing{grid-column:2;grid-row:2;min-width:0;align-self:start;margin-top:calc((var(--pack-preview-height) - var(--pack-control-height))/2)}.pack-existing .custom-select{width:100%}.custom-fields{border:0;padding:0;margin:0}.custom-fields:not([hidden]){display:contents}.import-line{grid-column:2;grid-row:2;display:flex;min-width:0;align-self:start;margin-top:calc((var(--pack-preview-height) - var(--pack-control-height))/2)}.import-line input{min-width:0;width:100%}.import-feedback{grid-column:1/-1}.import-feedback:has(.import-status:empty){display:none}.import-status,.packaging-expense-fields .error,.packaging-list .error,.pack-order-editor .error{font-size:12px;line-height:1.5;color:var(--text-muted)}.packaging-expense-fields .error,.packaging-list .error,.pack-order-editor .error{color:var(--red)}.import-status:empty,.packaging-expense-fields .error:empty,.packaging-list .error:empty,.pack-order-editor .error:empty{display:none}
.dimension-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border:0;padding:0;margin:8px 0 0}.dimension-fields input{font-family:var(--font-mono)}
.purchase-qty{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.expense-submit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;min-height:44px}.expense-submit output{max-width:100%;overflow-wrap:anywhere;font:500 14px var(--font-mono);color:var(--text-soft)}.expense-form.is-packaging .form-foot button{font:700 14px var(--font-body);padding:12px 22px;min-height:44px;margin-left:auto}
.expense-form.is-packaging .expense-purchase-fields{grid-template-columns:1fr 1fr 2fr}
.product-icons{display:flex;flex:none}.product-mini{display:block;width:32px;height:32px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}
/* Размер — основной текст варианта, изделие — спокойная вторая строка. */
.custom-select-menu:is(.is-box-picker,.is-target-picker){top:var(--box-menu-top)!important;bottom:var(--box-menu-bottom)!important;left:var(--box-menu-left)!important;right:auto!important;width:var(--box-menu-width)!important;max-height:var(--box-menu-max-height)!important;padding:6px;border-radius:var(--radius-sm)}.custom-select-backdrop.is-box-picker-backdrop{background:transparent;backdrop-filter:none}
.is-box-picker .custom-select-option{align-items:center;font-size:14px;gap:12px;min-height:64px;padding:10px 30px 10px 12px;white-space:normal}.select-box-icon{display:flex;align-items:center;flex:none;width:44px;height:36px}.select-box-icon .pack-icon{width:44px;height:36px}.select-box-copy{display:grid;gap:4px;min-width:0}.select-box-size{white-space:nowrap;font-size:14px;line-height:1.3}.select-box-products{font-size:12px;line-height:1.4;font-weight:400;color:var(--text-muted);white-space:normal;overflow-wrap:anywhere}.is-box-picker .is-selected .select-box-products{color:var(--text-soft)}
/* Один контурный объект для строки, предпросмотра и ввода. */
.pack-icon{width:80px;height:60px;display:block;color:var(--text-soft);overflow:visible;flex:none}.box-ink{fill:var(--surface-2);stroke:currentColor;stroke-width:1.35;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.box-seam{fill:none;stroke:currentColor;stroke-width:.8;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.65}.box-ground{fill:var(--text);opacity:.035}.box-edge-light{fill:none;stroke-width:2;opacity:0;vector-effect:non-scaling-stroke}.motion-guides{fill:none;stroke:var(--teal);stroke-width:.8;opacity:0;stroke-linecap:round}.motion-guides polyline{opacity:.15;vector-effect:non-scaling-stroke}.motion-guides .is-active{opacity:.8}.motion-guides text{display:none}.is-morphing .motion-guides{opacity:calc(var(--motion-phase)*.7)}.is-morphing .box-edge-light{opacity:calc(var(--motion-phase)*.9)}.is-morphing .box-ground{opacity:.06}

:root{--pack-control-height:48px;--pack-label-gap:8px;--pack-preview-height:126px}
.packaging-expense-fields{display:grid;gap:var(--section-gap);border:0;padding:0;margin:0}
.packaging-stock-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--section-gap);min-width:0}
.pack-purchase-line{display:grid;gap:16px;min-width:0}
.pack-purchase-line+.pack-purchase-line{padding-top:20px;border-top:1px solid var(--border)}
.packaging-expense-fields>[data-pack-lines]{display:grid;gap:20px}
.expense-form.is-packaging input:not([type=checkbox]),.expense-form.is-packaging .custom-select-trigger{min-height:48px;height:48px;font-size:16px}
.expense-form.is-packaging .custom-select-trigger{font-size:14px}
.expense-form.is-packaging label{gap:8px}
.expense-form.is-packaging .form-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;min-height:44px}
.expense-form.is-packaging .form-foot output{font:500 14px var(--font-mono);color:var(--text-soft)}
.expense-form.is-packaging .form-foot>.btn{font:700 14px var(--font-body);min-height:44px;margin-left:auto}
.box-editor-bar .pack-remove{margin-left:auto;padding-inline:12px}
.pack-add-line{justify-self:start;font-size:13px;min-height:44px}
.pack-main-choice{display:flex!important;align-items:center;gap:8px;margin-top:8px;font-size:12px!important;min-height:44px}
.pack-main-choice input{width:18px;height:18px;accent-color:var(--teal)}
.expense-form.is-packaging .product-choice{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px}
.pack-unknown .box-ink{stroke-dasharray:3 3;opacity:.5}
.packaging-balance .error{display:block;max-width:160px}
.pack-order-editor{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;flex-basis:100%;min-width:0;padding-block:12px}
.pack-order-editor label{display:grid;gap:6px;min-width:0;font-size:12px;color:var(--text-muted)}
.pack-order-editor [data-pack-order-places]{display:grid;gap:12px}
.pack-order-place{display:grid;grid-template-columns:minmax(0,1fr) 80px 44px;gap:12px;align-items:end}
.pack-order-place>button{height:44px}
.pack-order-actions{display:flex;flex-wrap:wrap;gap:12px}
.shipment-note{font-size:12px;color:var(--text-muted);padding-block:8px}
@media(max-width:900px){.packaging-row{grid-template-columns:56px minmax(0,1fr) 96px 130px;gap:12px;padding:16px}.packaging-thumb{width:56px;height:56px}.packaging-thumb .pack-icon{width:56px;height:48px}}
@media(max-width:600px){
 .packaging-tools{grid-template-columns:1fr;gap:8px}.packaging-tools>div{justify-content:flex-start}
 .packaging-row{grid-template-columns:48px minmax(0,1fr) 76px;gap:10px 12px;padding:14px}.packaging-thumb{width:48px;height:48px}.packaging-thumb .pack-icon{width:48px;height:42px}.packaging-title h3{font-size:14px}.packaging-title p{font-size:12px}.packaging-balance{align-self:start}.stock-count input{width:54px;font-size:17px}.stock-state{font-size:11px}.packaging-actions{grid-column:2/-1;justify-content:flex-start;gap:16px}
 .box-editor-stage{--pack-preview-height:78px;grid-template-columns:104px minmax(0,1fr);gap:12px}.custom-preview .pack-icon{width:104px;height:var(--pack-preview-height)}.pack-source,.pack-source a{min-height:44px}.box-editor-bar>div{gap:14px}.box-editor-bar button{font-size:12px}.dimension-fields{gap:12px}.dimension-fields input{padding-inline:10px}
 .is-box-picker .custom-select-option{min-height:64px;padding:10px 30px 10px 10px}.custom-select-menu:is(.is-box-picker,.is-target-picker){max-height:min(400px,var(--box-menu-max-height))!important}.select-box-icon{width:36px;height:32px}.select-box-icon .pack-icon{width:36px;height:32px}
 .pack-order-place{grid-template-columns:minmax(0,1fr) 66px 36px;gap:8px}
}
@media(prefers-reduced-motion:reduce){.packaging-expense-fields *,.packaging-expense-fields *::after,.packaging-list *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.pack-order-place .pack-place-reuse{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-height:32px}.pack-place-reuse input{width:18px;height:18px;accent-color:var(--teal)}

.pack-binding-list{display:grid;gap:8px;min-width:0}.pack-binding-row{display:flex;gap:8px;align-items:center;min-width:0}.pack-binding-row>.custom-select{flex:1;min-width:0}.pack-binding-row>button{flex:none;width:44px;height:44px}.pack-binding-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.pack-binding-actions>button{font-size:12px;min-height:44px;padding-inline:0;color:var(--text-muted)}.pack-binding-actions .pack-main-choice{margin:0}
.select-target-copy{display:flex;align-items:center;gap:10px;min-width:0;text-align:left}.select-order-number{font:500 12px var(--font-mono);color:var(--text-muted);flex:none;white-space:nowrap}.select-target-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px}.is-target-picker .custom-select-option{min-height:48px;padding-right:30px;max-width:100%;white-space:nowrap}.is-target-picker .custom-select-option.is-selected .select-order-number{color:var(--teal)}.custom-summary-act .package-link{flex:none}

.pack-binding-actions:has(.pack-main-choice[hidden]){display:none}.pack-binding-row>button{font-size:18px;color:var(--text-muted);padding:0}

.custom-project-subtitle{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.custom-project-subtitle .package-link{width:28px;height:28px;flex:none}.custom-project-subtitle .product-sku{min-width:0;overflow-wrap:anywhere}

.pack-custom-controls{grid-column:2;grid-row:2;display:grid;gap:12px;min-width:0;align-self:center}.pack-custom-controls .import-line{grid-column:auto;grid-row:auto;margin-top:0;display:block}.pack-binding-label{display:grid;gap:8px;font-size:12px;color:var(--text-muted);min-width:0}.pack-binding-label .custom-select{width:100%;min-width:0}.pack-binding-label .custom-select-value{font-weight:400}
