:root{--blue:#225f96;--blue2:#43a6cf;--line:#cfd4dc;--soft:#eef4f8;--text:#111111;--max:900px;--body-size:17px;--article-size:17px;--meta-size:13px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--text);font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",system-ui,-apple-system,sans-serif;font-size:var(--body-size);line-height:1.85;letter-spacing:-.015em;word-break:keep-all}
a{color:inherit}
.wrap{width:min(var(--max),calc(100% - 34px));margin:0 auto}
.site-head{border-bottom:1px solid var(--line);background:#fff}
.head-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0}
.back-link{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:10px;text-decoration:none;font-size:14px;font-weight:800}
.back-link:hover,.back-link:focus-visible{background:#f7f9fc}
.brand-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #1d5a8c;border-radius:14px;background:linear-gradient(145deg,var(--blue),var(--blue2));box-shadow:0 7px 18px rgba(34,95,150,.18)}
.brand-icon svg{width:27px;height:27px;fill:none;stroke:#fff;stroke-width:1.95;stroke-linecap:round;stroke-linejoin:round}
.main{padding:46px 0 54px}
.commentary{max-width:820px;margin:0 auto}
.section-name{margin:0 0 12px;color:var(--blue);font-size:13px;font-weight:850;letter-spacing:.14em}
h1{margin:0 0 28px;font-size:clamp(2.15rem,5vw,3.45rem);line-height:1.22;letter-spacing:-.045em;font-weight:900}
.article-body{font-size:18px;line-height:1.9}
.article-body p{margin:0 0 20px;color:#111}
.latest-commentary{margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}
.latest-commentary h2{margin:0 0 12px;font-size:20px;line-height:1.4;letter-spacing:-.025em}
.commentary-card{display:block;padding:17px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#111;text-decoration:none}
.commentary-card:hover,.commentary-card:focus-visible{background:#f7f9fc;border-color:#aeb8c5}
.commentary-card .card-meta{display:block;margin-bottom:5px;color:#111;font-size:12.5px;font-weight:800}
.commentary-card strong{display:block;font-size:20px;line-height:1.42;letter-spacing:-.025em}
.commentary-card p{margin:6px 0 0;color:#111;font-size:15.5px;line-height:1.7}

/* Commentary article: this file owns commentary content only. Shared Nexus shell and Footer are owned by portal-v2.css. */
.commentary-page{padding-top:34px}
.commentary-article{max-width:900px;margin:0 auto}
.article-head{padding-bottom:18px;border-bottom:1px solid var(--line)}
.article-head h1{margin:0;font-size:clamp(2.2rem,5vw,3.65rem);line-height:1.16}
.article-subtitle{margin:9px 0 0;color:#111;font-size:19px;font-weight:750;line-height:1.55;letter-spacing:-.025em}
.article-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
.article-meta span{display:inline-flex;align-items:center;min-height:27px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:#f7f9fc;color:#111;font-size:var(--meta-size);font-weight:760}
.commentary-toc{margin:18px 0 8px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.commentary-toc>strong{display:block;margin:0 0 8px;padding:0 0 8px;border-bottom:1px solid var(--line);font-size:14px;font-weight:850;text-align:center}
.commentary-toc ol{display:block;margin:0;padding:0;list-style:none;column-count:2;column-gap:0;column-rule:1px solid var(--line)}
.commentary-toc li{break-inside:avoid;-webkit-column-break-inside:avoid;margin:0;padding:6px 10px}
.commentary-toc a{display:block;color:#111;font-size:13.5px;font-weight:700;line-height:1.48;text-decoration:none;overflow-wrap:anywhere}
.commentary-toc a:hover,.commentary-toc a:focus-visible{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.commentary-body{padding-top:6px;font-size:var(--article-size);line-height:1.86;letter-spacing:-.01em}
.commentary-body h2,.commentary-body h3{color:#111;letter-spacing:-.03em;scroll-margin-top:18px}
.commentary-body h2{margin:30px 0 10px;font-size:1.48rem;line-height:1.42}
.commentary-body h2:first-child{margin-top:18px}
.commentary-body h3{margin:20px 0 8px;font-size:1.14rem;line-height:1.5}
.commentary-body p{margin:0 0 13px;color:#111}
.commentary-body .article-conclusion{margin-top:18px;padding:15px 17px;border:1px solid var(--line);border-radius:10px;background:#f7f9fc;font-weight:780;line-height:1.82}
.sources{margin-top:32px;padding-top:4px;border-top:1px solid var(--line)}
.sources h2{margin-top:22px}
.sources h3{margin:18px 0 7px;font-size:16px}
.sources-note{font-size:14px!important;line-height:1.7!important}
.sources ul{margin:0;padding-left:20px}
.sources li{margin:5px 0;color:#111;font-size:14px;line-height:1.68}
.sources a{color:#111;font-weight:700;text-underline-offset:2px}
.sources a:hover,.sources a:focus-visible{color:var(--blue)}
@media(max-width:640px){
  :root{--body-size:16px;--article-size:16.5px}
  body{line-height:1.82}
  .wrap{width:calc(100% - 28px)}
  .head-inner{padding:14px 0}
  .brand-icon{width:44px;height:44px;border-radius:12px}.brand-icon svg{width:25px;height:25px}
  .main{padding:34px 0 42px}
  .section-name{margin-bottom:10px;font-size:12.5px}
  h1{margin-bottom:24px;font-size:2.05rem;line-height:1.28}
  .article-body{font-size:17px;line-height:1.88}
  .article-body p{margin-bottom:18px}
  .latest-commentary{margin-top:28px;padding-top:20px}
  .commentary-page{padding-top:28px}
  .article-head{padding-bottom:15px}
  .article-head h1{font-size:2.15rem;line-height:1.22}
  .article-subtitle{font-size:17px}
  .commentary-toc{margin-top:15px;padding:11px 12px}
  .commentary-toc li{padding:6px 7px}
  .commentary-toc a{font-size:13px}
  .commentary-body h2{margin-top:25px;font-size:1.34rem}
  .commentary-body p{margin-bottom:12px}
  .sources li{font-size:13.5px}
}
