/* Documentation layout built on the approved main-site shell and typography. */
.cp-kb { --kb-ink:#061711; --kb-muted:#526056; --kb-rule:#c1cabd; --kb-paper:#faf7f0; --kb-mint:#dceddc; color:var(--kb-ink); background:var(--kb-paper); }
.cp-kb [hidden] { display:none!important; }
.cp-kb .screen-reader-text { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.cp-kb #main { min-height:55vh; }
.cp-kb-hero { padding:66px 0 54px; background:var(--kb-mint); border-bottom:1px solid var(--kb-ink); }
.cp-kb-hero h1 { margin:14px 0;font-size:clamp(40px,5.4vw,76px);letter-spacing:-.055em;line-height:1.05;max-width:950px; }
.cp-kb-hero h1>span { color:#fe5706; }
.cp-kb-lead { font-size:20px;line-height:1.6;color:var(--kb-muted);margin:0 0 26px; }
.cp-kb-search { position:relative;max-width:560px;width:100%;z-index:15; }
.cp-kb-search--large { max-width:760px; }
.cp-kb-search form { display:flex;gap:0;min-height:52px;background:#fffefa;border:1px solid var(--kb-ink); }
.cp-kb-search input { flex:1;min-width:0;border:0;border-radius:0;padding:15px 18px;background:transparent;font:inherit;color:var(--kb-ink); }
.cp-kb-search .button { border:0;border-left:1px solid var(--kb-ink);margin:0;white-space:nowrap; }
.cp-kb-search input:focus { outline:2px solid #21442d;outline-offset:-3px; }
.cp-kb-search-results { position:absolute;top:calc(100% + 5px);left:0;right:0;max-height:min(460px,65vh);overflow-y:auto;padding:18px;background:#fffefa;border:1px solid var(--kb-ink);box-shadow:5px 5px 0 rgba(6,23,17,.12); }
.cp-kb-search-status { font-size:12px;color:var(--kb-muted);margin:0 0 10px; }
.cp-kb-search-results ul { list-style:none;margin:0 0 14px;padding:0; }
.cp-kb-search-results li+li { border-top:1px solid var(--kb-rule); }
.cp-kb-search-results li a { display:block;padding:13px 5px;font-size:15px;line-height:1.4;text-decoration:none;color:var(--kb-ink); }
.cp-kb-search-results li a:hover,.cp-kb-search-results li a:focus-visible { background:var(--kb-mint); }
.cp-kb-start-links,.cp-kb-all-docs { display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:24px;font-size:14px; }
.cp-kb-start-links a { color:var(--kb-ink);text-decoration:underline;text-underline-offset:5px; }
.cp-kb-toolbar { border-bottom:1px solid var(--kb-rule);padding:22px 0;background:#fffefa; }
.cp-kb-toolbar>.container { display:flex;align-items:center;justify-content:space-between;gap:28px; }
.cp-kb-breadcrumb { display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:13px; }
.cp-kb-breadcrumb a { color:var(--kb-ink); }
.cp-kb-breadcrumb>span { color:var(--kb-muted); }
.cp-kb-layout { display:grid;grid-template-columns:190px minmax(0,1fr) 180px;gap:34px;padding-top:42px;padding-bottom:72px;align-items:start; }
.cp-kb-topics,.cp-kb-toc { position:sticky;top:100px;min-width:0;max-height:calc(100vh - 120px);overflow:auto;scrollbar-width:thin; }
.cp-kb-topics details,.cp-kb-toc details { border:0;background:transparent; }
.cp-kb-topics summary,.cp-kb-toc summary { display:flex;align-items:center;justify-content:space-between;list-style:none;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:0 0 16px;cursor:pointer; }
.cp-kb-topics summary::-webkit-details-marker,.cp-kb-toc summary::-webkit-details-marker { display:none; }
.cp-kb-topics nav,.cp-kb-toc nav { display:flex;flex-direction:column;border-top:1px solid var(--kb-rule);padding-top:10px; }
.cp-kb-topics nav>a { display:flex;justify-content:space-between;gap:8px;padding:9px 7px;font-size:13px;line-height:1.5;color:var(--kb-muted);text-decoration:none;border-left:2px solid transparent; }
.cp-kb-topics nav>a>span { font-size:11px;color:var(--kb-muted); }
.cp-kb-topics nav>a:hover,.cp-kb-topics nav>a[aria-current] { background:var(--kb-mint);border-left-color:var(--kb-ink);color:var(--kb-ink); }
.cp-kb-toc nav>a { display:block;padding:8px 0;font-size:12px;line-height:1.5;color:var(--kb-muted);text-decoration:none;overflow-wrap:anywhere; }
.cp-kb-toc nav>a:hover { color:var(--kb-ink);text-decoration:underline; }
.cp-kb-toc nav>a[data-level="3"] { padding-left:10px; }
.cp-kb-toc nav>a[data-level="4"],.cp-kb-toc nav>a[data-level="5"],.cp-kb-toc nav>a[data-level="6"] { padding-left:18px; }
.cp-kb-article,.cp-kb-listing { min-width:0; }
.cp-kb-listing { grid-column:2/-1; overflow-wrap:anywhere; }
.cp-kb-article-heading { border-bottom:1px solid var(--kb-rule);padding:0 0 26px;margin-bottom:28px; }
.cp-kb-article-heading h1,.cp-kb-content h1 { font-size:clamp(30px,3vw,44px)!important;letter-spacing:-.045em!important;line-height:1.15!important;color:var(--kb-ink)!important; }
.cp-kb-content { font-size:16px;line-height:1.85;overflow-wrap:anywhere; }
.cp-kb-content h2 { font-size:27px;line-height:1.25;margin:38px 0 18px;letter-spacing:-.03em; }
.cp-kb-content h3 { font-size:21px;line-height:1.35;margin:28px 0 14px; }
.cp-kb-content h4,.cp-kb-content h5,.cp-kb-content h6 { font-size:17px;line-height:1.5;margin:25px 0 12px; }
.cp-kb-content :is(h1,h2,h3,h4,h5,h6),.cp-kb-heading-anchor { scroll-margin-top:115px; }
.cp-kb-content p { margin:0 0 20px; }
.cp-kb-content a { color:#21442d;text-decoration:underline;text-underline-offset:3px; }
.cp-kb-content ul,.cp-kb-content ol { padding-left:24px;margin:0 0 22px; }
.cp-kb-content li { margin:7px 0; }
.cp-kb-content img { max-width:100%;height:auto; }
.cp-kb-content figure { max-width:100%;margin:24px 0; }
.cp-kb-content iframe,.cp-kb-content video { max-width:100%; }
.cp-kb-content iframe { width:100%;aspect-ratio:16/9; }
.cp-kb-content pre { max-width:100%;overflow:auto;padding:22px;background:#edf1e8;border:1px solid var(--kb-rule);font-size:13px;line-height:1.8;white-space:pre; }
.cp-kb-content code { font-size:.86em;overflow-wrap:anywhere; }
.cp-kb-content :not(pre)>code { padding:2px 5px;background:#edf1e8;border:1px solid #dce2d5; }
.cp-kb-content pre code { border:0;padding:0;background:transparent;font-size:inherit;white-space:inherit; }
.cp-kb-content table { display:block;max-width:100%;overflow:auto;border-collapse:collapse; }
.cp-kb-content td,.cp-kb-content th { padding:12px;border:1px solid var(--kb-rule);text-align:left; }
.cp-kb-content blockquote { margin:25px 0;padding:20px 24px;border-left:3px solid var(--kb-ink);background:var(--kb-mint); }
.cp-kb-content .enlighter-default { max-width:100%;overflow-x:auto; }
.cp-kb-results-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px; }
.cp-kb-result { display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:25px;border:1px solid var(--kb-rule);background:#fffefa; }
.cp-kb-result h2,.cp-kb-result h3 { font-size:23px;line-height:1.3;letter-spacing:-.035em;margin:10px 0 18px; }
.cp-kb-result h2>a,.cp-kb-result h3>a { color:var(--kb-ink);text-decoration:none; }
.cp-kb-result p { color:var(--kb-muted);line-height:1.7;max-width:100%;overflow-wrap:anywhere; }
.cp-kb-result .text-link { margin-top:auto; }
.cp-kb-results-list { display:grid;gap:18px; }
.cp-kb-empty { padding:32px;background:var(--kb-mint);border:1px solid var(--kb-rule);overflow-wrap:anywhere; }
.cp-kb .pagination { margin:30px 0; }
.cp-kb .nav-links { display:flex;flex-wrap:wrap;gap:8px; }
.cp-kb .page-numbers { padding:10px 15px;border:1px solid var(--kb-rule);text-decoration:none;color:var(--kb-ink); }
.cp-kb .page-numbers.current { background:var(--kb-ink);color:var(--kb-paper); }
.cp-kb-comments { margin-top:44px;padding-top:30px;border-top:1px solid var(--kb-rule); }
.cp-kb-comments input:not([type="checkbox"]),.cp-kb-comments textarea { max-width:100%;padding:12px;border:1px solid var(--kb-rule);font:inherit;background:#fffefa; }
.cp-kb-comments textarea { width:100%; }
.cp-kb-comments label { display:block;font-size:14px;margin-bottom:8px; }
.cp-kb-comments .submit { background:var(--kb-ink)!important;color:var(--kb-paper);cursor:pointer; }

/* Echo keeps its own DOM hooks, queries, ordering, links and article features. */
.cp-kb-directory :is(#epkb-main-page-container,#epkb-content-container,#epkb-content-container section) { max-width:none!important;background:transparent!important; }
.cp-kb-directory :is(#epkb_search_form,#epkb-search-main-page-container,.epkb-doc-search-container) { display:none!important; }
.cp-kb-directory :is(.epkb-section-container,.epkb-top-category-box,.epkb-category-box) { border-radius:0!important;border-color:var(--kb-rule)!important;box-shadow:none!important;background:#fffefa!important; }
.cp-kb-directory :is(h2,h3,h4,.epkb-cat-name) { color:var(--kb-ink)!important;font-family:inherit!important;letter-spacing:-.025em!important; }
.cp-kb-directory :is(a,li,p),.cp-kb-directory span:not(.epkbfa):not([class*="ep_font_"]) { font-family:inherit!important; }
.cp-kb-directory a { color:var(--kb-ink)!important; }
.cp-kb-directory :is(.epkb-show-all-articles,.epkb-article-count) { color:var(--kb-muted)!important; }
.cp-kb-content :is(#eckb-article-content,#eckb-article-body,#eckb-article-page-container-v2,#eckb-article-content-body,.eckb-article-body) { width:auto!important;max-width:100%!important;margin:0!important;padding:0!important;background:transparent!important; }
.cp-kb-content #eckb-article-content { border:0!important;border-radius:0!important;box-shadow:none!important; }
.cp-kb-content #eckb-article-content-breadcrumb-container { display:none!important; }
.cp-kb-content #eckb-article-content-header-row-1 { justify-content:flex-end; }
/* The existing WP custom CSS resets every descendant to Inter, including icon fonts. */
.cp-kb #eckb-article-page-container-v2 .epkbfa,.cp-kb-directory .epkbfa { font-family:FontAwesome!important; }
.cp-kb #eckb-article-page-container-v2 [class*="ep_font_"],.cp-kb-directory [class*="ep_font_"] { font-family:ep_icons!important; }
.cp-kb-content #eckb-article-content-header-v2 { border-color:var(--kb-rule)!important; }
.cp-kb-content #eckb-article-page-container-v2 .eckb-meta-data-feature { color:var(--kb-muted)!important; }
.cp-kb-content #eckb-article-page-container-v2 .eckb-print-button-container { border:1px solid var(--kb-rule);border-radius:0;background:transparent;color:var(--kb-ink);padding:6px 10px; }
.cp-kb-content :is(#eckb-article-content h1,#eckb-article-content h2,#eckb-article-content h3,#eckb-article-content p,#eckb-article-content li) { font-family:inherit!important;color:var(--kb-ink)!important; }
.cp-kb-content :is(.eckb-article-toc,.epkb-toc) { display:none!important; }
.cp-kb-content .elementor { --e-global-color-primary:#061711;--e-global-color-secondary:#21442d;--e-global-color-text:#526056;--e-global-color-accent:#fe5706; }
.cp-kb-content .elementor :is(.elementor-heading-title,.elementor-widget-container) { font-family:inherit!important; }
.cp-kb-content .elementor .elementor-button { border-radius:0;background:#fe5706;color:var(--kb-ink);font-family:inherit; }
@media(max-width:1180px) { .cp-kb-layout { grid-template-columns:175px minmax(0,1fr);gap:26px; }.cp-kb-toc { position:static;grid-column:2;grid-row:1;max-height:none; }.cp-kb-article { grid-column:2; }.cp-kb-topics { grid-row:1/3; }.cp-kb-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .cp-kb-hero { padding:42px 0 34px; }.cp-kb-lead { font-size:17px; }.cp-kb-toolbar>.container { align-items:stretch;flex-direction:column;gap:16px; }.cp-kb-layout { display:flex;flex-direction:column;gap:24px;padding-top:25px; }.cp-kb-topics,.cp-kb-toc { position:static;width:100%;max-height:none; }.cp-kb-topics nav { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }.cp-kb-article,.cp-kb-listing { width:100%; }.cp-kb-toc { order:-1; }.cp-kb-topics { order:-2; }.cp-kb-content { font-size:15px;line-height:1.8; }.cp-kb-content h2 { font-size:24px; }.cp-kb-search .button { padding:12px 14px; }.cp-kb-search input { padding:12px; }.cp-kb-results-grid { grid-template-columns:1fr; }.cp-kb-result { padding:22px; }.cp-kb-start-links { gap:12px;flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .cp-kb *, .cp-kb *::before, .cp-kb *::after { scroll-behavior:auto!important; } }
@media(max-width:760px) {
 .cp-kb-topics summary,.cp-kb-toc summary { padding:14px 0;border-bottom:1px solid var(--kb-rule); }
 .cp-kb-topics details[open] summary,.cp-kb-toc details[open] summary { border-bottom:0; }
}
