:root{--bg:#fff;--paper:#fff;--ink:#212121;--muted:#6c7074;--line:#dddddd;--navy:#303db1;--on-navy:#212121;--accent:#303db1;--soft:#f2f2f6;
--serif:"Pretendard Variable",Pretendard,"Apple SD Gothic Neo","Malgun Gothic","Nanum Gothic","Noto Sans KR","Noto Sans",sans-serif;--sans:"Pretendard Variable",Pretendard,"Apple SD Gothic Neo","Malgun Gothic","Nanum Gothic","Noto Sans KR","Noto Sans",sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 var(--sans);word-break:keep-all;overflow-wrap:anywhere}
a{color:var(--accent);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:#fff;padding:8px 14px;z-index:9}
.skip:focus{left:8px;top:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.muted{color:var(--muted)}
.print-only{display:none}
.site-head{background:var(--navy);color:var(--on-navy)}
.site-head .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 24px;padding-top:14px;padding-bottom:14px}
.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:700;font-size:1.15rem;color:var(--on-navy);text-decoration:none}
.brand .logo{width:26px;height:26px}
.site-head ul{display:flex;flex-wrap:wrap;gap:2px 18px;list-style:none;margin:0;padding:0}
.site-head nav a{display:block;padding:4px 0;color:var(--on-navy);text-decoration:none;font-size:.95rem;border-bottom:2px solid transparent;opacity:.85}
.site-head nav a:hover,.site-head nav a[aria-current]{opacity:1;border-bottom-color:var(--on-navy)}
.crumb{font-size:.9rem;color:var(--muted);margin:20px 0 0}
.hero{padding:40px 0 24px;max-width:760px}
.eyebrow{font-size:.82rem;letter-spacing:.14em;color:var(--accent);font-weight:700;margin:0 0 6px}
h1,h2,h3,legend{font-family:var(--serif)}
h1{font-size:clamp(1.9rem,5vw,2.7rem);line-height:1.3;margin:0 0 14px}
h2{font-size:1.4rem;margin:44px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--line)}
h3{font-size:1.1rem;margin:26px 0 8px}
.lead{font-size:1.08rem;margin:0 0 10px}
.privacy{font-size:.92rem;color:var(--muted);margin:0}
.layout{display:grid;grid-template-columns:380px minmax(0,1fr);gap:28px;align-items:start}
.panel{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--navy);padding:20px}
fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}
legend{font-weight:700;font-size:1.05rem;padding:0;margin-bottom:10px}
.field{display:block;font-size:.9rem;font-weight:600;margin-bottom:12px}
.field input{display:block;width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:3px;padding:8px 10px;margin-top:4px}
.hint{font-size:.86rem;color:var(--muted);margin:8px 0}
.hidden-src{display:none}
.clauses{list-style:none;margin:0;padding:0}
.clause{border-top:1px solid var(--line);padding:10px 0}
.pick{display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.pick input{width:20px;height:20px;margin:4px 0 0;accent-color:var(--accent);flex:none}
.pick strong{display:block}
.pick em{display:block;font-style:normal;font-size:.87rem;color:var(--muted)}
details{margin:6px 0 0 32px;font-size:.88rem}
summary{cursor:pointer;color:var(--accent)}
.ctext{margin-top:6px;padding:8px 12px;background:var(--soft);font-family:var(--serif)}
.ctext p{margin:0 0 4px}
.means{margin:6px 0 0 32px;font-size:.84rem;color:var(--muted)}
.doc{position:sticky;top:12px;min-width:0}
.doc-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.doc-bar h2{margin:0;border:0;padding:0}
.actions{display:flex;flex-wrap:wrap;gap:6px}
button,.btn{font:inherit;font-weight:700;font-size:.93rem;padding:8px 14px;border-radius:3px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block}
button.primary,.btn{background:var(--accent);border-color:var(--accent);color:#fff}
textarea{display:block;width:100%;height:min(70vh,760px);min-height:420px;resize:vertical;font:15.5px/1.85 var(--serif);color:var(--ink);background:var(--paper);border:1px solid var(--line);padding:32px clamp(18px,4vw,44px);box-shadow:0 2px 0 var(--line),0 12px 28px -18px rgba(0,0,0,.35)}
.more{max-width:760px}
.more li{margin-bottom:6px}
.related{max-width:760px;margin:44px 0}
.related h2{margin-top:0}
.related ul{padding-left:20px}
.related li{margin-bottom:6px}
.prose{max-width:760px;padding-top:20px}
.table-wrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:460px;background:var(--paper)}
th,td{border:1px solid var(--line);padding:8px 12px;text-align:left;vertical-align:top}
thead th{background:var(--soft);font-family:var(--serif)}
.site-foot{margin-top:56px;background:var(--navy);color:var(--on-navy);padding:22px 0;font-size:.92rem}
.site-foot a{color:var(--on-navy)}
.site-foot .muted{color:var(--on-navy);opacity:.8}
.site-foot p{margin:0 0 6px}
.disclosure{font-weight:700}
/* PSL-TONE-START: www.bobapsl.com 의 계산된 스타일 값을 따른 공통 톤. 세 도구 사이트가 같은 블록을 쓴다. */
body{background:#fff;color:#212121;font:400 16px/1.75 "Pretendard Variable",Pretendard,"Apple SD Gothic Neo","Malgun Gothic","Nanum Gothic","Noto Sans KR","Noto Sans",sans-serif}
h1,h2,h3,legend,button,input,textarea,.brand,.ctext,thead th{font-family:inherit}
a{color:#303db1}
.wrap{max-width:1120px}
.site-head{background:#fff;color:#212121;border:0}
.site-head .wrap{max-width:1120px;min-height:80px;padding-top:12px;padding-bottom:12px}
.brand{font-size:20px;font-weight:700;color:#212121;letter-spacing:0}
.brand .logo{width:28px;height:28px;padding:0;border-radius:0;background:none;color:#303db1}
.site-head ul{gap:4px 28px}
.site-head nav a{padding:4px 0;border:0;border-radius:0;background:none;color:#212121;font-size:17px;font-weight:700;opacity:1}
.site-head nav a:hover{background:none;color:#303db1;text-decoration:none}
.site-head nav a[aria-current]{background:none;color:#303db1;font-weight:700;border:0}
h1,.prose h1,.intro h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.3;letter-spacing:0;color:#212121;margin:0 0 16px}
h2{font-size:22px;font-weight:700;line-height:1.4;margin:40px 0 12px;padding:0;border:0;letter-spacing:0}
h3{font-size:17px;font-weight:700;line-height:1.5}
.lead{font-size:17px;color:#525252}
.eyebrow{color:#2d86f7;font-size:15px;font-weight:700;letter-spacing:0}
.muted,.hint,.privacy,.crumb{color:#6c7074}
button,.btn{font:inherit;font-size:15px;font-weight:500;line-height:1.4;display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:9999px;border:1px solid #dcdfe6;background:#fff;color:#212121}
button.primary,.btn{background:#2d86f7;border-color:#2d86f7;color:#fff}
.field input,.note,textarea{background:#fff;border:1px solid #dcdfe6;border-radius:8px}
textarea{border-radius:16px;box-shadow:none}
.panel{background:#f2f2f6;border:0;border-radius:16px;padding:20px}
.picks .pick{background:#fff;border-color:#dcdfe6}
.picks .pick:has(input:checked){background:#fff;border-color:#303db1}
.sizes span{background:#fff;border-color:#dcdfe6;border-radius:9999px}
.area,.progress{border:1px solid #e5e7eb;border-radius:16px}
.ctext{background:#fff;border-radius:8px}
.cards{gap:16px;background:none;border:0}
.cards li{background:#f2f2f6;border-radius:16px}
.mode{border:1px solid #dcdfe6;border-radius:9999px;overflow:hidden}
.mode span{padding:8px 22px;font-weight:500}
.mode input:checked+span{background:#303db1;color:#fff}
.step:first-child{border-radius:16px 16px 0 0}
.step:last-child{border-radius:0 0 16px 16px}
.notice{border-left:0;border-radius:12px;background:#f2f2f6}
.psl-note{background:#f2f2f6;border:0;border-radius:12px;padding:16px 20px}
.psl-note h2{margin-top:0}
.related{border-top:0;padding-top:0}
.table-wrap{margin:0 0 16px}
table{background:#fff}
th,td{border:1px solid #dddddd;padding:8px 12px;font-size:15px;line-height:1.6}
thead th{background:#ececec;font-weight:700}
.site-foot{margin-top:64px;background:#f8f8f8;color:#6c7074;border:0;padding:32px 0;font-size:13px;text-align:center}
.site-foot .wrap{max-width:1120px}
.site-foot a{color:#525252}
.site-foot .muted{color:#6c7074;opacity:1}
.disclosure{font-weight:700;color:#525252}
/* PSL-TONE-END */
@media (max-width:600px){.site-head .wrap{min-height:0}.site-head ul{gap:2px 18px}.site-head nav a{font-size:15px}}
@media (max-width:900px){.layout{grid-template-columns:1fr}.doc{position:static}textarea{height:60vh}}
@media print{
@page{margin:20mm}
body{background:#fff;color:#000;font-size:11pt}
.no-print,.site-head,.site-foot,.hero,.more,.related,.skip,.crumb,.panel{display:none!important}
.wrap{max-width:none;padding:0}
.layout{display:block}
.doc{position:static}
.print-only{display:block;white-space:pre-wrap;font:11pt/1.9 var(--serif)}
.print-only::first-line{font-size:16pt;font-weight:700}
}
