:root{--red:#e3212b;--red-dark:#b3131c;--black:#1b1b1b;--pink:#f7c5cc;--cream:#fff7f2}
.lbl-s,.lbl-b{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-family:"Fredoka",system-ui,sans-serif;color:var(--black)}
/* fondos (patrones) */
.bg-hearts{background-color:var(--red);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'><path fill='%231b1b1b' d='M7 12.2 2.4 7.6a2.6 2.6 0 0 1 3.7-3.7L7 4.8l.9-.9a2.6 2.6 0 0 1 3.7 3.7z'/></svg>");background-size:3.2mm 3.2mm}
.bg-dots{background-color:var(--red);background-image:radial-gradient(circle,var(--black) 1.1mm,transparent 1.2mm);background-size:5mm 5mm;background-position:0 0}
.bg-pink{background-color:var(--pink);background-image:radial-gradient(circle,rgba(227,33,43,.55) .9mm,transparent 1mm);background-size:4.5mm 4.5mm}
.bg-black{background-color:var(--black);background-image:radial-gradient(circle,var(--red) 1.1mm,transparent 1.2mm);background-size:5.5mm 5.5mm}
.bg-cream{background-color:var(--cream);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'><path fill='%23e3212b' d='M7 12.2 2.4 7.6a2.6 2.6 0 0 1 3.7-3.7L7 4.8l.9-.9a2.6 2.6 0 0 1 3.7 3.7z'/></svg>");background-size:3.6mm 3.6mm}

/* ---------- etiqueta pequeña 50×15mm ---------- */
.grid-small{display:grid;grid-template-columns:repeat(3,50mm);grid-auto-rows:15mm;column-gap:8mm;row-gap:5mm;justify-content:center}
.lbl-s{width:50mm;height:15mm;border-radius:3.5mm;position:relative;border:.35mm solid #fff;outline:.15mm solid #ddd}
.lbl-s .char{position:absolute;left:.8mm;bottom:.3mm;height:15.5mm;max-width:11.5mm;object-fit:contain;object-position:bottom;filter:drop-shadow(0 .3mm .4mm rgba(0,0,0,.35))}
.lbl-s .pill{position:absolute;left:11.8mm;top:1.6mm;width:28mm;height:11.3mm;background:#fff;border-radius:2.6mm;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;padding-top:.3mm}
.lbl-s .pill .owner{font-size:4.6pt;font-weight:500;color:#666;letter-spacing:.1pt}
.lbl-s .pill .name{font-family:"Baloo 2",sans-serif;font-weight:800;color:var(--red-dark);font-size:6.8pt;white-space:nowrap;margin-top:.6mm;letter-spacing:-.15pt}
.lbl-s .grp{position:absolute;right:1.4mm;top:3mm;width:8.3mm;height:8.3mm;border-radius:50%;background:#fff;border:.5mm solid var(--black);display:flex;align-items:center;justify-content:center;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:7pt;color:var(--red)}
.lbl-s.bg-pink .pill .name,.lbl-s.bg-cream .pill .name{color:var(--red)}

/* ---------- etiqueta libreta 90×50mm ---------- */
.grid-big{display:grid;grid-template-columns:repeat(2,90mm);grid-auto-rows:50mm;column-gap:8mm;row-gap:3mm;justify-content:center}
.lbl-b{width:90mm;height:50mm;border-radius:5mm;position:relative;border:.4mm solid #fff;outline:.15mm solid #ddd;overflow:hidden}
.lbl-b .char{position:absolute;left:1.5mm;bottom:0;height:49mm;max-width:31mm;object-fit:contain;object-position:bottom left;filter:drop-shadow(0 .4mm .6mm rgba(0,0,0,.35))}
.lbl-b .card{position:absolute;left:33mm;top:4mm;right:4mm;bottom:4mm;background:#fff;border-radius:4mm;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2mm 3mm;line-height:1.05}
.lbl-b .subject{font-family:"Fredoka",sans-serif;font-weight:700;color:var(--red);font-size:17pt;text-wrap:balance}
.lbl-b .subject.long{font-size:14pt}
.lbl-b .name{font-family:"Baloo 2",sans-serif;font-weight:800;color:var(--black);font-size:9.5pt;margin-top:2.2mm;white-space:nowrap}
.lbl-b .grp{font-family:"Baloo 2",sans-serif;font-weight:800;color:var(--red);font-size:11pt;margin-top:.8mm}
.lbl-b.nameonly .name{font-size:14pt;color:var(--red);white-space:normal;text-wrap:balance;margin-top:0}
.lbl-b.nameonly .grp{font-size:14pt;color:var(--black);margin-top:1.5mm}
.lbl-b .tag{position:absolute;right:4mm;top:1.2mm;font-family:"Baloo 2",sans-serif;font-weight:800;font-size:6.5pt;color:#fff;letter-spacing:.3pt;text-shadow:0 0 1mm rgba(0,0,0,.6)}
.lbl-b .tag em{font-style:normal;font-size:8pt}
.lbl-b .bug{position:absolute;right:5mm;bottom:5.5mm;width:6mm;height:6mm}

