studio-personaliser{display:block;width:100%;margin:18px 0;color:#452a33;background:#fff8ee;border:1px solid #bea482;border-radius:12px;font-family:Arial,sans-serif}
studio-personaliser *{box-sizing:border-box}
studio-personaliser summary{padding:16px;font-weight:700;cursor:pointer;color:#64172b}
.sp-content{padding:0 16px 16px}
.sp-preview{width:100%;min-width:0}
.sp-art,.sp-three{width:100%;aspect-ratio:1;display:block;border-radius:8px;background:#ede1d1;overflow:hidden}
.sp-art{object-fit:contain;height:auto}
.sp-three canvas{display:block;width:100%;height:100%;touch-action:pan-y}
studio-personaliser [hidden]{display:none!important}
.sp-view-controls{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
studio-personaliser button{min-height:44px;background:#671629;color:#fff8ee;border:0;border-radius:6px;padding:10px 12px;font:inherit;cursor:pointer}
studio-personaliser button:disabled{opacity:.65;cursor:wait}
studio-personaliser label{display:block;font-size:14px;font-weight:600;margin:12px 0}
studio-personaliser :is(textarea,select,input:not([type=hidden])){display:block;max-width:100%;width:100%;border:1px solid #a58e7c;border-radius:5px;background:#fff;color:#34232a;font:inherit;font-size:16px;margin-top:6px;padding:9px}
studio-personaliser input[type=color]{height:44px;padding:4px}
studio-personaliser input[type=file]{padding:8px;font-size:14px}
.sp-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sp-caption{font-size:13px;line-height:1.5;margin:8px 0}
.sp-state{font-size:14px;line-height:1.5}
.sp-error{color:#9b102a;font-weight:600;font-size:14px}
.sp-photo-list{display:flex;gap:8px;flex-wrap:wrap}
.sp-photo{width:92px;font-size:12px;overflow-wrap:anywhere}
.sp-photo img{width:92px;height:76px;object-fit:contain;background:#efe2d2}
.sp-photo button{font-size:12px;padding:4px 8px;width:100%;min-height:36px}
@media(min-width:1200px){studio-personaliser .sp-content{padding:0 20px 20px}}
@media(max-width:380px){.sp-pair{grid-template-columns:1fr}.sp-content{padding:0 10px 12px}studio-personaliser button{font-size:14px}}
.sp-css-world{width:100%;height:100%;display:grid;place-items:center;perspective:850px;touch-action:pan-y;background:radial-gradient(ellipse at center,#fff9ef,#e6d5bf)}
.sp-css-model{width:0;height:0;position:relative;transform-style:preserve-3d}
.sp-css-model>div{position:absolute;top:50%;left:50%;backface-visibility:hidden;background-color:#fff9ef;background-repeat:no-repeat}
.sp-css-rim{border:8px solid #fff8eb;border-radius:50%;background:#d4c6b9!important;backface-visibility:visible!important}
.sp-css-handle{border:16px solid #fff8eb;border-radius:50%;backface-visibility:visible!important}
.sp-css-cap{background:#eee6dc!important;border-radius:9px}
.sp-css-back{background:#e9e0d3!important}
.sp-css-segment{backface-visibility:hidden}
