.thermal-ticket{box-sizing:border-box;flex:none;width:80mm;max-width:100%;min-height:120mm;margin:0 auto;padding:5mm 5mm 6mm 3mm;background:#fff;color:#000;font:10pt/1.3 Arial,Helvetica,sans-serif;text-align:center;overflow-wrap:anywhere;border:0;box-shadow:0 0 0 1px #ccc}.thermal-ticket h3,.thermal-ticket p{margin:0;color:#000}.thermal-heading{padding-bottom:3mm;border-bottom:1px solid #000}.thermal-ticket .thermal-brand{font-size:15pt;font-weight:800;letter-spacing:.4pt}.thermal-ticket .thermal-caption{font-size:8pt;font-weight:700;margin-top:1.5mm}.thermal-ticket .thermal-title{font:700 16pt/1.15 Arial,Helvetica,sans-serif;margin:4mm 0 3mm}.thermal-ticket .thermal-date{font-weight:700;font-size:11pt}.thermal-ticket .thermal-time{font-size:12pt;font-weight:700;margin-top:1mm}.thermal-ticket .thermal-doors{font-size:9pt;margin-top:1mm}.thermal-admission{border-top:1px dashed #000;border-bottom:1px dashed #000;margin:3mm 0;padding:3mm 0}.thermal-ticket .thermal-seat{font-size:18pt;font-weight:800;line-height:1.2}.thermal-ticket .thermal-category{margin-top:1.5mm;font-size:10pt}.thermal-price{display:flex;justify-content:space-between;gap:2mm;text-align:left;font-size:10pt}.thermal-ticket .thermal-charges{margin-top:1mm;font-size:8pt;text-align:left}.thermal-scan{margin-top:3mm}.thermal-scan svg{display:block;width:33mm;height:33mm;max-width:100%;margin:0 auto;shape-rendering:crispEdges}.thermal-ticket .thermal-id{margin:2mm 0 3mm;font:9pt/1.3 Courier New,monospace}.thermal-ticket .thermal-footer{display:block;padding:2mm 0 0;color:#000;font-family:Arial,Helvetica,sans-serif;border-top:1px solid #000;font-size:8pt}.thermal-footer strong{display:block;margin-top:2mm;font-size:8pt}@media print{.thermal-ticket{width:80mm;max-width:none;box-shadow:none;break-inside:avoid;break-after:page}}