.ajam-search-toggle {
  background: #ffffff;
  border: 1px solid #c7cdd8;
  border-radius: 4px;
  color: #1a2433;
  cursor: pointer;
  display: grid;
  place-items: center;
  height: 34px;
  padding: 0;
  width: 34px;
}

.ajam-search-toggle-icon {
  fill: none;
  height: 18px;
  stroke: #1b2434;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.4;
  width: 18px;
}

.ajam-search-panel {
  position: absolute;
  top: 12px;
  left: 68px;
  z-index: 700;
  width: 340px;
  max-width: calc(100% - 20px);
  max-height: calc(100% - 68px);
  background: #ffffff;
  border: 1px solid #c7cdd8;
  border-radius: 6px;
  box-shadow: 0 6px 18px rgba(19, 31, 56, 0.22);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.ajam-search-panel.is-hidden {
  display: none;
}

.ajam-search-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  background: #f5f7fb;
  border-bottom: 1px solid #d8deea;
  cursor: move;
  touch-action: none;
  user-select: none;
}

.ajam-search-title {
  font: 600 13px/1.2 Arial, sans-serif;
  color: #1a2433;
}

.ajam-search-close {
  border: 0;
  background: transparent;
  color: #455066;
  font: 700 16px/1 Arial, sans-serif;
  cursor: pointer;
  padding: 2px 6px;
}

.ajam-search-close:hover {
  color: #161d2a;
}

.ajam-search-tabs {
  display: flex;
  gap: 4px;
  padding: 8px 10px 0;
}

.ajam-search-tab {
  border: 1px solid #c7cdd8;
  background: #ffffff;
  border-radius: 4px 4px 0 0;
  color: #243248;
  cursor: pointer;
  font: 600 12px/1.2 Arial, sans-serif;
  padding: 5px 10px;
}

.ajam-search-tab.is-active {
  background: #eef3ff;
  border-bottom-color: #eef3ff;
  color: #173a8d;
}

.ajam-search-tab[disabled] {
  background: #f4f6fa;
  color: #75809a;
  cursor: not-allowed;
}

.ajam-search-body {
  border-top: 1px solid #d8deea;
  margin-top: -1px;
  padding: 10px;
  overflow: auto;
  touch-action: pan-y;
}

.ajam-search-mode.is-hidden {
  display: none;
}

.ajam-find-form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
}

.ajam-find-input,
.ajam-find-scope {
  border: 1px solid #c7cdd8;
  border-radius: 4px;
  color: #1a2433;
  font: 13px/1.3 Arial, sans-serif;
  padding: 7px 8px;
}

.ajam-find-scope {
  grid-column: 1 / -1;
}

.ajam-find-submit {
  border: 1px solid #2b67da;
  background: #2f6fe8;
  border-radius: 4px;
  color: #ffffff;
  cursor: pointer;
  font: 600 13px/1.2 Arial, sans-serif;
  padding: 7px 11px;
}

.ajam-search-status {
  color: #243248;
  font: 12px/1.4 Arial, sans-serif;
  margin-top: 8px;
}

.ajam-search-status.is-error {
  color: #9d1b1b;
}

.ajam-search-results {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
}

.ajam-search-result {
  border: 1px solid #d3d9e6;
  background: #ffffff;
  border-radius: 4px;
  color: #1a2433;
  cursor: pointer;
  padding: 7px 8px;
  text-align: left;
}

.ajam-search-result:hover {
  background: #f5f8ff;
}

.ajam-search-result.is-selected {
  border-color: #2b67da;
  background: #eef3ff;
}

.ajam-search-result-title {
  display: block;
  font: 600 13px/1.3 Arial, sans-serif;
}

.ajam-search-result-subtitle {
  display: block;
  color: #52617b;
  font: 12px/1.3 Arial, sans-serif;
  margin-top: 1px;
}

.ajam-search-result-meta {
  display: block;
  color: #60708f;
  font: 11px/1.3 Arial, sans-serif;
  margin-top: 3px;
}

.ajam-search-coming-soon {
  color: #4f5d78;
  font: 12px/1.4 Arial, sans-serif;
}

.ajam-nearby-results {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.ajam-nearby-section {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.ajam-nearby-heading {
  color: #26324a;
  font: 600 12px/1.2 Arial, sans-serif;
  margin: 0;
}

.ajam-nearby-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.ajam-nearby-row {
  align-items: start;
  background: #ffffff;
  border: 1px solid #d3d9e6;
  border-radius: 4px;
  display: grid;
  gap: 6px;
  grid-template-columns: 1fr auto;
  padding: 6px 7px;
  cursor: pointer;
}

.ajam-nearby-row.is-selected {
  background: #eef3ff;
  border-color: #2b67da;
}

.ajam-nearby-row:hover {
  background: #f5f8ff;
}

.ajam-nearby-main {
  background: transparent;
  border: 0;
  color: #1a2433;
  cursor: pointer;
  padding: 0;
  text-align: left;
}

.ajam-nearby-main-title {
  display: block;
  font: 600 13px/1.3 Arial, sans-serif;
}

.ajam-nearby-main-subtitle {
  color: #54627b;
  display: block;
  font: 11px/1.35 Arial, sans-serif;
  margin-top: 2px;
}

.ajam-nearby-meta {
  align-items: end;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ajam-nearby-id-link {
  background: transparent;
  border: 0;
  color: #1e57c7;
  cursor: pointer;
  font: 600 11px/1.2 Arial, sans-serif;
  padding: 0;
  text-decoration: underline;
}

.ajam-nearby-distance {
  color: #5f6f89;
  font: 11px/1.2 Arial, sans-serif;
}

.ajam-nearby-back {
  align-self: start;
  background: #ffffff;
  border: 1px solid #c7cdd8;
  border-radius: 4px;
  color: #1f2b40;
  cursor: pointer;
  font: 600 12px/1.2 Arial, sans-serif;
  padding: 4px 8px;
}

.ajam-nearby-tag-heading {
  color: #1d2b44;
  font: 600 12px/1.2 Arial, sans-serif;
}

.ajam-nearby-tag-table {
  border-collapse: collapse;
  font: 12px/1.35 Consolas, 'Courier New', monospace;
  width: 100%;
}

.ajam-nearby-tag-table th,
.ajam-nearby-tag-table td {
  border-bottom: 1px solid #e2e6ef;
  padding: 3px 4px;
  text-align: left;
  vertical-align: top;
}

.ajam-nearby-tag-table th {
  color: #33415b;
  font-weight: 700;
  width: 42%;
}

@media (max-width: 700px) {
  .ajam-search-panel {
    left: 8px;
    width: min(374px, calc(100% - 16px));
    max-width: calc(100% - 16px);
    max-height: calc(100% - 60px);
  }
}
