/* ===== label templates: real mm sizes, pure black on white for thermal print ===== */
.bl,.hl{background:#fff;color:#000;font-family:Arial,Helvetica,sans-serif;overflow:hidden;position:relative;box-sizing:border-box;line-height:1.15}
.bl .k,.hl .k{display:block;font-size:5pt;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin-bottom:.4mm}
.bl b,.hl b{font-weight:700}
.bl{width:75mm;height:100mm;padding:4.5mm 4.5mm 4mm;display:flex;flex-direction:column}
.bl-top{display:grid;grid-template-columns:1fr auto auto;gap:4mm;font-size:7pt;padding-bottom:1.8mm;border-bottom:.6mm solid #000}
.bl-top .r{text-align:right}
.bl-cust{padding:1.6mm 0 1.2mm}
.bl-cust .v{font-weight:700;line-height:1.05;word-break:break-word}
.bl-loc{display:grid;grid-template-columns:auto 1fr;gap:3mm;padding:1.1mm 0;border-top:.25mm solid #000;align-items:start}
.bl-loc b{font-size:10pt;display:block;line-height:1.1}
.bl-loc>div:last-child{border-left:.25mm solid #000;padding-left:3mm;min-width:0}
.bl-loc>div:last-child b{font-size:7pt;line-height:1.2}
.bl-tbl{flex:1;min-height:0;overflow:hidden;border-top:.25mm solid #000}
.bl-tbl .th,.bl-tbl .tr{display:grid;grid-template-columns:1fr 15mm 10mm;column-gap:1.5mm;align-items:baseline}
.bl-tbl .th{font-size:5pt;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:.9mm 0 .5mm}
.bl-tbl .tr{font-size:7.2pt;padding:.38mm 0;border-top:.15mm solid #000}
.bl-tbl .th span:nth-child(n+2),.bl-tbl .tr span:nth-child(n+2){text-align:right}
.bl-tbl .tr span:first-child{font-weight:700;white-space:nowrap;overflow:hidden}
.bl-tbl .tr span:last-child{font-weight:700}
.bl-total{display:flex;justify-content:space-between;align-items:center;border-top:.6mm solid #000;padding:.9mm 0}
.bl-total .k{margin:0}
.bl-total .blk{background:#000;color:#fff;font-size:11pt;font-weight:700;padding:.6mm 2.4mm;min-width:12mm;text-align:center}
.bl-foot{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:4mm;border-top:.25mm solid #000;padding-top:1.8mm;height:17mm}
.bl-foot .mark{font-weight:700;line-height:1.05;word-break:break-word}
.bl-foot .bn{text-align:right}
.bl-foot .bn b{font-size:15pt;display:block;line-height:1}
.qr{display:block;flex:none;shape-rendering:crispEdges}
.bl-foot .qr{width:14mm;height:14mm}
.hl{width:100mm;height:60mm;padding:3.5mm;display:grid;grid-template-columns:12mm 1fr 25mm;column-gap:3.5mm}
.hl-strip{background:#000;color:#fff;display:flex;align-items:center;justify-content:center;margin:-3.5mm 0 -3.5mm -3.5mm;padding:0}
.hl-strip span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:21pt;font-weight:700;letter-spacing:.06em}
.hl-main{display:flex;flex-direction:column;min-width:0;padding-left:1mm}
.hl-name{font-size:6pt;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding-bottom:1.5mm;border-bottom:.6mm solid #000}
.hl-var{font-weight:700;line-height:1.05;padding:2mm 0 2mm;min-height:11.5mm;display:flex;align-items:center}
.hl-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2.5mm;border-top:.25mm solid #000;padding-top:1.5mm}
.hl-stats b{font-size:14pt;font-weight:700;display:block;line-height:1}
.hl-pack{font-size:6.5pt;font-weight:700;padding:1.2mm 0;min-height:4mm}
.hl-foot{margin-top:auto;border-top:.25mm solid #000;padding-top:1.5mm;font-size:7pt;display:grid;grid-template-columns:auto 1fr;gap:.8mm 3mm;align-items:baseline}
.hl-foot .k{margin:0}
.hl-foot b{font-weight:700}
.hl-side{display:flex;flex-direction:column;align-items:flex-end;border-left:.25mm solid #000;padding-left:3mm;min-width:0}
.hl-side .qr{width:20mm;height:20mm}
.hl-side .ref{font-size:5.5pt;font-weight:700;letter-spacing:.05em;margin-top:1mm}
.hl-side .seq{font-size:20pt;font-weight:700;line-height:1;margin-top:auto}
.hl-side .ord{font-size:11pt;font-weight:700;margin-top:1.5mm}
.hl-side .dt{font-size:7pt;font-weight:700;margin-top:.8mm}