.khs-search { --khs-ink: #17334a; --khs-border: #a3aeb6; color: var(--khs-ink); font: inherit; min-width: 0; text-align: left; margin-block: 1rem; }
.khs-search [hidden], .khs-card-deck [hidden] { display: none !important; }
.khs-search label { display: block; font-weight: 700; margin-block: 0 .4rem; }
.khs-search input[type="search"] { box-sizing: border-box; display: block; width: 100%; min-width: 0; min-height: 44px; padding: .7rem; border: 1px solid var(--khs-border); border-radius: .3rem; background: #fff; color: #17334a; font: inherit; font-size: max(1rem, 16px); }
.khs-toggle, .khs-card-deck button { min-height: 44px; padding: .65rem .9rem; border: 1px solid var(--khs-ink, #17334a); border-radius: .3rem; color: var(--khs-ink, #17334a); background: #fff; font: inherit; cursor: pointer; white-space: normal; }
.khs-search :focus-visible, .khs-card-deck button:focus-visible { outline: 3px solid #0069b4; outline-offset: 3px; }
.khs-search .khs-help, .khs-search .khs-status { font-size: .9rem; line-height: 1.45; margin-block: .5rem; }
.khs-search .khs-results { position: static; list-style: none; margin: .6rem 0; padding: 0; border: 1px solid var(--khs-border); border-radius: .3rem; background: #fff; color: #17334a; max-height: none; width: auto; overflow: visible; }
.khs-search .khs-result { margin: 0; padding: .75rem; line-height: 1.45; cursor: pointer; border-bottom: 1px solid #d5dce1; overflow-wrap: anywhere; }
.khs-search .khs-result:last-child { border-bottom: 0; }
.khs-search .khs-result[aria-selected="true"], .khs-search .khs-result:hover { background: #e8f1f8; box-shadow: inset 4px 0 #0069b4; }
.khs-result-title { display: block; font-weight: 700; text-decoration: underline; text-underline-offset: .15em; }
.khs-result-excerpt { display: block; margin-top: .25rem; font-size: .9rem; }
.khs-search .khs-browse { display: inline-block; padding-block: .65rem; color: inherit; text-decoration: underline; }
.khs-search [data-khs-panel] { margin-block: .8rem; }
.khs-result-pages { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; margin-block: .75rem; }
.khs-result-pages button { min-height: 44px; padding: .65rem .9rem; border: 1px solid var(--khs-ink); border-radius: .3rem; color: var(--khs-ink); background: #fff; font: inherit; cursor: pointer; }
.khs-result-pages button:disabled { opacity: .55; cursor: default; }
/* Opt-in deck only: retain the existing card HTML inside this normal-flow track. */
.khs-card-deck [data-khs-track] { display: grid; grid-template-columns: repeat(var(--khs-visible, 1), minmax(0, 1fr)); gap: 1.25rem; overflow: visible; align-items: start; height: auto; }
.khs-card-deck [data-khs-card] { min-width: 0; height: auto; overflow: visible; }
.khs-card-deck [data-khs-deck-controls] { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; margin-block: 1rem; }
.khs-card-deck button:disabled { opacity: .55; cursor: default; }
@media (min-width: 48rem) { .khs-card-deck { --khs-visible: 2; } }
@media (prefers-reduced-motion: reduce) { .khs-search *, .khs-card-deck { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
