/* Visor de lentes de las fichas META. Solo se carga en ellas. */
.sr-visor-activo .sr-product-gallery>.woocommerce-product-gallery{position:absolute!important;left:-9999px;width:600px;visibility:hidden}
.sr-visor-activo.sr-visor-foto .sr-product-gallery>.woocommerce-product-gallery{position:relative!important;left:auto;width:auto;visibility:visible}
.sr-visor-activo.sr-visor-foto .srv-modos{visibility:hidden}
.sr-visor-activo.sr-visor-foto .srv-lienzo,.sr-visor-activo.sr-visor-foto .srv-mandos,.sr-visor-activo.sr-visor-foto .srv-aviso{display:none}
.single-product .sr-visor-activo .sr-product-gallery,.sr-visor-activo .sr-product-gallery{position:sticky;top:100px;align-self:start;z-index:5}
.srv{display:grid;gap:10px;min-width:0}
.srv [hidden]{display:none!important}
.srv-lienzo{position:relative;background:#fff;border-radius:18px;overflow:hidden;touch-action:pan-y;cursor:default}
.srv-lienzo img{display:block;width:100%;height:auto;border-radius:0!important}
.srv-lienzo canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.srv-barra{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.srv-modos{display:inline-flex;gap:3px;background:#17191b;padding:3px;border-radius:999px}
.srv-modos button{appearance:none;border:0;background:transparent;color:#d2d6d2;font:600 13px/1 var(--sr-font,inherit);padding:8px 13px;border-radius:999px;cursor:pointer;min-height:32px}
.srv-modos button[aria-pressed=true]{background:var(--sr-green,#22c55e);color:#050505}
.srv-mandos{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;min-height:0}
.srv-mandos:empty{display:none}
.srv-ojo{appearance:none;border:1.5px solid rgba(10,10,10,.14);background:#fff;padding:7px 12px;border-radius:999px;font:600 13px/1.1 var(--sr-font,inherit);color:var(--sr-ink,#0a0a0a);cursor:pointer;min-height:34px;max-width:100%}
.srv-ojo[aria-pressed=true]{border-color:var(--sr-green,#22c55e);background:rgba(34,197,94,.08)}
.srv-sol{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:var(--sr-ink,#0a0a0a)}
.srv-sol input{width:min(190px,40vw);accent-color:#15803d}
.srv-aviso{margin:0;font-size:12.5px;line-height:1.4;color:rgba(10,10,10,.6)}
/* Las tarjetas de color del tema, en rejilla con la lente real */
.sr-visor-activo .sr-colors{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))!important;gap:7px!important;justify-items:stretch!important}
.sr-visor-activo .sr-colors .wapf-swatch--image{width:auto!important}
.sr-visor-activo .sr-opt-price{justify-content:center}
.sr-visor-activo .sr-opt-color .sr-opt-included{font-size:10.5px;padding:1px 6px;letter-spacing:.02em}
.sr-visor-activo .srv-familia{grid-column:1/-1;justify-self:start;text-align:left;margin:8px 0 0;font-size:12.5px;font-weight:700;color:rgba(10,10,10,.6)}
.sr-visor-activo .srv-familia:first-of-type{margin-top:0}
.sr-visor-activo .sr-colors .sr-opt-color label{flex-direction:column!important;gap:4px;padding:9px 4px 7px;text-align:center!important;height:100%;position:relative}
.sr-visor-activo .sr-opt-chip{flex:none;width:52px!important;height:34px!important;border-radius:0;box-shadow:none;overflow:visible;background:none}
.sr-visor-activo .sr-opt-chip canvas{display:block;width:100%;height:100%;object-fit:contain}
.sr-visor-activo .sr-opt-chip.srv-lista img{display:none}
.sr-visor-activo .sr-opt-info{align-items:center;text-align:center;width:100%}
.sr-visor-activo .sr-opt-color label{padding-inline:3px}
.sr-visor-activo .sr-opt-name{white-space:normal;overflow-wrap:break-word;hyphens:auto;font-size:11px;line-height:1.15;text-align:center;max-width:100%}
.sr-visor-activo .sr-opt-badge{display:none}
.sr-visor-activo .sr-opt-check{top:5px;right:5px;transform:scale(.6);width:15px;height:15px;font-size:9px;line-height:15px}
.sr-visor-activo .sr-opt-color:has(input:checked) .sr-opt-check{transform:scale(1)}
.sr-visor-activo .sr-colors .srv-nuevo{position:absolute;top:5px;left:5px;background:#17191b;color:#fff;font-size:10.5px;font-weight:700;padding:1px 6px;border-radius:999px;line-height:1.5}
/* Teclado y contraste */
.sr-opt-color:has(input:focus-visible) label{outline:2px solid #15803d;outline-offset:2px}
.sr-visor-activo .sr-opt-price .wapf-pricing-hint{opacity:1;color:rgba(10,10,10,.7)}
@media (max-width:1020px){
  .single-product .sr-product-shell.sr-visor-activo{display:block}
  .single-product .sr-visor-activo.sr-visor-foto .sr-product-gallery{position:static}
  .sr-opt-color input{scroll-margin-top:320px}
  .srv-aviso.srv-dos{display:block;font-weight:600;color:#0a0a0a}
  .srv-modos button,.srv-ojo{min-height:44px;padding-block:6px}
  .srv-barra{flex-wrap:nowrap}
  .srv-ojo-a,.srv-ojo-b{flex:1 1 0;min-width:0;font-size:12px;line-height:1.15}
  .srv-sol{flex:1 0 100%}
  .srv-sol input{flex:1;width:auto;height:44px}
  .srv-lienzo{max-width:calc(34vh*2.31);margin-inline:auto}
  .sr-visor-activo .sr-product-gallery,.single-product .sr-visor-activo .sr-product-gallery{top:70px;background:var(--sr-cream,#f6f5ef);padding:6px 0 8px;margin:0 0 20px;box-shadow:0 10px 14px -14px rgba(10,10,10,.45)}
  body.admin-bar .sr-visor-activo .sr-product-gallery{top:116px}
  .srv-lienzo{border-radius:14px}
  .srv-aviso{display:none}
  .srv-modos button{font-size:12.5px;padding:7px 11px}
}
@media (max-width:1020px) and (max-height:500px){.sr-visor-activo .sr-product-gallery,.single-product .sr-visor-activo .sr-product-gallery{position:static!important}}
