.kb-figure { margin: 1rem 0 0.4rem; }
.kb-figure img { width: 100%; max-height: 460px; object-fit: cover; border-radius: 6px; }
.kb-figure figcaption { margin-top: 0.35rem; font-size: 0.9rem; color: #d7dbd1; }
.kb-take { background: var(--olive-deep); border-radius: 6px; padding: 0.9rem 1.1rem 0.4rem; margin: 0.4rem 0 1rem; }
.kb-take h2 { color: var(--green); font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; }
.kb-pills { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0 0 0.8rem; }
.kb-pills span { border: 1px solid rgba(241,243,238,.35); border-radius: 999px; padding: 0.25rem 0.7rem; font-size: 0.85rem; }
.kb-table { width: 100%; border-collapse: collapse; margin: 0.4rem 0 0.8rem; }
.kb-table th, .kb-table td { text-align: left; vertical-align: top; padding: 0.7rem 0.65rem; border-bottom: 1px solid rgba(46,48,35,.14); }
.kb-table th { font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--olive); }
.tree-section.light .kb-table { background: #fff; }
.kb-steps { list-style: none; margin: 0.4rem 0 0; padding: 0; }
.kb-steps li { display: grid; grid-template-columns: 3rem 1fr; gap: 0.6rem; padding: 0.75rem 0; border-top: 1px solid rgba(241,243,238,.22); }
.kb-num { color: var(--button); font-weight: 700; font-size: 1.25rem; }
.kb-related { display: flex; flex-wrap: wrap; gap: 0.45rem 0.9rem; margin: 0.3rem 0 0; padding: 0; list-style: none; }
.kb-related a { font-weight: 700; }
.tree-section.light .kb-figure figcaption { color: #4d5248; }
.kb-index { list-style: none; padding: 0; margin: 0.4rem 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; }
.kb-index a { display: block; background: #fff; color: var(--ink); text-decoration: none; border-radius: 6px; padding: 0.75rem 0.9rem; border-left: 4px solid var(--button); }
.kb-index a strong { display: block; color: var(--olive); }
.kb-index a span { display: block; font-size: 0.92rem; margin-top: 0.25rem; }
.kb-index a:hover { filter: brightness(0.97); }
@media (max-width: 700px) {
  .kb-index { grid-template-columns: 1fr; }
  .kb-table { display: block; overflow-x: auto; }
}
