:root{--ink:#10110f;--muted:#666a61;--line:#dfe1da;--paper:#f2f3ee;--white:#fff;--acid:#d8ff45;--danger:#a52d24;--shadow:0 18px 50px rgba(20,24,15,.12)}
*{box-sizing:border-box}[hidden]{display:none!important}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}body{margin:0;min-height:100vh}button,input{font:inherit}button,label{touch-action:manipulation}button{cursor:pointer}.demo-bar{display:flex;justify-content:center;gap:.45rem;background:var(--ink);color:#fff;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:.55rem 1rem}.demo-bar strong{color:var(--acid)}
header{height:72px;display:flex;align-items:center;gap:1rem;padding:0 1rem;border-bottom:1px solid var(--line);background:rgba(242,243,238,.94);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}.brand{font-weight:950;letter-spacing:-.055em;font-size:1.35rem}.brand::after{content:"●";color:var(--acid);font-size:.55em;margin-left:.25rem}.header-copy{display:none}.price-pill{margin-left:auto;background:#fff;border:1px solid var(--line);border-radius:13px;padding:.4rem .7rem;text-align:right;line-height:1}.price-pill small{display:block;color:var(--muted);font-size:.65rem;margin-bottom:.2rem}.price-pill strong{font-size:1.05rem}
.editor-back{display:none;color:var(--ink);font-size:.78rem;font-weight:850;text-decoration:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem .7rem;margin-left:auto}.editor-view .editor-back{display:inline-flex}.editor-view .price-pill{margin-left:0}.catalog-view .price-pill,.production-view .price-pill{display:none}.production-nav{margin-left:auto;color:var(--ink);font-size:.78rem;font-weight:850;text-decoration:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem .7rem}.editor-view .production-nav,.production-view .production-nav{display:none}
.resume-draft{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #a9c936;border-radius:16px;background:#efffd0;box-shadow:0 8px 24px rgba(50,65,18,.08)}.resume-draft[hidden]{display:none}.resume-draft strong,.resume-draft small{display:block}.resume-draft strong{font-size:1rem;margin:.15rem 0}.resume-draft small{color:var(--muted);font-size:.76rem}.resume-actions{display:flex;gap:.45rem;flex:0 0 auto}.resume-actions button{border:0;border-radius:10px;background:var(--ink);color:#fff;padding:.7rem .85rem;font-weight:850}.resume-actions .secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}
.catalog-page{max-width:1220px;margin:auto;padding:clamp(1rem,3vw,2.2rem)}.catalog-intro{display:grid;grid-template-columns:1fr minmax(260px,420px);column-gap:2rem;align-items:end;margin:.6rem 0 1.5rem}.catalog-intro>.eyebrow,.catalog-intro>h1,.catalog-intro>p{grid-column:1}.catalog-intro h1{font-size:clamp(2rem,5vw,4.4rem);line-height:.92;letter-spacing:-.065em;margin:.35rem 0 .7rem;max-width:680px}.catalog-intro p{font-size:1rem;color:var(--muted);margin:0;max-width:580px}.catalog-search{grid-column:2;grid-row:1/4;display:grid;gap:.45rem;font-size:.78rem;font-weight:850}.catalog-search input{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:1rem;font-size:1rem;color:var(--ink);box-shadow:var(--shadow)}.catalog-filters{grid-column:1/-1;display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1.35rem}.catalog-filters button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.65rem .9rem;font-weight:850;font-size:.82rem}.catalog-filters button.active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:inset 0 -3px var(--acid)}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.catalog-product{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.catalog-product:not(.upcoming):hover{transform:translateY(-3px);box-shadow:var(--shadow)}.catalog-product-link{display:block;color:inherit;text-decoration:none;height:100%}.catalog-image{aspect-ratio:1/1;background:radial-gradient(circle at 50% 42%,#fff 0,#eceee7 68%);display:grid;place-items:center;overflow:hidden}.catalog-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.catalog-product-copy{padding:1rem}.catalog-product-copy>small{display:block;color:var(--muted);font-size:.75rem;margin:.55rem 0 .18rem}.catalog-product-copy h2{font-size:1.35rem;letter-spacing:-.04em;margin:0}.catalog-product-copy p{font-size:.78rem;color:var(--muted);margin:.3rem 0 1rem}.catalog-product-copy>div{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.catalog-product-copy>div strong{font-size:.9rem}.catalog-product-copy>div span{font-size:.75rem;font-weight:850}.available-badge,.upcoming-badge{display:inline-flex;border-radius:999px;padding:.28rem .5rem;font-size:.66rem;font-weight:900}.available-badge{background:var(--acid)}.upcoming-badge{background:#e9ebe4;color:var(--muted)}.catalog-product.upcoming{opacity:.72}.catalog-product.upcoming .catalog-image{filter:saturate(.55)}.catalog-request{grid-column:span 3;background:var(--ink);color:#fff;min-height:150px;padding:1.3rem;display:flex;align-items:center;gap:1.2rem}.catalog-request .catalog-request-mark{width:70px;height:70px;border-radius:50%;background:var(--acid);color:var(--ink);display:grid;place-items:center;font-size:2.2rem;flex:0 0 auto}.catalog-request h2{font-size:1.5rem;margin:.2rem 0}.catalog-request p{margin:0;color:#c9cdc2;max-width:680px}.catalog-request .eyebrow{color:var(--acid)}.catalog-empty{text-align:center;background:#fff;border:1px dashed var(--line);border-radius:16px;padding:2rem;color:var(--muted)}
.workspace{max-width:1220px;margin:auto;padding:1rem;display:grid;gap:1rem}.preview-card,.controls-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}.preview-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--line)}.eyebrow{display:block;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:850}.preview-head strong{display:block;font-size:1.08rem;margin-top:.1rem}.side-tabs{display:flex;background:#f0f1ec;padding:.2rem;border-radius:12px}.side-tab{border:0;background:transparent;border-radius:9px;padding:.55rem .7rem;font-weight:800;font-size:.84rem;white-space:nowrap}.side-tab.active{background:var(--ink);color:#fff}.side-tab span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--acid);margin-left:.2rem;opacity:0}.side-tab span.filled{opacity:1}
.stage{background:#e5e7df;min-height:390px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.stage::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,#fff 0,rgba(255,255,255,.72) 28%,transparent 62%),linear-gradient(135deg,rgba(216,255,69,.18),transparent 42%)}.shirt-wrap{position:relative;width:min(96%,440px);aspect-ratio:1/1.05;display:flex;align-items:center;justify-content:center;touch-action:none}.shirt{position:absolute;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 18px rgba(38,42,31,.15));user-select:none;pointer-events:none}.shirt-wrap.back-view .shirt{filter:drop-shadow(0 20px 18px rgba(38,42,31,.15)) saturate(.96)}.back-collar{display:none;position:absolute;z-index:2;top:16.4%;left:44%;width:12%;height:3.5%;border-bottom:2px solid #dadbd7;border-radius:0 0 50% 50%;pointer-events:none}.shirt-wrap.back-view .back-collar{display:block}.design-area{position:absolute;z-index:3;left:29%;top:25%;width:42%;height:53%;touch-action:none}.gesture-tip{position:absolute;z-index:5;left:50%;bottom:.65rem;transform:translateX(-50%);width:max-content;max-width:92%;background:rgba(16,17,15,.82);color:#fff;padding:.43rem .7rem;border-radius:999px;font-size:.7rem;text-align:center}
.design-item{position:absolute;left:50%;top:30%;width:58%;min-height:34px;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;cursor:grab;touch-action:none;user-select:none;border:1.5px solid transparent}.design-item.selected{border-color:var(--ink);box-shadow:0 0 0 2px var(--acid)}.design-item:active{cursor:grabbing}.design-item img{display:block;width:100%;max-height:100%;object-fit:contain;pointer-events:none}.design-item .text-art{width:100%;padding:.12em;text-align:center;font-weight:950;font-size:clamp(.8rem,3.6vw,2rem);line-height:.9;letter-spacing:-.055em;text-transform:uppercase;overflow-wrap:anywhere}.design-item .text-art.outline{color:transparent;-webkit-text-stroke:1.4px var(--ink);letter-spacing:.03em}.design-item .text-art.compact{font-stretch:condensed;letter-spacing:-.09em}.design-item .resize-handle{display:none;position:absolute;right:-11px;bottom:-11px;width:24px;height:24px;border:3px solid #fff;border-radius:50%;background:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.25);cursor:nwse-resize}.design-item.selected .resize-handle{display:block}.ai-art{border:3px solid var(--ink);background:var(--acid);padding:.34em .3em!important;font-style:italic;box-shadow:4px 4px 0 var(--ink)}
.selection-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.65rem;border-top:1px solid var(--line)}.size-control{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;font-size:.82rem;font-weight:800}.size-control input{width:100%;accent-color:var(--ink);height:28px}.selection-tools button{border:1px solid var(--line);background:#f7f8f4;border-radius:10px;padding:.65rem;font-weight:750;font-size:.84rem}.selection-tools .danger{color:var(--danger)}
.controls-card{padding:1rem}.product-row{display:flex;justify-content:space-between;gap:1rem;padding:.15rem 0 .85rem}.product-row h1{font-size:1.65rem;letter-spacing:-.055em;margin:.15rem 0}.product-row p{margin:0;color:var(--muted);font-size:.9rem}.from-price{text-align:right;flex:0 0 auto}.from-price small{display:block;color:var(--muted);font-size:.7rem}.from-price strong{font-size:1.5rem;letter-spacing:-.04em}.control-section{padding:1rem 0;border-top:1px solid var(--line)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.section-title strong{font-size:.97rem}.section-title span{font-size:.72rem;color:var(--muted)}.size-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.35rem}.size-grid button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.65rem .2rem;font-weight:800}.size-grid button.selected{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:inset 0 -3px var(--acid)}
.draft-status{display:flex;align-items:center;gap:.45rem;margin:-.35rem 0 .8rem;color:#537000;font-size:.72rem}.draft-status[hidden]{display:none}.draft-status span{width:8px;height:8px;border-radius:50%;background:#75a91d;box-shadow:0 0 0 3px rgba(117,169,29,.14)}.draft-status.saving{color:var(--muted)}.draft-status.saving span{background:#d6a934}.draft-status.error{color:var(--danger)}.draft-status.error span{background:var(--danger)}
.product-selector{padding:.1rem 0 1rem}.product-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.product-option{display:grid;gap:.12rem;text-align:left;border:1px solid var(--line);background:#f8f9f5;border-radius:13px;padding:.72rem}.product-option span{font-size:.72rem;color:var(--muted)}.product-option strong{font-size:.93rem}.product-option small{font-size:.7rem;font-weight:850}.product-option.active{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:inset 0 -4px var(--acid)}.product-option.active span{color:#c9cdc2}.product-option.active small{color:var(--acid)}
.catalog-card{border:1px solid var(--line);background:#f8f9f5;border-radius:14px;padding:.75rem;margin:0 0 .2rem}.catalog-status{display:flex;align-items:center;gap:.45rem;font-size:.72rem;color:var(--muted);margin-bottom:.65rem}.status-dot{width:8px;height:8px;border-radius:50%;background:#d6a934;box-shadow:0 0 0 3px rgba(214,169,52,.16)}.status-dot.ready{background:#68a51e;box-shadow:0 0 0 3px rgba(104,165,30,.15)}.status-dot.pending{background:#d6a934}.status-dot.error{background:#b64337;box-shadow:0 0 0 3px rgba(182,67,55,.15)}.color-picker{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-weight:850;margin-bottom:.3rem}.color-chip{width:22px;height:22px;border:1px solid #b9bcb4;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px #fff}.catalog-card select{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.68rem;font-weight:750;color:var(--ink)}.catalog-card>small{display:block;color:var(--muted);font-size:.65rem;margin-top:.42rem}
.add-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.add-card{border:1px solid var(--line);background:#f8f9f5;border-radius:13px;padding:.75rem .45rem;text-align:center;min-height:102px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.add-card.featured{background:var(--acid);border-color:#a9c936;box-shadow:inset 0 -3px rgba(16,17,15,.12)}.add-card.help-card{background:#fff}.add-card:hover{border-color:#707567}.add-card strong{font-size:.82rem;margin:.25rem 0}.add-card small{font-size:.68rem;color:var(--muted)}.add-card input{display:none}.add-icon{font-size:1.25rem;font-weight:950}.drawer{margin-top:.65rem;border:1px solid var(--line);background:#f8f9f5;border-radius:14px;padding:.8rem}.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.drawer-head span{font-size:.58rem;background:var(--acid);padding:.18rem .3rem;border-radius:4px}.close-drawer{border:0;background:transparent;font-size:1.35rem;line-height:1}.drawer label{font-size:.75rem;color:var(--muted)}.drawer p{font-size:.7rem;color:var(--muted);line-height:1.35;margin:.5rem 0}.drawer textarea{display:block;width:100%;resize:vertical;border:1px solid var(--line);background:#fff;border-radius:9px;padding:.7rem;margin-top:.3rem;min-height:82px}.input-action{display:flex;gap:.35rem;margin-top:.25rem}.input-action input{min-width:0;flex:1;border:1px solid var(--line);background:#fff;border-radius:9px;padding:.66rem}.input-action button,.designer-submit{border:0;background:var(--ink);color:#fff;border-radius:9px;padding:.66rem .75rem;font-weight:800}.designer-submit{width:100%;margin-top:.55rem}.designer-intro{font-size:.82rem!important}.designer-notice{background:#efffd0;border:1px solid #b9d65d;border-radius:9px;padding:.6rem;margin-top:.55rem;font-size:.75rem}.ai-results{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.ai-option{border:1px solid var(--line);background:#fff;border-radius:10px;padding:.28rem;overflow:hidden}.ai-thumb{display:block;width:100%;aspect-ratio:1;background-image:url('ai-designs.png');background-size:300% 100%;background-repeat:no-repeat}.ai-option:nth-child(1) .ai-thumb{background-position:0 center}.ai-option:nth-child(2) .ai-thumb{background-position:50% center}.ai-option:nth-child(3) .ai-thumb{background-position:100% center}.ai-option small{display:block;font-size:.62rem;padding:.3rem .1rem .15rem;color:var(--muted)}
.design-item .ai-image{display:block;width:100%;aspect-ratio:1;background-image:url('ai-designs.png');background-size:300% 100%;background-repeat:no-repeat}.design-item .ai-image.pos-0{background-position:0 center}.design-item .ai-image.pos-1{background-position:50% center}.design-item .ai-image.pos-2{background-position:100% center}
.layers{display:grid;gap:.35rem}.empty-layer{border:1px dashed #bbc0b4;border-radius:10px;color:var(--muted);font-size:.78rem;text-align:center;padding:.8rem}.layer{display:flex;align-items:center;gap:.6rem;width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem;text-align:left}.layer.selected{border-color:var(--ink);box-shadow:inset 3px 0 var(--acid)}.layer-icon{width:28px;height:28px;border-radius:7px;background:#edf0e7;display:grid;place-items:center;font-weight:900;overflow:hidden}.layer-icon img{width:100%;height:100%;object-fit:cover}.layer strong{display:block;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer small{color:var(--muted);font-size:.66rem}.price-breakdown{border:1px solid var(--line);border-radius:13px;padding:.75rem;margin-top:.2rem}.price-breakdown>div{display:flex;justify-content:space-between;padding:.22rem 0;font-size:.84rem}.price-breakdown .price-total{border-top:1px solid var(--line);margin-top:.35rem;padding-top:.6rem;font-size:1.05rem}.confirm-btn{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:var(--ink);color:#fff;border-radius:13px;padding:.95rem 1rem;font-weight:900;margin-top:.7rem}.confirm-btn span{color:var(--acid);font-size:1.05rem}.production-note{font-size:.7rem;line-height:1.4;text-align:center;color:var(--muted);margin:.55rem .5rem 0}
dialog{width:min(94vw,720px);border:0;border-radius:22px;padding:1.3rem;box-shadow:0 30px 90px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(16,17,15,.7);backdrop-filter:blur(5px)}dialog h2{font-size:1.75rem;letter-spacing:-.045em;margin:.25rem 0 .3rem}.preview-help{margin:0 2.5rem .9rem 0;color:var(--muted);font-size:.82rem;line-height:1.35}.dialog-close{position:absolute;right:.8rem;top:.7rem;border:0;background:#eef0e9;width:34px;height:34px;border-radius:50%;font-size:1.35rem}.mini-previews{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.final-preview-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.final-preview-card header{height:auto;padding:.48rem .6rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.final-preview-card header strong{font-size:.78rem}.final-preview-card header span{font-size:.62rem;font-weight:850;padding:.2rem .42rem;border-radius:999px;background:#eef0e9;color:var(--muted)}.final-preview-card header span.designed{background:var(--acid);color:var(--ink)}.final-thumb{height:165px;background:#e9ebe4 url('shirt.png') center/contain no-repeat;position:relative;overflow:hidden}.thumb-design-zone{position:absolute;left:36.5%;top:27%;width:27%;height:50%}.final-thumb.leftSleeve .thumb-design-zone{left:13.5%;top:32%;width:13%;height:20%;transform:rotate(15deg)}.final-thumb.rightSleeve .thumb-design-zone{left:73.5%;top:32%;width:13%;height:20%;transform:rotate(-15deg)}.thumb-design-item{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.thumb-design-item img{display:block;width:100%;max-height:100%;object-fit:contain}.thumb-design-item .ai-image{width:100%;aspect-ratio:1;background-image:url('ai-designs.png');background-size:300% 100%;background-repeat:no-repeat}.empty-preview{position:absolute;left:50%;bottom:.55rem;transform:translateX(-50%);background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:999px;padding:.22rem .48rem;font-size:.62rem;color:var(--muted);white-space:nowrap}.summary-list{border:1px solid var(--line);border-radius:12px;padding:.65rem;margin:.8rem 0}.summary-list div{display:flex;justify-content:space-between;gap:1rem;padding:.25rem}.summary-list span{color:var(--muted)}.summary-list strong{text-align:right}.shopify-btn{width:100%;border:0;background:var(--acid);border-radius:12px;padding:.9rem;font-weight:950}.shopify-message{background:#f0f3e8;border-radius:10px;padding:.75rem;font-size:.8rem;line-height:1.4;margin-top:.6rem}.shopify-message strong{display:block}.back-edit{width:100%;border:0;background:transparent;padding:.8rem .5rem .2rem;font-weight:750}button:focus-visible,label:has(input:focus-visible){outline:3px solid var(--acid);outline-offset:2px}
@media(min-width:900px){header{padding:0 2rem}.header-copy{display:block;border-left:1px solid var(--line);padding-left:1rem}.header-copy strong,.header-copy span{display:block}.header-copy strong{font-size:.84rem}.header-copy span{font-size:.7rem;color:var(--muted);margin-top:.15rem}.workspace{grid-template-columns:minmax(0,1.25fr) minmax(380px,.75fr);align-items:start;padding:1.4rem}.preview-card{position:sticky;top:88px}.stage{min-height:660px}.shirt-wrap{width:min(86%,590px)}.controls-card{padding:1.25rem}.design-item .text-art{font-size:2rem}.selection-tools{padding:.75rem 1rem}}
@media(max-width:520px){.demo-bar{font-size:.62rem;display:block}.demo-bar span{display:none}header{height:60px}.workspace{padding:.65rem}.preview-card,.controls-card{border-radius:17px}.stage{min-height:355px}.shirt-wrap{width:100%}.preview-head{padding:.6rem .7rem}.side-tab{padding:.5rem .55rem}.gesture-tip{font-size:.62rem}.controls-card{padding:.8rem}.product-row h1{font-size:1.4rem}.add-card{min-height:88px}.size-grid{gap:.25rem}.size-grid button{font-size:.78rem}}
@media(max-width:860px){.catalog-intro{grid-template-columns:1fr}.catalog-search{grid-column:1;grid-row:auto;margin-top:1rem}.catalog-grid{grid-template-columns:1fr 1fr}.catalog-request{grid-column:span 2}}
@media(max-width:560px){.catalog-page{padding:.85rem}.catalog-intro h1{font-size:2.35rem}.catalog-grid{grid-template-columns:1fr}.catalog-request{grid-column:span 1}.catalog-product-copy h2{font-size:1.2rem}.catalog-image{aspect-ratio:1.15/1}.editor-back{font-size:.7rem;padding:.45rem}.editor-view .header-copy{display:none}.editor-view .brand{font-size:1.08rem}}
@media(max-width:560px){.resume-draft{display:block}.resume-actions{margin-top:.75rem}.resume-actions button{flex:1}}

/* V4: mangas, cantidades y descuentos */
.side-tabs{max-width:78%;overflow-x:auto;scrollbar-width:none}.side-tabs::-webkit-scrollbar{display:none}.side-tab{font-size:.76rem}
.design-area,.shirt{transition:.25s ease}.shirt-wrap.left-sleeve-view .shirt{transform:scale(1.13)}.shirt-wrap.right-sleeve-view .shirt{transform:scale(1.13) scaleX(-1)}.shirt-wrap.left-sleeve-view .design-area{left:40%;top:25%;width:14%;height:22%;transform:rotate(-6deg)}.shirt-wrap.right-sleeve-view .design-area{left:46%;top:25%;width:14%;height:22%;transform:rotate(6deg)}.stage.image-loading::after{content:"Cargando color…";position:absolute;z-index:6;left:50%;top:1rem;transform:translateX(-50%);background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:999px;padding:.4rem .7rem;font-size:.7rem;font-weight:800;color:var(--muted)}
/* Las sudaderas Native Spirit no tienen packshot lateral útil: acercamos cada manga real del frontal. */
.shirt-wrap[data-product="NS407"].left-sleeve-view .shirt,.shirt-wrap[data-product="NS408"].left-sleeve-view .shirt{transform:scale(1.7) translateX(28%)}
.shirt-wrap[data-product="NS407"].right-sleeve-view .shirt,.shirt-wrap[data-product="NS408"].right-sleeve-view .shirt{transform:scale(1.7) translateX(-28%)}
.shirt-wrap[data-product="NS407"].left-sleeve-view .design-area,.shirt-wrap[data-product="NS408"].left-sleeve-view .design-area{left:39%;top:27%;width:22%;height:42%;transform:rotate(4deg)}
.shirt-wrap[data-product="NS407"].right-sleeve-view .design-area,.shirt-wrap[data-product="NS408"].right-sleeve-view .design-area{left:39%;top:27%;width:22%;height:42%;transform:rotate(-4deg)}
/* En los packshots B&C la manga forma parte de la foto frontal. La acercamos y
   colocamos la zona editable sobre el tramo exterior realmente imprimible. */
.shirt-wrap[data-product="WG001"].left-sleeve-view .shirt,.shirt-wrap[data-product="WG002"].left-sleeve-view .shirt{transform:none}
.shirt-wrap[data-product="WG001"].right-sleeve-view .shirt,.shirt-wrap[data-product="WG002"].right-sleeve-view .shirt{transform:scaleX(-1)}
.shirt-wrap[data-product="WG001"].left-sleeve-view .design-area,.shirt-wrap[data-product="WG002"].left-sleeve-view .design-area,.shirt-wrap[data-product="WG001"].right-sleeve-view .design-area,.shirt-wrap[data-product="WG002"].right-sleeve-view .design-area{left:37%;top:29%;width:26%;height:46%;transform:none}
.qty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.qty-grid label{display:flex;align-items:center;justify-content:space-between;gap:.35rem;border:1px solid var(--line);border-radius:10px;padding:.45rem .5rem;font-weight:850}.qty-grid input{width:46px;border:0;background:#f0f1ec;border-radius:7px;padding:.38rem .15rem;text-align:center;font-weight:850}.bulk-hint{font-size:.72rem;color:var(--muted);margin:.55rem 0 0}.bulk-hint.active{color:#537000;font-weight:800}.price-breakdown .discount-row{color:#537000;font-weight:850}
.qty-grid label.unavailable{opacity:.38}.qty-grid input:disabled{cursor:not-allowed}
@media(max-width:520px){.preview-head{display:block}.preview-head>div:first-child{display:none}.side-tabs{max-width:100%;margin:auto}.qty-grid{gap:.3rem}.qty-grid label{font-size:.78rem;padding:.35rem}.qty-grid input{width:42px}}

/* La miniatura es apaisada: estas posiciones colocan el arte sobre la manga visible. */
.final-thumb.leftSleeve .thumb-design-zone{left:28.5%;top:24%;width:11%}
.final-thumb.rightSleeve .thumb-design-zone{left:60.5%;top:24%;width:11%}
.thumb-design-item .ai-image.pos-0{background-position:0 center}
.thumb-design-item .ai-image.pos-1{background-position:50% center}
.thumb-design-item .ai-image.pos-2{background-position:100% center}

/* Render final: reutiliza exactamente la geometría del editor. */
dialog{width:min(96vw,820px)}
.mini-previews{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}
.final-thumb{height:auto;aspect-ratio:1/1.05;background:#e9ebe4;isolation:isolate}
.final-shirt{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:0;filter:drop-shadow(0 10px 10px rgba(38,42,31,.13))}
.thumb-design-zone{z-index:2;left:29%;top:25%;width:42%;height:53%;transform:none}
.final-thumb.leftSleeve .final-shirt{transform:scale(1.13)}
.final-thumb.rightSleeve .final-shirt{transform:scale(1.13) scaleX(-1)}
.final-thumb.leftSleeve .thumb-design-zone{left:40%;top:25%;width:14%;height:22%;transform:rotate(-6deg)}
.final-thumb.rightSleeve .thumb-design-zone{left:46%;top:25%;width:14%;height:22%;transform:rotate(6deg)}
.final-thumb[data-product="NS407"].leftSleeve .final-shirt,.final-thumb[data-product="NS408"].leftSleeve .final-shirt{transform:scale(1.7) translateX(28%)}
.final-thumb[data-product="NS407"].rightSleeve .final-shirt,.final-thumb[data-product="NS408"].rightSleeve .final-shirt{transform:scale(1.7) translateX(-28%)}
.final-thumb[data-product="NS407"].leftSleeve .thumb-design-zone,.final-thumb[data-product="NS408"].leftSleeve .thumb-design-zone{left:39%;top:27%;width:22%;height:42%;transform:rotate(4deg)}
.final-thumb[data-product="NS407"].rightSleeve .thumb-design-zone,.final-thumb[data-product="NS408"].rightSleeve .thumb-design-zone{left:39%;top:27%;width:22%;height:42%;transform:rotate(-4deg)}
.final-thumb[data-product="WG001"].leftSleeve .final-shirt,.final-thumb[data-product="WG002"].leftSleeve .final-shirt{transform:none}
.final-thumb[data-product="WG001"].rightSleeve .final-shirt,.final-thumb[data-product="WG002"].rightSleeve .final-shirt{transform:scaleX(-1)}
.final-thumb[data-product="WG001"].leftSleeve .thumb-design-zone,.final-thumb[data-product="WG002"].leftSleeve .thumb-design-zone,.final-thumb[data-product="WG001"].rightSleeve .thumb-design-zone,.final-thumb[data-product="WG002"].rightSleeve .thumb-design-zone{left:37%;top:29%;width:26%;height:46%;transform:none}
.empty-preview{z-index:3}
@media(max-width:680px){.mini-previews{grid-template-columns:1fr 1fr}.final-preview-card header{align-items:flex-start;gap:.25rem}.final-preview-card header strong{font-size:.72rem}.final-preview-card header span{font-size:.58rem}}
.ai-thumb,.design-item .ai-image,.thumb-design-item .ai-image{background-image:url("ai-designs.png?v=2")}
.ai-status{min-height:2em}.ai-status.loading{color:#5e6400}.ai-status.success{color:#537000;font-weight:750}.ai-status.error{color:var(--danger);font-weight:750}.input-action button:disabled{opacity:.58;cursor:wait}.ai-option.generated{padding:.3rem}.ai-option.generated img{display:block;width:100%;aspect-ratio:1;object-fit:contain;border-radius:7px;background:repeating-conic-gradient(#eef0e9 0 25%,#fff 0 50%) 50%/14px 14px}.ai-option.generated small{font-weight:800;color:var(--ink)}

/* PA0306: tres zonas nuevas sobre vistas frontal, trasera y lateral reales. */
.shirt-wrap[data-product="PA0306"]{aspect-ratio:4/5}
.shirt-wrap[data-product="PA0306"] .shirt,.shirt-wrap[data-product="PA0306"].left-sleeve-view .shirt{transform:none}
.shirt-wrap[data-product="PA0306"] .design-area{left:22%;top:13%;width:56%;height:64%;transform:none}
.shirt-wrap[data-product="PA0306"].left-sleeve-view .design-area{left:26%;top:12%;width:48%;height:66%;transform:none}
.final-thumb[data-product="PA0306"]{aspect-ratio:4/5}
.final-thumb[data-product="PA0306"] .thumb-design-zone{left:22%;top:13%;width:56%;height:64%;transform:none}
.final-thumb.leftSleeve[data-product="PA0306"] .final-shirt{transform:none}
.final-thumb.leftSleeve[data-product="PA0306"] .thumb-design-zone{left:26%;top:12%;width:48%;height:66%;transform:none}

/* PA189: pantalón largo con vistas frontal, trasera y lateral oficiales. */
.shirt-wrap[data-product="PA189"]{aspect-ratio:4/5}
.shirt-wrap[data-product="PA189"] .shirt,.shirt-wrap[data-product="PA189"].left-sleeve-view .shirt{transform:none}
.shirt-wrap[data-product="PA189"] .design-area{left:32%;top:11%;width:36%;height:77%;transform:none}
.shirt-wrap[data-product="PA189"].left-sleeve-view .design-area{left:36%;top:11%;width:28%;height:77%;transform:none}
.final-thumb[data-product="PA189"]{aspect-ratio:4/5}
.final-thumb[data-product="PA189"] .thumb-design-zone{left:32%;top:11%;width:36%;height:77%;transform:none}
.final-thumb.leftSleeve[data-product="PA189"] .final-shirt{transform:none}
.final-thumb.leftSleeve[data-product="PA189"] .thumb-design-zone{left:36%;top:11%;width:28%;height:77%;transform:none}

/* Biblioteca interna de archivos de producción. */
.production-page{max-width:1180px;margin:auto;padding:clamp(1rem,3vw,2.2rem)}.production-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin:.5rem 0 1.2rem}.production-heading h1{font-size:clamp(2rem,4.5vw,3.8rem);line-height:.95;letter-spacing:-.06em;margin:.35rem 0 .6rem}.production-heading p{margin:0;color:var(--muted);max-width:700px;line-height:1.5}.production-heading>a{color:#fff;background:var(--ink);border-radius:11px;padding:.72rem .9rem;text-decoration:none;font-weight:850;white-space:nowrap}.production-guidance{display:grid;gap:.2rem;border:1px solid #aac735;background:#efffd0;border-radius:15px;padding:1rem;margin-bottom:1rem}.production-guidance span{color:#4c5733;line-height:1.45}.production-status{padding:1.5rem;border:1px dashed #bbc0b4;border-radius:15px;text-align:center;color:var(--muted);background:#fff}.production-projects{display:grid;gap:1rem}.production-group{border:0}.production-group>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none;padding:.8rem .2rem}.production-group>summary::-webkit-details-marker{display:none}.production-group>summary span strong,.production-group>summary span small{display:block}.production-group>summary span small{color:var(--muted);margin-top:.15rem}.production-group>summary b{background:var(--ink);color:#fff;border-radius:999px;padding:.25rem .55rem}.production-group-list{display:grid;gap:1rem}.production-project{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;scroll-margin-top:1rem}.production-project>header{position:static;height:auto;padding:1rem 1.1rem;background:var(--ink);color:#fff;border:0;display:flex;align-items:start;justify-content:space-between}.production-project>header strong,.production-project>header small{display:block}.production-project>header strong{font-size:1.05rem}.production-project>header small{color:#c9cdc2;margin-top:.25rem}.production-state{background:#ecefe7;color:var(--ink);font-size:.68rem;font-weight:900;border-radius:999px;padding:.3rem .5rem}.production-state.paid{background:var(--acid)}.production-body{padding:1rem}.production-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:1rem}.production-meta div{border:1px solid var(--line);border-radius:11px;padding:.65rem}.production-meta span,.production-meta strong{display:block}.production-meta span{font-size:.67rem;color:var(--muted);margin-bottom:.2rem}.production-meta strong{font-size:.82rem}.production-originals,.production-zones{display:grid;gap:.55rem}.production-originals{margin-bottom:1rem}.production-original{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:10px;padding:.65rem}.production-original span{font-size:.78rem;overflow:hidden;text-overflow:ellipsis}.production-original a{color:var(--ink);font-size:.75rem;font-weight:850}.production-zone{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);background:#f7f8f4;border-radius:12px;padding:.75rem}.production-zone div{min-width:0}.production-zone strong,.production-zone small{display:block}.production-zone small{color:var(--muted);font-size:.7rem;margin-top:.2rem}.production-zone button{border:0;background:var(--ink);color:#fff;border-radius:9px;padding:.65rem .75rem;font-weight:850;white-space:nowrap}.production-zone button:disabled{opacity:.55;cursor:wait}.production-result{margin-top:.75rem;color:var(--muted);font-size:.76rem;line-height:1.4}.production-result.warning{color:#8a4f00}.production-result.success{color:#537000;font-weight:750}
@media(max-width:700px){.production-heading{align-items:start;display:grid}.production-meta{grid-template-columns:1fr 1fr}.production-zone{align-items:start;display:grid}.production-zone button{width:100%}}
