.warehouse-label-dialog { width:min(1000px,96vw); max-height:92dvh; box-sizing:border-box; border:1px solid #ccd8e5; border-radius:18px; padding:24px; color:#142d45; background:#fff; }
.warehouse-label-dialog::backdrop { background:rgba(10,28,44,.55); }
.warehouse-label-dialog h2 { margin:0 0 8px; }
.warehouse-label-help { color:#53687c; font-size:.9rem; line-height:1.45; }
.warehouse-label-settings { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:14px; margin:20px 0; }
.warehouse-label-field { display:flex; flex-direction:column; gap:6px; font-weight:600; }
.warehouse-label-field input,.warehouse-label-field select { min-height:40px; box-sizing:border-box; border:1px solid #bbcbd9; border-radius:8px; padding:8px; width:100%; background:white; color:inherit; }
.warehouse-label-field input[type=checkbox] { width:22px; height:22px; min-height:22px; }
.warehouse-label-actions { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0; }
.warehouse-label-footer { position:sticky; bottom:0; z-index:2; background:#fff; padding:12px 0 0; margin-bottom:0; border-top:1px solid #d8e2ec; box-shadow:0 -8px 10px #ffffffed; }
.warehouse-label-count { font-weight:700; }
.warehouse-label-preview { overflow:auto; max-height:48vh; padding:16px; background:#e7edf2; border-radius:12px; }
.warehouse-label-sheet { display:grid; gap:2.5mm; align-content:start; margin:0 auto 16px; width:max-content; }
.warehouse-label-sheet.regular { grid-template-columns:repeat(3,63mm); padding:7mm; background:#fff; box-shadow:0 2px 8px #bdc9d5; }
.warehouse-label-sheet.thermal { grid-template-columns:1fr; }
.warehouse-print-label { width:var(--label-width); height:var(--label-height); box-sizing:border-box; background:#fff; color:#000; padding:2mm; display:flex; align-items:center; gap:1.5mm; overflow:hidden; border:1px dashed #d1d5db; font-family:Arial,sans-serif; }
.warehouse-print-label img { flex:0 0 auto; width:var(--label-qr); height:auto; max-height:100%; object-fit:contain; image-rendering:pixelated; }
.warehouse-print-label-text { flex:1; min-width:0; display:flex; flex-direction:column; gap:1.3mm; overflow:hidden; max-height:100%; }
.warehouse-print-title { font-size:var(--label-font); line-height:1.12; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; flex-shrink:0; }
.warehouse-print-sku { font-size:var(--label-font); font-weight:700; line-height:1.12; overflow-wrap:anywhere; flex-shrink:0; }
.warehouse-print-location { font-size:var(--label-font); overflow-wrap:anywhere; flex-shrink:0; }
.warehouse-print-shelf { font-size:var(--label-shelf-font); line-height:1; overflow-wrap:anywhere; flex-shrink:0; }
.warehouse-label-print-root { display:none; }
@media(max-width:600px) { .warehouse-label-dialog { padding:16px; }.warehouse-label-settings { grid-template-columns:1fr 1fr; }.warehouse-label-field:first-child { grid-column:1/-1; }.warehouse-label-actions button { flex:1 1 140px; } }
@media print {
  .warehouse-label-dialog::backdrop { display:none !important; background:transparent !important; }
  body.warehouse-label-printing > :not(.warehouse-label-print-root) { display:none !important; }
  body.warehouse-label-printing { margin:0 !important; padding:0 !important; background:#fff !important; }
  body.warehouse-label-printing .warehouse-label-print-root { display:block !important; }
  body.warehouse-label-printing .warehouse-label-sheet { margin:0; padding:0; box-shadow:none; break-after:page; }
  body.warehouse-label-printing .warehouse-label-sheet:last-child { break-after:auto; }
  body.warehouse-label-printing .warehouse-print-label { border:0; break-inside:avoid; print-color-adjust:exact; }
}
