.knowledge-page { color: var(--color-text); background: #f8f9fc; }
.kb-intro { padding: 3rem 0 2.35rem; background: var(--color-bg-soft); }
.kb-intro .container { max-width: 940px; }
.kb-eyebrow { margin: 0 0 .55rem; color: #6352d8; font-size: .72rem; font-weight: 750; letter-spacing: .12em; }
.kb-intro h1 { margin: 0; color: var(--color-heading); font-size: clamp(2.15rem,4vw,3.05rem); line-height: 1.12; letter-spacing: -.035em; }
.kb-lead { margin: .75rem 0 0; color: #44506a; font-size: clamp(1.08rem,2vw,1.3rem); font-weight: 600; }
.kb-intro-copy { max-width: 690px; margin: .55rem 0 1.65rem; color: var(--color-text-muted); line-height: 1.7; }
.kb-search { max-width: 780px; }
.kb-search > label { display: block; margin-bottom: .5rem; color: var(--color-heading); font-size: .9rem; font-weight: 700; }
.kb-search-field { display: flex; min-height: 58px; align-items: center; gap: .8rem; padding: .35rem .55rem .35rem 1rem; border: 1px solid #dfe3ef; border-radius: 13px; background: #fff; box-shadow: 0 8px 26px rgba(25,35,64,.06); }
.kb-search-field:focus-within { border-color: #8878ed; box-shadow: 0 0 0 3px rgba(98,74,213,.13); }
.kb-search-field svg { width: 21px; height: 21px; flex: 0 0 auto; fill: none; stroke: #778198; stroke-width: 1.8; }
.kb-search-field input { width: 100%; min-width: 0; border: 0; outline: 0; color: var(--color-heading); background: transparent; font: inherit; font-size: .95rem; }
.kb-search-field input::placeholder { color: #8b94a7; }
.kb-search-field button { flex: 0 0 auto; padding: .65rem .85rem; border: 0; border-radius: 8px; color: #5c4bcc; background: #f2f0ff; font: inherit; font-size: .78rem; font-weight: 650; cursor: pointer; }
.kb-search-field button:hover { background: #e8e4ff; }
.kb-search-status { min-height: 1.2em; margin: .35rem 0 0; color: #657087; font-size: .82rem; }
.kb-popular-section,.kb-categories-section { padding: 2.55rem 0; }
.kb-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1.2rem; }
.kb-section-heading .kb-eyebrow { margin-bottom: .25rem; }
.kb-section-heading h2,.kb-service-links h2 { margin: 0; color: var(--color-heading); font-size: clamp(1.35rem,2.4vw,1.8rem); line-height: 1.25; }
.kb-popular-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem 1rem; }
.kb-article-link { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: .65rem; color: #3d4a65; text-decoration: none; line-height: 1.45; }
.kb-article-link span { flex: 0 0 auto; color: #6554d8; transition: transform .18s ease; }
.kb-article-link:hover { color: #5543cd; text-decoration: underline; text-underline-offset: 3px; }
.kb-article-link:hover span { transform: translateX(3px); }
.kb-popular-list .kb-article-link { min-height: 50px; padding: .7rem .8rem; border: 1px solid #e7eaf2; border-radius: 10px; background: #fff; font-size: .9rem; }
.kb-categories-section { padding-top: 1.8rem; background: #f8f9fc; }
.kb-blog-link { color: #5a49d2; font-size: .88rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.kb-blog-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.kb-category-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.kb-category-card { min-width: 0; padding: 1.15rem 1.15rem 1rem; border: 1px solid #e5e8f0; border-radius: 13px; background: #fff; }
.kb-category-heading { display: flex; align-items: flex-start; gap: .8rem; }
.kb-category-icon { display: grid; width: 40px; height: 40px; flex: 0 0 auto; place-items: center; border-radius: 11px; color: #5f4bd5; background: #f0eeff; }
.kb-category-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.kb-category-heading h3 { margin: .1rem 0 .25rem; color: var(--color-heading); font-size: 1.02rem; }
.kb-category-heading p { margin: 0; color: #707b91; font-size: .82rem; line-height: 1.5; }
.kb-category-card ul { display: grid; gap: .62rem; margin: 1rem 0 0; padding: .9rem 0 0; border-top: 1px solid #edf0f5; list-style: none; }
.kb-category-card li { min-width: 0; font-size: .86rem; }
.kb-category-card .kb-article-link { align-items: flex-start; }
.kb-empty-state { padding: 3rem 1rem; text-align: center; }
.kb-empty-state[hidden] { display: none; }
.kb-empty-state h2 { margin: 0 0 .4rem; color: var(--color-heading); font-size: 1.35rem; }
.kb-empty-state p { margin: 0; color: var(--color-text-muted); line-height: 1.6; }
.kb-empty-state a,.kb-article-content a { color: #5948cf; text-underline-offset: 3px; }
.kb-service-links { padding: 2rem 0; }
.kb-service-links .container > div { display: flex; flex-wrap: wrap; gap: .6rem 1.3rem; margin-top: .8rem; }
.kb-service-links a { color: #536078; font-size: .9rem; text-decoration: none; }
.kb-service-links a:hover { color: #5948cf; text-decoration: underline; text-underline-offset: 3px; }
.kb-support { padding: 1.75rem 0; background: #f2f1ff; }
.knowledge-article-page > .kb-support { margin-top: 2.5rem; }
.kb-support .container { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.kb-support h2 { margin: 0 0 .3rem; color: var(--color-heading); font-size: 1.3rem; }
.kb-support p { max-width: 700px; margin: 0; color: #667087; line-height: 1.6; }
.kb-support .btn { flex: 0 0 auto; }

.knowledge-article-page { padding-bottom: 2.5rem; }
.kb-loading { padding-block: 3rem; color: #637087; }
.kb-article-layout { display: grid; grid-template-columns: minmax(190px,230px) minmax(0,780px); justify-content: center; gap: clamp(2rem,5vw,4.5rem); padding-top: 2.2rem; }
.kb-toc { align-self: start; }
.kb-toc details { padding: 1rem; border: 1px solid #e4e8f0; border-radius: 11px; background: #fbfcfe; }
.kb-toc summary { color: #29334b; font-size: .9rem; font-weight: 700; cursor: pointer; }
.kb-toc nav { padding-top: .8rem; }
.kb-toc ol { display: grid; gap: .65rem; margin: 0; padding-left: 1.15rem; color: #7a8498; }
.kb-toc a { color: #59647b; font-size: .82rem; line-height: 1.45; text-decoration: none; }
.kb-toc a:hover { color: #5c49d3; text-decoration: underline; text-underline-offset: 3px; }
.kb-article { min-width: 0; }
.kb-article-header { padding-bottom: 1.5rem; border-bottom: 1px solid #e9ecf3; }
.kb-category-label { display: inline-flex; padding: .35rem .6rem; border-radius: 6px; color: #5848cd; background: #f0eeff; font-size: .76rem; font-weight: 700; text-decoration: none; }
.kb-article-header h1 { margin: .8rem 0 .65rem; color: var(--color-heading); font-size: clamp(1.9rem,4vw,2.65rem); line-height: 1.16; letter-spacing: -.025em; }
.kb-article-header > p { max-width: 730px; margin: 0; color: #657087; font-size: 1.03rem; line-height: 1.7; }
.kb-article-content { padding-top: .6rem; }
.kb-article-section { padding-top: 1.25rem; scroll-margin-top: 1.5rem; }
.kb-article-section h2,.kb-article-related h2,.kb-extra-links h2 { margin: 0 0 .75rem; color: var(--color-heading); font-size: 1.35rem; line-height: 1.3; }
.kb-article-content p,.kb-article-content li { color: #4f5b72; font-size: .97rem; line-height: 1.75; }
.kb-article-content p { margin: .55rem 0; }
.kb-article-content ul { display: grid; gap: .4rem; padding-left: 1.35rem; }
.kb-article-content code { padding: .12em .35em; border-radius: 4px; color: #4a3ab9; background: #f1effb; font-size: .9em; }
.kb-article-subsection { margin: 1rem 0; }
.kb-article-subsection h3 { margin: 0 0 .4rem; color: #303a52; font-size: 1.04rem; }
.kb-steps { display: grid; gap: .7rem; margin: 1rem 0; padding: 0; list-style: none; counter-reset: kb-step; }
.kb-steps li { position: relative; min-height: 62px; padding: .1rem 0 .5rem 3.1rem; counter-increment: kb-step; }
.kb-steps li::before { position: absolute; top: 0; left: 0; display: grid; width: 2.2rem; height: 2.2rem; place-items: center; border-radius: 50%; color: #5746cc; background: #f0eeff; content: counter(kb-step); font-size: .86rem; font-weight: 750; }
.kb-steps h3 { margin: 0 0 .25rem; color: #303a52; font-size: 1rem; }
.kb-steps p { margin: 0; }
.kb-callout { margin: 1rem 0; padding: .9rem 1rem; border-left: 3px solid #7b6be1; border-radius: 0 8px 8px 0; background: #f6f5ff; }
.kb-callout strong { color: #4436a6; font-size: .88rem; }
.kb-callout p { margin-bottom: 0; }
.kb-callout[data-variant="warning"] { border-color: #d59b38; background: #fff9ed; }
.kb-callout[data-variant="warning"] strong { color: #8a5b13; }
.kb-callout[data-variant="tip"] { border-color: #48a985; background: #effaf5; }
.kb-callout[data-variant="tip"] strong { color: #24694e; }
.kb-code { max-width: 100%; overflow-x: auto; margin: 1rem 0; padding: 1rem; border-radius: 9px; color: #e8ebf4; background: #20273a; font-size: .86rem; line-height: 1.6; tab-size: 2; }
.kb-code code { padding: 0; color: inherit; background: transparent; font-size: inherit; }
.kb-table-scroll { max-width: 100%; overflow-x: auto; margin: 1rem 0; border: 1px solid #e4e8f0; border-radius: 9px; }
.kb-table-scroll:focus-visible { outline: 2px solid #7160dc; outline-offset: 3px; }
.kb-table-scroll table { width: 100%; border-collapse: collapse; text-align: left; }
.kb-table-scroll caption { padding: .7rem .85rem; color: #303a52; font-weight: 700; text-align: left; }
.kb-table-scroll th,.kb-table-scroll td { min-width: 130px; padding: .65rem .8rem; border-top: 1px solid #e8ebf2; color: #4f5b72; font-size: .87rem; vertical-align: top; }
.kb-table-scroll th { color: #303a52; background: #f7f8fc; font-weight: 700; }
.kb-article-related,.kb-extra-links { margin-top: 2rem; padding-top: 1.2rem; border-top: 1px solid #e9ecf3; }
.kb-article-related > div,.kb-extra-links { display: grid; gap: .55rem; }
.kb-related-link { display: flex; justify-content: space-between; gap: 1rem; padding: .72rem .85rem; border: 1px solid #e6e9f1; border-radius: 8px; color: #47536c; text-decoration: none; }
.kb-related-link span { color: #5c49d3; }
.kb-related-link:hover { border-color: #c8c0f6; color: #5543cd; }
.kb-extra-links h2 { margin-bottom: .2rem; }
.kb-back-link { padding-top: 1.4rem; }
.kb-back-link a { color: #5746cc; font-size: .9rem; text-decoration: none; }
.kb-back-link a:hover { text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 900px) {
    .kb-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .kb-article-layout { grid-template-columns: minmax(0,1fr); gap: 1.25rem; }
    .kb-toc details { padding: .8rem 1rem; }
    .kb-toc nav { max-height: 260px; overflow: auto; }
}
@media (max-width: 620px) {
    .kb-intro { padding: 2.2rem 0 1.6rem; }
    .kb-intro-copy { margin-bottom: 1.2rem; }
    .kb-search-field { min-height: 54px; gap: .5rem; padding-left: .75rem; }
    .kb-search-field button { padding: .55rem .6rem; }
    .kb-popular-section,.kb-categories-section { padding: 1.8rem 0; }
    .kb-popular-list,.kb-category-grid { grid-template-columns: minmax(0,1fr); }
    .kb-popular-list .kb-article-link { min-height: 46px; }
    .kb-section-heading { align-items: flex-start; }
    .kb-blog-link { padding-top: .2rem; }
    .kb-support .container { align-items: flex-start; flex-direction: column; }
    .knowledge-article-page > .kb-support { margin-top: 2rem; }
    .kb-support .btn { width: 100%; justify-content: center; }
    .kb-article-layout { padding-top: 1.2rem; }
    .kb-article-header h1 { font-size: 1.85rem; }
    .kb-article-content p,.kb-article-content li { font-size: .93rem; }
}
