/* WBStat editorial pages. Scoped separately from the approved homepage.
   The catalogue data and article prose come from the live PHP section. */
.wbp-page { background:#fff; color:#26232d; --wbp-ink:#26232d; --wbp-muted:#77717f; --wbp-line:#e6e3e9; --wbp-accent:#812be4; }
.wbp-page .header { z-index:100; }
.wbp-page .wbp-current-nav { color:#fff; }
.wbp-container { width:min(1280px,calc(100% - 80px)); margin:0 auto; padding:60px 0 96px; }
.wbp-page a:focus-visible,.wbp-page button:focus-visible,.wbp-page summary:focus-visible { outline:2px solid #9d51ef; outline-offset:5px; }
.wbp-skip { position:fixed; left:16px; top:10px; z-index:200; padding:12px 20px; background:#fff; color:#24202d; transform:translateY(-160%); }
.wbp-skip:focus { transform:none; }
.wbp-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:12px; line-height:1.6; color:var(--wbp-muted); margin-bottom:36px; }
.wbp-breadcrumbs a { color:inherit; }
.wbp-breadcrumbs a:hover { color:var(--wbp-accent); }
.wbp-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:48px; align-items:stretch; }
.wbp-main-column { min-width:0; }
.wbp-label { display:block; font-size:10px; font-weight:400; line-height:1.5; letter-spacing:.15em; color:var(--wbp-muted); }
.wbp-intro { margin-bottom:30px; }
.wbp-intro h1,.wbp-prose h1 { font-size:clamp(34px,3.3vw,48px); line-height:1.12; letter-spacing:-.045em; font-weight:300; margin:17px 0 23px; color:var(--wbp-ink); }
.wbp-intro p { max-width:760px; font-size:15px; line-height:1.75; font-weight:300; color:#68626f; margin:0; }
.wbp-modes { position:relative; isolation:isolate; display:flex; gap:6px; padding:6px; margin:0 0 30px; border:1px solid var(--wbp-line); border-radius:4px; background:#faf9fb; }
.wbp-mode { position:relative; z-index:1; display:flex; justify-content:center; align-items:center; gap:9px; flex:1; min-width:0; min-height:47px; padding:10px 13px; font-size:13px; font-weight:300; line-height:1.25; color:#625b6c; transition:color .23s; border-radius:2px; }
.wbp-mode svg { flex:0 0 18px; width:18px; height:18px; }
.wbp-mode.is-active { color:#fff; background:linear-gradient(110deg,#9b2ed7,#7026d8); }
.wbp-modes.is-ready .wbp-mode.is-active { background:none; }
.wbp-modes.is-preview .wbp-mode.is-active:not(:hover):not(:focus-visible) { color:#625b6c; }
.wbp-mode:hover,.wbp-mode:focus-visible { color:#fff; }
.wbp-mode::before,.wbp-mode::after { content:none!important; }
.wbp-mode-indicator { position:absolute; left:0; top:6px; bottom:6px; width:0; border-radius:2px; background:linear-gradient(110deg,#9b2ed7,#7026d8); box-shadow:0 4px 12px #682ea926; transition:transform .26s cubic-bezier(.22,.7,.25,1),width .26s; pointer-events:none; }
.wbp-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 20px; }
.wbp-card { display:flex; flex-direction:column; min-width:0; padding:0 0 19px; border-bottom:1px solid var(--wbp-line); }
.wbp-card-image { display:block; aspect-ratio:16/9; overflow:hidden; background:#eeecef; border-radius:3px; }
.wbp-card-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.6,.3,1),filter .4s; }
.wbp-card:hover .wbp-card-image img { transform:scale(1.035); filter:brightness(1.04); }
.wbp-card h2 { margin:17px 0 20px; font-size:18px; line-height:1.45; letter-spacing:-.025em; font-weight:300; min-height:calc(1.45em * 4); }
.wbp-card h2 a { color:var(--wbp-ink); text-decoration:none; transition:color .22s; }
.wbp-card h2 a:hover { color:var(--wbp-accent); }
.wbp-card-read { margin-top:auto; display:flex; justify-content:space-between; align-items:center; gap:12px; color:#8b7c99; font-size:11px; font-weight:300; }
.wbp-card-read svg,.wbp-pagination svg,.wbp-article-topline svg { width:29px; height:18px; flex:none; transition:transform .25s; }
.wbp-card-read:hover { color:var(--wbp-accent); }
.wbp-card-read:hover svg,.wbp-pagination a:hover svg { transform:translateX(4px); }
.wbp-pagination { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--wbp-line); margin-top:40px; padding-top:24px; color:var(--wbp-muted); font-size:13px; }
.wbp-pagination__meta { color:var(--wbp-muted); font-size:12px; }
.wbp-pagination__links { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-left:auto; }
.wbp-pagination__link { display:inline-flex; align-items:center; gap:16px; color:var(--wbp-accent); font-size:15px; line-height:1.5; transition:color .2s; }
.wbp-pagination__link:hover { color:#5e1ab6; }
.wbp-pagination__link svg { width:30px; height:18px; flex:none; transition:transform .25s; }
.wbp-pagination__link.is-previous svg { transform:rotate(180deg); }
.wbp-pagination__link.is-next:hover svg { transform:translateX(4px); }
.wbp-pagination__link.is-previous:hover svg { transform:rotate(180deg) translateX(4px); }
.wbp-feed-sentinel { height:1px; width:100%; pointer-events:none; }
.wbp-feed-status { min-height:1.5em; margin:8px 0 0; color:var(--wbp-muted); font-size:12px; line-height:1.5; }
.wbp-pagination[hidden] { display:none!important; }
.wbp-search-status { margin:0 0 26px; padding:12px 0; font-size:14px; line-height:1.6; color:var(--wbp-muted); }
.wbp-page [hidden] { display:none!important; }

/* The sidebar has its own full-height track. Native sticky bounds it to the
   content, while the original v04 spring supplies the delayed follow. */
.wbp-sidebar { min-width:0; position:relative; }
.wbp-sidebar-inner { display:grid; gap:16px; align-content:start; }
.wbp-sidebar-inner.is-sticky { position:sticky; top:var(--article-sidebar-top,120px); transform:translate3d(0,var(--sidebar-follow-y,0px),0); }
.wbp-sidebar-inner.is-following { will-change:transform; }
.wbp-side-nav { padding-bottom:4px; }
.wbp-side-nav nav { display:grid; gap:3px; margin-top:12px; }
.wbp-side-nav a { display:flex; align-items:center; justify-content:space-between; gap:16px; color:#706978; font-size:13px; padding:6px 0; border-bottom:1px solid #f0edf2; transition:color .22s; }
.wbp-side-nav a[aria-current] { color:var(--wbp-accent); }
.wbp-side-nav a span { transition:transform .25s; }
.wbp-side-nav a:hover { color:var(--wbp-accent); }
.wbp-side-nav a:hover span { transform:translateX(3px); }
.wbp-search { margin:0; }
.wbp-search label { display:block; font-size:11px; color:var(--wbp-muted); margin-bottom:9px; line-height:1.5; font-weight:300; }
.wbp-search-field { display:flex; align-items:center; border:1px solid #dcd6e4; border-radius:3px; background:#fff; transition:border-color .2s,box-shadow .2s; }
.wbp-search-field:focus-within { border-color:#a260e3; box-shadow:0 0 0 3px #8d31db0d; }
.wbp-search input { width:100%; min-width:0; appearance:none; border:0; border-radius:0; background:transparent; color:var(--wbp-ink); font-family:inherit; font-weight:300; line-height:1.4; font-size:13px; padding:14px 0 14px 14px; outline:none; }
.wbp-search input::placeholder { color:#948b9e; opacity:1; }
.wbp-search button { display:grid; place-items:center; background:none; border:0; color:#8c42cd; flex:0 0 44px; width:44px; height:44px; cursor:pointer; }
.wbp-search svg { width:19px; height:19px; transition:transform .25s; }
.wbp-search button:hover svg { transform:scale(1.13); }
.wbp-coach { position:relative; padding:22px; border:1px solid #e7e1ec; background:linear-gradient(135deg,#faf8fc,#f5f2f7); border-radius:4px; }
.wbp-coach .wbp-label { color:#9554bd; font-size:9px; }
.wbp-coach h2 { font-size:28px; line-height:1.13; letter-spacing:-.04em; font-weight:300; margin:12px 0; color:#34283f; }
.wbp-coach p { font-size:12px; font-weight:300; line-height:1.65; color:#786b82; margin:0 0 20px; }
.wbp-side-button { position:relative; display:flex; align-items:center; justify-content:center; min-height:44px; padding:10px 25px 10px 12px; background:linear-gradient(110deg,#9d30db,#7927df); color:#fff; border-radius:3px; font-size:11px; font-weight:300; text-align:center; transition:transform .25s,box-shadow .25s; }
.wbp-side-button svg { position:absolute; right:10px; top:calc(50% - 7px); width:18px; height:14px; }
.wbp-side-button:hover { transform:translateY(-2px); box-shadow:0 6px 15px #732eaa26; }
.wbp-coach small { display:block; margin-top:13px; font-size:10px; line-height:1.5; font-weight:300; color:#8b7e94; }
.wbp-side-connect { display:grid; gap:8px; }
.wbp-side-connect p { margin:0 0 3px; font-size:12px; color:var(--wbp-muted); font-weight:300; }
.wbp-side-connect a { display:flex; gap:10px; align-items:center; min-height:36px; font-size:12px; color:#5a5363; transition:color .2s; }
.wbp-side-connect img { width:23px; height:23px; object-fit:contain; }
.wbp-side-connect svg { width:23px; height:16px; margin-left:auto; }
.wbp-side-connect a:hover { color:var(--wbp-accent); }
.wbp-progress { position:fixed; z-index:99; top:var(--wbp-header-bottom,89px); left:0; right:0; height:3px; background:transparent; pointer-events:none; }
.wbp-progress span { display:block; height:100%; transform-origin:left; transform:scaleX(0); background:linear-gradient(90deg,#e52b92,#8929e7); }

/* The actual PHP tree hierarchy is preserved; branches are disclosure controls. */
.wbp-tree-list { margin:0; padding:0; list-style:none; }
.wbp-tree-list .wbp-tree-list { margin:8px 0 8px 21px; padding-left:20px; border-left:1px solid #e4dce9; }
.wbp-tree-list > li { list-style:none; margin:0; padding:0; border-bottom:1px solid #efebf2; }
.wbp-tree-list .wbp-tree-list > li:last-child { border-bottom:0; }
.wbp-tree-branch > summary { list-style:none; position:relative; cursor:pointer; padding:18px 25px 18px 0; }
.wbp-tree-branch > summary::-webkit-details-marker { display:none; }
.wbp-tree-branch > summary::after { content:""; position:absolute; right:5px; top:28px; width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:6px solid #9875b1; transform:rotate(-90deg); transition:transform .2s; }
.wbp-tree-branch[open] > summary::after { transform:rotate(0deg); }
.tree-root.wbp-tree-branch > summary::after { content:none; }
.wbp-tree-content { display:block; }
.wbp-tree-leaf { padding:15px 0; }
.blog-tree-list__title { color:#413747; font-size:17px; line-height:1.4; font-weight:300; letter-spacing:-.02em; }
.blog-tree-list__title:hover { color:var(--wbp-accent); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.blog-tree-list__description { display:block; color:#8a818f; font-size:12px; line-height:1.65; font-weight:300; margin-top:6px; }
.wbp-tree-list .wbp-tree-list .blog-tree-list__title { font-size:15px; }
.wbp-tree-controls { display:flex; gap:22px; margin-bottom:15px; }
.wbp-tree-controls button { padding:5px 0; background:none; border:0; font:inherit; font-size:11px; color:#9468af; cursor:pointer; }
.wbp-tree-controls button:hover { text-decoration:underline; text-underline-offset:4px; }
.wbp-tag-directory { display:flex; gap:12px 10px; flex-wrap:wrap; align-content:flex-start; }
.wbp-tag { display:inline-flex; padding:10px 15px; background:#faf9fb; border:1px solid #e6e0ec; border-radius:3px; color:#766880; font-size:13px; line-height:1.5; font-weight:300; transition:color .2s,border-color .2s,background .2s; }
.wbp-tag:hover { color:#7b2cc8; background:#f7f2fc; border-color:#cda4ec; text-decoration:underline; text-underline-offset:4px; }

/* Long-form reading retains the live article's headings, inline TOC,
   illustrations, lists, highlighted blocks, table and tag links. */
.wbp-article-topline { display:flex; justify-content:flex-start; align-items:center; gap:16px; margin-bottom:22px; color:#716a78; font-size:15px; line-height:1.5; }
.wbp-article-topline > span[aria-hidden="true"] { color:#a329df; }
.wbp-article-topline a { display:flex; align-items:center; gap:10px; font-size:10px; color:#a18daf; }
.wbp-article-topline svg { width:22px; }
.wbp-prose { font-size:18px; line-height:1.8; font-weight:400; color:#4c4654; overflow-wrap:break-word; }
.wbp-prose h1 { margin-top:0; }
.wbp-prose > h1 { font-weight:500; }
.wbp-prose p { margin:0 0 20px; color:#4c4654; font-size:18px; line-height:1.8; font-weight:400; }
.wbp-prose strong { font-weight:500; color:#322a3a; }
.wbp-prose h2 { font-size:30px; line-height:1.2; letter-spacing:-.035em; font-weight:500; color:#302536; margin:43px 0 22px; }
.wbp-prose h3 { font-size:23px; line-height:1.35; font-weight:600; letter-spacing:-.025em; margin:30px 0 17px; color:#302536; }
.wbp-prose h4 { font-size:20px; line-height:1.35; font-weight:500; color:#302536; margin:0 0 12px; }
.wbp-prose h5 { font-size:18px; line-height:1.4; font-weight:600; color:#302536; margin:24px 0 11px; }
.wbp-prose h6 { font-size:16px; line-height:1.4; font-weight:600; color:#302536; margin:20px 0 10px; }
.wbp-prose ul,.wbp-prose ol { margin:21px 0 27px; padding-left:28px; }
.wbp-prose li { padding-left:6px; margin-bottom:13px; }
.wbp-prose li::marker { color:var(--wbp-accent); }
.wbp-prose a:not(.blog-article-tags__item) { color:#863aca; text-decoration:underline; text-decoration-color:#d5b6e8; text-decoration-thickness:1px; text-underline-offset:4px; transition:color .2s; }
.wbp-prose a:hover { color:#b52a9e; }
.wbp-prose [id] { scroll-margin-top:140px; }
.wbp-prose picture,.wbp-prose img { display:block; width:100%; height:auto; max-width:100%; }
.wbp-prose picture { margin:27px 0; border-radius:4px; overflow:hidden; }
.wbp-prose .alert { padding:25px 28px; background:#faf6f9; border-left:2px solid #c768a7; margin:30px 0; color:#706171; }
.wbp-prose .alert p:last-child { margin-bottom:0; }
.wbp-prose .blog-table-scroll { overflow-x:auto; margin:28px 0; border:1px solid var(--wbp-line); border-radius:4px; }
.wbp-prose table { display:table; width:-moz-fit-content; width:fit-content; min-width:100%; border-collapse:collapse; font-size:13px; line-height:1.65; }
.wbp-prose td,.wbp-prose th { vertical-align:top; padding:17px; border-right:1px solid var(--wbp-line); border-bottom:1px solid var(--wbp-line); min-width:145px; }
.wbp-prose th { background:#f5f0f8; font-weight:400; color:#59356d; }
.wbp-prose td:last-child,.wbp-prose th:last-child { border-right:0; }
.wbp-prose tr:last-child td { border-bottom:0; }
.wbp-prose td p,.wbp-prose th p { margin:0; }
.wbp-prose .wbp-inline-toc { padding:22px 28px 12px 43px; border:1px solid #eee8f2; border-radius:4px; background:#fcfafc; }
.wbp-prose .wbp-inline-toc li { font-size:14px; line-height:1.65; margin-bottom:10px; }
.wbp-prose .wbp-article-toc-card { position:relative; overflow:hidden; margin:34px 0 42px; padding:25px 28px 17px; border:1px solid #e4dce9; border-radius:6px; background:#fff; box-shadow:0 8px 24px #21112a0a; }
.wbp-prose .wbp-article-toc-card::before { content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,#d20bc7,#7828ff 58%,#3848ff); }
.wbp-prose .wbp-article-toc-card h2 { margin:0 0 13px; font-size:25px; line-height:1.3; font-weight:500; letter-spacing:-.03em; }
.wbp-prose .wbp-article-toc-card > ul,.wbp-prose .wbp-article-toc-card > ol { list-style:none; margin:0; padding:0; counter-reset:article-toc; }
.wbp-prose .wbp-article-toc-card li { display:flex; align-items:center; gap:14px; min-height:52px; margin:0; padding:9px 0; border-bottom:1px solid #e9e4ec; counter-increment:article-toc; }
.wbp-prose .wbp-article-toc-card li:last-child { border-bottom:0; }
.wbp-prose .wbp-article-toc-card li::before { content:counter(article-toc, decimal-leading-zero); display:grid; place-items:center; flex:0 0 38px; height:27px; border-radius:5px; background:linear-gradient(125deg,#8b2be3,#5929ce); color:#fff; font-size:12px; line-height:1; font-weight:500; }
.wbp-prose .wbp-article-toc-card a { color:#5c5364; font-size:18px; line-height:1.5; text-decoration:none; text-underline-offset:4px; }
.wbp-prose .wbp-article-toc-card a:hover { color:#7626d6; text-decoration:underline; }
.wbp-prose .blog-article-tags__items { display:flex; flex-wrap:wrap; gap:8px; margin:15px 0 30px; }
.wbp-prose .blog-article-tags__item { display:inline-flex; font-size:12px; font-weight:300; line-height:1.5; padding:6px 10px; color:#9567ac; border:1px solid #eadfee; border-radius:3px; }
.wbp-prose .social { margin-top:36px; color:#72627e; font-size:17px; }
.wbp-side-toc { border-top:1px solid #e5dce9; border-bottom:1px solid #e5dce9; }
.wbp-side-toc summary { font-size:14px; color:#79518c; cursor:pointer; padding:13px 5px 13px 0; }
.wbp-side-toc .wbp-inline-toc { padding:0 0 8px 15px; margin:0; }
.wbp-side-toc li { margin-bottom:9px; font-size:13px; line-height:1.55; color:#8a7696; }
.wbp-side-toc a { display:block; color:#8a7696; transition:color .2s; }
.wbp-side-toc a[aria-current] { color:#8d27dc; }
.wbp-share { display:flex; align-items:center; gap:24px; font-size:12px; color:#8d7e96; border-top:1px solid var(--wbp-line); padding-top:22px; }
.wbp-share a { display:flex; gap:8px; align-items:center; color:#766385; }
.wbp-share img { width:24px; height:24px; }
.wbp-related { border-top:1px solid var(--wbp-line); margin-top:52px; padding-top:30px; }
.wbp-related header h2 { font-size:31px; font-weight:400; letter-spacing:-.04em; margin:13px 0 26px; }
.wbp-related .wbp-card h2 { font-size:20px; line-height:1.45; min-height:calc(1.45em * 3); }
.wbp-related .wbp-card-image--placeholder { position:relative; display:flex; align-items:flex-end; padding:20px; background:radial-gradient(circle at 76% 28%,#8d36d4 0 2%,transparent 36%),linear-gradient(135deg,#24182d,#44305a 68%,#241a33); }
.wbp-related .wbp-card-image--placeholder::before { content:"WBStat.PRO"; color:#fff; font-size:16px; font-weight:400; letter-spacing:.14em; }
@media(min-width:1800px) { .wbp-container { width:min(1440px,calc(100% - 120px)); } .wbp-layout { grid-template-columns:minmax(0,1fr) 300px; gap:64px; } }
@media(max-width:1100px) { .wbp-container { width:calc(100% - 48px); } .wbp-layout { grid-template-columns:minmax(0,1fr) 245px; gap:28px; } .wbp-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .wbp-mode { padding:10px 8px; gap:6px; font-size:11px; } .wbp-mode svg { width:15px; height:15px; flex-basis:15px; } .wbp-coach { padding:21px 18px; } .wbp-coach h2 { font-size:26px; } .wbp-related .wbp-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; } .wbp-related .wbp-card h2 { font-size:14px; } }
@media(max-width:800px) {
 .wbp-container { padding:48px 0 60px; width:calc(100% - 40px); }
 .wbp-breadcrumbs { margin-bottom:27px; font-size:10px; }
 .wbp-layout { display:flex; flex-direction:column; gap:45px; }
 .wbp-intro h1,.wbp-prose h1 { font-size:38px; }
 .wbp-intro p { font-size:14px; }
 .wbp-mode { font-size:12px; gap:8px; }
 .wbp-mode svg { width:18px; height:18px; flex-basis:18px; }
 .wbp-sidebar-inner,.wbp-sidebar-inner.is-sticky { position:static; transform:none; display:grid; grid-template-columns:1fr 1fr; gap:24px; }
 .wbp-sidebar .wbp-side-nav { display:none; }
 .wbp-search { grid-column:1/-1; }
 .wbp-sidebar .wbp-side-toc { grid-column:1/-1; }
 .wbp-side-connect { align-self:center; }
 .wbp-search-field input { padding-block:16px; }
 .wbp-coach { min-width:0; }
 .wbp-prose { font-size:16px; line-height:1.85; }
 .wbp-prose p { font-size:16px; line-height:1.85; }
 .wbp-prose h2 { font-size:29px; }
 .wbp-page--article .wbp-sidebar { border-top:1px solid var(--wbp-line); padding-top:30px; }
}
@media(max-width:520px) {
 .wbp-container { width:calc(100% - 36px); padding-top:43px; }
 .wbp-intro { margin-bottom:25px; }
 .wbp-intro h1,.wbp-prose h1 { font-size:32px; line-height:1.12; letter-spacing:-.045em; }
 .wbp-intro p { font-size:13px; line-height:1.75; }
 .wbp-label { font-size:9px; }
 .wbp-modes { gap:0; padding:4px; margin-bottom:26px; }
 .wbp-mode { gap:6px; flex-direction:column; min-height:65px; padding:8px 3px; font-size:10px; text-align:center; }
 .wbp-mode-indicator { top:4px; bottom:4px; }
 .wbp-card-grid { grid-template-columns:1fr; gap:28px; }
 .wbp-card { padding-bottom:20px; }
 .wbp-card h2 { font-size:21px; line-height:1.35; min-height:0; margin:17px 0 19px; }
 .wbp-card-read { font-size:12px; }
 .wbp-pagination { align-items:flex-start; flex-direction:column; font-size:12px; gap:12px; }
 .wbp-pagination__links { width:100%; gap:12px; margin:0; }
 .wbp-pagination__link { gap:8px; font-size:13px; }
 .wbp-pagination__link svg { width:22px; }
 .wbp-sidebar-inner,.wbp-sidebar-inner.is-sticky { grid-template-columns:1fr; }
 .wbp-coach { padding:25px; }
 .wbp-coach h2 { font-size:30px; }
 .wbp-side-button { min-height:47px; font-size:12px; }
 .wbp-side-connect { padding:0 5px; }
 .wbp-tree-list .wbp-tree-list { margin-left:8px; padding-left:11px; }
 .blog-tree-list__title { font-size:16px; }
 .blog-tree-list__description { font-size:11px; }
 .wbp-tree-list .wbp-tree-list .blog-tree-list__title { font-size:14px; }
 .wbp-tag-directory { gap:9px 7px; }
 .wbp-tag { font-size:12px; padding:9px 12px; }
 .wbp-article-topline { margin-bottom:17px; }
 .wbp-article-topline a { font-size:9px; gap:6px; }
 .wbp-prose { font-size:15px; line-height:1.85; }
 .wbp-prose p { font-size:15px; line-height:1.85; }
 .wbp-prose h2 { font-size:25px; margin-top:34px; }
 .wbp-prose h3 { font-size:20px; }
 .wbp-prose h4 { font-size:18px; }
 .wbp-prose h5 { font-size:17px; }
 .wbp-prose h6 { font-size:15px; }
 .wbp-prose .alert { padding:21px 20px; }
 .wbp-prose .wbp-inline-toc { padding:18px 18px 8px 33px; }
 .wbp-prose .wbp-inline-toc li { font-size:12px; }
 .wbp-prose .wbp-article-toc-card { margin:28px 0 34px; padding:22px 18px 12px; }
 .wbp-prose .wbp-article-toc-card h2 { font-size:23px; }
 .wbp-prose .wbp-article-toc-card li { gap:11px; min-height:42px; }
 .wbp-prose .wbp-article-toc-card a { font-size:14px; }
 .wbp-prose td,.wbp-prose th { padding:13px; min-width:130px; }
 .wbp-related .wbp-card-grid { grid-template-columns:1fr; gap:24px; }
 .wbp-related .wbp-card { display:grid; grid-template-columns:120px minmax(0,1fr); gap:0 15px; padding-bottom:20px; }
 .wbp-related .wbp-card-image { grid-row:1/3; align-self:start; }
 .wbp-related .wbp-card h2 { min-height:0; margin:0 0 13px; font-size:14px; line-height:1.4; }
 .wbp-related .wbp-card-read { font-size:10px; }
 .wbp-related .wbp-card-read svg { width:21px; }
}
@media(prefers-reduced-motion:reduce) { .wbp-page *, .wbp-page *::before, .wbp-page *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }

.wbp-mobile-search {display:none}
@media(max-width:800px){.wbp-mobile-search {display:block;margin:-7px 0 28px}.wbp-sidebar [data-local-search] {display:none}}

/* Reference search: original field and action, WBStat colours. */
.wbp-page .wbp-search label { color:#5f566b; font-size:11px; font-weight:400; margin-bottom:10px; }
.wbp-page .wbp-search-field { min-height:48px; padding:4px; border:1px solid #d6cddd; border-radius:100px; background:#fff; overflow:visible; transition:border-color .2s,box-shadow .2s; }
.wbp-page .wbp-search-field:hover { border-color:#aa86c6; }
.wbp-page .wbp-search-field:focus-within { border-color:#8b35cf; box-shadow:0 0 0 4px #812be414; }
.wbp-page .wbp-search input { padding:9px 10px 9px 13px; color:#29232f; font-size:13px; font-weight:400; line-height:1.45; }
.wbp-page .wbp-search input::placeholder { color:#716778; opacity:1; }
.wbp-page .wbp-search button { width:38px; height:38px; flex:0 0 38px; padding:0; border:0; border-radius:50%; background:linear-gradient(115deg,#c800cf,#8224ef 62%,#4246f2); color:#fff; transition:filter .2s,box-shadow .2s; }
.wbp-page .wbp-search button:is(:hover,:focus-visible) { background:linear-gradient(115deg,#c800cf,#8224ef 62%,#4246f2); filter:brightness(1.1); box-shadow:0 0 0 3px #812be416; }
.wbp-page .wbp-search button:focus-visible { outline:2px solid #8224d4; outline-offset:4px; }
.wbp-page .wbp-search button svg { width:18px; height:18px; }
.wbp-page .wbp-search-status { color:#584c65; font-weight:400; }

/* More readable editorial text, without changing the approved layout. */
.wbp-page{--wbp-ink:#201927;--wbp-muted:#5e5368}
.wbp-intro h1{color:#201927;font-weight:400}
.wbp-intro p{color:#403747;font-weight:400}
.wbp-card h2{font-weight:400}
.wbp-card h2 a{color:#211a28}
.wbp-card-read{color:#664285;font-weight:400}
.wbp-article-topline a{color:#644077}

.wbp-search-all { display:block; margin:10px 0 25px; color:#7026d8; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
.wbp-server-search { max-width:760px; margin:0 0 24px; }
.wbp-tree-controls { display:flex; gap:18px; margin:0 0 18px; }
.wbp-tree-controls button { padding:5px 0; color:#7026d8; background:none; border:0; font:inherit; font-size:12px; cursor:pointer; }
