.kb-home,.kb-article-page{background:var(--cream-light);padding:0 0 4rem;color:var(--ink)}.kb-home .container,.kb-article-page .container{max-width:1180px}.kb-employee-line{display:flex;flex-wrap:wrap;gap:.35rem .55rem;align-items:center;padding:1rem 0 .55rem;font-size:.82rem;color:#647589}.kb-employee-line a{color:var(--teal);font-weight:700;text-decoration:none}.kb-employee-line a:hover{text-decoration:underline}.kb-hero{padding:1rem 0 2.3rem}.kb-hero h1{margin:.15rem 0 .5rem;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.05}.kb-hero-lede{max-width:760px;margin:0 0 1.6rem;color:#5e7085;font-size:1.05rem}.kb-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;max-width:900px;border:1px solid #cdd8e4;border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 8px 28px rgba(24,54,82,.08)}.kb-search-row input{width:100%;border:0!important;outline:0;padding:1rem 1.1rem;font-size:1.05rem;background:transparent}.kb-search-row button{border:0;padding:0 1.6rem;background:var(--teal);color:#fff;font-weight:800;cursor:pointer}.kb-search-row button:hover{background:var(--teal-dark)}.kb-start-here{margin:1rem 0 0;font-size:.95rem;color:#66768a}.kb-start-here a{color:var(--teal);font-weight:800}.kb-section{padding:2rem 0;border-top:1px solid #e0e7ef}.kb-section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:1rem}.kb-section-heading h2{margin:0;font-size:1.45rem}.kb-section-heading a{font-size:.9rem}.kb-popular-list{columns:2;column-gap:3.5rem;margin:0;padding-left:1.5rem}.kb-popular-list li{break-inside:avoid;margin:.55rem 0;padding-left:.15rem}.kb-popular-list a{color:#1d4f9a;text-decoration:none;font-weight:600}.kb-popular-list a:hover{text-decoration:underline}.kb-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.kb-category-tile{display:flex;min-height:150px;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:1.4rem;border:1px solid #e0e7ef;border-radius:12px;background:#fff;color:#24364b;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.kb-category-tile:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 10px 24px rgba(24,54,82,.08)}.kb-category-tile svg{width:52px;color:var(--teal)}.kb-category-tile span{font-weight:800}.kb-result-list{display:grid;gap:.65rem}.kb-result-row{position:relative;padding:1rem 1.15rem;border:1px solid #dfe7ef;border-radius:10px;background:#fff}.kb-result-row p{margin:0 0 .25rem;color:var(--teal);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.kb-result-row h3{margin:0;font-size:1.15rem}.kb-result-row h3 a{color:#173d6d;text-decoration:none}.kb-result-row h3 a:hover{text-decoration:underline}.kb-internal-pill{display:inline-block;margin-top:.5rem;padding:.15rem .45rem;border-radius:999px;background:#e8f3dd;color:#467b20;font-size:.72rem;font-weight:800}.kb-empty{color:#718096}.kb-article-container{max-width:900px!important}.kb-back{margin:.4rem 0 1.25rem}.kb-back a{color:#4d6782;text-decoration:none}.kb-article{padding:2rem 2.3rem;border:1px solid #dfe7ef;border-radius:14px;background:#fff;box-shadow:0 10px 30px rgba(24,54,82,.06)}.kb-article h1{margin:.25rem 0 .6rem;font-size:clamp(2rem,4vw,3.2rem)}.kb-article-tags{color:#6f7f90;font-size:.86rem}.kb-article-body{margin-top:2rem;font-size:1.03rem;line-height:1.75}.kb-article-body pre{overflow:auto}.kb-article-body img{max-width:100%;height:auto}@media(max-width:850px){.kb-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-popular-list{columns:1}}@media(max-width:560px){.kb-search-row{grid-template-columns:1fr}.kb-search-row button{padding:.85rem}.kb-category-grid{grid-template-columns:1fr 1fr}.kb-article{padding:1.4rem}.kb-category-tile{min-height:120px}}

/* Category drill-down pages */
.kb-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  align-items: center;
  padding: .7rem 0 0;
  font-size: .86rem;
  color: #6b7d90;
}

.kb-breadcrumbs a {
  color: #4d6782;
  text-decoration: none;
}

.kb-breadcrumbs a:hover {
  text-decoration: underline;
}

.kb-category-header {
  padding: 1.4rem 0 1.5rem;
}

.kb-category-header h1 {
  margin: .15rem 0 .45rem;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.08;
}

.kb-category-header > p:last-child {
  margin: 0;
  color: #5e7085;
}

.kb-subcategory-grid {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}

.kb-subcategory-grid a {
  display: inline-flex;
  padding: .6rem .85rem;
  border: 1px solid #dbe5ee;
  border-radius: 999px;
  background: #fff;
  color: #173d6d;
  font-weight: 700;
  text-decoration: none;
}

.kb-subcategory-grid a:hover {
  border-color: var(--gold);
  background: #f7fbf2;
}

.kb-result-count {
  color: #718096;
  font-size: .86rem;
}

/* KB article code and callout enhancements */
.kb-article-body .kb-code-block {
  position: relative;
  margin: 1.5rem 0;
}

.kb-article-body .kb-code-block pre {
  margin: 0;
  padding: 1.15rem 6rem 1.15rem 1.25rem;
  overflow-x: auto;
  border: 1px solid #263d57;
  border-radius: 10px;
  background: #14263a;
  color: #f4f7fa;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: .92rem;
  line-height: 1.6;
  tab-size: 4;
  white-space: pre;
}

.kb-article-body .kb-code-block pre code {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}

.kb-article-body .kb-copy-button {
  position: absolute;
  top: .65rem;
  right: .7rem;
  z-index: 1;
  min-width: 4.25rem;
  padding: .35rem .65rem;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 6px;
  background: rgba(255,255,255,.08);
  color: #eef4f8;
  font: inherit;
  font-size: .76rem;
  font-weight: 700;
  cursor: pointer;
}

.kb-article-body .kb-copy-button:hover,
.kb-article-body .kb-copy-button:focus-visible {
  background: rgba(255,255,255,.16);
}

.kb-article-body .kb-copy-button.is-copied {
  border-color: rgba(169,207,123,.7);
}

.kb-article-body :not(pre) > code {
  padding: .12em .38em;
  border: 1px solid #d5dee8;
  border-radius: 5px;
  background: #eef3f7;
  color: #173d6d;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: .9em;
  white-space: break-spaces;
}

.kb-article-body .kb-note-callout {
  margin: 1.35rem 0;
  padding: .9rem 1.05rem;
  border-left: 4px solid #8eac58;
  border-radius: 0 8px 8px 0;
  background: #f5f8ef;
  color: #33465a;
}

.kb-article-body .kb-note-callout > :first-child {
  margin-top: 0;
}

.kb-article-body .kb-note-callout > :last-child {
  margin-bottom: 0;
}

.kb-article-body ol,
.kb-article-body ul {
  padding-left: 1.7rem;
}

.kb-article-body li > ol,
.kb-article-body li > ul {
  margin-top: .45rem;
  margin-bottom: .45rem;
}

/* KB article link visibility */
.kb-article-body a {
  color: #175b8f;
  text-decoration-line: underline;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
  text-decoration-color: rgba(23, 91, 143, .55);
}

.kb-article-body a:hover,
.kb-article-body a:focus-visible {
  color: #0f456f;
  text-decoration-color: currentColor;
}

.kb-article-body a:focus-visible {
  outline: 2px solid rgba(142, 172, 88, .65);
  outline-offset: 3px;
  border-radius: 2px;
}

.kb-article-body .kb-external-link::after {
  content: '↗';
  display: inline-block;
  margin-left: .18em;
  font-size: .72em;
  line-height: 1;
  vertical-align: super;
  opacity: .65;
  text-decoration: none;
}

/* Compact Quick Start banner on the KB index. */
.kb-home .kb-start-here {
  display: block;
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
  margin: 1.25rem 0 0;
  padding: .8rem 1.05rem;
  border: 1px solid #b8c9df;
  border-left: 4px solid #173d6d;
  border-radius: 4px;
  background: #eaf1f9;
  color: #173d6d;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.kb-home .kb-start-here a {
  color: #173d6d;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: .16em;
}

.kb-home .kb-start-here a:hover {
  color: #0d284b;
}

.kb-home .kb-start-here a:focus-visible {
  outline: 2px solid #173d6d;
  outline-offset: 3px;
  border-radius: 2px;
}

/* Fit the knowledge base into the COBOLworx page grid. */
.kb-home .container,.kb-article-page .container{width:min(1180px,calc(100% - 2rem));margin-inline:auto}

/* Saved preview body shares the outer article's layout without a second card. */
body.saved-kb-preview { margin:0; padding:0; background:#fff; min-height:0; }
.saved-kb-preview .kb-article-page,
.saved-kb-preview .kb-article-container,
.saved-kb-preview .kb-article { margin:0; padding:0; max-width:none; width:100%; border:0; box-shadow:none; background:#fff; }
.saved-kb-preview .kb-article > h1 { display:none; }
.saved-kb-preview .kb-article-body { display:flow-root; }

/* Markdown tables: shared by the KB reader and both isolated previews. */
.kb-article-body .kb-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  margin: 1.25rem 0;
  -webkit-overflow-scrolling: touch;
}
.kb-article-body .kb-table-scroll table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  font-size: .95rem;
}
.kb-article-body .kb-table-scroll th,
.kb-article-body .kb-table-scroll td {
  padding: .65rem .85rem;
  border: 1px solid #cdd8e4;
  text-align: left;
  vertical-align: top;
}
.kb-article-body .kb-table-scroll th {
  background: #eaf1f9;
  font-weight: 700;
}
.kb-article-body .kb-table-scroll .kb-table-align-left { text-align: left; }
.kb-article-body .kb-table-scroll .kb-table-align-center { text-align: center; }
.kb-article-body .kb-table-scroll .kb-table-align-right { text-align: right; }
