/* =====================================================================
   VS Kit — หน้าพิมพ์รูปแบบราชการ (ใช้คู่กับ window.print() / บันทึกเป็น PDF จากเบราว์เซอร์)
   ค่าตามระเบียบงานสารบรรณ: A4 · ขอบซ้าย 3 ซม. ขวา 2 ซม. บน-ล่าง 2 ซม. · TH SarabunPSK 16 pt
   ย่อหน้า 2.5 ซม. · "บันทึกข้อความ" 29 pt หนา · ป้ายกำกับ 20 pt หนา · ตาราง 14 pt หัวตารางเทา D9D9D9
   ไฟล์ .docx ให้สร้างด้วย assets/js/thaidoc.browser.js (ThaiDoc) — CSS นี้ไว้สำหรับดู/พิมพ์บนจอเท่านั้น
   โครง HTML:
     <div id="print-root">
       <section class="gov-page">                         ← 1 หน้า A4 (แนวนอนเติม class="gov-page landscape")
         <div class="gov-memo-head"><img src=".../garuda.png"><h1>บันทึกข้อความ</h1><span></span></div>
         <p class="gov-field"><b>ส่วนราชการ</b> ...</p>
         <p class="gov-field"><b>ที่</b> ... <span class="gov-tab"></span><b>วันที่</b> ...</p>
         <p class="gov-field"><b>เรื่อง</b> ...</p>
         <p class="gov-to"><b>เรียน</b> ...</p>
         <p class="gov-body">เนื้อความ...</p>
         <div class="gov-sign"><p>ลงชื่อ....................</p><p>(ชื่อ-นามสกุล)</p><p>ตำแหน่ง ....</p></div>
         <h2 class="gov-title">รายงาน...</h2>  <table class="gov-table">...</table>
       </section>
     </div>
   ===================================================================== */
@font-face { font-family: 'TH SarabunPSK'; font-weight: 400; src: url('../fonts/thsarabunpsk/THSarabun.ttf') format('truetype'); }
@font-face { font-family: 'TH SarabunPSK'; font-weight: 700; src: url('../fonts/thsarabunpsk/THSarabun-Bold.ttf') format('truetype'); }

.gov-page {
    box-sizing: border-box;
    width: 210mm;
    min-height: 297mm;
    padding: 20mm 20mm 20mm 30mm;
    margin: 0 auto 10mm;
    background: #fff;
    color: #000;
    font-family: 'TH SarabunPSK', 'TH Sarabun New', 'Sarabun', sans-serif;
    font-size: 16pt;
    line-height: 1.1;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .12);
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}
.gov-page.landscape { width: 297mm; min-height: 210mm; padding: 20mm 20mm 16mm 25mm; }
.gov-page p { margin: 0; }
.gov-page b, .gov-page strong { font-weight: 700; }

/* หัวบันทึกข้อความ: ครุฑ 1.5 ซม. ชิดซ้าย + คำว่า "บันทึกข้อความ" กึ่งกลางหน้ากระดาษ */
.gov-memo-head { display: grid; grid-template-columns: 25mm 1fr 25mm; align-items: end; margin-bottom: 2mm; }
.gov-memo-head img { height: 15mm; width: auto; }
.gov-memo-head h1 { margin: 0; text-align: center; font-size: 29pt; font-weight: 700; line-height: 1; }
.gov-field { border-bottom: 1px solid #000; padding: 1mm 0 .5mm; }
.gov-field b { font-size: 20pt; }
.gov-tab { display: inline-block; width: 30mm; }
.gov-to { margin-top: 4mm !important; }
.gov-to b { font-size: 20pt; }
.gov-body { text-indent: 25mm; text-align: justify; text-justify: inter-character; }
.gov-sign { margin: 10mm 0 0 65mm; text-align: center; break-inside: avoid; }
.gov-title { margin: 0 0 1mm; text-align: center; font-size: 18pt; font-weight: 700; }
.gov-subtitle { text-align: center; }

/* ตารางรายงาน */
.gov-table { width: 100%; border-collapse: collapse; font-size: 14pt; margin-top: 3mm; }
.gov-table th, .gov-table td { border: .75pt solid #000; padding: 1mm 1.4mm; vertical-align: top; line-height: 1.05; }
.gov-table th { background: #D9D9D9; font-weight: 700; text-align: center; vertical-align: middle; }
.gov-table .c { text-align: center; } .gov-table .r { text-align: right; }
.gov-signs { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 6mm; margin-top: 12mm; text-align: center; break-inside: avoid; }
.gov-dots { border-bottom: 1px dotted #000; display: inline-block; min-width: 40mm; }
.gov-box::before { content: '☐'; margin-right: 2mm; }        /* หน้าจอใช้ได้ — ใน .docx ใช้ WD(BOX.EMPTY) */
.gov-box.checked::before { content: '☑'; }
.gov-pageno { position: absolute; right: 20mm; top: 10mm; border: .75pt solid #000; padding: 0 2mm; font-size: 14pt; }

/* ดูบนจอมือถือ: ย่อหน้ากระดาษให้พอดีจอ (ยังเป็นสัดส่วน A4) */
@media screen and (max-width: 860px) {
    .gov-preview { overflow: auto; }
    .gov-preview .gov-page { zoom: .45; }
}

/* ตอนพิมพ์จริง */
@page { size: A4; margin: 0; }
@media print {
    html, body { background: #fff !important; margin: 0 !important; }
    body > *:not(#print-root):not(.vsd-wm) { display: none !important; }  /* .vsd-wm = ลายน้ำโหมดทดลอง (vs-demo.js) */
    #print-root { display: block !important; }
    .gov-page { margin: 0 !important; box-shadow: none !important; break-after: page; page-break-after: always; }
    .gov-page:last-child { break-after: auto; page-break-after: auto; }
    .gov-page.landscape { page: landscape; }
}
@page landscape { size: A4 landscape; margin: 0; }
