.body-inspection-map .body-inspection-3d { position: relative; min-height: 360px; overflow: hidden; border-radius: 12px; background: var(--surface-color); }
.body-inspection-map .body-inspection-3d-status { min-height: 360px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 24px; text-align: center; color: var(--text-secondary); }
.body-inspection-map .body-inspection-3d-status[hidden],
.body-inspection-map [data-inspection-3d-retry][hidden] { display: none; }
.body-inspection-map .body-inspection-3d-skeleton { width: min(280px, 80%); height: 120px; border-radius: 24px; background: var(--border-color); animation: inspection-loading 1.5s ease-in-out infinite alternate; }
.body-inspection-map .is-failed .body-inspection-3d-skeleton { display: none; }
.body-inspection-map .body-inspection-3d-frame { display: block; width: 100%; border: 0; background: var(--surface-color); border-radius: 12px; color-scheme: normal; }
.body-inspection-map .body-inspection-3d:not(.is-loaded) .body-inspection-3d-frame { position: absolute; inset: 0; visibility: hidden; pointer-events: none; }
@keyframes inspection-loading { to { opacity: .4; } }
@media (prefers-reduced-motion: reduce) { .body-inspection-map .body-inspection-3d-skeleton { animation: none; } }
