.archive-tools {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin: 10px 0;
}

.archive-tools button {
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, .025);
  color: var(--muted);
  border-radius: 10px;
  padding: 8px 5px;
  cursor: pointer;
  font-size: 12px;
}

.archive-tools button:hover {
  color: var(--ink);
  border-color: rgba(105, 230, 211, .35);
}

#globe { touch-action: none; }

.map-tooltip {
  position: absolute;
  z-index: 6;
  transform: translate(-50%, calc(-100% - 14px));
  padding: 7px 10px;
  border-radius: 9px;
  background: rgba(4, 13, 18, .92);
  border: 1px solid rgba(105, 230, 211, .28);
  color: var(--ink);
  font-size: 12px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .15s;
  white-space: nowrap;
}

.map-tooltip.visible { opacity: 1; }
label { font-size: 14px; }
.field-help { font-size: 12px; color: var(--muted); line-height: 1.4; }
.toast.error { background: #ffe2df; color: #52130e; }
button:disabled { opacity: .55; cursor: wait; }

@media (max-width: 720px) {
  .world-stage { min-height: 540px; }
  .archive-tools { position: sticky; bottom: 0; background: #07141c; padding-top: 6px; }
  .detail-actions { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
  .orbit { display: none; }
}
