.pr-panel { border:1px solid var(--border,#dbe2ea); border-radius:12px; padding:18px 22px; margin:0 0 16px; background:var(--surface,#fff); }
.pr-panel header,.pr-history li { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.pr-panel h2 { margin:0; font-size:17px; }
.pr-panel p { margin:5px 0 0; color:var(--muted,#52677b); font-size:13px; }
.pr-week { display:flex; align-items:center; gap:10px; margin:16px 0 0; }
.pr-week select { max-width:100%; }
.pr-history,.pr-thumbs { list-style:none; padding:0; }
.pr-history { margin:8px 0 0; }
.pr-history li { padding:9px 0; border-top:1px solid var(--border,#dbe2ea); }
.pr-history small { display:block; margin-top:3px; color:var(--muted,#52677b); }
.pr-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.pr-picker { display:block; margin-top:14px; }
.pr-picker input { display:block; width:100%; margin-top:5px; }
.pr-thumbs { display:grid; grid-template-columns:repeat(auto-fit,minmax(100px,1fr)); gap:9px; margin:10px 0 16px; }
.pr-thumbs img { width:100%; aspect-ratio:4/3; display:block; object-fit:contain; border:1px solid var(--border,#dbe2ea); }
.pr-thumbs button { margin-top:4px; }
.pr-contact summary { cursor:pointer; margin-bottom:8px; }
@media(max-width:530px) { .pr-panel { padding:14px; } .pr-fields { grid-template-columns:1fr; } .pr-week { display:block; } }
.pr-print { margin:0; background:#e9eef1; color:#162e43; font-family:Arial,sans-serif; }
.pr-print-toolbar { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:12px; padding:12px; font-size:13px; }
.pr-print-toolbar button { color:#fff; background:#162e43; padding:8px 14px; border:0; border-radius:5px; cursor:pointer; }
.pr-print-toolbar button:disabled { opacity:.5; cursor:wait; }
.pr-sheet { page:pr-photo; box-sizing:border-box; width:215.9mm; height:279mm; margin:0 auto 10px; padding:5mm 8.8mm 3mm; background:white; break-after:page; print-color-adjust:exact; -webkit-print-color-adjust:exact; }
.pr-sheet:last-child { break-after:auto; }
.pr-paper-head { display:grid; grid-template-columns:27% minmax(0,1fr) 20%; gap:2mm; align-items:center; height:22mm; border-block:2px solid #162e43; }
.pr-paper-head > img { display:block; max-width:100%; width:51mm; }
.pr-paper-head > strong { text-align:center; text-transform:uppercase; font-size:19pt; line-height:1; overflow-wrap:anywhere; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.pr-stamp { text-align:center; display:grid; align-content:center; gap:.4mm; font-size:6.5pt; }
.pr-stamp b { color:white; background:#162e43; padding:1.3mm 0; font-size:8.8pt; }
.pr-stamp span { color:white; background:#667c8b; font-weight:bold; }
.pr-stamp em { background:#e5edf1; font-style:normal; font-weight:bold; }
.pr-zone { background:#687c8a; color:white; text-align:center; margin:2.4mm 0 1.6mm; font-size:8pt; line-height:4.2mm; font-weight:bold; }
.pr-zone span { display:inline-block; background:#162e43; padding:0 5mm; max-width:95%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; vertical-align:top; }
.pr-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(4,54.6mm); gap:1mm 4mm; }
.pr-grid img { width:100%; height:100%; object-fit:contain; background:#f3f5f6; display:block; }
.pr-page-number { padding:1.4mm 0 2mm; text-align:center; font-size:7.2pt; font-weight:bold; color:#526b7d; }
.pr-sheet footer { border-top:1px solid #b7c8d4; display:grid; grid-template-columns:22% 32% 46%; padding-top:2.5mm; font-size:6.4pt; line-height:1.28; }
.pr-sheet footer div { padding:0 2mm; overflow-wrap:anywhere; }
.pr-sheet footer div + div { border-left:1px solid #b7c8d4; }
.pr-sheet footer b { display:block; font-size:5.6pt; margin-bottom:1mm; color:#526b7d; }
@page pr-photo { size:letter portrait; margin:0; }
@media print {
  body.pr-print { margin:0; background:white; }
  .pr-print-toolbar { display:none; }
  .pr-sheet { margin:0; }
}
