/* 글 페이지(About, Privacy Policy, Disclaimer) 전용 스타일 */
.doc{max-width:760px;margin:0 auto;padding:28px 18px 36px;line-height:1.75;font-size:15px}
.doc h1{font-size:28px;font-weight:600;line-height:1.3;margin:0 0 6px;letter-spacing:-.01em}
.doc .updated{color:var(--muted);font-size:13px;margin:0 0 28px}
.doc h2{font-size:18px;font-weight:600;margin:34px 0 8px;padding-top:4px}
.doc p,.doc ul{margin:0 0 14px}
.doc ul{padding-left:22px}
.doc li{margin:4px 0}
.doc a{color:var(--spot)}
.doc strong{font-weight:600}
.doc .lead{font-size:17px;color:var(--text)}
.doc .card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin:18px 0}
.doc .card p:last-child{margin-bottom:0}
@media (max-width:760px){.doc{padding:20px 14px 28px;font-size:14.5px}.doc h1{font-size:24px}}

/* 가이드 글 */
.doc .crumb{font-size:13px;color:var(--muted);margin:0 0 10px}
.doc .crumb a{color:var(--muted);text-decoration:none}
.doc .crumb a:hover{color:var(--text);text-decoration:underline}
.doc .meta{color:var(--muted);font-size:13px;margin:0 0 24px}
.doc .toc{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 18px;margin:0 0 26px;font-size:14px}
.doc .toc b{display:block;font-weight:600;margin-bottom:4px}
.doc .toc ol{margin:0;padding-left:20px}
.doc .toc a{color:var(--text);text-decoration:none}
.doc .toc a:hover{color:var(--spot);text-decoration:underline}
.doc h3{font-size:15.5px;font-weight:600;margin:22px 0 6px}
.doc figure{margin:20px 0 22px}
.doc figure svg{display:block;width:100%;height:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px}
.doc figcaption{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.55}
.doc .note{border-left:3px solid var(--spot);background:var(--panel);padding:10px 14px;border-radius:0 8px 8px 0;margin:16px 0;font-size:14px}
.doc .note p:last-child{margin-bottom:0}
.doc code{font-size:13px;background:var(--panel2);padding:1px 5px;border-radius:4px}
.doc .formula{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin:12px 0 16px;font-size:14px;white-space:nowrap}
.doc .tblwrap{overflow-x:auto;margin:12px 0 18px}
.doc table{border-collapse:collapse;width:100%;font-size:14px}
.doc th,.doc td{border-bottom:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top}
.doc th{color:var(--muted);font-weight:500;font-size:13px}
.doc .cta{display:inline-block;margin:6px 0 10px;padding:8px 14px;border:1px solid var(--spot);border-radius:8px;color:var(--spot);text-decoration:none;font-weight:500}
.doc .cta:hover{background:var(--panel)}
.doc .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:18px 0}
.doc .cards a{display:block;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;color:var(--text);text-decoration:none}
.doc .cards a:hover{border-color:var(--spot)}
.doc .cards b{display:block;font-size:16px;font-weight:600;margin-bottom:4px}
.doc .cards span{display:block;font-size:13.5px;color:var(--muted);line-height:1.55}
.doc .cards em{display:block;font-style:normal;font-size:12px;color:var(--spot);margin-top:10px}
/* 가이드 그림(인라인 SVG) 색: 테마 변수를 따름 */
.doc svg .ax{stroke:var(--muted);stroke-width:1;fill:none}
.doc svg .gr{stroke:var(--grid);stroke-width:1;fill:none}
.doc svg .tx{fill:var(--muted);font:12px "IBM Plex Sans",system-ui,sans-serif}
.doc svg .tb{fill:var(--text);font:600 12.5px "IBM Plex Sans",system-ui,sans-serif}
.doc svg .up{fill:var(--call)} .doc svg .dn{fill:var(--put)}
.doc svg .lup{stroke:var(--call);stroke-width:2.2;fill:none}
.doc svg .ldn{stroke:var(--put);stroke-width:2.2;fill:none}
.doc svg .lsp{stroke:var(--spot);stroke-width:2.2;fill:none}
.doc svg .lfl{stroke:var(--flip);stroke-width:2.2;fill:none}
.doc svg .dash{stroke-dasharray:5 4}
.doc svg .fsp{fill:var(--spot)} .doc svg .ffl{fill:var(--flip)}
/* 좁은 화면에서는 그림이 작게 줄어들므로 그림 속 글자와 선을 키움 */
@media (max-width:600px){
  .doc svg .tx{font-size:19px}
  .doc svg .tb{font-size:19px}
  .doc svg .lup,.doc svg .ldn,.doc svg .lsp,.doc svg .lfl{stroke-width:3.2}
  .doc figure svg{border-radius:8px}
}

/* ---------- 블로그 ---------- */
.doc.wide{max-width:900px}
.doc .chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 22px}
.doc .chips a{padding:5px 12px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--muted);text-decoration:none}
.doc .chips a:hover{color:var(--text)}
.doc .chips a.on{color:var(--text);border-color:var(--spot)}
.doc .posts{display:flex;flex-direction:column;gap:12px;margin:0 0 30px}
.doc .post{display:block;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;color:var(--text);text-decoration:none}
.doc .post:hover{border-color:var(--spot)}
.doc .post b{display:block;font-size:17px;font-weight:600;line-height:1.4;margin:4px 0 6px}
.doc .post p{margin:0;font-size:14px;color:var(--muted);line-height:1.6}
.doc .pmeta{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.doc .cat{color:var(--spot);font-weight:500}
.doc .empty{color:var(--muted);font-size:14px;padding:18px;border:1px dashed var(--line);border-radius:10px}
.doc .series{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin:0 0 24px}
.doc .series b{display:block;font-weight:600;margin-bottom:2px}
.doc .series .sdesc{font-size:13.5px;color:var(--muted);margin:0 0 8px}
.doc .series ol{margin:0;padding-left:22px;font-size:14px}
.doc .series li{margin:3px 0}
.doc .series li.now{font-weight:600}
.doc .series .soon{color:var(--muted)}
.doc .pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0 8px}
.doc .pn a,.doc .pn span{display:block;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--text);text-decoration:none;font-size:14px}
.doc .pn a:hover{border-color:var(--spot)}
.doc .pn small{display:block;color:var(--muted);font-size:12px;margin-bottom:2px}
.doc .pn .next{text-align:right}
.doc .pn span{color:var(--muted)}
@media (max-width:600px){.doc .pn{grid-template-columns:1fr}.doc .pn .next{text-align:left}}

/* ---------- 블로그 목록: 카테고리별 색과 구획 ---------- */
.doc .c-mn{--cc:var(--call)}            /* Market Notes */
.doc .c-qr{--cc:var(--flip)}            /* Quant Research */
.doc .c-se{--cc:var(--spot)}            /* Series */
.doc .cat.c-mn,.doc .cat.c-qr,.doc .cat.c-se{color:var(--cc)}
.doc .pill{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:500;color:var(--cc);background:color-mix(in srgb,var(--cc) 14%,transparent);border:1px solid color-mix(in srgb,var(--cc) 35%,transparent)}
.doc .pill::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cc)}

.doc .tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:6px 0 10px}
.doc .tile{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 16px 14px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--cc);border-radius:10px;color:var(--text);text-decoration:none;transition:border-color .15s,background .15s}
.doc .tile:hover{background:var(--panel2)}
.doc .tile.on{border-color:var(--cc);background:color-mix(in srgb,var(--cc) 8%,var(--panel))}
.doc .tile .ti{display:flex;align-items:center;justify-content:space-between}
.doc .tile svg{width:22px;height:22px;color:var(--cc)}
.doc .tile .cnt{font-size:12px;color:var(--muted)}
.doc .tile b{font-size:16px;font-weight:600}
.doc .tile span.d{font-size:13px;color:var(--muted);line-height:1.5}
.doc .allrow{display:flex;justify-content:space-between;align-items:center;margin:0 0 26px;font-size:13px;color:var(--muted)}
.doc .allrow a{color:var(--muted);text-decoration:none}
.doc .allrow a.on{color:var(--text);font-weight:500}
.doc .allrow a:hover{color:var(--text)}

.doc .bsec{margin:0 0 34px}
.doc .bsec>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:14px}
.doc .bsec>header h2{margin:0;padding:0;font-size:19px;display:flex;align-items:center;gap:9px}
.doc .bsec>header h2::before{content:"";width:4px;height:18px;border-radius:2px;background:var(--cc)}
.doc .bsec>header p{margin:0;font-size:13px;color:var(--muted)}
.doc .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.doc .bcard{display:flex;flex-direction:column;gap:8px;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--cc);border-radius:10px;color:var(--text);text-decoration:none}
.doc .bcard:hover{border-color:var(--cc)}
.doc .bcard b{font-size:16.5px;font-weight:600;line-height:1.4}
.doc .bcard p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.6}
.doc .bcard .foot2{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:12.5px;color:var(--muted);margin-top:auto}
.doc .bcard .part{color:var(--spot)}
.doc .bsec .empty{grid-column:1/-1}

.doc .sercard{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--cc);border-radius:10px;padding:18px}
.doc .sercard b.t{display:block;font-size:17px;font-weight:600;margin:6px 0 4px}
.doc .sercard p{margin:0 0 12px;font-size:13.5px;color:var(--muted)}
.doc .prog{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--muted);margin-bottom:12px}
.doc .prog i{flex:1;height:6px;border-radius:3px;background:var(--panel2);overflow:hidden;max-width:260px}
.doc .prog i::after{content:"";display:block;height:100%;width:var(--p);background:var(--cc);border-radius:3px}
.doc .parts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;font-size:14px}
.doc .parts li{display:flex;gap:8px;align-items:baseline}
.doc .parts .n{flex:none;width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;font-size:12px;font-weight:600;background:var(--panel2);color:var(--muted)}
.doc .parts .done .n{background:var(--cc);color:var(--bg)}
.doc .parts .soon{color:var(--muted)}
.doc .parts a{color:var(--text)}

@media (max-width:760px){
  .doc .tiles{grid-template-columns:1fr;gap:8px}
  .doc .tile{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:12px;padding:12px 14px}
  .doc .tile .ti{display:contents}
  .doc .tile svg{grid-column:1;grid-row:1}
  .doc .tile b{grid-column:2;grid-row:1;font-size:15px}
  .doc .tile .cnt{grid-column:3;grid-row:1}
  .doc .tile span.d{display:none}
  .doc .bsec>header p{display:none}
  .doc .grid,.doc .parts{grid-template-columns:1fr}
}
