/* Client help: task directory and answer search share the approved site palette. */
html:root body#top.kb-page main#main-content { color:var(--ui-ink); background:var(--ui-page); }
html:root body#top.kb-page main#main-content > .section-light { padding:20px 0 64px!important; background:var(--ui-page)!important; }
html:root body#top.kb-page main#main-content .kb-directory { max-width:1440px; }
html:root body#top.kb-page main#main-content .kb-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:40px 72px; align-items:center; padding:24px 0 36px; }
html:root body#top.kb-page:not(.admin-page):not(.cabinet-page) main#main-content h1 { margin:0!important; font:400 clamp(32px,4vw,60px)/1.12 var(--ui-font-display)!important; letter-spacing:-.02em!important; text-transform:none!important; color:var(--ui-ink)!important; }
html:root body#top.kb-page main#main-content :is(h2,h3) { color:var(--ui-ink)!important; font-family:var(--ui-font)!important; letter-spacing:-.025em!important; text-transform:none!important; }
html:root body#top.kb-page main#main-content .kb-hero p { max-width:55ch; margin:0!important; font:400 17px/1.65 var(--ui-font)!important; color:var(--ui-muted)!important; }

/* Native disclosure stays usable without JS; the existing index controller handles focus. */
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index { margin:0!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index > summary { display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:56px; margin:0; padding:12px 0!important; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; background:transparent!important; color:var(--ui-ink)!important; font:600 15px/1.5 var(--ui-font); list-style:none; cursor:pointer; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index > summary::-webkit-details-marker { display:none; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index > summary::marker { content:''; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index > summary::after { content:none!important; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index > summary > span { width:8px; height:8px; margin-right:4px; border-right:1.5px solid; border-bottom:1.5px solid; transform:rotate(45deg); }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index[open] > summary > span { transform:rotate(225deg); }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav { display:flex!important; flex-wrap:wrap; gap:0 28px!important; margin:0!important; padding:0 0 16px!important; border:0; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav a { display:inline-flex!important; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:12px 0!important; border:0!important; border-bottom:1px solid var(--ui-line)!important; border-radius:0!important; background:transparent!important; color:var(--ui-ink)!important; box-shadow:none!important; transform:none!important; font:500 14px/1.45 var(--ui-font)!important; text-decoration:none; white-space:normal; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav i { display:none; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav a span { font-size:16px; font-weight:400; }

html:root body#top.kb-page main#main-content .kb-group { display:grid; grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); gap:28px 64px; padding:36px 0!important; border:0!important; border-bottom:1px solid var(--ui-line)!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; scroll-margin-top:96px; }
html:root body#top.kb-page main#main-content .kb-group__head h2 { margin:0 0 12px!important; font:600 clamp(23px,2vw,28px)/1.25 var(--ui-font)!important; }
html:root body#top.kb-page main#main-content .kb-group__head p { max-width:35ch; margin:0!important; color:var(--ui-muted)!important; font:400 15px/1.6 var(--ui-font)!important; }
html:root body#top.kb-page main#main-content .kb-resources { min-width:0; }
html:root body#top.kb-page main#main-content .kb-resource { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; padding:20px 0; border:0!important; border-bottom:1px solid var(--ui-line)!important; border-radius:0!important; background:transparent!important; color:var(--ui-ink)!important; text-decoration:none; box-shadow:none!important; transform:none!important; }
html:root body#top.kb-page main#main-content .kb-resource:first-child { padding-top:0; }
html:root body#top.kb-page main#main-content .kb-resource:last-child { padding-bottom:0; border-bottom:0!important; }
html:root body#top.kb-page main#main-content .kb-resource__copy { min-width:0; }
html:root body#top.kb-page main#main-content .kb-resource h3 { margin:0 0 8px!important; font:600 20px/1.35 var(--ui-font)!important; text-decoration:underline; text-decoration-color:transparent; text-underline-offset:5px; transition:text-decoration-color .18s ease-out; }
html:root body#top.kb-page main#main-content .kb-resource p { max-width:64ch; margin:0!important; font:400 15px/1.6 var(--ui-font)!important; color:var(--ui-muted)!important; }
html:root body#top:is(.kb-page,.faq-page) main#main-content .help-arrow { flex:none; font:400 24px/1.2 var(--ui-font); color:var(--ui-muted); transition:transform .18s ease-out,color .18s ease-out; }
html:root body#top.kb-page main#main-content .kb-group--start { grid-template-columns:minmax(0,1fr); padding-top:24px!important; }
html:root body#top.kb-page main#main-content .kb-group--start .kb-group__head { display:flex; justify-content:space-between; gap:20px 48px; align-items:start; }
html:root body#top.kb-page main#main-content .kb-group--start .kb-group__head p { max-width:46ch; }
html:root body#top.kb-page main#main-content .kb-group--start .kb-resources { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
html:root body#top.kb-page main#main-content .kb-resource--lead { padding:26px!important; border:1px solid var(--ui-line)!important; border-radius:4px!important; background:var(--ui-page)!important; box-shadow:0 8px 24px rgba(0,0,0,.045)!important; }
html:root body#top.kb-page main#main-content .kb-resource--lead h3 { font-size:clamp(22px,2vw,28px)!important; margin-bottom:12px!important; }
html:root body#top.kb-page main#main-content .kb-resource--wide { grid-column:1/-1; padding:22px 0 0; }
html:root body#top.kb-page main#main-content .kb-guidance { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:32px; padding:32px 0 0!important; border:0!important; background:transparent!important; box-shadow:none!important; }
html:root body#top.kb-page main#main-content .kb-guidance h2 { margin:0 0 12px!important; font:600 23px/1.3 var(--ui-font)!important; }
html:root body#top.kb-page main#main-content .kb-guidance p { max-width:78ch; margin:0!important; color:var(--ui-muted)!important; font:400 15px/1.65 var(--ui-font)!important; }
html:root body#top:is(.kb-page,.faq-page) main#main-content :is(.help-contact-link,.help-reference-link) { display:inline-flex; align-items:center; min-height:44px; gap:16px; color:var(--ui-ink)!important; font:500 15px/1.5 var(--ui-font); text-decoration:underline; text-underline-offset:5px; text-decoration-color:var(--ui-line); }

html:root body#top.faq-page.client-master main#main-content .help-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:40px 72px; align-items:center; padding:24px 0 32px!important; margin:0!important; }
html:root body#top.faq-page.client-master main#main-content .help-hero h1 { margin:0 0 20px!important; }
html:root body#top.faq-page.client-master main#main-content .help-hero__copy p { max-width:55ch; margin:0!important; font:400 17px/1.65 var(--ui-font)!important; color:var(--ui-muted)!important; }
html:root body#top.faq-page.client-master main#main-content .help-hero__search { min-width:0; padding-left:28px; border-left:1px solid var(--ui-line); }
html:root body#top.faq-page.client-master main#main-content .help-hero .faq-search { grid-template-columns:minmax(0,1fr); gap:8px; width:100%; max-width:none; margin:0!important; }
html:root body#top.faq-page.client-master main#main-content .help-hero #faqReset { justify-self:start; min-height:36px; }
html:root body#top.faq-page.client-master main#main-content .help-hero #faqResultStatus { min-height:0; }
html:root body#top.faq-page.client-master main#main-content .help-hero .help-reference-link { margin-top:12px; }
html:root body#top.faq-page.client-master:not(.admin-page):not(.cabinet-page) main#main-content .help-index .mini-row { margin:0!important; padding:0 0 12px!important; }
html:root body#top.faq-page.client-master main#main-content .faq-topics { margin-top:0!important; }
html:root body#top.faq-page.client-master main#main-content .faq-topics > .faq-topic:first-child { margin-top:24px; }
html:root body#top.faq-page.client-master main#main-content .faq-topic { scroll-margin-top:96px; }
html:root body#top.faq-page.client-master main#main-content .faq-topic-head { gap:16px 40px; align-items:center; margin-bottom:20px; }
html:root body#top.faq-page.client-master main#main-content .faq-topic-head .hint { max-width:52ch; color:var(--ui-muted); font:400 14px/1.6 var(--ui-font); }
html:root body#top:is(.kb-page,.faq-page) main#main-content :is(a,summary):focus-visible { outline:2px solid var(--ui-ink)!important; outline-offset:5px; }

@media (hover:hover) and (pointer:fine) {
 html:root body#top.kb-page main#main-content .kb-resource:hover h3 { text-decoration-color:currentColor; }
 html:root body#top.kb-page main#main-content .kb-resource:hover .help-arrow { transform:translate(2px,-2px); color:var(--ui-ink); }
 html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav a:hover { border-bottom-color:var(--ui-ink)!important; }
}
@media(min-width:701px) {
 html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index[data-catalog-index-ready] > summary:not(:focus) { display:none; }
}
@media(max-width:1000px) {
 html:root body#top.kb-page main#main-content .kb-hero { gap:32px; }
 html:root body#top.kb-page main#main-content .kb-group { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:24px 36px; }
 html:root body#top.kb-page main#main-content .kb-group--start { grid-template-columns:minmax(0,1fr); }
 html:root body#top.faq-page.client-master main#main-content .help-hero { grid-template-columns:minmax(0,1fr); gap:24px; }
 html:root body#top.faq-page.client-master main#main-content .help-hero__search { padding-left:0; border-left:0; max-width:760px; }
}
@media(max-width:700px) {
 html:root body#top.kb-page main#main-content > .section-light { padding:0 0 40px!important; }
 html:root body#top.kb-page main#main-content .breadcrumb { padding:0; margin-bottom:12px; }
 html:root body#top.kb-page main#main-content .kb-hero { grid-template-columns:minmax(0,1fr); gap:16px; padding:12px 0 24px; }
 html:root body#top.kb-page:not(.admin-page):not(.cabinet-page) main#main-content h1 { font-size:clamp(28px,6vw,38px)!important; }
 html:root body#top.kb-page main#main-content .kb-hero p { font-size:16px!important; }
 html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav { display:grid!important; grid-template-columns:minmax(0,1fr); gap:0!important; padding:0 0 12px!important; }
 html:root body#top.faq-page.client-master:not(.admin-page):not(.cabinet-page) main#main-content .help-index .mini-row { grid-template-columns:minmax(0,1fr)!important; margin:0!important; }
 html:root body#top:is(.kb-page,.faq-page) main#main-content .help-index nav a { width:auto!important; text-align:left!important; }
 html:root body#top.kb-page main#main-content .kb-group { grid-template-columns:minmax(0,1fr); gap:24px; padding:28px 0!important; }
 html:root body#top.kb-page main#main-content .kb-group__head h2 { font-size:23px!important; }
 html:root body#top.kb-page main#main-content .kb-group__head p { max-width:none; }
 html:root body#top.kb-page main#main-content .kb-group--start .kb-group__head { display:block; }
 html:root body#top.kb-page main#main-content .kb-group--start .kb-resources { grid-template-columns:minmax(0,1fr); gap:12px; }
 html:root body#top.kb-page main#main-content .kb-resource--lead { padding:20px!important; }
 html:root body#top.kb-page main#main-content .kb-resource--wide { padding-top:12px; }
 html:root body#top.kb-page main#main-content .kb-resource h3 { font-size:19px!important; }
 html:root body#top.kb-page main#main-content .kb-resource--lead h3 { font-size:23px!important; }
 html:root body#top.kb-page main#main-content .kb-guidance { grid-template-columns:minmax(0,1fr); gap:16px; padding-top:28px!important; }
 html:root body#top.faq-page.client-master main#main-content .help-hero { padding:12px 0 24px!important; gap:20px; }
 html:root body#top.faq-page.client-master:not(.admin-page):not(.cabinet-page) main#main-content > .section-light { margin-top:0!important; padding-top:0!important; }
 html:root body#top.faq-page.client-master main#main-content .faq-wrap { padding-top:0!important; }
 html:root body#top.faq-page.client-master main#main-content .help-hero__copy p { font-size:16px!important; }
 html:root body#top.faq-page.client-master main#main-content .faq-topic-head { align-items:flex-start; gap:8px; }
 html:root body#top.faq-page.client-master main#main-content .faq-topic-head :is(h2,.hint) { margin:0!important; }
}
@media(prefers-reduced-motion:reduce) {
 html:root body#top.kb-page main#main-content :is(.kb-resource h3,.help-arrow) { transition:none!important; transform:none!important; }
}
