/* V119 — compact chapter list, no underlines or row dividers. */
html body.art71-page [id],html body.art115-page [id]{scroll-margin-top:15px}
html body :is(.art71-content,.art115-content) [data-article-section][tabindex="-1"]:focus{outline:none!important}
html body :is(.art71-toc,.art115-toc){padding-right:0;scrollbar-color:#9aac9f transparent;overflow:visible}
html body :is(.art71-toc,.art115-toc) h2{font-size:16px;line-height:1.5;margin:0 0 12px;font-weight:650}
html body :is(.art71-progress,.art115-progress){font-size:13px;line-height:1.6;color:#52635b;margin-bottom:16px}
html body :is(.art71-progress-track,.art115-progress-track){height:3px;border-radius:3px;background:#dce5de;margin-top:8px;overflow:hidden}
html body :is(#art71-progress-bar,#art115-progress-bar){height:100%;background:#075b42;border-radius:3px}
html body :is(.art71-toc,.art115-toc,.art71-toc-mobile,.art115-toc-mobile) ol{list-style:none;border:0;margin:0;padding:0;display:grid;gap:3px}
html body :is(.art71-toc,.art115-toc,.art71-toc-mobile,.art115-toc-mobile) li{border:0;margin:0;padding:0}
html body :is(.art71-toc,.art115-toc,.art71-toc-mobile,.art115-toc-mobile) :is(.art71-toc-link,.art115-toc-link){
  display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:9px;
  padding:10px 12px;min-height:44px;border:0;border-radius:8px;
  color:#465b50;background:transparent;font-size:14px;font-weight:450;line-height:1.5;
  text-decoration:none;text-decoration-line:none;box-shadow:none;
  transition:none;
}
html body .art119-toc-number{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.5;color:#52635b}
html body .art119-toc-label{min-width:0}
html body :is(.art71-toc,.art115-toc,.art71-toc-mobile,.art115-toc-mobile) :is(.art71-toc-link,.art115-toc-link):hover{background:#edf2eb;color:#075b42;text-decoration:none}
html body :is(.art71-toc,.art115-toc,.art71-toc-mobile,.art115-toc-mobile) :is(.art71-toc-link,.art115-toc-link)[aria-current=location]{background:#075b42;color:#fff;font-weight:600;box-shadow:none;text-decoration:none}
html body :is(.art71-toc-link,.art115-toc-link)[aria-current=location] .art119-toc-number{color:#fff}
html body :is(.art71-toc,.art115-toc,.art71-toc-mobile,.art115-toc-mobile) :is(.art71-toc-link,.art115-toc-link):focus-visible{outline:2px solid #075b42!important;outline-offset:2px!important}
html body :is(.art71-toc-mobile,.art115-toc-mobile){background:#f7f9f4;border:1px solid #d3ddd2;border-radius:12px}
html body :is(.art71-toc-mobile,.art115-toc-mobile) summary{padding:17px 50px 17px 18px}
html body :is(.art71-toc-mobile,.art115-toc-mobile) summary::after{content:'';width:8px;height:8px;border:0;border-right:2px solid #075b42;border-bottom:2px solid #075b42;background:transparent;border-radius:0;top:23px;right:22px;transform:rotate(45deg)}
html body :is(.art71-toc-mobile,.art115-toc-mobile)[open] summary::after{content:'';transform:rotate(225deg);top:27px}
html body :is(.art71-toc-mobile,.art115-toc-mobile) ol{padding:0 10px 12px}
@media(min-width:992px){
  html body :is(.art71-toc,.art115-toc){display:flex;flex-direction:column}
  html body :is(.art71-toc,.art115-toc) h2,html body :is(.art71-progress,.art115-progress){flex:0 0 auto}
  html body :is(.art71-toc,.art115-toc) ol{flex:1 1 auto;min-height:0;overflow-y:auto;padding:4px 12px 4px 4px;scrollbar-width:thin;scrollbar-color:#9aac9f transparent}
}
@media(max-width:991.98px){html body :is(.art71-toc-mobile,.art115-toc-mobile) :is(.art71-toc-link,.art115-toc-link){font-size:15px;min-height:46px;padding:11px 12px}}
@media(prefers-reduced-motion:reduce){html body :is(.art71-toc-link,.art115-toc-link){transition:none}html:has(body.art71-page),html:has(body.art115-page){scroll-behavior:auto!important}}

/* V145 — article geometry in an already-loaded stylesheet.
   The shared layout loads later and also limits .art71-content; use scoped
   selectors with higher specificity so both column widths actually apply.
   At a wide viewport: 1200 = 48px gutters + 300px TOC + 52px gap + 800px body. */
@media screen and (min-width: 992px) {
  html body.art71-page main .art71-layout,
  html body.art115-page main .art115-layout {
    box-sizing: border-box;
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
    padding-inline: 24px;
    grid-template-columns: clamp(240px, 25vw, 300px) minmax(0, 1fr);
    column-gap: clamp(32px, 4.333333vw, 52px);
  }

  html body.art71-page main .art71-layout .art71-content,
  html body.art115-page main .art115-layout .art115-content {
    width: 100%;
    min-width: 0;
    max-width: none;
  }
}
