/* ============================================================
   Just Pitch — Distance field (host hotel → venue auto-calc)
   ============================================================ */

.distance-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.distance-row {
  display: flex;
  gap: 6px;
  align-items: stretch;
}

.distance-row input {
  flex: 1;
  min-width: 0;
  padding: 9px 12px;
  font-family: var(--font-sans);
  font-size: 14px;
  border: 1px solid var(--jr-gray-300);
  border-radius: 6px;
  background: #fff;
  color: var(--jr-blue-900);
  transition: border-color var(--dur-fast);
}
.distance-row input:focus {
  outline: none;
  border-color: var(--jr-blue);
  box-shadow: 0 0 0 3px rgba(34, 90, 133, 0.12);
}

.distance-calc-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 12px;
  font-family: var(--font-sans);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .02em;
  color: var(--jr-blue-700);
  background: var(--jr-blue-50);
  border: 1px solid var(--jr-blue-100);
  border-radius: 6px;
  cursor: pointer;
  white-space: nowrap;
  transition: background var(--dur-fast), border-color var(--dur-fast), color var(--dur-fast);
}
.distance-calc-btn:hover:not(:disabled) {
  background: var(--jr-blue-100);
  border-color: var(--jr-blue-300);
  color: var(--jr-blue-900);
}
.distance-calc-btn:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.distance-spin {
  width: 12px;
  height: 12px;
  border: 2px solid var(--jr-blue-100);
  border-top-color: var(--jr-blue);
  border-radius: 50%;
  animation: distance-spin .7s linear infinite;
  display: inline-block;
}
@keyframes distance-spin { to { transform: rotate(360deg); } }

.distance-err {
  font-size: 12px;
  color: #B0473D;
  background: rgba(216, 106, 96, .07);
  border-left: 2px solid #D86A60;
  padding: 5px 10px;
  border-radius: 4px;
  line-height: 1.4;
}
.distance-hint {
  font-size: 11.5px;
  color: var(--jr-gray-600);
  line-height: 1.45;
  font-style: italic;
}
.distance-hint strong { color: var(--jr-blue-700); font-weight: 700; font-style: normal; }
