/* Document styles are isolated from the order form and production interface. */
.print-preview{background:#e9edf2;overflow:auto}
.print-preview-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;margin-bottom:14px;background:#fff;border:1px solid #ced8e4;border-radius:8px}
.print-preview-toolbar p{font-size:.875rem;max-width:520px;margin:0}
.print-preview-toolbar .btn{flex-shrink:0}
.print-duplex-option{display:flex;gap:8px;align-items:center;margin:10px 0;font-size:.875rem}
.print-duplex-option input{width:18px;height:18px}
.print-continuation{font-size:.875rem;margin:10px 0}
.os-print{box-sizing:border-box;background:#fff;color:#111;font:12px/1.35 Arial,sans-serif;max-width:794px;margin:16px auto 0;padding:24px;overflow-wrap:anywhere;letter-spacing:normal}
.os-print *, .os-print *::before,.os-print *::after{box-sizing:border-box}
.os-print h1,.os-print h2,.os-print h3,.os-print p,.os-print dl,.os-print figure{color:#111;margin:0;padding:0;letter-spacing:normal}
.os-print h1{font-size:19px;line-height:1.25}
.os-print h2{font-size:12px;font-weight:800;line-height:1.3;margin-bottom:5px;break-after:avoid}
.os-print h3{font-size:12px;font-weight:700;margin-bottom:4px;break-after:avoid}
.os-print p{white-space:pre-wrap;line-height:1.35}
.os-print-heading{display:flex;align-items:center;gap:12px;justify-content:space-between;border-bottom:2px solid #111;padding-bottom:6px;margin-bottom:7px;break-inside:avoid}
.os-print-heading>img{display:block;width:105px;height:50px;object-fit:contain}
.os-print-heading>div{text-align:right}
.os-print-heading p{font-size:11px;margin-top:4px}
.os-print-metadata{display:grid;grid-template-columns:1fr 1fr;column-gap:16px;row-gap:3px;break-inside:avoid}
.os-print-metadata>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:5px}
.os-print-metadata dt{font-weight:700}
.os-print-metadata dd{margin:0;font-weight:400}
.os-print-priority{font-weight:800;margin-top:6px!important}
.os-print-section{margin-top:9px}
.os-print-production-row{display:grid;grid-template-columns:43% minmax(0,1fr);gap:16px;align-items:start;margin-top:9px;break-inside:avoid;page-break-inside:avoid}
.os-print-production-row>.os-print-section{margin-top:0;min-width:0}
.os-print-counts-space{display:block}
.os-print-counts-space .os-print-annotations{margin-top:10px}
.os-print-annotations{font-size:9px;color:#777;padding-left:3px}
.os-print table{border-collapse:collapse;table-layout:fixed;border-spacing:0;min-width:0;margin:0;box-shadow:none}
.os-print th,.os-print td{border:1px solid #111;background:#fff!important;color:#111!important;font:inherit;line-height:1.25;text-align:left;padding:3px 4px;white-space:normal;overflow-wrap:anywhere;vertical-align:top;position:static;width:auto}
.os-print th{font-weight:700}
.os-print tbody tr:last-child td,.os-print tbody tr:last-child th{border-bottom:1px solid #111}
.os-print thead{display:table-header-group;background:#fff;position:static}
.os-print tr{break-inside:avoid;page-break-inside:avoid}
.os-print-counts{width:100%}
.os-print-counts td:not(:first-child),.os-print-counts th:not(:first-child){text-align:center}
.os-print-counts tfoot td{font-weight:700}
.os-print-total{margin-top:5px!important;font-size:12px}
.os-print .os-print-confection-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:auto;gap:0;align-items:stretch;break-inside:avoid;page-break-inside:avoid;border-top:1px solid #111;border-left:1px solid #111}
.os-print-confection-field{padding:4px 7px;border-right:1px solid #111;border-bottom:1px solid #111;break-inside:avoid;page-break-inside:avoid}
.os-print-confection-field p{display:inline;white-space:normal}.os-print-confection-field p+p::before{content:" · ";font-weight:400}
.os-print-confection-field h4{margin:0 0 2px;padding:0;font:700 11px/1.25 Arial,sans-serif;color:#111;letter-spacing:normal}
.os-print-config-block{margin-bottom:5px;break-inside:avoid;page-break-inside:avoid}
.os-print-config-block>p{margin-bottom:4px}
.os-print-config-block .os-print-config-block{margin-top:6px}
.os-print-variant-fabric{margin-top:4px!important}
.os-print-notes{break-inside:avoid}
.os-print-notes p{white-space:pre-wrap;border-left:2px solid #111;padding:3px 8px}
.os-print-art-grid{break-inside:avoid;page-break-inside:avoid;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.os-print-art-grid.os-print-one-art{grid-template-columns:1fr}
.os-print-art figure{margin:0;min-width:0;break-inside:avoid;page-break-inside:avoid}
.os-print-art figcaption{font-size:11px;margin-bottom:4px}
.os-print-art img{display:block;width:100%;height:56mm;object-fit:contain;object-position:center;background:#fff;margin:0;border:0}
.os-print-one-art img{height:70mm}
.os-print-materials{break-inside:avoid;page-break-inside:avoid}
.os-print-material-heading{display:flex;gap:12px;align-items:baseline;justify-content:space-between;margin-bottom:5px}.os-print-material-heading h2{margin:0}
.os-print-fabrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:2px solid #111}
.os-print-fabrics>div{padding:7px 10px}
.os-print-fabrics>div+div{border-left:1px solid #111}
.os-print-fabrics span{display:block;font-size:11px;font-weight:700;margin-bottom:3px}
.os-print-fabrics strong{display:block;font-size:16px;text-transform:uppercase;line-height:1.25}
.os-print-back{margin-top:28px;padding-top:14px;border-top:2px dashed #ccd3dc}
.os-print-back-heading{margin-bottom:12px;break-inside:avoid}
.os-print-back-heading h2{font-size:15px;margin-bottom:6px}
.os-print-back-heading p{margin-top:3px}
.os-print-personal-product{margin-top:9px;position:relative}
.os-print-roster-annotations{position:absolute;left:calc(64% + 16px);top:22px;font-size:9px;color:#777}
.os-print-roster{width:64%;margin-left:0}
.os-print-roster thead th{font-size:11px}
.os-print-size-group th{background:#f0f0f0!important;font-size:11px}
.os-print-size-group{break-after:avoid}
.os-print-piece-note{display:block;font-size:10px;font-weight:700;margin-top:2px}
@media screen and (max-width:640px){
 .print-preview-toolbar{position:static;flex-direction:column;align-items:stretch;padding:10px}
 .os-print{padding:12px;min-width:0}
 .os-print-heading{gap:8px}.os-print-heading>img{width:80px;height:40px}.os-print h1{font-size:16px}
 .os-print-production-row{grid-template-columns:1fr}
 .os-print-metadata{grid-template-columns:1fr}.os-print-counts-space{grid-template-columns:1fr}.os-print-annotations{display:none}
 .os-print-roster{width:100%}.os-print-roster-annotations{display:none}.os-print .os-print-confection-fields{width:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.os-print-art img{height:46mm}.os-print-fabrics strong{font-size:14px}
}
@page{size:A4 portrait;margin:10mm}
@media print{
 html,body.print-open{background:#fff!important;margin:0!important;padding:0!important;overflow:visible!important}
 body.print-open>:not(#modal-root){display:none!important}
 body.print-open #modal-root{display:block!important}
 body.print-open .modal-overlay,body.print-open .modal,body.print-open .print-preview{display:block!important;position:static!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;transform:none!important;border:0!important;box-shadow:none!important;background:#fff!important;padding:0!important;margin:0!important}
 body.print-open .modal-head,body.print-open .modal-footer,.print-preview-toolbar,.print-duplex-option,.print-continuation{display:none!important}
 .os-print{max-width:none;width:100%;margin:0;padding:0;font-size:9.5pt;line-height:1.3}
 .os-print-heading>img{width:26mm;height:14mm}.os-print h1{font-size:14pt}
 .os-print-heading p{font-size:9pt}.os-print h2,.os-print h3{font-size:9.5pt}
 .os-print-metadata{grid-template-columns:1fr 1fr;row-gap:4px}.os-print-metadata>div{grid-template-columns:34mm minmax(0,1fr)}
 .os-print-section{margin-top:7px}.os-print th,.os-print td{padding:2px 3px;font-size:9.5pt;print-color-adjust:exact}
 .os-print-production-row{grid-template-columns:43% minmax(0,1fr);gap:16px;margin-top:7px}
 .os-print-front .os-print-confection-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;width:auto;gap:0;break-inside:avoid;page-break-inside:avoid}
 .os-print-total{font-size:9.5pt}.os-print-confection-field{padding:3px 6px}.os-print-confection-field h4{font-size:9pt}
 .os-print-art figcaption,.os-print-fabrics span{font-size:9pt}.os-print-fabrics strong{font-size:12pt}
 .os-print-back{margin:0;padding:0;border:0;break-before:page;page-break-before:always}
 .os-print-back-heading h2{font-size:12pt}.os-print-roster{width:64%}.os-print-roster thead th,.os-print-size-group th{font-size:9pt}.os-print-piece-note{font-size:8.5pt}
}

/* Only the personalization pages: Page 1 keeps all existing rules. */
.os-print-back .os-print-back-heading{margin-bottom:6px}
.os-print-back .os-print-back-heading h2{font-size:14px;margin-bottom:3px}
.os-print-back .os-print-back-heading p{font-size:11px;margin-top:1px}
.os-print-roster-columns{display:grid;grid-template-columns:1fr;gap:8px;align-items:start}
.os-print-roster-columns.os-print-roster-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.os-print-roster-column{min-width:0}
.os-print-back .os-print-personal-product{margin-top:0;margin-bottom:6px}
.os-print-back .os-print-roster{width:100%}
.os-print-back .os-print-roster th,.os-print-back .os-print-roster td{font-size:12.67px;padding:2px 3px;line-height:1.2}
.os-print-back .os-print-roster-context th{font-weight:700;background:#f2f2f2!important}
.os-print-back .os-print-size-start td{border-top:2px solid #111}
.os-print-back .os-print-piece-note{font-size:inherit;line-height:1.2;margin-top:0;font-weight:600}
.os-print-roster-compact .os-print-roster th,.os-print-roster-compact .os-print-roster td{font-size:10.67px;padding:1px 2px}
.os-print-back .os-print-roster tr{break-inside:avoid;page-break-inside:avoid}
.os-print-back .os-print-roster thead{display:table-header-group}
.os-print-back .os-print-roster thead tr{break-after:avoid;page-break-after:avoid}
@media print{
 .os-print-back .os-print-back-heading h2{font-size:10pt}
 .os-print-back .os-print-back-heading p{font-size:8.5pt}
 .os-print-back .os-print-roster th,.os-print-back .os-print-roster td{font-size:9.5pt}
 .os-print-roster-compact .os-print-roster th,.os-print-roster-compact .os-print-roster td{font-size:8pt}
}
