/* 문서 페이지 공통 — 계산기(index.html)와 같은 토큰을 쓴다 */
:root{
  --primary:#6d43d9; --primary-hover:#5c35c4;
  --canvas:#ffffff; --fg:#1d1a26; --body:#575266; --muted:#8e89a0;
  --surface:#f5f3f9; --border:#e7e3ef;
  --weak-bg:#f1ecfe; --weak-fg:#5227b0;
  --sp-xs:4px; --sp-sm:6px; --sp-md:8px; --sp-lg:16px; --sp-xl:24px; --sp-xxl:32px;
  --r-btn-s:8px; --r-btn-m:10px; --r-btn-l:14px; --r-btn-xl:16px;
  --font:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,system-ui,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --canvas:#16141c; --fg:#eceaf2; --body:#b3aec4; --muted:#757089;
    --surface:#221f2c; --border:#363146;
    --primary:#9d7bf5; --primary-hover:#ae91f7;
    --weak-bg:#2a2140; --weak-fg:#c9b4fd;
  }
}
*{box-sizing:border-box}
html,body{overflow-x:clip}
body{
  margin:0;background:var(--canvas);color:var(--fg);
  font-family:var(--font);font-size:16px;line-height:1.5;
  padding:0 20px;padding-block:var(--sp-xl) 64px;
  -webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;
}
.doc{max-width:680px;margin:0 auto}

.crumb{
  display:flex;align-items:center;gap:var(--sp-md);
  font-size:14px;margin-bottom:var(--sp-xl);
}
.crumb a{color:var(--primary);text-decoration:none;font-weight:600}
.crumb a:hover{text-decoration:underline}
.crumb span{color:var(--muted)}

h1{font-size:clamp(26px,5vw,34px);font-weight:700;letter-spacing:-.025em;line-height:1.3;margin:0;text-wrap:balance}
.lede{font-size:17px;line-height:1.7;color:var(--body);margin:var(--sp-lg) 0 0}
.meta{font-size:13px;color:var(--muted);margin-top:var(--sp-md)}

h2{
  font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.4;
  margin:var(--sp-xxl) 0 var(--sp-md);text-wrap:balance;
}
h3{font-size:17px;font-weight:700;margin:var(--sp-xl) 0 var(--sp-md)}
p{margin:0 0 var(--sp-lg);line-height:1.8;color:var(--body)}
strong{color:var(--fg);font-weight:700}
a{color:var(--primary)}
ul,ol{margin:0 0 var(--sp-lg);padding-left:1.3em;line-height:1.8;color:var(--body)}
li{margin-bottom:var(--sp-sm)}
li::marker{color:var(--muted)}

.callout{
  background:var(--weak-bg);border-radius:var(--r-btn-l);
  padding:var(--sp-lg) 18px;margin:0 0 var(--sp-lg);
}
.callout p{margin:0;color:var(--fg)}
.callout p + p{margin-top:var(--sp-md)}

.formula{
  background:var(--surface);border-radius:var(--r-btn-m);
  padding:var(--sp-lg) 18px;margin:0 0 var(--sp-lg);
  font-size:15px;line-height:1.7;color:var(--fg);text-align:center;font-weight:600;
}

.table-scroll{overflow-x:auto;margin:0 0 var(--sp-lg)}
table{border-collapse:collapse;width:100%;min-width:420px;font-size:14px}
th,td{padding:9px 10px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
th{font-size:12px;font-weight:600;color:var(--muted);background:var(--surface)}
th:first-child,td:first-child{text-align:left}
td{color:var(--body);border-top:1px solid var(--border)}
td.em{color:var(--fg);font-weight:600}
td.fee{color:var(--weak-fg)}
tr.hi td{background:var(--weak-bg)}
caption{caption-side:bottom;font-size:12.5px;color:var(--muted);padding-top:var(--sp-md);text-align:left;line-height:1.6}

.cta{
  display:block;background:var(--primary);color:#fff;text-decoration:none;
  border-radius:var(--r-btn-xl);padding:18px 20px;margin:var(--sp-xxl) 0 0;
  font-size:17px;font-weight:700;text-align:center;
}
.cta:hover{background:var(--primary-hover)}
.cta small{display:block;font-size:13.5px;font-weight:500;opacity:.85;margin-top:var(--sp-xs)}

.more{margin-top:var(--sp-xxl);border-top:1px solid var(--border);padding-top:var(--sp-lg)}
.more h2{font-size:16px;margin:0 0 var(--sp-md)}
.more ul{list-style:none;padding:0;margin:0}
.more li{margin-bottom:var(--sp-md)}
.more a{font-weight:600;text-decoration:none;font-size:15px}
.more a:hover{text-decoration:underline}
.more .desc{display:block;font-size:13.5px;color:var(--muted);font-weight:400;margin-top:2px;line-height:1.6}

footer{
  margin-top:var(--sp-xxl);border-top:1px solid var(--border);padding-top:var(--sp-lg);
  font-size:12.5px;line-height:1.8;color:var(--muted);
}
footer a{color:var(--muted)}
footer b{color:var(--body);font-weight:600}
