.chris3d{margin:1.5em 0;padding:1em;border:1px solid #ddd;border-radius:8px}.chris3d-canvas{height:420px;background:#f4f4f4;border-radius:6px;overflow:hidden;touch-action:none}.chris3d-canvas canvas{display:block;width:100%;height:100%}.chris3d-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.chris3d-fields label{display:flex;flex-direction:column;gap:6px;text-transform:capitalize}.chris3d-fields select{width:100%}.chris3d-status{font-size:.9em}.chris3d-total{font-weight:700}@media(max-width:600px){.chris3d-canvas{height:300px}}
.chris3d-editor{margin:20px 0;padding:16px;background:#fafafa;border-radius:8px}.chris3d-editor>canvas{display:block;width:min(100%,500px);height:auto;margin:12px auto;border:1px solid #ccc;touch-action:none;cursor:grab}.chris3d-editor button{margin:4px;padding:6px 10px;cursor:pointer}.chris3d-side [aria-pressed=true],.chris3d-layer.active{background:#dceafa}.chris3d-tools{display:flex;flex-wrap:wrap;gap:10px}.chris3d-tools label{display:flex;flex-direction:column;min-width:130px}.chris3d-tools input[type=text]{max-width:250px}.chris3d-layer-list{margin:12px 0}.chris3d-layer{display:flex;align-items:center;max-width:450px}.chris3d-layer button:first-child{flex:1;text-align:left}.chris3d-editor-status{min-height:1.5em}
.chris3d-share-link{overflow-wrap:anywhere;margin:8px 0}.chris3d-share-link a{display:inline-block;padding:8px;background:#edf7ee;border-radius:4px}.chris3d-editor button:disabled{opacity:.5;cursor:wait}

/* The product form contains both panes, so the editor inputs still submit with WooCommerce. */
.chris3d-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px}
.chris3d-two-column>.chris3d-visual,.chris3d-two-column>.chris3d-editor{min-width:0}
.chris3d-two-column>.chris3d-editor{margin:0}
.chris3d-two-column>.chris3d-total{grid-column:1/-1;margin:0}
.chris3d-two-column .chris3d-canvas{height:clamp(280px,34vw,460px)}
.chris3d-two-column .chris3d-fields{grid-template-columns:1fr}
@media(max-width:700px){.chris3d-two-column{display:block}.chris3d-two-column>.chris3d-editor{margin-top:20px}.chris3d-two-column .chris3d-canvas{height:300px}}
.chris3d-uv-picker{display:flex;flex-direction:column;gap:6px;margin:12px 0}.chris3d-uv-select{width:100%;max-width:100%}.chris3d-uv-toggle{display:flex;align-items:center;gap:6px}.chris3d-uv-note{font-size:.85em;line-height:1.5}.chris3d-editor>canvas{background:#fff}
/* Wide desktop workspace, below the gallery and product summary. */
@media(min-width:1024px){
.chris3d-desktop-host{grid-column:1/-1;clear:both;float:none;position:relative;width:min(1440px,calc(100vw - 64px));max-width:none;padding-top:24px;box-sizing:border-box}
.woocommerce div.product .chris3d-desktop-host form.chris3d-wide-form,.chris3d-desktop-host form.chris3d-wide-form{display:block;float:none;width:100%;max-width:none;margin:0 0 32px}
.chris3d-desktop-host .chris3d{width:100%;max-width:none;box-sizing:border-box;padding:24px;margin:0 0 20px}
.chris3d-desktop-host .chris3d-two-column{gap:28px}
.chris3d-desktop-host .chris3d-canvas{height:clamp(480px,46vw,700px)}
.chris3d-desktop-host .chris3d-editor>canvas{width:100%;max-width:680px;box-sizing:border-box}
.chris3d-desktop-host .chris3d-fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.chris3d-desktop-host .chris3d-editor{padding:20px}
}
/* Full-width design gallery above the two work panes. */
.chris3d-gallery{grid-column:1/-1;min-width:0;margin-bottom:12px}.chris3d-gallery h3{margin:0 0 8px}.chris3d-design-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.chris3d-design-card{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;padding:8px!important;margin:0!important;border:2px solid #d6dde5!important;border-radius:8px;background:#fff!important;color:#19364a!important;cursor:pointer;min-width:0}.chris3d-design-card img{display:block;width:100%;height:auto;aspect-ratio:1.62;object-fit:contain}.chris3d-original-preview{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1.62;font-size:40px;background:#f3f5f7}.chris3d-design-card[aria-pressed=true]{border-color:#156bc2!important;background:#edf5ff!important}.chris3d-design-card:focus-visible{outline:3px solid #156bc2;outline-offset:3px}.chris3d-design-card:disabled{opacity:.5;cursor:wait}.chris3d-gallery-status{font-size:.9em;min-height:1.5em;margin:8px 0 0}@media(max-width:700px){.chris3d-design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
