.model-stage{position:relative;isolation:isolate;min-width:0;overflow:hidden;aspect-ratio:1;min-height:330px}
.model-fallback{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;transition:opacity .3s;pointer-events:none}
.model-stage canvas{display:block;position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab;outline-offset:-6px}
.model-stage canvas:active{cursor:grabbing}
.model-stage.is-3d .model-fallback{opacity:0}
.model-launch{position:absolute;z-index:2;left:50%;bottom:36px;transform:translateX(-50%);border:1px solid currentColor;border-radius:40px;background:#fffdf5ed;color:#272921;font:500 12px/1.3 Arial,sans-serif;padding:12px 18px;white-space:nowrap;cursor:pointer;transition:background .2s,box-shadow .2s}
.model-launch:hover{background:#fff;box-shadow:0 4px 16px #0001}
.model-launch:active{box-shadow:inset 0 1px 4px #0002;transform:translateX(-50%) translateY(1px)}
.model-status{position:absolute;z-index:2;bottom:5px;left:12px;right:12px;margin:0;text-align:center;font:10px/1.4 Arial,sans-serif;color:inherit;opacity:.8;pointer-events:none}
.model-stage [hidden]{display:none!important}
.model-stage:focus-within{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:620px){.model-stage{min-height:300px}.model-launch{bottom:34px}}
@media(prefers-reduced-motion:reduce){.model-fallback,.model-launch{transition:none}}
