/* Automatic, language-specific headings navigation for Jintae Choi posts. */
.reading-layout{width:100%;min-width:0}
.reading-layout.has-toc{
  display:grid;
  grid-template-columns:minmax(0,1fr) 244px;
  gap:clamp(20px,2.8vw,36px);
  align-items:start;
}
.reading-layout>.article{
  width:100%;min-width:0;max-width:none;
}
.reading-layout .article-body{min-width:0}
.article-body :is(h1,h2,h3,h4,h5,h6)[id]{
  scroll-margin-top:27px;
}
.article-body h1{font-size:clamp(22px,2.7vw,30px);color:#c7e8c0;line-height:1.4}
.article-body h5,.article-body h6{font-size:14px;color:#c0e3bd;line-height:1.6}
.article-toc-desktop{
  position:sticky;
  top:18px;
  min-width:0;
  align-self:start;
  max-height:calc(100vh - 36px);
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-color:#517c57 #13251b;
}
.article-toc-frame{
  min-width:0;
  padding:0 0 10px;
  border:1px solid #3b5f44;
  border-top:3px solid #8cc394;
  background:#12251a;
  box-shadow:0 12px 24px #00000021;
}
.toc-frame-title{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  padding:13px 15px;
  border-bottom:1px solid #42674b;
  color:#c1e9bc;
  font:750 11px/1.5 var(--term-mono);
  letter-spacing:.12em;
}
.toc-frame-title::before{content:"::";color:#8fb890;margin-right:7px}
.toc-frame-title>span:first-child{margin-right:auto}
.toc-section-count{
  font:550 10px/1.5 var(--term-mono);
  letter-spacing:.02em;
  color:#8faf91;
  white-space:nowrap;
}
.article-toc-desktop nav{
  padding:12px 7px 12px 9px;
}
.toc-list{
  display:block;
  list-style:none;
  padding:0!important;
  margin:0!important;
}
.toc-list>.toc-item{list-style:none;margin:0!important;padding:0!important}
.toc-item a{
  display:block;
  padding:6px 9px;
  color:#a6c5a7;
  font:500 11px/1.65 var(--term-mono);
  text-decoration:none;
  overflow-wrap:anywhere;
  border-left:2px solid transparent;
  border-radius:1px;
  transition:background-color .15s ease,color .15s ease;
}
.toc-item a:hover,
.toc-item a:focus-visible{
  color:#d2f2cd;
  border-left-color:#82c68d;
  background:#1e3a29;
}
.toc-item a[aria-current="location"]{
  color:#d5f5ce;
  border-left-color:#93d79b;
  background:#22422c;
  font-weight:700;
}
.toc-root a{
  color:#abd9ac;
  font-size:11px;
  font-weight:680;
}
.toc-root a::before{content:"C:\\> ";color:#8abb90}
.toc-level-1 a{padding-left:9px;font-weight:710;color:#b8deba}
.toc-level-2 a{padding-left:13px}
.toc-level-3 a{padding-left:27px;font-size:10.5px}
.toc-level-4 a{padding-left:39px;font-size:10px}
.toc-level-5 a{padding-left:49px;font-size:10px}
.toc-level-6 a{padding-left:58px;font-size:10px}
.article-toc-mobile{display:none}
@media(max-width:980px){
  .reading-layout.has-toc{display:block}
  .article-toc-desktop{display:none}
  .article-toc-mobile{
    display:block;
    margin:25px 0 34px;
    border:1px solid #436d4a;
    border-top:3px solid #8ec997;
    background:#142b1d;
    color:#c8e3c5;
    border-radius:2px;
  }
  .article-toc-mobile summary{
    display:list-item;
    padding:12px 15px;
    cursor:pointer;
    color:#c5e9bd;
    font:700 13px/1.5 var(--term-mono);
  }
  .article-toc-mobile summary::marker{color:#a2d8a4}
  .article-toc-mobile .toc-section-count{
    display:inline-block;
    margin-left:9px;
  }
  .article-toc-mobile[open] summary{
    border-bottom:1px solid #385b42;
  }
  .article-toc-mobile nav{
    max-height:400px;
    overflow:auto;
    padding:10px 12px 14px;
    scrollbar-color:#517d5b #102017;
  }
  .article-toc-mobile .toc-item a{
    padding-top:7px;
    padding-bottom:7px;
    font-size:12px;
  }
  .article-toc-mobile .toc-level-3 a{
    padding-left:27px;
    font-size:11px;
  }
}
@media(max-width:560px){
  .article-toc-mobile{margin:19px 0 26px}
  .article-toc-mobile summary{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .toc-item a{transition:none}
}
@media print{
  .article-toc-desktop,.article-toc-mobile{display:none!important}
  .reading-layout.has-toc{display:block}
}
