.natural-search { position: relative; display: block; float: left; width: min(620px, 47vw); z-index: 1051; color: #24342e; }
[dir='rtl'] .natural-search { float: right; }
.natural-search__form { width: 100%; margin-inline: 0; display: flex; align-items: center; gap: 7px; }
.natural-search__input-group { flex: 1 1 auto; min-width: 180px; }
.natural-search__input-group .form-control { height: 34px; box-shadow: 0 1px 0 rgba(0,0,0,.06); }
.natural-search__mode { display: flex; flex: 0 0 auto; padding: 2px; gap: 2px; border-radius: 9px; background: #edf3ef; }
.natural-search__mode-button { border: 0; border-radius: 7px; padding: 5px 8px; background: transparent; color: #53655e; font-size: 11px; line-height: 18px; white-space: nowrap; }
.natural-search__mode-button.is-active { background: #fff; color: #245f4a; box-shadow: 0 1px 4px rgba(0,0,0,.16); }
.natural-search__mode-button:focus-visible, .natural-search button:focus-visible, .natural-search input:focus-visible { outline: 2px solid #2a9470; outline-offset: 2px; }
.natural-search__workspace { position: absolute; inset-inline-start: 0; top: calc(100% + 4px); width: min(720px, calc(100vw - 32px)); max-height: min(720px, calc(100vh - 86px)); overflow: auto; border: 1px solid #dce5e1; border-radius: 14px; background: #fff; color: #24342e; box-shadow: 0 18px 50px rgba(25,43,36,.23); text-align: start; }
.natural-search__header { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 13px 16px; border-bottom: 1px solid #e7eeeb; background: rgba(255,255,255,.97); }
.natural-search__header > div { display: flex; align-items: center; gap: 7px; min-width: 0; }
.natural-search__scope { border: 1px solid #b9d9cc; border-radius: 999px; padding: 2px 7px; color: #286a53; background: #eff9f5; font-size: 11px; }
.natural-search__header-actions { margin-inline-start: auto; }
.natural-search__close { width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; background: #f0f4f2; color: #53655e; }
.natural-search__context { display: flex; align-items: center; gap: 6px; padding: 10px 16px 0; overflow: hidden; }
.natural-search__context-label, .natural-search__eyebrow { color: #65756f; font-size: 11px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.natural-search__history { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; border-radius: 6px; padding: 3px 7px; background: #f2f5f4; color: #5b6d66; font-size: 11px; }
.natural-search__chips { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 16px 0; }
.natural-search__chip { display: inline-flex; align-items: center; gap: 5px; border: 1px solid #cde1d9; border-radius: 999px; padding: 4px 8px; background: #f5fbf8; color: #315e4d; font-size: 12px; }
.natural-search__chip button { border: 0; padding: 0; background: transparent; color: #71847c; line-height: 1; }
.natural-search__loading, .natural-search__empty { margin: 0; padding: 28px 16px; color: #63736d; text-align: center; }
.natural-search__error { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 16px; border-radius: 8px; padding: 10px 12px; background: #fff2f1; color: #963d36; }
.natural-search__clarifications, .natural-search__answer, .natural-search__sources { margin: 12px 16px; border-radius: 10px; padding: 13px 14px; background: #f6f9f8; }
.natural-search__clarifications fieldset { margin: 10px 0 13px; border: 0; padding: 0; }
.natural-search__clarifications legend { margin-bottom: 7px; border: 0; color: #263b33; font-size: 13px; font-weight: 600; }
.natural-search__choice { display: inline-flex; align-items: center; gap: 5px; margin: 0 0 6px 7px; border: 1px solid #d8e3df; border-radius: 8px; padding: 6px 9px; background: #fff; font-weight: 400; }
.natural-search__answer { border: 1px solid #d3e7df; background: linear-gradient(135deg,#f1faf6,#fbfdfc); }
.natural-search__answer-text { margin: 7px 0 0; line-height: 1.65; white-space: pre-wrap; }
.natural-search__citations { display: inline-flex; gap: 4px; margin-top: 6px; }
.natural-search__citations button { border: 0; padding: 1px 3px; background: transparent; color: #176e50; font-weight: 700; }
.natural-search__results { border-top: 1px solid #edf1ef; }
.natural-search__result { display: flex; align-items: center; width: 100%; gap: 11px; border: 0; border-bottom: 1px solid #edf1ef; padding: 12px 16px; background: #fff; color: inherit; text-align: start; }
.natural-search__result:hover:not(:disabled) { background: #f7fbf9; }
.natural-search__result:disabled { opacity: .72; cursor: default; }
.natural-search__result-icon { display: grid; place-items: center; flex: 0 0 34px; height: 34px; border-radius: 9px; background: #eaf5f0; color: #277458; }
.natural-search__result-copy { display: flex; flex: 1; min-width: 0; flex-direction: column; gap: 3px; }
.natural-search__result-copy strong, .natural-search__result-copy span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.natural-search__result-copy > span { color: #64766f; font-size: 12px; }
.natural-search__result-copy small { display: flex; gap: 9px; color: #798a83; }
.natural-search__result-arrow { color: #83938d; }
[dir='ltr'] .natural-search__result-arrow { transform: rotate(180deg); }
.natural-search__sources ol { margin: 7px 0 0; padding-inline-start: 20px; }
.natural-search__sources li { margin-bottom: 7px; color: #52645d; font-size: 12px; line-height: 1.5; }
.natural-search__sources li:focus { border-radius: 5px; outline: 2px solid #55a98a; outline-offset: 2px; }
.natural-search__sources strong { display: block; color: #344940; }
.natural-search__coverage { display: flex; gap: 12px; border-top: 1px solid #e7eeeb; padding: 9px 16px; color: #71827b; font-size: 11px; }
@media (max-width: 900px) { .natural-search { width: min(480px, 52vw); } .natural-search__mode-button span { display: none; } }
@media (max-width: 767px) { .natural-search { float: none; width: 100%; } .natural-search__form { padding-inline: 12px; } .natural-search__workspace { position: fixed; inset: 64px 8px auto; width: auto; max-height: calc(100vh - 76px); } .natural-search__mode-button span { display: inline; } }
@media (prefers-reduced-motion: reduce) { .natural-search * { scroll-behavior: auto !important; } }
