/* 공문·안내문 양식기 */
[data-app="notice-form"]{ display:flex; flex-direction:column; gap:12px; }
[data-app="notice-form"] .nf-top{ display:flex; flex-direction:column; gap:8px; }
[data-app="notice-form"] .nf-modes{ display:flex; gap:6px; }
[data-app="notice-form"] .nf-mode{ flex:1 1 0; min-width:0; min-height:42px; border:1px solid #D9DCE1; border-radius:10px; background:#fff; color:#3A3F47; font-size:14.5px; font-weight:800; cursor:pointer; }
[data-app="notice-form"] .nf-mode[aria-pressed="true"]{ background:#1A1A1A; border-color:#1A1A1A; color:#fff; }
[data-app="notice-form"] .nf-ex{ margin:0; padding:7px 10px; border:1px dashed #E0A23B; border-radius:10px; background:#FFF8EC; color:#7A4B00; font-size:12.5px; font-weight:700; line-height:1.5; }
[data-app="notice-form"] .nf-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap:14px; align-items:start; }
[data-app="notice-form"] .nf-form, [data-app="notice-form"] .nf-gwf, [data-app="notice-form"] .nf-anf{ display:flex; flex-direction:column; gap:9px; min-width:0; }
[data-app="notice-form"] .nf-gwf[hidden], [data-app="notice-form"] .nf-anf[hidden], [data-app="notice-form"] .nf-sheet[hidden]{ display:none; }
[data-app="notice-form"] .nf-f{ display:flex; flex-direction:column; gap:4px; margin:0; min-width:0; }
[data-app="notice-form"] .nf-lab{ display:block; }
[data-app="notice-form"] .nf-f .ndt-k small{ font-weight:600; }
[data-app="notice-form"] .nf-inrow{ display:flex; flex-wrap:wrap; gap:6px; }
[data-app="notice-form"] .nf-inrow .ndt-in{ flex:1 1 180px; min-width:0; }
[data-app="notice-form"] .nf-inrow .nf-q{ flex:none; }
[data-app="notice-form"] .nf-two{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8px; }
[data-app="notice-form"] .nf-items, [data-app="notice-form"] .nf-atts{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px; }
[data-app="notice-form"] .nf-it{ display:grid; grid-template-columns:26px minmax(0,1fr) 32px 32px; gap:3px; align-items:start; }
[data-app="notice-form"] .nf-it.sub{ padding-left:18px; }
[data-app="notice-form"] .nf-n{ padding-top:9px; text-align:right; font-size:13px; font-weight:800; color:#4B5059; font-variant-numeric:tabular-nums; }
[data-app="notice-form"] .nf-it.sub .nf-n{ color:#6B717B; }
[data-app="notice-form"] textarea.ndt-in.nf-iin{ display:block; min-height:38px; height:38px; padding:8px 10px; resize:none; overflow:hidden; line-height:1.45; font-size:14px; }
[data-app="notice-form"] .nf-lv, [data-app="notice-form"] .nf-di, [data-app="notice-form"] .nf-da{ min-height:38px; width:32px; padding:0; border-color:transparent; background:transparent; color:#6B717B; font-size:14px; }
[data-app="notice-form"] .nf-lv:hover:not(:disabled){ border-color:#C9D5EE; color:#2F55A4; }
[data-app="notice-form"] .nf-lv:disabled{ opacity:.25; }
[data-app="notice-form"] .nf-di:hover, [data-app="notice-form"] .nf-da:hover{ border-color:#E3C4C0; color:#B42318; }
[data-app="notice-form"] .nf-atts li{ display:grid; grid-template-columns:26px minmax(0,1fr) 32px; gap:3px; align-items:center; }
[data-app="notice-form"] .nf-atts .nf-n{ padding-top:0; }
[data-app="notice-form"] .nf-adda, [data-app="notice-form"] .nf-gwf .ndt-row{ align-self:flex-start; margin-left:29px; }
[data-app="notice-form"] textarea.ndt-in[data-a="greet"]{ min-height:70px; resize:none; overflow:hidden; }
/* 미리 보기 — 종이 한 장처럼 */
[data-app="notice-form"] .nf-view{ display:flex; flex-direction:column; gap:8px; min-width:0; }
[data-app="notice-form"] .nf-vh{ margin:0; }
[data-app="notice-form"] .nf-sheet{ padding:22px 20px 18px; border:1px solid #DADDE3; border-radius:6px; background:#fff; box-shadow:0 2px 10px rgba(20,30,50,.06); color:#111; font-size:13.5px; line-height:1.7; overflow-wrap:anywhere; word-break:keep-all; }
[data-app="notice-form"] .nf-sheet p{ margin:0; }
[data-app="notice-form"] .nf-ph{ color:#A3A8B0; font-weight:500; }
[data-app="notice-form"] .nf-s-ex{ display:none; }
[data-app="notice-form"] .nf-org{ margin:0 0 14px !important; padding-bottom:10px; border-bottom:2px solid #1A1A1A; text-align:center; font-size:19px; font-weight:900; letter-spacing:.02em; }
[data-app="notice-form"] .nf-hd{ display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:12px; row-gap:2px; padding-bottom:10px; margin-bottom:12px; border-bottom:1px solid #9AA0A8; }
[data-app="notice-form"] .nf-hk{ font-weight:800; white-space:nowrap; }
[data-app="notice-form"] .nf-ttl{ font-weight:800; }
[data-app="notice-form"] .nf-body{ display:flex; flex-direction:column; gap:3px; }
[data-app="notice-form"] .nf-p{ padding-left:1.5em; text-indent:-1.5em; }
[data-app="notice-form"] .nf-p.sub{ padding-left:3.3em; text-indent:-1.8em; }
[data-app="notice-form"] .nf-pn{ font-weight:700; }
[data-app="notice-form"] .nf-end{ white-space:nowrap; }
[data-app="notice-form"] .nf-att{ display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:12px; margin-top:14px; }
[data-app="notice-form"] .nf-ak2{ font-weight:800; }
[data-app="notice-form"] .nf-sender{ margin:28px 0 18px !important; text-align:center; font-size:18px; font-weight:900; letter-spacing:.04em; }
[data-app="notice-form"] .nf-run{ padding-top:8px; border-top:1px solid #9AA0A8; font-size:12.5px; }
[data-app="notice-form"] .nf-atl{ margin:0 0 16px !important; padding:10px 8px; border-top:2px solid #1A1A1A; border-bottom:2px solid #1A1A1A; text-align:center; font-size:18px; font-weight:900; }
[data-app="notice-form"] .nf-greet{ margin:0 0 14px !important; white-space:pre-wrap; }
[data-app="notice-form"] .nf-below{ margin:4px 0 10px !important; text-align:center; font-weight:800; letter-spacing:.3em; }
[data-app="notice-form"] .nf-arows{ display:flex; flex-direction:column; gap:4px; }
[data-app="notice-form"] .nf-ar{ padding-left:1.5em; text-indent:-1.5em; }
[data-app="notice-form"] .nf-adate{ margin:26px 0 4px !important; text-align:center; }
[data-app="notice-form"] .nf-from{ text-align:center; font-size:16px; font-weight:900; }
[data-app="notice-form"] .nf-acts{ display:flex; gap:8px; }
[data-app="notice-form"] .nf-acts .ndt-btn{ flex:1 1 0; min-width:0; white-space:normal; line-height:1.25; text-align:center; }
[data-app="notice-form"] .nf-fbw textarea.ndt-fb{ width:100%; min-height:140px; font:inherit; font-size:13px; }
[data-app="notice-form"] .nf-st{ margin:0; min-height:1.5em; font-size:12.5px; line-height:1.55; color:#4B5059; }
[data-app="notice-form"] .nf-st .nf-undo{ margin-left:4px; vertical-align:middle; }
[data-app="notice-form"] .nf-rule{ margin:0; }
[data-app="notice-form"] .nf-foot{ justify-content:space-between; }
[data-app="notice-form"] .nf-note{ margin:0; }
@media (max-width:560px){
  [data-app="notice-form"] textarea.ndt-in.nf-iin{ min-height:40px; height:40px; line-height:1.4; font-size:16px; }
  [data-app="notice-form"] .nf-n{ padding-top:10px; }
  [data-app="notice-form"] .nf-lv, [data-app="notice-form"] .nf-di, [data-app="notice-form"] .nf-da{ min-height:40px; }
  [data-app="notice-form"] .nf-sheet{ padding:18px 14px 14px; }
  [data-app="notice-form"] .nf-two{ grid-template-columns:minmax(0,1fr); }
  [data-app="notice-form"] .nf-inrow .ndt-in{ flex-basis:100%; }
  [data-app="notice-form"] .nf-it.sub{ padding-left:8px; }
  [data-app="notice-form"] .nf-it{ grid-template-columns:24px minmax(0,1fr) 30px 30px; }
  [data-app="notice-form"] .nf-lv, [data-app="notice-form"] .nf-di, [data-app="notice-form"] .nf-da{ width:30px; }
}
/* 인쇄(인쇄 · PDF 저장): 입력 화면 대신 문서 한 장 */
/* ⚠️ 인쇄본에는 tabular-nums 를 쓰지 말 것 — PDF로 저장하면 숫자가 복사·검색되지 않음 */
@media print{
  [data-app="notice-form"]{ border:0; padding:0; border-radius:0; background:#fff; color:#000; }
  [data-app="notice-form"] .nf-grid{ display:block; }
  [data-app="notice-form"] .nf-sheet{ padding:0; border:0; box-shadow:none; border-radius:0; font-size:11.5pt; line-height:1.75; color:#000; }
  [data-app="notice-form"] .nf-ph{ color:#888; }
  [data-app="notice-form"] .nf-s-ex{ display:block; margin:0 0 12pt !important; padding:5pt 8pt; border:1.5pt dashed #B42318; color:#B42318; font-size:10.5pt; font-weight:700; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  [data-app="notice-form"] .nf-org{ font-size:20pt; padding-bottom:8pt; margin-bottom:12pt !important; }
  [data-app="notice-form"] .nf-sender{ font-size:18pt; margin:36pt 0 24pt !important; }
  [data-app="notice-form"] .nf-atl{ font-size:18pt; }
  [data-app="notice-form"] .nf-from{ font-size:14pt; }
  [data-app="notice-form"] .nf-p, [data-app="notice-form"] .nf-ar{ break-inside:avoid; page-break-inside:avoid; }
}
