.shop-product-designer{margin:1.5rem 0;padding:1.2rem;border:1px solid #d8e1ea;border-radius:18px;background:#f8fafc;color:#173044}
.shop-product-designer__head h3{margin:0 0 .35rem;font-size:1.35rem}
.shop-product-designer__head p{margin:.2rem 0 1rem;line-height:1.5}
.shop-product-designer__tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.shop-product-designer__tabs button{border:1px solid #aebccc;border-radius:999px;padding:.55rem .9rem;background:#fff;color:#173044;cursor:pointer}
.shop-product-designer__tabs button[aria-selected=true]{background:#173044;border-color:#173044;color:#fff}
.shop-product-designer__surface{min-width:0;margin:0 0 1rem;padding:0;border:0}
.shop-product-designer__surface legend{font-weight:700;margin-bottom:.65rem}
.shop-product-designer__stage{position:relative;width:100%;max-width:630px;aspect-ratio:var(--pd-ratio,1.25);overflow:hidden;display:grid;place-items:center;border:1px solid #c2cfdb;border-radius:14px;background:#fff}
.shop-product-designer__background{display:block;width:100%;height:100%;object-fit:contain}
.shop-product-designer__design-layer{position:absolute;inset:0;z-index:2;overflow:visible}
.shop-product-designer__outline{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none}
.shop-product-designer__outline polygon{fill:none;stroke:#e54826;stroke-width:7;stroke-linejoin:round;stroke-dasharray:14 10}
.shop-product-designer__contour-note{margin:.55rem 0;color:#a43f23;font-size:.85rem;font-weight:600}
.shop-product-designer__text,.shop-product-designer__artwork{position:absolute;z-index:2;max-width:none;touch-action:none;cursor:grab}
.shop-product-designer__text{max-width:90%;white-space:pre-wrap;text-align:center;line-height:1.1;text-shadow:0 1px 3px #fff,0 0 5px #fff}
.shop-product-designer__artwork{height:auto;transform:translate(-50%,-50%);object-fit:contain}
.shop-product-designer__text:active,.shop-product-designer__artwork:active{cursor:grabbing}
.shop-product-designer__size{font-size:.85rem;margin:.45rem 0 1rem}
.shop-product-designer__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem}
.shop-product-designer__fields label,.shop-product-designer__note{display:flex;flex-direction:column;gap:.35rem;font-weight:600}
.shop-product-designer__fields input:not([type=range]),.shop-product-designer__fields select,.shop-product-designer__note textarea{width:100%;min-width:0;padding:.65rem;border:1px solid #bac8d5;border-radius:9px;background:#fff;color:#173044}
.shop-product-designer__fields input[type=range]{width:100%;accent-color:#1762a0}
.shop-product-designer__fields output,.shop-product-designer__fields small{font-size:.78rem;font-weight:400}
.shop-product-designer__note{margin:1rem 0}
.shop-product-designer__note textarea{resize:vertical}
.shop-product-designer>small{display:block;line-height:1.45}
@media(max-width:640px){.shop-product-designer{padding:.85rem}.shop-product-designer__fields{grid-template-columns:1fr}.shop-product-designer__stage{max-width:100%}}
