/* Wydruk zlecenia (js/zlecenia-druk.js) — w panelu i na zlecenia.html.
   Poza @layer i bez zmiennych global.css, bo panel ich nie ładuje; klasy .zd-*
   są dość szczegółowe, żeby style panelu (table, h1) ich nie przebiły.
   Na ekranie blok #zl-druk nie istnieje dla oka; na wydruku jest jedyny. */
#zl-druk { display: none; }

@media print {
  @page { size: A4; margin: 12mm 12mm 14mm; }
  html.zl-drukuje body > *:not(#zl-druk) { display: none !important; }
  html.zl-drukuje, html.zl-drukuje body { background: #fff !important; margin: 0 !important; padding: 0 !important;
    display: block !important; min-height: 0 !important; overflow: visible !important; }
  html.zl-drukuje #zl-druk { display: block; }
}

#zl-druk .zd { font: 10.5pt/1.4 Arial, Helvetica, sans-serif; color: #111; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
#zl-druk .zd * { box-sizing: border-box; }
#zl-druk .zd h1 { font: 700 17pt/1.2 Georgia, 'Times New Roman', serif; color: #3d2b22; margin: 0 0 3mm; }
#zl-druk .zd h2 { font: 700 12.5pt/1.2 Georgia, 'Times New Roman', serif; color: #3d2b22; margin: 6mm 0 2.5mm;
  padding-bottom: 1mm; border-bottom: .4mm solid #d6c7b8; break-after: avoid; }
#zl-druk .zd h3 { font: 700 11pt/1.2 Arial, Helvetica, sans-serif; margin: 0 0 2mm; }
#zl-druk .zd p { margin: 0 0 2mm; }
#zl-druk .zd-drobne { font-size: 8.5pt; color: #555; }
#zl-druk .zd-brak { color: #b45309; font-weight: 700; }
#zl-druk .zd-liczba { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }

/* Nagłówek wspólny */
#zl-druk .zd-glowa { display: flex; justify-content: space-between; align-items: flex-start; gap: 6mm;
  padding-bottom: 3mm; margin-bottom: 4mm; border-bottom: .6mm solid #5c4033; }
#zl-druk .zd-glowa p { margin: 0; }
#zl-druk .zd-rodzaj { text-align: right; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: 9pt; color: #5c4033; white-space: nowrap; }
#zl-druk .zd-rodzaj .zd-drobne { text-transform: none; letter-spacing: 0; font-weight: 400; }

/* Tabele */
#zl-druk .zd-tab { width: 100%; border-collapse: collapse; margin: 0 0 3mm; }
#zl-druk .zd-tab th, #zl-druk .zd-tab td { border: .3mm solid #bbb; padding: 1.6mm 2.2mm; text-align: left; vertical-align: top; background: none; }
#zl-druk .zd-tab th { background: #f1ebe5; font-size: 9pt; font-weight: 700; color: #111; text-transform: none; letter-spacing: 0; }
#zl-druk .zd-tab .zd-liczba { text-align: right; }
#zl-druk .zd-tab tr { break-inside: avoid; }

/* ---- warsztat ---- */
#zl-druk .zd-warsztat .zd-glowa h1 { font-size: 15pt; margin-bottom: 1mm; }
#zl-druk .zd-projekt { border: .6mm solid #111; padding: 2mm 3mm; font-weight: 700; font-size: 11pt; letter-spacing: .02em; }
#zl-druk .zd-ostrzezenie { border-left: 1.2mm solid #b45309; padding: 1mm 3mm; font-weight: 700; }
#zl-druk .zd-wspolne { display: flex; flex-wrap: wrap; gap: 2mm 8mm; margin: 0 0 4mm; padding: 2.5mm 3mm; background: #f6f2ee; }
#zl-druk .zd-wspolne div { display: flex; gap: 2mm; align-items: baseline; }
#zl-druk .zd-wspolne dt { font-size: 9pt; color: #555; }
#zl-druk .zd-wspolne dd { margin: 0; font-weight: 700; font-size: 11pt; }
#zl-druk .zd-warsztat .zd-tab td { font-size: 11pt; }
#zl-druk .zd-mocne { font-weight: 700; font-size: 13pt !important; }
#zl-druk .zd-tab .zd-lp { width: 9mm; text-align: center; }
#zl-druk .zd-wyjatek { font-weight: 700; font-size: 9.5pt; margin-top: .8mm; }
#zl-druk .zd-tab .zd-odhacz { width: 11mm; text-align: center; }
#zl-druk td.zd-odhacz span { display: inline-block; width: 5mm; height: 5mm; border: .4mm solid #333; }
#zl-druk .zd-warsztat .zd-tab tfoot td { font-size: 9pt; color: #444; }

/* ---- klient ---- */
#zl-druk .zd-firma { display: flex; gap: 3mm; align-items: center; }
#zl-druk .zd-firma img { width: 12mm; height: auto; }
#zl-druk .zd-marka { font: 700 15pt/1.1 Georgia, serif; color: #5c4033; letter-spacing: .06em; }
#zl-druk .zd-dane { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2mm 8mm; margin: 0 0 2mm; }
#zl-druk .zd-dane div { display: flex; gap: 2mm; align-items: baseline; }
#zl-druk .zd-dane dt { color: #555; font-size: 9pt; min-width: 27mm; }
#zl-druk .zd-dane dd { margin: 0; font-weight: 700; }
#zl-druk .zd-pozycje { display: grid; grid-template-columns: 1fr 1fr; gap: 4mm; }
#zl-druk .zd-poz { border: .3mm solid #ccc; border-radius: 2mm; padding: 3mm; break-inside: avoid; }
#zl-druk .zd-ciecie { margin: 1.5mm 0; }
#zl-druk .zd-wymiary { display: grid; grid-template-columns: 1fr 1fr; gap: .6mm 4mm; margin: 0 0 1mm; font-size: 8.5pt; }
#zl-druk .zd-wymiary div { display: flex; justify-content: space-between; gap: 2mm; border-bottom: .2mm dotted #ccc; }
#zl-druk .zd-wymiary dt { color: #555; }
#zl-druk .zd-wymiary dd { margin: 0; font-weight: 700; white-space: nowrap; }
#zl-druk .zd-sekcja-wycena { break-inside: avoid; }
/* Chrome powtarza <tfoot> na każdej kartce — suma ma być raz, pod wierszami. */
#zl-druk .zd-tab tfoot { display: table-row-group; }
#zl-druk .zd-wycena { max-width: 120mm; }
#zl-druk .zd-tab .zd-suma td { font-weight: 700; font-size: 11.5pt; background: #f6f2ee; }
#zl-druk .zd-tab .zd-rabat td { color: #15803d; }
#zl-druk .zd-stopka { margin-top: 6mm; padding-top: 2mm; border-top: .3mm solid #ccc; font-size: 8.5pt; color: #555; }

/* Szkic parapetu (js/zlecenia-szkic.js) — te same kolory co na stronie, bez interakcji */
#zl-druk .zl-szkic { width: 100%; height: auto; display: block; font-family: Arial, Helvetica, sans-serif; }
#zl-druk .zl-sz-mur { fill: #e7e0d8; }
#zl-druk .zl-sz-okno { fill: #dbeafe; stroke: #93c5fd; stroke-width: 1.5; }
#zl-druk .zl-sz-parapet { fill: #e9c893; stroke: #7a5230; stroke-width: 2.5; stroke-linejoin: round; }
#zl-druk .zl-sz-otwor { fill: none; stroke: #7a5230; stroke-width: 1.5; stroke-dasharray: 6 5; opacity: .75; }
#zl-druk .zl-sz-wymiar { stroke: #5b4b40; stroke-width: 1.5; }
#zl-druk .zl-sz-liczba { font-size: 24px; fill: #3d2b22; font-weight: 700; }
#zl-druk .zl-sz-mala { font-size: 19px; }
#zl-druk .zl-sz-plus { fill: #8a7a6d; font-weight: 400; }
#zl-druk .zl-sz-opis { font-size: 14px; fill: #8a7a6d; font-style: italic; }
#zl-druk .zl-sz-brak { fill: #d97706; }
