.nm-document { color: #16181d; }
.nm-form-header { align-items: center; border-bottom: 3px solid #21409a; display: grid; gap: 12px; grid-template-columns: 120px 1fr 130px; margin-bottom: 14px; padding-bottom: 10px; }
.nm-form-logo svg { display: block; height: 48px; max-width: 116px; width: 100%; }
.nm-form-header h1 { color: #21409a; font-size: 18px; letter-spacing: .08em; margin: 0; text-align: center; }
.nm-form-header p { color: #5a6066; margin: 4px 0 0; text-align: center; }
.nm-form-meta { text-align: right; }
.nm-form-meta span { color: #5a6066; display: block; font-size: 12px; text-transform: uppercase; }
.nm-form-meta strong { display: block; margin-top: 4px; }
.nm-summary { margin-bottom: 14px; }
.nm-summary th { background: #e9edf8; color: #21409a; width: 15%; }
.nm-material-delivery .items th { background: #21409a; color: #fff; }
.nm-material-delivery .items td,
.nm-material-delivery .items th { padding: 7px; }
.ctr { text-align: center; }
.nm-electronic-approval { background: #f5f8fd; border-left: 4px solid #21409a; font-size: 12px; margin-top: 14px; padding: 10px 12px; }
.nm-form-footer { border-top: 1px solid #b9bfd2; color: #5a6066; display: flex; font-size: 11px; justify-content: space-between; margin-top: 14px; padding-top: 7px; }

.nm-leave-columns { display: grid; gap: 12px; grid-template-columns: 1.15fr .85fr; margin-bottom: 12px; }
.nm-leave-box { border: 1px solid #b9bfd2; border-radius: 6px; overflow: hidden; }
.nm-leave-box h2 { background: #21409a; color: #fff; font-size: 12px; letter-spacing: .06em; margin: 0; padding: 7px 10px; }
.nm-leave-box > .nm-write-line,
.nm-leave-box > .nm-check-line,
.nm-leave-detail-grid { margin-left: 10px; margin-right: 10px; }
.nm-write-line { align-items: end; display: flex; gap: 8px; margin-bottom: 10px; min-height: 20px; }
.nm-write-line:first-of-type { margin-top: 10px; }
.nm-write-line strong { color: #21409a; font-size: 11px; white-space: nowrap; }
.nm-write-line span { border-bottom: 1px dotted #97a1bd; flex: 1; min-height: 17px; }
.nm-check-line { align-items: center; display: flex; gap: 8px; margin: 12px 10px; }
.nm-check-line i { border: 2px solid #21409a; border-radius: 3px; height: 15px; width: 15px; }
.nm-leave-detail-grid { display: grid; gap: 2px 16px; grid-template-columns: 1fr 1fr; padding-top: 2px; }
.nm-leave-declaration { background: #f5f8fd; border-left: 6px solid #21409a; font-size: 12px; line-height: 1.5; margin: 12px 0; padding: 10px; }

.nm-page-shipping-label { display: grid; min-height: 194mm; place-items: center; }
/* İstek 2: etiket palet sayısı kadar basılır; her etiket ayrı sayfadır. */
.nm-shipping-label + .nm-shipping-label { break-before: page; page-break-before: always; }
.nm-shipping-label { box-sizing: border-box; color: #16181d; display: flex; flex-direction: column; height: 180mm; margin: 0 auto; overflow: hidden; padding: 12mm 15mm; width: 267mm; }
.nm-shipping-label header { align-items: center; border-bottom: 4px solid #21409a; display: grid; gap: 8mm; grid-template-columns: minmax(0,1fr) auto; padding-bottom: 7mm; }
.nm-label-brand { align-items: center; display: flex; gap: 7mm; min-width: 0; }
.nm-label-logo svg { height: 24mm; width: 62mm; }
.nm-label-tagline { display: grid; gap: 1.5mm; width: 88mm; font-size: 9.5pt; line-height: 1.25; }
.nm-label-tagline > span { display: grid; grid-template-columns: 30mm minmax(0,1fr); gap: 2mm; }
.nm-label-tagline strong { color: #21409a; white-space: nowrap; }
.nm-label-tagline em { font-style: normal; text-align: right; white-space: nowrap; }
.nm-label-document { color: #5a6066; display: flex; flex-direction: column; font-size: 13pt; line-height: 1.45; text-align: right; }
.nm-label-document > strong { color: #21409a; font-size: 21pt; letter-spacing: .06em; }
.nm-label-recipient { display: flex; flex: 1; flex-direction: column; justify-content: center; }
.nm-label-recipient small,
.nm-shipping-label footer small { color: #21409a; font-size: 13pt; font-weight: 700; letter-spacing: .08em; }
.nm-label-recipient strong { font-size: 30pt; line-height: 1.15; margin-top: 4mm; }
.nm-label-recipient p { font-size: 22pt; line-height: 1.35; margin: 4mm 0; }
.nm-label-recipient span { font-size: 17pt; }
.nm-shipping-label footer { align-items: end; display: flex; font-size: 12pt; gap: 8mm; justify-content: space-between; }
.nm-shipping-label footer div { display: flex; flex-direction: column; }
.nm-label-company-address span { line-height: 1.35; }
.nm-shipping-label footer b { border: 4px solid #21409a; color: #21409a; font-size: 30pt; min-width: 35mm; padding: 5mm; text-align: center; }
/* Ön hazırlık etiketi: kâğıdın KESİN Mİ TASLAK MI olduğu etiketin üstünde yazar. Dolgu rengiyle
   DEĞİL çerçeve + koyu metinle işaretlenir; yazıcıda "arka plan grafiklerini yazdır" kapalıysa
   dolgulu bir bant beyaz üstüne beyaz kalır ve uyarı sessizce kaybolurdu. */
.nm-label-draft { border: 3px solid #21409a; color: #21409a; font-size: 13pt; font-weight: 700; letter-spacing: .1em; margin-bottom: 4mm; padding: 2.5mm 4mm; text-align: center; }

@media print {
  .nm-label-sheet { break-inside: avoid; }
}
