.print-settings{max-width:760px;background:#fffefd;border:1px solid #e1dbea;border-radius:16px;padding:24px}
.print-settings select{max-width:none;width:100%}
#print-status{margin-top:15px}
#excluded{font-size:12px;line-height:1.7;color:#875236;margin-top:15px}
.sheets{max-width:none;margin:24px 0 40px;overflow-x:auto;padding:0 12px}
.sheet{width:190mm;height:277mm;box-sizing:border-box;background:white;color:#181323;padding:8.5mm 5mm 0;margin:24px auto;box-shadow:0 4px 30px #24213f12;font-family:Arial,sans-serif}
.sheet-heading{height:10mm;font-size:9pt;display:flex;justify-content:space-between;gap:12px;color:#6b617c}
.card-grid{display:grid;grid-template-columns:repeat(3,60mm);grid-template-rows:repeat(4,60mm);width:180mm;height:240mm}
.print-card{width:60mm;height:60mm;border:0.2mm dashed #a99fb5;box-sizing:border-box;overflow:hidden;padding:4mm;display:grid;justify-items:center;align-items:center;gap:1mm;text-align:center;color:#181323;background:#fff;break-inside:avoid}
.print-card.front{grid-template-rows:4mm 42mm 3mm}
.card-brand{font-size:7pt;font-weight:700;letter-spacing:1pt;margin:0;line-height:1.2}
.qr-image{width:42mm;height:42mm;display:block}
.card-instruction{font-size:6pt;letter-spacing:.5pt;margin:0;line-height:1.2}
.print-card.back{grid-template-rows:4mm 15mm 15mm 12mm}
.card-year{font-size:30pt;font-weight:700;line-height:1;letter-spacing:-1pt;margin:0}
.card-title,.card-artist{width:100%;height:100%;display:flex;align-items:center;justify-content:center;margin:0;overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.15;font-size:11pt}
.card-title{font-weight:700}
.card-artist{font-size:9pt}
.print-card.empty{background:#fff}
@page{size:A4 portrait;margin:10mm}
@media print{
  html,body{background:white!important;margin:0!important;padding:0!important}
  .screen-only{display:none!important}
  .sheets{display:block;margin:0!important;padding:0!important;overflow:visible}
  .sheet{margin:0!important;box-shadow:none;break-inside:avoid;break-after:page;page-break-after:always}
  .sheet:last-child{break-after:auto;page-break-after:auto}
  .print-card{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.guide-card{width:90mm;height:120mm;margin:0 auto;border:.2mm dashed #a99fb5;padding:7mm;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:3mm;text-align:center;color:#181323}
.guide-brand{font-size:9pt;letter-spacing:1pt;font-weight:700;margin:0}
.guide-title{font-size:18pt;font-weight:700;margin:0}
.guide-card .qr-image{width:38mm;height:38mm}
.guide-url{font-size:8pt;overflow-wrap:anywhere;margin:0;width:100%}
.guide-card ol{font-size:10pt;line-height:1.5;text-align:left;margin:0;padding-left:5mm}
.guide-note{font-size:7pt;margin:0}
.individual-preview{max-width:none;text-align:center}
.individual-preview .print-card{width:var(--card-width);height:var(--card-height);margin:20px auto;box-shadow:0 4px 20px #24213f12}
.individual-preview .front{grid-template-rows:10% 78% 8%;gap:2%}
.individual-preview .back{grid-template-rows:8% 24% 30% 28%;gap:2%}
.individual-preview .qr-image{width:100%;height:100%;object-fit:contain}
@media print{.individual-preview{display:none!important}}
.print-card.front{position:relative;isolation:isolate}
.print-card.front>:not(.front-art){position:relative;z-index:1}
.print-card .front-art{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.print-card.back{position:relative;isolation:isolate}
.print-card.back>:not(.reveal-art){position:relative;z-index:1}
.print-card .reveal-art{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
