/* ── Airport Autocomplete Dropdown ──────────────────────── */

.sk-autocomplete-wrap { position: relative; width: 100%; }

.sk-dropdown {
  position: absolute; top: calc(100% + 10px); left: 0; right: 0;
  background: var(--sk-card);
  border: 1px solid var(--sk-border);
  border-radius: var(--sk-r-lg);
  box-shadow: var(--sk-shadow-lg);
  z-index: 300; overflow: hidden;
  max-height: 320px; overflow-y: auto;
  display: none;
}
.sk-dropdown.open { display: block; animation: fadeUp 0.18s ease; }

.sk-dropdown::-webkit-scrollbar { width: 4px; }
.sk-dropdown::-webkit-scrollbar-thumb { background: var(--sk-border); border-radius: 99px; }

.sk-dd-header {
  padding: 10px 16px 6px;
  font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
  color: var(--sk-text-muted);
}

.sk-dd-item {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 16px; cursor: pointer;
  transition: background var(--sk-t-fast);
}
.sk-dd-item:hover,
.sk-dd-item.focused { background: var(--sk-teal-muted); }

.sk-dd-icon {
  width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0;
  background: var(--sk-bg-subtle);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; color: var(--sk-teal-dark);
}
.sk-dd-info { flex: 1; min-width: 0; }
.sk-dd-city {
  font-family: var(--font-heading); font-weight: 700; font-size: 14px;
  color: var(--sk-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.sk-dd-sub {
  font-size: 11px; color: var(--sk-text-muted); margin-top: 1px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.sk-dd-code {
  font-family: var(--font-heading); font-weight: 800; font-size: 13px;
  color: var(--sk-primary); background: var(--sk-primary-muted);
  padding: 3px 8px; border-radius: 6px; flex-shrink: 0;
}
.sk-dd-item.focused .sk-dd-code { background: var(--sk-teal-muted); color: var(--sk-teal-dark); }

.sk-dd-separator { height: 1px; background: var(--sk-border); margin: 4px 0; }
.sk-dd-empty { padding: 20px 16px; text-align: center; color: var(--sk-text-muted); font-size: 13px; }

/* Highlight matched text */
.sk-dd-city mark {
  background: none; color: var(--sk-teal-dark); font-weight: 800;
}

/* Swap button between airport inputs */
.sk-swap-btn {
  position: absolute; top: 50%; transform: translateY(-50%);
  left: 50%; margin-left: -18px;
  z-index: 10; width: 36px; height: 36px; border-radius: 50%;
  background: var(--sk-bg-white); border: 2px solid var(--sk-border);
  color: var(--sk-text-secondary); font-size: 16px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: all var(--sk-t-base);
  box-shadow: var(--sk-shadow-sm);
}
.sk-swap-btn:hover {
  border-color: var(--sk-teal); color: var(--sk-teal);
  transform: translateY(-50%) rotate(180deg);
}
