/* viewer.css */ /* Widget container styling */ .ply-widget-container { position: relative; width: 100%; height: 0; /* padding-bottom is set dynamically inline for aspect ratio */ } /* When in fake fullscreen mode (iOS fallback) */ .ply-widget-container.fake-fullscreen { position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100vh !important; padding-bottom: 0 !important; z-index: 9999 !important; } /* GIF Preview styling */ .gif-preview-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid #474558; border-radius: 10px; overflow: hidden; cursor: pointer; } .gif-preview-container img { width: 100%; height: 100%; object-fit: cover; } /* Viewer Container styling */ .viewer-container { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #FEFEFD; border: 1px solid #474558; border-radius: 10px; overflow: hidden; box-sizing: border-box; } /* Canvas fills the viewer container */ .ply-canvas { width: 100%; height: 100%; display: block; } /* Progress dialog styling (centered) */ .progress-dialog { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border: none; background: rgba(255,255,255,0.9); padding: 20px; border-radius: 5px; z-index: 1000; display: none; } /* Menu (instructions) content styling */ .menu-content { display: none; position: absolute; top: 70px; right: 15px; background: #FFFEF4; border: 1px solid #474558; border-radius: 5px; padding: 10px; font-size: 15px; line-height: 1.4; color: #474558; } /* Button styling */ .widget-button { position: absolute; width: 45px; height: 45px; background-color: #FFFEF4; border: 1px solid #474558; border-radius: 50%; cursor: pointer; font-size: 14px; color: #474558; display: flex; align-items: center; justify-content: center; } /* Specific button positions */ .close-btn { top: 17px; left: 15px; font-family: sans-serif; } .fullscreen-toggle { top: 17px; right: 15px; } .help-toggle { top: 17px; right: 70px; font-size: 22px; } .reset-camera-btn { top: 17px; right: 123px; font-size: 22px; line-height: normal; padding: 0; } /* Adjust the reset icon position */ .reset-icon { display: inline-block; transform: translateY(-3px); } /* --- Mobile adjustments: when the widget container has the "mobile" class --- */ .ply-widget-container.mobile .widget-button { width: 30px; /* 45px * 2/3 */ height: 30px; /* 45px * 2/3 */ font-size: 10px; /* 14px * approx 0.67 */ } .ply-widget-container.mobile .help-toggle { font-size: 15px; /* 22px * approx 0.67 */ } /* Adjust button positions for mobile */ .ply-widget-container.mobile .close-btn { top: 11px; /* 17px * approx 0.67 */ left: 10px; /* 15px * approx 0.67 */ } .ply-widget-container.mobile .fullscreen-toggle { top: 11px; right: 10px; } .ply-widget-container.mobile .help-toggle { top: 11px; right: 47px; /* 70px * approx 0.67 */ } .ply-widget-container.mobile .reset-camera-btn { top: 11px; right: 82px; /* 123px * approx 0.67 */ }