body[data-viewer="external"] .masthead {
  top: 16px;
  left: 20px;
  right: 20px;
  align-items: center;
  gap: 8px;
}

body[data-viewer="external"] .masthead h1 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: clamp(14px, 2.1vw, 20px);
  line-height: 1.35;
}

body[data-viewer="external"] .three-badge {
  flex: none;
  padding: 0 5px;
  font-size: 10px;
  line-height: 18px;
}

body[data-viewer="external"] .view-caption {
  top: 70px;
  left: 22px;
  right: 22px;
  max-width: none;
}

body[data-viewer="external"] .view-caption p {
  max-width: none;
  color: #4d6879;
  font-size: 12px;
}

body[data-viewer="external"] .bottom-ui {
  bottom: max(14px, env(safe-area-inset-bottom));
  width: min(560px, calc(100% - 28px));
  gap: 7px;
}

body[data-viewer="external"] .view-tabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body[data-viewer="external"] .view-tabs button {
  min-height: 44px;
  flex-direction: row;
  font-size: 12px;
}

body[data-viewer="external"] .detail-controls {
  justify-content: center;
  padding-top: 6px;
}

body[data-viewer="external"] .explode-control {
  max-width: 350px;
  min-height: 24px;
  color: #4d6879;
  font-size: 12px;
}

body[data-viewer="external"] .gesture-hint {
  min-height: 30px;
  color: #32566e;
  font-size: 11px;
}

body[data-viewer="external"][data-interacting="true"] .gesture-hint {
  color: #fff;
}

body[data-viewer="external"] .fallback-preview {
  max-height: 45vh;
  width: auto;
  object-fit: contain;
}

@media (max-width: 560px) {
  body[data-viewer="external"] .masthead {
    top: 12px;
    left: 12px;
    right: 12px;
  }

  body[data-viewer="external"] .masthead h1 {
    gap: 5px;
  }

  body[data-viewer="external"] .utilities button {
    width: 34px;
    height: 36px;
  }

  body[data-viewer="external"] .view-caption {
    top: 66px;
    left: 14px;
    right: 14px;
  }

  body[data-viewer="external"] .view-tabs svg {
    width: 17px;
    height: 17px;
  }
}
