/* Label setup inherits the Shelf's paper, copper and ink tokens. Sheet geometry
   is deliberately isolated from the application's responsive layout. */
.label-print-setup{display:grid;gap:18px}
.label-print-setup p{margin:0;line-height:1.5;color:var(--ink-2)}
.label-print-field{display:grid;gap:7px;font-weight:700;font-size:13px}
.label-print-field select,.label-print-field input{width:100%;box-sizing:border-box;padding:10px;border:1px solid var(--line-2);border-radius:8px;background:var(--surface-2);color:var(--ink);font:inherit}
.label-print-fill{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}
.label-print-fill input{flex:none}
.label-print-status{font-size:13px;line-height:1.5;white-space:pre-line}
.label-print-status[data-error="true"]{color:var(--danger-ink)}
.label-print-setup[aria-busy="true"] .label-print-status{background:var(--surface-2);border-radius:6px;padding:12px}
.sticker-picker-tools{display:flex;gap:10px;flex-wrap:wrap}
.sticker-picker-list{display:grid;gap:0;max-height:45dvh;overflow:auto;border:1px solid var(--line-2);border-radius:8px}
.sticker-picker-row{display:flex;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid var(--line);cursor:pointer}
.sticker-picker-row:last-child{border-bottom:0}
.sticker-picker-row:first-child{background:var(--surface-2)}
.sticker-picker-name{flex:1;min-width:0;overflow-wrap:anywhere}
.sticker-picker-badge{font-size:11px;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line-2);border-radius:6px;padding:3px 6px}
.sticker-picker-loading{min-height:110px;background:var(--surface-2);border-radius:8px}
.modal:has(#stickerPicker.sticker-picker-phone){align-items:flex-end;bottom:0;padding:0}
.modal-card:has(#stickerPicker.sticker-picker-phone){width:100%;max-height:92dvh;margin:0;border-radius:16px 16px 0 0}
.modal-card:has(#stickerPicker.sticker-picker-phone) .modal-f{padding-bottom:max(14px,env(safe-area-inset-bottom))}
.sticker-picker-phone .sticker-picker-list{max-height:48dvh}
#qrPrintPreview{position:fixed;inset:0;z-index:10060;background:#f7f3e9}
#qrPrintPreview iframe{display:block;width:100%;height:100%;border:0;background:#f7f3e9}
.label-print-document{margin:0;background:#e8e3d8;color:#211c16;font-family:system-ui,sans-serif}
.label-print-notice{position:sticky;top:0;z-index:2;padding:16px 22px;background:#faf6ed;border-bottom:1px solid #cfc4b1;font-size:14px;line-height:1.5}
.label-print-notice h1{margin:0 0 4px;font-size:20px}
.label-print-notice p{margin:4px 0}
.label-print-notice button{padding:10px 16px;margin:8px 8px 0 0;border:1px solid #a48c70;border-radius:7px;background:#faf6ed;color:#38291d;font:600 14px system-ui,sans-serif;cursor:pointer}
.label-print-notice button:disabled{opacity:.5;cursor:wait}
.label-print-locations{padding:14px 22px;font-size:13px}
.label-print-locations h2{margin:0 0 6px;font-size:14px}
.label-print-locations ul{margin:0;padding-left:20px}
.label-print-pages{overflow:auto}
.label-print-sheet{page:shelfLabels;box-sizing:border-box;width:210mm;height:297mm;margin:8mm auto;background:#fff;outline:1px solid #cfc4b1;break-after:page;page-break-after:always}
.label-print-sheet:last-child{break-after:auto;page-break-after:auto}
.label-print-grid{display:grid;align-content:start;justify-content:start}
.label-size-l7651{padding:10.7mm 4.75mm}
.label-size-l7651 .label-print-grid{grid-template-columns:repeat(5,38.1mm);grid-template-rows:repeat(13,21.2mm);column-gap:2.5mm}
.label-size-l7159{padding:12.9mm 7.25mm}
.label-size-l7159 .label-print-grid{grid-template-columns:repeat(3,63.5mm);grid-template-rows:repeat(8,33.9mm);column-gap:2.5mm}
.label-size-l7160{padding:15.15mm 0 0 7.21mm}
.label-size-l7160 .label-print-grid{grid-template-columns:repeat(3,63.5mm);grid-template-rows:repeat(7,38.1mm);column-gap:2.54mm;row-gap:0}
.label-size-cable{padding:23.5mm 13mm}
.label-size-cable .label-print-grid{grid-template-columns:repeat(2,90mm);grid-template-rows:repeat(10,25mm);column-gap:4mm}
.label-print-cell{box-sizing:border-box;min-width:0;min-height:0;overflow:hidden;display:flex;justify-content:center;align-items:center;padding:3mm;background:#fff;color:#111;outline:1px dotted #d8d2c8}
.label-print-group{display:flex;align-items:center;justify-content:center;gap:1.8mm;max-width:100%;min-width:0}
.label-print-qr{width:23mm;height:23mm;padding:1mm;box-sizing:border-box;background:#fff}
.label-print-qr img,.label-print-qr canvas{max-width:100%;max-height:100%;object-fit:contain;image-rendering:pixelated}
.label-print-qr img{display:block}
.label-print-qr canvas:has(+img){display:none}
.label-print-copy{width:30mm;min-width:0;overflow:hidden;text-align:left}
.label-print-group>.label-print-qr{flex:none}
.label-print-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere;font-size:3mm;line-height:1.15;font-weight:700}
.label-print-path,.label-print-property{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:2mm;line-height:1.3;margin-top:1mm}
.label-print-return{font-size:6pt;line-height:1.3;margin-top:1mm}
.label-print-property{overflow:visible;text-overflow:clip;white-space:nowrap;font-size:9pt;line-height:1.3;margin-top:0.5mm;transform-origin:left center;transform:scaleX(var(--owner-scale,1));width:var(--owner-width,100%)}
.label-print-code{overflow-wrap:anywhere;font:700 2.5mm/1.2 ui-monospace,monospace;letter-spacing:.05em;margin-top:1mm}
.label-size-l7651 .label-print-group{gap:1mm}
.label-size-l7651 .label-print-qr{width:15mm;height:15mm;padding:.6mm}
.label-size-l7651 .label-print-copy{width:16.1mm}
.label-size-l7651 .label-print-name{font-size:2.15mm}
.label-size-l7651 .label-print-path,.label-size-l7651 .label-print-property{font-size:1.65mm;margin-top:.5mm}
.label-size-l7651 .label-print-code{font-size:1.9mm;margin-top:.5mm;letter-spacing:0}
.label-size-l7651 .label-print-return{font-size:1.6mm;margin-top:.5mm}
.label-size-cable .label-print-qr{width:19mm;height:19mm}
.label-size-cable .label-print-code{margin-top:.5mm}
@page shelfLabels{size:A4;margin:0}
@media print{
  .label-print-document{background:#fff}
  .label-print-notice,.label-print-locations{display:none}
  .label-print-pages{overflow:visible}
  .label-print-sheet{margin:0;outline:0}
  .label-print-cell{outline:0}
}
