:root {
  --kb-navy: #08243f;
  --kb-blue: #087df0;
  --kb-blue-dark: #0568c9;
  --kb-sky: #eaf5ff;
  --kb-ink: #142c43;
  --kb-muted: #62778a;
  --kb-line: #dce7ef;
  --kb-soft: #f5f9fc;
  --kb-white: #fff;
}

.kb-page { background: var(--kb-white); color: var(--kb-ink); }
.kb-page .header { position: relative; background: #fff; }
.kb-page .navbar { background: #fff; box-shadow: 0 1px 0 rgba(15, 44, 70, .09); }
.kb-page .navbar .nav__item .nav__item-link { color: #17324c !important; }
.kb-page .navbar .logo-light { display: none; }
.kb-page .navbar .logo-dark { display: inline-block; }
.kb-page .navbar .navbar-brand { line-height: 84px; }
.kb-page main { overflow: hidden; }
.kb-page h1, .kb-page h2, .kb-page h3 { color: var(--kb-ink); font-family: "IBM Plex Sans", sans-serif; text-transform: none; }
.kb-page p { color: var(--kb-muted); }
.kb-page code { padding: 2px 6px; border-radius: 5px; background: #edf3f7; color: #264c69; font-size: .9em; }
.kb-page .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.kb-hero {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  background:
    linear-gradient(125deg, rgba(255,255,255,.02), rgba(255,255,255,0) 38%),
    linear-gradient(142deg, #071e37 0%, #092d4f 58%, #063861 100%);
}
.kb-hero::after {
  position: absolute;
  right: -40px;
  bottom: -110px;
  width: 470px;
  height: 300px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 50%;
  content: "";
  transform: rotate(-14deg);
}
.kb-hero__inner { position: relative; z-index: 2; padding-top: 34px; padding-bottom: 78px; }
.kb-hero__glow { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
.kb-hero__glow--one { top: -220px; left: 18%; width: 540px; height: 540px; background: radial-gradient(circle, rgba(13,135,240,.25), transparent 67%); }
.kb-hero__glow--two { right: 4%; bottom: -240px; width: 580px; height: 580px; background: radial-gradient(circle, rgba(70,207,255,.14), transparent 67%); }
.kb-back-link { display: inline-flex; gap: 9px; align-items: center; color: #b8d4e7; font-size: 13px; font-weight: 600; }
.kb-back-link:hover { color: #fff; }
.kb-hero__copy { max-width: 760px; margin: 54px auto 27px; text-align: center; }
.kb-eyebrow, .kb-kicker { display: inline-flex; align-items: center; gap: 8px; color: #3faefa; font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.kb-eyebrow { color: #72c8ff; }
.kb-hero h1 { margin: 13px 0 10px; color: #fff; font-size: clamp(43px, 5.5vw, 67px); font-weight: 700; letter-spacing: -.035em; line-height: 1.04; }
.kb-hero__copy p { max-width: 650px; margin: 0 auto; color: #c6d9e7; font-size: 18px; line-height: 1.65; }
.kb-search { position: relative; display: flex; max-width: 760px; min-height: 68px; align-items: center; margin: 0 auto; padding: 7px; border: 1px solid rgba(255,255,255,.2); border-radius: 16px; background: #fff; box-shadow: 0 22px 50px rgba(0,11,29,.29); }
.kb-search > i { margin-left: 16px; color: #648097; font-size: 18px; }
.kb-search input { min-width: 0; flex: 1; height: 52px; padding: 0 42px 0 13px; border: 0; outline: 0; background: transparent; color: var(--kb-ink); font-size: 16px; }
.kb-search input::placeholder { color: #8495a4; }
.kb-search__hint { display: inline-flex; width: 25px; height: 25px; align-items: center; justify-content: center; margin-right: 9px; border: 1px solid #d8e1e8; border-radius: 6px; color: #8092a0; font-size: 12px; font-weight: 700; }
.kb-search button, .kb-article-search button { height: 50px; padding: 0 23px; border: 0; border-radius: 11px; background: var(--kb-blue); color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; }
.kb-search button:hover, .kb-article-search button:hover { background: var(--kb-blue-dark); }
.kb-search-status { position: absolute; left: 50%; width: min(760px, calc(100% - 30px)); transform: translateX(-50%); }
.kb-popular-searches { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 17px; color: #94b1c5; font-size: 12px; }
.kb-popular-searches span { padding: 4px 0; }
.kb-popular-searches button { padding: 4px 9px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; background: rgba(255,255,255,.06); color: #d2e2ed; font-size: 11px; cursor: pointer; }
.kb-popular-searches button:hover { border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.11); color: #fff; }

.kb-section { padding: 92px 0; }
.kb-section--soft { background: var(--kb-soft); }
.kb-section--modules { border-top: 1px solid #e3edf4; background: linear-gradient(180deg, #f7fbfe 0%, #fff 100%); }
.kb-section--search { padding: 70px 0; border-bottom: 1px solid var(--kb-line); background: #fbfdff; }
.kb-section-heading { max-width: 680px; margin-bottom: 34px; }
.kb-section-heading--row { display: flex; max-width: none; align-items: end; justify-content: space-between; gap: 24px; }
.kb-section-heading h2 { margin: 8px 0 9px; font-size: clamp(30px, 3.3vw, 43px); font-weight: 700; letter-spacing: -.025em; line-height: 1.15; }
.kb-section-heading p { margin: 0; font-size: 16px; }
.kb-category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.kb-category-card { display: flex; min-height: 214px; flex-direction: column; padding: 27px; border: 1px solid var(--kb-line); border-radius: 17px; background: #fff; box-shadow: 0 7px 20px rgba(14,51,80,.04); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.kb-category-card:hover { border-color: #abd5f5; box-shadow: 0 18px 36px rgba(17,68,106,.09); transform: translateY(-3px); }
.kb-category-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.kb-category-card__icon { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; border-radius: 12px; background: var(--kb-sky); color: var(--kb-blue); font-size: 18px; }
.kb-category-card__count { color: #7f93a3; font-size: 12px; font-weight: 600; }
.kb-category-card h3 { margin: 21px 0 7px; font-size: 19px; }
.kb-category-card p { flex: 1; margin: 0 0 16px; font-size: 14px; line-height: 1.65; }
.kb-category-card__link { color: var(--kb-blue); font-size: 13px; font-weight: 700; }
.kb-category-card__link i { margin-left: 5px; font-size: 10px; }

.kb-module-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.kb-module-card { position: relative; display: grid; min-height: 112px; grid-template-columns: 43px minmax(0, 1fr); gap: 14px; align-items: start; padding: 18px 19px; overflow: hidden; border: 1px solid var(--kb-line); border-radius: 14px; background: #fff; box-shadow: 0 6px 18px rgba(14,51,80,.035); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.kb-module-card::before { position: absolute; top: 0; right: 0; left: 0; height: 3px; background: var(--module-color); content: ""; opacity: .9; }
.kb-module-card:hover { border-color: color-mix(in srgb, var(--module-color) 38%, #dce7ef); box-shadow: 0 13px 28px rgba(17,68,106,.08); transform: translateY(-2px); }
.kb-module-card__icon { display: inline-flex; width: 43px; height: 43px; align-items: center; justify-content: center; border-radius: 11px; background: color-mix(in srgb, var(--module-color) 11%, white); color: var(--module-color); font-size: 17px; }
.kb-module-card__copy { display: block; min-width: 0; padding-right: 50px; }
.kb-module-card__copy strong { display: block; margin: 1px 0 5px; color: var(--kb-ink); font-size: 15px; }
.kb-module-card__copy small { display: block; color: #6e8292; font-size: 11px; line-height: 1.5; }
.kb-module-card__count { position: absolute; top: 21px; right: 16px; color: #8295a4; font-size: 10px; font-weight: 600; }

.kb-featured-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.kb-featured-card { display: grid; grid-template-columns: 42px 1fr auto; gap: 15px; align-items: center; padding: 21px; border: 1px solid var(--kb-line); border-radius: 14px; background: #fff; transition: border-color .2s ease, box-shadow .2s ease; }
.kb-featured-card:hover { border-color: #9bcdf2; box-shadow: 0 12px 28px rgba(20,69,105,.08); }
.kb-featured-card__icon { display: inline-flex; width: 42px; height: 42px; align-items: center; justify-content: center; border-radius: 11px; background: #f0f7fc; color: #2b7fbd; }
.kb-featured-card h3 { margin: 0 0 5px; font-size: 16px; line-height: 1.35; }
.kb-featured-card p { margin: 0; font-size: 12px; }
.kb-featured-card > i { color: #9aabb8; font-size: 12px; }
.kb-updated { color: #668196; font-size: 12px; }
.kb-updated i { margin-right: 6px; color: #13a36e; }

.kb-role-panel { display: grid; grid-template-columns: .8fr 1.5fr; gap: 70px; align-items: center; padding: 45px 48px; border: 1px solid #dce9f2; border-radius: 24px; background: linear-gradient(135deg, #f5faff, #fff); box-shadow: 0 20px 55px rgba(18,61,94,.08); }
.kb-role-panel__intro h2 { margin: 8px 0 10px; font-size: 37px; letter-spacing: -.025em; }
.kb-role-panel__intro p { margin: 0; }
.kb-role-panel__groups { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; }
.kb-role-group { display: flex; gap: 15px; }
.kb-role-group__icon { display: inline-flex; width: 44px; height: 44px; flex: 0 0 44px; align-items: center; justify-content: center; border-radius: 12px; background: #e6f4ff; color: #087cd9; }
.kb-role-group__icon--purple { background: #f2ecff; color: #764fd1; }
.kb-role-group h3 { margin: 2px 0 10px; font-size: 17px; }
.kb-role-group a { display: block; margin-top: 7px; color: #4d6a80; font-size: 13px; }
.kb-role-group a:hover { color: var(--kb-blue); }

.kb-support-strip { padding: 0 0 92px; }
.kb-support-strip__inner { display: grid; grid-template-columns: auto 1fr auto; gap: 21px; align-items: center; padding: 29px 34px; border-radius: 18px; background: var(--kb-navy); box-shadow: 0 18px 40px rgba(5,34,58,.17); }
.kb-support-strip__icon { display: inline-flex; width: 52px; height: 52px; align-items: center; justify-content: center; border-radius: 14px; background: rgba(66,177,255,.14); color: #5fc4ff; font-size: 21px; }
.kb-support-strip h2 { margin: 0 0 3px; color: #fff; font-size: 22px; }
.kb-support-strip p { margin: 0; color: #a9c2d3; font-size: 14px; }
.kb-support-strip .btn { margin: 0; }

.kb-result-list { display: grid; gap: 12px; }
.kb-result-card { display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; padding: 23px 25px; border: 1px solid var(--kb-line); border-radius: 14px; background: #fff; }
.kb-result-card:hover { border-color: #9acdf3; box-shadow: 0 10px 25px rgba(20,66,99,.07); }
.kb-result-card__meta { display: flex; gap: 8px; align-items: center; margin-bottom: 8px; color: #71899b; font-size: 11px; }
.kb-result-card__meta span:first-child { color: var(--kb-blue); font-weight: 700; }
.kb-result-card h3 { margin: 0 0 6px; font-size: 18px; }
.kb-result-card p { margin: 0; font-size: 13px; line-height: 1.6; }
.kb-result-card > i { color: #8ca1b0; font-size: 12px; }
.kb-text-button { padding: 8px 0; border: 0; background: transparent; color: #577388; font-size: 13px; cursor: pointer; }
.kb-text-button i { margin-right: 5px; }
.kb-empty-state { padding: 42px 20px; text-align: center; }
.kb-empty-state__icon { display: inline-flex; width: 58px; height: 58px; align-items: center; justify-content: center; border-radius: 50%; background: var(--kb-sky); color: var(--kb-blue); }
.kb-empty-state h3 { margin: 17px 0 7px; font-size: 21px; }
.kb-empty-state p { margin: 0 0 10px; }
.kb-inline-link { color: var(--kb-blue); font-size: 13px; font-weight: 700; }

/* Article */
.kb-article-topbar { border-bottom: 1px solid var(--kb-line); background: #f8fbfd; }
.kb-article-topbar .container { display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 30px; }
.kb-wordmark { display: inline-flex; gap: 10px; align-items: center; color: var(--kb-ink); font-size: 16px; font-weight: 700; }
.kb-wordmark span { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; border-radius: 9px; background: var(--kb-blue); color: #fff; }
.kb-article-search { display: flex; width: 430px; height: 46px; align-items: center; padding: 4px 4px 4px 14px; border: 1px solid #d5e2eb; border-radius: 10px; background: #fff; }
.kb-article-search > i { color: #72899b; font-size: 13px; }
.kb-article-search input { min-width: 0; flex: 1; height: 36px; padding: 0 11px; border: 0; outline: none; color: var(--kb-ink); font-size: 13px; }
.kb-article-search button { height: 36px; padding: 0 15px; border-radius: 8px; font-size: 12px; }
.kb-article-shell { padding-top: 24px; padding-bottom: 100px; }
.kb-breadcrumbs { display: flex; gap: 10px; align-items: center; min-height: 30px; color: #71879a; font-size: 12px; }
.kb-breadcrumbs a { color: #4c6c84; }
.kb-breadcrumbs i { color: #a6b5c1; font-size: 8px; }
.kb-breadcrumbs span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kb-article-layout { display: grid; grid-template-columns: 190px minmax(0, 720px) 220px; gap: 44px; align-items: start; margin-top: 34px; }
.kb-article-nav { position: sticky; top: 105px; padding-right: 22px; border-right: 1px solid var(--kb-line); }
.kb-article-nav h2 { margin: 0 0 14px; color: #7b8fa0; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.kb-article-nav a { display: block; margin: 0 -1px 2px 0; padding: 8px 0; border-right: 2px solid transparent; color: #647b8d; font-size: 12px; line-height: 1.4; }
.kb-article-nav a:hover, .kb-article-nav a.is-active { border-color: var(--kb-blue); color: var(--kb-blue); }
.kb-article-header { padding-bottom: 31px; border-bottom: 1px solid var(--kb-line); }
.kb-article-meta { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; margin-bottom: 15px; color: #718799; font-size: 11px; }
.kb-article-meta__category { padding: 5px 9px; border-radius: 999px; background: var(--kb-sky); color: #0873cd; font-weight: 700; }
.kb-article-meta__module { padding: 5px 9px; border: 1px solid #d8e5ee; border-radius: 999px; background: #fff; color: #45677f; font-weight: 700; }
.kb-article-meta__module:hover { border-color: #8fc7ef; color: var(--kb-blue); }
.kb-article-header h1 { margin: 0 0 14px; font-size: clamp(36px, 4.2vw, 50px); font-weight: 700; letter-spacing: -.035em; line-height: 1.08; }
.kb-article-header > p { margin: 0; color: #60788b; font-size: 17px; line-height: 1.7; }
.kb-article-body { padding-top: 10px; }
.kb-article-section { padding: 35px 0 9px; scroll-margin-top: 110px; }
.kb-article-section h2 { margin: 0 0 14px; font-size: 25px; font-weight: 700; letter-spacing: -.015em; }
.kb-article-section p, .kb-article-section li { color: #4f687c; font-size: 15px; line-height: 1.78; }
.kb-article-section p { margin: 0 0 15px; }
.kb-article-section ol, .kb-article-section ul { margin: 0 0 17px; padding-left: 23px; }
.kb-article-section li { margin-bottom: 8px; padding-left: 5px; }
.kb-article-section strong { color: #223f57; }
.kb-deep-guide-steps { display: grid; gap: 12px; padding-left: 0 !important; list-style: none; counter-reset: deep-step; }
.kb-deep-guide-steps li { position: relative; margin: 0; padding: 18px 18px 18px 66px; border: 1px solid #dbe8f0; border-radius: 12px; background: #fbfdff; }
.kb-deep-guide-steps li > span { position: absolute; top: 18px; left: 16px; display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border-radius: 10px; background: #e8f5fe; color: var(--kb-blue); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.kb-deep-guide-steps li > strong { display: block; margin: 1px 0 5px; font-size: 14px; }
.kb-deep-guide-steps li > p { margin: 0; font-size: 13px; line-height: 1.65; }
.kb-safeguard-list { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; padding: 0 !important; list-style: none; }
.kb-safeguard-list li { margin: 0; padding: 14px; border-left: 3px solid #84bfe9; border-radius: 0 10px 10px 0; background: #f4f9fc; font-size: 12px; }
.kb-safeguard-list li strong { color: #2478b4; font-size: 10px; letter-spacing: .05em; text-transform: uppercase; }
.kb-callout { margin: 21px 0; padding: 20px 22px; border-left: 3px solid var(--kb-blue); border-radius: 0 12px 12px 0; background: #eef7fe; }
.kb-callout > strong { display: block; margin-bottom: 4px; color: #0e5e9f; font-size: 14px; }
.kb-callout p { margin: 0; color: #496c85; font-size: 14px; }
.kb-article-aside { position: sticky; top: 105px; }
.kb-aside-card { padding: 22px; border: 1px solid var(--kb-line); border-radius: 15px; background: #f9fbfd; }
.kb-aside-card__icon { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border-radius: 10px; background: var(--kb-sky); color: var(--kb-blue); }
.kb-aside-card h3 { margin: 15px 0 6px; font-size: 16px; }
.kb-aside-card p { margin: 0 0 12px; font-size: 12px; line-height: 1.55; }
.kb-aside-card a { color: var(--kb-blue); font-size: 12px; font-weight: 700; }
.kb-aside-card a i { margin-left: 4px; font-size: 9px; }
.kb-article-feedback { margin-top: 45px; padding: 27px; border: 1px solid var(--kb-line); border-radius: 16px; background: #f8fbfd; }
.kb-article-feedback h2 { margin: 0 0 4px; font-size: 19px; }
.kb-article-feedback > p { margin: 0 0 17px; font-size: 13px; }
.kb-feedback-actions { display: flex; gap: 9px; }
.kb-feedback-button { min-width: 94px; padding: 10px 16px; border: 1px solid #cbdbe6; border-radius: 9px; background: #fff; color: #496478; font-size: 13px; font-weight: 600; cursor: pointer; }
.kb-feedback-button:hover, .kb-feedback-button.is-selected { border-color: var(--kb-blue); color: var(--kb-blue); }
.kb-feedback-button i { margin-right: 6px; }
.kb-feedback-form { margin-top: 20px; padding-top: 19px; border-top: 1px solid var(--kb-line); }
.kb-feedback-form label { display: block; margin-bottom: 7px; color: #324f65; font-size: 12px; font-weight: 700; }
.kb-feedback-form textarea { width: 100%; min-height: 108px; padding: 13px; border: 1px solid #cedde7; border-radius: 9px; outline: none; resize: vertical; color: var(--kb-ink); font-family: inherit; font-size: 13px; }
.kb-feedback-form textarea:focus { border-color: var(--kb-blue); box-shadow: 0 0 0 3px rgba(8,125,240,.1); }
.kb-feedback-form__footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 10px; }
.kb-feedback-form__footer span { color: #8194a2; font-size: 11px; }
.kb-feedback-submit { padding: 10px 17px; border: 0; border-radius: 8px; background: var(--kb-blue); color: #fff; font-size: 12px; font-weight: 700; cursor: pointer; }
.kb-feedback-submit:disabled { cursor: wait; opacity: .6; }
.kb-feedback-message { margin-top: 13px; color: #1c815c; font-size: 12px; font-weight: 600; }
.kb-feedback-message.is-error { color: #b54343; }
.kb-article-related { margin-top: 48px; }
.kb-article-related h2 { margin: 0 0 16px; font-size: 22px; }
.kb-related-list { display: grid; gap: 10px; }
.kb-related-link { display: grid; grid-template-columns: 1fr auto; gap: 15px; align-items: center; padding: 17px 18px; border: 1px solid var(--kb-line); border-radius: 11px; color: #2d4b62; font-size: 13px; font-weight: 600; }
.kb-related-link:hover { border-color: #9acdf3; color: var(--kb-blue); }
.kb-related-link i { color: #95a8b5; font-size: 9px; }
.kb-article-loading { display: grid; gap: 14px; padding-top: 10px; }
.kb-article-loading span { display: block; height: 18px; border-radius: 6px; background: linear-gradient(90deg, #edf2f5, #f8fafb, #edf2f5); background-size: 200% 100%; animation: kb-loading 1.4s infinite; }
.kb-article-loading span:first-child { width: 82%; height: 48px; }
.kb-article-loading span:last-child { width: 65%; }
.kb-not-found { padding: 45px 0; text-align: center; }
.kb-not-found i { color: #8fa5b5; font-size: 38px; }
.kb-not-found h1 { margin: 16px 0 8px; font-size: 30px; }
.kb-not-found p { margin-bottom: 18px; }

/* Comprehensive module guides */
.kb-module-shell { padding-top: 24px; padding-bottom: 110px; }
.kb-module-hero { position: relative; display: grid; min-height: 285px; grid-template-columns: auto 1fr; gap: 27px; align-items: start; margin-top: 26px; padding: 46px 50px; overflow: hidden; border: 1px solid #d9e6ef; border-radius: 24px; background: linear-gradient(135deg, color-mix(in srgb, var(--module-color, #087df0) 8%, white), #fff 62%); box-shadow: 0 20px 48px rgba(15,55,86,.08); }
.kb-module-hero::after { position: absolute; right: -80px; bottom: -150px; width: 390px; height: 300px; border: 50px solid color-mix(in srgb, var(--module-color, #087df0) 7%, transparent); border-radius: 50%; content: ""; pointer-events: none; }
.kb-module-hero__icon { position: relative; z-index: 1; display: inline-flex; width: 68px; height: 68px; align-items: center; justify-content: center; border-radius: 18px; background: var(--module-color); box-shadow: 0 12px 26px color-mix(in srgb, var(--module-color) 28%, transparent); color: #fff; font-size: 27px; }
.kb-module-hero__copy { position: relative; z-index: 1; max-width: 910px; }
.kb-module-hero h1 { margin: 8px 0 13px; font-size: clamp(42px,5vw,61px); letter-spacing: -.04em; line-height: 1; }
.kb-module-hero__copy > p { max-width: 900px; margin: 0; color: #506b7f; font-size: 16px; line-height: 1.75; }
.kb-module-hero__meta { display: flex; flex-wrap: wrap; gap: 9px 22px; margin-top: 21px; color: #567287; font-size: 12px; font-weight: 600; }
.kb-module-hero__meta span { display: inline-flex; gap: 7px; align-items: center; }
.kb-module-hero__meta i { color: var(--module-color); }
.kb-module-hero__meta > a { display: inline-flex; gap: 7px; align-items: center; color: var(--module-color); font-weight: 800; }
.kb-module-layout { display: grid; grid-template-columns: 190px minmax(0, 720px) 220px; gap: 44px; align-items: start; margin-top: 55px; }
.kb-module-nav { position: sticky; top: 105px; padding-right: 22px; border-right: 1px solid var(--kb-line); }
.kb-module-nav h2 { margin: 0 0 14px; color: #7b8fa0; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.kb-module-nav a { display: block; margin-right: -1px; padding: 8px 0; border-right: 2px solid transparent; color: #647b8d; font-size: 12px; line-height: 1.4; }
.kb-module-nav a:hover, .kb-module-nav a.is-active { border-color: var(--kb-blue); color: var(--kb-blue); }
.kb-module-section { padding: 0 0 68px; scroll-margin-top: 105px; }
.kb-module-section + .kb-module-section { padding-top: 7px; }
.kb-module-section h2 { margin: 8px 0 19px; font-size: 29px; letter-spacing: -.02em; line-height: 1.2; }
.kb-section-intro { margin: -8px 0 21px; font-size: 14px; line-height: 1.7; }
.kb-module-workflow, .kb-admin-checklist { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.kb-module-workflow li { position: relative; display: grid; grid-template-columns: 38px 1fr; gap: 15px; padding: 0 0 23px; }
.kb-module-workflow li:not(:last-child)::after { position: absolute; top: 35px; bottom: 0; left: 18px; width: 1px; background: #cfe1ee; content: ""; }
.kb-module-workflow li > span { position: relative; z-index: 1; display: inline-flex; width: 37px; height: 37px; align-items: center; justify-content: center; border: 1px solid #b9d8ee; border-radius: 50%; background: #fff; color: var(--kb-blue); font-size: 12px; font-weight: 800; }
.kb-module-workflow li p { margin: 5px 0 0; color: #47657a; font-size: 14px; line-height: 1.7; }
.kb-capability-list { display: grid; grid-template-columns: repeat(2,1fr); gap: 11px; margin: 0; padding: 0; list-style: none; }
.kb-capability-list li { overflow: hidden; border: 1px solid #dce8f0; border-radius: 11px; background: #fbfdff; color: #456277; font-size: 12px; line-height: 1.55; }
.kb-capability-list li > a, .kb-capability-list li > span { display: grid; min-height: 100%; grid-template-columns: 23px 1fr auto; gap: 9px; align-items: start; padding: 14px; color: inherit; }
.kb-capability-list li > a:hover { background: #f2f9fe; color: var(--kb-blue); }
.kb-capability-list li i { display: inline-flex; width: 22px; height: 22px; align-items: center; justify-content: center; border-radius: 7px; background: #e8f6ee; color: #169663; font-size: 9px; }
.kb-capability-list li i.fa-arrow-right { width: auto; background: transparent; color: #91a6b5; }
.kb-task-guide-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 11px; }
.kb-task-guide-card { display: grid; min-height: 164px; grid-template-columns: 35px 1fr auto; gap: 12px; align-items: start; padding: 18px; border: 1px solid #d4e4ef; border-radius: 13px; background: #fff; box-shadow: 0 7px 20px rgba(20,62,93,.04); }
.kb-task-guide-card:hover { border-color: #8fc7ef; box-shadow: 0 13px 28px rgba(20,62,93,.09); transform: translateY(-2px); }
.kb-task-guide-card__number { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 9px; background: #e9f5fe; color: var(--kb-blue); font-size: 10px; font-weight: 800; }
.kb-task-guide-card > span:nth-child(2) { display: flex; min-width: 0; flex-direction: column; }
.kb-task-guide-card strong { color: #294a62; font-size: 13px; line-height: 1.4; }
.kb-task-guide-card small { margin-top: 6px; color: #6a8193; font-size: 11px; line-height: 1.55; }
.kb-task-guide-card em { margin-top: 11px; color: #3b8cc6; font-size: 9px; font-style: normal; font-weight: 700; }
.kb-task-guide-card > i { margin-top: 11px; color: #93a8b7; font-size: 9px; }
.kb-admin-checklist { counter-reset: admin-check; gap: 10px; }
.kb-admin-checklist li { display: grid; grid-template-columns: 31px 1fr; gap: 12px; align-items: center; padding: 13px 15px; border-left: 3px solid #a9cfea; border-radius: 0 10px 10px 0; background: #f6fafd; }
.kb-admin-checklist li > span { display: inline-flex; width: 27px; height: 27px; align-items: center; justify-content: center; border-radius: 8px; background: #fff; box-shadow: 0 3px 9px rgba(26,70,102,.09); color: var(--kb-blue); font-size: 11px; font-weight: 800; }
.kb-admin-checklist li p { margin: 0; color: #48677d; font-size: 13px; line-height: 1.6; }
.kb-screen-table-wrap { overflow: hidden; border: 1px solid var(--kb-line); border-radius: 13px; }
.kb-screen-table { width: 100%; margin: 0; border-collapse: collapse; background: #fff; }
.kb-screen-table th { padding: 12px 15px; border-bottom: 1px solid var(--kb-line); background: #f3f8fb; color: #678094; font-size: 10px; letter-spacing: .07em; text-align: left; text-transform: uppercase; }
.kb-screen-table td { padding: 13px 15px; border-bottom: 1px solid #e9f0f5; color: #385870; font-size: 12px; }
.kb-screen-table tr:last-child td { border-bottom: 0; }
.kb-screen-table code { word-break: break-word; }
.kb-module-relations { display: grid; grid-template-columns: repeat(2,1fr); gap: 17px; }
.kb-module-relations > div { padding: 18px; border: 1px solid var(--kb-line); border-radius: 13px; background: #fbfdff; }
.kb-module-relations h3 { margin: 0 0 12px; font-size: 14px; }
.kb-module-relations a, .kb-module-relation-empty { display: grid; grid-template-columns: 31px 1fr; gap: 10px; align-items: center; padding: 10px 0; border-top: 1px solid #e7eef3; }
.kb-module-relations h3 + a, .kb-module-relations h3 + .kb-module-relation-empty { border-top: 0; }
.kb-module-relations a > i, .kb-module-relation-empty > i { display: inline-flex; width: 31px; height: 31px; align-items: center; justify-content: center; border-radius: 8px; background: var(--kb-sky); color: var(--kb-blue); font-size: 12px; }
.kb-module-relations a span, .kb-module-relation-empty span { display: flex; flex-direction: column; }
.kb-module-relations small { color: #8395a3; font-size: 9px; line-height: 1.35; text-transform: uppercase; }
.kb-module-relations strong { color: #34546d; font-size: 12px; }
.kb-module-relations a:hover strong { color: var(--kb-blue); }
.kb-module-faq { overflow: hidden; border: 1px solid var(--kb-line); border-radius: 13px; }
.kb-module-faq details { border-bottom: 1px solid var(--kb-line); background: #fff; }
.kb-module-faq details:last-child { border-bottom: 0; }
.kb-module-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 19px; color: #2d4d65; font-size: 13px; font-weight: 700; cursor: pointer; list-style: none; }
.kb-module-faq summary::-webkit-details-marker { display: none; }
.kb-module-faq summary i { color: #93a5b3; font-size: 9px; transition: transform .2s ease; }
.kb-module-faq details[open] summary i { transform: rotate(180deg); }
.kb-module-faq details p { margin: 0; padding: 0 19px 18px; color: #587185; font-size: 13px; line-height: 1.7; }
.kb-module-guides { display: grid; gap: 10px; }
.kb-module-guide { display: grid; grid-template-columns: 39px 1fr auto; gap: 13px; align-items: start; padding: 17px; border: 1px solid var(--kb-line); border-radius: 12px; background: #fff; }
.kb-module-guide:hover { border-color: #9acdf3; box-shadow: 0 10px 24px rgba(20,66,99,.06); }
.kb-module-guide__icon { display: inline-flex; width: 39px; height: 39px; align-items: center; justify-content: center; border-radius: 10px; background: var(--kb-sky); color: var(--kb-blue); }
.kb-module-guide > span:nth-child(2) { display: flex; min-width: 0; flex-direction: column; }
.kb-module-guide strong { color: #2b4a62; font-size: 13px; }
.kb-module-guide small { margin-top: 4px; color: #6f8595; font-size: 11px; line-height: 1.5; }
.kb-module-guide em { margin-top: 7px; color: #3392d7; font-size: 9px; font-style: normal; font-weight: 700; }
.kb-module-guide > i { margin-top: 13px; color: #91a5b4; font-size: 10px; }
.kb-module-aside { position: sticky; top: 105px; display: grid; gap: 14px; }
.kb-module-facts { padding: 20px; border: 1px solid var(--kb-line); border-radius: 14px; background: #f8fbfd; }
.kb-module-facts h2 { margin: 0 0 12px; font-size: 15px; }
.kb-module-facts dl { margin: 0 0 15px; }
.kb-module-facts dl div { padding: 10px 0; border-bottom: 1px solid #e1ebf2; }
.kb-module-facts dt { color: #8497a5; font-size: 9px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.kb-module-facts dd { margin: 3px 0 0; color: #38576e; font-size: 11px; line-height: 1.45; }
.kb-module-facts > a { color: var(--kb-blue); font-size: 11px; font-weight: 700; }
.kb-module-facts > a i { margin-left: 4px; font-size: 8px; }

.kb-screen-reference,
.kb-connected-module-list {
  display: grid;
  gap: 9px;
  margin: 16px 0 20px;
  padding: 0;
  list-style: none;
}
.kb-screen-reference li,
.kb-connected-module-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 13px;
  padding: 12px 14px;
  border: 1px solid #dce7f5;
  border-radius: 10px;
  background: #f7faff;
}
.kb-screen-reference code { color: #48617f; font-size: 10px; text-align: right; }
.kb-connected-module-list a { flex: 0 0 105px; font-weight: 800; }
.kb-connected-module-list span { color: #60738c; font-size: 11px; line-height: 1.5; }

@keyframes kb-loading { from { background-position: 200% 0; } to { background-position: -200% 0; } }

@media (max-width: 1199.98px) {
  .kb-article-layout { grid-template-columns: 160px minmax(0, 1fr) 190px; gap: 28px; }
  .kb-module-layout { grid-template-columns: 160px minmax(0,1fr) 190px; gap: 28px; }
}
@media (max-width: 991.98px) {
  .kb-page .navbar .navbar-brand { line-height: 72px; }
  .kb-category-grid { grid-template-columns: repeat(2, 1fr); }
  .kb-module-grid { grid-template-columns: repeat(2, 1fr); }
  .kb-role-panel { grid-template-columns: 1fr; gap: 35px; }
  .kb-article-layout { grid-template-columns: minmax(0, 1fr) 210px; }
  .kb-article-nav { display: none; }
  .kb-module-layout { grid-template-columns: minmax(0,1fr) 210px; }
  .kb-module-nav { display: none; }
}
@media (max-width: 767.98px) {
  .kb-hero { min-height: 515px; }
  .kb-hero__inner { padding-top: 24px; padding-bottom: 56px; }
  .kb-hero__copy { margin: 42px auto 23px; }
  .kb-hero h1 { font-size: 42px; }
  .kb-hero__copy p { font-size: 16px; }
  .kb-search { min-height: 61px; padding: 5px; }
  .kb-search button { width: 45px; padding: 0; font-size: 0; }
  .kb-search button::after { font-family: "Font Awesome 5 Free"; font-size: 13px; font-weight: 900; content: "\f002"; }
  .kb-search__hint { display: none; }
  .kb-search input { height: 49px; padding-right: 8px; font-size: 14px; }
  .kb-section { padding: 68px 0; }
  .kb-section-heading--row { align-items: flex-start; flex-direction: column; gap: 8px; }
  .kb-section-heading h2 { font-size: 32px; }
  .kb-category-grid, .kb-featured-grid, .kb-role-panel__groups { grid-template-columns: 1fr; }
  .kb-module-grid { grid-template-columns: 1fr; }
  .kb-category-card { min-height: 195px; }
  .kb-role-panel { padding: 32px 25px; }
  .kb-support-strip__inner { grid-template-columns: auto 1fr; }
  .kb-support-strip .btn { grid-column: 1 / -1; width: 100%; }
  .kb-article-topbar .container { min-height: 68px; }
  .kb-article-search { width: auto; flex: 1; }
  .kb-wordmark { font-size: 0; }
  .kb-wordmark span { font-size: 14px; }
  .kb-article-layout { grid-template-columns: 1fr; }
  .kb-article-aside { position: static; }
  .kb-aside-card { display: grid; grid-template-columns: auto 1fr; gap: 0 14px; }
  .kb-aside-card__icon { grid-row: 1 / 4; }
  .kb-aside-card h3 { margin: 0 0 4px; }
  .kb-aside-card p { margin-bottom: 6px; }
  .kb-article-header h1 { font-size: 36px; }
  .kb-safeguard-list { grid-template-columns: 1fr; }
  .kb-module-shell { padding-top: 18px; }
  .kb-module-hero { grid-template-columns: 1fr; padding: 32px 25px; }
  .kb-module-hero h1 { font-size: 42px; }
  .kb-module-layout { grid-template-columns: 1fr; margin-top: 42px; }
  .kb-module-aside { position: static; }
  .kb-capability-list, .kb-module-relations { grid-template-columns: 1fr; }
  .kb-task-guide-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .kb-category-grid { grid-template-columns: 1fr; }
  .kb-featured-card { grid-template-columns: 38px 1fr; }
  .kb-featured-card > i { display: none; }
  .kb-support-strip__inner { grid-template-columns: 1fr; text-align: left; }
  .kb-article-search button { width: 37px; padding: 0; font-size: 0; }
  .kb-article-search button::after { font-family: "Font Awesome 5 Free"; font-size: 11px; font-weight: 900; content: "\f002"; }
  .kb-article-shell { padding-top: 18px; }
  .kb-article-layout { margin-top: 24px; }
  .kb-feedback-actions { flex-direction: column; }
  .kb-feedback-form__footer { align-items: stretch; flex-direction: column; }
  .kb-screen-reference li, .kb-connected-module-list li { align-items: flex-start; flex-direction: column; }
  .kb-screen-reference code { text-align: left; }
}
