.turntable-wrapper{display:inline-block;width:auto;max-width:100%;vertical-align:top}[vimeo-video-id]{position:relative;display:block;width:auto;opacity:0;visibility:hidden;transition:opacity .3s ease;min-height:300px;overflow:hidden;border:1px solid transparent;box-sizing:border-box;touch-action:none;-webkit-touch-callout:none}[vimeo-video-id].initialized{opacity:1;visibility:visible}[vimeo-video-id] iframe{background:transparent;display:block;opacity:0;visibility:hidden;transition:opacity .3s ease;box-sizing:border-box}[vimeo-video-id] iframe.size-ready{opacity:1;visibility:visible}.drag-overlay{position:absolute;top:0;left:0;width:100%;height:100%;cursor:grab;user-select:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none}#angle-display{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#000000bf;color:#fff;padding:6px 10px;border-radius:6px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:600;letter-spacing:0px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;pointer-events:none;z-index:5;display:none;justify-content:center;align-items:center;width:60px;white-space:nowrap;box-sizing:border-box;font-variant-numeric:tabular-nums;min-width:60px;font-feature-settings:"tnum" 1}.reload-button{position:absolute;top:8px;left:8px;width:32px;height:32px;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:15;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.reload-button:hover{background:#00000080;border-color:#ffffff40;transform:scale(1.05)}.reload-button:active{transform:scale(.95)}.reload-icon{width:16px;height:16px;color:#fffc;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.reload-button.loading .reload-icon{animation:reload-spin 1s linear infinite}@keyframes reload-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#rotation-angle{display:inline-block;width:30px;text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.degree-symbol{display:inline-block;width:10px;text-align:left}#angle{display:inline-block;width:2.2em;text-align:right;font-variant-numeric:tabular-nums}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;min-height:300px;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:opacity .3s ease;box-sizing:border-box;border-radius:inherit}.loading-overlay.hidden{opacity:0;pointer-events:none}.loading-content{text-align:center;color:#fff;padding:20px;border-radius:8px;background:#ffffff1a;min-width:250px}.loading-text{font-size:16px;margin-bottom:15px;font-weight:500}.progress-container{display:flex;align-items:center;gap:10px}.progress-bar{flex:1;height:8px;background:#fff3;border-radius:4px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#81c784);border-radius:4px;width:0%;transition:width .3s ease;position:relative}.progress-fill:after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:14px;font-weight:700;min-width:35px}.vimeo-viewer-wrapper{display:inline-block;width:auto}.vimeo-link{display:block;margin-top:8px;text-align:center;color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:500;text-decoration:none;padding:6px 12px;border-radius:4px;background:#0000000d;transition:color .3s ease,background-color .3s ease;box-sizing:border-box;width:auto;opacity:0;pointer-events:none}.vimeo-link.visible{opacity:1;pointer-events:auto}.vimeo-link:hover{color:#06c;background:#0066cc1a;text-decoration:none}.drag-overlay.dragging,[vimeo-video-id].dragging{touch-action:none!important}@media (max-width: 768px){.turntable-wrapper{display:block!important;width:100%!important;max-width:none!important;min-width:100%!important;box-sizing:border-box!important;margin:0 auto!important}[vimeo-video-id]{display:block!important;width:100%!important;max-width:none!important;min-width:100%!important;min-height:auto!important;box-sizing:border-box!important;margin:0 auto!important}[vimeo-video-id] iframe{display:block!important;width:100%!important;max-width:none!important;min-width:100%!important;height:auto!important;aspect-ratio:1 / 1!important;box-sizing:border-box!important;margin:0 auto!important}.loading-overlay{position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;min-height:auto!important;box-sizing:border-box!important;margin:0!important;padding:0!important}.loading-content{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:70%!important;max-width:300px!important;min-width:200px!important;padding:12px 16px!important;box-sizing:border-box!important}.loading-text{font-size:14px!important;margin-bottom:10px!important;text-align:center!important}.progress-container{gap:8px!important;align-items:center!important;justify-content:center!important}.progress-bar{height:6px!important;flex:1!important;min-width:120px!important}.progress-text{font-size:12px!important;min-width:35px!important;text-align:center!important}.drag-overlay{width:100%!important;height:100%!important;box-sizing:border-box!important}#angle-display{bottom:5px!important;font-size:11px!important;padding:4px 8px!important;min-width:50px!important;width:50px!important}#rotation-angle{width:25px!important}.vimeo-link{font-size:11px!important;padding:4px 8px!important;margin-top:6px!important;display:block!important;text-align:center!important;width:100%!important;box-sizing:border-box!important}}
