/* Every rule is scoped. No global theme, menu, or page-builder resets. */
.ugkb {
  --ug-bg: #fff; --ug-panel: #f5f7fa; --ug-hover: #eef6f8; --ug-text: #1d2939;
  --ug-muted: #58677b; --ug-line: #dce3ec; --ug-accent: #087988; --ug-tint: #e5f5f7;
  color: var(--ug-text); background: var(--ug-bg); border-radius: 14px;
  font-family: inherit; font-weight: 400; line-height: 1.6; font-size: 16px;
  text-align: left; isolation: isolate; padding: 24px; margin: 0;
  max-width: none; width: 100%; box-sizing: border-box; container: ugkb / inline-size;
}
.scheme_dark .ugkb[data-ugkb-theme="auto"]:not([data-ugkb-color]),
[data-theme="dark"] .ugkb[data-ugkb-theme="auto"]:not([data-ugkb-color]),
.ugkb[data-ugkb-theme="dark"], .ugkb[data-ugkb-color="dark"] {
  --ug-bg: #1b1e29; --ug-panel: #222633; --ug-hover: #282e3d; --ug-text: #eef3fa;
  --ug-muted: #b6c0d2; --ug-line: #353d4e; --ug-accent: #46cee0; --ug-tint: #14323b;
  color-scheme: dark;
}
.ugkb[data-ugkb-theme="light"], .ugkb[data-ugkb-color="light"] { color-scheme: light; }
.ugkb-shell { width: 100%; max-width: none; min-width: 0; margin: 0; }
/* Only expand theme content wrappers that contain our dedicated template. */
body.ugkb-view .content_wrap:has(#ugkb-main),
body.ugkb-view .content:has(#ugkb-main) { width: 100%; max-width: none; min-width: 0; }
/* Alliance renders this widget sidebar from its footer, after our content wrapper. */
body.ugkb-view .page_content_wrap > .content_wrap > .sidebar,
body.ugkb-view .page_content_wrap > .content_wrap > .sidebar.widget_area { display: none !important; }
body.ugkb-view a[href="#sidebar_skip_link_anchor"] { display: none !important; }
body.ugkb-view .page_content_wrap > .content_wrap:has(> .sidebar):not(:has(> :not(.sidebar))) { display: none !important; }
body.ugkb-view .page_content_wrap .content:has(#ugkb-main) { float: none; margin-right: 0; }
.ugkb.ugkb-single { padding: 0; background: transparent; border-radius: 0; }
.ugkb-skip { position: absolute; top: 0; left: -10000px; }
.ugkb-skip:focus { position: relative; left: 0; display: block; padding: 12px; background: var(--ug-panel); }
.ugkb-preview-note { font: 12px/1.5 system-ui, sans-serif; padding: 7px 12px; margin: 0 0 12px; color: #526174; background: #eef3f7; border: 1px solid #dce3ec; border-radius: 7px; }
.scheme_dark .ugkb-preview-note, [data-theme="dark"] .ugkb-preview-note { color: #b6c0d2; background: #1b1e29; border-color: #353d4e; }
/* Keep inherited theme animations out of control colors and theme changes. */
.ugkb, .ugkb button, .ugkb button span, .ugkb-search, .ugkb-search input, .ugkb-card, .ugkb-card > summary, .ugkb-start {
  transition: none !important; animation: none !important;
}

.ugkb *, .ugkb *::before, .ugkb *::after { box-sizing: border-box; }
.ugkb [hidden] { display: none !important; }
.ugkb h1, .ugkb h2, .ugkb h3, .ugkb h4 { color: var(--ug-text); font-family: inherit; font-weight: 700; line-height: 1.2; letter-spacing: -.025em; text-transform: none; }
.ugkb a { color: inherit; text-decoration: none; box-shadow: none; }
.ugkb a:hover { color: var(--ug-accent); }
.ugkb a:focus-visible, .ugkb button:focus-visible, .ugkb input:focus-visible, .ugkb summary:focus-visible { outline: 3px solid var(--ug-accent); outline-offset: 4px; }
#ugkb-main .ugkb button, .ugkb button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: auto; opacity: 1; -webkit-text-fill-color: currentColor; color: var(--ug-btn-text, var(--ug-text)) !important; background: var(--ug-btn-bg, var(--ug-panel)) !important; font: inherit; letter-spacing: normal !important; text-transform: none !important; cursor: pointer; box-shadow: none; text-shadow: none; min-width: 0; }
.ugkb button::before, .ugkb button::after { content: none; }
.ugkb .ugkb-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.ugkb-hero { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 32px; align-items: center; padding-bottom: 22px; }
.ugkb-hero-copy, .ugkb-hero-search { min-width: 0; }
.ugkb-eyebrow { display: flex; align-items: center; gap: 9px; color: var(--ug-accent); font-size: 13px; font-weight: 700; letter-spacing: .13em; margin-bottom: 10px; }
.ugkb-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--ug-accent); }
.ugkb-hero h1 { font-size: clamp(28px, 2.5vw, 36px); margin: 0 0 12px; }
.ugkb-hero p { color: var(--ug-muted); font-size: 15px; margin: 0 0 12px; max-width: 80ch; }
.ugkb-search { display: flex; align-items: center; gap: 12px; border: 1px solid var(--ug-line); background: var(--ug-panel); border-radius: 12px; padding: 6px 6px 6px 16px; margin: 0; width: 100%; max-width: none; min-width: 0; }
.ugkb-search:focus-within { border-color: var(--ug-accent); box-shadow: 0 0 0 2px var(--ug-tint); }
.ugkb-search svg { flex: 0 0 21px; color: var(--ug-muted); }
.ugkb .ugkb-search input[type="search"] { min-width: 0; flex: 1 1 0%; width: 0; height: 38px; font: inherit; color: var(--ug-text); background: transparent; border: none; border-radius: 0; padding: 0; outline: none; box-shadow: none; letter-spacing: normal; text-indent: 0; -webkit-text-fill-color: var(--ug-text); }
.ugkb-search input::placeholder { color: var(--ug-muted); opacity: 1; font-size: 14px; }
.ugkb .ugkb-search button { flex: 0 0 auto; --ug-btn-text: #09212a; --ug-btn-bg: #26bfd1; border: none; border-radius: 8px; min-height: 38px; padding: 8px 16px; font-size: 14px; line-height: 1.3; font-weight: 600; }
.ugkb .ugkb-search button:hover { --ug-btn-bg: #60d9e6; }
.ugkb-search button span { margin: 0; color: inherit !important; }
.ugkb-stats { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 12px; color: var(--ug-muted); margin-top: 14px; }
.ugkb-stats span + span::before { content: '·'; margin-right: 18px; }
.ugkb-start { display: inline-flex; align-items: center; gap: 8px; color: var(--ug-accent) !important; font-size: 13px; font-weight: 600; }
.ugkb-section-head { border-top: 1px solid var(--ug-line); padding-top: 20px; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 17px; }
.ugkb-section-head h2 { font-size: 20px; margin: 0; }
.ugkb-section-head > span { font-size: 12px; color: var(--ug-muted); }
.ugkb-filters { display: none; flex-wrap: wrap; gap: 7px; margin-bottom: 18px; }
.ugkb-ready .ugkb-filters { display: flex; }
.ugkb .ugkb-filters button { --ug-btn-bg: transparent; --ug-btn-text: var(--ug-muted); border: 1px solid var(--ug-line); border-radius: 8px; padding: 7px 11px; line-height: 1.4; font-size: 13px; font-weight: 550; }
.ugkb .ugkb-filters button[aria-pressed="true"] { --ug-btn-bg: var(--ug-tint); --ug-btn-text: var(--ug-accent); border-color: var(--ug-accent); }
.ugkb .ugkb-filters button:hover { --ug-btn-text: var(--ug-text); border-color: var(--ug-muted); }
.ugkb-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: start; }
.ugkb-card { padding: 0; border: 1px solid var(--ug-line); background: var(--ug-panel); border-radius: 10px; min-width: 0; }
.ugkb-card > summary { position: relative; display: block; list-style: none; cursor: pointer; padding: 16px 40px 16px 18px; min-height: 104px; }
.ugkb-card > summary::-webkit-details-marker { display: none; }
.ugkb-card > summary:hover { background: var(--ug-hover); border-radius: 10px; }
.ugkb-card-toggle { position: absolute; right: 16px; top: 37px; font-size: 22px; line-height: 1; color: var(--ug-accent); }
.ugkb-card[open] { grid-column: 1 / -1; border-color: var(--ug-accent); }
.ugkb-card[open] .ugkb-card-toggle { transform: rotate(45deg); }
.ugkb-card-kicker { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--ug-muted); font-size: 11px; line-height: 1.4; margin-bottom: 8px; }
.ugkb-card-kicker > span { flex: 0 0 auto; font-size: 12px; color: var(--ug-muted); }
.ugkb-card h3 { font-size: 16px; line-height: 1.4; margin: 0; }
.ugkb-card-content { padding: 0 18px 16px; }
.ugkb-card ul, .ugkb-nav-group ul { list-style: none; padding: 0; margin: 0; }
.ugkb-card-content ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; }
.ugkb-card li, .ugkb-nav-group li { list-style: none; margin: 0; padding: 0; }
.ugkb-card li::before, .ugkb-nav-group li::before { content: none; }
.ugkb-card li { border-top: 1px solid var(--ug-line); }
.ugkb-card li a { display: flex; gap: 12px; justify-content: space-between; align-items: start; padding: 11px 0; font-size: 14px; line-height: 1.55; }
.ugkb-topic-link { display: inline-block; color: var(--ug-accent) !important; font-size: 13px; margin-top: 12px; }
.ugkb-link-arrow { color: var(--ug-accent); flex: 0 0 auto; opacity: .6; }
.ugkb-card li a:hover .ugkb-link-arrow { opacity: 1; }
.ugkb-bottom { display: flex; gap: 12px; justify-content: space-between; border-top: 1px solid var(--ug-line); padding-top: 16px; margin-top: 24px; font-size: 13px; color: var(--ug-muted); }
.ugkb-bottom a { font-size: 12px; letter-spacing: .07em; }
.ugkb-back { display: inline-block; font-size: 13px; font-weight: 550; color: var(--ug-accent) !important; margin-bottom: 18px; }
.ugkb-results h2 { font-size: 23px; margin: 15px 0 20px; }
.ugkb-result-count { font-size: 12px; color: var(--ug-muted); }
.ugkb-result { display: block; padding: 20px; background: var(--ug-panel); border: 1px solid var(--ug-line); border-radius: 10px; margin-bottom: 10px; }
.ugkb-result h3 { font-size: 18px; margin: 5px 0 8px; }
.ugkb-result p { font-size: 14px; line-height: 1.65; color: var(--ug-muted); margin: 0; }
.ugkb-result small { font-size: 13px; color: var(--ug-accent); }
.ugkb-empty { padding: 24px 0; color: var(--ug-muted); }
.ugkb-pagination { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 20px; }
.ugkb-pagination a { border: 1px solid var(--ug-line); border-radius: 6px; padding: 7px 12px; }
.ugkb-pagination [aria-current] { background: var(--ug-tint); color: var(--ug-accent); }
.ugkb-article-top { display: flex; align-items: center; gap: 24px; justify-content: space-between; border: 1px solid var(--ug-line); border-radius: 14px; padding: 12px 18px; margin-bottom: 16px; background: var(--ug-bg); }
.ugkb-article-top .ugkb-back { margin: 0; flex: 0 0 auto; }
.ugkb-article-top .ugkb-search { width: min(620px, 65%); max-width: none; }
.ugkb-reading-layout { display: grid; grid-template-columns: minmax(0,1fr) 270px; grid-template-areas: "article rail"; gap: 18px; align-items: start; }
.ugkb-rail { grid-area: rail; min-width: 0; position: sticky; top: 100px; display: flex; flex-direction: column; gap: 12px; }
.ugkb-sidebar { min-width: 0; font-size: 14px; }
.ugkb-mobile-nav { padding: 16px; background: var(--ug-bg); border: 1px solid var(--ug-line); border-radius: 14px; }
.ugkb-mobile-nav > summary { color: var(--ug-muted); font-size: 14px; font-weight: 600; padding: 0; cursor: pointer; }
.ugkb-mobile-nav[open] > summary { margin-bottom: 12px; }
.ugkb-mobile-nav > nav { max-height: min(55vh, calc(100vh - 280px), 520px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; padding-right: 5px; }
.ugkb-nav-root { border-bottom: 1px solid var(--ug-line); padding: 10px 0; }
.ugkb-nav-root > summary { font-size: 15px; line-height: 1.55; color: var(--ug-text); font-weight: 600; cursor: pointer; }
.ugkb-nav-group { margin: 12px 0 8px; }
.ugkb-nav-group > summary { cursor: pointer; font-size: 13px; color: var(--ug-muted); line-height: 1.5; font-weight: 600; padding: 8px 0; }
.ugkb-nav-group a { display: flex; gap: 7px; font-size: 14px; line-height: 1.65; padding: 7px; border-radius: 6px; color: var(--ug-muted); }
.ugkb-nav-group .ugkb-link-arrow { display: none; }
.ugkb-nav-group a[aria-current] { color: var(--ug-accent); background: var(--ug-tint); }
.ugkb-article { grid-area: article; min-width: 0; padding: clamp(24px, 2.5vw, 44px); background: var(--ug-bg); border: 1px solid var(--ug-line); border-radius: 14px; }
.ugkb-article > * { max-width: 960px; margin-left: auto; margin-right: auto; }
.ugkb-article textarea, .ugkb-article input { max-width: 100%; box-sizing: border-box; }
.ugkb-breadcrumb { display: flex; gap: 8px; flex-wrap: wrap; font-size: 13px; color: var(--ug-muted); margin-bottom: 17px; }
.ugkb-article-header h1 { font-size: clamp(26px, 2.5vw, 38px); line-height: 1.2; margin: 0 0 19px; overflow-wrap: anywhere; }
.ugkb-meta { display: flex; flex-wrap: wrap; gap: 15px; font-size: 13px; color: var(--ug-muted); padding-bottom: 25px; margin-bottom: 26px; border-bottom: 1px solid var(--ug-line); }
.ugkb-prose { color: var(--ug-text); font-size: 18px; line-height: 1.8; overflow-wrap: break-word; }
.ugkb-prose p { margin: 0 0 1.25em; font-size: inherit; line-height: inherit; }
.ugkb-prose h2 { font-size: 25px; margin: 1.7em 0 .7em; scroll-margin-top: 110px; }
.ugkb-prose h3 { font-size: 20px; margin: 1.5em 0 .6em; scroll-margin-top: 110px; }
.ugkb-prose h4 { font-size: 17px; margin: 1.3em 0 .5em; }
.ugkb-prose a { color: var(--ug-accent); text-decoration: underline; text-underline-offset: 3px; }
.ugkb-prose ul, .ugkb-prose ol { padding-left: 1.5em; margin: 1em 0 1.5em; }
.ugkb-prose li { margin-bottom: .5em; }
.ugkb-prose img { max-width: 100%; height: auto; border-radius: 8px; }
.ugkb-prose iframe, .ugkb-prose video { max-width: 100%; }
.ugkb-prose pre { overflow-x: auto; background: var(--ug-panel); padding: 18px; border-radius: 8px; font-size: 13px; }
.ugkb-prose blockquote { margin: 24px 0; background: var(--ug-panel); border-left: 3px solid var(--ug-accent); padding: 20px 24px; font: inherit; color: var(--ug-text); border-radius: 0 8px 8px 0; }
.ugkb-prose blockquote p:last-child { margin-bottom: 0; }
.ugkb-table-scroll, .ugkb-prose .wp-block-table { overflow-x: auto; margin: 24px 0; }
.ugkb-prose table { width: 100%; border-collapse: collapse; font-size: 13px; line-height: 1.65; margin: 0; color: var(--ug-text); }
.ugkb-prose th, .ugkb-prose td { border: 1px solid var(--ug-line); padding: 12px 14px; vertical-align: top; color: var(--ug-text); background: transparent; }
.ugkb-prose th { background: var(--ug-panel); font-weight: 600; }
.ugkb-prose .alignwide, .ugkb-prose .alignfull { width: 100%; max-width: 100%; margin-left: 0; margin-right: 0; }
.ugkb-toc { min-width: 0; }
.ugkb-toc-inner { padding: 16px; background: var(--ug-bg); border: 1px solid var(--ug-line); border-radius: 14px; }
.ugkb-toc-inner > summary { font-size: 14px; font-weight: 700; cursor: pointer; }
.ugkb-toc-inner[open] > summary { margin-bottom: 16px; }
.ugkb-toc nav { max-height: calc(100vh - 280px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; border-left: 1px solid var(--ug-line); padding-right: 5px; }
.ugkb-toc nav a { display: block; font-size: 13px; color: var(--ug-muted); padding: 7px 0 7px 12px; line-height: 1.55; border-left: 2px solid transparent; margin-left: -1px; }
.ugkb-toc nav a[data-level="3"] { padding-left: 23px; font-size: 12px; }
.ugkb-toc nav a[aria-current] { color: var(--ug-accent); border-color: var(--ug-accent); }
.ugkb-to-top { display: inline-block; font-size: 13px; color: var(--ug-muted) !important; margin-top: 16px; }
.ugkb-share { margin-top: 35px; padding: 18px 0; border-top: 1px solid var(--ug-line); display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.ugkb-share > span { color: var(--ug-muted); font-size: 12px; }
.ugkb .ugkb-share button { border: 1px solid var(--ug-line); --ug-btn-bg: var(--ug-panel); --ug-btn-text: var(--ug-accent); padding: 11px 14px; font-size: 13px; border-radius: 7px; }
.ugkb-adjacent { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 12px; }
.ugkb-adjacent a { padding: 18px; border: 1px solid var(--ug-line); border-radius: 10px; background: var(--ug-panel); }
.ugkb-adjacent a span { display: block; color: var(--ug-accent); font-size: 12px; margin-bottom: 8px; }
.ugkb-adjacent a strong { font-size: 14px; line-height: 1.6; display: block; font-weight: 550; }
.ugkb-adjacent .ugkb-next { grid-column: 2; }
#ugkb-main .ugkb .ugkb-filters button, .ugkb .ugkb-filters button { font-size: 13px; font-weight: 500; }
#ugkb-main .ugkb .ugkb-search button, .ugkb .ugkb-search button { font-size: 14px; font-weight: 600; }
#ugkb-main .ugkb .ugkb-share button, .ugkb .ugkb-share button { font-size: 13px; font-weight: 500; }
/* Container widths include the site's sidebar; viewport-only breakpoints do not. */
@container ugkb (min-width: 1400px) {
  .ugkb-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@container ugkb (max-width: 1000px) {
  .ugkb-hero { grid-template-columns: 1fr; gap: 18px; }
  .ugkb-reading-layout { grid-template-columns: minmax(0,1fr); grid-template-areas: "rail" "article"; gap: 14px; }
  .ugkb-rail { position: static; }
  .ugkb-mobile-nav > nav { max-height: 55vh; overflow-y: auto; }
  .ugkb-article-top { gap: 14px; align-items: stretch; flex-direction: column; }
  .ugkb-article-top .ugkb-search { width: 100%; }
  .ugkb-section-head > span { display: none; }
  .ugkb-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@container ugkb (max-width: 540px) {
  .ugkb-hero h1 { font-size: 28px; }
  .ugkb-hero p { font-size: 15px; }
  .ugkb-grid, .ugkb-card-content ul { grid-template-columns: 1fr; }
  .ugkb-grid { gap: 10px; }
  .ugkb-card > summary { min-height: 90px; padding: 14px 40px 14px 16px; }
  .ugkb-card-content { padding: 0 16px 14px; }
  .ugkb-card li a { font-size: 14px; }
  .ugkb .ugkb-search { gap: 8px; padding-left: 10px; }
  .ugkb .ugkb-search input[type="search"] { font-size: 16px; }
  .ugkb-search input::placeholder { font-size: 14px; }
  .ugkb .ugkb-search button { min-height: 42px; padding: 10px 14px; }
  .ugkb-search button span, .ugkb-search svg { display: none; }
  .ugkb-article-top { padding: 14px; }
  .ugkb-article { padding: 22px 18px; }
  .ugkb-article-header h1 { font-size: 28px; }
  .ugkb-stats { font-size: 12px; gap: 8px 11px; }
  .ugkb-stats span + span::before { margin-right: 11px; }
  .ugkb-section-head h2 { font-size: 20px; }
  .ugkb-filters { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; gap: 6px; scrollbar-width: thin; }
  .ugkb .ugkb-filters button { flex: 0 0 auto; min-height: 42px; padding: 9px 11px; }
  .ugkb-prose { font-size: 17px; line-height: 1.8; }
  .ugkb-prose h2 { font-size: 24px; }
  .ugkb-adjacent { grid-template-columns: 1fr; }
  .ugkb-adjacent .ugkb-next { grid-column: auto; }
  .ugkb-bottom { flex-direction: column; gap: 8px; }
}
@media (max-width: 600px) {
  .ugkb { padding: 22px 16px; border-radius: 12px; }
}
@media print {
  .ugkb-sidebar, .ugkb-toc, .ugkb-article-top, .ugkb-share, .ugkb-adjacent, .ugkb-preview-note { display: none !important; }
  .ugkb-reading-layout { display: block; }
  .ugkb { --ug-bg: #fff; --ug-text: #000; --ug-muted: #333; --ug-panel: #fff; --ug-line: #ccc; --ug-accent: #000; padding: 0; }
}
