/* Knowledge base: paper, sage and editorial rules shared with the public site. */
.kb-intro{padding-top:64px;padding-bottom:32px;max-width:1000px}
.kb-intro h1{font-size:clamp(2.5rem,6vw,4.8rem);line-height:1.08;margin:18px 0 24px;letter-spacing:-.04em;overflow-wrap:anywhere;hyphens:auto}
.kb-lead{font:1.5rem/1.4 Georgia,'Times New Roman',serif}
.kb-intro p{max-width:730px}
.kb-library{max-width:1000px;padding-bottom:80px}
.kb-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,240px) auto;gap:16px;align-items:end;padding:24px;background-color:var(--soft,#eaf0e6);background-image:linear-gradient(#173e3509 1px,transparent 1px),linear-gradient(90deg,#173e3509 1px,transparent 1px);background-size:20px 20px;border:1px solid var(--line,#d7ded4);border-radius:var(--radius,7px)}
.kb-controls[hidden],.kb-answer[hidden],#kb-empty[hidden]{display:none}
.kb-controls>div{min-width:0}
.kb-controls label{display:block;font-size:.875rem;line-height:1.45;margin-bottom:8px}
.kb-controls input,.kb-controls select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:12px;background:var(--white,#fffef9);color:var(--ink,#193e35);border:1px solid #718078;border-radius:4px;font:inherit}
.kb-controls input::placeholder{color:#596b61;opacity:1}
.kb-controls button{min-height:48px;font-size:.875rem;white-space:normal;text-align:start}
.kb-controls :focus-visible,.kb-answer summary:focus-visible,.kb-library a:focus-visible,.kb-bridge a:focus-visible{outline:3px solid #a7502e;outline-offset:4px}
#kb-count{font-size:.875rem;margin:22px 0;color:var(--body,#50615a);font-variant-numeric:tabular-nums}
#kb-empty{padding:20px 24px;background:var(--soft,#eaf0e6);border-left:3px solid #a7502e}
.kb-answer{border-top:1px solid var(--line,#d7ded4);scroll-margin-top:110px}
.kb-answer:last-child{border-bottom:1px solid var(--line,#d7ded4)}
.kb-answer summary{padding:22px 40px 22px 0;cursor:pointer;list-style:none;position:relative;font-size:1.18rem;line-height:1.4;overflow-wrap:anywhere;hyphens:auto}
.kb-answer summary::-webkit-details-marker{display:none}
.kb-answer summary::after{content:'+';position:absolute;right:8px;top:35px;font-size:1.5rem;line-height:1;color:#a7502e}
.kb-answer[open] summary::after{content:'−'}
.kb-answer[open]{background:var(--white,#fffef9)}
.kb-answer:target{border-top-color:#a7502e}
.kb-topic{display:block;color:var(--body,#50615a);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}
.kb-answer-body{max-width:70ch;padding:0 36px 26px 0;line-height:1.75;overflow-wrap:anywhere}
.kb-answer-body p{margin:0 0 18px}
.kb-answer-body a{color:var(--ink,#193e35);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.kb-answer-body a:hover{text-decoration-thickness:2px}
.kb-permalink{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
.kb-scope{margin-top:32px;font-size:.9rem;max-width:760px}
.kb-review{font-size:.8125rem;color:var(--body,#50615a)}
.kb-library>.text-link,.kb-bridge .text-link{min-height:44px}
.kb-bridge{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid var(--line,#d7ded4);border-bottom:1px solid var(--line,#d7ded4);padding-top:24px;padding-bottom:24px;margin-top:32px;margin-bottom:36px}
.kb-bridge>div{min-width:0}
.kb-bridge p{margin:6px 0 0;font-size:.9rem}
.kb-offer{max-width:760px;font-size:1rem;line-height:1.6}
.kb-bridge .text-link{flex-shrink:0}
@media(hover:hover){.kb-answer summary:hover{color:#275b46;background:var(--soft,#eaf0e6)}}
@media(max-width:900px){.kb-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.kb-controls button{grid-column:1/-1;justify-self:start}}
@media(max-width:760px){.kb-intro{padding-top:32px}.kb-controls{grid-template-columns:minmax(0,1fr);padding:18px;gap:14px}.kb-controls button{justify-self:start}.kb-bridge{align-items:flex-start;flex-direction:column;gap:16px}.kb-bridge .text-link{max-width:100%;overflow-wrap:anywhere}.kb-answer summary{font-size:1.05rem}.kb-answer-body{padding-right:12px}}
@media(prefers-reduced-motion:reduce){.kb-controls .button{transition:none}.kb-controls .button:hover{transform:none}}
@media print{.kb-controls,.kb-permalink,#kb-count{display:none}.kb-answer{break-inside:avoid}.kb-answer[open]{background:transparent}}
