/* =============================================================================
   산업안전보건위원회 — 인쇄 문서 서식 (2026-10-09)   js/osh-form.js · osh-print.js 와 한 쌍
   공식 사내 문서 모양: 흰 바탕·검은 글자·회색 가는 표선. Apple 화면 스타일을 쓰지 않는다. 쪽 설정은 hs-print.css 의 이름 있는 @page(hsPortrait).
   레퍼런스(2026 임시 산안위 회의결과·서명지, recon/refs.md §2·§3): 표선 0.25mm #808080 · 머리 배경 #D9D9D9 · 본문 11pt · 표 9.5pt · 제목 17pt · 서명지 제목 상자 #F3F3F3.
   모든 규칙은 #hsPrintHost 안에서만 작동한다.
   ========================================================================== */
#hsPrintHost .osh-pg { font-size: 11pt; line-height: 1.45; color: #000; word-break: keep-all; }
#hsPrintHost .hs-page.hs-port.osh-meas { position: absolute; left: -12000px; top: 0; visibility: hidden; height: auto; overflow: visible; zoom: 1; box-shadow: none; margin: 0; }
#hsPrintHost .osh-mb { display: flow-root; }
#hsPrintHost .osh-wm { position: absolute; left: 14mm; top: 4mm; font-size: 8pt; color: #999; }
#hsPrintHost .osh-sig { display: block; margin: 0 auto; object-fit: contain; max-width: 100%; }

/* ---- 1쪽: 결재란 · 제목 · 일시/장소/참석자 ---- */
#hsPrintHost .osh-stampwrap { display: flex; justify-content: flex-end; }
#hsPrintHost .osh-stamp { border-collapse: collapse; table-layout: fixed; }
#hsPrintHost .osh-stamp td { border: .25mm solid #808080; text-align: center; padding: 0; width: 15.5mm; font-size: 8.5pt; line-height: 1.1; overflow: hidden; }
#hsPrintHost .osh-stamp .l td { background: #D9D9D9; height: 5.9mm; font-weight: 700; font-size: 9pt; white-space: nowrap; }
#hsPrintHost .osh-stamp .s td { height: 13.9mm; vertical-align: middle; }
#hsPrintHost .osh-stamp .d td { height: 4.8mm; }
#hsPrintHost .osh-stamp .osh-sig { width: 14.4mm; height: 12.4mm; }
#hsPrintHost .osh-pre { color: #9a9a9a; font-size: 7.5pt; }
#hsPrintHost .osh-doc-title { margin: 5mm 0 0; font-size: 17pt; font-weight: 800; text-align: center; line-height: 1.3; }
#hsPrintHost .osh-doc-meta { margin: 5mm 0 0; text-align: right; font-size: 11pt; line-height: 1.5; padding-right: 4mm; }
#hsPrintHost .osh-doc-meta div:empty { display: none; }
#hsPrintHost .osh-info { margin-top: 7mm; }
#hsPrintHost .osh-li { font-size: 11pt; line-height: 5.7mm; }
#hsPrintHost .osh-li .osh-no { display: inline-block; width: 6mm; }
#hsPrintHost .osh-li .osh-lbl { display: inline-block; min-width: 20mm; }
#hsPrintHost .osh-sub { display: flex; padding-left: 5.4mm; }
#hsPrintHost .osh-sub .osh-no { flex: 0 0 8mm; }
#hsPrintHost .osh-sub .osh-sl { flex: 0 0 auto; margin-right: 1.6mm; }
#hsPrintHost .osh-sub .osh-sv { flex: 1 1 auto; min-width: 0; }
#hsPrintHost .osh-sec { margin: 6mm 0 2mm; font-size: 11pt; line-height: 1.4; }
#hsPrintHost .osh-sec2 { margin-top: 6mm; }
#hsPrintHost .osh-sec3 { margin: 9mm 0 3mm; font-size: 13pt; font-weight: 800; }
#hsPrintHost .osh-ln { font-size: 10pt; line-height: 5mm; padding-left: 3mm; text-indent: -3mm; margin-left: 3mm; overflow-wrap: anywhere; }
#hsPrintHost .osh-attach { margin-top: 9mm; font-size: 11pt; padding-left: 1mm; }
#hsPrintHost .osh-note { margin-top: 3mm; font-size: 8.5pt; color: #444; }

/* ---- 표 공통 ---- */
#hsPrintHost .osh-tb { border-collapse: collapse; table-layout: fixed; margin: 0 auto; }
#hsPrintHost .osh-tb th, #hsPrintHost .osh-tb td { border: .25mm solid #808080; padding: 1.6mm 2.4mm; vertical-align: middle; overflow-wrap: anywhere; word-break: keep-all; }
#hsPrintHost .osh-tb .osh-th th { background: #D9D9D9; font-size: 11pt; font-weight: 800; height: 10.6mm; letter-spacing: .5mm; }
#hsPrintHost .osh-tb tr { break-inside: avoid; }

/* ---- 심의·의결 표 ---- */
#hsPrintHost .osh-ar td { font-size: 9.5pt; line-height: 4.1mm; text-align: left; height: 23mm; }
#hsPrintHost .osh-ar td.osh-c { text-align: center; }
#hsPrintHost .osh-ar.osh-fill td { height: 30mm; }
#hsPrintHost .osh-res { margin-top: 1mm; font-weight: 700; }
#hsPrintHost .osh-dl1 { padding-left: 2.8mm; text-indent: -2.8mm; }
#hsPrintHost .osh-ar.osh-xs td { font-size: 7.5pt; line-height: 3.2mm; height: auto; }

/* ---- 2쪽: 참석 및 서명부 ---- */
#hsPrintHost .osh-titlebox { width: 172mm; margin: 10mm auto 12mm; padding: 5mm 6mm; border: .3mm solid #777; border-radius: 3.5mm; background: #F3F3F3; text-align: center; }
#hsPrintHost .osh-tb1, #hsPrintHost .osh-tb2 { font-size: 18pt; font-weight: 800; line-height: 1.4; }
#hsPrintHost .osh-t-sign th, #hsPrintHost .osh-t-sign td { border-color: #555; border-width: .2mm; padding: 1mm 1.5mm; text-align: center; }
#hsPrintHost .osh-t-sign .osh-gh th { background: #EBEBEB; font-size: 15pt; font-weight: 800; height: 12mm; }
#hsPrintHost .osh-t-sign .osh-th th { background: #fff; font-size: 11pt; font-weight: 800; height: 9mm; letter-spacing: 0; white-space: nowrap; overflow-wrap: normal; word-break: keep-all; padding-left: 0; padding-right: 0; }
#hsPrintHost .osh-t-sign .osh-sr td { height: 17mm; font-size: 11.5pt; line-height: 1.25; }
#hsPrintHost .osh-t-sign .osh-r { font-size: 10.5pt; }
#hsPrintHost .osh-t-sign .osh-n { font-size: 10pt; }
#hsPrintHost .osh-t-sign .osh-mid { border-left: .6mm solid #555; }
#hsPrintHost .osh-t-sign .osh-sig { height: 14.4mm; width: 30mm; }
#hsPrintHost .osh-abs { font-weight: 700; color: #444; font-size: 10.5pt; }
#hsPrintHost .osh-abs small { font-weight: 400; font-size: 8pt; }

/* ---- 미참석·대리참석 ---- */
#hsPrintHost .osh-t-abs th, #hsPrintHost .osh-t-abs td { border-color: #555; border-width: .2mm; text-align: center; font-size: 10pt; }
#hsPrintHost .osh-t-abs .osh-th th { font-size: 10.5pt; height: 9mm; }
#hsPrintHost .osh-t-abs .osh-sr td { height: 14mm; }
#hsPrintHost .osh-t-abs .osh-l { text-align: left; }
#hsPrintHost .osh-t-abs .osh-sig { height: 11.5mm; width: 30mm; }
#hsPrintHost .osh-sm { font-size: 8pt; color: #333; font-weight: 400; }
#hsPrintHost .osh-none { color: #555; height: 12mm; }

/* ---- 위임장 ---- */
#hsPrintHost .osh-proxy { padding-top: 14mm; }
#hsPrintHost .osh-ptitle { margin: 12mm 0 16mm; font-size: 26pt; font-weight: 800; text-align: center; letter-spacing: 1mm; }
#hsPrintHost .osh-ptable { width: 100%; border-collapse: collapse; table-layout: fixed; }
#hsPrintHost .osh-ptable th, #hsPrintHost .osh-ptable td { border: .3mm solid #666; padding: 5mm 4mm; font-size: 12pt; line-height: 1.5; text-align: left; vertical-align: middle; overflow-wrap: anywhere; }
#hsPrintHost .osh-ptable th { background: #D9D9D9; text-align: center; font-weight: 800; }
#hsPrintHost .osh-ptable .osh-tall td { height: 62mm; vertical-align: top; }
#hsPrintHost .osh-pline { margin: 16mm 0 6mm; text-align: center; font-size: 14pt; }
#hsPrintHost .osh-pdate { text-align: center; font-size: 14pt; margin-bottom: 14mm; }
#hsPrintHost .osh-psign { display: flex; justify-content: flex-end; align-items: center; gap: 4mm; font-size: 14pt; padding-right: 6mm; }
#hsPrintHost .osh-pbox { display: flex; align-items: center; justify-content: center; width: 46mm; height: 22mm; border-bottom: .3mm solid #666; font-size: 10pt; color: #888; }
#hsPrintHost .osh-pbox .osh-sig { height: 20mm; width: 44mm; }
#hsPrintHost .osh-pto { margin-top: 24mm; font-size: 15pt; font-weight: 800; }

/* ---- 사진 대지 ---- */
#hsPrintHost .osh-photos { padding-top: 6mm; }
#hsPrintHost .osh-ptitle2 { margin: 4mm 0 2mm; font-size: 17pt; font-weight: 800; text-align: center; }
#hsPrintHost .osh-pmeta { text-align: center; font-size: 11pt; margin-bottom: 6mm; }
#hsPrintHost .osh-fig { margin: 0 0 8mm; text-align: center; }
#hsPrintHost .osh-fig img { width: 150mm; height: 112.5mm; object-fit: contain; border: .2mm solid #999; background: #fff; }

/* ---- 인쇄 보기 위쪽 경고(화면 전용 — 인쇄 막대 안에 있어 출력되지 않고, 공식 문서 쪽에는 아무것도 들어가지 않는다) ---- */
#hsPrintHost .osh-print-warn { margin: 0 0 8px; padding: 9px 12px; border-radius: 8px; background: #fff4e5; border: 1px solid #f0b86e; color: #7a4100; font-size: 13px; line-height: 1.5; }
#hsPrintHost .osh-print-warn b { display: block; font-size: 14px; margin-bottom: 2px; }
#hsPrintHost .osh-print-warn span { display: block; }
