
:root{--pri:#1d4ed8;--pri2:#1e3a8a;--tx:#111827;--mu:#6b7280;--bd:#e5e7eb;
--bg:#f7f8fa;--cd:#fff;--ac:#fef3c7;--acb:#f59e0b;--gr:#047857}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Malgun Gothic','Apple SD Gothic Neo',sans-serif;
background:var(--bg);color:var(--tx);line-height:1.65;-webkit-text-size-adjust:100%}
a{color:var(--pri);text-decoration:none}
/* ── 상단 내비게이션: 스티키 + 블러, 세그먼트 스위처 ── */
.top{background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(14px);
-webkit-backdrop-filter:saturate(180%) blur(14px);
border-bottom:1px solid rgba(17,24,39,.06);position:sticky;top:0;z-index:50}
.top .in{max-width:1080px;margin:0 auto;padding:11px 16px;display:flex;align-items:center;gap:16px}
.logo{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:1em;
cursor:pointer;white-space:nowrap;color:var(--tx);text-decoration:none;letter-spacing:-.2px}
.logo::before{content:'';width:26px;height:26px;border-radius:8px;flex:0 0 auto;
background:linear-gradient(135deg,var(--pri) 0%,#4f7df3 55%,#7aa5ff 100%);
box-shadow:0 2px 6px rgba(29,78,216,.35)}
.logo span{color:var(--mu);font-weight:600}
.mode{display:inline-flex;gap:2px;margin-left:auto;background:#eef0f4;padding:3px;
border-radius:10px;position:relative}
.mode a{text-decoration:none}
.mode button{padding:6.5px 13px;border:none;background:transparent;border-radius:8px;
font-size:.83em;font-weight:700;cursor:pointer;color:var(--mu);font-family:inherit;
white-space:nowrap;transition:color .15s}
.mode button.on{background:#fff;color:var(--tx);box-shadow:0 1px 2px rgba(17,24,39,.08),
0 1px 1px rgba(17,24,39,.04)}
.wrap{max-width:1080px;margin:0 auto;padding:18px 16px 60px}
/* ── 페이지 헤더: 좌측 정렬, 절제된 스타일 ── */
.hero{padding:26px 2px 18px;border-bottom:1px solid var(--bd);margin-bottom:18px}
.hero .eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:.74em;font-weight:700;
color:var(--pri);letter-spacing:.4px;margin-bottom:8px}
.hero .eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--pri)}
.hero h1{font-size:1.55em;font-weight:800;letter-spacing:-.5px}
.hero p{color:var(--mu);margin-top:6px;font-size:.92em}
/* ── 검색창: 아이콘 인셋 ── */
.searchwrap{position:relative;margin-bottom:14px}
.searchwrap::before{content:'';position:absolute;left:15px;top:50%;transform:translateY(-50%);
width:16px;height:16px;pointer-events:none;opacity:.45;
background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat;
mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") center/contain no-repeat}
.search{width:100%;padding:12px 16px 12px 40px;font-size:16px;border:1px solid var(--bd);
border-radius:11px;background:var(--cd);font-family:inherit;color:var(--tx);
box-shadow:0 1px 2px rgba(17,24,39,.03);transition:box-shadow .15s,border-color .15s}
.search:focus{outline:none;border-color:var(--pri);box-shadow:0 0 0 3.5px rgba(29,78,216,.12)}
/* ── 카테고리 탭: 스크롤 페이드 필 칩 ── */
.tabsouter{position:relative;margin-bottom:16px}
.tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:1px 2px}
.tabs::-webkit-scrollbar{display:none}
.tabsouter::after{content:'';position:absolute;right:0;top:0;bottom:0;width:28px;
background:linear-gradient(90deg,transparent,var(--bg));pointer-events:none}
.tab{flex:0 0 auto;padding:7px 14px;border:1px solid transparent;background:#eef0f4;
border-radius:999px;font-size:.83em;cursor:pointer;white-space:nowrap;font-weight:600;
color:var(--mu);font-family:inherit;transition:.14s}
.tab:hover{background:#e3e7ee;color:var(--tx)}
.tab.on{background:var(--pri);color:#fff;box-shadow:0 2px 6px rgba(29,78,216,.25)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:12px}
.card{background:var(--cd);border:1px solid var(--bd);border-radius:12px;padding:16px;
cursor:pointer;transition:.16s;display:flex;flex-direction:column;gap:6px}
.card:hover{border-color:var(--pri);box-shadow:0 5px 16px rgba(29,78,216,.1);transform:translateY(-2px)}
.card h3{font-size:1em;font-weight:700}
.card p{font-size:.84em;color:var(--mu);flex:1}
.badge{align-self:flex-start;font-size:.7em;font-weight:700;padding:3px 8px;border-radius:5px;
background:rgba(29,78,216,.09);color:var(--pri)}
.badge.doc{background:rgba(4,120,87,.09);color:var(--gr)}
.empty{grid-column:1/-1;text-align:center;padding:50px;color:var(--mu)}

/* ── 상세 페이지 ── */
.crumb{font-size:.85em;color:var(--mu);margin-bottom:14px}
.crumb a{cursor:pointer}
.crumb span{margin:0 6px}
.back{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;border:1px solid var(--bd);
background:var(--cd);border-radius:8px;font-size:.87em;font-weight:600;cursor:pointer;
margin-bottom:16px;font-family:inherit;color:var(--tx)}
.back:hover{border-color:var(--pri);color:var(--pri)}
.ph{margin-bottom:18px}
.ph h1{font-size:1.5em;font-weight:800;letter-spacing:-.4px}
.ph .sub{color:var(--mu);margin-top:6px;font-size:.93em}
.lead{background:var(--cd);border:1px solid var(--bd);border-left:4px solid var(--pri);
border-radius:0 10px 10px 0;padding:15px 18px;margin-bottom:20px;font-size:.95em}
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}
.panel{background:var(--cd);border:1px solid var(--bd);border-radius:12px;padding:20px}
.panel h2{font-size:1.05em;font-weight:700;margin-bottom:14px;padding-bottom:9px;
border-bottom:1px solid var(--bd)}
.fld{margin-bottom:13px}
.fld label{display:block;font-size:.87em;font-weight:600;margin-bottom:5px}
.fld .u{color:var(--mu);font-weight:400}
.fld input,.fld select,.fld textarea{width:100%;padding:11px 13px;font-size:16px;
border:1px solid var(--bd);border-radius:8px;background:#fff;font-family:inherit}
.fld textarea{min-height:84px;resize:vertical;line-height:1.5}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:2px solid var(--pri);border-color:transparent}
.fld input.filled{background:var(--ac);border-color:var(--acb)}
.hint{font-size:.78em;color:var(--mu);margin-top:4px}
.go{width:100%;padding:13px;background:var(--pri);color:#fff;border:none;border-radius:9px;
font-size:1em;font-weight:700;cursor:pointer;margin-top:4px;font-family:inherit}
.go:hover{background:var(--pri2)}
.row{display:flex;justify-content:space-between;gap:12px;padding:10px 13px;
border-bottom:1px solid var(--bd);font-size:.91em}
.row:last-child{border-bottom:none}
.row span:last-child{font-weight:600;text-align:right;word-break:keep-all}
.row.hi{background:rgba(29,78,216,.05);border-radius:7px;border-bottom:none;margin:3px 0}
.row.hi span:last-child{color:var(--pri);font-weight:800;font-size:1.05em}
.note{margin-top:13px;padding:12px 14px;background:#fffbeb;border-left:3px solid var(--acb);
border-radius:0 7px 7px 0;font-size:.84em;color:#78350f}
.disc{margin-top:12px;font-size:.77em;color:var(--mu);text-align:center}

/* 해설 */
.info{margin-top:26px}
.sec{background:var(--cd);border:1px solid var(--bd);border-radius:12px;
padding:20px 22px;margin-bottom:14px}
.sec h2{font-size:1.1em;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.sec h2 i{font-style:normal;width:26px;height:26px;border-radius:7px;background:rgba(29,78,216,.09);
color:var(--pri);display:inline-flex;align-items:center;justify-content:center;font-size:.8em;font-weight:800}
.sec ul{list-style:none}
.sec li{position:relative;padding-left:16px;margin-bottom:9px;font-size:.93em}
.sec li:last-child{margin-bottom:0}
.sec li:before{content:'';position:absolute;left:0;top:10px;width:5px;height:5px;
border-radius:50%;background:var(--pri);opacity:.5}
.sec.tip li:before{background:var(--acb);opacity:.8}
.qa{border-bottom:1px solid var(--bd);padding:13px 0}
.qa:first-of-type{padding-top:0}
.qa:last-child{border-bottom:none;padding-bottom:0}
.qa .q{font-weight:700;font-size:.94em;margin-bottom:6px}
.qa .q:before{content:'Q. ';color:var(--pri)}
.qa .a{font-size:.91em;color:#374151}
.qa .a:before{content:'A. ';color:var(--mu);font-weight:700}
.sec.stat h2 i{background:rgba(29,78,216,.1);color:var(--pri);font-size:.95em}
.sgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:9px;margin-bottom:14px}
.si{background:#f8fafc;border:1px solid var(--bd);border-radius:9px;padding:11px 13px}
.si span{display:block;font-size:.76em;color:var(--mu);font-weight:600;margin-bottom:3px}
.si b{font-size:.95em;font-weight:700;color:var(--pri2);line-height:1.5}
.sread{font-size:.92em;line-height:1.75;color:#374151;padding:13px 15px;
background:rgba(29,78,216,.04);border-radius:9px}
.ssrc{margin-top:11px;font-size:.78em;color:var(--mu);line-height:1.65}
.ssrc b{color:var(--tx)}
.sec.meta h2 i{background:rgba(100,116,139,.13);color:#475569}
.sec.miss h2 i{background:rgba(185,28,28,.1);color:#b91c1c}
.sec.miss li:before{background:#b91c1c;opacity:.65}
.mgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px}
.mi{background:#f8fafc;border:1px solid var(--bd);border-radius:9px;padding:11px 13px}
.mi span{display:block;font-size:.76em;color:var(--mu);font-weight:600;margin-bottom:3px}
.mi b{font-size:.9em;font-weight:600;line-height:1.5}
.lv{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.85em}
.lv1{background:rgba(4,120,87,.12);color:var(--gr)}
.lv2{background:rgba(245,158,11,.15);color:#b45309}
.lv3{background:rgba(185,28,28,.1);color:#b91c1c}
.dbar button:disabled{opacity:.6;cursor:default}
.case{border:1px solid var(--bd);border-left:3px solid #94a3b8;border-radius:0 9px 9px 0;
padding:14px 16px;margin-bottom:11px;background:#fbfcfd}
.case.b{border-left-color:var(--gr);background:#f7fdfa}
.case h4{font-size:.93em;font-weight:700;margin-bottom:6px}
.case p{font-size:.9em;line-height:1.7;color:#374151}
.case .prev{margin-top:8px;font-size:.86em;color:#475569}
.case .prev b{color:var(--gr)}
.ask{margin-top:14px;padding:15px 17px;background:rgba(29,78,216,.05);
border-radius:9px;font-size:.94em;font-weight:600;color:var(--pri2);line-height:1.7}
.fict{margin-top:11px;font-size:.78em;color:var(--mu);line-height:1.6}
.sec.story h2 i{background:rgba(4,120,87,.1);color:var(--gr)}
.refs{font-size:.83em;color:var(--mu);padding:13px 18px;background:var(--cd);
border:1px solid var(--bd);border-radius:10px;margin-bottom:14px}
.refs b{color:var(--tx)}

/* 다음 단계 */
.next{margin-top:24px}
.next h2{font-size:1.1em;font-weight:700;margin-bottom:12px}
.ng{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px}
.nx{background:var(--cd);border:1px solid var(--bd);border-radius:10px;padding:13px;
text-align:left;cursor:pointer;transition:.16s;font-family:inherit}
.nx:hover{border-color:var(--pri);box-shadow:0 4px 12px rgba(29,78,216,.1);transform:translateY(-2px)}
.nx.d:hover{border-color:var(--gr);box-shadow:0 4px 12px rgba(4,120,87,.1)}
.nx strong{display:block;font-size:.9em;margin-bottom:3px}
.nx span{font-size:.77em;color:var(--mu)}
.nx em{font-style:normal;font-size:.7em;font-weight:700;color:var(--pri)}
.nx.d em{color:var(--gr)}

/* 문서 */
.dbar{display:flex;gap:8px;margin-bottom:14px}
.dbar button{flex:1;padding:11px;border:1px solid var(--pri);background:#fff;color:var(--pri);
border-radius:8px;font-weight:700;cursor:pointer;font-size:.9em;font-family:inherit}
.dbar button.p{background:var(--pri);color:#fff}
.dbar button:hover{opacity:.87}
footer{text-align:center;padding:28px 16px;color:var(--mu);font-size:.8em;
border-top:1px solid var(--bd);background:var(--cd)}
.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);
background:#111827;color:#fff;padding:12px 20px;border-radius:10px;font-size:.9em;
font-weight:600;opacity:0;pointer-events:none;transition:.22s;z-index:200;
box-shadow:0 8px 24px rgba(0,0,0,.2);max-width:90vw;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast.bad{background:#b91c1c}

/* ══════════════ A4 문서 미리보기 — 고급 공식 서식 스타일 ══════════════
   팔레트: 잉크(남색) + 브론즈(금동) 두 톤으로 통일. 인장만 관행대로 적색. */
:root{--doc-ink:#111827;--doc-navy:#1c2b45;--doc-soft:#5c6472;--doc-mute:#8891a0;
--doc-gold:#a9822f;--doc-gold-dk:#8a6b23;--doc-gold-bg:#fbf8ef;--doc-gold-line:#d8c383;
--doc-bg-label:#eef1f6;--doc-bg-band:#f7f8fb;--doc-rule:#d7dbe3;--doc-cell:#c3c9d3;
--doc-serif:'Noto Serif KR','Batang','Apple SD Gothic Neo',serif}
#paperwrap{background:#fff;border-radius:12px;overflow:hidden;
box-shadow:0 1px 2px rgba(17,24,39,.05),0 18px 40px -12px rgba(17,24,39,.16);
border:1px solid var(--bd)}
#paperhead{display:flex;align-items:center;justify-content:space-between;gap:10px;
padding:9px 18px;background:var(--doc-navy);color:#eef0f4}
#paperhead .ph-dots{display:inline-flex;align-items:center;gap:6px;font-size:.72em;
font-weight:700;letter-spacing:1.5px;color:#c9cfdb;text-transform:uppercase}
#paperhead .ph-dots::before{content:'';width:6px;height:6px;border-radius:50%;
background:var(--doc-gold-line);display:inline-block}
#paperhead .ph-label{font-size:.76em;color:#aab2c2;font-weight:500;letter-spacing:.3px}
#paperhead .ph-label b{color:#f3ead2;font-weight:700}
#paper{position:relative;background-color:#fff;padding:17mm 16mm 15mm;
font-size:10.3pt;line-height:1.72;color:var(--doc-ink);overflow-x:auto;
font-family:'Malgun Gothic','Apple SD Gothic Neo',-apple-system,sans-serif}
#paper::before{content:'';position:absolute;inset:6.5mm;border:1px solid var(--doc-gold-line);
pointer-events:none;border-radius:2px;opacity:.55}
#paper::after{content:'';position:absolute;inset:7.6mm;border:1px solid #eef0f2;
pointer-events:none}
#paper .dt{display:block;text-align:center;font-family:var(--doc-serif);
font-size:21pt;font-weight:900;letter-spacing:15px;color:var(--doc-navy);
margin:2mm 0 7mm;padding:4mm 0 4.5mm;position:relative;
border-top:3px solid var(--doc-gold);border-bottom:3px solid var(--doc-gold)}
#paper .dh{font-family:var(--doc-serif);font-size:11.3pt;font-weight:700;margin:17px 0 8px;
padding:2px 0 6px 12px;border-bottom:1.6px solid var(--doc-navy);position:relative;color:var(--doc-navy);
letter-spacing:.3px}
#paper .dh::before{content:'';position:absolute;left:0;top:2px;bottom:8px;width:4px;
background:var(--doc-gold);border-radius:1px}
#paper .dh2{font-size:11.3pt;font-weight:700;margin:15px 0 8px;color:var(--doc-navy)}
#paper .dlead{margin-bottom:15px;font-size:9.8pt;color:var(--doc-soft);
padding:9px 13px;background:var(--doc-bg-band);border-radius:6px;border:1px solid #eef0f4}
#paper .dtbl{width:100%;border-collapse:collapse;margin-bottom:13px;font-size:9.6pt;
table-layout:auto;border-top:2px solid var(--doc-navy)}
#paper .dtbl caption{font-weight:700;text-align:left;padding-bottom:5px;font-size:9.8pt;color:var(--doc-navy)}
#paper .dtbl th,#paper .dtbl td{border:1px solid var(--doc-cell);padding:7.5px 10px;
vertical-align:middle;min-height:1.6em}
#paper .dtbl th{background:var(--doc-bg-label);font-weight:700;width:112px;
white-space:nowrap;color:var(--doc-navy);letter-spacing:.2px}
#paper .dtbl.grid thead th{background:var(--doc-navy);color:#f3ead2;border-color:var(--doc-navy);
font-weight:600;width:auto;text-align:center;letter-spacing:.2px;
border-bottom:2px solid var(--doc-gold)}
#paper .dtbl.grid tbody th{width:auto}
#paper .dtbl.appr thead th{background:var(--doc-navy);color:#f3ead2;border-color:var(--doc-navy);
border-bottom:2px solid var(--doc-gold)}
#paper .dtbl td.c,#paper .dtbl th.c{text-align:center}
#paper .dtbl td.r{text-align:right;font-variant-numeric:tabular-nums}
#paper .dtbl tr.sum td,#paper .dtbl tr.sum th{background:var(--doc-gold-bg);font-weight:700;
color:var(--doc-navy)}
#paper .dtbl tr.sum.big td{font-size:11.6pt;color:var(--doc-navy)}
#paper .dtbl.appr th{text-align:center;width:auto}
#paper .dtbl.appr td{height:56px}
#paper .dsec{margin-bottom:12px}
#paper .dsec h3{font-size:10.3pt;font-weight:700;margin-bottom:4px;color:var(--doc-navy)}
#paper .dtxt{font-size:9.9pt}
#paper .dtxt.box{border:1px solid var(--doc-cell);border-radius:5px;padding:11px 13px;
min-height:60px;background:#fefefe}
#paper .dtxt.box.lined{padding:6px 13px 10px}
#paper .wline{border-bottom:1px solid var(--doc-rule);height:1.95em;margin-top:4px}
#paper .wline:last-child{border-bottom:1px solid var(--doc-rule)}
#paper .dstmt{text-align:center;margin:22px 0;font-size:10.3pt;line-height:1.9;color:#2a3040}
#paper .dstmt.big{font-family:var(--doc-serif);font-size:12.5pt;font-weight:700;margin:28px 0;
color:var(--doc-navy)}
#paper .dsum{margin:12px 0;font-size:10.3pt}
#paper .dsign{margin-top:26px;text-align:right;background:linear-gradient(180deg,#fff,var(--doc-gold-bg));
border:1px solid var(--doc-gold-line);border-radius:8px;padding:18px 22px 16px}
#paper .ddate{text-align:center;margin-bottom:20px;font-size:10.6pt;letter-spacing:1px;
color:var(--doc-navy);font-weight:600}
#paper .dsg{margin-bottom:13px;font-size:10.3pt;display:flex;align-items:baseline;
justify-content:flex-end;gap:0}
#paper .dsg:last-child{margin-bottom:0}
#paper .sgl{display:inline-block;min-width:74px;font-weight:700;text-align:left;color:var(--doc-navy)}
#paper .sgv{display:inline-block;min-width:128px;border-bottom:1.3px solid var(--doc-navy);
text-align:center;margin:0 8px;padding:0 6px 2px}
#paper .sgs{font-size:9pt;color:var(--doc-soft);position:relative;padding-left:27px}
#paper .sgs::before{content:'인';position:absolute;left:0;top:50%;transform:translateY(-50%);
width:19px;height:19px;line-height:17px;text-align:center;border:1.4px solid #b23b3b;
border-radius:50%;color:#b23b3b;font-size:8.6pt;font-weight:700;opacity:.8}
#paper .dto{text-align:left;margin-top:24px;font-size:11.2pt;font-weight:700;color:var(--doc-navy);
font-family:var(--doc-serif)}
#paper .dnote{margin-top:20px;padding:10px 14px 10px 16px;background:var(--doc-gold-bg);
border-left:3px solid var(--doc-gold);border-radius:0 6px 6px 0;font-size:8.8pt;color:#5c5333}
#paper .bl{display:inline-block;border-bottom:none;min-height:1em;
vertical-align:baseline;max-width:100%}
#paper .bl-empty{display:inline-block;border-bottom:none;min-height:1em;
vertical-align:baseline;max-width:100%}
#paper .dtbl td:empty::after,#paper .dtbl th:empty::after{content:''}
#paper .dtxt.box:empty::after{content:'';display:block;min-height:48px}
#paper .muted{color:var(--doc-mute);font-weight:400}
#paper .big{font-size:12.5pt;font-weight:700;color:var(--doc-navy)}
#paper .strong{font-weight:700;color:var(--doc-navy)}
#paper .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#paper .mt{margin-top:12px}
#paper .cnt{text-align:right;font-size:8.4pt;color:var(--doc-mute);margin-top:4px}
#paper .dfoot{margin-top:16mm;padding-top:7px;border-top:1px solid var(--doc-rule);
font-size:7.6pt;color:var(--doc-mute);text-align:center;letter-spacing:.6px}

@media(max-width:820px){
 .cols{grid-template-columns:1fr;gap:16px}
}
@media(max-width:600px){
 .wrap{padding:14px 12px 50px}
 .grid{grid-template-columns:1fr 1fr;gap:10px}
 .card{padding:13px}.card h3{font-size:.9em}.card p{display:none}
 .hero h1{font-size:1.35em}.ph h1{font-size:1.25em}
 .panel,.sec{padding:16px 15px}
 .ng{grid-template-columns:1fr}
 .top .in{padding:10px 12px;gap:10px}
 .logo{font-size:.95em}
 .mode button{padding:6px 11px;font-size:.8em}
 #paper{padding:12px;font-size:9.5pt}
 #paper .dt{display:block;font-size:15pt;letter-spacing:5px}
 #paper .two{grid-template-columns:1fr}
}
@media print{
 body{background:#fff}
 .top,.wrap>.crumb,.back,.ph,.dbar,.panel,.info,.next,footer,.lead,.toast{display:none!important}
 #paperhead{display:none!important}
 #paperwrap{box-shadow:none!important;border:none!important;border-radius:0!important}
 #paper{border:none;border-radius:0;padding:0;font-size:10.5pt;display:block!important;
  width:auto!important;max-width:none!important;overflow:visible!important}
 #paper::before{display:none!important}  /* @page margin이 이미 여백을 주므로 인쇄 시엔 장식 테두리를 뺀다 */
 #paper .dtbl{table-layout:auto;width:100%!important}
 #paper .dtbl th,#paper .dtbl td{word-break:keep-all}
 #paper .bl{max-width:100%;border-bottom:none!important}
 #paper .bl-empty{max-width:100%;border-bottom:none!important;display:inline-block}
 #paper .wline{display:none!important;border-bottom:none!important}
 #paper .blank-space{min-height:60px;display:block}
 .cols{display:block}
 @page{size:A4;margin:15mm}
}

/* Mobile document containment */
.cols>*{min-width:0}#paperwrap{max-width:100%;overflow-x:auto}@media(max-width:600px){#paper{max-width:100%;overflow:hidden}#paper .dtbl{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}#paper .bl{min-width:0!important;max-width:100%!important}.dbar{display:flex;flex-wrap:wrap}}
/* Conventional Korean office forms: shared screen and PDF styling. */
:root{--doc-ink:#171717;--doc-navy:#222;--doc-soft:#444;--doc-mute:#666;--doc-gold:#555;--doc-gold-dk:#333;--doc-gold-bg:#f5f5f5;--doc-gold-line:#999;--doc-bg-label:#f2f2f2;--doc-bg-band:#fff;--doc-rule:#aaa;--doc-cell:#777;--doc-serif:"Malgun Gothic","Apple SD Gothic Neo",sans-serif}
#paperhead{background:#f4f5f6;color:#555;border-bottom:1px solid #ddd}
#paperhead .ph-dots,#paperhead .ph-label,#paperhead .ph-label b{color:#555;letter-spacing:0}
#paperhead .ph-dots::before{display:none}
#paper{padding:15mm 14mm;font-size:10.5pt;line-height:1.65;color:#171717}
#paper::before,#paper::after,#paper .dh::before,#paper .sgs::before{display:none;content:none}
#paper .dt{font-family:var(--doc-serif);font-size:21pt;font-weight:700;letter-spacing:2px;color:#111;border:0;padding:0;margin:3mm 0 10mm;line-height:1.4;overflow-wrap:anywhere}
#paper .dh{font-family:var(--doc-serif);font-size:11pt;padding:0 0 5px;margin:18px 0 8px;border-bottom:1px solid #777;letter-spacing:0}
#paper .dlead{background:none;border:0;border-radius:0;padding:0;margin-bottom:16px;color:#333;font-size:10pt}
#paper .dtbl{border-top:1px solid #555;font-size:10pt}
#paper .dtbl th,#paper .dtbl td{border:1px solid #777;padding:7px 8px;line-height:1.5;overflow-wrap:anywhere}
#paper .dtbl th{background:#f2f2f2;color:#222;white-space:normal;font-weight:600;letter-spacing:0}
#paper .dtbl.grid thead th,#paper .dtbl.appr thead th{background:#f2f2f2;color:#222;border:1px solid #777;font-weight:600;letter-spacing:0}
#paper .dtbl tr.sum td,#paper .dtbl tr.sum th{background:#f5f5f5;color:#111}
#paper .dtxt.box{border:1px solid #888;border-radius:0;background:#fff;padding:10px 12px}
#paper .dsign{background:none;border:0;border-radius:0;padding:8px 0 0;margin-top:26px;break-inside:avoid}
#paper .ddate{font-weight:400;color:#222;letter-spacing:1px;margin-bottom:22px}
#paper .dsg{gap:4px;flex-wrap:wrap;margin-bottom:14px}
#paper .sgl{color:#222;font-weight:400}
#paper .sgv{border-bottom:1px solid #888;min-width:110px}
#paper .sgs{padding-left:0;color:#333;white-space:nowrap}
#paper .dto{font-family:var(--doc-serif);color:#111}
#paper .dnote{background:none;color:#444;border:0;border-top:1px solid #bbb;border-radius:0;padding:10px 0 0;font-size:9pt}
#paper .wline{border-bottom:1px solid #bbb}
#paper .dsec h3,#paper .dh,#paper .dh2{break-after:avoid}
#paper tr{break-inside:avoid}
#paper.export-paper{width:794px!important;max-width:none!important;padding:15mm 14mm!important;overflow:visible!important}
#paper.export-paper .dtbl{display:table!important;overflow:visible!important}
@media screen and (max-width:600px){#paper{padding:20px 14px}#paper .dt{font-size:19pt;letter-spacing:1px;margin-bottom:24px}}
@media print{
 .cf-next-step{display:none!important}
 .wrap{max-width:none!important;margin:0!important;padding:0!important}
 #paperwrap{overflow:visible!important}
 #paper{padding:0!important;max-width:none!important;overflow:visible!important}
 #paper .dtbl{display:table!important;overflow:visible!important}
 #paper .wline{display:block!important;border-bottom:1px solid #bbb!important}
 #paper .dt{font-size:21pt;letter-spacing:2px}
 #paper .two{grid-template-columns:1fr 1fr}
 @page{size:A4;margin:15mm}
}

/* Document tables must not inherit the catalogue .grid display. */
#paper table.dtbl.grid{display:table;table-layout:fixed;width:100%}
#paper .two{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
#paper .two>table{min-width:0}
@media(max-width:620px){#paper:not(.export-paper) .two{grid-template-columns:1fr}}
@media print{#paper .two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

@media(max-width:620px){.top .in{flex-wrap:wrap;gap:8px}.top .logo{font-size:17px}.top .mode{max-width:100%}}

.top .logo{display:flex;align-items:center;gap:9px}.top .logo99{flex-shrink:0;display:block}.top .logo99-name{font-size:20px;font-weight:850;color:#173b79;line-height:1.2}.top .logo99-name small{display:block;font-size:10px;font-weight:500;color:#64748b;margin-top:4px}

.trust-links{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;margin-top:12px}.directory-list{columns:2;column-gap:28px;padding-left:20px}.directory-list li{break-inside:avoid;margin-bottom:9px}.directory-list small{color:#64748b}.home-guide{margin:24px;padding:24px;background:white;border:1px solid #dce3ed;border-radius:12px}.home-guide h2{font-size:22px;margin-bottom:12px}.home-guide p{line-height:1.8}.home-guide>div{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px}@media(max-width:760px){.directory-list{columns:1}.home-guide{margin:12px;padding:18px}}

/* Shared A4 preview for document editing, independent of the available column width. */
#paper .dtbl{table-layout:auto}
#paper .dtbl th{min-width:70px;word-break:keep-all}
#paper .bl,#paper .bl-empty{min-width:0!important;max-width:100%}
@media screen{
 #paperwrap #paper{width:794px;max-width:none;box-sizing:border-box;padding:15mm 14mm;zoom:var(--preview-scale,1);overflow:visible}
 #paperwrap #paper .dtbl{display:table;overflow:visible;width:100%}
 #paperwrap #paper .dt{font-size:21pt;letter-spacing:2px;margin:3mm 0 10mm}
 #paperwrap #paper .two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 #paperwrap #paper.export-paper{zoom:1!important}
}
@media print{#paper{zoom:1!important}}

/* Match the A4 preview content box to the printer page area. */
#paper .dtbl td{word-break:normal}
#paper .dtbl th{word-break:keep-all}
@media print{
 @page{size:A4;margin:15mm 14mm}
 html,body{margin:0!important;padding:0!important}
 #paper{width:182mm!important;box-sizing:border-box!important;padding:0!important;font-size:10.5pt!important;line-height:1.65!important;zoom:1!important}
 #paper .dt{font-size:21pt!important;letter-spacing:2px!important;margin:3mm 0 10mm!important}
 #paper .dtbl td{word-break:normal}
 #paper .dtbl th{word-break:keep-all}
 #paper .two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
 #paper,#paper *{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* A4 sheet boundaries are identical in preview and printed output. */
#paperwrap #paper.paged-document{width:210mm!important;padding:0!important;background:#e9edf2}
#paper .document-page{box-sizing:border-box;width:210mm;height:297mm;padding:15mm 14mm;background:white;margin:0 0 16px;display:flow-root}
#paper .document-page-content{height:267mm;display:flow-root}
#paper .document-page[data-overflow]{height:auto;min-height:297mm}
#paper .document-page[data-overflow] .document-page-content{height:auto;min-height:267mm}
@media print{
 @page{size:A4;margin:0}
 #paperwrap #paper.paged-document{width:210mm!important;background:white}
 #paper .document-page{margin:0!important;break-after:page;break-inside:avoid}
 #paper .document-page:last-child{break-after:auto}
 #paperwrap,.cols,.cols>div{margin:0!important;padding:0!important;border:0!important}
}

.field-plain{font-size:14px;color:#475569;line-height:1.65;margin:6px 0}.field-help{margin:8px 0 12px;font-size:14px}.field-help summary{cursor:pointer;color:#234ac8;padding:8px 0;min-height:36px}.field-help>div{padding:12px;background:#f1f5fb;border-radius:8px;line-height:1.7}.field-help p+p{margin-top:8px}@media print{.field-help,.field-plain{display:none!important}}

/* One physical A4 sheet: scale the complete document, never crop its text. */
#paper .document-page-content{position:relative;height:267mm}
#paper .document-sheet-body{position:absolute;top:0;left:0;display:flow-root;width:100%;transform-origin:top left}
@media print{
 #paper .document-sheet-body{break-inside:avoid}
}

#analytics-consent{position:fixed;z-index:9999;bottom:16px;left:16px;right:16px;max-width:650px;margin:auto;padding:16px;background:#fff;color:#172033;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 4px 20px #0002;font-size:14px;line-height:1.6}#analytics-consent div{display:flex;justify-content:flex-end;gap:12px;margin-top:12px}#analytics-consent button,.analytics-settings{padding:8px 16px;border:1px solid #64748b;border-radius:6px;background:#fff;color:#173b79;cursor:pointer;font-size:14px}#analytics-consent [data-yes]{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.analytics-settings{margin:12px}@media print{#analytics-consent,.analytics-settings{display:none!important}}
