/* KB article building blocks (E-102) — the same look in the editor, the staff/portal view and the public docs. */
.kb-box { margin: 1.4em 0; padding: 14px 18px 14px 50px; border: 1px solid; border-left-width: 4px; border-radius: 10px; position: relative; line-height: 1.6; }
.kb-box::before { position: absolute; left: 16px; top: 13px; font-size: 18px; line-height: 1.4; }
.kb-box p { margin: 0 0 .6em; } .kb-box ul, .kb-box ol { margin: 0 0 .6em; }
.kb-box > :last-child { margin-bottom: 0; }
.kb-box__title { margin: 0 0 4px !important; font-weight: 700; }
.kb-box--note { background: #f0f6fc; border-color: #72aee6; } .kb-box--note::before { content: 'ℹ️'; }
.kb-box--tip { background: #edfaef; border-color: #68de7c; } .kb-box--tip::before { content: '💡'; }
.kb-box--important { background: #fcf9e8; border-color: #f0b849; } .kb-box--important::before { content: '⚠️'; }
.kb-box--warning { background: #fcf0f1; border-color: #e65054; } .kb-box--warning::before { content: '⛔'; }
.kb-sec { margin: 1.6em 0; padding-left: 16px; border-left: 4px solid #c3c4c7; }
.kb-sec > h2 { margin-top: 0; }
.kb-sec--problem { border-color: #e65054; } .kb-sec--causes { border-color: #f0b849; } .kb-sec--solution { border-color: #00a32a; }
.kb-sec--prereq { border-color: #8c8f94; } .kb-sec--steps { border-color: #2271b1; } .kb-sec--verify { border-color: #00a32a; }
.kb-steps { counter-reset: kbstep; list-style: none; margin: 0; padding: 0; }
.kb-steps > li { counter-increment: kbstep; position: relative; margin: 0 0 14px; padding: 14px 18px 12px 60px; border: 1px solid #e3e7ee; border-radius: 12px; background: #fff; box-shadow: 0 1px 2px rgba(21,33,58,.04); list-style: none; }
.kb-steps > li > p:last-child { margin-bottom: 0; }
.kb-steps > li::before { content: counter(kbstep); position: absolute; left: 16px; top: 14px; width: 30px; height: 30px; border-radius: 50%; background: #1f5fbf; color: #fff; font-weight: 800; font-size: 14px; text-align: center; line-height: 26px; font-size: 14px; }
.kb-steps > li > h3, .kb-steps > li > h4 { margin: 0 0 6px !important; font-size: 1.05em !important; font-weight: 700; line-height: 1.4; }
.kb-fig { margin: 1.2em 0; }
.kb-fig img { max-width: 100%; height: auto; border: 1px solid #dcdcde; border-radius: 8px; }
.kb-fig figcaption { margin-top: 6px; font-size: .9em; color: #646970; }
pre.kb-code, .kb-sec pre, .kb-box pre { overflow: auto; padding: 12px 14px; background: #1d2327; color: #f0f0f1; border-radius: 8px; font-size: 14px; }
