/* Tienda · "Liquid Glass" (generado desde el prototipo ryzestore-nueva-version: nueva.css + liquid.css + extras). Lo cargan solo las paginas con body.tv2; esas paginas NO cargan style.css. */
/* Ryze Store · versión visual "Cristal" — oscuro, translúcido, gaming y fresco */
@font-face{font-family:"Manrope";font-weight:200 800;font-display:swap;src:url("../fonts/manrope/Manrope-variable.woff2") format("woff2")}
@font-face{font-family:"DM Sans";font-weight:100 1000;font-display:swap;src:url("../fonts/dm-sans/DMSans-variable.woff2") format("woff2")}

:root{
  --bg:#0A0F19; --bg2:#0E1522;
  --tx:#F3F6FF; --tx2:#B6C0DA; --tx3:#8E9AB8;          /* contraste sobre --bg: 17 / 10 / 6.6 */
  --glass:rgba(255,255,255,.07); --glass-2:rgba(255,255,255,.11); --glass-3:rgba(255,255,255,.16);
  --line:rgba(255,255,255,.16); --line-2:rgba(255,255,255,.28);
  --yel:#F3CB4E; --yel-ink:#241A00;                     /* marca (ya usada en la tienda) */
  --cy:#8CCFDB; --mint:#8FD9B8; --vio:#9A94D4; --rose:#E8A07A;
  --ok:#8FD9B8; --err:#FF8E9E;
  --r-s:10px; --r-m:16px; --r-l:22px; --r-xl:30px;
  --blur:blur(18px) saturate(1.5);
  --sh:0 10px 40px rgba(0,0,0,.35);
  --maxw:1240px;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{font-family:"DM Sans",system-ui,sans-serif;color:var(--tx);background:var(--bg);font-size:16px;line-height:1.55;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:"Manrope",sans-serif;line-height:1.12;letter-spacing:-.02em;font-weight:800}
:focus-visible{outline:2px solid var(--cy);outline-offset:3px;border-radius:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip,.skip-link{position:fixed;left:12px;top:-60px;z-index:200;background:var(--yel);color:var(--yel-ink);padding:10px 16px;border-radius:10px;font-weight:700}
.skip:focus,.skip-link:focus{top:12px}

/* Fondo vivo */
.fondo{position:fixed;inset:0;z-index:-1;overflow:hidden;background:
  radial-gradient(1200px 700px at 10% -10%,#16205a 0%,transparent 60%),
  radial-gradient(900px 600px at 100% 10%,#0b3a4a 0%,transparent 55%),var(--bg)}
.fondo::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 20%,#000 20%,transparent 75%)}
.blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;animation:flota 22s var(--ease) infinite alternate}
.b1{width:480px;height:480px;left:-120px;top:120px;background:var(--vio)}
.b2{width:420px;height:420px;right:-100px;top:340px;background:var(--cy);animation-delay:-8s;opacity:.38}
.b3{width:380px;height:380px;left:40%;bottom:-160px;background:var(--mint);animation-delay:-14s;opacity:.25}
@keyframes flota{to{transform:translate(60px,-50px) scale(1.15)}}

.wrap{width:min(var(--maxw),100% - 40px);margin-inline:auto}
section{padding-block:56px}

/* Cristal */
.glass{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-l);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--sh)}
.glass-soft{background:var(--glass);border:1px solid var(--line);border-radius:var(--r-m);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
@supports not (backdrop-filter:blur(1px)){.glass,.glass-soft,.header-in,.nav-m{background:rgba(20,28,56,.92)}}

/* Botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s,background .2s;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn-pri{background:linear-gradient(135deg,var(--yel),#FFB830);color:var(--yel-ink);box-shadow:0 8px 28px rgba(255,200,60,.35)}
.btn-pri:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(255,200,60,.5)}
.btn-gl{background:var(--glass-2);border-color:var(--line-2);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
.btn-gl:hover{background:var(--glass-3)}
.btn-ghost{background:transparent;color:var(--tx2)}
.btn-ghost:hover{color:var(--tx)}
.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.btn-lg{min-height:52px;padding:0 30px;font-size:16px}
.btn-block{width:100%}

/* Header */
.header{position:sticky;top:0;z-index:100;padding:12px 0}
.header-in{display:flex;align-items:center;gap:20px;height:64px;padding:0 14px 0 20px;border-radius:999px;background:rgba(14,20,44,.55);border:1px solid var(--line);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--sh)}
.logo{display:flex;align-items:center;gap:10px;font-family:"Manrope";font-weight:800;font-size:18px;letter-spacing:-.02em}
.logo b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--yel),var(--rose));color:var(--yel-ink);font-size:18px;box-shadow:0 0 22px rgba(255,150,100,.5)}
.nav{display:flex;gap:4px;margin-inline:auto}
.nav a{padding:9px 15px;border-radius:999px;color:var(--tx2);font-weight:600;font-size:15px;transition:.2s}
.nav a:hover{color:var(--tx);background:var(--glass-2)}
.nav a[aria-current="page"]{color:var(--tx);background:var(--glass-3);box-shadow:inset 0 0 0 1px var(--line-2)}
.nav .evento{color:var(--yel)}
.hd-act{display:flex;align-items:center;gap:8px}
.ic-btn{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--glass-2);border:1px solid var(--line);cursor:pointer;transition:.2s}
.ic-btn:hover{background:var(--glass-3)}
.ic-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cnt{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:var(--yel);color:var(--yel-ink);font-size:12px;font-weight:800;display:grid;place-items:center}
.cnt:empty,.cnt[data-n="0"]{display:none}
.buscar-h{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border-radius:999px;background:var(--glass);border:1px solid var(--line);width:210px}
.buscar-h input{background:none;border:0;outline:0;width:100%;font-size:14px}
.buscar-h input::placeholder{color:var(--tx3)}
.buscar-h:focus-within{border-color:var(--cy);box-shadow:0 0 0 3px rgba(54,226,245,.2)}
.buscar-h svg{width:18px;height:18px;stroke:var(--tx3);fill:none;stroke-width:2;flex:none}

/* Navegación móvil */
.nav-m{display:none;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:100;border-radius:24px;background:rgba(14,20,44,.72);border:1px solid var(--line);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--sh);padding:8px;grid-template-columns:repeat(4,1fr);gap:4px}
.nav-m a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:16px;font-size:12px;font-weight:700;color:var(--tx3);min-height:52px}
.nav-m a svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.nav-m a[aria-current="page"]{color:var(--tx);background:var(--glass-3);box-shadow:inset 0 0 0 1px var(--line-2)}

/* Hero */
.hero{padding-block:36px 24px}
.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:center;padding:clamp(28px,5vw,60px);border-radius:var(--r-xl);position:relative;overflow:hidden}
.hero-in::after{content:"";position:absolute;inset:0;background:radial-gradient(500px 300px at 85% 50%,rgba(143,123,255,.28),transparent 70%);pointer-events:none}
.kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:99px;background:rgba(91,240,181,.12);border:1px solid rgba(91,240,181,.35);color:var(--mint);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.kicker i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px var(--mint);animation:pulso 1.8s infinite}
@keyframes pulso{50%{opacity:.35}}
.hero h1{font-size:clamp(36px,5.4vw,60px);margin:18px 0 14px}
.grad{background:linear-gradient(100deg,var(--yel),var(--rose) 45%,var(--vio));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lead{font-size:18px;color:var(--tx2);max-width:46ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-stats{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.chip-stat{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:14px;background:var(--glass);border:1px solid var(--line);font-size:14px;color:var(--tx2)}
.chip-stat b{color:var(--tx);font-family:"Manrope";font-size:15px}
.hero-art{position:relative;height:340px;z-index:1}
.hero-art img{position:absolute;filter:drop-shadow(0 20px 30px rgba(0,0,0,.5));animation:sube 6s ease-in-out infinite alternate;will-change:transform}
.hero-art .a1{width:58%;left:21%;top:2%;z-index:2}
.hero-art .a2{width:34%;left:0;bottom:2%;animation-delay:-2s}
.hero-art .a3{width:30%;right:0;bottom:8%;animation-delay:-4s}
.hero-art .halo{position:absolute;inset:12% 12%;border-radius:50%;background:radial-gradient(circle,rgba(255,213,74,.35),transparent 65%);filter:blur(10px);animation:none}
@keyframes sube{to{transform:translateY(-14px) rotate(2deg)}}

/* Franja de confianza */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.trust div{display:flex;gap:12px;align-items:center;padding:16px 18px;border-radius:var(--r-m)}
.trust svg{width:26px;height:26px;stroke:var(--cy);fill:none;stroke-width:1.8;flex:none;stroke-linecap:round;stroke-linejoin:round}
.trust strong{display:block;font-size:14.5px;font-family:"Manrope"}
.trust span{font-size:13px;color:var(--tx3)}

/* Títulos de sección */
.sec-h{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.sec-h h2{font-size:clamp(26px,3.4vw,36px)}
.sec-h p{color:var(--tx2);margin-top:6px}

/* Categorías destacadas */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cat{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:170px;padding:18px;border-radius:var(--r-l);overflow:hidden;transition:transform .3s var(--ease),border-color .3s}
.cat:hover{transform:translateY(-4px);border-color:var(--line-2)}
.cat img{position:absolute;right:-6px;top:-6px;width:46%;max-width:120px;transition:transform .4s var(--ease);filter:drop-shadow(0 10px 16px rgba(0,0,0,.45))}
.cat:hover img{transform:scale(1.1) rotate(4deg)}
.cat strong{font-family:"Manrope";font-size:18px;position:relative}
.cat span{font-size:13px;color:var(--tx2);position:relative}

/* Catálogo */
.tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:22px}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px 2px;flex:1;min-width:0}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;padding:9px 18px;border-radius:99px;background:var(--glass);border:1px solid var(--line);font-weight:600;font-size:14.5px;cursor:pointer;color:var(--tx2);transition:.2s}
.chip:hover{color:var(--tx);background:var(--glass-2)}
.chip[aria-pressed="true"]{background:linear-gradient(135deg,var(--yel),#FFB830);color:var(--yel-ink);border-color:transparent;font-weight:800}
.sel{height:44px;padding:0 14px;border-radius:99px;background:var(--glass-2);border:1px solid var(--line);cursor:pointer}
.sel option{background:#10172e;color:var(--tx)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{position:relative;display:flex;flex-direction:column;border-radius:var(--r-l);padding:14px 14px 18px;overflow:hidden;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.card::before{content:"";position:absolute;inset:0;background:radial-gradient(300px 160px at 50% 0%,rgba(143,123,255,.22),transparent 70%);opacity:0;transition:.3s;pointer-events:none}
.card:hover{transform:translateY(-6px);border-color:rgba(54,226,245,.5);box-shadow:0 18px 50px rgba(0,0,0,.45),0 0 0 1px rgba(54,226,245,.2)}
.card:hover::before{opacity:1}
.card-img{display:grid;place-items:center;aspect-ratio:1/.82;margin-bottom:12px;border-radius:var(--r-m);background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08)}
.card-img img{width:68%;height:86%;object-fit:contain;transition:transform .4s var(--ease);filter:drop-shadow(0 12px 14px rgba(0,0,0,.4))}
.card-img img.wide{width:92%;height:auto;max-height:90%;border-radius:12px}
.card:hover .card-img img{transform:scale(1.07) rotate(-2deg)}
.tag{position:absolute;top:22px;left:22px;z-index:2;padding:4px 11px;border-radius:99px;font-size:11.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:rgba(255,92,138,.18);border:1px solid rgba(255,92,138,.5);color:#FFB3C6}
.tag.ok{background:rgba(91,240,181,.15);border-color:rgba(91,240,181,.45);color:var(--mint)}
.card h3{font-size:16.5px;margin-bottom:4px}
.card .desc{font-size:13.5px;color:var(--tx3);min-height:2.6em}
.vars{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 4px}
.var{padding:5px 12px;border-radius:99px;background:rgba(255,255,255,.06);border:1px solid var(--line);font-size:13px;font-weight:700;cursor:pointer;color:var(--tx2);transition:.2s}
.var[aria-checked="true"]{background:rgba(54,226,245,.16);border-color:var(--cy);color:var(--tx)}
.price{margin-top:auto;padding-top:14px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.price strong{font-family:"Manrope";font-size:23px;font-weight:800;letter-spacing:-.02em}
.price small{font-size:13px;color:var(--tx3)}
.prem{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;border-radius:99px;background:rgba(255,213,74,.12);border:1px solid rgba(255,213,74,.35);color:var(--yel);font-size:12.5px;font-weight:700;width:fit-content}
.pts{font-size:12.5px;color:var(--mint);margin-top:6px}
.card .btn{margin-top:14px}
.vacio{grid-column:1/-1;text-align:center;padding:48px 20px;color:var(--tx2)}
.skel{height:300px;border-radius:var(--r-l);background:linear-gradient(100deg,var(--glass) 30%,var(--glass-3) 50%,var(--glass) 70%);background-size:200% 100%;animation:shim 1.4s infinite}
@keyframes shim{to{background-position:-200% 0}}

/* Banda Premium */
.band{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;padding:clamp(24px,4vw,44px);border-radius:var(--r-xl);position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(255,213,74,.16),rgba(143,123,255,.14) 60%,rgba(54,226,245,.1));border:1px solid rgba(255,213,74,.35);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
.band h2{font-size:clamp(26px,3.4vw,38px);margin:10px 0}
.band ul{list-style:none;padding:0;display:grid;gap:8px;margin:14px 0 22px;color:var(--tx2)}
.band li::before{content:"✦";color:var(--yel);margin-right:10px}
.band img{max-width:300px;margin-inline:auto;filter:drop-shadow(0 20px 36px rgba(0,0,0,.55));border-radius:16px}

/* Cómo funciona */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:s}
.step{padding:22px;border-radius:var(--r-l);position:relative}
.step::before{counter-increment:s;content:counter(s,decimal-leading-zero);font-family:"Manrope";font-weight:800;font-size:40px;line-height:1;background:linear-gradient(135deg,var(--cy),var(--vio));-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:12px}
.step h3{font-size:17px;margin-bottom:6px}
.step p{font-size:14px;color:var(--tx2)}

/* Footer */
.footer{margin-top:40px;padding:40px 0 120px;border-top:1px solid var(--line);background:linear-gradient(180deg,transparent,rgba(0,0,0,.35))}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.f-grid h4{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx3);margin-bottom:12px}
.f-grid a{display:block;padding:5px 0;color:var(--tx2);font-size:14.5px}
.f-grid a:hover{color:var(--tx)}
.f-note{margin-top:28px;font-size:12.5px;color:var(--tx3)}

/* Páginas internas */
.page-h{padding-block:28px 8px}
.page-h h1{font-size:clamp(30px,4.2vw,46px)}
.page-h p{color:var(--tx2);margin-top:8px;max-width:60ch}
.crumb{font-size:13.5px;color:var(--tx3);margin-bottom:10px}
.crumb a:hover{color:var(--tx)}
.two{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;align-items:start}
.panel{padding:24px;border-radius:var(--r-l)}
.panel h2{font-size:20px;margin-bottom:16px}
.stick{position:sticky;top:96px}

/* Formularios */
.fld{display:grid;gap:6px;margin-bottom:16px}
.fld label{font-weight:700;font-size:14px}
.fld small{color:var(--tx3);font-size:12.5px}
.inp{height:48px;padding:0 16px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid var(--line-2);outline:0;width:100%;transition:.2s}
.inp:focus{border-color:var(--cy);box-shadow:0 0 0 3px rgba(54,226,245,.22);background:rgba(255,255,255,.1)}
.inp[aria-invalid="true"]{border-color:var(--err);box-shadow:0 0 0 3px rgba(255,122,142,.18)}
.err{color:var(--err);font-size:13px;display:none}
.fld.bad .err{display:block}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* Carrito */
.line{display:grid;grid-template-columns:84px 1fr auto;gap:16px;align-items:center;padding:14px;border-radius:var(--r-m);margin-bottom:12px}
.line img{width:84px;height:84px;object-fit:contain;background:rgba(255,255,255,.06);border-radius:14px;padding:8px}
.line h3,.line h2{font-size:16px;margin:0;line-height:1.3}
.line small{color:var(--tx3)}
.qty{display:inline-flex;align-items:center;border-radius:99px;background:rgba(255,255,255,.07);border:1px solid var(--line);margin-top:8px}
.qty button{width:40px;height:40px;border:0;background:none;font-size:20px;cursor:pointer;border-radius:50%}
.qty button:hover{background:var(--glass-3)}
.qty span{min-width:30px;text-align:center;font-weight:800}
.line .sub{text-align:right;font-family:"Manrope";font-weight:800;font-size:18px}
.line .rm{display:block;margin-top:6px;background:none;border:0;color:var(--tx3);font-size:13px;cursor:pointer;text-decoration:underline}
.sum-row{display:flex;justify-content:space-between;padding:8px 0;color:var(--tx2)}
.sum-row.tot{border-top:1px solid var(--line);margin-top:8px;padding-top:16px;color:var(--tx);font-family:"Manrope";font-weight:800;font-size:22px}
.sum-row.save{color:var(--mint)}

/* Checkout */
.stepper{display:flex;gap:10px;margin-bottom:22px}
.stepper button{flex:1;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:99px;background:var(--glass);border:1px solid var(--line);cursor:pointer;color:var(--tx3);font-weight:700}
.stepper b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--glass-3);font-size:13px}
.stepper button[aria-current="step"]{color:var(--tx);border-color:var(--cy);background:rgba(54,226,245,.1)}
.stepper button[aria-current="step"] b{background:var(--cy);color:#00262c}
.stepper button.done b{background:var(--ok);color:#00261a}
.paso{display:none}.paso.on{display:block;animation:ent .35s var(--ease)}
@keyframes ent{from{opacity:0;transform:translateY(10px)}}
.opt{display:flex;gap:14px;align-items:center;padding:16px;border-radius:var(--r-m);background:var(--glass);border:1px solid var(--line);cursor:pointer;margin-bottom:10px;transition:.2s}
.opt:hover{background:var(--glass-2)}
.opt:has(input:checked){border-color:var(--cy);background:rgba(54,226,245,.1)}
.opt input{accent-color:var(--cy);width:20px;height:20px}
.opt small{display:block;color:var(--tx3)}
.nav-pasos{display:flex;justify-content:space-between;gap:12px;margin-top:22px}
.ok-box{text-align:center;padding:40px 24px}
.ok-box .big{font-family:"Manrope";font-size:30px;font-weight:800;letter-spacing:.04em;margin:10px 0}
.badge-ok{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:50%;background:rgba(91,240,181,.15);border:1px solid var(--ok);color:var(--ok);font-size:34px}

/* Puntos */
.pts-card{padding:30px;border-radius:var(--r-xl);background:linear-gradient(130deg,rgba(143,123,255,.28),rgba(54,226,245,.14));border:1px solid var(--line-2);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);margin-bottom:22px}
.pts-n{font-family:"Manrope";font-size:clamp(44px,7vw,72px);font-weight:800;letter-spacing:-.03em;line-height:1}
.bar{height:12px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden;margin:16px 0 8px}
.bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--cy),var(--mint));box-shadow:0 0 16px var(--cy);transition:width .9s var(--ease)}
.rw{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rw .card .btn{margin-top:auto}

/* Premium */
.ben{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ben div{padding:22px;border-radius:var(--r-l)}
.ben svg{width:30px;height:30px;stroke:var(--yel);fill:none;stroke-width:1.7;margin-bottom:12px;stroke-linecap:round;stroke-linejoin:round}
.ben h3{font-size:16.5px;margin-bottom:4px}
.ben p{font-size:14px;color:var(--tx2)}
.cmp{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line)}
.cmp th{color:var(--tx3);font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.cmp .p{color:var(--yel);font-weight:800}.cmp .s{color:var(--mint);font-weight:700}
details.faq{border-radius:var(--r-m);padding:0 20px;margin-bottom:10px}
details.faq summary{cursor:pointer;padding:16px 0;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}
details.faq summary::after{content:"+";font-size:22px;color:var(--cy);transition:.2s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{padding-bottom:16px;color:var(--tx2)}

/* Seguimiento */
.tl{list-style:none;padding:0;display:grid;gap:0;margin:8px 0}
.tl li{display:grid;grid-template-columns:36px 1fr;gap:14px;padding-bottom:22px;position:relative}
.tl li::before{content:"";position:absolute;left:17px;top:34px;bottom:0;width:2px;background:var(--line)}
.tl li:last-child::before{display:none}
.tl .dot{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--glass-2);border:1px solid var(--line-2);font-weight:800;font-size:14px;color:var(--tx3)}
.tl li.done .dot{background:var(--ok);color:#00261a;border-color:var(--ok)}
.tl li.now .dot{background:var(--cy);color:#00262c;border-color:var(--cy);box-shadow:0 0 0 6px rgba(54,226,245,.18);animation:pulso 2s infinite}
.tl li.done::before{background:var(--ok)}
.tl strong{display:block}.tl span{color:var(--tx3);font-size:13.5px}

/* Toast */
.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translate(-50%,20px);z-index:300;padding:14px 22px;border-radius:99px;background:rgba(16,24,52,.9);border:1px solid var(--ok);color:var(--tx);box-shadow:var(--sh);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);opacity:0;pointer-events:none;transition:.3s var(--ease);font-weight:600}
.toast.on{opacity:1;transform:translate(-50%,0)}
.nota{margin-top:10px;font-size:12.5px;color:var(--tx3)}
.demo{display:inline-block;padding:3px 10px;border-radius:99px;border:1px dashed var(--line-2);font-size:11.5px;color:var(--tx3);margin-left:8px;vertical-align:middle;font-family:"DM Sans";font-weight:600;letter-spacing:0}

/* Responsive */
@media(max-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}.nav a{padding:9px 11px}.buscar-h{width:160px}}
@media(max-width:900px){
  .chips{flex:1 1 100%}
  .nav,.buscar-h{display:none}
  .header-in{padding-left:16px}.logo{margin-right:auto}
  .nav-m{display:grid}
  .hero-in,.band,.two{grid-template-columns:1fr}
  .hero-art{height:260px;order:-1}
  .trust,.cats,.steps,.ben{grid-template-columns:repeat(2,1fr)}
  .grid,.rw{grid-template-columns:repeat(2,1fr)}
  .f-grid{grid-template-columns:1fr 1fr}
  .stick{position:static}
  section{padding-block:40px}
}
@media(max-width:560px){
  .wrap{width:calc(100% - 28px)}
  .grid{gap:12px}.card{padding:10px 10px 14px}.card h3{font-size:15px}.price strong{font-size:19px}
  .tag{top:16px;left:16px}
  .trust{grid-template-columns:1fr}
  .rw{grid-template-columns:1fr}
  .row2{grid-template-columns:1fr}
  .line{grid-template-columns:64px 1fr}.line img{width:64px;height:64px}.line .sub{grid-column:2;text-align:left}
  .stepper span{display:none}
  .f-grid{grid-template-columns:1fr}
  .hero-stats .chip-stat{flex:1 1 100%}
}
@media(max-width:380px){.grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ===== v2: menos neón, fondo topográfico, formato del catálogo de producción ===== */
.fondo{background:radial-gradient(1000px 600px at 12% -10%,#14203a 0%,transparent 60%),radial-gradient(800px 500px at 100% 0%,#102a30 0%,transparent 55%),var(--bg)}
.fondo::before{content:none}
.blob{opacity:.16;filter:blur(110px)}.b2{opacity:.12}.b3{opacity:.08}
.btn-pri{background:linear-gradient(180deg,#F6D463,#EDBE3C);box-shadow:0 4px 14px rgba(0,0,0,.28)}
.btn-pri:hover{box-shadow:0 6px 18px rgba(0,0,0,.35)}
.logo b{background:linear-gradient(135deg,#F6D463,#E8A07A);box-shadow:none}
.grad{background:linear-gradient(100deg,#F6D463,#E8A07A);-webkit-background-clip:text;background-clip:text}
.hero-in::after{background:radial-gradient(500px 300px at 85% 50%,rgba(154,148,212,.14),transparent 70%)}
.hero-art .halo{background:radial-gradient(circle,rgba(243,203,78,.16),transparent 65%)}
.kicker{background:rgba(255,255,255,.06);border-color:var(--line-2);color:var(--tx2)}
.kicker i{background:var(--mint);box-shadow:none}
.card:hover{border-color:var(--line-2);box-shadow:0 14px 34px rgba(0,0,0,.4)}
.card::before{background:radial-gradient(300px 160px at 50% 0%,rgba(255,255,255,.07),transparent 70%)}
.band{background:linear-gradient(120deg,rgba(243,203,78,.09),rgba(154,148,212,.07));border-color:rgba(243,203,78,.28)}
.bar i{box-shadow:none}
.stepper button[aria-current="step"]{background:rgba(140,207,219,.1)}
.tl li.now .dot{box-shadow:0 0 0 5px rgba(140,207,219,.14)}
:focus-visible{outline-color:#F6F0DC}

/* Navegación del catálogo (anclas), como en producción */
.cat-nav{position:sticky;top:88px;z-index:60;margin:8px 0 6px}
.cat-nav-in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:8px;border-radius:99px;background:rgba(14,20,34,.6);border:1px solid var(--line);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
.cat-nav-in::-webkit-scrollbar{display:none}
.cat-nav a{flex:none;padding:9px 16px;border-radius:99px;font-weight:600;font-size:14.5px;color:var(--tx2);transition:.2s}
.cat-nav a:hover{color:var(--tx);background:var(--glass-2)}
.cat-nav a.on{background:var(--glass-3);color:var(--tx);box-shadow:inset 0 0 0 1px var(--line-2)}
.cat-intro{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;padding-block:40px 20px}
.cat-intro h1{font-size:clamp(30px,4.4vw,48px);max-width:18ch}
.cat-intro p{color:var(--tx2);max-width:46ch}
.kick{display:block;font-size:12.5px;font-weight:800;letter-spacing:.14em;color:var(--yel);margin-bottom:10px}
.bene{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:12px}
.bene a{display:flex;gap:14px;align-items:center;padding:18px 20px;border-radius:var(--r-l);transition:.25s var(--ease)}
.bene a:hover{transform:translateY(-3px);border-color:var(--line-2)}
.bene svg{width:30px;height:30px;stroke:var(--yel);fill:none;stroke-width:1.7;flex:none;stroke-linecap:round;stroke-linejoin:round}
.bene strong{display:block;font-family:"Manrope"}.bene small{color:var(--tx3);font-size:13.5px}
.blq{padding-block:44px 8px}
.blq-h{margin-bottom:22px}.blq-h h2{font-size:clamp(26px,3.2vw,34px)}.blq-h p{color:var(--tx2);margin-top:6px}
.esp{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.esp-sub{padding:20px;border-radius:var(--r-l)}
.esp-sub header{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px;gap:10px}
.esp-sub header span{font-size:12px;letter-spacing:.12em;color:var(--tx3);font-weight:700}
.esp-sub header h3{font-size:20px}
.esp-sub .grid{grid-template-columns:repeat(2,1fr);gap:14px}
.card .gen{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--tx3);margin-top:auto;padding-top:12px}
.card .gen s{color:var(--tx3)}
.bdg{display:inline-block;padding:2px 8px;border-radius:6px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--glass-3);color:var(--tx2)}
.bdg.pm{background:rgba(243,203,78,.16);color:var(--yel)}
.card .pm-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:6px}
.card .pm-row strong{font-family:"Manrope";font-size:22px}
.card .pm-row.solo{margin-top:auto;padding-top:14px}
.tag.lim{background:rgba(232,160,122,.14);border-color:rgba(232,160,122,.45);color:#F2C3A6}
.res{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.res-c{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;padding:18px;border-radius:var(--r-l)}
.res-c img{width:150px;border-radius:14px}
.res-c h3{font-size:19px;margin:6px 0}
.cd{display:flex;gap:8px;margin:10px 0 14px}.cd div{min-width:54px;text-align:center;padding:6px 8px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid var(--line)}
.cd b{display:block;font-family:"Manrope";font-size:20px}.cd small{font-size:11px;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em}
.sim{margin-top:22px;padding:24px;border-radius:var(--r-l)}
.sim h3{font-size:20px}.sim p{color:var(--tx2);margin:4px 0 16px}
.sim-c{display:flex;gap:10px;flex-wrap:wrap}.sim-c .inp{width:140px}.sim-c select.inp{width:auto;min-width:240px;background:rgba(255,255,255,.07)}.sim-c select option{background:#10172a}
.sim-r{margin-top:16px;padding:16px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--line)}
.sim-r b{font-family:"Manrope"}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:900px){.bene,.steps3,.esp,.res{grid-template-columns:1fr}.res-c{grid-template-columns:110px 1fr}.res-c img{width:110px}.cat-nav{top:84px}}
@media(max-width:560px){.esp-sub .grid{grid-template-columns:1fr 1fr}}

/* ===== v3: preguntas frecuentes, legales, evento, formularios de ejemplo ===== */
.faq-l{display:grid;gap:12px;max-width:820px;margin:22px 0}
.faq{border-radius:var(--r-m);padding:0}
.faq summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:700;display:flex;justify-content:space-between;gap:14px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;color:var(--tx3);transition:.2s}
.faq[open] summary::after{transform:rotate(45deg)}
.faq summary:focus-visible{outline:2px solid #F6F0DC;outline-offset:-2px;border-radius:var(--r-m)}
.faq p{padding:0 20px 18px;color:var(--tx2);line-height:1.65}
.legal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}
.legal-tabs a{padding:9px 16px;border-radius:99px;border:1px solid var(--line-2);color:var(--tx2);font-weight:600;font-size:14px}
.legal-tabs a[aria-current="page"]{background:var(--glass-3);color:var(--tx)}
.legal{padding:28px;border-radius:var(--r-l);max-width:820px;margin-bottom:40px}
.legal h2{font-size:19px;margin:26px 0 10px}.legal h2:first-child{margin-top:0}
.legal p,.legal li{color:var(--tx2);line-height:1.7;margin-bottom:10px}
.legal ul{padding-left:20px;margin-bottom:10px}
.legal strong{color:var(--tx)}
.ev-hero{padding:34px;border-radius:var(--r-l);margin:22px 0;background:linear-gradient(135deg,rgba(122,92,200,.28),rgba(140,207,219,.12))}
.ev-hero h1{font-size:clamp(28px,5vw,44px);margin:8px 0}
.ev-hero p{color:var(--tx2);max-width:60ch}
.ok-box p+p{margin-top:6px}
.legal-tabs+.legal{margin-top:6px}

/* ===== v4: sensación de app y de web profesional ===== */
@view-transition{navigation:auto}
html{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}
.header-in{transition:background .25s,box-shadow .25s}
.header.sc .header-in{background:rgba(10,15,25,.82);box-shadow:0 8px 30px rgba(0,0,0,.35)}
.btn:active,.nav-m a:active,.ic-btn:active,.bene a:active{transform:scale(.96)}
.hero-in{background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.03))}
.blq{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.blq.in{opacity:1;transform:none}
.res{grid-template-columns:1fr}
.res-c{grid-template-columns:minmax(150px,260px) 1fr;gap:28px;padding:24px;background:linear-gradient(120deg,rgba(243,203,78,.1),rgba(255,255,255,.04))}
.res-c img{width:100%}
.res-c h3{font-size:clamp(22px,3vw,30px)}

/* Barra de carrito flotante (como en las apps de compras) */
.cartbar{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%,160%);z-index:110;display:flex;align-items:center;gap:14px;padding:10px 12px 10px 20px;border-radius:99px;background:var(--yel);color:var(--yel-ink);font-weight:700;box-shadow:0 14px 40px rgba(0,0,0,.5);transition:transform .35s var(--ease);max-width:calc(100% - 28px);white-space:nowrap}
.cartbar.on{transform:translate(-50%,0)}
.cartbar b{font-family:"Manrope";font-weight:800}
.cartbar span.go{display:grid;place-items:center;height:36px;padding:0 16px;border-radius:99px;background:var(--yel-ink);color:var(--yel)}

@media(max-width:900px){
  .nav-m{grid-template-columns:repeat(5,1fr)}
  .nav-m a{position:relative}
  .nav-m .cnt{top:2px;right:calc(50% - 22px);min-width:18px;height:18px;font-size:11px}
  .cartbar{bottom:calc(92px + env(safe-area-inset-bottom))}
  .res-c{grid-template-columns:1fr;gap:16px}.res-c img{max-width:240px}
  .bene{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-14px;padding:2px 14px 8px;scrollbar-width:none}
  .bene::-webkit-scrollbar{display:none}
  .bene a{flex:0 0 82%;scroll-snap-align:center}
  .hero{padding-block:16px 10px}.hero-in{padding:22px}.hero h1{font-size:clamp(30px,9vw,40px)}
  .hero-art{height:200px}
  .hero-cta .btn{flex:1}
}
.cartbar{opacity:0;visibility:hidden;pointer-events:none;transition:transform .35s var(--ease),opacity .25s,visibility .35s}
.cartbar.on{opacity:1;visibility:visible;pointer-events:auto}
@media(max-width:900px){.toast{bottom:calc(160px + env(safe-area-inset-bottom))}}

/* Selector de cantidad dentro de la tarjeta */
.qty-s{display:flex;align-items:center;justify-content:space-between;gap:8px;height:44px;padding:0 5px;border-radius:99px;background:var(--glass-2);border:1px solid var(--yel)}
.qty-s[hidden]{display:none}
.qty-s button{width:34px;height:34px;border-radius:50%;border:0;background:var(--yel);color:var(--yel-ink);font-size:20px;font-weight:800;line-height:1;cursor:pointer;display:grid;place-items:center}
.qty-s button:active{transform:scale(.9)}
.qty-s span{font-size:13.5px;color:var(--tx2)}.qty-s b{color:var(--tx);font-family:"Manrope"}

/* Vista rápida de producto */
.card-img{cursor:pointer}.card h3{cursor:pointer}
.qv{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:20px}
.qv[hidden]{display:none}
.qv-s{position:absolute;inset:0;background:rgba(5,8,14,.6);opacity:0;transition:opacity .25s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.qv.on .qv-s{opacity:1}
.qv-b{position:relative;width:min(820px,100%);max-height:90dvh;overflow:auto;border-radius:var(--r-xl);padding:26px;background:rgba(16,23,40,.96);opacity:0;transform:translateY(18px) scale(.98);transition:.28s var(--ease)}
.qv.on .qv-b{opacity:1;transform:none}
.qv-x{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line-2);background:var(--glass-2);color:var(--tx);cursor:pointer;z-index:2}
.qv-c{display:grid;grid-template-columns:1fr 1.1fr;gap:26px;align-items:center}
.qv-img{display:grid;place-items:center;aspect-ratio:1;border-radius:var(--r-l);background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08)}
.qv-img img{width:78%;max-height:86%;object-fit:contain;filter:drop-shadow(0 16px 20px rgba(0,0,0,.45))}
.qv-t h2{font-size:clamp(24px,3vw,32px);margin-bottom:8px}
.qv-d{color:var(--tx2);margin-bottom:16px}
.qv-pr{margin-bottom:16px}.qv-pr strong{font-family:Manrope;font-size:30px}
.qv-l{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:8px;color:var(--tx2);font-size:14.5px}
.qv-l li{display:flex;gap:10px}.qv-l li::before{content:"✓";color:var(--ok);font-weight:800}
@media(max-width:700px){.qv{align-items:end;padding:0}.qv-b{width:100%;border-radius:24px 24px 0 0;padding:20px 18px calc(20px + env(safe-area-inset-bottom));transform:translateY(100%)}.qv-c{grid-template-columns:1fr;gap:14px}.qv-img{aspect-ratio:16/10}}

/* Cómo funciona, pagos y ayuda */
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:p}
.paso2{position:relative;padding:26px 22px 22px;border-radius:var(--r-l)}
.paso2 .n{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--yel);color:var(--yel-ink);font-family:Manrope;font-weight:800;margin-bottom:14px}
.paso2 h3{font-size:19px;margin-bottom:6px}.paso2 p{color:var(--tx2);font-size:14.5px}
.pagos{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:18px;padding:16px 20px;border-radius:var(--r-l)}
.pagos strong{font-family:Manrope}.pagos span.m{padding:6px 14px;border-radius:99px;border:1px solid var(--line-2);font-size:14px;color:var(--tx2)}
.ayuda{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:18px;padding:26px 28px;border-radius:var(--r-xl);background:linear-gradient(120deg,rgba(243,203,78,.14),rgba(154,148,212,.12))}
.ayuda h3{font-size:22px;margin-bottom:4px}.ayuda p{color:var(--tx2)}
@media(max-width:900px){.pasos{grid-template-columns:1fr}.ayuda{padding:20px}}

/* ===== v6: pulido móvil ===== */
@media(max-width:700px){
  .blq{padding-block:26px 4px}
  .blq-h{margin-bottom:14px}.blq-h h2{font-size:24px}.blq-h p{font-size:14.5px}
  .kick{font-size:11.5px}
  /* Chips del hero en una sola fila deslizable */
  .hero-stats{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin-top:20px;margin-inline:-4px;padding:2px 4px;scrollbar-width:none}
  .hero-stats::-webkit-scrollbar{display:none}
  .hero-stats .chip-stat,.chip-stat{flex:none!important;padding:8px 12px;font-size:13px;white-space:nowrap}
  .hero-art{height:170px}
  .hero-in{border-radius:24px}
  /* Tarjetas compactas */
  .grid{gap:10px}
  .card{padding:8px 8px 12px;border-radius:18px}
  .card-img{aspect-ratio:1/.72;margin-bottom:8px;border-radius:12px}
  .card h3{font-size:14.5px;line-height:1.2;margin-bottom:2px;min-height:2.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .card .desc{font-size:12.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--tx3)}
  .card .gen{padding-top:8px;gap:6px;font-size:12.5px;white-space:nowrap}
  .card .gen .bdg{padding:1px 6px;font-size:9.5px}
  .card .pm-row{gap:6px;margin-top:4px}
  .card .pm-row .bdg{order:-1;flex:0 0 100%;width:max-content;font-size:9.5px;padding:1px 6px}
  .card .pm-row strong{font-size:18px}
  .card .pm-row.solo{padding-top:8px}
  .pts{font-size:11.5px;margin-top:2px}
  .card .btn{min-height:40px;font-size:14px;margin-top:8px}
  .qty-s{height:40px}.qty-s button{width:30px;height:30px}
  .tag{font-size:10px;padding:3px 8px}
  /* Destacados y límitados: carrusel horizontal */
  #g-dest,#g-lim{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-inline:-14px;padding:2px 14px 10px;scrollbar-width:none}
  #g-dest::-webkit-scrollbar,#g-lim::-webkit-scrollbar{display:none}
  #g-dest .card,#g-lim .card{flex:0 0 62%;scroll-snap-align:start}
  /* Espacios sin caja dentro de caja */
  .esp{gap:18px}
  .esp-sub{background:none;border:0;padding:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
  .esp-sub header{margin-bottom:10px}.esp-sub header h3{font-size:18px}
  .esp-sub .grid{gap:10px}
  /* Reserva */
  .res-c{padding:16px}.res-c h3{font-size:22px}
  .cd div{min-width:52px}
  /* Pasos y ayuda */
  .paso2{padding:18px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:start}.paso2 .n{grid-row:span 2;margin:0}
  .pagos{padding:14px}
  .ayuda{padding:20px}.ayuda .hero-cta{width:100%}.ayuda .hero-cta .btn{flex:1}
  /* Pie */
  .footer{padding:28px 0 150px}
  .f-grid{gap:20px}
  .page-h h1{font-size:30px}
}
@media(max-width:700px){
  .hero-in>div{min-width:0}
  .hero-stats{max-width:100%}
  .hero-art{overflow:hidden}
  .hero-art .a1{width:44%;left:28%;top:0}.hero-art .a2{width:28%;left:2%;bottom:0}.hero-art .a3{width:24%;right:2%;bottom:6%}
  .card .pm-row .bdg{flex:none;width:max-content}
  .card .pm-row{flex-wrap:wrap}
}
@media(max-width:700px){
  /* Pasos del checkout: el activo muestra su nombre */
  .stepper{gap:8px}
  .stepper button{flex:0 0 auto;padding:8px;justify-content:center;min-height:44px}
  .stepper button[aria-current="step"]{flex:1;padding:8px 14px}
  .stepper button[aria-current="step"] span{display:inline;font-size:14px}
  /* Tabla comparativa de Premium */
  .cmp{font-size:12.5px}.cmp th,.cmp td{padding:10px 6px}.cmp th{font-size:10.5px;letter-spacing:.03em}
  .panel{padding:18px}
  /* Línea del carrito */
  .line{grid-template-columns:64px 1fr;gap:12px;padding:12px}.line img{width:64px;height:64px}
  /* Pie compacto en dos columnas */
  .f-grid{grid-template-columns:1fr 1fr!important;gap:22px 16px}
  .f-grid>div:first-child{grid-column:1/-1}
  .f-grid a{padding:4px 0;font-size:14px}
  .f-note{font-size:12px}
}

/* Ryze Store · "Liquid Glass" claro. Se carga DESPUÉS de nueva.css y redefine tokens + componentes.
   Referencias: aurora de color detrás, vidrio esmerilado con borde de luz, degradado azul→violeta, barra inferior flotante. */
:root{
  --bg:#EDF0FB;--bg2:#E6EAFA;
  --tx:#0E1330;--tx2:#454D74;--tx3:#646C91;
  --glass:rgba(255,255,255,.52);--glass-2:rgba(255,255,255,.7);--glass-3:rgba(255,255,255,.9);
  --line:rgba(255,255,255,.75);--line-2:rgba(78,92,170,.24);
  --yel:#4A5CFF;--yel-ink:#fff;--cy:#4A5CFF;--mint:#0E9F77;--vio:#7B5CFF;--rose:#FF7FB0;
  --ok:#0A7556;--err:#D93851;
  --r-s:12px;--r-m:20px;--r-l:28px;--r-xl:36px;
  --blur:blur(26px) saturate(1.7);
  --sh:0 10px 36px rgba(60,72,150,.14),inset 0 1px 0 rgba(255,255,255,.95);
  --grad:linear-gradient(135deg,#3C78FF 0%,#6A55FF 55%,#A24DFF 100%);
}
body{background:var(--bg);color:var(--tx)}
:focus-visible{outline:2px solid #4A5CFF;outline-offset:3px}

/* Aurora de fondo */
.fondo{background:
  radial-gradient(900px 600px at 8% -5%,rgba(124,156,255,.55),transparent 60%),
  radial-gradient(800px 560px at 100% 8%,rgba(255,179,209,.5),transparent 60%),
  radial-gradient(900px 700px at 70% 100%,rgba(155,235,213,.5),transparent 60%),
  radial-gradient(700px 500px at 0% 90%,rgba(190,160,255,.45),transparent 60%),var(--bg)}
.fondo::before{content:none}
.blob{opacity:.5;filter:blur(80px)}
.b1{background:#8BA6FF}.b2{background:#FFB5D3;opacity:.45}.b3{background:#9BEBD5;opacity:.4}

/* Vidrio */
.glass,.glass-soft{background:var(--glass);border:1px solid var(--line);box-shadow:var(--sh);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
@supports not (backdrop-filter:blur(1px)){.glass,.glass-soft,.header-in,.nav-m{background:rgba(255,255,255,.92)}}

/* Cabecera y navegación */
.header-in{background:rgba(255,255,255,.6);border:1px solid var(--line);box-shadow:var(--sh)}
.header.sc .header-in{background:rgba(255,255,255,.82);box-shadow:0 10px 36px rgba(60,72,150,.18)}
.logo b{background:var(--grad);color:#fff;box-shadow:0 6px 16px rgba(90,80,255,.4)}
.nav a:hover{background:rgba(255,255,255,.7)}
.nav a[aria-current="page"]{background:#fff;box-shadow:0 2px 10px rgba(60,72,150,.12);color:var(--tx)}
.nav .evento{color:#7B3DFF;font-weight:700}
.ic-btn{background:rgba(255,255,255,.75);border:1px solid var(--line)}
.cnt{background:var(--grad);color:#fff}
.cat-nav-in{background:rgba(255,255,255,.6);border:1px solid var(--line);box-shadow:var(--sh)}
.cat-nav a.on{background:#fff;box-shadow:0 2px 10px rgba(60,72,150,.14);color:var(--tx)}
.cat-nav a:hover{background:rgba(255,255,255,.7)}

/* Botones */
.btn-pri,.btn-pri:hover{background:var(--grad);color:#fff;border-color:rgba(255,255,255,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 10px 26px rgba(92,84,255,.38)}
.btn-pri:hover{filter:brightness(1.06);transform:translateY(-2px)}
.btn-gl{background:rgba(255,255,255,.62);border:1px solid var(--line);color:var(--tx);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 14px rgba(60,72,150,.1)}
.btn-gl:hover{background:rgba(255,255,255,.9)}
.btn-ghost{color:var(--tx2)}.btn-ghost:hover{color:var(--tx)}

/* Formularios */
.inp{background:rgba(255,255,255,.7);border:1px solid var(--line-2);color:var(--tx)}
.inp::placeholder{color:#8A91B2}
.inp:focus{background:#fff;border-color:#4A5CFF;box-shadow:0 0 0 4px rgba(74,92,255,.16)}
select.inp option{background:#fff;color:var(--tx)}

/* Hero */
.hero-in{background:linear-gradient(135deg,rgba(255,255,255,.7),rgba(255,255,255,.35));border:1px solid var(--line)}
.hero-in::after{background:radial-gradient(520px 320px at 85% 40%,rgba(120,100,255,.28),transparent 70%)}
.hero h1,.hero-in h1{color:var(--tx)}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.hero .lead,.hero p.lead{color:var(--tx2)}
.hero-art .halo{background:radial-gradient(circle,rgba(130,110,255,.35),transparent 65%)}
.hero-art img{filter:drop-shadow(0 22px 26px rgba(50,60,150,.35))}
.chip-stat{background:rgba(255,255,255,.7);border:1px solid var(--line);color:var(--tx2);box-shadow:inset 0 1px 0 #fff}
.chip-stat b{color:var(--tx)}
.kick,.kicker{color:#5B49F0}

/* Secciones */
.blq-h p,.page-h p{color:var(--tx2)}
.bene svg{stroke:#5B49F0}

/* Tarjetas de producto */
.card{background:rgba(255,255,255,.58);border:1px solid var(--line);box-shadow:var(--sh)}
.card::before{background:radial-gradient(300px 160px at 50% 0%,rgba(255,255,255,.7),transparent 70%)}
.card:hover{border-color:#fff;box-shadow:0 22px 48px rgba(60,72,150,.2),inset 0 1px 0 #fff;transform:translateY(-6px)}
.card-img{background:linear-gradient(160deg,rgba(255,255,255,.95),rgba(214,222,255,.55));border:1px solid rgba(255,255,255,.9)}
.card-img img{filter:drop-shadow(0 14px 16px rgba(50,60,140,.3))}
.card .desc,.card .gen,.card .gen s{color:var(--tx3)}
.card .pm-row strong,.price strong{color:var(--tx)}
.bdg{background:rgba(78,92,170,.12);color:var(--tx2)}
.bdg.pm{background:#FFF0B8;color:#7A5200}
.pts{color:#0A8A66;font-weight:600}
.tag{background:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.9);color:#B02A55;box-shadow:0 2px 8px rgba(60,72,150,.12)}
.tag.ok{background:rgba(255,255,255,.85);color:#0A8A66;border-color:#fff}
.tag.lim{background:#FFE9D8;border-color:#FFD2B0;color:#A24A0B}
.qty-s{background:rgba(255,255,255,.8);border:1px solid #4A5CFF}
.qty-s button{background:var(--grad);color:#fff}
.qty-s span{color:var(--tx2)}.qty-s b{color:var(--tx)}

/* Reserva, pasos, ayuda, simulador */
.res-c{background:linear-gradient(120deg,rgba(255,236,170,.55),rgba(255,255,255,.5))}
.cd div{background:rgba(255,255,255,.8);border:1px solid var(--line);color:var(--tx)}
.cd b{color:var(--tx)}.cd small{color:var(--tx3)}
.paso2 .n{background:var(--grad);color:#fff;box-shadow:0 6px 16px rgba(92,84,255,.35)}
.pagos span.m{border-color:var(--line-2);background:rgba(255,255,255,.6);color:var(--tx2)}
.ayuda{background:linear-gradient(120deg,rgba(170,190,255,.55),rgba(255,190,220,.4));border:1px solid var(--line);box-shadow:var(--sh)}
.sim-r{background:rgba(255,255,255,.7);color:var(--tx)}

/* Pie y varios */
.footer{background:linear-gradient(180deg,transparent,rgba(255,255,255,.55));border-top:1px solid var(--line)}
.f-grid a{color:var(--tx2)}.f-grid a:hover{color:var(--tx)}
.f-grid h4{color:var(--tx3)}
.f-note,.demo-n{color:var(--tx3)}
.demo{border-color:var(--line-2);color:var(--tx3)}
.ok-box{background:rgba(255,255,255,.7);border:1px solid rgba(12,143,106,.35);color:var(--tx)}
.nota{color:var(--tx3)}
.faq summary,.faq p{color:var(--tx)}.faq p{color:var(--tx2)}
.legal-tabs a{background:rgba(255,255,255,.55);border-color:var(--line)}.legal-tabs a[aria-current="page"]{background:#fff;box-shadow:0 2px 10px rgba(60,72,150,.14)}
.legal strong{color:var(--tx)}
.ev-hero{background:linear-gradient(135deg,rgba(170,150,255,.5),rgba(150,210,255,.35));border:1px solid var(--line)}

/* Carrito / checkout / puntos / premium */
.line{background:rgba(255,255,255,.58);border:1px solid var(--line)}
.line img,.qv-img{background:linear-gradient(160deg,#fff,rgba(214,222,255,.6))}
.qty{background:rgba(255,255,255,.7);border-color:var(--line-2)}
.stepper button{background:rgba(255,255,255,.6);color:var(--tx3)}
.stepper button[aria-current="step"]{color:var(--tx);border-color:#4A5CFF;background:#fff}
.stepper b{background:rgba(78,92,170,.15);color:var(--tx2)}
.stepper button[aria-current="step"] b{background:var(--grad);color:#fff}
.stepper button.done b{background:var(--ok);color:#fff}
.sum-row{color:var(--tx2)}
.pts-card{background:linear-gradient(135deg,rgba(150,170,255,.55),rgba(255,190,220,.45));border-color:var(--line)}
.pts-n{color:var(--tx)}
.cmp th{color:var(--tx3)}.cmp .p{color:#5B49F0}.cmp .s{color:#0A8A66}
.cmp th,.cmp td{border-color:rgba(78,92,170,.15)}
.tl li .dot{background:rgba(78,92,170,.15);color:var(--tx2)}
.tl li.done .dot{background:var(--ok);color:#fff}
.tl li.now .dot{background:var(--grad);color:#fff;box-shadow:0 0 0 6px rgba(92,84,255,.18)}
.band{background:linear-gradient(120deg,rgba(255,236,170,.5),rgba(190,170,255,.35));border-color:var(--line)}
.toast{background:rgba(14,19,48,.92);color:#fff;border-color:rgba(255,255,255,.2)}

/* Vista rápida */
.qv-s{background:rgba(30,36,90,.35)}
.qv-b{background:rgba(255,255,255,.82);border:1px solid #fff}
.qv-x{background:rgba(255,255,255,.9);color:var(--tx)}
.qv-d,.qv-l{color:var(--tx2)}
.qv-pr strong{color:var(--tx)}

/* Barra inferior flotante: vidrio con píldora activa */
.nav-m{background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.85);box-shadow:0 14px 40px rgba(60,72,150,.22),inset 0 1px 0 #fff}
.nav-m a{color:var(--tx3)}
.nav-m a[aria-current="page"]{background:var(--grad);color:#fff;box-shadow:0 8px 20px rgba(92,84,255,.4)}
.cartbar{background:var(--grad);color:#fff;box-shadow:0 14px 36px rgba(92,84,255,.45),inset 0 1px 0 rgba(255,255,255,.4)}
.cartbar span.go{background:rgba(255,255,255,.95);color:#4A3CE0}
.skip,.skip-link{background:#fff;color:var(--tx)}
@media(max-width:700px){
  .card .pm-row{flex-direction:column;align-items:flex-start;gap:2px}
  .card .pm-row .bdg{order:0;flex:none}
  .card .pm-row strong{font-size:19px}
  .card .gen{flex-wrap:nowrap}
}
.nota,.pts-card,.rw .card h3,#out li{overflow-wrap:anywhere}
.pts-n{max-width:100%}

/* ===== Barra de navegación: Inicio | GO Premium | Pedidos | Carrito | + ===== */
.nav{margin-inline:auto;gap:6px}
.nav a{padding:10px 20px;font-size:15.5px}
.hd-act{gap:10px}
.hd-cart{position:relative;display:flex;align-items:center;gap:8px;height:44px;padding:0 18px 0 14px;border-radius:99px;background:rgba(255,255,255,.75);border:1px solid var(--line);font-weight:700;font-size:15px;transition:.2s}
.hd-cart:hover,.hd-cart[aria-current="page"]{background:#fff;box-shadow:0 2px 10px rgba(60,72,150,.14)}
.hd-cart svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.hd-cart .cnt{position:static;margin-left:2px}
.hd-more{width:44px;height:44px;border-radius:50%;border:0;background:var(--grad);color:#fff;cursor:pointer;display:grid;place-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 20px rgba(92,84,255,.35);transition:transform .25s var(--ease)}
.hd-more svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round}
.hd-more[aria-expanded="true"]{transform:rotate(45deg)}
.hd-more.on{box-shadow:0 0 0 3px rgba(74,92,255,.25),0 8px 20px rgba(92,84,255,.35)}
.nm-more{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:16px;font-size:12px;font-weight:700;color:var(--tx3);min-height:52px;border:0;background:none;font-family:inherit;cursor:pointer}
.nm-more svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2.1;stroke-linecap:round}
.nm-more.on,.nm-more[aria-expanded="true"]{color:var(--tx);background:rgba(255,255,255,.7)}
.nav-m>*{flex:1}

/* Menú "+" */
.mm{position:fixed;inset:0;z-index:260}
.mm[hidden]{display:none}
.mm-s{position:absolute;inset:0;background:rgba(30,36,90,.25);opacity:0;transition:opacity .22s}
.mm.on .mm-s{opacity:1}
.mm-b{position:absolute;top:84px;right:max(20px,calc((100vw - var(--maxw))/2));width:min(380px,calc(100vw - 40px));max-height:calc(100dvh - 110px);overflow:auto;padding:18px;border-radius:26px;background:rgba(255,255,255,.88);opacity:0;transform:translateY(-8px) scale(.98);transform-origin:top right;transition:.22s var(--ease)}
.mm.on .mm-b{opacity:1;transform:none}
.mm-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.mm-x{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);background:rgba(255,255,255,.8);cursor:pointer;color:var(--tx)}
.mm-g section{margin-top:12px}
.mm-g h4{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx3);margin:0 8px 4px}
.mm-g a{display:flex;flex-direction:column;padding:9px 12px;border-radius:14px;transition:.15s}
.mm-g a:hover{background:rgba(255,255,255,.9)}
.mm-g a[aria-current="page"]{background:#fff;box-shadow:inset 3px 0 0 #5B49F0}
.mm-g a b{font-size:15px}.mm-g a small{color:var(--tx3);font-size:12.5px}
@media(max-width:900px){
  .hd-act{display:none}
  .header-in{justify-content:center}.logo{margin-right:0}
  .mm-b{top:auto;right:0;left:0;bottom:0;width:100%;max-height:82dvh;border-radius:28px 28px 0 0;padding:16px 18px calc(18px + env(safe-area-inset-bottom));transform:translateY(100%);opacity:1;transform-origin:bottom}
  .mm.on .mm-b{transform:none}
  .mm-b::before{content:"";display:block;width:42px;height:5px;border-radius:99px;background:rgba(78,92,170,.3);margin:0 auto 10px}
  .mm-g section{display:grid;grid-template-columns:1fr 1fr;gap:0 8px}.mm-g section h4{grid-column:1/-1}
  .cartbar{bottom:calc(92px + env(safe-area-inset-bottom))}
}
.mm-g section{margin-top:8px}
.mm-g a{padding:7px 12px}
.mm-g a small:empty{display:none}
@media(max-width:900px){.mm-g section{grid-auto-rows:min-content;align-content:start;gap:0 8px}.mm-g a{padding:8px 10px}}
.mm-g section{padding:0}

/* ===== Menú "+" rediseñado: mosaico de accesos ===== */
.mm-b{padding:18px 18px 16px;width:min(400px,calc(100vw - 40px))}
.mm-grab{display:none}
.mm-h{margin-bottom:12px}.mm-h strong{font:800 20px Manrope;letter-spacing:-.02em}
.mm-ev{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:20px;background:var(--grad);color:#fff;margin-bottom:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 10px 24px rgba(92,84,255,.32);transition:transform .15s}
.mm-ev:active{transform:scale(.98)}
.mm-ev small{display:block;font-size:10.5px;letter-spacing:.14em;opacity:.85;font-weight:700}
.mm-ev b{font:800 17px Manrope;letter-spacing:-.01em;line-height:1.2}
.mm-ev i{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.22);flex:none}
.mm-ev svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mm-t{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 6px 12px;border-radius:20px;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.9);box-shadow:inset 0 1px 0 #fff,0 3px 10px rgba(60,72,150,.08);text-align:center;transition:transform .15s,box-shadow .15s}
.mm-t:hover{box-shadow:inset 0 1px 0 #fff,0 8px 20px rgba(60,72,150,.16);transform:translateY(-2px)}
.mm-t:active{transform:scale(.96)}
.mm-t i{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,rgba(60,120,255,.16),rgba(162,77,255,.18))}
.mm-t svg{width:23px;height:23px;stroke:#5B49F0;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mm-t span{font-size:12.5px;font-weight:700;line-height:1.2;color:var(--tx)}
.mm-t[aria-current="page"]{border-color:#5B49F0;box-shadow:0 0 0 2px rgba(91,73,240,.2)}
.mm-l{display:flex;flex-wrap:wrap;gap:4px 16px;justify-content:center;margin-top:14px;padding-top:12px;border-top:1px solid rgba(78,92,170,.16)}
.mm-l a{font-size:12.5px;color:var(--tx3);padding:4px 0}.mm-l a:hover{color:var(--tx)}
@media(max-width:900px){
  .mm-b{width:100%;padding:10px 16px calc(16px + env(safe-area-inset-bottom))}
  .mm-b::before{display:none}
  .mm-grab{display:block;width:42px;height:5px;border-radius:99px;background:rgba(78,92,170,.3);margin:0 auto 10px}
  .mm-t{padding:14px 4px 12px}
}

/* ===== Botón de tema ===== */
.hd-theme{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.75);color:var(--tx);cursor:pointer;display:grid;place-items:center;flex:none;transition:.2s}
.hd-theme:hover{background:#fff}
.hd-theme svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.hd-theme .t-sun{display:none}
html.dark .hd-theme .t-sun{display:block}html.dark .hd-theme .t-moon{display:none}
@media(max-width:900px){.hd-theme{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:42px;height:42px}.header-in{position:relative}}

/* ===== MODO OSCURO (vidrio líquido con aurora violeta) ===== */
html.dark{color-scheme:dark}
html.dark{
  --bg:#0A0D24;--bg2:#0E1230;
  --tx:#F3F5FF;--tx2:#BCC4EA;--tx3:#8F98C4;
  --glass:rgba(255,255,255,.07);--glass-2:rgba(255,255,255,.11);--glass-3:rgba(255,255,255,.17);
  --line:rgba(255,255,255,.16);--line-2:rgba(255,255,255,.26);
  --ok:#6EE7B7;--err:#FF8FA3;--cy:#A5B4FF;
  --sh:0 10px 36px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.12);
}
html.dark :focus-visible{outline-color:#A5B4FF}
html.dark .fondo{background:radial-gradient(900px 600px at 8% -5%,rgba(88,100,255,.5),transparent 60%),radial-gradient(800px 560px at 100% 8%,rgba(200,80,255,.32),transparent 60%),radial-gradient(900px 700px at 70% 100%,rgba(30,160,200,.28),transparent 60%),radial-gradient(700px 500px at 0% 90%,rgba(120,70,255,.35),transparent 60%),#0A0D24}
html.dark .b1{background:#5B6BFF}html.dark .b2{background:#B65CFF;opacity:.35}html.dark .b3{background:#2AA9C9;opacity:.3}
@supports not (backdrop-filter:blur(1px)){html.dark .glass,html.dark .glass-soft,html.dark .header-in,html.dark .nav-m{background:rgba(20,26,70,.94)}}
html.dark .header-in{background:rgba(20,26,70,.55)}
html.dark .header.sc .header-in{background:rgba(14,18,52,.85)}
html.dark .nav a:hover,html.dark .cat-nav a:hover{background:rgba(255,255,255,.1)}
html.dark .nav a[aria-current="page"],html.dark .cat-nav a.on{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);color:var(--tx)}
html.dark .nav .evento{color:#C9B4FF}
html.dark .ic-btn,html.dark .hd-cart,html.dark .hd-theme{background:rgba(255,255,255,.1);border-color:var(--line);color:var(--tx)}
html.dark .hd-cart:hover,html.dark .hd-cart[aria-current="page"],html.dark .hd-theme:hover{background:rgba(255,255,255,.18);box-shadow:none}
html.dark .cat-nav-in{background:rgba(20,26,70,.55)}
html.dark .btn-gl{background:rgba(255,255,255,.1);border-color:var(--line);color:var(--tx);box-shadow:inset 0 1px 0 rgba(255,255,255,.15)}
html.dark .btn-gl:hover{background:rgba(255,255,255,.18)}
html.dark .inp{background:rgba(255,255,255,.08);border-color:var(--line-2);color:var(--tx)}
html.dark .inp::placeholder{color:#7C86B4}
html.dark .inp:focus{background:rgba(255,255,255,.13);border-color:#A5B4FF;box-shadow:0 0 0 4px rgba(165,180,255,.2)}
html.dark select.inp option{background:#141a46;color:var(--tx)}
html.dark .hero-in{background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.03))}
html.dark .hero-in::after{background:radial-gradient(520px 320px at 85% 40%,rgba(150,110,255,.3),transparent 70%)}
html.dark .hero-art img,html.dark .card-img img,html.dark .qv-img img{filter:drop-shadow(0 18px 22px rgba(0,0,0,.55))}
html.dark .chip-stat{background:rgba(255,255,255,.08);border-color:var(--line);color:var(--tx2);box-shadow:none}
html.dark .kick,html.dark .kicker{color:#A5B4FF}
html.dark .bene svg{stroke:#A5B4FF}
html.dark .card{background:rgba(255,255,255,.07);border-color:var(--line)}
html.dark .card::before{background:radial-gradient(300px 160px at 50% 0%,rgba(255,255,255,.09),transparent 70%)}
html.dark .card:hover{border-color:rgba(255,255,255,.3);box-shadow:0 22px 48px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.15)}
html.dark .card-img,html.dark .line img,html.dark .qv-img{background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.03));border-color:rgba(255,255,255,.1)}
html.dark .bdg{background:rgba(255,255,255,.12);color:var(--tx2)}
html.dark .bdg.pm{background:rgba(255,214,102,.18);color:#FFD666}
html.dark .pts{color:#6EE7B7}
html.dark .tag{background:rgba(20,26,70,.8);border-color:rgba(255,255,255,.2);color:#FFB3C7}
html.dark .tag.ok{color:#6EE7B7}html.dark .tag.lim{background:rgba(255,160,120,.18);border-color:rgba(255,160,120,.4);color:#FFC9A8}
html.dark .qty-s,html.dark .qty{background:rgba(255,255,255,.1);border-color:#A5B4FF}
html.dark .res-c{background:linear-gradient(120deg,rgba(255,214,102,.14),rgba(255,255,255,.05))}
html.dark .cd div{background:rgba(255,255,255,.1);border-color:var(--line)}
html.dark .pagos span.m{background:rgba(255,255,255,.08);border-color:var(--line-2)}
html.dark .ayuda{background:linear-gradient(120deg,rgba(100,120,255,.3),rgba(220,90,200,.22))}
html.dark .sim-r{background:rgba(255,255,255,.1)}
html.dark .footer{background:linear-gradient(180deg,transparent,rgba(0,0,0,.35))}
html.dark .ok-box{background:rgba(255,255,255,.08);border-color:rgba(110,231,183,.45)}
html.dark .legal-tabs a{background:rgba(255,255,255,.07);border-color:var(--line)}
html.dark .legal-tabs a[aria-current="page"]{background:rgba(255,255,255,.17);box-shadow:none}
html.dark .ev-hero{background:linear-gradient(135deg,rgba(110,90,255,.4),rgba(40,160,220,.22))}
html.dark .line{background:rgba(255,255,255,.07)}
html.dark .stepper button{background:rgba(255,255,255,.07)}
html.dark .stepper button[aria-current="step"]{background:rgba(255,255,255,.14);border-color:#A5B4FF}
html.dark .stepper b{background:rgba(255,255,255,.14);color:var(--tx2)}
html.dark .pts-card{background:linear-gradient(135deg,rgba(100,120,255,.35),rgba(220,90,200,.25))}
html.dark .cmp .p{color:#A5B4FF}html.dark .cmp .s{color:#6EE7B7}
html.dark .cmp th,html.dark .cmp td{border-color:rgba(255,255,255,.12)}
html.dark .tl li .dot{background:rgba(255,255,255,.14);color:var(--tx2)}
html.dark .band{background:linear-gradient(120deg,rgba(255,214,102,.14),rgba(130,110,255,.18))}
html.dark .toast{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.25);color:#fff;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
html.dark .qv-s{background:rgba(5,7,25,.6)}
html.dark .qv-b{background:rgba(20,26,70,.9);border-color:var(--line)}
html.dark .qv-x,html.dark .mm-x{background:rgba(255,255,255,.12);color:var(--tx);border-color:var(--line-2)}
html.dark .nav-m{background:rgba(20,26,70,.62);border-color:var(--line);box-shadow:0 14px 40px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.12)}
html.dark .nm-more.on,html.dark .nm-more[aria-expanded="true"]{background:rgba(255,255,255,.14);color:var(--tx)}
html.dark .cartbar span.go{background:#fff;color:#3B2FD0}
html.dark .skip,.skip-link{background:#1B2260;color:#fff}
html.dark .mm-s{background:rgba(5,7,25,.55)}
html.dark .mm-b{background:rgba(20,26,70,.9);border-color:var(--line)}
html.dark .mm-t{background:rgba(255,255,255,.08);border-color:var(--line);box-shadow:none}
html.dark .mm-t:hover{background:rgba(255,255,255,.14);box-shadow:none}
html.dark .mm-t i{background:linear-gradient(135deg,rgba(100,140,255,.3),rgba(190,90,255,.3))}
html.dark .mm-t svg{stroke:#C9D2FF}
html.dark .mm-t[aria-current="page"]{border-color:#A5B4FF;box-shadow:0 0 0 2px rgba(165,180,255,.25)}
html.dark .mm-l{border-top-color:rgba(255,255,255,.14)}
html.dark .mm-grab{background:rgba(255,255,255,.3)}
html.dark .faq summary:focus-visible{outline-color:#A5B4FF}
html.dark .grad{background:linear-gradient(135deg,#8FB8FF 0%,#B9A4FF 55%,#F2A8FF 100%);-webkit-background-clip:text;background-clip:text}

/* ===== Auditoría: contraste, objetivos táctiles, enlaces ===== */
:root{--yel:#3B49E8;--mint:#0A7F5E}
html.dark{--yel:#A9B7FF;--tx3:#A8B1DA}
.pts,.cmp .s{color:#087A5A}
html.dark .pts,html.dark .cmp .s{color:#6EE7B7}
.nota a,.ok-box a,.faq p a,.legal a,.crumb a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
.fh{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx3);margin-bottom:12px;font-weight:700}
.lk-b{border:0;background:none;color:var(--yel);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:10px 6px;min-height:44px}
.logo{min-height:44px}
.chk{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px;font-size:14px;color:var(--tx2);cursor:pointer}
.chk input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:#4A5CFF}
.f-grid a{padding:8px 0}
.hero-stats:focus-visible{outline:2px solid #4A5CFF;outline-offset:2px;border-radius:14px}
html.dark .cmp th{color:#C3CAEA;background:transparent}

/* ===== Novedades: banners y eventos ===== */
.nov{margin:6px 0 18px;padding:0}
.nov[hidden]{display:none}
.bn{position:relative;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--line)}
.bn[hidden]{display:none}
.bn-t{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:inherit}
.bn-t::-webkit-scrollbar{display:none}
.bn-t:focus-visible{outline:3px solid #4A5CFF;outline-offset:-3px}
.bn-s{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:2.45/1;background:rgba(255,255,255,.5)}
.bn-s img{width:100%;height:100%;object-fit:cover}
.bn-d{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:2px}
.bn-d button{width:28px;height:28px;border:0;background:none;cursor:pointer;display:grid;place-items:center;padding:0}
.bn-d button::before{content:"";width:8px;height:8px;border-radius:99px;background:rgba(14,19,48,.35);box-shadow:0 0 0 1px rgba(255,255,255,.7);transition:.25s}
.bn-d button[aria-selected="true"]::before{width:24px;background:#4A5CFF}
.nov-c{display:grid;gap:12px;margin-top:12px}.nov-c:empty{display:none}
.nov-ev{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--r-l);color:var(--tx);background:linear-gradient(120deg,rgba(170,150,255,.35),rgba(150,210,255,.25))}
a.nov-ev{transition:transform .2s}a.nov-ev:hover{transform:translateY(-2px)}
.nov-i{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--grad);flex:none}
.nov-i svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.nov-ev>span:nth-child(2){flex:1;display:grid;gap:1px;min-width:0}
.nov-ev small{font-size:11px;letter-spacing:.14em;font-weight:700;color:var(--tx3)}
.nov-ev b{font:800 18px Manrope;letter-spacing:-.01em}
.nov-ev em{font-style:normal;color:var(--tx2);font-size:14px}
.nov-go{padding:10px 18px;border-radius:99px;background:var(--grad);color:#fff;font-weight:700;font-size:14px;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
html.dark .bn-s{background:rgba(255,255,255,.06)}
html.dark .nov-ev{background:linear-gradient(120deg,rgba(110,90,255,.35),rgba(40,160,220,.2))}
html.dark .bn-d button::before{background:rgba(255,255,255,.4);box-shadow:none}html.dark .bn-d button[aria-selected="true"]::before{background:#A9B7FF}
@media(max-width:700px){.bn{border-radius:22px;margin-inline:0}.bn-s{aspect-ratio:2.1/1}.nov-ev{padding:12px 14px}.nov-go{display:none}.nov-ev b{font-size:16px}.nav-m a,.nav-m .nm-more{font-size:11px}}
@media(max-width:700px){.bn-s{aspect-ratio:2.45/1}.nav-m a,.nav-m .nm-more{white-space:nowrap;letter-spacing:-.01em;padding-inline:0}}

/* ===== Checkout: acceso y pago ===== */
.fs{border:0;padding:0;margin:0;min-width:0}
.pw{display:flex;gap:8px}.pw .inp{flex:1;min-width:0}.pw-b{height:48px;padding:0 16px;flex:none}
.pinfo{margin-top:12px}
.pi{padding:14px 16px;border-radius:var(--r-m);background:rgba(255,255,255,.55);border:1px solid var(--line)}
.pi b{display:block;margin-bottom:6px;font-family:Manrope}
.pi dl{display:grid;grid-template-columns:90px 1fr;gap:4px 12px;font-size:14px}.pi dt{color:var(--tx3)}.pi dd{margin:0;font-weight:600}
.pi p{color:var(--tx2);font-size:13.5px;margin-top:6px}
.fld.bad .inp{border-color:var(--err)}
html.dark .pi{background:rgba(255,255,255,.07)}
.stepper button:disabled{opacity:.55;cursor:not-allowed}
[hidden]{display:none!important}

/* ===== Checkout: tipo de cliente y copiar alias ===== */
.seg{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.seg-o{display:block;cursor:pointer;position:relative}
.seg-o input{position:absolute;opacity:0;inset:0;cursor:pointer}
.seg-o span{display:grid;gap:2px;padding:16px 18px;border-radius:var(--r-m);background:rgba(255,255,255,.6);border:2px solid transparent;box-shadow:inset 0 1px 0 #fff,0 3px 10px rgba(60,72,150,.08);transition:.2s}
.seg-o b{font-family:Manrope;font-size:16px}.seg-o small{color:var(--tx3)}
.seg-o input:checked+span{border-color:#4A5CFF;background:#fff;box-shadow:0 0 0 4px rgba(74,92,255,.14)}
.seg-o input:focus-visible+span{outline:2px solid #4A5CFF;outline-offset:3px}
html.dark .seg-o span{background:rgba(255,255,255,.07);box-shadow:none}html.dark .seg-o input:checked+span{background:rgba(255,255,255,.14);border-color:#A9B7FF}
.sub-h{font-size:15px;margin-bottom:10px;color:var(--tx2)}
.al-r{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cp-b{min-height:36px;padding:0 14px;font-size:13px;flex:none}
@media(max-width:700px){.seg{grid-template-columns:1fr}.pi dl{grid-template-columns:70px 1fr}.al-r{flex-wrap:wrap}}

/* ===== Compatibilidad: reglas heredadas de las plantillas convertidas (generado por compat.py) ===== */
body.tv2{--color-border:var(--line-2);--color-text:var(--tx);--color-text-secondary:var(--tx2);--color-text-muted:var(--tx3);--color-primary:#4A5CFF;--color-primary-dark:#3B4BD6;--color-primary-soft:rgba(74,92,255,.12);--color-background:transparent;--color-premium:var(--vio);--transition:.2s var(--ease);--borde-a:var(--line-2);--borde-b:var(--line-2);--borde-c:var(--line-2);--shadow-xs:0 2px 8px rgba(60,72,150,.08);--shadow-sm:0 6px 18px rgba(60,72,150,.12);--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--color-white:var(--glass-3);--color-black:var(--tx)}
body.tv2 .boton-principal, body.tv2 .producto-boton, body.tv2 .boton-secundario, body.tv2 .boton-confirmar, body.tv2 .seguimiento-boton, body.tv2 .pedido-boton, body.tv2 .pedido-boton-principal, body.tv2 .pedido-boton-secundario{
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    transition: background-color var(--transition), border-color var(--transition), color var(--transition), transform var(--transition), box-shadow var(--transition);
}
body.tv2 .boton-principal:hover, body.tv2 .producto-boton:hover, body.tv2 .boton-confirmar:hover, body.tv2 .seguimiento-boton:hover, body.tv2 .pedido-boton-principal:hover{
    transform: translateY(-1px);
}
body.tv2 .boton-principal, body.tv2 .producto-boton, body.tv2 .boton-confirmar, body.tv2 .seguimiento-boton, body.tv2 .pedido-boton-principal{
    color: #fff;
    background: var(--color-primary);
    border-color: var(--color-primary);
}
body.tv2 .boton-principal:hover, body.tv2 .producto-boton:hover, body.tv2 .boton-confirmar:hover, body.tv2 .seguimiento-boton:hover, body.tv2 .pedido-boton-principal:hover{
    color: #fff;
    background: var(--color-primary-dark);
    border-color: var(--color-primary-dark);
    box-shadow: 0 6px 16px rgba(22, 167, 101, .18);
}
body.tv2 .boton-secundario, body.tv2 .pedido-boton-secundario{
    color: var(--color-text);
    background: var(--color-surface);
    border-color: var(--color-border);
}
body.tv2 .boton-secundario:hover, body.tv2 .pedido-boton-secundario:hover{
    background: #F9FAFB;
    border-color: var(--color-border-strong);
}
body.tv2 .checkout-total-metodo{
    margin-top: 18px;
    padding: 18px;
    border: 1px solid var(--color-border);
    border-radius: 16px;
    background: var(--color-background);
}
body.tv2 .checkout-total-metodo-cabecera, body.tv2 .checkout-total-metodo-detalle{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
body.tv2 .checkout-total-metodo-cabecera{
    padding-bottom: 12px;
    border-bottom: 1px solid var(--color-border);
}
body.tv2 .checkout-total-metodo-cabecera span{
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
}
body.tv2 .checkout-total-metodo-cabecera strong{
    font-size: 22px;
}
body.tv2 .checkout-total-metodo-detalle{
    padding-top: 9px;
    font-size: 13px;
}
body.tv2 .checkout-total-metodo-detalle strong{
    font-weight: 750;
}
body.tv2 .checkout-total-metodo p{
    margin: 12px 0 0;
    font-size: 12px;
    color: var(--color-text-muted);
}
body.tv2 .mensaje-error, body.tv2 .mensaje-exito, body.tv2 .pago-config-alerta, body.tv2 .admin-ayuda, body.tv2 .checkout-seguridad, body.tv2 .pedido-aviso, body.tv2 .seguimiento-ayuda{
    border-radius: var(--radius-sm);
}
body.tv2 .mensaje-error, body.tv2 .seguimiento-error{
    color: #B42318;
    background: var(--color-error-soft);
    border: 1px solid #FECACA;
}
body.tv2 .mensaje-exito{
    color: #067647;
    background: var(--color-primary-soft);
    border: 1px solid #B7E4CB;
}
body.tv2 .mensaje-error, body.tv2 .mensaje-exito{
    padding: 12px 14px;
    font-size: 14px;
}
body.tv2 .store-status-banner{
    width: min(calc(100% - 40px), var(--container-width));
    margin: 14px auto 0;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    color: #6b5315;
    background: #fffaf0;
    border: 1px solid #f1dfb2;
    border-radius: 10px;
    font-size: 12px;
}
body.tv2 .store-status-banner span{
    color: #80682b;
}
body.tv2 .catalogo, body.tv2 .checkout-contenedor, body.tv2 .seguimiento-contenedor{
    width: min(calc(100% - 40px), var(--container-width));
    margin-left: auto;
    margin-right: auto;
}
body.tv2 .catalogo{
    padding: 46px 0 24px;
}
body.tv2 .catalogo-kicker, body.tv2 .canjear-etiqueta{
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--color-primary-dark);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}
body.tv2 .catalogo-bloque{
    margin-top: 44px;
    scroll-margin-top: 130px;
}
body.tv2 .catalogo-bloque-header{
    margin-bottom: 18px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
}
body.tv2 .catalogo-bloque-header h2{
    margin: 5px 0 5px;
    color: var(--color-text);
    font-size: 28px;
    line-height: 1.12;
    letter-spacing: -.035em;
}
body.tv2 .catalogo-bloque-header p{
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 13px;
}
body.tv2 .catalogo-contador{
    flex: 0 0 auto;
    padding: 6px 10px;
    color: var(--color-primary-dark);
    background: var(--color-primary-soft);
    border: 1px solid #cbe9d9;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
}
body.tv2 .evento-cuenta-regresiva{
    margin-top: 18px;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    background: var(--color-background-soft, #f7f8f7);
    border: 1px solid var(--color-border);
    border-radius: 14px;
}
body.tv2 .evento-cuenta-regresiva > span{
    font-size: 12px;
    font-weight: 700;
    color: var(--color-text-secondary);
}
body.tv2 .evento-cuenta-regresiva-numeros{
    display: flex;
    gap: 18px;
}
body.tv2 .evento-cuenta-regresiva-numeros div{
    text-align: center;
    min-width: 44px;
}
body.tv2 .evento-cuenta-regresiva-numeros strong{
    display: block;
    font-size: 24px;
    color: var(--evento-acento, var(--color-primary));
}
body.tv2 .evento-cuenta-regresiva-numeros small{
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--color-text-secondary);
}
body.tv2 .productos-grid-productos{
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
body.tv2 .producto-boton{
    min-width: 92px;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 9px;
    font-size: 12px;
    box-shadow: 0 2px 6px rgba(22, 167, 101, .08);
}
body.tv2 .productos-grid-compacto{
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}
body.tv2 .productos-grid-compacto .producto-estandar-imagen{
    height: 140px;
    padding: 12px;
}
body.tv2 .productos-grid-compacto .producto-card-contenido{
    min-height: 120px;
    padding: 12px 13px 13px;
}
body.tv2 .productos-grid-compacto .producto-card h3{
    font-size: 13px;
}
body.tv2 .catalogo-limitado .catalogo-bloque-header{
    padding: 0 2px;
}
body.tv2 .espacio-subseccion .productos-grid-productos{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
body.tv2 .faq-teaser .boton-secundario{
    flex: none;
    white-space: nowrap;
}
@media (max-width: 640px){body.tv2 .faq-teaser .boton-secundario{
        width: 100%;
        justify-content: center;
    }}
body.tv2 .admin-body .admin-card{
    background:var(--glass-2);
    border: 1px solid var(--admin-v2-line);
    border-radius: 8px;
    box-shadow: var(--admin-v2-shadow-soft);
}
body.tv2 .admin-body .admin-card{
    padding: 18px;
}
body.tv2 .admin-body .admin-card > h2{
    color: var(--admin-v2-text);
    letter-spacing: 0;
}
body.tv2 .admin-body .admin-tab-panel > .admin-card{
    border-radius: 8px;
}
@media (max-width: 640px){body.tv2 .admin-body .admin-card{
        padding: 13px;
    }}
body.tv2 .campo{
    min-width: 0;
}
body.tv2 .campo label{
    display: block;
    margin-bottom: 7px;
    color: var(--color-text);
    font-size: 12px;
    font-weight: 700;
}
body.tv2 .campo small, body.tv2 .admin-ayuda{
    color: var(--color-text-muted);
    font-size: 12px;
    line-height: 1.5;
}
body.tv2 .login-opciones, body.tv2 .cliente-tipo-opciones, body.tv2 .metodos-pago{
    display: grid;
    gap: 10px;
}
body.tv2 .login-opcion, body.tv2 .cliente-tipo, body.tv2 .metodo{
    position: relative;
    min-width: 0;
    padding: 14px;
    display: flex;
    align-items: flex-start;
    gap: 11px;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    transition: border-color var(--transition), background-color var(--transition), box-shadow var(--transition);
}
body.tv2 .login-opcion:has(input:checked), body.tv2 .cliente-tipo:has(input:checked), body.tv2 .metodo:has(input:checked){
    background: var(--color-primary-soft);
    border-color: #9DD9BA;
    box-shadow: 0 0 0 2px rgba(22, 167, 101, .05);
}
body.tv2 .login-opcion input, body.tv2 .cliente-tipo input, body.tv2 .metodo input{
    margin-top: 3px;
}
body.tv2 .login-opcion strong, body.tv2 .cliente-tipo strong, body.tv2 .metodo strong{
    display: block;
    font-size: 14px;
}
body.tv2 .login-opcion span, body.tv2 .cliente-tipo span, body.tv2 .metodo span{
    display: block;
    color: var(--color-text-secondary);
    font-size: 12px;
}
body.tv2 .login-opcion-recomendado{
    display: inline-block !important;
    margin-left: 6px;
    padding: 1px 8px;
    border-radius: 999px;
    background: #e6f6ec;
    color: #1f9d55;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .02em;
    text-transform: uppercase;
    vertical-align: middle;
}
body.tv2 .checkout-pagina{
    padding: 28px 0 64px;
    background: var(--color-background);
}
body.tv2 .checkout-contenedor{
    width: min(calc(100% - 32px), 1180px);
    margin: 0 auto;
}
body.tv2 .checkout-titulo{
    margin: 0 0 16px;
}
body.tv2 .checkout-titulo > span, body.tv2 .checkout-card-eyebrow, body.tv2 .checkout-paso-kicker{
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 800;
}
body.tv2 .checkout-titulo > span{
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 0 10px;
    color: var(--color-primary-dark);
    background: var(--color-primary-soft);
    border: 1px solid var(--borde-c);
    border-radius: 999px;
    font-size: 11px;
}
body.tv2 .checkout-titulo h1{
    margin: 8px 0 4px;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.05;
    letter-spacing: -.045em;
}
body.tv2 .checkout-titulo p{
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 13px;
}
body.tv2 .checkout-progreso{
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    padding: 8px;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: 14px;
    box-shadow: var(--shadow-xs);
}
body.tv2 .checkout-progreso-item{
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 7px 10px;
    color: var(--color-text-secondary);
    background: transparent;
    border: 0;
    border-radius: 9px;
    text-align: left;
    cursor: default;
}
body.tv2 .checkout-progreso-item:disabled{
    opacity: .52;
}
body.tv2 .checkout-progreso-item.activo{
    color: var(--color-text);
    background: var(--color-primary-soft);
}
body.tv2 .checkout-progreso-item.completado{
    color: var(--color-primary-dark);
}
body.tv2 .checkout-progreso-numero{
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-secondary);
    background:var(--glass);
    border: 1px solid var(--color-border);
    border-radius: 50%;
    font-size: 11px;
    font-weight: 850;
}
body.tv2 .checkout-progreso-item.activo .checkout-progreso-numero, body.tv2 .checkout-progreso-item.completado .checkout-progreso-numero{
    color: #fff;
    background: var(--color-primary);
    border-color: var(--color-primary);
}
body.tv2 .checkout-progreso-item strong, body.tv2 .checkout-progreso-item small{
    display: block;
}
body.tv2 .checkout-progreso-item strong{
    font-size: 11px;
    line-height: 1.2;
}
body.tv2 .checkout-progreso-item small{
    margin-top: 2px;
    color: var(--color-text-muted);
    font-size: 11px;
}
body.tv2 .checkout-progreso-linea{
    width: 42px;
    height: 1px;
    flex: 0 0 42px;
    background: var(--color-border);
}
body.tv2 .checkout-progreso-linea.completada{
    background: #8ED5B4;
}
body.tv2 .checkout-error{
    margin-bottom: 14px;
}
body.tv2 .checkout-paso{
    display: none;
}
body.tv2 .checkout-paso.visible{
    display: block;
    animation: checkoutPasoIn .18s ease-out;
}
body.tv2 .checkout-paso-cabecera{
    margin-bottom: 14px;
    padding: 0 2px;
}
body.tv2 .checkout-paso-numero{
    display: none;
}
body.tv2 .checkout-paso-kicker{
    display: inline;
    margin-right: 7px;
    color: var(--color-primary);
    font-size: 11px;
}
body.tv2 .checkout-paso-cabecera h2{
    display: inline;
    color: var(--color-text);
    font-size: 17px;
    line-height: 1.3;
    letter-spacing: -.02em;
}
body.tv2 .checkout-paso-cabecera p{
    margin: 3px 0 0;
    color: var(--color-text-secondary);
    font-size: 12.5px;
    line-height: 1.45;
}
body.tv2 .checkout-card, body.tv2 .checkout-resumen{
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: 14px;
    box-shadow: var(--shadow-xs);
}
body.tv2 .checkout-card{
    margin-bottom: 12px;
    padding: 18px;
}
body.tv2 .checkout-card-accent{
    border-color: #BDE7D2;
    background: linear-gradient(180deg, #fff 0%, #FBFEFC 100%);
}
body.tv2 .checkout-card-success{
    border-color: #BDE7D2;
    background: var(--color-primary-soft);
}
body.tv2 .checkout-card-heading{
    margin-bottom: 14px;
}
body.tv2 .checkout-card-heading h3, body.tv2 .checkout-card-content h3, body.tv2 .checkout-pago-main h3, body.tv2 .checkout-resumen h3{
    margin: 0;
    color: var(--color-text);
    font-size: 16px;
    line-height: 1.25;
    letter-spacing: -.02em;
}
body.tv2 .checkout-card-heading p, body.tv2 .checkout-card-content > p{
    margin: 4px 0 0;
    color: var(--color-text-secondary);
    font-size: 11px;
    line-height: 1.5;
}
body.tv2 .checkout-card-eyebrow{
    display: block;
    margin-bottom: 3px;
    color: var(--color-primary);
    font-size: 11px;
}
body.tv2 .cliente-tipo-opciones, body.tv2 .login-opciones, body.tv2 .metodos-pago{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
body.tv2 .cliente-tipo-opciones form{
    min-width: 0;
}
body.tv2 .cliente-tipo{
    width: 100%;
    min-height: 70px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    gap: 11px;
    text-align: left;
    border-radius: 11px;
}
body.tv2 .cliente-tipo-icono{
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border-radius: 10px;
}
body.tv2 .cliente-tipo strong{
    font-size: 12px;
}
body.tv2 .cliente-tipo small{
    display: block;
    margin-top: 2px;
    font-size: 11px;
}
body.tv2 .premium-verificacion, body.tv2 .premium-verificada{
    display: flex;
    align-items: flex-start;
    gap: 13px;
}
body.tv2 .premium-verificacion-icono, body.tv2 .premium-verificada-icono{
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-dark);
    background:var(--glass-2);
    border: 1px solid var(--borde-c);
    border-radius: 10px;
}
body.tv2 .premium-verificada-icono{
    color: #fff;
    background: var(--color-primary);
    border-color: var(--color-primary);
    font-weight: 900;
}
body.tv2 .checkout-card-content{
    min-width: 0;
    flex: 1;
}
body.tv2 .premium-form{
    margin-top: 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 9px;
    align-items: end;
}
body.tv2 .premium-form .campo{
    min-width: 0;
}
body.tv2 .premium-cuenta{
    margin-top: 12px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
body.tv2 .premium-cuenta > div, body.tv2 .canje-premium-resumen span, body.tv2 .cuenta-destino-grid > div{
    padding: 10px;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: 9px;
}
body.tv2 .premium-cuenta small, body.tv2 .canje-premium-resumen small, body.tv2 .cuenta-destino-grid span, body.tv2 .checkout-producto span, body.tv2 .checkout-producto small, body.tv2 .checkout-resumen-linea span{
    color: var(--color-text-muted);
    font-size: 11px;
}
body.tv2 .premium-cuenta small, body.tv2 .canje-premium-resumen small, body.tv2 .cuenta-destino-grid span{
    display: block;
    margin-bottom: 3px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
body.tv2 .premium-cuenta strong, body.tv2 .canje-premium-resumen strong, body.tv2 .cuenta-destino-grid strong{
    display: block;
    color: var(--color-text);
    font-size: 11px;
    overflow-wrap: anywhere;
}
body.tv2 .cuenta-destino-grid small{
    display: block;
    margin-top: 4px;
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: 600;
}
body.tv2 .checkout-fields-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
body.tv2 .checkout-form-section .campo + .campo{
    margin-top: 12px;
}
body.tv2 .checkout-login-field{
    margin-top: 14px;
}
body.tv2 .login-opcion, body.tv2 .metodo{
    min-width: 0;
    min-height: 68px;
    padding: 12px;
    border-radius: 10px;
}
body.tv2 .login-opcion strong, body.tv2 .metodo strong{
    font-size: 11px;
    line-height: 1.3;
}
body.tv2 .login-opcion span, body.tv2 .metodo span{
    display: block;
    margin-top: 3px;
    color: var(--color-text-secondary);
    font-size: 11px;
    line-height: 1.4;
}
body.tv2 .canje-premium-confirmado{
    margin-top: 4px;
}
body.tv2 .canje-premio{
    margin-top: 13px;
    padding: 12px 13px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #FFFAEB;
    border: 1px solid #FDE7B2;
    border-radius: 10px;
}
body.tv2 .canje-premio span{
    color: #9A6700;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
}
body.tv2 .canje-premio strong{
    color: #7A5A00;
    font-size: 12px;
    text-align: right;
}
body.tv2 .checkout-paso-acciones{
    margin-top: 14px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 9px;
}
body.tv2 .checkout-paso-acciones .boton-confirmar, body.tv2 .checkout-paso-acciones .boton-secundario{
    min-height: 44px;
    padding: 0 18px;
    border-radius: 10px;
}
body.tv2 .checkout-next span{
    margin-left: 7px;
}
body.tv2 .checkout-paso-acciones-final{
    justify-content: space-between;
}
body.tv2 .checkout-pago-layout{
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 14px;
    align-items: start;
}
body.tv2 .checkout-pago-main{
    min-width: 0;
}
body.tv2 .metodo{
    display: flex;
    align-items: flex-start;
}
body.tv2 .metodos-pago .checkout-pago-detalles{
    grid-column: 1 / -1;
    width: 100%;
    margin: -2px 0 1px;
}
body.tv2 .checkout-pago-detalles[hidden]{
    display: none !important;
}
body.tv2 .pago-detalle-card{
    padding: 14px;
    background:var(--glass);
    border: 1px solid var(--color-border);
    border-radius: 10px;
}
body.tv2 .pago-detalle-card h3{
    margin: 0 0 11px;
    font-size: 13px;
}
body.tv2 .cuenta-destino-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}
body.tv2 .pago-monto{
    margin: 11px 0;
    padding: 11px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: var(--color-primary-soft);
    border: 1px solid var(--borde-c);
    border-radius: 9px;
}
body.tv2 .pago-monto span{
    color: var(--color-primary-dark);
    font-size: 11px;
    font-weight: 750;
}
body.tv2 .pago-monto strong{
    color: var(--color-primary-dark);
    font-size: 16px;
}
body.tv2 .qr-pago-card{
    text-align: center;
}
body.tv2 .qr-pago-imagen{
    width: min(100%, 230px);
    max-height: 230px;
    margin: 8px auto 10px;
    padding: 8px;
    display: block;
    object-fit: contain;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: 10px;
}
body.tv2 .pago-config-alerta{
    padding: 10px 11px;
    color: #9A6700;
    background: var(--color-warning-soft);
    border: 1px solid #FDE7B2;
    border-radius: 8px;
    font-size: 11px;
}
body.tv2 .checkout-resumen{
    position: sticky;
    top: 82px;
    padding: 16px;
}
body.tv2 .checkout-resumen h3{
    margin-bottom: 12px;
}
body.tv2 .resumen-premium{
    margin-bottom: 9px;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    gap: 7px;
    color: #7A5A00;
    background: #FFF8DD;
    border: 1px solid #FDE7B2;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 750;
}
body.tv2 .checkout-producto{
    padding: 10px 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid var(--color-border);
}
body.tv2 .checkout-producto > div{
    min-width: 0;
}
body.tv2 .checkout-producto strong{
    color: var(--color-text);
    font-size: 11px;
    line-height: 1.35;
}
body.tv2 .checkout-producto > strong{
    flex: 0 0 auto;
    white-space: nowrap;
}
body.tv2 .checkout-producto span, body.tv2 .checkout-producto small{
    display: block;
    margin-top: 2px;
}
body.tv2 .precio-descuento{
    color: var(--color-primary-dark) !important;
    font-weight: 750;
}
body.tv2 .checkout-resumen-linea{
    padding: 9px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 9px;
    color: var(--color-text-secondary);
    border-bottom: 1px solid var(--color-border);
    font-size: 11px;
}
body.tv2 .checkout-resumen-linea strong{
    color: var(--color-text);
    white-space: nowrap;
}
body.tv2 .checkout-descuento-linea strong{
    color: var(--color-primary-dark);
}
body.tv2 .checkout-total{
    padding: 13px 0 4px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
body.tv2 .checkout-total span{
    color: var(--color-text-secondary);
    font-size: 11px;
    font-weight: 750;
}
body.tv2 .checkout-total strong{
    color: var(--color-primary-dark);
    font-size: 22px;
    letter-spacing: -.04em;
}
body.tv2 .checkout-descuento-step3{
    padding: 13px 15px;
}
body.tv2 .descuento-form-step3, body.tv2 .descuento-aplicado{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
body.tv2 .descuento-form-step3 label{
    display: block;
    margin-bottom: 3px;
    color: var(--color-text);
    font-size: 11px;
    font-weight: 800;
}
body.tv2 .descuento-form-step3 p, body.tv2 .descuento-aplicado small{
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 11px;
}
body.tv2 .descuento-form-step3-controls{
    min-width: 310px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 7px;
}
body.tv2 .descuento-form-step3-controls input{
    min-width: 0;
}
body.tv2 .checkout-cupon-check{
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: var(--color-primary);
    border-radius: 50%;
    font-weight: 900;
}
body.tv2 .descuento-aplicado > div{
    min-width: 0;
    flex: 1;
}
body.tv2 .descuento-aplicado > div > span{
    display: block;
    margin-bottom: 2px;
    color: var(--color-primary-dark);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
}
body.tv2 .descuento-aplicado strong{
    display: block;
    font-size: 11px;
}
body.tv2 .checkout-seguridad{
    margin-top: 9px;
    padding: 10px;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #475467;
    background: var(--color-info-soft);
    border: 1px solid #BFDBFE;
    border-radius: 9px;
}
body.tv2 .checkout-seguridad > .ui-icon{
    flex: 0 0 auto;
}
body.tv2 .checkout-seguridad strong{
    font-size: 11px;
}
body.tv2 .checkout-seguridad p{
    margin: 3px 0 0;
    color: inherit;
    font-size: 11px;
    line-height: 1.45;
}
body.tv2 .checkout-premium-cuenta-resumen{
    margin-bottom: 0;
}
body.tv2 .canje-premium-resumen{
    margin-top: 10px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}
body.tv2 .canje-premium-confirmado{
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
body.tv2 .canje-premium-confirmado > div:first-child, body.tv2 .premium-datos-confirmados > div:first-child{
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: var(--color-primary);
    border-radius: 50%;
    font-weight: 900;
}
body.tv2 .canje-premium-confirmado section{
    min-width: 0;
}
body.tv2 .canje-premium-confirmado section > strong, body.tv2 .premium-datos-confirmados section > strong{
    display: block;
    font-size: 11px;
}
body.tv2 .canje-premium-confirmado section > p, body.tv2 .premium-datos-confirmados section > p{
    margin: 3px 0 0;
    color: var(--color-text-secondary);
    font-size: 11px;
    line-height: 1.45;
}
body.tv2 .canje-premio-grande{
    min-height: 66px;
}
@media (max-width: 900px){body.tv2 .checkout-pago-layout{
        grid-template-columns: 1fr;
    }body.tv2 .checkout-resumen{
        position: static;
    }}
body.tv2 .admin-card .pago-link-admin{
    margin-top: 20px;
    padding: 17px;
    border: 1px solid #e2e6e4;
    border-radius: 10px;
    background: #fafcfb;
}
body.tv2 .pago-link-admin .campo{
    margin-bottom: 12px;
}
body.tv2 .pedido-link-pago{
    margin-top: 15px;
}
@media (max-width: 700px){body.tv2 .checkout-pagina{
        padding: 20px 0 48px;
    }body.tv2 .checkout-contenedor{
        width: min(calc(100% - 20px), 620px);
    }body.tv2 .checkout-titulo h1{
        font-size: 30px;
    }body.tv2 .checkout-progreso{
        padding: 6px;
        gap: 2px;
    }body.tv2 .checkout-progreso-item{
        justify-content: center;
        padding: 6px 4px;
        gap: 6px;
    }body.tv2 .checkout-progreso-item small{
        display: none;
    }body.tv2 .checkout-progreso-item strong{
        font-size: 11px;
    }body.tv2 .checkout-progreso-numero{
        width: 26px;
        height: 26px;
        flex-basis: 26px;
    }body.tv2 .checkout-progreso-linea{
        width: 12px;
        flex-basis: 12px;
    }body.tv2 .checkout-paso-cabecera{
        margin-bottom: 10px;
    }body.tv2 .checkout-card{
        padding: 14px;
        border-radius: 12px;
    }body.tv2 .checkout-fields-grid, body.tv2 .cliente-tipo-opciones, body.tv2 .login-opciones, body.tv2 .metodos-pago, body.tv2 .premium-cuenta, body.tv2 .cuenta-destino-grid, body.tv2 .pedido-cuenta-destino{
        grid-template-columns: 1fr;
    }body.tv2 .premium-form{
        grid-template-columns: 1fr;
    }body.tv2 .premium-form .boton-confirmar{
        width: 100%;
    }body.tv2 .descuento-form-step3, body.tv2 .descuento-aplicado{
        align-items: stretch;
        flex-direction: column;
    }body.tv2 .descuento-form-step3-controls{
        min-width: 0;
        width: 100%;
    }body.tv2 .descuento-aplicado .boton-secundario{
        width: 100%;
    }body.tv2 .checkout-paso-acciones, body.tv2 .checkout-paso-acciones-final{
        display: grid;
        grid-template-columns: 1fr 1fr;
    }body.tv2 .checkout-paso-acciones .boton-confirmar, body.tv2 .checkout-paso-acciones .boton-secundario{
        width: 100%;
        padding: 0 12px;
    }body.tv2 .checkout-paso-acciones-final .boton-confirmar{
        grid-column: 2;
    }body.tv2 .checkout-paso-acciones-final .checkout-back{
        grid-column: 1;
        grid-row: 1;
    }body.tv2 .pago-monto{
        align-items: flex-start;
        flex-direction: column;
    }body.tv2 .checkout-resumen{
        padding: 14px;
    }}
@media (max-width: 430px){body.tv2 .checkout-contenedor{
        width: calc(100% - 14px);
    }body.tv2 .checkout-titulo h1{
        font-size: 27px;
    }body.tv2 .checkout-titulo p{
        font-size: 11px;
    }body.tv2 .checkout-progreso-item{
        padding: 5px 2px;
        gap: 4px;
    }body.tv2 .checkout-progreso-item strong{
        font-size: 11px;
    }body.tv2 .checkout-progreso-linea{
        width: 7px;
        flex-basis: 7px;
    }body.tv2 .checkout-paso-numero{
        width: 31px;
        height: 31px;
        flex-basis: 31px;
    }body.tv2 .checkout-paso-cabecera p{
        font-size: 11px;
    }body.tv2 .checkout-card{
        padding: 12px;
    }body.tv2 .checkout-paso-acciones{
        grid-template-columns: 1fr;
    }body.tv2 .checkout-paso-acciones-final .boton-confirmar, body.tv2 .checkout-paso-acciones-final .checkout-back{
        grid-column: 1;
        grid-row: auto;
    }body.tv2 .descuento-form-step3-controls{
        grid-template-columns: 1fr;
    }body.tv2 .checkout-total strong{
        font-size: 20px;
    }}
body.tv2 .canjear-pagina{
    width: min(calc(100% - 40px), 920px);
    margin: 0 auto;
    padding: 64px 0 88px;
}
body.tv2 .canjear-pagina-card{
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    padding: 36px;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-sm);
}
body.tv2 .canjear-pagina-card h1{
    margin: 8px 0 10px;
    color: var(--color-text);
    font-size: clamp(30px, 4vw, 42px);
    line-height: 1.08;
    letter-spacing: -.045em;
}
body.tv2 .canjear-pagina-card > p{
    margin: 0 0 26px;
    color: var(--color-text-secondary);
    font-size: 14px;
    line-height: 1.65;
}
body.tv2 .canjear-pagina-card .mensaje-error{
    margin: 0 0 20px;
}
body.tv2 .canjear-pagina-form{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 12px;
}
body.tv2 .canjear-pagina-form .campo{
    min-width: 0;
    margin: 0;
}
body.tv2 .canjear-pagina-form .boton-confirmar{
    min-height: 46px;
    white-space: nowrap;
}
body.tv2 .canjear-pagina-ayuda{
    margin-top: 22px;
    padding: 14px 16px;
    display: grid;
    gap: 3px;
    color: var(--color-text-secondary);
    background: var(--color-surface-soft);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    font-size: 12px;
    line-height: 1.55;
}
body.tv2 .canjear-pagina-ayuda strong{
    color: var(--color-text);
}
body.tv2 .canjear-volver{
    display: inline-flex;
    margin-top: 20px;
    color: var(--color-primary-dark);
    font-size: 13px;
    font-weight: 750;
}
body.tv2 .canjear-volver:hover{
    text-decoration: underline;
    text-underline-offset: 3px;
}
@media (max-width: 720px){body.tv2 .canjear-pagina{
        width: calc(100% - 20px);
        padding: 38px 0 58px;
    }body.tv2 .canjear-pagina-card{
        padding: 24px 18px;
        border-radius: var(--radius-lg);
    }body.tv2 .canjear-pagina-card h1{
        font-size: 30px;
    }body.tv2 .canjear-pagina-form{
        grid-template-columns: 1fr;
        gap: 12px;
    }body.tv2 .canjear-pagina-form .boton-confirmar{
        width: 100%;
    }}
@media (max-width: 430px){body.tv2 .canjear-pagina{
        width: calc(100% - 16px);
        padding-top: 26px;
    }body.tv2 .canjear-pagina-card{
        padding: 20px 15px;
    }body.tv2 .canjear-pagina-card h1{
        font-size: 27px;
    }body.tv2 .canjear-pagina-card > p{
        font-size: 13px;
    }}
body.tv2 .admin-card{
    padding: 20px;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
}
body.tv2 .admin-card > h2{
    margin: 0;
    color: var(--color-text);
    font-size: 17px;
    letter-spacing: -.02em;
}
body.tv2 .estadistica.procesando{
    border-top: 3px solid var(--color-info);
}
body.tv2 .estadistica.completado{
    border-top: 3px solid var(--color-primary);
}
body.tv2 .form-seccion .campo + .campo{
    margin-top: 14px;
}
body.tv2 .admin-ayuda{
    margin-top: 12px;
    padding: 12px 14px;
    background: #F8FAFC;
    border: 1px solid var(--color-border);
}
body.tv2 .admin-login-card .boton-confirmar{
    width: 100%;
}
@media (max-width: 1180px){body.tv2 .productos-grid-productos{ grid-template-columns: repeat(3, minmax(0, 1fr)); }}
@media (max-width: 900px){body.tv2 .catalogo, body.tv2 .checkout-contenedor, body.tv2 .seguimiento-contenedor, body.tv2 .store-status-banner{
        width: min(calc(100% - 28px), var(--container-width));
    }body.tv2 .checkout-resumen{ position: static; }}
@media (max-width: 720px){body.tv2 .catalogo, body.tv2 .checkout-contenedor, body.tv2 .seguimiento-contenedor, body.tv2 .store-status-banner{
        width: calc(100% - 20px);
    }body.tv2 .catalogo{ padding-top: 34px; }body.tv2 .catalogo-bloque{ margin-top: 34px; }body.tv2 .catalogo-bloque-header{ align-items: flex-start; }body.tv2 .catalogo-bloque-header h2{ font-size: 25px; }body.tv2 .catalogo-bloque-header p{ max-width: 620px; }body.tv2 .productos-grid-productos{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }body.tv2 .producto-boton{ min-width: 78px; min-height: 34px; padding: 0 9px; font-size: 11px; }body.tv2 .espacio-subseccion .productos-grid-productos{ grid-template-columns: repeat(2, minmax(0, 1fr)); }body.tv2 .checkout-titulo, body.tv2 .premium-verificacion, body.tv2 .premium-verificada{ width: min(calc(100% - 20px), var(--container-width)); }body.tv2 .checkout-resumen{ padding: 18px; }body.tv2 .checkout-titulo h1, body.tv2 .seguimiento-titulo h1{ font-size: 31px; }}
@media (max-width: 430px){body.tv2 .productos-grid-productos{ grid-template-columns: repeat(2, minmax(0, 1fr)); }body.tv2 .producto-boton{ width: 100%; }}
@media (max-width: 375px){body.tv2 .productos-grid-productos{ gap: 8px; }}
body.tv2 .catalogo-vacio{
    margin-top: 24px;
    padding: 56px 24px;
    text-align: center;
    background:var(--glass-2);
    border: 1px dashed var(--color-border-strong);
    border-radius: var(--radius-lg);
}
body.tv2 .catalogo-vacio-icono{
    width: 52px;
    height: 52px;
    margin: 0 auto 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-dark);
    background: var(--color-primary-soft);
    border-radius: 13px;
}
body.tv2 .catalogo-vacio h2{
    margin: 0 0 7px;
    font-size: 23px;
    letter-spacing: -.025em;
}
body.tv2 .catalogo-vacio p{
    max-width: 620px;
    margin: 0 auto 20px;
    color: var(--color-text-secondary);
    font-size: 13px;
}
body.tv2 .checkout-pago-detalles{
    margin-top: 8px;
}
body.tv2 .pago-detalle-card, body.tv2 .pedido-pago-card{
    padding: 20px;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
}
body.tv2 .pago-detalle-card h2, body.tv2 .pedido-pago-card h2{
    margin: 0 0 14px;
}
body.tv2 .pedido-pago-intro{
    margin: 0 0 14px;
    color: var(--color-text-secondary);
    font-size: 13px;
}
body.tv2 .pedido-cuenta-destino{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 14px;
}
body.tv2 .pedido-cuenta-destino > div{
    padding: 10px;
    background:var(--glass-2);
    border: 1px solid var(--color-border);
    border-radius: 9px;
}
body.tv2 .pedido-cuenta-destino span{
    display: block;
    margin-bottom: 3px;
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
body.tv2 .pedido-cuenta-destino strong{
    display: block;
    color: var(--color-text);
    font-size: 11px;
    overflow-wrap: anywhere;
}
body.tv2 .pedido-cuenta-destino small{
    display: block;
    margin-top: 4px;
    color: var(--color-text-muted);
    font-size: 11px;
    font-weight: 600;
}
body.tv2 .pedido-icono{
    width: 50px;
    height: 50px;
    margin-bottom: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary-dark);
    background: var(--color-primary-soft);
    border-radius: 13px;
}
body.tv2 .pedido-whatsapp{
    color: var(--color-primary-dark);
    font-weight: 750;
}
body.tv2 .resumen-premium, body.tv2 .premium-datos-confirmados, body.tv2 .premium-form{
    border-radius: var(--radius-sm);
}
body.tv2 .resumen-premium{
    margin-bottom: 12px;
    padding: 10px 12px;
    color: #7A5A00;
    background: #FFF8DD;
    border: 1px solid #FDE7B2;
    font-size: 12px;
    font-weight: 700;
}
body.tv2 .precio-descuento{
    color: var(--color-primary-dark);
    font-weight: 750;
}
body.tv2 .estado-pagina{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;background:#f7f8fa}
body.tv2 .estado-pagina-codigo{font-size:.78rem;font-weight:800;letter-spacing:.12em;color:var(--color-primary);margin-bottom:12px}
body.tv2 .estado-pagina-icono{font-weight:900;font-size:1.1rem;color:var(--color-primary);margin-bottom:18px}
body.tv2 .estado-pagina h1{margin:0 0 10px;font-size:clamp(1.8rem,4vw,3rem)}
body.tv2 .estado-pagina p{max-width:520px;color:#667085;line-height:1.6;margin:0 0 24px}
body.tv2 .metodos-pago .checkout-pago-detalles{
    grid-column: 1 / -1;
    margin-top: 0;
}
body.tv2 .canje-premium-confirmado{
    margin-top: 8px;
}
body.tv2 .canje-premium-resumen{
    margin-top: 14px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
body.tv2 .canje-premium-resumen span{
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px;
    background: var(--color-background);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
}
body.tv2 .canje-premium-resumen small{
    color: var(--color-text-secondary);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .08em;
}
body.tv2 .canje-premium-resumen strong{
    color: var(--color-text);
    font-size: 13px;
}
@media (max-width: 600px){body.tv2 .canje-premium-resumen{
        grid-template-columns: 1fr;
    }}
body.tv2 .login-opciones-vertical{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}
body.tv2 .login-opcion-grupo{
    min-width: 0;
    padding: 0;
    border: 1px solid var(--color-border);
    border-radius: 12px;
    background:var(--glass-2);
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease;
}
body.tv2 .login-opcion-grupo.seleccionado{
    border-color: #9ADBBC;
    box-shadow: 0 0 0 2px rgba(22, 167, 101, .08);
}
body.tv2 .login-opcion-grupo .login-opcion{
    width: 100%;
    min-height: 68px;
    margin: 0;
    border: 0;
    border-radius: 0;
    background:var(--glass-2);
}
body.tv2 .login-opcion-grupo .login-opcion:hover{
    background: #FAFCFB;
}
body.tv2 .login-opcion-grupo.seleccionado .login-opcion{
    background: var(--color-primary-soft);
}
body.tv2 .login-detalles-inline{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
    border-top: 1px solid var(--color-border);
    background:var(--glass);
}
body.tv2 .login-detalles-inline[hidden]{
    display: none;
}
body.tv2 .login-detalles-inline .campo{
    min-width: 0;
    margin: 0;
}
body.tv2 .login-detalles-inline input{
    background:var(--glass-2);
}
@media (max-width: 640px){body.tv2 .login-detalles-inline{
        grid-template-columns: 1fr;
    }}
body.tv2 .legal-hero{
    padding: 58px 20px 42px;
    background: linear-gradient(180deg, #ffffff 0%, var(--color-background) 100%);
    border-bottom: 1px solid var(--color-border);
}
body.tv2 .legal-hero-inner{
    width: min(100%, var(--container-width));
    margin: 0 auto;
    text-align: center;
}
body.tv2 .legal-hero-inner > span{
    display: inline-block;
    margin-bottom: 9px;
    color: var(--color-primary-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
}
body.tv2 .legal-hero-inner h1{
    margin: 0;
    color: var(--color-text);
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.08;
    letter-spacing: -.03em;
}
body.tv2 .legal-hero-inner p{
    max-width: 720px;
    margin: 14px auto 0;
    color: var(--color-text-muted);
    font-size: 15px;
    line-height: 1.65;
}
body.tv2 .legal-documento{
    width: min(100%, 900px);
    margin: 0 auto;
    padding: 44px 20px 76px;
}
body.tv2 .legal-documento section{
    margin-bottom: 30px;
    padding: 26px 28px;
    border: 1px solid var(--color-border);
    border-radius: 16px;
    background:var(--glass-2);
}
body.tv2 .legal-documento section:last-child{
    margin-bottom: 0;
}
body.tv2 .legal-documento h2{
    margin: 0 0 12px;
    color: var(--color-text);
    font-size: 19px;
    line-height: 1.3;
}
body.tv2 .legal-documento p, body.tv2 .legal-documento li{
    color: var(--color-text-muted);
    font-size: 14px;
    line-height: 1.75;
}
body.tv2 .legal-documento p{
    margin: 0 0 11px;
}
body.tv2 .legal-documento p:last-child{
    margin-bottom: 0;
}
body.tv2 .legal-documento ul{
    margin: 10px 0 0;
    padding-left: 20px;
}
body.tv2 .legal-documento strong{
    color: var(--color-text);
}
@media (max-width: 640px){body.tv2 .legal-hero{
        padding: 42px 16px 32px;
    }body.tv2 .legal-documento{
        padding-left: 14px;
        padding-right: 14px;
    }body.tv2 .legal-documento section{
        padding: 21px 18px;
        border-radius: 13px;
    }}
body.tv2 .producto-boton.agregando{
    opacity: .72;
    pointer-events: none;
}
body.tv2 .producto-boton.agregado{
    color: #fff !important;
    background: var(--color-primary-dark) !important;
    border-color: var(--color-primary-dark) !important;
}
body.tv2 .campo-password{
    position: relative;
    display: flex;
    align-items: stretch;
}
body.tv2 .campo-password input{
    min-width: 0;
    flex: 1;
    padding-right: 78px;
}
body.tv2 .password-toggle{
    position: absolute;
    top: 50%;
    right: 7px;
    min-height: 30px;
    padding: 0 8px;
    color: var(--color-primary-dark);
    background: transparent;
    border: 0;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 850;
    cursor: pointer;
    transform: translateY(-50%);
}
body.tv2 .password-toggle:hover, body.tv2 .password-toggle:focus-visible{
    background: var(--color-primary-soft);
}
body.tv2 .checkout-pago-layout{
    position: relative;
}
body.tv2 .checkout-pago-layout > .checkout-pago-main{
    order: 1;
}
body.tv2 .checkout-pago-layout > .checkout-resumen{
    order: 2;
    position: sticky;
    top: 86px;
    align-self: start;
}
body.tv2 .checkout-resumen-pago{
    z-index: 2;
}
body.tv2 .checkout-resumen-pago h3{
    margin-bottom: 13px;
}
@media (max-width: 900px){body.tv2 .checkout-pago-layout > .checkout-resumen{
        order: 1;
        position: static;
    }body.tv2 .checkout-pago-layout > .checkout-pago-main{
        order: 2;
    }body.tv2 .checkout-resumen-pago{
        margin-bottom: 12px;
        border-color: #BDE7D2;
        box-shadow: 0 5px 18px rgba(22, 167, 101, .08);
    }}
@media (max-width: 640px){body.tv2 .checkout-total-metodo-cabecera{
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }body.tv2 .checkout-total-metodo-cabecera strong{
        font-size: 24px;
    }}
body.tv2 .boton-principal:focus-visible, body.tv2 .producto-boton:focus-visible, body.tv2 .boton-confirmar:focus-visible, body.tv2 .seguimiento-boton:focus-visible, body.tv2 .pedido-boton-principal:focus-visible{
    box-shadow: 0 0 0 4px rgba(22, 167, 101, .13);
}
body.tv2 .catalogo-bloque-header h2{
    font-weight: 800;
}
body.tv2 .admin-filtro-acciones .boton-secundario{
    min-height: 42px;
    display: inline-flex;
    align-items: center;
}
@media (max-width: 640px){body.tv2 .admin-filtro-acciones .boton-secundario{
        flex: 1;
        justify-content: center;
    }body.tv2 .admin-card{
        padding: 16px;
    }}
body.tv2 .checkout-whatsapp-consent{
    margin: 18px 0 4px;
    padding: 16px 18px;
    border: 1px solid rgba(25, 35, 45, .10);
    border-radius: 14px;
    background: #f8faf9;
}
body.tv2 .checkout-whatsapp-consent-control{
    display: flex;
    align-items: flex-start;
    gap: 11px;
    cursor: pointer;
    font-weight: 700;
    color: #1d252b;
}
body.tv2 .checkout-whatsapp-consent-control input{
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    flex: 0 0 auto;
    accent-color: #1f9d55;
}
body.tv2 .checkout-whatsapp-consent p{
    margin: 8px 0 0 29px;
    color: #68737c;
    font-size: .86rem;
    line-height: 1.55;
}
body.tv2 .checkout-whatsapp-consent-canje{
    margin-top: 18px;
}
body.tv2 .checkout-2fa-aviso{
    margin: 14px 0 4px;
    padding: 16px 18px;
    border: 1px solid rgba(201, 141, 23, .25);
    border-radius: 14px;
    background: #fdf6e8;
}
body.tv2 .checkout-2fa-aviso p{
    margin: 0 0 10px;
    color: #6b4c10;
    font-size: .86rem;
    line-height: 1.55;
}
body.tv2 .checkout-2fa-aviso-control{
    display: flex;
    align-items: flex-start;
    gap: 11px;
    cursor: pointer;
    font-weight: 700;
    color: #1d252b;
}
body.tv2 .checkout-2fa-aviso-control input{
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    flex: 0 0 auto;
    accent-color: #c98d17;
}
@media (max-width: 560px){body.tv2 .checkout-whatsapp-consent{
        padding: 14px;
    }body.tv2 .checkout-whatsapp-consent p{
        margin-left: 29px;
    }}
body.tv2 .admin-page-kicker{ display:block; margin-bottom:7px; color:#5f6b73; font-size:12px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
body.tv2 .admin-card{ padding:20px; background:var(--glass-2); border:1px solid #e2e7ea; border-radius:12px; box-shadow:0 2px 8px rgba(16,24,40,.025); }
@media (max-width: 640px){body.tv2 .admin-card{ padding:16px; border-radius:10px; }}
body.tv2 .admin-body .admin-page-kicker{
    color: var(--admin-green-dark);
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .14em;
    text-transform: uppercase;
}
body.tv2 .admin-body .admin-card{
    background: var(--admin-surface);
    border: 1px solid var(--admin-border);
    border-radius: 14px;
    box-shadow: 0 2px 9px rgba(16,24,40,.025);
}
body.tv2 .admin-body .admin-card{
    padding: 22px;
}
body.tv2 .admin-body .admin-card > h2{
    color: var(--admin-text);
    font-family: inherit;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: -.025em;
}
body.tv2 .admin-body .boton-confirmar, body.tv2 .admin-body .boton-secundario{
    min-height: 38px;
    border-radius: 9px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 800;
}
body.tv2 .admin-body .boton-confirmar{
    background: var(--admin-green);
    border-color: var(--admin-green);
    box-shadow: 0 3px 10px rgba(22,167,101,.10);
}
body.tv2 .admin-body .boton-confirmar:hover{
    background: var(--admin-green-dark);
    border-color: var(--admin-green-dark);
    box-shadow: 0 6px 16px rgba(22,167,101,.16);
}
body.tv2 .admin-body .boton-secundario{
    background:var(--glass-2);
    border-color: var(--admin-border);
}
body.tv2 .admin-body .boton-secundario:hover{
    background: #f8faf9;
    border-color: #cbd7d0;
}
body.tv2 .admin-body .campo label{
    margin-bottom: 6px;
    color: #344139;
    font-size: 12px;
    font-weight: 800;
}
body.tv2 .admin-body .campo small, body.tv2 .admin-body .admin-ayuda{
    color: var(--admin-text-3);
    font-size: 12px;
}
body.tv2 .admin-body .mensaje-error, body.tv2 .admin-body .mensaje-exito{ margin-bottom: 16px; border-radius: 10px; font-size: 12px; }
@media (max-width: 640px){body.tv2 .admin-body .admin-card{ padding: 16px; border-radius: 12px; }}
body.tv2 .admin-detalle-grid > .admin-card{
    min-width: 0;
}
body.tv2 .admin-cuenta-footer .boton-confirmar{
    min-height: 38px;
    padding: 0 14px;
    font-size: 12px;
}
body.tv2 .comprobante-admin-header .boton-secundario{
    flex: 0 0 auto;
    min-height: 38px;
    font-size: 12px;
}
body.tv2 .comprobante-admin-fallback .boton-secundario{
    margin-top: 8px;
}
@media (max-width: 560px){body.tv2 .admin-cuenta-footer .boton-confirmar{
        width: 100%;
    }body.tv2 .comprobante-admin-header .boton-secundario{
        width: 100%;
    }}
body.tv2 .public-membership-card{max-width:900px;margin:0 auto 20px}
body.tv2 .premium-cuenta small{display:block;font-size:.72rem;letter-spacing:.08em;opacity:.65;margin-bottom:5px}
body.tv2 .admin-password-current .campo-password, body.tv2 .admin-password-new .campo-password{
    width: 100%;
}
body.tv2 .membership-refund-card{
    position: relative;
    overflow: hidden;
}
body.tv2 .membership-refund-header{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 22px;
}
body.tv2 .membership-refund-header h2{
    margin: 4px 0 8px;
}
body.tv2 .membership-refund-header p{
    max-width: 720px;
    margin: 0;
    line-height: 1.6;
    color: var(--color-text-secondary);
}
body.tv2 .membership-refund-badge{
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid rgba(22, 167, 101, .18);
    border-radius: 999px;
    background: rgba(22, 167, 101, .07);
    color: var(--color-primary-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    white-space: nowrap;
}
body.tv2 .membership-refund-summary{
    display: grid;
    grid-template-columns: 1.25fr .85fr 1fr 1fr;
    gap: 12px;
    margin: 0 0 18px;
}
body.tv2 .membership-refund-item{
    min-width: 0;
    padding: 15px;
    border: 1px solid var(--color-border);
    border-radius: 12px;
    background: #fafcfb;
}
body.tv2 .membership-refund-item span{
    display: block;
    margin-bottom: 7px;
    color: var(--color-text-secondary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .09em;
}
body.tv2 .membership-refund-item strong{
    display: block;
    font-size: 14px;
    line-height: 1.35;
}
body.tv2 .membership-refund-item strong small{
    font-size: 11px;
    font-weight: 600;
    color: var(--color-text-secondary);
}
body.tv2 .membership-refund-item:first-child strong{
    white-space: nowrap;
}
body.tv2 .membership-refund-card .campo label{
    margin-bottom: 8px;
}
body.tv2 .membership-refund-total{
    border-color: rgba(22, 167, 101, .25);
    background: rgba(22, 167, 101, .055);
}
body.tv2 .membership-refund-total strong{
    color: var(--color-primary-dark);
    font-size: 18px;
}
body.tv2 .membership-refund-calculation{
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding: 13px 15px;
    margin-bottom: 18px;
    border-radius: 10px;
    background: #f7f9f8;
}
body.tv2 .membership-refund-calculation span{
    font-size: 11px;
    font-weight: 800;
}
body.tv2 .membership-refund-calculation p{
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 11px;
}
body.tv2 .membership-refund-status{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 13px 15px;
    border: 1px solid var(--color-border);
    border-radius: 10px;
    background: #fafcfb;
    font-size: 12px;
}
body.tv2 .membership-refund-status span:first-child{
    color: var(--color-text-secondary);
}
body.tv2 .membership-refund-form{
    margin: 0;
}
body.tv2 .membership-refund-form .campo{
    margin-bottom: 14px;
}
body.tv2 .membership-refund-form textarea{
    min-height: 96px;
    resize: vertical;
}
body.tv2 .membership-refund-submit{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}
body.tv2 .membership-refund-submit p{
    margin: 0;
    color: var(--color-text-secondary);
    font-size: 11px;
    line-height: 1.5;
}
@media (max-width: 900px){body.tv2 .membership-refund-summary{
        grid-template-columns: 1fr 1fr;
    }body.tv2 .membership-refund-item strong{
        overflow-wrap: anywhere;
    }}
@media (max-width: 600px){body.tv2 .membership-refund-header, body.tv2 .membership-refund-submit{
        flex-direction: column;
        align-items: stretch;
    }body.tv2 .membership-refund-header{
        gap: 12px;
        margin-bottom: 18px;
    }body.tv2 .membership-refund-header p{
        line-height: 1.5;
    }body.tv2 .membership-refund-summary{
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }body.tv2 .membership-refund-item{
        padding: 12px;
        border-radius: 11px;
    }body.tv2 .membership-refund-item:first-child{
        grid-column: 1 / -1;
    }body.tv2 .membership-refund-item:first-child strong{
        white-space: normal;
    }body.tv2 .membership-refund-badge{
        align-self: flex-start;
    }body.tv2 .membership-refund-submit button{
        width: 100%;
    }}
body.tv2 .admin-egreso-form .boton-confirmar{ margin-top:16px; }
body.tv2 .admin-finanzas-costo-form .campo{ min-width:260px; flex:1; }
body.tv2 .public-membership-savings{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0;padding:22px 24px;border:1px solid var(--borde-a);border-radius:18px;background:linear-gradient(135deg,#f8fffb,#eefaf4);box-shadow:0 8px 24px rgba(20,80,50,.06)}
body.tv2 .public-membership-savings-main h2{margin:4px 0 6px}
body.tv2 .public-membership-savings-main p{margin:0;color:#65716c;line-height:1.55}
body.tv2 .public-membership-savings-value{text-align:right;min-width:190px}
body.tv2 .public-membership-savings-value strong{display:block;font-size:27px;color:var(--color-premium)}
body.tv2 .public-membership-savings-value span{display:block;margin-top:4px;color:#60706a;font-size:12px}
body.tv2 .producto-card-premium-exclusivo .producto-boton{border-color:var(--color-premium)}
body.tv2 .producto-card-no-disponible .producto-boton{display:none!important}
body.tv2 .checkout-exclusive-banner{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:15px 17px;border:1px solid #cfe8db;border-radius:14px;background:var(--tinte-b)}
body.tv2 .checkout-exclusive-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--color-primary);color:#fff;font-weight:800}
body.tv2 .checkout-exclusive-banner strong{display:block}
body.tv2 .checkout-exclusive-banner p{margin:3px 0 0;color:#65716c;font-size:13px;line-height:1.45}
body.tv2 .checkout-flash-banner{border-color:#ffe1a8;background:#fff8ec}
body.tv2 .checkout-flash-banner-icono{background:#ff9f1c}
body.tv2 .checkout-flash-omitir{margin-top:12px}
@media(max-width:700px){body.tv2 .public-membership-savings{align-items:flex-start;flex-direction:column;padding:18px}body.tv2 .public-membership-savings-value{text-align:left;min-width:0}body.tv2 .public-membership-savings-value strong{font-size:23px}body.tv2 .checkout-exclusive-banner{align-items:flex-start}}
@media (max-width: 900px){body.tv2 .admin-body .admin-menu-toggle .sr-only{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }}
@media (max-width: 768px){body.tv2 .seguimiento-volver, body.tv2 .canjear-volver{
        display: inline-flex;
        align-items: center;
        min-height: 40px;
    }body.tv2 .producto-boton, body.tv2 .campo-password .password-toggle{
        min-height: 40px;
    }}
body.tv2 .puntos-nota-responsabilidad{ margin: 8px 0 0; padding: 10px 12px; border-radius: 10px; background: #fff8ec; color: #7a5a0a; font-size: 12.5px; line-height: 1.5; }
body.tv2 .puntos-historial{ margin-top: 16px; }
body.tv2 .puntos-historial summary{ cursor: pointer; font-weight: 700; color: var(--color-primary); }
body.tv2 .puntos-historial-lista{ list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; max-height: 260px; overflow-y: auto; }
body.tv2 .puntos-historial-lista li{ display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 12px; border-radius: 10px; background: #f7f9f8; font-size: .85rem; }
body.tv2 .puntos-recompensas-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 16px; }
body.tv2 .puntos-recompensa-imagen{ height: 150px; padding: 16px; display: flex; align-items: center; justify-content: center; background: linear-gradient(145deg, #F2FAF6 0%, #E8F6EF 100%); }
body.tv2 .puntos-recompensa-imagen img{ width: 100%; height: 100%; object-fit: contain; }
body.tv2 .puntos-recompensa-info{ padding: 14px 16px 6px; flex: 1; }
body.tv2 .puntos-recompensa-info h3{ margin: 0 0 4px; font-size: 15px; }
body.tv2 .puntos-recompensa-info p{ margin: 0 0 8px; font-size: 12.5px; color: var(--color-text-muted); }
body.tv2 .puntos-recompensa-costo{ display: block; color: var(--color-premium); font-size: 15px; }
body.tv2 .puntos-recompensa-card .producto-boton{ width: 100%; }
body.tv2 .puntos-recompensa-card .producto-boton[disabled]{ cursor: not-allowed; opacity: .65; box-shadow: none; }
@media (max-width: 900px){body.tv2 .puntos-recompensas-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 540px){body.tv2 .puntos-recompensas-grid{ grid-template-columns: 1fr; }}
body.tv2 .pedido-desglose{ margin-top: 12px; padding-top: 10px; border-top: 1px dashed #d8e0dc; display: flex; flex-direction: column; gap: 6px; font-size: 13px; color: #55625b; }
body.tv2 .pedido-desglose > div{ display: flex; justify-content: space-between; gap: 12px; }
body.tv2 .pedido-puntos-nota{ margin: 12px 0 0; padding: 10px 12px; border-radius: 10px; background: #fff8ec; color: #7a5a0a; font-size: 13px; line-height: 1.5; }
body.tv2 .pedido-puntos-nota a{ color: inherit; font-weight: 700; text-decoration: underline; }
body.tv2 .premium-nota{ margin: 12px 0 0; font-size: 13px; color: #5f6b73; }
body.tv2 .public-membership-card a.boton-confirmar{ display: inline-block; margin-top: 12px; text-align: center; text-decoration: none; }
body.tv2 .info-pagina{ padding: 48px 0 80px; }
body.tv2 .info-contenedor{ width: min(calc(100% - 40px), 980px); margin: 0 auto; display: flex; flex-direction: column; gap: 20px; }
body.tv2 .info-card{ background:var(--glass-2); border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: 26px 28px; box-shadow: var(--shadow-xs); }
body.tv2 .info-card h2{ margin: 0 0 10px; font-size: 21px; letter-spacing: -.02em; }
body.tv2 .info-card h3{ margin: 0; }
body.tv2 .info-card p{ margin: 0 0 10px; line-height: 1.6; }
body.tv2 .info-card p:last-child{ margin-bottom: 0; }
body.tv2 .info-card form{ margin: 0; }
body.tv2 .info-card .premium-nota{ margin-top: 14px; }
body.tv2 .info-boton{ display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 26px; border: 0; border-radius: 12px; background: var(--color-primary); color: #fff; font: inherit; font-weight: 700; font-size: 15px; text-decoration: none; cursor: pointer; white-space: nowrap; box-shadow: 0 4px 12px rgba(13, 122, 74, .22); transition: background .15s ease, transform .15s ease; }
body.tv2 .info-boton:hover{ background: #0a6a40; transform: translateY(-1px); }
body.tv2 .info-boton[disabled]{ opacity: .55; cursor: not-allowed; transform: none; }
@media (max-width: 760px){body.tv2 .info-pagina{ padding: 28px 0 56px; }body.tv2 .info-card{ padding: 20px 18px; }}
body.tv2 .info-card form .info-boton{ margin-top: 18px; }
body.tv2 .info-card .checkout-fields-grid{ margin-top: 6px; }
body.tv2 .qr-pasos{ margin: 12px 0 0; padding: 12px 14px 12px 32px; background: var(--color-primary-soft); border-radius: 12px; font-size: 13.5px; line-height: 1.5; text-align: left; color: var(--color-text); }
body.tv2 .qr-pasos li + li{ margin-top: 4px; }
body.tv2 .pedido-qr-aviso{ display: block; margin-top: 6px; max-width: 320px; color: var(--color-text-muted); font-size: 12.5px; line-height: 1.4; text-align: center; }
body.tv2 .hero-info{ position: relative; overflow: hidden; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 34px 40px; border-radius: 24px; color: #fff; background: linear-gradient(125deg, var(--color-primary-dark) 0%, var(--color-primary) 62%, var(--color-primary-light) 130%); box-shadow: 0 18px 40px -18px rgba(11, 15, 13, .55); isolation: isolate; }
body.tv2 .hero-info::before{ content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(circle at 88% 12%, rgba(255, 255, 255, .22), transparent 42%), radial-gradient(circle at 6% 110%, rgba(255, 255, 255, .14), transparent 44%); }
body.tv2 .hero-info::after{ content: ""; position: absolute; right: -60px; bottom: -90px; width: 300px; height: 300px; border-radius: 50%; border: 2px solid rgba(255, 255, 255, .14); z-index: -1; }
body.tv2 .hero-info-texto{ max-width: 560px; }
body.tv2 .hero-info-chip{ display: inline-block; padding: 6px 12px; border-radius: 999px; background: rgba(255, 255, 255, .18); border: 1px solid rgba(255, 255, 255, .32); font-size: 11.5px; font-weight: 800; letter-spacing: .12em; }
body.tv2 .hero-info h1{ margin: 14px 0 10px; font-size: 44px; line-height: 1.04; letter-spacing: -.035em; color: #fff; }
body.tv2 .hero-info p{ margin: 0; font-size: 16.5px; line-height: 1.6; color: rgba(255, 255, 255, .92); }
body.tv2 .hero-info-arte{ flex: none; width: 190px; display: flex; align-items: center; justify-content: center; }
body.tv2 .hero-info-arte .trofeo-ilus{ width: 100%; height: auto; filter: drop-shadow(0 14px 22px rgba(0, 0, 0, .28)); animation: hero-flota 5s ease-in-out infinite; }
body.tv2 .hero-info-icono{ width: 128px; height: 128px; border-radius: 34px; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .16); border: 1px solid rgba(255, 255, 255, .3); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35); }
body.tv2 .hero-info-icono .ico{ width: 64px; height: 64px; stroke-width: 1.5; }
body.tv2 .etiqueta-seccion{ display: inline-flex; align-items: center; gap: 7px; font-size: 11.5px; font-weight: 800; letter-spacing: .12em; color: var(--color-primary); }
body.tv2 .sorteo-panel{ display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 26px 40px; align-items: center; padding: 30px 32px; border-radius: 22px; background:var(--glass-2); border: 1px solid var(--color-border); box-shadow: var(--shadow-sm); }
body.tv2 .sorteo-panel h2{ margin: 10px 0 14px; font-size: 30px; line-height: 1.12; letter-spacing: -.03em; }
body.tv2 .sorteo-datos{ list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
body.tv2 .sorteo-datos li{ display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: var(--tinte-a); border: 1px solid var(--borde-a); font-size: 14px; color: #33413a; }
body.tv2 .sorteo-datos .ico{ color: var(--color-primary); font-size: 17px; }
body.tv2 .sorteo-cuenta{ display: grid; grid-template-columns: repeat(4, 84px); gap: 12px; }
body.tv2 .cd-caja{ display: flex; flex-direction: column; align-items: center; padding: 14px 6px 10px; border-radius: 16px; color: #fff; background: linear-gradient(160deg, var(--color-black) 0%, #1c2a23 100%); box-shadow: 0 10px 22px -10px rgba(11, 15, 13, .6), inset 0 1px 0 rgba(255, 255, 255, .1); }
body.tv2 .cd-caja b{ font-size: 38px; line-height: 1; font-weight: 800; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
body.tv2 .cd-caja small{ margin-top: 8px; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: rgba(255, 255, 255, .62); }
body.tv2 .ruleta{ grid-column: 1 / -1; margin: 0; padding: 20px; border-radius: 18px; background: linear-gradient(160deg, var(--color-black), #1c2a23); color: #ffd54a; text-align: center; display: flex; flex-direction: column; gap: 6px; font-size: 40px; font-weight: 800; letter-spacing: .08em; font-variant-numeric: tabular-nums; }
body.tv2 .ruleta[hidden]{ display: none; }
body.tv2 .ruleta small{ font-size: 12px; letter-spacing: .2em; color: rgba(255, 255, 255, .6); }
body.tv2 .ruleta.ruleta-final{ background: linear-gradient(135deg, #f7b92b, #d98e00); color: #3a2500; }
body.tv2 .ruleta.ruleta-final small{ color: rgba(58, 37, 0, .75); }
body.tv2 .panel-vacio{ display: flex; align-items: center; gap: 18px; padding: 26px 28px; border-radius: 20px; background:var(--glass-2); border: 1px dashed var(--color-border-strong); }
body.tv2 .panel-vacio h2{ margin: 0 0 4px; font-size: 20px; }
body.tv2 .panel-vacio p{ margin: 0; color: var(--color-text-muted); }
body.tv2 .panel-vacio-ico{ flex: none; width: 56px; height: 56px; border-radius: 16px; display: flex; align-items: center; justify-content: center; background: var(--tinte-a); color: var(--color-primary); font-size: 28px; }
body.tv2 .ganador-card{ display: flex; align-items: center; gap: 28px; padding: 26px 32px; border-radius: 22px; color: #fff; background: linear-gradient(135deg, var(--color-black) 0%, #1c2a23 100%); box-shadow: 0 18px 40px -20px rgba(11, 15, 13, .7); position: relative; overflow: hidden; }
body.tv2 .ganador-card::before{ content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 12% 30%, rgba(247, 185, 43, .28), transparent 46%); pointer-events: none; }
body.tv2 .ganador-card-arte{ position: relative; flex: none; width: 120px; }
body.tv2 .ganador-card-arte .trofeo-ilus{ width: 100%; height: auto; }
body.tv2 .ganador-card-texto{ position: relative; min-width: 0; }
body.tv2 .ganador-card .etiqueta-seccion{ color: #ffd54a; }
body.tv2 .ganador-codigo{ margin: 10px 0 8px; font-size: 40px; font-weight: 800; letter-spacing: .06em; font-variant-numeric: tabular-nums; line-height: 1.1; }
body.tv2 .ganador-codigo.ganador-vacio{ font-size: 24px; letter-spacing: 0; color: rgba(255, 255, 255, .85); }
body.tv2 .ganador-premio{ margin: 0 0 12px; display: flex; align-items: center; gap: 8px; font-size: 17px; color: #ffe9a8; }
body.tv2 .ganador-premio .ico{ font-size: 20px; }
body.tv2 .ganador-nota{ margin: 0; display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: rgba(255, 255, 255, .6); }
body.tv2 .reclamo-card{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 28px; padding: 30px 32px; border-radius: 22px; background:var(--glass-2); border: 1px solid var(--color-border); box-shadow: var(--shadow-xs); }
body.tv2 .reclamo-ico{ display: inline-flex; width: 52px; height: 52px; border-radius: 15px; align-items: center; justify-content: center; font-size: 26px; background: var(--tinte-b); color: var(--color-premium); }
body.tv2 .reclamo-intro h2{ margin: 14px 0 8px; font-size: 24px; letter-spacing: -.02em; }
body.tv2 .reclamo-intro p{ margin: 0; line-height: 1.6; color: var(--color-text-muted); }
body.tv2 .reclamo-form{ display: flex; flex-direction: column; gap: 14px; margin: 0; }
body.tv2 .reclamo-form .info-boton{ width: 100%; margin-top: 2px; }
body.tv2 .reclamo-premios{ grid-column: 1 / -1; display: flex; flex-direction: column; gap: 12px; padding-top: 4px; }
body.tv2 .premio-ganado{ display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 14px; padding: 14px 16px; border-radius: 16px; background: linear-gradient(135deg, #fff8e0, #fff); border: 1px solid #f0d78a; }
body.tv2 .premio-ganado-ico{ width: 44px; height: 44px; border-radius: 13px; display: flex; align-items: center; justify-content: center; background: #ffe9a8; color: #8a5600; font-size: 22px; }
body.tv2 .premio-ganado strong{ display: block; }
body.tv2 .premio-ganado small{ color: var(--color-text-muted); }
body.tv2 .premio-ganado code{ padding: 8px 12px; border-radius: 10px; background:var(--glass-2); border: 1px dashed #d4b24a; font-size: 15px; font-weight: 800; letter-spacing: .05em; }
body.tv2 .info-boton-suave{ background: var(--tinte-a); color: var(--color-primary); box-shadow: none; }
body.tv2 .info-boton-suave:hover{ background: var(--borde-a); }
body.tv2 .pasos-seccion h2{ margin: 6px 0 16px; font-size: 24px; letter-spacing: -.02em; }
body.tv2 .pasos-grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
body.tv2 .paso-tarjeta{ position: relative; padding: 24px 20px 22px; border-radius: 20px; background:var(--glass-2); border: 1px solid var(--color-border); box-shadow: var(--shadow-xs); transition: transform .18s ease, box-shadow .18s ease; }
body.tv2 .paso-tarjeta:hover{ transform: translateY(-3px); box-shadow: var(--shadow-sm); }
body.tv2 .paso-num{ position: absolute; top: 16px; right: 18px; font-size: 34px; font-weight: 800; letter-spacing: -.04em; color: var(--borde-a); }
body.tv2 .paso-ico{ display: inline-flex; width: 50px; height: 50px; border-radius: 15px; align-items: center; justify-content: center; font-size: 25px; background: var(--tinte-a); color: var(--color-primary); }
body.tv2 .paso-tarjeta h3{ margin: 16px 0 6px; font-size: 16.5px; letter-spacing: -.01em; }
body.tv2 .paso-tarjeta p{ margin: 0; font-size: 14px; line-height: 1.55; color: var(--color-text-muted); }
body.tv2 .ganador-banda-trofeo .trofeo-ilus{ width: 100%; height: 100%; }
body.tv2 .flash-pagina{ display: grid; grid-template-columns: minmax(0, 320px) minmax(0, 1fr); gap: 28px; align-items: center; padding: 28px 32px; border-radius: 22px; background:var(--glass-2); border: 1px solid #f0d78a; box-shadow: var(--shadow-sm); }
body.tv2 .flash-pagina-imagen{ display: flex; align-items: center; justify-content: center; min-height: 220px; border-radius: 18px; background: linear-gradient(145deg, #fff3cf, #ffe2a0); }
body.tv2 .flash-pagina-imagen img{ max-width: 78%; max-height: 220px; height: auto; }
body.tv2 .flash-pagina h2{ margin: 6px 0 8px; font-size: 28px; letter-spacing: -.02em; }
body.tv2 .flash-pagina-precio{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 12px; margin: 10px 0 14px; }
body.tv2 .flash-pagina-precio b{ font-size: 40px; letter-spacing: -.03em; color: #b45f00; }
body.tv2 .flash-pagina-precio s{ color: var(--color-text-muted); }
body.tv2 .flash-pagina-ahorro{ display: inline-flex; padding: 4px 12px; border-radius: 999px; background: #e7f8ee; color: #0d6b3a; font-size: 13px; font-weight: 800; }
body.tv2 .flash-pagina-reloj{ display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border-radius: 999px; background: #3b1d00; color: #ffcf4d; font-weight: 700; margin-bottom: 16px; }
body.tv2 .flash-pagina-reloj b{ font-size: 20px; font-variant-numeric: tabular-nums; color: #fff; }
@media (max-width: 900px){body.tv2 .hero-info{ padding: 28px 26px; }body.tv2 .hero-info h1{ font-size: 36px; }body.tv2 .hero-info-arte{ width: 130px; }body.tv2 .hero-info-icono{ width: 96px; height: 96px; border-radius: 26px; }body.tv2 .hero-info-icono .ico{ width: 48px; height: 48px; }body.tv2 .sorteo-panel{ grid-template-columns: 1fr; }body.tv2 .sorteo-cuenta{ grid-template-columns: repeat(4, 1fr); }body.tv2 .pasos-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }body.tv2 .reclamo-card{ grid-template-columns: 1fr; }body.tv2 .flash-pagina{ grid-template-columns: 1fr; }}
@media (max-width: 640px){body.tv2 .hero-info{ flex-direction: column-reverse; align-items: flex-start; padding: 24px 22px; border-radius: 20px; }body.tv2 .hero-info-arte{ width: 96px; }body.tv2 .hero-info h1{ font-size: 32px; }body.tv2 .sorteo-panel, body.tv2 .reclamo-card, body.tv2 .flash-pagina{ padding: 22px 20px; }body.tv2 .sorteo-panel h2{ font-size: 24px; }body.tv2 .cd-caja b{ font-size: 30px; }body.tv2 .ganador-card{ flex-direction: column; text-align: center; padding: 24px 20px; }body.tv2 .ganador-card-arte{ width: 96px; }body.tv2 .ganador-codigo{ font-size: 30px; }body.tv2 .ganador-premio, body.tv2 .ganador-nota{ justify-content: center; }body.tv2 .pasos-grid{ grid-template-columns: 1fr; }body.tv2 .premio-ganado{ grid-template-columns: auto 1fr; }body.tv2 .premio-ganado code, body.tv2 .premio-ganado .info-boton{ grid-column: 1 / -1; }body.tv2 .ruleta{ font-size: 28px; }}
@media (prefers-reduced-motion: reduce){body.tv2 .hero-info-arte .trofeo-ilus{ animation: none; }}
body.tv2 .pasos-grid.pasos-3{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.tv2 .pasos-seccion .premium-nota{ margin-top: 14px; }
@media (max-width: 900px){body.tv2 .pasos-grid.pasos-3{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 640px){body.tv2 .pasos-grid.pasos-3{ grid-template-columns: 1fr; }body.tv2 .miembro-banda .info-boton{ width: 100%; justify-content: center; }}
body.tv2 .membresia-sesion{ display: flex; align-items: center; gap: 14px; margin: 0 0 16px; padding: 12px 16px; border-radius: 16px; background: var(--tinte-b); border: 1.5px solid var(--borde-b); }
body.tv2 .membresia-sesion-ico{ flex: none; width: 40px; height: 40px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 21px; background: var(--color-premium); color: #fff; }
body.tv2 .membresia-sesion-texto{ flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
body.tv2 .membresia-sesion-texto small{ font-size: 12px; color: var(--color-text-muted); }
body.tv2 .membresia-sesion-texto strong{ font-size: 15px; letter-spacing: .02em; }
body.tv2 .membresia-sesion-texto strong span{ font-weight: 500; letter-spacing: 0; color: var(--color-text-muted); }
body.tv2 .membresia-sesion-acciones{ flex: none; display: flex; gap: 8px; flex-wrap: wrap; }
body.tv2 .membresia-sesion-acciones form{ margin: 0; }
body.tv2 .membresia-sesion-btn{ min-height: 38px; padding: 0 16px; border-radius: 999px; border: 1.5px solid var(--color-premium); background:var(--glass-2); color: var(--color-premium); font: inherit; font-size: 13.5px; font-weight: 700; cursor: pointer; transition: background .15s ease, color .15s ease; }
body.tv2 .membresia-sesion-btn:hover{ background: var(--color-premium); color: #fff; }
body.tv2 .membresia-sesion-btn-salir{ border-color: var(--color-border-strong); color: #55625b; }
body.tv2 .membresia-sesion-btn-salir:hover{ background: #55625b; border-color: #55625b; color: #fff; }
body.tv2 .membresia-sesion-acciones-card{ margin-top: 16px; }
body.tv2 .consulta-card{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 32px; padding: 32px; border-radius: 22px; background:var(--glass-2); border: 1px solid var(--color-border); box-shadow: var(--shadow-sm); }
body.tv2 .consulta-ico{ display: inline-flex; width: 54px; height: 54px; border-radius: 16px; align-items: center; justify-content: center; font-size: 27px; background: var(--tinte-a); color: var(--color-primary); }
body.tv2 .consulta-intro h2{ margin: 16px 0 8px; font-size: 26px; letter-spacing: -.025em; }
body.tv2 .consulta-intro p{ margin: 0; color: var(--color-text-muted); line-height: 1.6; }
body.tv2 .consulta-lista{ list-style: none; margin: 22px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
body.tv2 .consulta-lista li{ display: flex; align-items: center; gap: 12px; font-size: 14.5px; color: #33413a; }
body.tv2 .consulta-lista .ico{ width: 34px; height: 34px; padding: 8px; border-radius: 10px; background: var(--tinte-a); color: var(--color-primary); }
body.tv2 .consulta-form{ display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 24px; border-radius: 18px; background: var(--tinte-c, #f6faf8); border: 1px solid var(--borde-a); }
body.tv2 .consulta-form .info-boton{ width: 100%; margin-top: 2px; }
body.tv2 .consulta-nota{ margin: 2px 0 0; display: flex; gap: 8px; align-items: flex-start; font-size: 12.5px; line-height: 1.5; color: var(--color-text-muted); }
body.tv2 .consulta-nota .ico{ margin-top: 2px; }
body.tv2 .consulta-nota a{ color: var(--color-primary); font-weight: 700; }
body.tv2 .membresia-estado{ position: relative; overflow: hidden; padding: 28px 32px; border-radius: 22px; color: #fff; background: linear-gradient(135deg, var(--color-black) 0%, #1c2a23 100%); box-shadow: 0 18px 40px -20px rgba(11, 15, 13, .7); }
body.tv2 .membresia-estado::before{ content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 92% 8%, rgba(247, 185, 43, .3), transparent 42%); pointer-events: none; }
body.tv2 .membresia-estado > *{ position: relative; }
body.tv2 .membresia-estado-cab{ display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
body.tv2 .membresia-estado-ico{ flex: none; width: 58px; height: 58px; border-radius: 17px; display: flex; align-items: center; justify-content: center; font-size: 30px; background: linear-gradient(145deg, #ffe68a, #f7b92b); color: #5b3a00; }
body.tv2 .membresia-estado-cab small, body.tv2 .membresia-estado-datos small{ display: block; font-size: 11px; font-weight: 800; letter-spacing: .12em; color: rgba(255, 255, 255, .6); }
body.tv2 .membresia-estado-codigo{ display: block; font-size: 28px; letter-spacing: .05em; font-variant-numeric: tabular-nums; }
body.tv2 .estado-pill{ margin-left: auto; display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; border-radius: 999px; font-size: 14px; font-weight: 800; }
body.tv2 .estado-pill i{ width: 9px; height: 9px; border-radius: 50%; background: currentColor; }
body.tv2 .membresia-estado-datos{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 24px 0 20px; padding: 18px 0; border-top: 1px solid rgba(255, 255, 255, .12); border-bottom: 1px solid rgba(255, 255, 255, .12); }
body.tv2 .membresia-estado-datos strong{ display: block; margin-top: 4px; font-size: 18px; }
body.tv2 .membresia-dias-texto{ font-size: 15px; color: rgba(255, 255, 255, .88); }
body.tv2 .membresia-dias-texto strong{ font-size: 20px; color: #ffd54a; }
body.tv2 .membresia-barra{ margin-top: 10px; height: 8px; border-radius: 999px; background: rgba(255, 255, 255, .14); overflow: hidden; }
body.tv2 .membresia-barra span{ display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, #f7b92b, #ffe68a); }
body.tv2 .membresia-otra{ display: inline-block; margin-top: 18px; font-size: 13.5px; font-weight: 700; color: #ffd54a; text-decoration: underline; text-underline-offset: 3px; }
body.tv2 .ahorro-tarjeta{ display: flex; align-items: center; gap: 18px; padding: 24px 28px; border-radius: 20px; background: linear-gradient(135deg, #e9fbf1, #fff); border: 1px solid var(--borde-b); box-shadow: var(--shadow-xs); }
body.tv2 .ahorro-ico{ flex: none; width: 54px; height: 54px; border-radius: 16px; display: flex; align-items: center; justify-content: center; font-size: 27px; background: var(--color-primary); color: #fff; }
body.tv2 .ahorro-tarjeta h2{ margin: 6px 0 4px; font-size: 21px; letter-spacing: -.02em; }
body.tv2 .ahorro-tarjeta p{ margin: 0; font-size: 14px; line-height: 1.55; color: var(--color-text-muted); }
body.tv2 .ahorro-tarjeta .public-membership-savings-main{ flex: 1; min-width: 0; }
body.tv2 .ahorro-tarjeta .public-membership-savings-value{ flex: none; text-align: right; }
body.tv2 .ahorro-tarjeta .public-membership-savings-value strong{ display: block; font-size: 34px; letter-spacing: -.03em; color: var(--color-primary); }
body.tv2 .ahorro-tarjeta .public-membership-savings-value span{ font-size: 13px; color: var(--color-text-muted); }
body.tv2 .flash-gestion{ display: flex; align-items: center; gap: 18px; padding: 24px 28px; border-radius: 20px; background: linear-gradient(135deg, #fff6dc, #fff); border: 1px solid #f0d78a; box-shadow: var(--shadow-xs); }
body.tv2 .flash-gestion-ico{ flex: none; width: 54px; height: 54px; border-radius: 16px; display: flex; align-items: center; justify-content: center; font-size: 27px; background: #3b1d00; color: #ffcf4d; }
body.tv2 .flash-gestion-texto{ flex: 1; min-width: 0; }
body.tv2 .flash-gestion-texto h2{ margin: 6px 0 6px; font-size: 21px; letter-spacing: -.02em; }
body.tv2 .flash-gestion-texto p{ margin: 0 0 6px; font-size: 14px; line-height: 1.55; color: #4a5750; }
body.tv2 .flash-gestion-form{ flex: none; display: flex; flex-direction: column; align-items: stretch; gap: 10px; min-width: 210px; margin: 0; }
body.tv2 .flash-estado{ margin: 0; text-align: center; padding: 6px 12px; border-radius: 999px; background: #eee; font-size: 13px; }
body.tv2 .flash-estado-on{ background: #e1f7e9; color: #0d6b3a; }
body.tv2 .renovar-card{ display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; padding: 24px 28px; border-radius: 20px; background:var(--glass-2); border: 1px solid var(--color-border); box-shadow: var(--shadow-xs); }
body.tv2 .renovar-texto{ display: flex; align-items: center; gap: 16px; flex: 1; min-width: 260px; }
body.tv2 .renovar-ico{ flex: none; width: 50px; height: 50px; border-radius: 15px; display: flex; align-items: center; justify-content: center; font-size: 25px; background: var(--tinte-a); color: var(--color-primary); }
body.tv2 .renovar-texto h2{ margin: 0 0 4px; font-size: 21px; letter-spacing: -.02em; }
body.tv2 .renovar-texto p{ margin: 0; font-size: 14px; color: var(--color-text-muted); line-height: 1.5; }
body.tv2 .renovar-acciones{ display: flex; gap: 10px; flex-wrap: wrap; }
body.tv2 .renovar-acciones form{ margin: 0; }
@media (max-width: 900px){body.tv2 .consulta-card{ grid-template-columns: 1fr; padding: 24px 20px; }body.tv2 .membresia-estado-datos{ grid-template-columns: 1fr 1fr; }body.tv2 .ahorro-tarjeta, body.tv2 .flash-gestion{ flex-wrap: wrap; }body.tv2 .flash-gestion-form{ width: 100%; }}
@media (max-width: 640px){body.tv2 .membresia-sesion{ flex-wrap: wrap; }body.tv2 .membresia-sesion-acciones{ width: 100%; }body.tv2 .membresia-sesion-btn{ flex: 1; }body.tv2 .membresia-estado{ padding: 22px 20px; }body.tv2 .estado-pill{ margin-left: 0; }body.tv2 .membresia-estado-datos{ grid-template-columns: 1fr; }body.tv2 .ahorro-tarjeta .public-membership-savings-value{ text-align: left; }body.tv2 .renovar-acciones, body.tv2 .renovar-acciones form, body.tv2 .renovar-acciones button{ width: 100%; }}
body.tv2 .checkout-moneda{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:0 0 14px;padding:12px 14px;border:1px solid var(--color-border);border-radius:12px;font-size:14px}
body.tv2 .catalogo-kicker{ color: #8a1450; }
@media (max-width: 760px){body.tv2 .catalogo-bloque{ padding-top: 28px; }body.tv2 .catalogo-bloque-header h2{ font-size: 21px; }}
@media (max-width: 760px){body.tv2 .botones-carrito .boton-principal{ width: 100%; }}
@media (max-width: 760px){body.tv2 .pasos-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }body.tv2 .paso-tarjeta{ padding: 12px !important; }body.tv2 .paso-tarjeta .paso-ico{ width: 34px !important; height: 34px !important; }body.tv2 .paso-tarjeta h3{ font-size: 13px !important; line-height: 1.25; }body.tv2 .paso-tarjeta p{ font-size: 12px !important; line-height: 1.4; }body.tv2 .paso-num{ font-size: 20px !important; }}
@media (max-width: 760px){body.tv2 .puntos-recompensa-card .puntos-recompensa-imagen{ height: 120px !important; aspect-ratio: auto !important; }}
body.tv2 .checkout-moneda{ display: block; margin: 0 0 16px; padding: 0; border: 0; }
body.tv2 .checkout-moneda-titulo{ margin: 0 0 10px; font-size: 14px; font-weight: 700; color: var(--color-text); }
body.tv2 .checkout-moneda-opciones{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
body.tv2 .checkout-moneda-opcion{ position: relative; display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 1.5px solid var(--color-border); border-radius: 12px; background:var(--glass-2); cursor: pointer; }
body.tv2 .checkout-moneda-opcion input{ position: absolute; opacity: 0; pointer-events: none; }
body.tv2 .checkout-moneda-opcion:has(input:checked){ border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(200,70,20,.12); }
body.tv2 .checkout-moneda-opcion:has(input:focus-visible){ outline: 2px solid var(--color-primary); outline-offset: 2px; }
body.tv2 .moneda-bandera{ flex: 0 0 26px; }
body.tv2 .moneda-bandera svg{ width: 26px; height: 18px; border-radius: 2px; display: block; box-shadow: 0 0 0 1px rgba(16,24,40,.12); }
body.tv2 .checkout-moneda-texto{ display: grid; gap: 3px; font-size: 14px; }
body.tv2 .checkout-moneda-texto small{ color: var(--color-text-secondary); font-size: 12px; line-height: 1.4; }
@media (max-width: 520px){body.tv2 .checkout-moneda-opciones{ grid-template-columns: 1fr; }}
body.tv2 .carrito-acciones-secundarias .boton-secundario{ text-align: center; }
body.tv2 .pedido-historial-plegado{ margin: 12px 0; background:var(--glass-2); border: 1px solid var(--color-border); border-radius: 14px; padding: 0 16px; }
body.tv2 .pedido-historial-plegado > summary{ display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 15px 0; cursor: pointer; list-style: none; font-weight: 700; font-size: 14px; color: var(--color-text); }
body.tv2 .pedido-historial-plegado > summary::-webkit-details-marker{ display: none; }
body.tv2 .pedido-historial-plegado > summary::after{ content: "+"; color: var(--color-primary); font-size: 18px; line-height: 1; }
body.tv2 .pedido-historial-plegado[open] > summary::after{ content: "−"; }
body.tv2 .pedido-historial-plegado .pedido-historial{ padding: 0 0 16px; }
body.tv2 .cupon-plegado{ margin: 0 0 12px; }
body.tv2 .cupon-plegado > summary{ cursor: pointer; padding: 10px 0; font-size: 14px; font-weight: 700; color: var(--color-primary-dark); list-style: none; }
body.tv2 .cupon-plegado > summary::-webkit-details-marker{ display: none; }
body.tv2 .cupon-plegado > summary::before{ content: "+ "; }
body.tv2 .cupon-plegado[open] > summary::before{ content: "− "; }
@media (max-width: 640px){body.tv2 .hero-info{ padding: 18px 18px; gap: 14px; border-radius: 16px; }body.tv2 .hero-info-arte{ width: 60px; }body.tv2 .hero-info-icono{ width: 56px; height: 56px; border-radius: 16px; }body.tv2 .hero-info-icono .ui-icon, body.tv2 .hero-info-icono svg{ width: 26px; height: 26px; }body.tv2 .hero-info-chip{ font-size: 10px; padding: 4px 9px; }body.tv2 .hero-info h1{ font-size: 24px; line-height: 1.1; }body.tv2 .hero-info p{ font-size: 14px; line-height: 1.5; margin-top: 8px; }}
body.tv2 .checkout-consejos-seguridad{ margin: 2px 0 16px; padding: 0 14px; background: #f7f9fb; border: 1px solid var(--color-border); border-radius: 12px; }
body.tv2 .checkout-consejos-seguridad > summary{ display: flex; align-items: center; gap: 8px; padding: 12px 0; cursor: pointer; list-style: none; font-size: 13px; font-weight: 700; color: var(--color-text); }
body.tv2 .checkout-consejos-seguridad > summary::-webkit-details-marker{ display: none; }
body.tv2 .checkout-consejos-seguridad .ui-icon{ color: var(--color-primary); flex: none; }
body.tv2 .checkout-consejos-seguridad ul{ margin: 0; padding: 0 0 14px 18px; color: var(--color-text-secondary); font-size: 12.5px; line-height: 1.6; }
body.tv2 .checkout-consejos-seguridad li{ margin-bottom: 4px; }
body.tv2 .puntos-resumen-gasto{ display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 10px; margin: 14px 0; }
body.tv2 .puntos-resumen-gasto > div{ padding: 12px 14px; border: 1px solid var(--color-border); border-radius: 12px; background: #f7f9fb; }
body.tv2 .puntos-resumen-gasto span{ display: block; font-size: 11.5px; font-weight: 700; color: var(--color-text-secondary); text-transform: uppercase; letter-spacing: .03em; }
body.tv2 .puntos-resumen-gasto strong{ display: block; font-size: 19px; margin-top: 2px; color: var(--color-text); }
body.tv2 .puntos-resumen-gasto small{ color: var(--color-text-secondary); font-size: 11.5px; }
body.tv2 .reclamo-estado-cabecera{ display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; flex-wrap: wrap; }
body.tv2 .reclamo-estado-numero{ margin: 2px 0 0; color: var(--color-text-secondary); font-size: 12.5px; }
body.tv2 .reclamo-estado-pill{ flex: none; padding: 6px 12px; border-radius: 999px; font-size: 12px; font-weight: 700; background: #f1f3f2; color: var(--color-text-secondary); white-space: nowrap; }
body.tv2 .reclamo-estado-pill.reclamo-estado-abierto{ background: #fff7df; color: #936d00; }
body.tv2 .reclamo-estado-pill.reclamo-estado-en-revisión{ background: #eef5ff; color: #2862a3; }
body.tv2 .reclamo-estado-pill.reclamo-estado-resuelto{ background: #eaf8f0; color: #176c35; }
body.tv2 .reclamo-estado-pill.reclamo-estado-cerrado{ background: #f1f3f2; color: #555; }
body.tv2 .reclamo-estado-dato{ margin: 4px 0; font-size: 13px; color: var(--color-text-secondary); }
body.tv2 .reclamo-estado-respuesta{ margin-top: 16px; padding: 14px 16px; background: #eaf8f0; border: 1px solid #cdeedd; border-radius: 12px; }
body.tv2 .reclamo-estado-respuesta strong{ display: block; margin-bottom: 4px; font-size: 13px; color: #176c35; }
body.tv2 .reclamo-estado-respuesta p{ margin: 0; font-size: 13.5px; }
body.tv2 .reclamo-estado-ayuda{ margin-top: 14px; color: var(--color-text-secondary); font-size: 12.5px; }
body.tv2 .reclamo-estado-copiar{ display: inline-block; margin-top: 16px; cursor: pointer; }
body.tv2 .puntos-optimizador{ margin: 12px 0; padding: 12px 14px; background: #f3edff; border: 1px solid #ded0ff; border-radius: 12px; font-size: 13px; }
body.tv2 .puntos-optimizador strong{ display: block; margin-bottom: 6px; }
body.tv2 .puntos-optimizador ul{ margin: 0 0 6px; padding-left: 18px; }
body.tv2 .puntos-optimizador p{ margin: 0; color: var(--color-text-secondary); }
body.tv2 .embajador-link-caja{ display: flex; gap: 8px; margin: 10px 0; }
body.tv2 .embajador-link-caja input{ flex: 1; min-width: 0; padding: 10px 12px; border: 1px solid var(--color-border); border-radius: 10px; font: inherit; font-size: 13px; background: #f7f9fb; }
body.tv2 .embajador-compartir{ display: inline-block; }
body.tv2 .admin-body .admin-page-kicker{
    color: var(--admin-app-accent);
    font-size: 12px;
    letter-spacing: .16em;
    font-weight: 880;
}
body.tv2 .admin-body .admin-card{
    border: 1px solid var(--admin-app-border);
    border-radius: 8px;
    background: var(--admin-app-panel);
    box-shadow: var(--admin-app-shadow-soft);
}
body.tv2 .admin-body .admin-card{
    padding: 20px;
}
body.tv2 .admin-body .admin-card > h2{
    color: var(--admin-app-ink);
    font-size: 17px;
    font-weight: 820;
    letter-spacing: 0;
}
body.tv2 .admin-body .boton-confirmar, body.tv2 .admin-body .boton-secundario{
    min-height: 38px;
    border-radius: 8px;
    font-weight: 820;
    letter-spacing: 0;
}
body.tv2 .admin-body .boton-confirmar{
    color: #fff;
    background: var(--admin-app-accent);
    border-color: var(--admin-app-accent);
    box-shadow: 0 8px 18px rgba(13,125,79,.18);
}
body.tv2 .admin-body .boton-confirmar:hover{
    background: #09683f;
    border-color: #09683f;
}
body.tv2 .admin-body .boton-secundario{
    color: var(--admin-app-accent);
    background:var(--glass-2);
    border-color: var(--admin-app-border);
}
body.tv2 .admin-body .boton-secundario:hover{
    background: var(--admin-app-accent-soft);
    border-color: #b8dcc9;
}
@media (max-width: 900px){body.tv2 .admin-body .admin-menu-toggle > span:not(.sr-only){
        background: var(--admin-app-ink);
    }}
@media (max-width: 640px){body.tv2 .admin-body .admin-card{
        padding: 13px;
    }}
body.tv2 .admin-body .admin-card{
    background:var(--glass-2);
    border: 1px solid var(--admin-final-line);
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(17,24,22,.045);
}
body.tv2 .admin-body .admin-card{ padding: 18px; }
body.tv2 .admin-body .admin-page-kicker{
    color: var(--admin-final-green);
    font-size: 12px;
    font-weight: 880;
    letter-spacing: .14em;
    text-transform: uppercase;
}
@media (max-width: 900px){body.tv2 .admin-body .admin-menu-toggle > span:not(.sr-only){ background: var(--admin-final-text); }}
@media (max-width: 640px){body.tv2 .admin-body .admin-card{ padding: 13px; }}
body.tv2 .admin-body .admin-menu-toggle > span:not(.sr-only){
    display: block;
    width: 17px;
    height: 2px;
    background: var(--admin-text);
    border-radius: 999px;
}
body.tv2 .admin-body .admin-ayuda{
    color: var(--admin-muted);
}
body.tv2 .admin-body .admin-page-kicker{
    color: var(--admin-brand-color);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}
body.tv2 .admin-body .admin-card{
    background: var(--admin-surface);
    border: 1px solid var(--admin-line);
    border-radius: 8px;
    box-shadow: 0 5px 18px rgba(17,24,22,.045);
}
body.tv2 .admin-body .admin-card{
    padding: 18px;
}
body.tv2 .admin-body .campo{
    display: grid;
    gap: 7px;
    min-width: 0;
}
body.tv2 .admin-body .boton-secundario, body.tv2 .admin-body .boton-confirmar{
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    max-width: 100%;
    padding: 9px 13px;
    border-radius: 8px;
    border: 1px solid transparent;
    text-decoration: none;
    font-weight: 850;
    line-height: 1.15;
    white-space: normal;
    cursor: pointer;
}
body.tv2 .admin-body .boton-confirmar{
    color: #fff;
    background: var(--admin-brand-color);
    border-color: var(--admin-brand-color);
}
body.tv2 .admin-body .boton-confirmar:hover{
    background: var(--admin-brand-dark);
    border-color: var(--admin-brand-dark);
}
body.tv2 .admin-body .boton-secundario{
    color: var(--admin-brand-dark);
    background:var(--glass-2);
    border-color: #cfe6d8;
}
body.tv2 .admin-body .mensaje-error, body.tv2 .admin-body .mensaje-exito{
    padding: 12px 14px;
    border-radius: 8px;
    font-weight: 800;
}
body.tv2 .admin-body .mensaje-error{
    color: #912018;
    background: #fff1f0;
    border: 1px solid #ffd0cc;
}
body.tv2 .admin-body .mensaje-exito{
    color: #05603a;
    background: #ecfdf3;
    border: 1px solid #b7ebc6;
}
@media (max-width: 640px){body.tv2 .admin-body .admin-card{
        padding: 13px;
    }}
body.tv2 .evento-banner{ position: relative; width: 100%; aspect-ratio: 5 / 2; overflow: hidden; background: #eef5f1; }
body.tv2 .evento-banner-img{ display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; user-select: none; }
body.tv2 .evento-hero-contenido{ width: 100%; padding: 26px clamp(20px, 4vw, 44px) 28px; display: flex; align-items: center; justify-content: space-between; gap: 24px 40px; background: linear-gradient(135deg, rgba(8,14,12,.78), rgba(8,14,12,.35)); border-top: 3px solid var(--evento-acento, #16a765); }
body.tv2 .evento-hero-texto{ display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; flex: 1 1 auto; }
body.tv2 .evento-hero-kicker{ display: inline-block; padding: 5px 12px; border-radius: 999px; background: var(--evento-acento, #16a765); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
body.tv2 .evento-hero-desc{ margin: 0; max-width: 62ch; font-size: clamp(14px, 1.6vw, 17px); line-height: 1.55; color: rgba(255,255,255,.92); }
body.tv2 .evento-hero-chips{ display: flex; flex-wrap: wrap; gap: 8px; }
body.tv2 .evento-chip{ display: inline-flex; align-items: center; min-height: 30px; padding: 0 12px; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: rgba(255,255,255,.14); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); font-size: 12px; font-weight: 700; color: #fff; }
body.tv2 .evento-cuenta-regresiva{ margin: 0; flex: 0 0 auto; display: flex; flex-direction: column; align-items: stretch; gap: 10px; padding: 14px 16px 12px; border-radius: 16px; background: rgba(8,14,12,.5); border: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
body.tv2 .evento-cuenta-titulo{ font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.92); text-align: center; }
body.tv2 .evento-cuenta-regresiva-numeros{ display: flex; gap: 8px; }
body.tv2 .evento-cuenta-regresiva-numeros div{ text-align: center; min-width: 66px; padding: 8px 6px 7px; border-radius: 12px; background: rgba(255,255,255,.1); }
body.tv2 .evento-cuenta-regresiva-numeros strong{ display: block; font-size: 28px; line-height: 1.1; color: #fff; font-variant-numeric: tabular-nums; }
body.tv2 .evento-cuenta-regresiva-numeros small{ display: block; margin-top: 2px; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: rgba(255,255,255,.72); }
body.tv2 .evento-aviso{ width: min(calc(100% - 40px), var(--container-width)); margin: 14px auto 0; padding: 12px 16px; border: 1px solid var(--color-border); border-radius: 12px; background: var(--color-background-soft, #f7f8f7); font-size: 13px; line-height: 1.5; color: var(--color-text-secondary); }
body.tv2 .evento-aviso-premium{ background: #f3efff; border-color: #d9ceff; color: #4a32b3; }
body.tv2 .evento-nav{ position: sticky; top: 68px; z-index: 30; display: flex; gap: 8px; overflow-x: auto; margin: 18px 0 6px; padding: 10px 2px; background: var(--color-background, #f5f7f6); scrollbar-width: none; }
body.tv2 .evento-nav::-webkit-scrollbar{ display: none; }
body.tv2 .evento-nav a{ flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 36px; padding: 0 16px; border: 1px solid var(--color-border); border-radius: 999px; background:var(--glass-2); font-size: 13px; font-weight: 700; color: var(--color-text); transition: background .15s, border-color .15s, color .15s; }
body.tv2 .evento-nav a:hover{ border-color: var(--color-primary); color: var(--color-primary); }
body.tv2 .evento-nav a:focus-visible{ outline: 2px solid var(--color-primary); outline-offset: 2px; }
body.tv2 #productos .catalogo-bloque{ scroll-margin-top: 130px; }
@media (max-width: 640px){body.tv2 .evento-hero-contenido{ flex-direction: column; align-items: stretch; padding: 14px 14px 14px; gap: 10px; border-top-width: 2px; }body.tv2 .evento-hero-texto{ gap: 8px; flex: 0 0 auto; }body.tv2 .evento-hero-kicker{ padding: 3px 10px; font-size: 11px; }body.tv2 .evento-hero-desc{ font-size: 13px; line-height: 1.45; }body.tv2 .evento-hero-chips{ gap: 6px; }body.tv2 .evento-chip{ min-height: 26px; padding: 0 10px; font-size: 12px; }body.tv2 .evento-cuenta-regresiva{ flex-direction: row; align-items: center; justify-content: space-between; gap: 6px; padding: 6px 8px; border-radius: 10px; }body.tv2 .evento-cuenta-titulo{ font-size: 11px; letter-spacing: .06em; text-align: left; white-space: nowrap; }body.tv2 .evento-cuenta-regresiva-numeros{ gap: 4px; }body.tv2 .evento-cuenta-regresiva-numeros div{ display: flex; align-items: baseline; gap: 3px; min-width: 0; padding: 4px 7px; border-radius: 8px; }body.tv2 .evento-cuenta-regresiva-numeros strong{ font-size: 16px; line-height: 1; }body.tv2 .evento-cuenta-regresiva-numeros small{ margin: 0; font-size: 11px; letter-spacing: 0; text-transform: none; }body.tv2 .evento-nav{ top: 60px; }}
@media (prefers-reduced-motion: reduce){body.tv2 .evento-nav a{ transition: none; }}
body.tv2 .catalogo-bloque-destacada{ position: relative; padding: 26px clamp(16px, 3vw, 32px) 30px; border: 2px solid var(--evento-acento, var(--color-primary)); border-radius: 22px; background: linear-gradient(135deg, #fff 0%, #fff 55%, #eef8f3 100%); background: linear-gradient(135deg, #fff 0%, #fff 55%, color-mix(in srgb, var(--evento-acento, #16a765) 14%, #fff) 100%); box-shadow: 0 18px 40px -24px rgba(16, 24, 40, .45); }
body.tv2 .catalogo-bloque-destacada .catalogo-bloque-header h2{ font-size: clamp(26px, 3.4vw, 36px); letter-spacing: -.01em; }
body.tv2 .catalogo-bloque-destacada .producto-card{ border-color: var(--color-border); box-shadow: 0 10px 24px -16px rgba(16, 24, 40, .35); }
body.tv2 .evento-destacada-pill{ display: inline-block; margin-bottom: 8px; padding: 5px 12px; border-radius: 999px; background: var(--evento-acento, #16a765); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .1em; }
@media (max-width: 640px){body.tv2 .catalogo-bloque-destacada{ border-radius: 16px; padding: 20px 14px 22px; }}
body.tv2 .reserva-hero-imagen .producto-placeholder{ color: rgba(255,255,255,.7); }
body.tv2 .checkout-card-reserva{ border-color: #f2d58a; background: #fffaf0; }
body.tv2 .evento-aviso-preview{ background: #fff8e6; border-color: #f2d58a; color: #7a5200; }
body.tv2 .producto-card-premium-exclusivo .producto-boton, body.tv2 .producto-card-reserva .producto-boton{ width: 100%; min-height: 44px; }
@media (max-width: 760px){body.tv2 .productos-grid-productos .producto-card-estandar{ display: flex; flex-direction: column; }body.tv2 .productos-grid-productos .producto-card-estandar .producto-card-contenido{ flex: 1 1 auto; display: flex; flex-direction: column; }}
@media (max-width: 900px){body.tv2 .evento-aviso{ width: min(calc(100% - 28px), var(--container-width)); }}
@media (max-width: 520px){body.tv2 .evento-aviso{ width: calc(100% - 20px); }}
body.tv2 .evento-hero .evento-cuenta-regresiva .evento-cuenta-titulo{ color: rgba(255,255,255,.92); }
body.tv2 .catalogo-bloque-destacada.resalte-dorado{ border-color: #d9a21b; background: linear-gradient(135deg, #fff 0%, #fff 50%, #fff6dc 100%); box-shadow: 0 18px 40px -24px rgba(180, 120, 0, .5); }
body.tv2 .catalogo-bloque-destacada.resalte-dorado .evento-destacada-pill{ background: linear-gradient(135deg, #f6c445, #d9a21b); color: #3a2a00; }
body.tv2 .catalogo-bloque-destacada.resalte-relleno{ border-color: var(--evento-acento, #16a765); background: linear-gradient(135deg, var(--evento-fondo, #14231d), color-mix(in srgb, var(--evento-fondo, #14231d) 70%, var(--evento-acento, #16a765))); color: #fff; }
body.tv2 .catalogo-bloque-destacada.resalte-relleno .catalogo-bloque-header h2, body.tv2 .catalogo-bloque-destacada.resalte-relleno .catalogo-bloque-header p{ color: #fff; }
body.tv2 .catalogo-bloque-destacada.resalte-relleno .catalogo-contador{ background: rgba(255, 255, 255, .16); color: #fff; border-color: rgba(255, 255, 255, .25); }
body.tv2 .catalogo-bloque-destacada.resalte-brillo{ border-color: var(--evento-acento, #16a765); animation: evento-brillo 2.8s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce){body.tv2 .catalogo-bloque-destacada.resalte-brillo{ animation: none; box-shadow: 0 0 18px 1px color-mix(in srgb, var(--evento-acento, #16a765) 45%, transparent); }}
body.tv2 .productos-grid-compacto .pack-arte{ flex-direction: row; justify-content: center; align-items: center; gap: 12px; }
body.tv2 .productos-grid-compacto .pack-arte .pack-caja-img{ width: 62px; flex: 0 0 auto; }
body.tv2 .productos-grid-compacto .pack-items{ max-width: 150px; justify-content: flex-start; gap: 8px 12px; }
body.tv2 .productos-grid-compacto .pack-item{ width: 40px; height: 40px; }
@media (max-width: 520px){body.tv2 .productos-grid-compacto .pack-arte{ flex-direction: column; gap: 3px; }body.tv2 .productos-grid-compacto .pack-arte .pack-caja-img{ width: 40px; }body.tv2 .productos-grid-compacto .pack-items{ max-width: none; justify-content: center; gap: 6px 8px; }body.tv2 .productos-grid-compacto .pack-item{ width: 30px; height: 30px; }body.tv2 .productos-grid-compacto .pack-item-cant{ min-width: 18px; height: 15px; padding: 0 4px; right: -6px; bottom: -4px; font-size: 11px; }}
body.tv2 .producto-card-footer:has(.producto-precio-general) .producto-boton{ width: 100%; }
body.tv2 .productos-grid-productos{ align-items: stretch; }
body.tv2 .productos-grid-productos .producto-card-estandar{ display: flex; flex-direction: column; height: 100%; }
body.tv2 .productos-grid-productos .producto-card-estandar .producto-card-contenido{ flex: 1 1 auto; }
body.tv2 .paso-num{ color: #7a9a8b; }
body.tv2 .evento-hero-kicker{ background: rgba(8, 14, 12, .78); border: 1px solid var(--evento-acento, #16a765); color: #fff; }
body.tv2 .evento-destacada-pill{ background: rgba(8, 14, 12, .85); border: 1px solid var(--evento-acento, #16a765); color: #fff; }
body.tv2 .estado-pagina p{ max-width: 52ch; }
body.tv2 .catalogo-contador, body.tv2 .checkout-progreso-numero, body.tv2 .hero-info-chip, body.tv2 .etiqueta-seccion{ font-size: 12px !important; }
body.tv2 .producto-boton{ font-size: 13px !important; }
body.tv2 .evento-hero-kicker, body.tv2 .checkout-paso-kicker, body.tv2 .checkout-card-eyebrow{ font-size: 11px; }
body.tv2 .checkout-card small, body.tv2 .checkout-paso small{ font-size: 12px; }
body.tv2 .producto-boton, body.tv2 .boton-principal, body.tv2 .boton-secundario, body.tv2 .seguimiento-volver{ min-height: 44px; border-radius: var(--r-btn); font-weight: 700; }
body.tv2 .producto-boton, body.tv2 .boton-principal, body.tv2 .boton-secundario{ display: inline-flex; align-items: center; justify-content: center; }
body.tv2 .evento-nav a{ min-height: 44px; display: inline-flex; align-items: center; }
body.tv2 .checkout-progreso-item{ min-height: 44px; }
body.tv2 main[style*="--evento-acento"] .producto-boton{ background: var(--evento-acento); border-color: var(--evento-acento); color: var(--sobre-acento, #fff); }
body.tv2 main[style*="--evento-acento"] .producto-boton:hover{ filter: brightness(.92); }
body.tv2 main[style*="--evento-acento"] .evento-nav a:hover{ border-color: var(--evento-acento); color: var(--ink, #0f1d2b); }
body.tv2 .producto-boton{ white-space: normal; text-align: center; line-height: 1.15; padding-block: 8px; }
body.tv2 .productos-grid-compacto:has(> :nth-child(6):last-child){ grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 760px){body.tv2 .productos-grid-compacto:has(> :nth-child(6):last-child){ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
body.tv2 .cliente-ahorro{ color: var(--premium); font-weight: 700; }
body.tv2 .checkout-sorteo .sorteo-canje-form{ max-width: 560px; margin: 0 auto; }
body.tv2 .sorteo-canje-card{ margin-bottom: 14px; }
body.tv2 .sorteo-canje-datos{ display: grid; gap: 10px; margin: 6px 0 0; }
body.tv2 .sorteo-canje-datos > div{ display: flex; justify-content: space-between; gap: 16px; padding: 12px 14px; border-radius: 12px; background: rgba(0, 0, 0, .04); }
body.tv2 .sorteo-canje-datos dt{ color: var(--color-text-secondary, #5b6475); font-weight: 600; }
body.tv2 .sorteo-canje-datos dd{ margin: 0; font-weight: 800; letter-spacing: .02em; }
body.tv2 .sorteo-canje-legal{ font-size: 13.5px; color: var(--color-text-secondary, #5b6475); margin: 4px 2px 16px; }
body.tv2 .sorteo-canje-legal a{ text-decoration: underline; }
body.tv2 .checkout-sorteo .boton-confirmar{ width: 100%; }
/* modo oscuro de lo heredado */
html.dark body.tv2 .boton-secundario:hover, body.tv2 .pedido-boton-secundario:hover{background:var(--glass-2)}
html.dark body.tv2 .mensaje-error, body.tv2 .seguimiento-error{color:var(--tx2);border: 1px solid var(--line-2)}
html.dark body.tv2 .mensaje-exito{border: 1px solid var(--line-2)}
html.dark body.tv2 .store-status-banner{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .catalogo-contador{border: 1px solid var(--line-2)}
html.dark body.tv2 .evento-cuenta-regresiva{background:var(--glass-2)}
html.dark body.tv2 .admin-body .admin-card{background:var(--glass-2)}
html.dark body.tv2 .login-opcion, body.tv2 .cliente-tipo, body.tv2 .metodo{background:var(--glass-2)}
html.dark body.tv2 .login-opcion-recomendado{background:var(--glass-2)}
html.dark body.tv2 .checkout-progreso{background:var(--glass-2)}
html.dark body.tv2 .checkout-progreso-numero{background:var(--glass-2)}
html.dark body.tv2 .checkout-card, body.tv2 .checkout-resumen{background:var(--glass-2)}
html.dark body.tv2 .checkout-card-accent{border-color: var(--line-2);background:var(--glass-2)}
html.dark body.tv2 .checkout-card-success{border-color: var(--line-2)}
html.dark body.tv2 .premium-verificacion-icono, body.tv2 .premium-verificada-icono{background:var(--glass-2)}
html.dark body.tv2 .premium-cuenta > div, body.tv2 .canje-premium-resumen span, body.tv2 .cuenta-destino-grid > div{background:var(--glass-2)}
html.dark body.tv2 .canje-premio{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .pago-detalle-card{background:var(--glass-2)}
html.dark body.tv2 .qr-pago-imagen{background:var(--glass-2)}
html.dark body.tv2 .pago-config-alerta{border: 1px solid var(--line-2)}
html.dark body.tv2 .resumen-premium{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .checkout-seguridad{border: 1px solid var(--line-2)}
html.dark body.tv2 .admin-card .pago-link-admin{border: 1px solid var(--line-2);background:var(--glass-2)}
html.dark body.tv2 .admin-card{background:var(--glass-2)}
html.dark body.tv2 .admin-ayuda{background:var(--glass-2)}
html.dark body.tv2 .catalogo-vacio{background:var(--glass-2)}
html.dark body.tv2 .pago-detalle-card, body.tv2 .pedido-pago-card{background:var(--glass-2)}
html.dark body.tv2 .pedido-cuenta-destino > div{background:var(--glass-2)}
html.dark body.tv2 .resumen-premium{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .estado-pagina{background:var(--glass-2)}
html.dark body.tv2 .login-opcion-grupo{background:var(--glass-2)}
html.dark body.tv2 .login-opcion-grupo .login-opcion{background:var(--glass-2)}
html.dark body.tv2 .login-opcion-grupo .login-opcion:hover{background:var(--glass-2)}
html.dark body.tv2 .login-detalles-inline{background:var(--glass-2)}
html.dark body.tv2 .login-detalles-inline input{background:var(--glass-2)}
html.dark body.tv2 .legal-hero{background:var(--glass-2)}
html.dark body.tv2 .legal-documento section{background:var(--glass-2)}
@media (max-width: 900px){html.dark body.tv2 .checkout-resumen-pago{border-color: var(--line-2)}}
html.dark body.tv2 .checkout-whatsapp-consent{background:var(--glass-2)}
html.dark body.tv2 .checkout-whatsapp-consent-control{color:var(--tx2)}
html.dark body.tv2 .checkout-2fa-aviso{background:var(--glass-2)}
html.dark body.tv2 .checkout-2fa-aviso-control{color:var(--tx2)}
html.dark body.tv2 .admin-card{background:var(--glass-2);border:1px solid var(--line-2)}
html.dark body.tv2 .admin-body .boton-secundario{background:var(--glass-2)}
html.dark body.tv2 .admin-body .boton-secundario:hover{background:var(--glass-2);border-color: var(--line-2)}
html.dark body.tv2 .admin-body .campo label{color:var(--tx2)}
html.dark body.tv2 .membership-refund-item{background:var(--glass-2)}
html.dark body.tv2 .membership-refund-calculation{background:var(--glass-2)}
html.dark body.tv2 .membership-refund-status{background:var(--glass-2)}
html.dark body.tv2 .public-membership-savings{background:var(--glass-2)}
html.dark body.tv2 .checkout-exclusive-banner{border:1px solid var(--line-2)}
html.dark body.tv2 .checkout-flash-banner{border-color:var(--line-2);background:var(--glass-2)}
html.dark body.tv2 .puntos-nota-responsabilidad{background:var(--glass-2)}
html.dark body.tv2 .puntos-historial-lista li{background:var(--glass-2)}
html.dark body.tv2 .puntos-recompensa-imagen{background:var(--glass-2)}
html.dark body.tv2 .pedido-desglose{border-top: 1px dashed var(--line-2)}
html.dark body.tv2 .pedido-puntos-nota{background:var(--glass-2)}
html.dark body.tv2 .info-card{background:var(--glass-2)}
html.dark body.tv2 .sorteo-panel{background:var(--glass-2)}
html.dark body.tv2 .sorteo-datos li{color:var(--tx2)}
html.dark body.tv2 .ruleta.ruleta-final{color:var(--tx2)}
html.dark body.tv2 .panel-vacio{background:var(--glass-2)}
html.dark body.tv2 .reclamo-card{background:var(--glass-2)}
html.dark body.tv2 .premio-ganado{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .premio-ganado-ico{background:var(--glass-2)}
html.dark body.tv2 .premio-ganado code{background:var(--glass-2)}
html.dark body.tv2 .paso-tarjeta{background:var(--glass-2)}
html.dark body.tv2 .flash-pagina{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .flash-pagina-imagen{background:var(--glass-2)}
html.dark body.tv2 .flash-pagina-ahorro{background:var(--glass-2)}
html.dark body.tv2 .membresia-sesion-btn{background:var(--glass-2)}
html.dark body.tv2 .consulta-card{background:var(--glass-2)}
html.dark body.tv2 .consulta-lista li{color:var(--tx2)}
html.dark body.tv2 .consulta-form{background:var(--glass-2)}
html.dark body.tv2 .membresia-estado-ico{background:var(--glass-2);color:var(--tx2)}
html.dark body.tv2 .membresia-barra span{background:var(--glass-2)}
html.dark body.tv2 .ahorro-tarjeta{background:var(--glass-2)}
html.dark body.tv2 .flash-gestion{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .flash-estado{background:var(--glass-2)}
html.dark body.tv2 .flash-estado-on{background:var(--glass-2)}
html.dark body.tv2 .renovar-card{background:var(--glass-2)}
html.dark body.tv2 .catalogo-kicker{color:var(--tx2)}
html.dark body.tv2 .checkout-moneda-opcion{background:var(--glass-2)}
html.dark body.tv2 .pedido-historial-plegado{background:var(--glass-2)}
html.dark body.tv2 .checkout-consejos-seguridad{background:var(--glass-2)}
html.dark body.tv2 .puntos-resumen-gasto > div{background:var(--glass-2)}
html.dark body.tv2 .reclamo-estado-pill{background:var(--glass-2)}
html.dark body.tv2 .reclamo-estado-pill.reclamo-estado-abierto{background:var(--glass-2)}
html.dark body.tv2 .reclamo-estado-pill.reclamo-estado-en-revisión{background:var(--glass-2)}
html.dark body.tv2 .reclamo-estado-pill.reclamo-estado-resuelto{background:var(--glass-2)}
html.dark body.tv2 .reclamo-estado-pill.reclamo-estado-cerrado{background:var(--glass-2)}
html.dark body.tv2 .reclamo-estado-respuesta{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .puntos-optimizador{background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .embajador-link-caja input{background:var(--glass-2)}
html.dark body.tv2 .admin-body .boton-secundario{background:var(--glass-2)}
html.dark body.tv2 .admin-body .boton-secundario:hover{border-color: var(--line-2)}
html.dark body.tv2 .admin-body .admin-card{background:var(--glass-2)}
html.dark body.tv2 .admin-body .boton-secundario{background:var(--glass-2);border-color: var(--line-2)}
html.dark body.tv2 .admin-body .mensaje-error{color:var(--tx2);background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .admin-body .mensaje-exito{color:var(--tx2);background:var(--glass-2);border: 1px solid var(--line-2)}
html.dark body.tv2 .evento-banner{background:var(--glass-2)}
html.dark body.tv2 .evento-aviso{background:var(--glass-2)}
html.dark body.tv2 .evento-aviso-premium{background:var(--glass-2);border-color: var(--line-2);color:var(--tx2)}
html.dark body.tv2 .evento-nav{background:var(--glass-2)}
html.dark body.tv2 .evento-nav a{background:var(--glass-2)}
html.dark body.tv2 .catalogo-bloque-destacada{background:var(--glass-2);background:var(--glass-2)}
html.dark body.tv2 .checkout-card-reserva{border-color: var(--line-2);background:var(--glass-2)}
html.dark body.tv2 .evento-aviso-preview{background:var(--glass-2);border-color: var(--line-2)}
html.dark body.tv2 .catalogo-bloque-destacada.resalte-dorado{background:var(--glass-2)}
html.dark body.tv2 .catalogo-bloque-destacada.resalte-dorado .evento-destacada-pill{color:var(--tx2)}
html.dark .pedido-icono{background:var(--glass-2)}
html.dark .pedido-card{border: 1px solid var(--line-2)}
html.dark .pedido-dato{border-bottom: 1px solid var(--line-2)}
html.dark .pedido-dato strong{color:var(--tx)}
html.dark .estado-pedido{background:var(--glass-2)}
html.dark .estado-pedido.procesando{background:var(--glass-2)}
html.dark .estado-pedido.completado{background:var(--glass-2)}
html.dark .estado-pedido.rechazado{background:var(--glass-2);color:var(--tx2)}
html.dark .producto-pedido{border-bottom: 1px solid var(--line-2)}
html.dark .pedido-total{border-top: 2px solid var(--line-2)}
html.dark .pedido-aviso{background:var(--glass-2)}
html.dark .pedido-aviso strong{color:var(--tx)}
html.dark .pedido-boton-secundario{color:var(--tx2);border: 1px solid var(--line-2)}
html.dark .pedido-boton-secundario:hover{background:var(--glass-2)}
html.dark .pedido-progreso{border: 1px solid var(--line-2)}
html.dark .pedido-progreso-actual, html.dark .pedido-historial-count{background:var(--glass-2)}
html.dark .pedido-paso-circulo{border: 1px solid var(--line-2)}
html.dark .pedido-paso.paso-completado .pedido-paso-circulo{background:var(--glass-2)}
html.dark .pedido-paso.paso-rechazado .pedido-paso-circulo{background:var(--glass-2);color:var(--tx2)}
html.dark .pedido-paso.paso-actual .pedido-paso-texto, html.dark .pedido-paso.paso-completado .pedido-paso-texto{color:var(--tx)}
html.dark .pedido-paso-linea{background:var(--glass-2)}
html.dark .pedido-progreso-ayuda{background:var(--glass-2)}
html.dark .pedido-progreso-exito{background:var(--glass-2)}
html.dark .pedido-progreso-rechazo{background:var(--glass-2);color:var(--tx2)}
html.dark .pedido-historial::before{background:var(--glass-2)}
html.dark .pedido-historial-item strong{color:var(--tx)}
html.dark .seguimiento-formulario{border: 1px solid var(--line-2)}
html.dark .seguimiento-formulario input{border: 1px solid var(--line-2);color:var(--tx)}
html.dark .seguimiento-error{background:var(--glass-2);border: 1px solid var(--line-2);color:var(--tx2)}
html.dark .seguimiento-resultado{border: 1px solid var(--line-2)}
html.dark .seguimiento-resultado-cabecera{border-bottom: 1px solid var(--line-2)}
html.dark .seguimiento-estado{background:var(--glass-2)}
html.dark .seguimiento-estado.procesando{background:var(--glass-2)}
html.dark .seguimiento-estado.completado{background:var(--glass-2)}
html.dark .seguimiento-dato{border-bottom: 1px solid var(--line-2)}
html.dark .seguimiento-producto{border-bottom: 1px solid var(--line-2)}
html.dark .seguimiento-total{border-top: 2px solid var(--line-2)}
html.dark .seguimiento-ayuda{background:var(--glass-2)}

/* ===== Extras de la tienda real (no estan en el prototipo) ===== */
.moneda-selector{display:inline-flex;align-items:center;height:40px;padding:0 12px;border:1px solid var(--line-2);border-radius:999px;background:var(--glass-2);color:var(--tx);font:inherit;font-size:13px;font-weight:700;cursor:pointer;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
.moneda-selector:hover{border-color:var(--cy)}
.moneda-item{display:inline-flex;align-items:center;gap:6px}
.moneda-item[hidden]{display:none}
.moneda-item svg{width:20px;height:14px;border-radius:2px;flex:none}
.carrito-cantidad-actualizado{animation:rz-pop .32s var(--ease)}
@keyframes rz-pop{50%{transform:scale(1.28)}}
.mensaje-error,.mensaje-exito{padding:12px 16px;border-radius:var(--r-m);margin-bottom:16px;font-weight:600}
.mensaje-error{background:rgba(217,56,81,.12);color:var(--err);border:1px solid rgba(217,56,81,.35)}
.mensaje-exito{background:rgba(12,143,106,.12);color:var(--ok);border:1px solid rgba(12,143,106,.35)}

/* Logo de la tienda (imagen cargada desde el admin) */
body.tv2 .logo .logo-imagen{height:34px;width:auto;max-width:170px;object-fit:contain}
html.dark body.tv2 .logo .logo-imagen{filter:invert(1) brightness(1.15)}

/* Integracion con el sistema de temas estacionales (temas.py inyecta su CSS y una franja) */
body.tv2 .header{border-bottom:0}
body.tv2 .tema-franja{width:min(var(--maxw),calc(100% - 24px));margin:8px auto 0;padding:9px 16px;border-radius:var(--r-m);background:var(--glass-2);border:1px solid var(--line-2);font-size:13.5px;font-weight:600;color:var(--tx);text-align:center;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}

/* Iconos heredados de style.css (marcado ya existente en vistas y en el boton flotante) */
body.tv2 .ui-icon{width:18px;height:18px;flex:0 0 18px;display:inline-flex;align-items:center;justify-content:center}
body.tv2 .ui-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}

/* Boton flotante de WhatsApp (lo inyecta app.py en todas las paginas publicas) */
body.tv2 .boton-whatsapp-flotante{position:fixed;right:22px;bottom:22px;z-index:90;width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;background:var(--grad);border:1px solid rgba(255,255,255,.55);box-shadow:0 12px 28px rgba(91,92,255,.4);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
body.tv2 .boton-whatsapp-flotante:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(91,92,255,.5)}
body.tv2 .boton-whatsapp-flotante svg{width:26px;height:26px;flex:none;fill:none;stroke:currentColor}
@media(max-width:900px){body.tv2 .boton-whatsapp-flotante{right:14px;bottom:calc(88px + env(safe-area-inset-bottom));width:48px;height:48px}body.tv2 .boton-whatsapp-flotante svg{width:23px;height:23px}}

/* Ayuda / preguntas frecuentes: lista + panel lateral en escritorio */
.ayuda-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start;margin:22px 0 56px}
.ayuda-grid .faq-l{max-width:none;margin:0}
.ayuda-lado{position:sticky;top:104px;display:grid;gap:16px}
.ayuda-lado .panel h2{font-size:20px}
.ayuda-lado .panel p{color:var(--tx2);margin:8px 0 14px;font-size:14.5px}
.ayuda-enlaces{display:grid;gap:8px}
.ayuda-enlaces a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-m);background:var(--glass-2);border:1px solid var(--line-2);font-weight:700;font-size:14.5px;transition:transform .2s var(--ease),border-color .2s}
.ayuda-enlaces a:hover{transform:translateX(3px);border-color:var(--cy)}
.ayuda-enlaces svg{width:20px;height:20px;flex:none;stroke:var(--cy);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:980px){.ayuda-grid{grid-template-columns:1fr}.ayuda-lado{position:static}}

/* ===== Portada y tarjetas (datos reales) ===== */
.aviso-tienda{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;margin:12px 0 0;padding:12px 16px;border-radius:var(--r-m);background:rgba(255,170,60,.16);border:1px solid rgba(255,170,60,.5);color:var(--tx)}
.tag.prem{background:rgba(123,92,255,.14);border-color:rgba(123,92,255,.45);color:var(--vio)}
html.dark .tag.prem{color:#c9bcff}
.card .producto-card-footer{margin-top:auto;display:flex;flex-direction:column}
.card .producto-precios{display:flex;flex-direction:column}
.card .producto-precios .gen{margin-top:0;padding-top:12px}
.card .tv-add{margin:0}
.card .btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.card .qty-s{margin-top:14px}
.tv-qty{display:contents}
.card.card-prem{border-color:rgba(123,92,255,.4)}
.producto-card-no-disponible{opacity:.8}
.producto-countdown{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:8px 12px;border-radius:12px;background:var(--glass-2);border:1px solid var(--line-2);font-size:13px;color:var(--tx2)}
.producto-countdown strong{font-family:Manrope;color:var(--tx)}
.reserva-abre{font-size:13px;color:var(--tx2);margin-top:6px}
.reserva-abre strong{font-family:Manrope;color:var(--tx)}
.reserva-abre em{font-style:normal;color:var(--vio);font-weight:700}
.res-img{display:grid;place-items:center}
.res-img img{width:150px;border-radius:14px}
.res{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.banda-sorteo,.banda-flash{margin-bottom:12px}
.nov-ev small{display:block;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tx3)}
.nov-ev b{display:block;font-family:Manrope}
.nov-ev em{display:block;font-style:normal;color:var(--tx2);font-size:14px}
.nov-ev s{color:var(--tx3)}
.flash-der{display:flex;align-items:center;gap:14px;margin-left:auto;flex-wrap:wrap}
.flash-der form{margin:0}
.flash-reloj{font-size:13.5px;color:var(--tx2)}
.flash-reloj b{display:inline;font:700 14px Manrope;font-variant-numeric:tabular-nums;color:var(--tx)}
/* Movil: el texto de la oferta ocupa todo el ancho y el reloj + boton pasan debajo (antes se encimaban a 360-390 px) */
@media(max-width:700px){.banda-flash{flex-wrap:wrap}.banda-flash>span:nth-child(2){flex:1 1 calc(100% - 64px)}.banda-flash .flash-der{flex:1 1 100%;width:100%;margin-left:0;justify-content:space-between}.banda-flash .flash-der .btn{white-space:nowrap}}
.banda-sorteo .nov-go{margin-left:auto}
.bn{position:relative}
.bn-s a{display:block;width:100%;height:100%}

/* membresia verificada (macro _membresia_sesion.html) */
.membresia-sesion{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 16px;padding:14px 18px;border-radius:var(--r-l);background:var(--glass-2);border:1px solid var(--line-2);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
.membresia-sesion-ico svg,.ico{width:22px;height:22px;flex:none}
.membresia-sesion-ico{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--grad);color:#fff;flex:none}
.membresia-sesion-texto small{display:block;color:var(--tx3);font-size:12.5px}
.membresia-sesion-texto strong span{font-weight:500;color:var(--tx2)}
.membresia-sesion-acciones{display:flex;gap:8px;margin-left:auto;flex-wrap:wrap}
.membresia-sesion-acciones form{margin:0}
.membresia-sesion-btn{padding:9px 16px;border-radius:99px;border:1px solid var(--line-2);background:var(--glass);color:var(--tx);font-weight:700;font-size:13.5px;cursor:pointer}
.membresia-sesion-btn:hover{background:var(--glass-3)}
.membresia-sesion-btn-salir{color:var(--err)}

/* Packs (cajita + items) */
.pack-arte{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}
.pack-arte .pack-caja-img{display:block;width:clamp(48px,18%,65px);height:auto;max-width:none;object-fit:contain;filter:hue-rotate(var(--tono,0deg)) drop-shadow(0 7px 7px rgba(16,24,40,.22))}
.pack-items{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 14px;max-width:220px}
.pack-item{position:relative;width:46px;height:46px}
.pack-arte .pack-item-img{position:absolute;inset:0;display:block}
.pack-arte .pack-item-img img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;object-position:center;filter:drop-shadow(0 2px 3px rgba(16,24,40,.18))}
.pack-item-cant{position:absolute;right:-8px;bottom:-4px;display:grid;place-items:center;min-width:21px;height:17px;padding:0 5px;border-radius:999px;background:#fff;border:1px solid var(--line-2);color:#0E1330;font-size:11.5px;font-weight:800}
.card .card-img .pack-arte{flex-direction:row;justify-content:center;gap:12px;padding:8px}
.card .card-img .pack-arte .pack-caja-img{width:62px;flex:0 0 auto}
.card .card-img .pack-items{max-width:150px;justify-content:flex-start;gap:8px 12px}
.res-img .pack-arte .pack-caja-img{width:clamp(90px,34%,130px)}
@media(max-width:520px){.card .card-img .pack-arte{flex-direction:column;gap:3px}.card .card-img .pack-arte .pack-caja-img{width:40px}.card .card-img .pack-items{max-width:none;justify-content:center;gap:6px 8px}.card .card-img .pack-item{width:30px;height:30px}.pack-item-cant{min-width:18px;height:15px;padding:0 4px;font-size:11px}}
.qty-s span{font-size:13px;line-height:1.15;text-align:center;flex:1}
.qty-s span b{font-family:Manrope;font-size:16px}
.blq-h{position:relative}
.blq-n{position:absolute;right:0;bottom:4px;padding:5px 12px;border-radius:99px;background:var(--glass-2);border:1px solid var(--line-2);font-size:12.5px;font-weight:700;color:var(--tx2)}
@media(max-width:560px){.blq-n{position:static;display:inline-block;margin-top:10px}}
.tag{max-width:calc(100% - 28px);white-space:normal;line-height:1.2}

/* ===== Precios: el general manda; GO Premium es el precio de miembro (secundario) ===== */
.card .pr-gen{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding-top:12px}
.card .pr-gen strong{font-family:Manrope;font-size:23px;line-height:1.1;color:var(--tx)}
.card .pr-prem{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:13px;color:var(--tx2)}
.card .pr-prem b{font-family:Manrope;font-size:14.5px;color:var(--vio)}
html.dark .card .pr-prem b{color:#c9bcff}
.res-c .pr-gen{padding-top:0}

/* ===== Hero: imagenes sin deformar; en movil solo la principal ===== */
.hero-art img{height:auto;object-fit:contain}
@media(max-width:700px){.hero-art{height:200px}.hero-art .a2,.hero-art .a3{display:none}.hero-art .a1{width:62%;left:19%;top:0}}

/* ===== Tarjetas y rejillas en movil: sin desbordes y textos alineados ===== */
.grid>*{min-width:0}
.card h3{overflow-wrap:anywhere}
@media(max-width:600px){
 .card h3{min-height:2.5em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .card .pr-gen strong{font-size:19px}
 .card .pr-prem{font-size:12px}.card .pr-prem b{font-size:13px}
 .card .desc{font-size:12.5px}
 .esp-sub{padding:12px}.esp-sub header{flex-wrap:wrap}.esp-sub .grid{gap:10px}
 .esp{gap:14px}
}
.qf{display:contents}
.line .sub form{margin:0}

/* ===== Checkout: la rejilla del pago no debe ensanchar la pagina en movil ===== */
body.tv2 .checkout-pago-layout>*,body.tv2 .checkout-pago-main>*,body.tv2 .metodos-pago>*,body.tv2 .checkout-card,body.tv2 .checkout-paso{min-width:0}
body.tv2 .metodo,body.tv2 .pago-detalle-card,body.tv2 .cuenta-destino-grid>*,body.tv2 .pago-monto{min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:900px){body.tv2 .checkout-pago-layout{grid-template-columns:minmax(0,1fr)}}
body.tv2 input[type=file]{max-width:100%;font-size:14px}

/* ===== Formularios heredados (.campo) con el estilo nuevo ===== */
body.tv2 .campo{display:grid;gap:6px;margin-bottom:14px;min-width:0}
body.tv2 .campo>label{font-weight:700;font-size:14px;color:var(--tx)}
body.tv2 .campo input:not([type=checkbox]):not([type=radio]):not([type=file]),body.tv2 .campo select,body.tv2 .campo textarea{width:100%;min-height:48px;padding:0 16px;border-radius:14px;background:var(--glass-2);border:1px solid var(--line-2);color:var(--tx);outline:0;font:inherit;transition:border-color .2s,box-shadow .2s}
body.tv2 .campo textarea{padding:12px 16px;min-height:120px;resize:vertical}
body.tv2 .campo input:focus,body.tv2 .campo select:focus,body.tv2 .campo textarea:focus{border-color:#4A5CFF;box-shadow:0 0 0 3px rgba(74,92,255,.22)}
body.tv2 .campo input::placeholder,body.tv2 .campo textarea::placeholder{color:var(--tx3)}
body.tv2 .campo small{color:var(--tx3)}
body.tv2 .boton-principal,body.tv2 .boton-confirmar{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:99px;border:0;background:var(--grad);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 8px 24px rgba(91,92,255,.35)}
body.tv2 .boton-secundario{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:99px;background:var(--glass-2);border:1px solid var(--line-2);color:var(--tx);font-weight:700;cursor:pointer}

/* Evento: el hero es oscuro con foto; el texto siempre claro */
body.tv2 .evento-hero,body.tv2 .evento-hero h1,body.tv2 .evento-hero h2,body.tv2 .evento-hero strong{color:#fff}
body.tv2 .evento-hero-desc,body.tv2 .evento-hero p{color:rgba(255,255,255,.92)}
/* Botones de tarjeta en pantallas chicas: el texto largo se parte en vez de cortarse */
@media(max-width:600px){.card .btn{white-space:normal;line-height:1.15;min-height:44px;padding:8px 10px;font-size:13.5px}}

/* ===== Modo oscuro: superficies heredadas que quedaban blancas ===== */
html.dark body.tv2 .seguimiento-formulario,html.dark body.tv2 .pedido-progreso,html.dark body.tv2 .pedido-card,html.dark body.tv2 .pedido-aviso,html.dark body.tv2 .pedido-historial-count,html.dark body.tv2 .pedido-progreso-actual,html.dark body.tv2 .campo-ayuda{background:var(--glass-2);color:var(--tx);border-color:var(--line-2)}
html.dark body.tv2 .seguimiento-formulario input,html.dark body.tv2 .seguimiento-formulario-campo input,html.dark body.tv2 input[type=text],html.dark body.tv2 input[type=tel],html.dark body.tv2 input[type=number],html.dark body.tv2 input[type=password],html.dark body.tv2 input[type=email],html.dark body.tv2 select,html.dark body.tv2 textarea{background:rgba(255,255,255,.08);color:var(--tx);border-color:var(--line-2)}
html.dark body.tv2 .puntos-nota-responsabilidad,html.dark body.tv2 .pedido-puntos-nota{background:rgba(255,170,60,.14);color:#ffd9a0;border-color:rgba(255,170,60,.4)}
html.dark body.tv2 .pedido-card h2,html.dark body.tv2 .pedido-card strong,html.dark body.tv2 .pedido-card span,html.dark body.tv2 .pedido-card p,html.dark body.tv2 .pedido-progreso *,html.dark body.tv2 .seguimiento-formulario label{color:var(--tx)}
html.dark body.tv2 .pedido-card .detalle-etiqueta,html.dark body.tv2 .pedido-card small{color:var(--tx3)}
html.dark body.tv2 #contenido-principal :is(h1,h2,h3,h4){color:var(--tx)}
html.dark body.tv2 #contenido-principal :is(.seguimiento-titulo p,.pedido-confirmacion p,.pedido-codigo-etiqueta){color:var(--tx2)}
html.dark body.tv2 .pedido-confirmacion-icono,html.dark body.tv2 .estado-pagina-icono{color:#c9bcff;background:rgba(123,92,255,.2)}
html.dark body.tv2 input::placeholder,html.dark body.tv2 textarea::placeholder{color:#8f98c4;opacity:1}
html.dark body.tv2 .pedido-estado-completado,html.dark body.tv2 .estado-completado{background:rgba(12,143,106,.2);color:#6ee7b7}

/* Checkout · pago compacto */
body.tv2 #checkout-total-metodo{display:none!important}
body.tv2 .checkout-obs-plegable{padding:12px 16px}
body.tv2 .checkout-obs-plegable summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--tx2)}
body.tv2 .checkout-obs-plegable[open] summary{margin-bottom:10px}
body.tv2 .checkout-aceptacion-legal{display:grid;gap:10px}
body.tv2 .checkout-aceptacion-legal small{color:var(--tx3)}
body.tv2 .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ===== Contraste y GO Premium (superficies con variables: legibles en claro y oscuro) ===== */
body.tv2{--sup:var(--glass-2);--sup-b:var(--line-2)}
body.tv2 .hero-info{background:linear-gradient(125deg,#2F3FD8 0%,#5B3FE0 55%,#8A3FD0 100%)}
body.tv2 .hero-info p{color:#fff}
body.tv2 .hero-info-chip{background:rgba(0,0,0,.24);border-color:rgba(255,255,255,.4);color:#fff}
body.tv2 .kick,body.tv2 .kicker{color:#3342D6}
html.dark body.tv2 .kick,html.dark body.tv2 .kicker{color:#B4C0FF}
body.tv2 .checkout-paso-kicker,body.tv2 .checkout-card-eyebrow,body.tv2 .checkout-titulo>span,body.tv2 .etiqueta-seccion{color:#3342D6}
html.dark body.tv2 .checkout-paso-kicker,html.dark body.tv2 .checkout-card-eyebrow,html.dark body.tv2 .checkout-titulo>span,html.dark body.tv2 .etiqueta-seccion{color:#B4C0FF}
body.tv2 .checkout-progreso-item strong,body.tv2 .checkout-progreso-item small{color:var(--tx2)}
body.tv2 .checkout-progreso-item.activo strong{color:var(--tx)}
body.tv2 .checkout-progreso-numero{color:var(--tx2);border-color:var(--line-2);background:var(--glass-2)}
body.tv2 .checkout-progreso-item.activo .checkout-progreso-numero,body.tv2 .checkout-progreso-item.completado .checkout-progreso-numero{color:#fff;background:#3342D6;border-color:#3342D6}
body.tv2 .checkout-paso-cabecera p,body.tv2 .checkout-titulo p{color:var(--tx2)}
body.tv2 .boton-confirmar{background:linear-gradient(135deg,#3342D6,#6A3FE0);color:#fff}
body.tv2 .premium-nota{color:var(--tx2)}
body.tv2 .paso-num{color:var(--tx2)}
html.dark .tag.lim{background:rgba(255,160,120,.2);color:#FFD7BF}
html.dark .bdg{color:#D5DBF7}

/* tarjetas heredadas de GO Premium -> superficies del tema */
body.tv2 .consulta-card,body.tv2 .membresia-estado,body.tv2 .ahorro-tarjeta,body.tv2 .flash-gestion,body.tv2 .renovar-card,body.tv2 .paso-tarjeta,body.tv2 .membership-refund-card,body.tv2 .gp-acceso,body.tv2 .membresia-sesion{background:var(--sup);border:1px solid var(--line-2);box-shadow:var(--sh);color:var(--tx);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
body.tv2 .consulta-form{background:var(--glass-3);border:1px solid var(--line-2);box-shadow:none}
body.tv2 .membresia-estado::before{opacity:.5}
body.tv2 .consulta-intro h2,body.tv2 .membresia-estado strong,body.tv2 .ahorro-tarjeta h2,body.tv2 .flash-gestion-texto h2,body.tv2 .renovar-texto h2,body.tv2 .paso-tarjeta h3,body.tv2 .membership-refund-card h2,body.tv2 .membership-refund-card strong{color:var(--tx)}
body.tv2 .consulta-intro p,body.tv2 .consulta-lista li,body.tv2 .ahorro-tarjeta p,body.tv2 .flash-gestion-texto p,body.tv2 .renovar-texto p,body.tv2 .paso-tarjeta p,body.tv2 .membership-refund-card p,body.tv2 .membership-refund-card span,body.tv2 .membresia-estado small,body.tv2 .membresia-dias-texto,body.tv2 .ahorro-tarjeta .public-membership-savings-value span{color:var(--tx2)}
body.tv2 .consulta-nota{color:var(--tx2)}
body.tv2 .consulta-nota a,body.tv2 .paso-tarjeta a{color:#3342D6;text-decoration:underline}
html.dark body.tv2 .consulta-nota a,html.dark body.tv2 .paso-tarjeta a{color:#B4C0FF}
body.tv2 .consulta-form label,body.tv2 .campo label{color:var(--tx)}
body.tv2 .consulta-ico,body.tv2 .membresia-estado-ico,body.tv2 .ahorro-ico,body.tv2 .flash-gestion-ico,body.tv2 .renovar-ico,body.tv2 .paso-ico,body.tv2 .gp-ico{background:linear-gradient(135deg,#3C78FF,#7B5CFF);color:#fff;border:0}
body.tv2 .consulta-ico svg,body.tv2 .membresia-estado-ico svg,body.tv2 .ahorro-ico svg,body.tv2 .flash-gestion-ico svg,body.tv2 .renovar-ico svg,body.tv2 .paso-ico svg,body.tv2 .gp-ico svg{stroke:#fff}
body.tv2 .consulta-lista .ico{background:rgba(74,92,255,.14);color:var(--tx)}
body.tv2 .ahorro-tarjeta .public-membership-savings-value strong{color:var(--ok)}
body.tv2 .membresia-barra{background:var(--line-2)}
body.tv2 .info-boton{background:linear-gradient(135deg,#3342D6,#6A3FE0);color:#fff;box-shadow:0 8px 22px rgba(70,70,220,.3)}
body.tv2 .info-boton:hover{background:linear-gradient(135deg,#2a38c4,#5b33d0)}
body.tv2 .info-boton-suave,body.tv2 .boton-secundario{background:var(--glass-3);color:var(--tx);border:1px solid var(--line-2);box-shadow:none}
body.tv2 .estado-pill{color:var(--tx)}

/* bloque de acceso unico: suscribirse + gestionar */
body.tv2 .gp-acceso{display:grid;gap:18px;padding:24px;border-radius:var(--r-l);margin-bottom:26px}
body.tv2 .gp-acceso-cab{display:flex;gap:16px;align-items:center}
body.tv2 .gp-ico{flex:none;width:56px;height:56px;border-radius:16px;display:grid;place-items:center}
body.tv2 .gp-ico svg{width:28px;height:28px}
body.tv2 .gp-acceso h2{margin:0 0 4px;font-size:21px;letter-spacing:-.02em;color:var(--tx)}
body.tv2 .gp-acceso p{margin:0;color:var(--tx2);line-height:1.5;font-size:14.5px}
body.tv2 .gp-acceso-acc{display:grid;gap:10px}
body.tv2 .gp-acceso-acc .btn{width:100%;min-height:52px;font-size:15.5px;text-decoration:none}
body.tv2 .gp-acceso-acc .btn-pri{background:linear-gradient(135deg,#3342D6,#7B3FE0);color:#fff;box-shadow:0 10px 26px rgba(80,70,230,.38)}
body.tv2 .gp-acceso-acc .btn-gl{background:var(--glass-3);color:var(--tx);border:1px solid var(--line-2)}
body.tv2 .gp-acceso-acc small{display:block;font-weight:600;opacity:.9;font-size:12.5px}
@media(min-width:760px){body.tv2 .gp-acceso{grid-template-columns:1.2fr 1fr;align-items:center;padding:28px 32px}}
@media(max-width:520px){body.tv2 .gp-acceso-cab{flex-direction:column;align-items:flex-start;gap:12px}body.tv2 .gp-acceso h2{font-size:22px}}
html.dark body.tv2 .gp-acceso-acc .btn-gl{background:rgba(255,255,255,.18);color:#fff}
body.tv2 .logo b{background:linear-gradient(135deg,#3342D6,#6A3FE0);color:#fff}
body.tv2 .btn-pri,body.tv2 a.btn-pri{background:linear-gradient(135deg,#3342D6,#6A3FE0);color:#fff}
body.tv2 .nov-ev small,body.tv2 .mm-ev small{color:var(--tx2)}
body.tv2 .pr-prem b{color:#3342D6}
html.dark body.tv2 .pr-prem b{color:#FFD666}
html.dark body.tv2 .tag.lim{background:rgba(70,36,20,.92);color:#FFD7BF;border-color:rgba(255,160,120,.5)}
body.tv2 .checkout-progreso-item:disabled{opacity:1}
body.tv2 .puntos-recompensa-costo{color:#3342D6}
html.dark body.tv2 .puntos-recompensa-costo{color:#B4C0FF}
body.tv2 .seguimiento-volver,body.tv2 .canjear-volver,body.tv2 .seguimiento-formulario-ayuda,body.tv2 .canjear-etiqueta,body.tv2 .admin-page-kicker,body.tv2 .nota,body.tv2 .seguimiento-pagina p,body.tv2 .canjear-pagina p{color:var(--tx2)}
body.tv2 .seguimiento-volver,body.tv2 .canjear-volver{font-weight:700}
html.dark body.tv2 .seguimiento-volver,html.dark body.tv2 .canjear-volver,html.dark body.tv2 .canjear-etiqueta,html.dark body.tv2 .admin-page-kicker{color:#B4C0FF}
body.tv2 h1+p{color:var(--tx2)}

/* Gestion de membresia: tarjeta de estado destacada + tarjetas apiladas en movil */
body.tv2 .membresia-estado{background:linear-gradient(135deg,#2F3FD8 0%,#5B3FE0 60%,#8A3FD0 100%);border:0;color:#fff;box-shadow:0 18px 44px rgba(70,60,220,.32)}
body.tv2 .membresia-estado::before{opacity:1}
body.tv2 .membresia-estado strong,body.tv2 .membresia-estado .membresia-dias-texto,body.tv2 .membresia-estado .membresia-dias-texto strong{color:#fff}
body.tv2 .membresia-estado small{color:rgba(255,255,255,.82)}
body.tv2 .membresia-estado .membresia-estado-ico{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.35)}
body.tv2 .membresia-estado .membresia-barra{background:rgba(255,255,255,.25)}
body.tv2 .membresia-estado .membresia-barra span{background:#FFD666}
body.tv2 .membresia-estado a.membresia-otra{color:#fff;text-decoration:underline;font-weight:700}
body.tv2 .membresia-estado .estado-pill{background:rgba(255,255,255,.94);color:#0a6a40;border:0}
body.tv2 .membresia-estado .estado-pill.estado-mal{color:#a3162f}
body.tv2 .membresia-estado .estado-pill i{background:currentColor}
@media(max-width:640px){
 body.tv2 .membresia-estado{padding:22px 20px}
 body.tv2 .membresia-estado-codigo{font-size:24px}
 body.tv2 .membresia-estado-datos{grid-template-columns:1fr 1fr;gap:14px}
 body.tv2 .membresia-estado-datos>div:first-child{grid-column:1/-1}
 body.tv2 .ahorro-tarjeta,body.tv2 .flash-gestion{flex-direction:column;align-items:flex-start;gap:14px;padding:22px 20px}
 body.tv2 .ahorro-tarjeta .public-membership-savings-value{text-align:left}
 body.tv2 .flash-gestion-form{width:100%}
 body.tv2 .renovar-card{padding:22px 20px}
 body.tv2 .renovar-texto{min-width:0}
 body.tv2 .renovar-acciones,body.tv2 .renovar-acciones form{width:100%}
 body.tv2 .renovar-acciones .info-boton{width:100%}
}
body.tv2 .flash-estado{background:var(--glass-3);color:var(--tx);border:1px solid var(--line-2)}
body.tv2 .flash-estado strong{color:inherit}
body.tv2 .flash-estado-on{color:var(--ok)}
html.dark body.tv2 .flash-gestion .etiqueta-seccion{color:#FFC46B!important}

/* sorteo y legales: superficies del tema */
body.tv2 .legal-hero{background:transparent;border-bottom:1px solid var(--line-2)}
body.tv2 .legal-hero-inner>span{color:#3342D6}
html.dark body.tv2 .legal-hero-inner>span{color:#B4C0FF}
body.tv2 .legal-hero-inner h1{color:var(--tx)}
body.tv2 .legal-hero-inner p{color:var(--tx2)}
body.tv2 .ganador-card{background:linear-gradient(135deg,#1B2370 0%,#4B2FA8 100%)}
body.tv2 .ganador-card .etiqueta-seccion{color:#FFD54A}
body.tv2 .sorteo-cuenta>div{background:var(--glass-3);border:1px solid var(--line-2);color:var(--tx);box-shadow:none}
body.tv2 .sorteo-cuenta b{color:var(--tx)}
body.tv2 .sorteo-cuenta small{color:var(--tx2)}

/* Checkout en oscuro: campos, cupon, totales, metodos */
html.dark body.tv2 input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]),html.dark body.tv2 textarea,html.dark body.tv2 select{background:rgba(255,255,255,.09);color:var(--tx);border-color:var(--line-2)}
html.dark body.tv2 input::placeholder,html.dark body.tv2 textarea::placeholder{color:#8F98C4}
body.tv2 .cupon-plegado summary{color:#3342D6;font-weight:700}
html.dark body.tv2 .cupon-plegado summary{color:#B4C0FF}
body.tv2 .pago-monto span{color:var(--tx2)}
body.tv2 .pago-monto strong,body.tv2 .checkout-total strong,body.tv2 .checkout-total-metodo strong{color:#3342D6}
html.dark body.tv2 .pago-monto strong,html.dark body.tv2 .checkout-total strong{color:#C9D1FF}
body.tv2 .cuenta-destino-grid span,body.tv2 .pago-detalle-card span,body.tv2 .login-opcion span{color:var(--tx2)}
body.tv2 .cuenta-destino-grid strong,body.tv2 .pago-detalle-card h3,body.tv2 .login-opcion strong,body.tv2 .metodo strong{color:var(--tx)}
html.dark body.tv2 .login-opcion,html.dark body.tv2 .metodo{background:rgba(255,255,255,.1);border-color:var(--line-2)}
body.tv2 .login-opcion-recomendado{background:#3342D6;color:#fff}
html.dark body.tv2 .pago-monto{background:rgba(255,255,255,.1);border:1px solid var(--line-2)}
html.dark body.tv2 .boton-secundario,html.dark body.tv2 .descuento-form-step3-controls button{background:rgba(255,255,255,.14);color:var(--tx);border:1px solid var(--line-2)}
body.tv2 .login-opcion span.login-opcion-recomendado{background:#3342D6;color:#fff}
html.dark body.tv2 .cuenta-destino-grid span,html.dark body.tv2 .pago-detalle-card span,html.dark body.tv2 .login-opcion span{color:#D5DBF7}
html.dark body.tv2 .login-opcion span.login-opcion-recomendado{color:#fff}

/* Variables heredadas que no estaban definidas (devolvian superficies/colores vacios) */
body.tv2{--tinte-a:rgba(74,92,255,.10);--tinte-b:rgba(123,92,255,.12);--tinte-c:rgba(14,159,119,.12);--color-surface:var(--glass-3);--color-surface-soft:var(--glass-2);--color-background-soft:var(--glass);--color-border-strong:var(--line-2);--color-error-soft:rgba(217,56,81,.12);--color-info:#3342D6;--color-info-soft:rgba(74,92,255,.12);--color-warning-soft:rgba(255,184,48,.18);--color-primary-light:#7B8CFF;--container-width:1180px;--radius-xl:28px;--ink:var(--tx);--premium:var(--vio);--r-btn:999px;--tono:var(--tx2)}
html.dark body.tv2{--tinte-a:rgba(165,180,255,.16);--tinte-b:rgba(190,160,255,.16);--tinte-c:rgba(110,231,183,.14);--color-error-soft:rgba(255,143,163,.16);--color-info:#B4C0FF;--color-info-soft:rgba(165,180,255,.16);--color-warning-soft:rgba(255,196,107,.18)}
body.tv2 .legal p,body.tv2 .legal li{color:var(--tx)}
body.tv2 .ganador-nota,body.tv2 .ganador-nota span{color:rgba(255,255,255,.88)}
body.tv2 .legal-documento p,body.tv2 .legal-documento li{color:var(--tx)}
body.tv2 .legal-documento a{color:#3342D6;text-decoration:underline}
html.dark body.tv2 .legal-documento a{color:#B4C0FF}
body.tv2 b.cliente-ahorro{color:#0A6F52}
html.dark body.tv2 b.cliente-ahorro{color:#6EE7B7}

/* Pedido / evento */
body.tv2 .pedido-whatsapp,body.tv2 a.pedido-boton.pedido-whatsapp{background:#0B7A3E;color:#fff;border-color:#0B7A3E}
body.tv2 .pedido-progreso-exito{background:var(--tinte-c);color:var(--ok);border:1px solid rgba(14,159,119,.4)}
html.dark body.tv2 .pedido-progreso-exito{color:#6EE7B7}
body.tv2 .pedido-icono{color:var(--ok)}
body.tv2 .pedido-paso.paso-completado .pedido-paso-circulo{background:#0A7A5A;color:#fff;border-color:#0A7A5A}
html.dark body.tv2 .pedido-paso.paso-completado .pedido-paso-circulo{background:#6EE7B7;color:#04281d;border-color:#6EE7B7}
body.tv2 .producto-pedido-cantidad,body.tv2 time{color:var(--tx2)}
body.tv2 .producto-pedido-precio{color:var(--tx)}
body.tv2 .catalogo-contador{color:var(--tx);background:var(--glass-3)}
body.tv2 .evento-chip{background:rgba(0,0,0,.42);color:#fff;border-color:rgba(255,255,255,.4)}
body.tv2 .tag.prem{background:rgba(123,92,255,.2);color:#4B2FC0}
html.dark body.tv2 .tag.prem{background:rgba(140,110,255,.3);color:#E3DBFF}
body.tv2 .estado-pagina-codigo{color:#3342D6}
html.dark body.tv2 .estado-pagina-codigo{color:#B4C0FF}
html.dark body.tv2 .estado-pagina p{color:var(--tx2)}
body.tv2 .pedido-icono,body.tv2 .pedido-progreso-exito{color:#075E45}
html.dark body.tv2 .pedido-icono,html.dark body.tv2 .pedido-progreso-exito{color:#6EE7B7}
body.tv2 .estado-pedido.completado{background:#D6F5E8;color:#075E45;border-color:#8FD8BC}
html.dark body.tv2 .estado-pedido.completado{background:rgba(110,231,183,.18);color:#6EE7B7;border-color:rgba(110,231,183,.45)}
body.tv2 .tag.prem{background:#ECE6FF;color:#3B24A8}
html.dark body.tv2 .tag.prem{background:rgba(32,24,84,.95);color:#E3DBFF}
body.tv2 .catalogo-contador{background:#fff;color:#1c2250}
html.dark body.tv2 .catalogo-contador{background:rgba(20,26,70,.92);color:#fff}
body.tv2 .evento-pagina small{color:inherit;opacity:1}
body.tv2 .catalogo-bloque-destacada .catalogo-contador,body.tv2 .catalogo-contador{background:rgba(15,20,60,.88)!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important}
html.dark body.tv2 .logo-mant{filter:invert(1) brightness(1.15)}
body.tv2 .vacio.glass{background:var(--glass-3);border:1px solid var(--line-2)}
body.tv2 .vacio .kick{color:#3342D6}
html.dark body.tv2 .vacio .kick{color:#B4C0FF}
body.tv2 .vacio p{color:var(--tx2)}
body.tv2 .vacio h1{color:var(--tx)}
html.dark body.tv2 .vacio.glass{background:rgba(14,18,52,.8)}
html.dark body.tv2 .vacio p{color:#D5DBF7}
body.tv2 .cnt,body.tv2 .nov-go{background:linear-gradient(135deg,#2F3FD8,#6A3FE0)!important;color:#fff!important}
body.tv2 .canjear-pagina span,body.tv2 .carrito-vacio span{color:var(--tx2)}
html.dark body.tv2 .canjear-pagina span{color:#D5DBF7}

/* Checkout con membresia verificada */
body.tv2 .membresia-sesion-btn{background:var(--glass-3);color:var(--tx);border:1px solid var(--line-2)}
body.tv2 .membresia-sesion-btn-salir{color:var(--tx2)}
body.tv2 .resumen-premium{background:rgba(123,92,255,.16);color:var(--tx);border:1px solid rgba(123,92,255,.4)}
body.tv2 .resumen-premium span{color:var(--tx)}
body.tv2 .precio-descuento,body.tv2 .precio-descuento s{color:var(--tx2)}
body.tv2 .premium-verificada-icono{background:#0A7A5A;color:#fff}
body.tv2 .premium-cuenta small,body.tv2 .premium-cuenta-datos small,body.tv2 .checkout-premium-cuenta-resumen small{color:var(--tx2)}
body.tv2 .premium-cuenta strong,body.tv2 .checkout-premium-cuenta-resumen strong{color:var(--tx)}
html.dark body.tv2 .premium-datos-confirmados,html.dark body.tv2 .premium-verificada{background:rgba(110,231,183,.1);border-color:rgba(110,231,183,.4)}
body.tv2 .premium-verificada small{color:#075E45!important}
html.dark body.tv2 .premium-verificada small{color:#9CF0CB!important}
body.tv2 .checkout-producto small.precio-descuento,body.tv2 .checkout-producto small.precio-descuento s{color:var(--tx2)!important}
html.dark body.tv2 .checkout-producto small.precio-descuento,html.dark body.tv2 .checkout-producto small.precio-descuento s{color:#D5DBF7!important}
body.tv2 .premium-cuenta small{opacity:1}

/* Movil estrecho: ningun boton fuerza el ancho de la pagina */
@media(max-width:560px){
  body.tv2 .btn{white-space:normal;text-align:center;line-height:1.25;padding-top:10px;padding-bottom:10px;max-width:100%}
  body.tv2 .hero-cta .btn,body.tv2 .ayuda .btn{width:100%}
}
html body.tv2{overflow-x:clip}
@media(max-width:560px){
  body.tv2 .hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  body.tv2 .hero-stats .chip-stat{min-width:0;white-space:normal;padding:9px 12px;font-size:13px;flex-wrap:wrap;gap:2px 6px}
  body.tv2 .hero-stats .chip-stat:last-child:nth-child(odd){grid-column:1/-1}
}

/* =====================================================================
   PORTADA "OFICIAL" (direccion D): barra de confianza, oferta principal con arte,
   accesos por categoria con arte real, tarjetas de producto con disco de luz y precio Premium dorado.
   ===================================================================== */
body.tv2{--acc:#4A5CFF;--acc2:#7B5CFF;--oro:#F3A712;--grad:linear-gradient(135deg,#3C78FF 0%,#6A55FF 55%,#A24DFF 100%)}
/* ---- confianza ---- */
body.tv2 .trust2{display:flex;gap:10px 24px;flex-wrap:wrap;justify-content:center;margin:18px auto 0;font:700 13.5px/1.2 "DM Sans",sans-serif;color:var(--tx2)}
body.tv2 .trust2 span{display:inline-flex;align-items:center;gap:7px}
body.tv2 .trust2 svg{width:18px;height:18px;fill:none;stroke:var(--mint);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
/* ---- hero ---- */
body.tv2 .hero2{display:grid;grid-template-columns:1.65fr 1fr;gap:18px;margin-top:22px}
body.tv2 .hero2 .main{position:relative;border-radius:34px;padding:44px 46px;min-height:390px;display:flex;flex-direction:column;justify-content:center;overflow:visible;background:linear-gradient(120deg,rgba(255,255,255,.74),rgba(255,255,255,.42) 60%,rgba(255,255,255,.2))}
body.tv2 .hero2 .main:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(520px 340px at 88% 40%,rgba(255,176,60,.5),transparent 70%),radial-gradient(420px 300px at 70% 92%,rgba(123,92,255,.28),transparent 70%);pointer-events:none}
body.tv2 .hero2 .main>*{position:relative}
body.tv2 .hero2 .main>.badge,body.tv2 .hero2 .main>h1,body.tv2 .hero2 .main>p{max-width:52%}
body.tv2 .hero2 .badge{display:inline-flex;align-items:center;gap:7px;width:fit-content;font:800 12px Manrope,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#7A4B00;background:#FFE7A8;border:1px solid #F5CE70;border-radius:999px;padding:6px 12px}
body.tv2 .hero2 .badge svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
body.tv2 .hero2 h1{font-size:clamp(34px,3.7vw,52px);line-height:1.04;letter-spacing:-.03em;font-weight:800;margin:16px 0 10px;color:var(--tx)}
body.tv2 .hero2 h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
body.tv2 .hero2 .main p{font-size:17px;color:var(--tx2);max-width:34ch}
body.tv2 .hero2 .cta{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap;align-items:center}
body.tv2 .hero2 .btn{height:54px;padding:0 26px;font-size:16px}
body.tv2 .hero2 .btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.tv2 .hero2 .art{position:absolute;right:-18px;top:50%;transform:translateY(-52%);width:min(44%,400px);filter:drop-shadow(0 34px 34px rgba(40,40,110,.35));animation:fl2 6s ease-in-out infinite;z-index:2}
@keyframes fl2{50%{transform:translateY(-56%) rotate(1.5deg)}}
@media(prefers-reduced-motion:reduce){body.tv2 .hero2 .art{animation:none}}
body.tv2 .hero2 .coin{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFF1A8,#F3A712 70%);box-shadow:0 6px 12px rgba(150,90,0,.35);pointer-events:none}
body.tv2 .hero2 .c1{width:26px;height:26px;right:40%;top:16%}body.tv2 .hero2 .c2{width:16px;height:16px;right:8%;bottom:14%}
body.tv2 .hero2 .side{display:grid;grid-template-rows:1fr 1fr;gap:18px}
body.tv2 .hero2 .sc{position:relative;border-radius:28px;padding:22px 24px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:186px;color:var(--tx)}
body.tv2 .hero2 .sc small{font:800 11px Manrope;letter-spacing:.12em;text-transform:uppercase;color:var(--tx3)}
body.tv2 .hero2 .sc h3{font-size:21px;letter-spacing:-.02em;line-height:1.15;margin:6px 0 4px;max-width:15ch}
body.tv2 .hero2 .sc p{font-size:14px;color:var(--tx2);max-width:22ch}
body.tv2 .hero2 .sc .go{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font:800 14px Manrope;color:#3342D6;width:fit-content}
body.tv2 .hero2 .sc .go svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.tv2 .hero2 .sc.ev img{position:absolute;right:-6px;bottom:-4px;width:44%;border-radius:18px 0 0 0;box-shadow:-10px -6px 30px rgba(40,40,110,.25)}
body.tv2 .hero2 .sc.pm:after{content:"";position:absolute;right:-30px;top:-30px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(255,196,60,.55),transparent 70%);pointer-events:none}
body.tv2 .hero2 .sc .cr{position:absolute;right:20px;top:22px;width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:var(--grad);color:#fff;box-shadow:0 12px 26px rgba(100,80,230,.4);z-index:1}
body.tv2 .hero2 .sc .cr svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
/* ---- secciones ---- */
body.tv2 .sec{margin-top:52px}
body.tv2 .sec .sh{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
body.tv2 .sec .sh h2{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.025em;font-weight:800}
body.tv2 .sec .sh p{color:var(--tx3);font-size:14.5px;margin-top:2px}
body.tv2 .tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
body.tv2 .tile{border-radius:24px;padding:16px 14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;background:var(--glass);border:1px solid var(--line);box-shadow:var(--sh);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:.2s;color:var(--tx)}
body.tv2 .tile:hover{transform:translateY(-4px);background:var(--glass-2)}
body.tv2 .tile img{height:76px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 12px 12px rgba(40,40,110,.28));margin-bottom:8px}
body.tv2 .tile b{font:800 15px Manrope;letter-spacing:-.01em}
body.tv2 .tile small{font-size:12.5px;color:var(--tx3);font-weight:600}
body.tv2 .cat-nav{margin-top:34px}
/* ---- tarjetas de producto ---- */
body.tv2 .producto-card{border-radius:28px;padding:14px 14px 16px;transition:.2s}
body.tv2 .producto-card:hover{transform:translateY(-5px)}
body.tv2 .producto-card .card-img{height:178px;border-radius:22px;display:grid;place-items:center;border:0;background:radial-gradient(circle at 50% 62%,rgba(255,255,255,.95),rgba(255,255,255,.35) 55%,rgba(255,255,255,0) 72%),linear-gradient(160deg,rgba(150,170,255,.28),rgba(210,160,255,.18))}
body.tv2 .producto-card .card-img img{max-height:136px;max-width:76%;object-fit:contain;filter:drop-shadow(0 16px 14px rgba(40,40,110,.32));transition:.3s}
body.tv2 .producto-card:hover .card-img img{transform:scale(1.08) rotate(-3deg)}
body.tv2 .producto-card h3{font:800 18px/1.2 Manrope;letter-spacing:-.02em;margin:14px 6px 4px}
body.tv2 .producto-card .desc{margin:0 6px 8px}
body.tv2 .producto-card .tag{top:16px;left:16px;font:800 11px Manrope;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--grad);border:0;box-shadow:0 6px 14px rgba(90,80,230,.35)}
body.tv2 .producto-card .tag.lim{background:linear-gradient(135deg,#F3A712,#E0701A)}
body.tv2 .producto-card .tag.prem{background:linear-gradient(135deg,#7B5CFF,#A24DFF);color:#fff}
body.tv2 .producto-card-footer{padding:0 6px}
body.tv2 .producto-precios .pr-gen strong{font:800 27px Manrope;letter-spacing:-.03em;color:var(--tx)}
body.tv2 .producto-precios .pr-gen .bdg{display:none}
body.tv2 .producto-precios .pr-prem{display:inline-flex;align-items:center;gap:6px;margin-top:6px;background:#FFEFC2;border:1px solid #F5D98A;border-radius:999px;padding:3px 11px 3px 8px;width:fit-content}
body.tv2 .producto-precios .pr-prem .bdg{background:none;color:#8A5600;padding:0;font:800 10.5px Manrope;letter-spacing:.04em;border:0}
body.tv2 .producto-precios .pr-prem b{font:800 13.5px "DM Sans";color:#7A4B00}
body.tv2 .tv-add .btn,body.tv2 .btn-block{height:48px}
body.tv2 .producto-card .tv-add button{background:var(--grad);color:#fff;border:0;box-shadow:0 10px 22px rgba(90,80,230,.34),inset 0 1px 0 rgba(255,255,255,.3)}
/* ---- GO Premium ---- */
body.tv2 .prem2{border-radius:32px;padding:34px 38px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(255,255,255,.72),rgba(255,236,190,.55));color:var(--tx)}
body.tv2 .prem2 .cr{width:84px;height:84px;border-radius:28px;display:grid;place-items:center;background:var(--grad);color:#fff;box-shadow:0 16px 34px rgba(100,80,230,.4)}
body.tv2 .prem2 .cr svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}
body.tv2 .prem2 h2{font-size:28px;letter-spacing:-.025em;font-weight:800}
body.tv2 .prem2 p{color:var(--tx2);margin-top:4px;max-width:52ch}
body.tv2 .prem2 .cmp{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
body.tv2 .prem2 .cmp span{font:700 13.5px "DM Sans";padding:5px 12px;border-radius:999px;background:var(--glass-3);border:1px solid var(--line-2)}
body.tv2 .prem2 .cmp b{color:var(--ok)}
body.tv2 .prem2 .btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
/* ---- pasos ---- */
body.tv2 .pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
body.tv2 .paso2{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"n h" "n p";gap:2px 16px;align-items:start;padding:22px;border-radius:26px;text-align:left}
body.tv2 .paso2 .n{grid-area:n;width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:var(--grad);color:#fff;font:800 19px Manrope;box-shadow:0 10px 22px rgba(90,80,230,.32)}
body.tv2 .paso2 h3{grid-area:h;font:800 18px Manrope;margin:0}body.tv2 .paso2 p{grid-area:p;color:var(--tx2);font-size:15px;margin:0}
/* ---- oscuro ---- */
html.dark body.tv2 .hero2 .main{background:linear-gradient(120deg,rgba(255,255,255,.12),rgba(255,255,255,.05) 60%,rgba(255,255,255,.02))}
html.dark body.tv2 .hero2 .badge{background:rgba(255,196,60,.18);border-color:rgba(255,196,60,.45);color:#FFD666}
html.dark body.tv2 .hero2 .sc .go{color:#B4C0FF}
html.dark body.tv2 .hero2 .art{filter:drop-shadow(0 34px 34px rgba(0,0,0,.6))}
html.dark body.tv2 .prem2{background:linear-gradient(120deg,rgba(255,255,255,.1),rgba(255,196,60,.12))}
html.dark body.tv2 .producto-card .card-img{background:radial-gradient(circle at 50% 62%,rgba(255,255,255,.22),rgba(255,255,255,.05) 58%,transparent 74%),linear-gradient(160deg,rgba(120,140,255,.22),rgba(190,120,255,.14))}
html.dark body.tv2 .producto-precios .pr-prem{background:rgba(255,196,60,.16);border-color:rgba(255,196,60,.4)}
html.dark body.tv2 .producto-precios .pr-prem .bdg,html.dark body.tv2 .producto-precios .pr-prem b{color:#FFD666}
html.dark body.tv2 .tile img{filter:drop-shadow(0 12px 12px rgba(0,0,0,.5))}
/* ---- movil ---- */
@media(max-width:980px){
  body.tv2 .hero2{grid-template-columns:1fr}body.tv2 .hero2 .side{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  body.tv2 .prem2{grid-template-columns:1fr;gap:16px}body.tv2 .pasos{grid-template-columns:1fr}
}
@media(max-width:640px){
  body.tv2 .trust2{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;margin-inline:-14px;padding:2px 14px 6px;gap:18px;scrollbar-width:none}body.tv2 .trust2 span{white-space:nowrap}
  body.tv2 .hero2 .main{padding:26px 22px 30px;min-height:0;border-radius:28px}
  body.tv2 .hero2 .main>.badge,body.tv2 .hero2 .main>h1,body.tv2 .hero2 .main>p{max-width:none}
  body.tv2 .hero2 h1{font-size:34px}body.tv2 .hero2 .main p{font-size:15.5px;max-width:26ch}
  body.tv2 .hero2 .art{position:relative;right:auto;top:auto;transform:none;width:64%;margin:-6px -8px -22px auto;animation:none;order:-1;align-self:flex-end}
  body.tv2 .hero2 .cta{flex-direction:column;align-items:stretch}body.tv2 .hero2 .btn{width:100%;justify-content:center;height:52px}
  body.tv2 .hero2 .side{grid-template-columns:1fr}body.tv2 .hero2 .sc{min-height:150px}
  body.tv2 .tiles{grid-template-columns:repeat(3,1fr);gap:10px}body.tv2 .tile{padding:12px 6px;border-radius:20px}body.tv2 .tile img{height:54px}body.tv2 .tile b{font-size:12.5px}body.tv2 .tile small{display:none}
  body.tv2 .producto-card{padding:9px 9px 12px;border-radius:24px}body.tv2 .producto-card .card-img{height:128px;border-radius:18px}body.tv2 .producto-card .card-img img{max-height:96px}
  body.tv2 .producto-card h3{font-size:15px}body.tv2 .producto-precios .pr-gen strong{font-size:21px}body.tv2 .producto-precios .pr-prem b{font-size:12px}body.tv2 .producto-card .tag{font-size:9.5px;top:12px;left:12px}
  body.tv2 .sec{margin-top:40px}body.tv2 .prem2{padding:24px 20px;border-radius:28px}body.tv2 .prem2 .cr{width:64px;height:64px;border-radius:22px}body.tv2 .prem2 .cr svg{width:34px;height:34px}
}
body.tv2 section.hero2,body.tv2 section.sec{padding-block:0}
body.tv2 .nov{margin-top:34px}
body.tv2 .cat-nav{display:none}
html.dark body.tv2 .hero2 h1 em{background:linear-gradient(135deg,#9CB8FF,#E0A8FF);-webkit-background-clip:text;background-clip:text}
body.tv2 .hero2 .sc.ev>:not(img){max-width:58%}
@media(min-width:641px){body.tv2 .hero2 .sc.ev>:not(img){max-width:62%}}
body.tv2 .producto-card .tag.lim{background:linear-gradient(135deg,#C75B08,#A33F00)!important;color:#fff!important;border:0!important}
body.tv2 .producto-precios .pr-prem b{color:#5E3600}
body.tv2 .producto-precios .pr-prem .bdg{color:#6B4000}
body.tv2 .producto-card .tag.lim{background:linear-gradient(135deg,#B04F05,#8F3500)!important}
body.tv2 .producto-card .tag.prem{background:linear-gradient(135deg,#5B3FD0,#8A3FC8)}
body.tv2 .btn-pri,body.tv2 .producto-card .tv-add button{background:linear-gradient(135deg,#2F5FE8,#5B45E8 55%,#8A3FD0)}
body.tv2 .producto-precios .pr-prem{background:#FFE9B0}
body.tv2 .producto-precios .pr-prem b{color:#4F2D00}
html:not(.dark) body.tv2 .producto-precios .pr-prem,html:not(.dark) body.tv2 .producto-precios .pr-prem *{color:#4F2D00!important}html:not(.dark) body.tv2 .catalogo-contador{color:#0E1330!important;background:#fff!important}

/* ===== Escala compacta (escritorio): menos grande, mas contenido a la vista ===== */
@media(min-width:641px){
  body.tv2{font-size:15px}
  body.tv2 .wrap{max-width:1280px}
  body.tv2 .header-in{height:56px}
  body.tv2 .trust2{margin-top:12px;font-size:12.5px}
  body.tv2 .hero2{margin-top:14px;gap:14px}
  body.tv2 .hero2 .main{min-height:290px;padding:30px 36px;border-radius:28px}
  body.tv2 .hero2 h1{font-size:clamp(28px,2.9vw,40px);margin:12px 0 8px}
  body.tv2 .hero2 .main p{font-size:15px}
  body.tv2 .hero2 .btn{height:46px;padding:0 22px;font-size:14.5px}
  body.tv2 .hero2 .cta{margin-top:18px}
  body.tv2 .hero2 .art{width:min(38%,330px)}
  body.tv2 .hero2 .side{gap:14px}
  body.tv2 .hero2 .sc{min-height:138px;padding:16px 20px;border-radius:24px}
  body.tv2 .hero2 .sc h3{font-size:17px;max-width:18ch}
  body.tv2 .hero2 .sc p{font-size:13px}
  body.tv2 .hero2 .sc .go{margin-top:8px;font-size:13px}
  body.tv2 .hero2 .sc .cr{width:48px;height:48px;border-radius:16px;top:16px;right:16px}
  body.tv2 .hero2 .sc .cr svg{width:25px;height:25px}
  body.tv2 .sec{margin-top:34px}
  body.tv2 .sec .sh{margin-bottom:12px}
  body.tv2 .sec .sh h2{font-size:clamp(20px,2vw,25px)}
  body.tv2 .sec .sh p{font-size:13.5px}
  body.tv2 .tiles{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
  body.tv2 .tile{padding:12px 10px;border-radius:20px}
  body.tv2 .tile img{height:54px;margin-bottom:5px}
  body.tv2 .tile b{font-size:13.5px}body.tv2 .tile small{font-size:11.5px}
  body.tv2 .blq{padding-block:24px 8px}
  body.tv2 .blq-h h2{font-size:clamp(20px,2vw,26px)}
  body.tv2 .grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}
  body.tv2 .producto-card{padding:10px 10px 12px;border-radius:22px}
  body.tv2 .producto-card .card-img{height:132px;border-radius:17px}
  body.tv2 .producto-card .card-img img{max-height:100px}
  body.tv2 .producto-card h3{font-size:15px;margin:10px 4px 2px}
  body.tv2 .producto-card-footer{padding:0 4px}
  body.tv2 .producto-precios .pr-gen strong{font-size:21px}
  body.tv2 .producto-precios .pr-prem{padding:2px 9px 2px 7px;margin-top:4px}body.tv2 .producto-precios .pr-prem b{font-size:12px}
  body.tv2 .producto-card .tag{top:12px;left:12px;font-size:10px;padding:3px 9px}
  body.tv2 .producto-card .tv-add button,body.tv2 .tv-add .btn,body.tv2 .btn-block{height:40px;font-size:14px}
  body.tv2 .qty-s{height:40px}
  body.tv2 .prem2{padding:22px 28px;border-radius:26px;gap:20px}
  body.tv2 .prem2 .cr{width:58px;height:58px;border-radius:20px}body.tv2 .prem2 .cr svg{width:30px;height:30px}
  body.tv2 .prem2 h2{font-size:21px}body.tv2 .prem2 p{font-size:14px}
  body.tv2 .paso2{padding:16px;border-radius:20px}body.tv2 .paso2 .n{width:38px;height:38px;border-radius:13px;font-size:16px}body.tv2 .paso2 h3{font-size:16px}body.tv2 .paso2 p{font-size:14px}
  body.tv2 .nov{margin-top:22px}
  body.tv2 .bene-grid a{padding:12px 14px}
}
@media(max-width:640px){
  body.tv2 .hero2 h1{font-size:28px}body.tv2 .hero2 .main{padding:20px 18px 22px}body.tv2 .hero2 .art{width:52%}
  body.tv2 .sec{margin-top:30px}body.tv2 .sec .sh h2{font-size:21px}
  body.tv2 .producto-card .card-img{height:112px}body.tv2 .producto-card .card-img img{max-height:84px}
  body.tv2 .producto-card .tv-add button,body.tv2 .qty-s{height:40px}
  body.tv2 .hero2 .btn{height:46px}
}
@media(min-width:900px){body.tv2 .bn{max-width:900px;margin-inline:auto}body.tv2 .nov-c{max-width:900px;margin-inline:auto}}

/* ===== Movil compacto (portada) ===== */
@media(max-width:640px){
  body.tv2{font-size:14px}
  body.tv2 .header-in{height:48px;padding:0 8px 0 14px}
  body.tv2 .logo-imagen{height:24px}
  body.tv2 .aviso-tema,body.tv2 .franja{font-size:12.5px;padding:8px 12px;border-radius:16px;margin-top:8px}
  body.tv2 .trust2{font-size:12px;margin-top:8px;gap:14px}body.tv2 .trust2 svg{width:15px;height:15px}
  body.tv2 .hero2{margin-top:10px;gap:10px}
  body.tv2 .hero2 .main{display:block;padding:18px 16px 18px;border-radius:24px;min-height:0}
  body.tv2 .hero2 .art{position:absolute;right:-6px;top:10px;transform:none;width:38%;max-width:150px;margin:0;order:0}
  body.tv2 .hero2 .coin{display:none}
  body.tv2 .hero2 .main>.badge{max-width:60%;font-size:10px;padding:4px 9px}
  body.tv2 .hero2 .main>h1{max-width:62%;font-size:23px;margin:10px 0 6px;line-height:1.08}
  body.tv2 .hero2 .main>p{max-width:62%;font-size:12.5px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  body.tv2 .hero2 .cta{flex-direction:row;gap:8px;margin-top:14px}
  body.tv2 .hero2 .btn{flex:1;height:42px;font-size:13.5px;padding:0 10px;width:auto}
  body.tv2 .hero2 .btn+.btn{flex:0 0 auto}
  body.tv2 .hero2 .btn svg{display:none}
  body.tv2 .hero2 .side{grid-template-columns:1fr 1fr;gap:10px}
  body.tv2 .hero2 .sc{min-height:0;padding:12px 14px;border-radius:20px}
  body.tv2 .hero2 .sc small{font-size:9.5px}
  body.tv2 .hero2 .sc h3{font-size:14px;margin:3px 0 0;max-width:none}
  body.tv2 .hero2 .sc p{display:none}
  body.tv2 .hero2 .sc .go{font-size:12px;margin-top:6px}
  body.tv2 .hero2 .sc.ev img{display:none}
  body.tv2 .hero2 .sc.ev>:not(img){max-width:none}
  body.tv2 .hero2 .sc .cr{display:none}
  body.tv2 .sec{margin-top:22px}
  body.tv2 .sec .sh{margin-bottom:8px}body.tv2 .sec .sh h2{font-size:18px}body.tv2 .sec .sh p{display:none}
  body.tv2 .tiles{display:flex;overflow-x:auto;gap:8px;margin-inline:-14px;padding:2px 14px 8px;scrollbar-width:none;scroll-snap-type:x proximity}
  body.tv2 .tile{flex:0 0 92px;padding:8px 4px;border-radius:16px;scroll-snap-align:start}
  body.tv2 .tile img{height:40px;margin-bottom:3px}body.tv2 .tile b{font-size:11.5px;line-height:1.15}
  body.tv2 .nov{margin-top:14px}
  body.tv2 .bene-grid{gap:8px}body.tv2 .bene-grid a{padding:10px 12px}
  body.tv2 .blq{padding-block:16px 0}
  body.tv2 .blq-h h2{font-size:19px}body.tv2 .blq-h p{display:none}body.tv2 .blq-h{margin-bottom:8px}
  body.tv2 .grid{gap:8px}
  body.tv2 .producto-card{padding:7px 7px 9px;border-radius:18px}
  body.tv2 .producto-card .card-img{height:92px;border-radius:14px}
  body.tv2 .producto-card .card-img img{max-height:70px}
  body.tv2 .producto-card h3{font-size:13px;margin:7px 3px 0;line-height:1.2}
  body.tv2 .producto-card .desc{display:none}
  body.tv2 .producto-card-footer{padding:0 3px}
  body.tv2 .producto-precios .pr-gen strong{font-size:17px}
  body.tv2 .producto-precios .pr-prem{margin-top:3px}body.tv2 .producto-precios .pr-prem .bdg{font-size:9px}body.tv2 .producto-precios .pr-prem b{font-size:11px}
  body.tv2 .producto-precios .pts{font-size:11px}
  body.tv2 .producto-card .tag{top:8px;left:8px;font-size:8.5px;padding:2px 7px}
  body.tv2 .producto-card .tv-add button,body.tv2 .qty-s{height:36px;font-size:13px;margin-top:7px}
  body.tv2 .prem2{padding:16px 16px;gap:10px;border-radius:22px}
  body.tv2 .prem2 .cr{display:none}body.tv2 .prem2 h2{font-size:17px}body.tv2 .prem2 p{font-size:12.5px}
  body.tv2 .prem2 .cmp{margin-top:8px;gap:6px}body.tv2 .prem2 .cmp span{font-size:11.5px;padding:3px 9px}
  body.tv2 .prem2 .btn{height:42px;font-size:13.5px;width:100%;justify-content:center}
  body.tv2 .pasos{gap:8px}body.tv2 .paso2{padding:12px 14px;border-radius:18px;gap:0 12px}body.tv2 .paso2 .n{width:32px;height:32px;border-radius:11px;font-size:14px}body.tv2 .paso2 h3{font-size:14px}body.tv2 .paso2 p{font-size:12.5px}
}
@media(max-width:640px){
  body.tv2 .producto-precios .pr-prem{white-space:nowrap;padding:2px 8px 2px 6px;gap:4px}
  body.tv2 .producto-precios .pr-prem .bdg{font-size:0}body.tv2 .producto-precios .pr-prem .bdg:before{content:"Premium";font-size:9px;font-weight:800;letter-spacing:.03em}
  body.tv2 .producto-card h3{min-height:0;margin-bottom:4px}
  body.tv2 .producto-precios{gap:0}
  body.tv2 .producto-card .tv-add button,body.tv2 .qty-s{margin-top:6px}
  body.tv2 .esp-sub{padding:10px;border-radius:20px}body.tv2 .esp-sub header{margin-bottom:8px}body.tv2 .esp-sub h3{font-size:16px}
  body.tv2 .blq-n{display:none}
}
