.sv-card{cursor:pointer;text-decoration:none;color:inherit}
.sv-card:focus-visible,.case-card:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.detail-layout,.article-detail-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:42px;align-items:start}
.detail-layout{padding-block:56px}
.detail-layout .cd-body{padding-block:0;min-width:0}
.detail-layout .cd-body>p{max-width:none}
.detail-layout .cd-meta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.detail-directory{position:sticky;top:100px;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--bg-2,var(--panel,#141a15));padding:18px}
.detail-directory summary{cursor:pointer;color:var(--gold);font-size:16px;font-weight:600;line-height:1.6}
.detail-directory nav{display:flex;flex-direction:column;gap:6px;margin-top:16px;max-height:calc(100vh - 260px);overflow-y:auto;overscroll-behavior:contain;padding:3px}
.detail-directory nav a{display:block;padding:10px 12px;border-radius:8px;font-size:14px;line-height:1.7;color:var(--tx-2,var(--muted));text-decoration:none;overflow-wrap:anywhere}
.detail-directory nav a:hover,.detail-directory nav a[aria-current=page]{color:var(--gold);background:var(--gold-soft,#e3b45f18)}
.detail-directory nav a[aria-current=page]{box-shadow:inset 2px 0 var(--gold)}
.detail-directory nav a:focus-visible,.detail-directory summary:focus-visible,.directory-more:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.directory-current,.directory-notice{font-size:12px;color:var(--tx-2,var(--muted));overflow-wrap:anywhere;margin:12px 0 0}
.directory-notice:empty{display:none}
.directory-more{display:block;width:100%;margin-top:14px;padding:8px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--gold);font:inherit;font-size:13px;cursor:pointer}
.directory-more[hidden]{display:none}
.directory-more:disabled{opacity:.5;cursor:wait}
.cms-article-with-directory{max-width:1200px}
.article-detail-content{min-width:0}
#articleDirectory{position:sticky;top:30px;min-width:0}
#articleDirectory .detail-directory{position:static}
@media(max-width:960px){
  .detail-layout,.article-detail-layout{grid-template-columns:minmax(0,1fr);gap:26px}
  .detail-layout{padding-block:30px}
  .detail-directory,#articleDirectory{position:static}
  .detail-directory nav{max-height:320px}
  .detail-directory:not([open])>:not(summary){display:none}
}
