/* OM Studio v3 · Frontend */
#oms3-studio{
  --ink:#0F1620;--ground:#F1F3F6;--surface:#fff;--line:#d5dae1;
  --brass:#B29A4E;--brass2:#d4bd76;--marino:#132A42;--marino3:#0c1620;
  --crema:#EFEADD;--sale:#9a3b2e;--ok:#1f7a4d;
  --serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',-apple-system,sans-serif;
  --e:cubic-bezier(.16,1,.3,1);
  font-family:var(--sans);color:var(--ink);background:var(--ground);
  margin:0 calc(50% - 50vw);padding:clamp(24px,4vw,48px) clamp(12px,3vw,32px) 100px;
  min-height:100vh;
}
#oms3-studio *,#oms3-studio *::before,#oms3-studio *::after{box-sizing:border-box}
#oms3-studio h2,#oms3-studio h3,#oms3-studio h4{font-family:var(--serif);font-weight:600;letter-spacing:-.015em;margin:0;color:var(--ink)}
#oms3-studio .oms3-kicker{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--brass);font-weight:700;display:inline-flex;align-items:center;gap:10px}
#oms3-studio .oms3-kicker::before{content:"";width:26px;height:1px;background:var(--brass)}

/* Header */
#oms3-studio .oms3-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:18px;flex-wrap:wrap;max-width:1440px;margin-inline:auto}
#oms3-studio .oms3-head h2{font-size:clamp(1.6rem,3vw,2.4rem);margin-top:8px}
#oms3-studio .oms3-head h2 em{font-style:italic;color:var(--brass)}
#oms3-studio .oms3-head .oms3-hd-actions{display:flex;gap:8px}
#oms3-studio .oms3-hd-actions button{background:transparent;border:1px solid var(--line);padding:9px 16px;font-family:var(--sans);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--ink);cursor:pointer;transition:all .3s var(--e)}
#oms3-studio .oms3-hd-actions button:hover{border-color:var(--ink);background:var(--ink);color:#fff}

/* Layout 3 columnas · más amplio para respirar */
#oms3-studio .oms3-app{display:grid;grid-template-columns:360px 1fr 340px;gap:22px;max-width:1620px;margin-inline:auto;align-items:start}

/* ═══ COL IZQUIERDA · CATÁLOGO ═══ */
#oms3-studio .oms3-left{background:var(--surface);border:1px solid var(--line);padding:18px;position:sticky;top:18px;max-height:calc(100vh - 40px);overflow:hidden;display:flex;flex-direction:column}
#oms3-studio .oms3-search{position:relative;margin-bottom:12px}
#oms3-studio .oms3-search input{width:100%;padding:11px 12px 11px 34px;border:1px solid var(--line);border-radius:0;font-family:var(--sans);font-size:.85rem;background:#fff;color:var(--ink)}
#oms3-studio .oms3-search input:focus{outline:none;border-color:var(--brass)}
#oms3-studio .oms3-search::before{content:"⌕";position:absolute;left:11px;top:50%;transform:translateY(-50%);color:#8a8778}
#oms3-studio .oms3-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
#oms3-studio .oms3-filters button{background:transparent;border:1px solid var(--line);padding:5px 10px;font-family:var(--sans);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink);cursor:pointer;transition:all .3s var(--e)}
#oms3-studio .oms3-filters button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
#oms3-studio .oms3-cats{overflow-y:auto;flex:1;margin:-4px -4px 0;padding:4px 4px 0;scrollbar-width:thin}
#oms3-studio .oms3-cats::-webkit-scrollbar{width:5px}
#oms3-studio .oms3-cats::-webkit-scrollbar-thumb{background:var(--line)}
#oms3-studio .oms3-cat{margin-bottom:6px}
#oms3-studio .oms3-cat-h{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 12px;background:transparent;border:0;border-top:1px solid var(--line);cursor:pointer;text-align:left;font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--ink)}
#oms3-studio .oms3-cat-h:hover{color:var(--brass)}
#oms3-studio .oms3-cat-h .count{background:rgba(15,22,32,.06);color:#8a8778;padding:2px 8px;border-radius:99px;font-size:.6rem;letter-spacing:.05em;font-weight:600}
#oms3-studio .oms3-cat-h .arw{transition:transform .3s var(--e);color:var(--brass);font-size:.7rem;margin-left:6px}
#oms3-studio .oms3-cat.open .oms3-cat-h .arw{transform:rotate(90deg)}
#oms3-studio .oms3-cat-body{display:none;padding:8px 0 12px;grid-template-columns:1fr 1fr;gap:8px}
#oms3-studio .oms3-cat.open .oms3-cat-body{display:grid}
#oms3-studio .oms3-prod{position:relative;background:#fff;border:1px solid var(--line);cursor:pointer;padding:0;text-align:left;transition:all .35s var(--e);overflow:hidden}
#oms3-studio .oms3-prod:hover{border-color:var(--ink);transform:translateY(-1px)}
#oms3-studio .oms3-prod.on{border-color:var(--brass);box-shadow:0 0 0 1px var(--brass)}
#oms3-studio .oms3-prod.on::after{content:"✓";position:absolute;top:5px;right:5px;background:var(--brass);color:#fff;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.66rem;font-weight:700;z-index:2}
#oms3-studio .oms3-prod-img{position:relative;aspect-ratio:4/5;overflow:hidden;background:#e7eaef}
#oms3-studio .oms3-prod-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s var(--e)}
#oms3-studio .oms3-prod:hover .oms3-prod-img img{transform:scale(1.06)}
#oms3-studio .oms3-prod-img .sale{position:absolute;top:5px;left:5px;background:var(--sale);color:#fff;font-size:.52rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:3px 6px}
#oms3-studio .oms3-prod-n{font-family:var(--serif);font-size:.8rem;padding:7px 8px 2px;line-height:1.2;color:var(--ink)}
#oms3-studio .oms3-prod-p{font-size:.72rem;font-weight:600;padding:0 8px 8px;color:var(--ink)}
#oms3-studio .oms3-prod-p s{color:#8a8778;font-weight:400;margin-left:5px;font-size:.65rem}

/* ═══ COL CENTRAL · CANVAS ═══ */
#oms3-studio .oms3-canvas-wrap{position:relative}
#oms3-studio .oms3-canvas{position:relative;aspect-ratio:3/4;background:radial-gradient(120% 90% at 70% 12%,rgba(212,189,118,.14),transparent 55%),linear-gradient(160deg,#1d3c5a,#132A42 60%,#0c1620);overflow:hidden;box-shadow:0 30px 60px rgba(15,22,32,.18)}
#oms3-studio .oms3-canvas.on-white{background:#F5F5F0}
#oms3-studio .oms3-canvas::after{content:"";position:absolute;inset:14px;border:1px solid rgba(212,189,118,.25);pointer-events:none;z-index:6}
/* Modelo base: llena el canvas */
#oms3-studio .oms3-model{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center center;pointer-events:none}

/* Capas de prenda: posicionadas por porcentaje anatómico */
#oms3-studio .oms3-layer{position:absolute;pointer-events:none;transform:translate(-50%,-50%);animation:oms3Drop .5s var(--e);will-change:transform,left,top,width}
#oms3-studio .oms3-layer img{width:100%;height:auto;display:block;user-drag:none;-webkit-user-drag:none;pointer-events:none}
#oms3-studio .oms3-layer[data-slot="bottom"]{z-index:2}
#oms3-studio .oms3-layer[data-slot="base"]  {z-index:3}
#oms3-studio .oms3-layer[data-slot="mid"]   {z-index:4}
#oms3-studio .oms3-layer[data-slot="outer"] {z-index:5}

/* Modo edición: capas draggables + handles de tamaño */
#oms3-studio .oms3-canvas.editing .oms3-layer{pointer-events:auto;cursor:move;outline:1px dashed rgba(212,189,118,.6);outline-offset:2px}
#oms3-studio .oms3-canvas.editing .oms3-layer.active{outline:2px solid var(--brass);outline-offset:4px;z-index:10}
#oms3-studio .oms3-canvas.editing .oms3-layer .oms3-handle{position:absolute;width:14px;height:14px;background:var(--brass);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 6px rgba(0,0,0,.3);pointer-events:auto;z-index:12}
#oms3-studio .oms3-canvas.editing .oms3-layer .oms3-handle.br{bottom:-7px;right:-7px;cursor:nwse-resize}
#oms3-studio .oms3-canvas.editing .oms3-layer .oms3-handle.bl{bottom:-7px;left:-7px;cursor:nesw-resize}
#oms3-studio .oms3-canvas.editing .oms3-layer .oms3-handle.tr{top:-7px;right:-7px;cursor:nesw-resize}
#oms3-studio .oms3-canvas.editing .oms3-layer .oms3-handle.tl{top:-7px;left:-7px;cursor:nwse-resize}
#oms3-studio .oms3-canvas.editing .oms3-layer.active .oms3-save-hint{position:absolute;top:-30px;right:0;background:var(--marino3);color:#EFEADD;padding:4px 10px;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;pointer-events:auto;cursor:pointer;font-weight:600}
#oms3-studio .oms3-canvas.editing .oms3-layer.active .oms3-save-hint:hover{background:var(--brass)}
#oms3-studio .oms3-edit-toggle{position:absolute;top:16px;left:16px;z-index:9;background:rgba(12,22,32,.72);border:1px solid rgba(255,255,255,.15);color:#EFEADD;padding:8px 14px;font-family:var(--sans);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700;cursor:pointer}
#oms3-studio .oms3-edit-toggle:hover{background:var(--brass)}
#oms3-studio .oms3-edit-toggle.on{background:var(--brass);border-color:var(--brass)}
@keyframes oms3Drop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
#oms3-studio .oms3-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:rgba(239,234,221,.6);z-index:2;padding:30px}
#oms3-studio .oms3-empty p{font-family:var(--serif);font-style:italic;font-size:1.2rem;max-width:24ch;margin:0}
#oms3-studio .oms3-canvas-actions{position:absolute;top:16px;right:16px;z-index:8;display:flex;flex-direction:column;gap:6px}
#oms3-studio .oms3-canvas-actions button{width:38px;height:38px;background:rgba(12,22,32,.65);border:1px solid rgba(255,255,255,.15);color:#EFEADD;cursor:pointer;font-size:1rem;transition:background .3s;border-radius:50%}
#oms3-studio .oms3-canvas-actions button:hover{background:var(--brass)}
#oms3-studio .oms3-trustline{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:12px;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:#66707d;font-weight:600}
#oms3-studio .oms3-trustline span::before{content:"✓ ";color:var(--brass)}

/* ═══ COL DERECHA · CONTROL ═══ */
#oms3-studio .oms3-right{display:flex;flex-direction:column;gap:14px;position:sticky;top:18px}
#oms3-studio .oms3-panel{background:var(--surface);border:1px solid var(--line);padding:20px;position:relative}
#oms3-studio .oms3-panel h3{font-size:1.1rem;margin-bottom:10px}
#oms3-studio .oms3-tallas{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
#oms3-studio .oms3-tallas button{padding:14px 8px;background:#fff;border:1px solid var(--line);cursor:pointer;font-family:var(--sans);transition:all .3s var(--e);color:var(--ink);text-align:center}
#oms3-studio .oms3-tallas button b{display:block;font-size:.95rem;letter-spacing:.2em;font-weight:700}
#oms3-studio .oms3-tallas button small{display:block;font-size:.6rem;letter-spacing:.1em;color:#8a8778;margin-top:2px}
#oms3-studio .oms3-tallas button.on{background:var(--ink);border-color:var(--ink);color:#fff}
#oms3-studio .oms3-tallas button.on small{color:var(--brass2)}
#oms3-studio .oms3-mine-btn{width:100%;padding:12px;background:transparent;border:1px dashed var(--brass);color:var(--brass);font-family:var(--sans);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;cursor:pointer;margin-top:10px;transition:all .3s var(--e)}
#oms3-studio .oms3-mine-btn:hover{background:var(--brass);color:#fff}
#oms3-studio .oms3-mine-btn::before{content:"📷 ";margin-right:6px}
#oms3-studio .oms3-mine-active{margin-top:8px;font-size:.7rem;color:var(--ok);display:flex;justify-content:space-between;align-items:center}
#oms3-studio .oms3-mine-active button{background:none;border:0;color:#8a8778;cursor:pointer;font-size:.9rem}

#oms3-studio .oms3-look-list{display:flex;flex-direction:column}
#oms3-studio .oms3-item{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.82rem}
#oms3-studio .oms3-item:last-child{border-bottom:0}
#oms3-studio .oms3-item img{width:38px;height:38px;object-fit:cover}
#oms3-studio .oms3-item .nm{flex:1;line-height:1.3}
#oms3-studio .oms3-item .nm small{color:#8a8778;display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}
#oms3-studio .oms3-item select{border:1px solid var(--line);padding:5px;font-family:var(--sans);font-size:.7rem;background:#fff;max-width:105px}
#oms3-studio .oms3-item select.err{border-color:var(--sale)}
#oms3-studio .oms3-item .rm{background:none;border:1px solid var(--line);border-radius:50%;width:22px;height:22px;cursor:pointer;color:#8a8778;line-height:1;flex:none;font-size:.8rem;transition:all .3s}
#oms3-studio .oms3-item .rm:hover{background:var(--sale);border-color:var(--sale);color:#fff}
#oms3-studio .oms3-empty-sum{font-family:var(--serif);font-style:italic;color:#8a8778;padding:12px 0;font-size:.9rem;text-align:center}

#oms3-studio .oms3-line{display:flex;justify-content:space-between;padding:8px 0;font-size:.78rem}
#oms3-studio .oms3-line.disc{color:var(--brass);font-weight:600}
#oms3-studio .oms3-line.sav{color:var(--ok);font-weight:600}
#oms3-studio .oms3-total{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0 6px;font-weight:700;border-top:1px solid var(--line)}
#oms3-studio .oms3-total b{font-size:1.5rem;letter-spacing:-.01em}

#oms3-studio .oms3-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:15px;border:1px solid var(--brass);background:var(--brass);color:#fff;font-family:var(--sans);font-size:.73rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:all .4s var(--e);text-decoration:none}
#oms3-studio .oms3-btn:hover{background:var(--brass2);border-color:var(--brass2);color:var(--marino3);transform:translateY(-1px);box-shadow:0 10px 24px rgba(178,154,78,.3)}
#oms3-studio .oms3-btn[disabled]{background:#c3c9d1;border-color:#c3c9d1;cursor:not-allowed;transform:none;box-shadow:none;color:#fff}
#oms3-studio .oms3-btn--ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
#oms3-studio .oms3-btn--ghost:hover{background:var(--ink);color:#fff;box-shadow:none}
#oms3-studio .oms3-microtrust{text-align:center;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:#8a8778;margin-top:10px}

/* Sticky mobile */
#oms3-studio .oms3-mob-sticky{position:fixed;left:0;right:0;bottom:0;z-index:9998;background:var(--marino3);padding:12px 16px;display:none;align-items:center;gap:12px;box-shadow:0 -16px 32px rgba(0,0,0,.3);transform:translateY(110%);transition:transform .5s var(--e)}
#oms3-studio .oms3-mob-sticky.on{transform:none}
#oms3-studio .oms3-mob-sticky .t{color:#c9c3b4;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;flex:1}
#oms3-studio .oms3-mob-sticky .t b{display:block;color:var(--brass2);font-size:1.1rem;letter-spacing:0}
#oms3-studio .oms3-mob-sticky button{padding:13px 22px;border:0;background:var(--brass);color:#fff;font-family:var(--sans);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;cursor:pointer}

/* Modal cliente */
#oms3-studio .oms3-modal{position:fixed;inset:0;z-index:99999;background:rgba(12,22,32,.85);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:20px}
#oms3-studio .oms3-modal.on{display:flex}
#oms3-studio .oms3-modal-in{background:var(--ground);max-width:520px;width:100%;padding:32px;position:relative;max-height:92vh;overflow-y:auto;animation:oms3Up .5s var(--e)}
@keyframes oms3Up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
#oms3-studio .oms3-x{position:absolute;top:14px;right:14px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer;color:var(--ink);font-size:1.1rem;transition:all .3s}
#oms3-studio .oms3-x:hover{background:var(--ink);color:#fff}
#oms3-studio .oms3-modal-in h3{font-size:1.5rem;margin:6px 0 4px}
#oms3-studio .oms3-modal-in > p{font-size:.86rem;color:#33404f;margin:0 0 14px}
#oms3-studio .oms3-drop{border:2px dashed var(--line);padding:32px 20px;text-align:center;cursor:pointer;transition:all .3s var(--e);background:#fff;font-size:.9rem}
#oms3-studio .oms3-drop:hover{border-color:var(--brass);background:rgba(178,154,78,.04)}
#oms3-studio .oms3-drop small{color:#66707d;display:block;margin-top:6px;font-size:.72rem}
#oms3-studio .oms3-form-row{margin:14px 0}
#oms3-studio .oms3-form-row label{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin-bottom:5px;font-weight:700}
#oms3-studio .oms3-form-row input[type=number]{width:100%;padding:11px 12px;border:1px solid var(--line);background:#fff;font-family:var(--sans);font-size:.9rem;color:var(--ink)}
#oms3-studio .oms3-form-row input:focus{outline:none;border-color:var(--brass)}
#oms3-studio .oms3-consent{display:flex;gap:9px;align-items:flex-start;font-size:.76rem;color:#33404f;margin:14px 0;line-height:1.5}
#oms3-studio .oms3-consent input{margin-top:3px;accent-color:var(--brass)}
#oms3-studio .oms3-load{text-align:center;padding:36px 0;display:none}
#oms3-studio .oms3-load .bar{height:2px;background:var(--line);overflow:hidden;margin-top:16px}
#oms3-studio .oms3-load .bar i{display:block;height:100%;width:35%;background:var(--brass);animation:oms3Bar 1.4s var(--e) infinite}
@keyframes oms3Bar{0%{transform:translateX(-120%)}100%{transform:translateX(340%)}}

/* Toast */
#oms3-studio .oms3-toast{position:fixed;left:50%;bottom:100px;transform:translateX(-50%) translateY(20px);background:var(--marino3);color:#EFEADD;padding:12px 22px;font-size:.8rem;letter-spacing:.06em;opacity:0;transition:all .4s var(--e);z-index:99999;pointer-events:none;max-width:90vw;text-align:center}
#oms3-studio .oms3-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

/* Preselect banner */
#oms3-studio .oms3-preselect{background:linear-gradient(135deg,rgba(178,154,78,.12),rgba(178,154,78,.05));border:1px solid rgba(178,154,78,.35);padding:12px 16px;margin-bottom:14px;display:flex;align-items:center;gap:10px;font-size:.82rem}
#oms3-studio .oms3-preselect::before{content:"✦";color:var(--brass);font-size:1.1rem}

/* Reveal */
#oms3-studio .oms3-r{opacity:0;transform:translateY(14px);animation:oms3In .7s var(--e) forwards}
#oms3-studio .oms3-r:nth-child(2){animation-delay:.06s}
#oms3-studio .oms3-r:nth-child(3){animation-delay:.12s}
@keyframes oms3In{to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  #oms3-studio *,#oms3-studio *::before,#oms3-studio *::after{animation:none !important;transition:none !important}
  #oms3-studio .oms3-r{opacity:1;transform:none}
}

/* Responsive */
@media (max-width:1200px){#oms3-studio .oms3-app{grid-template-columns:260px 1fr 300px}}
@media (max-width:980px){
  #oms3-studio .oms3-app{grid-template-columns:1fr;gap:14px}
  #oms3-studio .oms3-left,#oms3-studio .oms3-right{position:static;max-height:none}
  #oms3-studio .oms3-cats{max-height:340px}
  #oms3-studio .oms3-canvas{aspect-ratio:4/5}
  #oms3-studio .oms3-mob-sticky{display:flex}
}
@media (max-width:520px){
  #oms3-studio .oms3-cat-body{grid-template-columns:1fr 1fr}
  #oms3-studio{padding:16px 12px 130px}
}

/* ═══════════════════════════════════════════════════════════
   OM Studio 3.4 · plantilla anatómica M y editor de capas
   Referencia: 487 × 732 px
   ═══════════════════════════════════════════════════════════ */
#oms3-studio .oms3-canvas{
  aspect-ratio:487 / 732 !important;
  max-height:none;
  background:#F5F5F0;
}
#oms3-studio .oms3-model{
  object-fit:contain !important;
  object-position:center center !important;
  z-index:1;
}
#oms3-studio .oms3-layer{
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
  transform-origin:center center;
}
#oms3-studio .oms3-layer:focus{outline:none}
#oms3-studio .oms3-layer .oms3-handle{display:none}
#oms3-studio .oms3-canvas.editing .oms3-layer .oms3-handle{display:block}
#oms3-studio .oms3-canvas.editing .oms3-layer{touch-action:none}
#oms3-studio .oms3-canvas.editing .oms3-layer.active{filter:drop-shadow(0 5px 12px rgba(15,22,32,.18))}
#oms3-studio .oms3-empty{color:#66707d;background:rgba(245,245,240,.58);backdrop-filter:blur(1px)}
#oms3-studio .oms3-empty p{color:#66707d}

/* Guías anatómicas */
#oms3-studio .oms3-guides{position:absolute;inset:0;z-index:7;pointer-events:none;display:none}
#oms3-studio .oms3-canvas.show-guides .oms3-guides{display:block}
#oms3-studio .oms3-guide-v{position:absolute;top:0;bottom:0;width:1px;background:rgba(154,59,46,.66)}
#oms3-studio .oms3-guide-h{position:absolute;left:0;right:0;height:1px;background:rgba(178,154,78,.68)}
#oms3-studio .oms3-guide-h span{position:absolute;left:6px;top:-11px;background:rgba(12,22,32,.84);color:#EFEADD;padding:2px 5px;font-size:.5rem;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
#oms3-studio .oms3-canvas-actions button.on{background:var(--brass);border-color:var(--brass)}
#oms3-studio .oms3-reset-active{display:none}
#oms3-studio .oms3-canvas.editing .oms3-reset-active{display:block}
#oms3-studio .oms3-edit-help{display:none;margin-top:10px;padding:9px 12px;border:1px dashed rgba(178,154,78,.55);background:rgba(178,154,78,.07);color:#66707d;font-size:.68rem;letter-spacing:.04em;text-align:center}
#oms3-studio .oms3-edit-help.on{display:block}

/* Panel de ajuste preciso */
#oms3-studio .oms3-adjust-panel{border-color:rgba(178,154,78,.5);box-shadow:0 12px 30px rgba(15,22,32,.06)}
#oms3-studio .oms3-adjust-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
#oms3-studio .oms3-adjust-head h3{margin-bottom:0}
#oms3-studio .oms3-adjust-layer{font-size:.55rem;line-height:1.3;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);font-weight:700;text-align:right}
#oms3-studio .oms3-adjust-name{font-family:var(--serif);font-size:1rem;color:var(--ink);margin:8px 0 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
#oms3-studio .oms3-pos-editor{display:grid;grid-template-columns:1fr 1fr;gap:9px}
#oms3-studio .oms3-pos-editor label{display:flex;flex-direction:column;gap:4px;color:#66707d;font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
#oms3-studio .oms3-pos-editor input{width:100%;min-width:0;padding:8px 9px;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:.78rem;font-variant-numeric:tabular-nums}
#oms3-studio .oms3-pos-editor input:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 1px var(--brass)}
#oms3-studio .oms3-adjust-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px}
#oms3-studio .oms3-adjust-actions button{padding:9px 7px;border:1px solid var(--line);background:#fff;color:var(--ink);font-family:var(--sans);font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .25s var(--e)}
#oms3-studio .oms3-adjust-actions button:hover{background:var(--ink);border-color:var(--ink);color:#fff}
#oms3-studio .oms3-adjust-actions .oms3-save-layer{grid-column:1 / -1;background:var(--brass);border-color:var(--brass);color:#fff}
#oms3-studio .oms3-adjust-actions .oms3-save-layer:hover{background:var(--brass2);border-color:var(--brass2);color:var(--marino3)}
#oms3-studio .oms3-adjust-note{margin:9px 0 0;color:#8a8778;font-size:.62rem;line-height:1.45}

/* Selector de capa desde Tu look */
#oms3-studio .oms3-item{transition:background .25s var(--e),box-shadow .25s var(--e)}
#oms3-studio .oms3-item.active{background:rgba(178,154,78,.08);box-shadow:inset 3px 0 0 var(--brass);padding-left:7px;padding-right:5px}
#oms3-studio .oms3-item .adj{padding:5px 7px;border:1px solid rgba(178,154,78,.45);background:transparent;color:var(--brass);font-family:var(--sans);font-size:.52rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;flex:none}
#oms3-studio .oms3-item .adj:hover{background:var(--brass);color:#fff}

@media (max-width:980px){
  #oms3-studio .oms3-canvas{aspect-ratio:487 / 732 !important}
  #oms3-studio .oms3-adjust-panel{position:static}
}
@media (max-width:520px){
  #oms3-studio .oms3-edit-toggle{top:10px;left:10px;padding:7px 10px;font-size:.55rem}
  #oms3-studio .oms3-canvas-actions{top:10px;right:10px}
  #oms3-studio .oms3-canvas-actions button{width:34px;height:34px}
  #oms3-studio .oms3-guide-h span{font-size:.43rem;letter-spacing:.04em}
  #oms3-studio .oms3-item{flex-wrap:wrap}
  #oms3-studio .oms3-item .nm{min-width:130px}
}
#oms3-studio .oms3-tallas button:disabled{opacity:.38;cursor:not-allowed;background:#f5f5f2;color:#8a8778}

/* ═══════════════════════════════════════════════════════════
   OM Studio 3.6 · hero compacto de 1200 px
   Vista completa del outfit en escritorio sin alargar la página.
   ═══════════════════════════════════════════════════════════ */
#oms3-studio{
  --oms3-hero-h:clamp(400px,calc(100svh - 350px),650px);
  width:100%;
  max-width:1200px;
  min-height:0;
  margin:0 auto;
  padding:14px 12px 24px;
}
#oms3-studio .oms3-head{
  width:100%;
  max-width:1200px;
  margin:0 auto 10px;
  align-items:center;
}
#oms3-studio .oms3-head h2{font-size:clamp(1.45rem,2.25vw,2rem);margin-top:4px}
#oms3-studio .oms3-kicker{font-size:.61rem;letter-spacing:.25em}
#oms3-studio .oms3-hd-actions button{padding:8px 13px;font-size:.62rem}
#oms3-studio .oms3-app{
  width:100%;
  max-width:1200px;
  grid-template-columns:235px minmax(0,1fr) 255px;
  gap:12px;
  margin:0 auto;
}
#oms3-studio .oms3-left{
  top:8px;
  height:var(--oms3-hero-h);
  max-height:var(--oms3-hero-h);
  padding:12px;
}
#oms3-studio .oms3-right{
  top:8px;
  max-height:var(--oms3-hero-h);
  overflow-y:auto;
  gap:9px;
  scrollbar-width:thin;
}
#oms3-studio .oms3-right::-webkit-scrollbar{width:4px}
#oms3-studio .oms3-right::-webkit-scrollbar-thumb{background:var(--line)}
#oms3-studio .oms3-canvas-wrap{display:flex;flex-direction:column;align-items:center;min-width:0}
#oms3-studio .oms3-canvas{
  width:auto !important;
  height:var(--oms3-hero-h) !important;
  max-width:100% !important;
  max-height:var(--oms3-hero-h) !important;
  aspect-ratio:487 / 732 !important;
  margin:0 auto;
}
#oms3-studio .oms3-search{margin-bottom:8px}
#oms3-studio .oms3-search input{padding:9px 10px 9px 31px;font-size:.76rem}
#oms3-studio .oms3-filters{margin-bottom:9px}
#oms3-studio .oms3-filters button{padding:5px 9px;font-size:.56rem}
#oms3-studio .oms3-cat{margin-bottom:3px}
#oms3-studio .oms3-cat-h{padding:8px 9px;font-size:.62rem}
#oms3-studio .oms3-cat-body{padding:6px 0 8px;gap:6px}
#oms3-studio .oms3-prod-n{font-size:.7rem;padding:5px 6px 1px}
#oms3-studio .oms3-prod-p{font-size:.63rem;padding:0 6px 6px}
#oms3-studio .oms3-panel{padding:13px}
#oms3-studio .oms3-panel h3{font-size:1rem;margin-bottom:7px}
#oms3-studio .oms3-tallas button{padding:9px 5px}
#oms3-studio .oms3-tallas button b{font-size:.82rem}
#oms3-studio .oms3-tallas button small{font-size:.51rem}
#oms3-studio .oms3-mine-btn{padding:9px;margin-top:7px;font-size:.59rem}
#oms3-studio .oms3-item{gap:6px;padding:6px 0;font-size:.7rem}
#oms3-studio .oms3-item img{width:31px;height:31px}
#oms3-studio .oms3-item .nm small{font-size:.52rem}
#oms3-studio .oms3-item select{padding:4px;font-size:.6rem;max-width:86px}
#oms3-studio .oms3-line{padding:5px 0;font-size:.68rem}
#oms3-studio .oms3-total{padding:8px 0 4px}
#oms3-studio .oms3-total b{font-size:1.2rem}
#oms3-studio .oms3-btn{padding:11px;font-size:.63rem}
#oms3-studio .oms3-microtrust{font-size:.51rem;margin-top:6px}
#oms3-studio .oms3-trustline{margin-top:7px;gap:11px;font-size:.52rem}
#oms3-studio .oms3-edit-help{margin-top:6px;padding:6px 9px;font-size:.58rem}
#oms3-studio .oms3-adjust-name{font-size:.86rem;margin:5px 0 8px;padding-bottom:7px}
#oms3-studio .oms3-pos-editor{gap:6px}
#oms3-studio .oms3-pos-editor input{padding:6px 7px;font-size:.68rem}
#oms3-studio .oms3-adjust-actions{gap:5px;margin-top:7px}
#oms3-studio .oms3-adjust-actions button{padding:7px 5px;font-size:.52rem}
#oms3-studio .oms3-adjust-note{font-size:.54rem;margin-top:6px}

@media (min-width:981px) and (max-height:850px){
  #oms3-studio{padding-top:8px;padding-bottom:12px;--oms3-hero-h:clamp(380px,calc(100svh - 330px),540px)}
  #oms3-studio .oms3-head{margin-bottom:6px}
  #oms3-studio .oms3-kicker{display:none}
  #oms3-studio .oms3-head h2{font-size:1.5rem;margin:0}
  #oms3-studio .oms3-trustline{display:none}
}

@media (max-width:1200px) and (min-width:981px){
  #oms3-studio .oms3-app{grid-template-columns:220px minmax(0,1fr) 245px;gap:10px}
}

@media (max-width:980px){
  #oms3-studio{max-width:none;padding:16px 12px 130px;--oms3-hero-h:auto}
  #oms3-studio .oms3-app{grid-template-columns:1fr;gap:14px}
  #oms3-studio .oms3-left,#oms3-studio .oms3-right{height:auto;max-height:none;overflow:visible;position:static}
  #oms3-studio .oms3-canvas{width:100% !important;height:auto !important;max-height:none !important}
  #oms3-studio .oms3-trustline{display:flex}
}


/* ═══════════════════════════════════════════════════════════
   OM STUDIO 3.7 · EXPERIENCIA HERO PREMIUM A PANTALLA COMPLETA
   - Sin header, menú ni footer del tema
   - Fondo claro continuo
   - Todo el estudio visible en una sola pantalla de escritorio
   ═══════════════════════════════════════════════════════════ */

/* Limpiar por completo la plantilla de Neve/WordPress en la página del estudio */
body.oms3-studio-page{
  margin:0 !important;
  padding:0 !important;
  min-height:100dvh !important;
  background:#F4F3EF !important;
  color:#0F1620 !important;
}
body.oms3-studio-page #page,
body.oms3-studio-page .site,
body.oms3-studio-page #content,
body.oms3-studio-page .site-content,
body.oms3-studio-page .neve-main,
body.oms3-studio-page main,
body.oms3-studio-page .container.single-page-container,
body.oms3-studio-page .single-page-container,
body.oms3-studio-page .nv-single-page-wrap,
body.oms3-studio-page .nv-content-wrap,
body.oms3-studio-page article,
body.oms3-studio-page .entry-content{
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:#F4F3EF !important;
  box-shadow:none !important;
}
body.oms3-studio-page #header-grid,
body.oms3-studio-page .site-header,
body.oms3-studio-page .hfg_header,
body.oms3-studio-page header.header,
body.oms3-studio-page footer.site-footer,
body.oms3-studio-page .site-footer,
body.oms3-studio-page .hfg_footer,
body.oms3-studio-page #site-footer,
body.oms3-studio-page .nv-page-title-wrap,
body.oms3-studio-page .entry-header,
body.oms3-studio-page .scroll-to-top,
body.oms3-studio-page #scroll-to-top,
body.oms3-studio-page .nv-scroll-to-top{
  display:none !important;
}

/* Lienzo general: ocupa todo el viewport, sin bandas oscuras */
body.oms3-studio-page #oms3-studio{
  --oms3-shell-max:1540px;
  --oms3-page-pad:clamp(16px,2.2vw,38px);
  width:100vw !important;
  max-width:none !important;
  height:100dvh !important;
  min-height:650px !important;
  margin:0 !important;
  padding:clamp(14px,1.7vh,22px) var(--oms3-page-pad) clamp(14px,1.7vh,22px) !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  background:
    radial-gradient(circle at 50% 0%,rgba(178,154,78,.08),transparent 34%),
    linear-gradient(180deg,#FAFAF7 0%,#F4F3EF 100%) !important;
}
body.admin-bar.oms3-studio-page #oms3-studio{
  height:calc(100dvh - 32px) !important;
}

/* Encabezado interno fino y editorial */
body.oms3-studio-page #oms3-studio .oms3-head{
  flex:0 0 auto !important;
  width:100% !important;
  max-width:var(--oms3-shell-max) !important;
  min-height:56px !important;
  margin:0 auto 12px !important;
  padding:0 2px 11px !important;
  border-bottom:1px solid rgba(15,22,32,.10) !important;
  align-items:flex-end !important;
}
body.oms3-studio-page #oms3-studio .oms3-head h2{
  margin-top:3px !important;
  font-size:clamp(1.65rem,2vw,2.35rem) !important;
  line-height:1 !important;
  letter-spacing:-.025em !important;
}
body.oms3-studio-page #oms3-studio .oms3-kicker{
  font-size:.58rem !important;
  letter-spacing:.29em !important;
}
body.oms3-studio-page #oms3-studio .oms3-hd-actions button{
  min-height:38px !important;
  padding:8px 16px !important;
  border-color:rgba(15,22,32,.18) !important;
  background:rgba(255,255,255,.58) !important;
  font-size:.58rem !important;
  letter-spacing:.20em !important;
}
body.oms3-studio-page #oms3-studio .oms3-hd-actions button:hover{
  background:#0F1620 !important;
  border-color:#0F1620 !important;
}

/* Rejilla principal: ocupa el alto restante del hero */
body.oms3-studio-page #oms3-studio .oms3-app{
  flex:1 1 auto !important;
  width:100% !important;
  max-width:var(--oms3-shell-max) !important;
  min-height:0 !important;
  height:auto !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(230px,285px) minmax(360px,1fr) minmax(250px,310px) !important;
  gap:clamp(12px,1.35vw,22px) !important;
  align-items:stretch !important;
}

/* Tarjetas laterales claras, limpias y lujosas */
body.oms3-studio-page #oms3-studio .oms3-left,
body.oms3-studio-page #oms3-studio .oms3-right{
  position:static !important;
  top:auto !important;
  height:100% !important;
  max-height:none !important;
  min-height:0 !important;
  border:1px solid rgba(15,22,32,.10) !important;
  background:rgba(255,255,255,.86) !important;
  box-shadow:0 18px 48px rgba(15,22,32,.055) !important;
}
body.oms3-studio-page #oms3-studio .oms3-left{
  padding:15px !important;
  overflow:hidden !important;
}
body.oms3-studio-page #oms3-studio .oms3-right{
  padding:0 !important;
  gap:10px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(178,154,78,.48) transparent !important;
}
body.oms3-studio-page #oms3-studio .oms3-right::-webkit-scrollbar{width:4px !important;}
body.oms3-studio-page #oms3-studio .oms3-right::-webkit-scrollbar-thumb{background:rgba(178,154,78,.48) !important;}
body.oms3-studio-page #oms3-studio .oms3-panel{
  padding:14px !important;
  border:0 !important;
  border-bottom:1px solid rgba(15,22,32,.10) !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:none !important;
}
body.oms3-studio-page #oms3-studio .oms3-panel:last-child{border-bottom:0 !important;}
body.oms3-studio-page #oms3-studio .oms3-panel h3{
  margin-bottom:8px !important;
  font-size:1rem !important;
}

/* Catálogo más compacto sin perder legibilidad */
body.oms3-studio-page #oms3-studio .oms3-search{margin-bottom:9px !important;}
body.oms3-studio-page #oms3-studio .oms3-search input{
  min-height:42px !important;
  padding:9px 10px 9px 32px !important;
  background:#fff !important;
  font-size:.75rem !important;
}
body.oms3-studio-page #oms3-studio .oms3-filters{margin-bottom:10px !important;}
body.oms3-studio-page #oms3-studio .oms3-filters button{
  min-height:34px !important;
  padding:6px 11px !important;
  font-size:.55rem !important;
}
body.oms3-studio-page #oms3-studio .oms3-cats{
  min-height:0 !important;
  overflow-y:auto !important;
}
body.oms3-studio-page #oms3-studio .oms3-cat-h{
  padding:9px 10px !important;
  font-size:.61rem !important;
}
body.oms3-studio-page #oms3-studio .oms3-cat-body{gap:6px !important;padding:6px 0 9px !important;}
body.oms3-studio-page #oms3-studio .oms3-prod{
  border-color:rgba(15,22,32,.11) !important;
  box-shadow:none !important;
}
body.oms3-studio-page #oms3-studio .oms3-prod-img{aspect-ratio:4/5 !important;}
body.oms3-studio-page #oms3-studio .oms3-prod-n{
  padding:5px 6px 1px !important;
  font-size:.69rem !important;
}
body.oms3-studio-page #oms3-studio .oms3-prod-p{
  padding:0 6px 6px !important;
  font-size:.61rem !important;
}

/* Escenario central: maniquí completo y protagonista */
body.oms3-studio-page #oms3-studio .oms3-canvas-wrap{
  position:relative !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
}
body.oms3-studio-page #oms3-studio .oms3-canvas{
  flex:0 1 auto !important;
  width:auto !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  aspect-ratio:487 / 732 !important;
  margin:0 auto !important;
  background:
    radial-gradient(circle at 50% 12%,rgba(255,255,255,.96),rgba(247,242,232,.88) 64%,rgba(235,226,207,.78) 100%) !important;
  border:1px solid rgba(178,154,78,.22) !important;
  box-shadow:0 26px 70px rgba(15,22,32,.11) !important;
}
body.oms3-studio-page #oms3-studio .oms3-canvas::after{
  inset:12px !important;
  border-color:rgba(178,154,78,.30) !important;
}
body.oms3-studio-page #oms3-studio .oms3-model{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
body.oms3-studio-page #oms3-studio .oms3-empty{
  background:rgba(250,248,242,.42) !important;
  backdrop-filter:blur(1.4px) !important;
}
body.oms3-studio-page #oms3-studio .oms3-empty p{
  max-width:18ch !important;
  color:#59626D !important;
  font-size:clamp(1rem,1.3vw,1.25rem) !important;
}
body.oms3-studio-page #oms3-studio .oms3-trustline{
  position:absolute !important;
  left:50% !important;
  bottom:7px !important;
  z-index:8 !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:92% !important;
  margin:0 !important;
  padding:6px 10px !important;
  gap:12px !important;
  border:1px solid rgba(178,154,78,.20) !important;
  background:rgba(250,248,242,.88) !important;
  backdrop-filter:blur(5px) !important;
  color:#5F6670 !important;
  font-size:.48rem !important;
  white-space:nowrap !important;
}
body.oms3-studio-page #oms3-studio .oms3-edit-help{
  position:absolute !important;
  left:50% !important;
  bottom:38px !important;
  z-index:9 !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:90% !important;
  margin:0 !important;
  padding:6px 10px !important;
  background:rgba(250,248,242,.94) !important;
  backdrop-filter:blur(5px) !important;
  font-size:.53rem !important;
}

/* Controles laterales reducidos para que todo entre en la pantalla */
body.oms3-studio-page #oms3-studio .oms3-tallas button{padding:8px 4px !important;min-height:78px !important;}
body.oms3-studio-page #oms3-studio .oms3-tallas button b{font-size:.8rem !important;}
body.oms3-studio-page #oms3-studio .oms3-tallas button small{font-size:.48rem !important;line-height:1.35 !important;}
body.oms3-studio-page #oms3-studio .oms3-mine-btn{margin-top:7px !important;padding:9px !important;font-size:.55rem !important;}
body.oms3-studio-page #oms3-studio .oms3-item{padding:6px 0 !important;gap:6px !important;font-size:.67rem !important;}
body.oms3-studio-page #oms3-studio .oms3-item img{width:32px !important;height:32px !important;}
body.oms3-studio-page #oms3-studio .oms3-line{padding:4px 0 !important;font-size:.64rem !important;}
body.oms3-studio-page #oms3-studio .oms3-total{padding:7px 0 3px !important;}
body.oms3-studio-page #oms3-studio .oms3-total b{font-size:1.15rem !important;}
body.oms3-studio-page #oms3-studio .oms3-btn{padding:10px !important;font-size:.59rem !important;}
body.oms3-studio-page #oms3-studio .oms3-microtrust{margin-top:5px !important;font-size:.48rem !important;}

/* El modal conserva contraste elegante sobre el nuevo fondo claro */
body.oms3-studio-page #oms3-studio .oms3-modal{background:rgba(15,22,32,.72) !important;}

/* Escritorio: bloquear el scroll global y mantener todo como hero */
@media (min-width:1101px) and (min-height:650px){
  body.oms3-studio-page{overflow:hidden !important;}
}

/* Laptops de menor altura */
@media (min-width:1101px) and (max-height:760px){
  body.oms3-studio-page #oms3-studio{
    padding-top:10px !important;
    padding-bottom:10px !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-head{
    min-height:48px !important;
    margin-bottom:8px !important;
    padding-bottom:8px !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-kicker{display:none !important;}
  body.oms3-studio-page #oms3-studio .oms3-head h2{font-size:1.65rem !important;}
  body.oms3-studio-page #oms3-studio .oms3-app{
    grid-template-columns:minmax(220px,265px) minmax(340px,1fr) minmax(235px,285px) !important;
    gap:12px !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-left{padding:12px !important;}
  body.oms3-studio-page #oms3-studio .oms3-panel{padding:11px !important;}
  body.oms3-studio-page #oms3-studio .oms3-trustline{display:none !important;}
}

/* Tablet y móvil: volver a flujo vertical natural */
@media (max-width:1100px){
  body.oms3-studio-page{
    min-height:100% !important;
    overflow:auto !important;
  }
  body.oms3-studio-page #oms3-studio,
  body.admin-bar.oms3-studio-page #oms3-studio{
    width:100% !important;
    height:auto !important;
    min-height:100dvh !important;
    overflow:visible !important;
    padding:18px 14px 110px !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-app{
    display:grid !important;
    grid-template-columns:1fr !important;
    height:auto !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-left,
  body.oms3-studio-page #oms3-studio .oms3-right{
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-canvas-wrap{height:auto !important;}
  body.oms3-studio-page #oms3-studio .oms3-canvas{
    width:min(100%,487px) !important;
    height:auto !important;
    max-height:none !important;
  }
  body.oms3-studio-page #oms3-studio .oms3-trustline,
  body.oms3-studio-page #oms3-studio .oms3-edit-help{
    position:static !important;
    transform:none !important;
    width:auto !important;
    max-width:100% !important;
    margin-top:8px !important;
    white-space:normal !important;
  }
}

@media (max-width:782px){
  body.admin-bar.oms3-studio-page #oms3-studio{height:auto !important;}
}


/* ═══════════════════════════════════════════════════════════
   OM Studio 3.8 · experiencia inmersiva premium a pantalla completa
   Plantilla independiente del tema. Mayor escala y legibilidad.
   ═══════════════════════════════════════════════════════════ */
html:has(body.oms3-standalone-page),
body.oms3-standalone-page{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#F4F1EA !important;
}
body.oms3-standalone-page::before,
body.oms3-standalone-page::after{display:none !important;content:none !important;}
body.oms3-standalone-page #wpadminbar,
body.oms3-standalone-page header,
body.oms3-standalone-page footer,
body.oms3-standalone-page .site-header,
body.oms3-standalone-page .site-footer,
body.oms3-standalone-page .header,
body.oms3-standalone-page .hfg_header,
body.oms3-standalone-page .hfg_footer,
body.oms3-standalone-page .scroll-to-top,
body.oms3-standalone-page #scroll-to-top,
body.oms3-standalone-page .joinchat,
body.oms3-standalone-page .ht-ctc,
body.oms3-standalone-page .ht-ctc-chat,
body.oms3-standalone-page .qlwapp,
body.oms3-standalone-page .wa__btn_popup,
body.oms3-standalone-page .floating-whatsapp,
body.oms3-standalone-page [class*="whatsapp-widget"],
body.oms3-standalone-page [id*="whatsapp-widget"]{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
body.oms3-standalone-page #oms3-immersive-root{
  width:100% !important;
  height:100dvh !important;
  min-height:100dvh !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 50% -10%,rgba(255,255,255,.96),rgba(248,245,238,.96) 42%,rgba(239,234,224,.98) 100%) !important;
}
body.oms3-standalone-page #oms3-studio{
  --oms3-shell-max:1720px;
  width:min(calc(100% - 36px),var(--oms3-shell-max)) !important;
  max-width:var(--oms3-shell-max) !important;
  height:100dvh !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:14px 0 16px !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) !important;
  gap:12px !important;
  background:transparent !important;
}
body.oms3-standalone-page #oms3-studio .oms3-head{
  width:100% !important;
  max-width:none !important;
  min-height:58px !important;
  margin:0 !important;
  padding:0 2px 12px !important;
  border-bottom:1px solid rgba(15,22,32,.10) !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  flex-wrap:nowrap !important;
}
body.oms3-standalone-page #oms3-studio .oms3-kicker{
  font-size:.68rem !important;
  letter-spacing:.28em !important;
}
body.oms3-standalone-page #oms3-studio .oms3-head h2{
  margin-top:3px !important;
  font-size:clamp(2rem,2.25vw,2.65rem) !important;
  line-height:1 !important;
  letter-spacing:-.025em !important;
}
body.oms3-standalone-page #oms3-studio .oms3-hd-actions{
  gap:9px !important;
  flex:none !important;
}
body.oms3-standalone-page #oms3-studio .oms3-hd-actions button{
  min-height:42px !important;
  padding:10px 18px !important;
  border-color:rgba(15,22,32,.16) !important;
  background:rgba(255,255,255,.64) !important;
  font-size:.66rem !important;
  letter-spacing:.17em !important;
}
body.oms3-standalone-page #oms3-studio .oms3-app{
  width:100% !important;
  max-width:none !important;
  min-height:0 !important;
  height:100% !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:clamp(310px,20vw,365px) minmax(470px,1fr) clamp(330px,21vw,390px) !important;
  gap:clamp(14px,1.35vw,24px) !important;
  align-items:stretch !important;
}

/* Paneles laterales amplios y legibles */
body.oms3-standalone-page #oms3-studio .oms3-left,
body.oms3-standalone-page #oms3-studio .oms3-right{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  border:1px solid rgba(15,22,32,.10) !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 20px 60px rgba(15,22,32,.075) !important;
  backdrop-filter:blur(10px) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-left{
  padding:18px !important;
  overflow:hidden !important;
}
body.oms3-standalone-page #oms3-studio .oms3-right{
  padding:0 !important;
  gap:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-width:thin !important;
  scrollbar-color:rgba(178,154,78,.52) transparent !important;
}
body.oms3-standalone-page #oms3-studio .oms3-right::-webkit-scrollbar{width:5px !important;}
body.oms3-standalone-page #oms3-studio .oms3-right::-webkit-scrollbar-thumb{background:rgba(178,154,78,.52) !important;border-radius:8px !important;}
body.oms3-standalone-page #oms3-studio .oms3-panel{
  padding:18px !important;
  border:0 !important;
  border-bottom:1px solid rgba(15,22,32,.095) !important;
  background:rgba(255,255,255,.76) !important;
  box-shadow:none !important;
}
body.oms3-standalone-page #oms3-studio .oms3-panel h3{
  margin:0 0 13px !important;
  font-size:1.28rem !important;
  line-height:1.05 !important;
}
body.oms3-standalone-page #oms3-studio .oms3-search{margin:0 0 12px !important;}
body.oms3-standalone-page #oms3-studio .oms3-search input{
  min-height:48px !important;
  padding:11px 13px 11px 38px !important;
  border-color:rgba(15,22,32,.15) !important;
  font-size:.86rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-search::before{left:14px !important;font-size:1rem !important;}
body.oms3-standalone-page #oms3-studio .oms3-filters{margin:0 0 14px !important;gap:8px !important;}
body.oms3-standalone-page #oms3-studio .oms3-filters button{
  min-height:40px !important;
  padding:8px 14px !important;
  font-size:.64rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-cats{
  min-height:0 !important;
  overflow-y:auto !important;
  padding-right:4px !important;
}
body.oms3-standalone-page #oms3-studio .oms3-cat{margin-bottom:5px !important;}
body.oms3-standalone-page #oms3-studio .oms3-cat-h{
  min-height:52px !important;
  padding:12px 11px !important;
  font-size:.72rem !important;
  letter-spacing:.15em !important;
}
body.oms3-standalone-page #oms3-studio .oms3-cat-h .count{
  min-width:31px !important;
  min-height:31px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  font-size:.64rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-cat-body{
  gap:9px !important;
  padding:9px 0 13px !important;
}
body.oms3-standalone-page #oms3-studio .oms3-prod{
  border-color:rgba(15,22,32,.12) !important;
  box-shadow:0 7px 20px rgba(15,22,32,.045) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-prod-img{aspect-ratio:4/5 !important;}
body.oms3-standalone-page #oms3-studio .oms3-prod-n{
  padding:7px 8px 2px !important;
  font-size:.82rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-prod-p{
  padding:0 8px 8px !important;
  font-size:.71rem !important;
}

/* Escenario central de mayor presencia */
body.oms3-standalone-page #oms3-studio .oms3-canvas-wrap{
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  padding:12px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border:1px solid rgba(178,154,78,.16) !important;
  background:
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.98),rgba(247,242,232,.80) 52%,rgba(231,223,208,.62) 100%) !important;
  box-shadow:0 24px 68px rgba(15,22,32,.08) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-canvas{
  flex:0 1 auto !important;
  width:auto !important;
  height:min(100%,740px) !important;
  max-width:100% !important;
  max-height:100% !important;
  aspect-ratio:487 / 732 !important;
  margin:0 auto !important;
  overflow:hidden !important;
  border:1px solid rgba(178,154,78,.24) !important;
  background:
    radial-gradient(circle at 50% 8%,#FFFFFF 0%,#F8F4EB 62%,#EEE5D4 100%) !important;
  box-shadow:0 28px 76px rgba(15,22,32,.14) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-canvas::after{
  inset:14px !important;
  border-color:rgba(178,154,78,.32) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-model{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
body.oms3-standalone-page #oms3-studio .oms3-empty{
  background:rgba(249,246,239,.34) !important;
  backdrop-filter:blur(1.1px) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-empty p{
  max-width:17ch !important;
  color:#5B6570 !important;
  font-size:clamp(1.18rem,1.35vw,1.48rem) !important;
  line-height:1.45 !important;
}
body.oms3-standalone-page #oms3-studio .oms3-edit-toggle{
  top:18px !important;
  left:18px !important;
  min-height:40px !important;
  padding:9px 15px !important;
  font-size:.62rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-canvas-actions{
  top:18px !important;
  right:18px !important;
}
body.oms3-standalone-page #oms3-studio .oms3-canvas-actions button{
  width:42px !important;
  height:42px !important;
}
body.oms3-standalone-page #oms3-studio .oms3-trustline{
  position:absolute !important;
  left:50% !important;
  bottom:18px !important;
  z-index:8 !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:88% !important;
  margin:0 !important;
  padding:8px 13px !important;
  gap:16px !important;
  border:1px solid rgba(178,154,78,.20) !important;
  background:rgba(250,248,242,.91) !important;
  backdrop-filter:blur(7px) !important;
  color:#505A65 !important;
  font-size:.55rem !important;
  white-space:nowrap !important;
}
body.oms3-standalone-page #oms3-studio .oms3-edit-help{
  position:absolute !important;
  left:50% !important;
  bottom:57px !important;
  z-index:9 !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:88% !important;
  margin:0 !important;
  padding:8px 12px !important;
  background:rgba(250,248,242,.95) !important;
  font-size:.6rem !important;
}

/* Controles de cuerpo y look con escala cómoda */
body.oms3-standalone-page #oms3-studio .oms3-tallas{gap:8px !important;}
body.oms3-standalone-page #oms3-studio .oms3-tallas button{
  min-height:112px !important;
  padding:12px 6px !important;
}
body.oms3-standalone-page #oms3-studio .oms3-tallas button b{font-size:1rem !important;}
body.oms3-standalone-page #oms3-studio .oms3-tallas button small{
  margin-top:7px !important;
  font-size:.56rem !important;
  line-height:1.55 !important;
}
body.oms3-standalone-page #oms3-studio .oms3-mine-btn{
  min-height:48px !important;
  margin-top:10px !important;
  padding:11px !important;
  font-size:.62rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-item{
  gap:9px !important;
  padding:9px 0 !important;
  font-size:.76rem !important;
}
body.oms3-standalone-page #oms3-studio .oms3-item img{
  width:44px !important;
  height:44px !important;
}
body.oms3-standalone-page #oms3-studio .oms3-line{padding:6px 0 !important;font-size:.72rem !important;}
body.oms3-standalone-page #oms3-studio .oms3-total{padding:9px 0 5px !important;}
body.oms3-standalone-page #oms3-studio .oms3-total b{font-size:1.38rem !important;}
body.oms3-standalone-page #oms3-studio .oms3-btn{min-height:46px !important;padding:11px !important;font-size:.64rem !important;}
body.oms3-standalone-page #oms3-studio .oms3-microtrust{font-size:.53rem !important;}
body.oms3-standalone-page #oms3-studio .oms3-modal{background:rgba(15,22,32,.76) !important;}

/* Portátiles con menor altura: mantener presencia sin recortar el modelo */
@media (min-width:1101px) and (max-height:760px){
  body.oms3-standalone-page #oms3-studio{
    width:min(calc(100% - 24px),1680px) !important;
    padding:9px 0 10px !important;
    gap:8px !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-head{
    min-height:48px !important;
    padding-bottom:8px !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-kicker{display:none !important;}
  body.oms3-standalone-page #oms3-studio .oms3-head h2{font-size:2rem !important;}
  body.oms3-standalone-page #oms3-studio .oms3-app{
    grid-template-columns:clamp(285px,19vw,330px) minmax(430px,1fr) clamp(305px,20vw,355px) !important;
    gap:12px !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-left{padding:13px !important;}
  body.oms3-standalone-page #oms3-studio .oms3-panel{padding:13px !important;}
  body.oms3-standalone-page #oms3-studio .oms3-tallas button{min-height:88px !important;}
  body.oms3-standalone-page #oms3-studio .oms3-trustline{display:none !important;}
}

/* Tablet y móvil: flujo natural, sin bloquear el scroll */
@media (max-width:1100px){
  html:has(body.oms3-standalone-page),
  body.oms3-standalone-page{
    height:auto !important;
    min-height:100% !important;
    overflow:auto !important;
  }
  body.oms3-standalone-page #oms3-immersive-root{
    height:auto !important;
    min-height:100dvh !important;
    overflow:visible !important;
  }
  body.oms3-standalone-page #oms3-studio{
    width:100% !important;
    height:auto !important;
    min-height:100dvh !important;
    padding:18px 14px 110px !important;
    overflow:visible !important;
    display:block !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-head{
    margin-bottom:14px !important;
    flex-wrap:wrap !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-app{
    display:grid !important;
    grid-template-columns:1fr !important;
    height:auto !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-left,
  body.oms3-standalone-page #oms3-studio .oms3-right{
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-canvas-wrap{
    height:auto !important;
    min-height:0 !important;
  }
  body.oms3-standalone-page #oms3-studio .oms3-canvas{
    width:min(100%,520px) !important;
    height:auto !important;
    max-height:none !important;
  }
}


/* OM Studio 3.8.1 · arranque seguro */
#oms3-studio .oms3-boot,
#oms3-studio .oms3-load-error,
.oms3-fatal{
  min-height:100vh;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:32px;
  box-sizing:border-box;
  background:#f4f1ea;
  color:#0f1620;
  text-align:center;
  font-family:'Jost',Arial,sans-serif;
}
#oms3-studio .oms3-boot-mark{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border:1px solid #b29a4e;
  border-radius:50%;
  color:#b29a4e;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.25rem;
  letter-spacing:.12em;
  animation:oms3BootPulse 1.4s ease-in-out infinite;
}
#oms3-studio .oms3-boot strong,
#oms3-studio .oms3-load-error strong,
.oms3-fatal{font-size:1rem;letter-spacing:.08em}
#oms3-studio .oms3-boot small,
#oms3-studio .oms3-load-error span{color:#66707d;font-size:.78rem;line-height:1.5}
@keyframes oms3BootPulse{50%{opacity:.45;transform:scale(.96)}}

/* ══════════ v3.9 · modelo M único ══════════ */
#oms3-studio .oms3-body-standard{
  display:grid;
  grid-template-columns:52px 1fr;
  grid-template-rows:auto auto;
  align-items:center;
  gap:2px 12px;
  padding:14px 16px;
  margin-bottom:12px;
  border:1px solid rgba(178,154,78,.34);
  background:linear-gradient(135deg,rgba(239,234,221,.72),rgba(255,255,255,.94));
}
#oms3-studio .oms3-body-standard b{
  grid-row:1 / 3;
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:50%;
  background:#0f1620;
  color:#d4bd76;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.45rem;
  line-height:1;
}
#oms3-studio .oms3-body-standard span{
  color:#0f1620;
  font-family:'Jost',Arial,sans-serif;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
#oms3-studio .oms3-body-standard small{
  color:#66707d;
  font-family:'Jost',Arial,sans-serif;
  font-size:.68rem;
  line-height:1.35;
}
#oms3-studio .oms3-prod-img{
  aspect-ratio:4 / 5 !important;
}
#oms3-studio .oms3-prod-img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}


/* ══════════ OM Studio 3.9.1 · Ajustes visuales puntuales ══════════ */
body.oms3-standalone-page #oms3-studio .oms3-edit-toggle{
  top:12px !important;
  left:12px !important;
  min-height:30px !important;
  width:auto !important;
  max-width:150px !important;
  padding:6px 10px !important;
  border-radius:3px !important;
  font-size:.52rem !important;
  line-height:1.15 !important;
  letter-spacing:.15em !important;
  white-space:nowrap !important;
  box-shadow:0 4px 12px rgba(15,22,32,.12) !important;
}
body.oms3-standalone-page #oms3-studio .oms3-prod-img{
  aspect-ratio:4/5 !important;
  width:100% !important;
  overflow:hidden !important;
}
body.oms3-standalone-page #oms3-studio .oms3-prod-img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
body.oms3-standalone-page #oms3-studio .oms3-item .rm{
  display:inline-grid !important;
  place-items:center !important;
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:50% !important;
  line-height:1 !important;
  font-size:.76rem !important;
  font-family:Arial,sans-serif !important;
  text-align:center !important;
  align-self:center !important;
}
body.oms3-standalone-page #oms3-studio .oms3-item select{
  text-transform:uppercase !important;
  text-align:center !important;
  font-weight:600 !important;
}
body.oms3-standalone-page #oms3-studio .oms3-item select option{
  text-transform:uppercase !important;
}
