.print-page { background: #fff; color: #1a202c; padding: 18px 28px 40px; max-width: 900px; margin: 0 auto; }
.pr-head { display: flex; align-items: center; gap: 16px; border-bottom: 2px solid #29166F; padding-bottom: 12px; }
.pr-head div { flex: 1; }
.pr-head h1 { margin: 0; font-size: 1.4rem; color: #29166F; }
.pr-head p { margin: 2px 0 0; font-size: 0.85rem; color: #4a5568; }
.pr-logo { height: 38px; width: auto; }
.pr-note { font-size: 0.78rem; color: #4a5568; line-height: 1.5; }
.pr-partner { margin: 22px 0 4px; font-size: 1.1rem; color: #29166F; border-bottom: 1px solid #d9d3f5; padding-bottom: 3px; break-after: avoid; }
.pr-org { margin: 12px 0 4px; break-inside: avoid; break-after: avoid; }
.pr-org h3 { margin: 0; font-size: 0.98rem; }
.pr-org p { margin: 0; font-size: 0.8rem; color: #4a5568; }
.pr-prod { display: grid; grid-template-columns: 64px 1fr auto; gap: 10px; align-items: start; padding: 6px 0; border-bottom: 1px solid #edf0f5; break-inside: avoid; }
.pr-prod img { width: 64px; height: 64px; object-fit: cover; border-radius: 6px; background: #efe9fb; }
.pr-ph { width: 64px; height: 64px; border-radius: 6px; background: #efe9fb; }
.pr-prod b { font-size: 0.88rem; }
.pr-prod span { display: block; font-size: 0.76rem; color: #4a5568; line-height: 1.4; }
.pr-price { font-weight: 700; font-size: 0.85rem; color: #29166F; white-space: nowrap; }
@media print {
  #prPrint { display: none; }
  .print-page { padding: 0; max-width: none; }
  @page { margin: 14mm; }
}
