.site-map-picker { min-width: 0; margin-top: 16px; color: #263b34; font-size: 14px; letter-spacing: 0; }
.site-map-heading, .site-map-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; }
.site-map-heading strong { font-size: 17px; }
.site-map-heading span, .site-map-footer span { color: #586861; font-size: 13px; }
.site-map-search { display: grid; grid-template-columns: minmax(110px, 1fr) minmax(0, 3fr) auto; gap: 12px; align-items: end; }
.site-map-search label { display: flex; flex-direction: column; gap: 6px; min-width: 0; margin: 0; font-size: 13px; }
.site-map-search input, .site-map-search button, .site-map-footer button { height: 42px; margin: 0; font-size: 14px; box-sizing: border-box; }
.site-map-search input { width: 100%; min-width: 0; }
.site-map-body { display: grid; grid-template-columns: minmax(160px, 30%) minmax(0, 1fr); border: 1px solid #dce4e1; border-radius: 6px; overflow: hidden; }
.site-map-surface { height: 340px; min-width: 0; position: relative; background: #f1f5f7; z-index: 0; }
.site-map-empty { height: 100%; display: grid; place-items: center; color: #5d6c73; }
.site-map-results { height: 340px; overflow-y: auto; background: #fff; }
.site-map-picker .site-map-result { display: flex; flex-direction: column; gap: 6px; width: 100%; margin: 0; padding: 12px; text-align: left; border: 0; border-bottom: 1px solid #e4e9ec; border-radius: 0; background: white; color: #203a33; white-space: normal; overflow-wrap: anywhere; }
.site-map-result strong { font-size: 14px; }
.site-map-result span { color: #626e76; font-size: 12px; font-weight: 400; }
.site-map-result[aria-pressed="true"] { background: #e5f2f1; box-shadow: inset 3px 0 #19746b; }
.site-map-error { color: #a84227; font-size: 13px; min-height: 20px; margin: 8px 0; overflow-wrap: anywhere; }
.site-map-picker button:focus-visible { outline: 2px solid #266fac; outline-offset: -2px; }
.site-map-picker button:disabled { opacity: .55; cursor: not-allowed; }
@media (max-width: 640px) {
  .site-map-search { grid-template-columns: minmax(0, 1fr) auto; }
  .site-map-search label:nth-child(2) { grid-column: 1; }
  .site-map-search label:first-child { grid-column: 1 / -1; }
  .site-map-body { grid-template-columns: minmax(0, 1fr); }
  .site-map-results { height: auto; max-height: 150px; }
  .site-map-surface { height: 280px; }
}
