/* Version 3.5: product 3D viewer and optimized image hints */
.model-preview-button{margin-top:.75rem;display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.65rem .7rem;min-height:42px;background:linear-gradient(110deg,#542594,#8935ce);color:#fff;border:1px solid #af82e1;border-radius:10px;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;box-shadow:0 7px 15px #410c7433}
.model-preview-button:hover,.model-preview-button:focus-visible{background:linear-gradient(110deg,#7036b2,#a34ee9);outline:2px solid #d8b6ff;outline-offset:2px}
.preview-upload-box{padding:1rem;background:#f6f1fd;border:1px solid #e4d0ff;border-radius:14px;grid-column:1/-1}
.preview-upload-box h3{margin:0 0 .5rem;color:#5a278c}.preview-upload-box p{font-size:.88rem;max-width:78ch}
.model-preview-overlay[hidden]{display:none!important}
.model-preview-overlay{position:fixed;inset:0;background:#0a071ed9;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(7px)}
.model-preview-panel{width:min(94vw,780px);background:linear-gradient(150deg,#1d1134,#2b1543);border:1px solid #ae78e4;border-radius:20px;box-shadow:0 35px 100px #0009;color:#fff;overflow:hidden}
.model-preview-panel header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 12px}.model-preview-panel header h2{font-size:clamp(1rem,2vw,1.5rem);margin:.15rem 0;color:#fff}.model-preview-panel .icon-close{color:#fff;border-color:#b79bd0;background:#ffffff1c;flex-shrink:0}
#modelPreviewCanvas{display:block;width:100%;height:min(58vh,450px);background:#120e24;touch-action:none;cursor:grab}
#modelPreviewCanvas:active{cursor:grabbing}
.preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 22px}.preview-toolbar p{margin:0;font-size:.88rem;color:#ead6ff}
.preview-controls{display:flex;gap:8px}.preview-controls button{border:1px solid #ab73dc;border-radius:9px;background:#6435a7;color:#fff;min-height:40px;min-width:45px;cursor:pointer;font-size:1.3rem}
.preview-disclaimer{font-size:.74rem;color:#cbb4d9;margin:0;padding:0 22px 18px}
@media(max-width:760px){.model-preview-overlay{padding:8px}.model-preview-panel{width:100%;border-radius:14px}.model-preview-panel header{padding:12px}.preview-toolbar{padding:10px;flex-wrap:wrap}.preview-disclaimer{padding:0 12px 12px}#modelPreviewCanvas{height:52vh}.featured-card .model-preview-button{font-size:.78rem;padding:.5rem}}
