:root{color-scheme:light;--ink:#193452;--teal:#007e8e;--line:#cddfe6;--pale:#eaf3f6}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#edf2f4;color:var(--ink);font:17px/1.65 Georgia,'Noto Serif KR',serif;overflow-wrap:break-word}
a{color:inherit;text-underline-offset:3px}
a:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.site-bar{background:#193452;color:white;font:500 14px/1.5 system-ui,'Noto Sans KR',sans-serif}
.site-bar-inner{max-width:1100px;margin:auto;padding:14px 24px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.site-bar strong{font-size:18px;letter-spacing:.02em;margin-right:auto}
.site-bar a{display:inline-flex;align-items:center;min-height:38px;padding:5px 8px;border-radius:4px;text-decoration:none}
.site-bar a:hover,.site-bar a:focus-visible{background:#ffffff21}
.site-bar .active{font-weight:800;text-decoration:underline;text-decoration-color:#83d6dc;text-decoration-thickness:2px}
.site-bar .pdf-link{background:#d7edf0;color:#153951;padding:6px 14px;font-weight:700}
.site-bar .pdf-link:hover{background:white;color:#153951}
.language-links{display:flex;align-items:center;gap:3px;white-space:nowrap}
.document-stack{padding:32px 16px 80px}
.document-page{width:min(100%,900px);margin:0 auto 28px;background:#fff;padding:48px clamp(24px,6vw,76px) 34px;box-shadow:0 12px 45px #19345213}
.page-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:2px solid var(--teal);padding-bottom:8px;margin-bottom:38px}
.page-head .brand{font:800 23px/1.2 system-ui,sans-serif;letter-spacing:.025em}
.page-head .profile{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:#5a7285}
.section-tag{color:var(--teal);font-weight:700;font-size:.83rem;text-transform:uppercase;letter-spacing:.025em;margin:0 0 12px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2.1rem,4vw,2.8rem);line-height:1.18;letter-spacing:-.02em;margin-bottom:18px}
h2{font-size:1.15rem;line-height:1.35;margin:24px 0 12px}
h3{font-size:1rem;line-height:1.4;margin:0 0 3px}
p{margin-bottom:14px}
.callout{background:#d9edf1;color:#13354c;text-align:center;padding:9px 16px;font-weight:700;margin:18px 0 12px}
.facts{width:100%;border-collapse:collapse;font-size:.91rem}
.facts th,.facts td{border-bottom:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top}
.facts th{color:#60788a;font-weight:400;width:110px}
.number-list{list-style:none;padding:0;margin:14px 0}
.number-list li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;border-bottom:1px solid var(--line);padding:10px 6px}
.number-list li:last-child{border-bottom:0}
.number{color:var(--teal);font-size:1.1rem;font-weight:700;line-height:1.4}
.number-list p{margin:0}
.number-list .detail{font-size:.81rem;color:var(--teal);margin-top:6px}
.workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--pale)}
.workflow div{padding:11px;border-right:1px solid white;font-size:.84rem;min-width:0}
.workflow div:last-child{border-right:0}
.workflow strong{display:block;color:var(--teal)}
.workflow b{display:block;margin:6px 0 4px}
.workflow p{margin:0}
.allocation{width:100%;border-collapse:collapse;font-size:.91rem;line-height:1.5}
.allocation th,.allocation td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle;text-align:left}
.allocation th{width:22%;min-width:130px;background:var(--pale);text-align:center}
.allocation td{background:#f9fcfd}
.note{color:#516879;font-size:.86rem;margin:12px 0}
.page-foot{display:flex;justify-content:space-between;color:#60788a;font-size:.75rem;margin-top:48px}
@media(max-width:760px){
  .site-bar-inner{gap:5px 10px;padding:10px 16px}
  .site-bar strong{width:100%}
  .document-stack{padding:16px 10px 40px}
  .document-page{padding:26px 20px;margin-bottom:16px}
  .page-head{margin-bottom:28px}
  .workflow{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  body{font-size:16px}
  .site-bar-inner{justify-content:space-between}
  .site-bar strong{width:100%}
  .site-bar .pdf-link{width:100%;justify-content:center}
  .page-head .brand{font-size:20px}
  .page-head .profile{font-size:.62rem}
  .number-list li{grid-template-columns:34px minmax(0,1fr);gap:6px}
  .workflow{grid-template-columns:1fr}
  .workflow div{border-right:0;border-bottom:1px solid white}
  .allocation,.allocation tbody,.allocation tr,.allocation th,.allocation td{display:block;width:100%;min-width:0}
  .allocation th{text-align:left;padding:8px 12px}
  .allocation td{padding:10px 12px}
}
