.model-showcase { background: var(--blue); position: relative; }
.model-panel { height: 100svh; min-height: 520px; max-height: 1000px; position: relative; overflow: hidden; padding: 25px var(--space); }
.model-control { display: block; width: 100%; cursor: grab; touch-action: pan-y; user-select: none; }
.model-control:active { cursor: grabbing; }
#building-canvas { display: block; width: 100%; pointer-events: none; }
.model-fallback { width: 100%; object-fit: contain; pointer-events: none; }
.model-motion { position: absolute; left: var(--space); bottom: 24px; }
.model-motion:focus-visible { pointer-events: auto; }
@media (max-width: 760px) {
  .model-panel { height: 72svh; min-height: 390px; max-height: 650px; padding: 12px 0px; }
}
@media (prefers-reduced-motion: reduce) {
  .model-motion { display: none; }
}
