:root{--bg:#F4F6F9;--txt:#1F2937;--muted:#6B7280;--promo:#D6246E;--p-soft:color-mix(in srgb,var(--p) 12%,#fff)}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;background:var(--bg);color:var(--txt);line-height:1.5}
h1,h2,h3,h4,.logo{font-family:'Poppins','Inter',sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}

.top{background:var(--p);color:#fff;position:sticky;top:0;z-index:50}
.top .wrap{display:flex;align-items:center;height:76px;gap:26px}
.logo{font-size:32px;font-weight:700;letter-spacing:-.5px;color:#fff}
.logo img{height:40px}
.nav{display:flex;gap:24px;flex:1;font-weight:600;font-size:15px;text-transform:uppercase;font-family:'Poppins',sans-serif}
.nav a{padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}
.nav a:hover,.nav a.on{border-color:#fff}
.btn-area{border:2px solid #fff;border-radius:999px;padding:9px 24px;font-weight:600;white-space:nowrap;transition:.15s}
.btn-area:hover{background:#fff;color:var(--p)}
.cesta-ic{position:relative;font-size:22px}
.cesta-ic b{position:absolute;top:-6px;right:-10px;background:#fff;color:var(--p);font-size:11px;border-radius:999px;padding:0 6px;line-height:17px}
.ayuda-bar{background:#fff;border-bottom:1px solid #eef0f3;font-size:14px}
.ayuda-bar .wrap{display:flex;justify-content:flex-end;gap:12px;height:40px;align-items:center;color:var(--s)}
.ayuda-bar b{color:var(--p);font-size:17px}
.ayuda-bar .fa-whatsapp{color:#25D366;font-size:20px;vertical-align:middle}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 26px;font-weight:600;font-size:15px;border:2px solid var(--p);transition:.15s;cursor:pointer;font-family:inherit;white-space:nowrap}
.btn-p{background:var(--p);color:#fff}
.btn-p:hover{filter:brightness(.93)}
.btn-o{background:#fff;color:var(--txt)}
.btn-o:hover{background:var(--p);color:#fff}
.btn-w{background:#fff;color:var(--p);border-color:#fff}
.btn-ow{background:transparent;color:#fff;border-color:#fff}
.btn-ow:hover{background:#fff;color:var(--d)}
.acciones{display:flex;gap:12px;flex-wrap:wrap}

.hero{background:linear-gradient(120deg,var(--p),var(--d));color:#fff;border-radius:24px;margin:26px 0;padding:52px;display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:center;overflow:hidden}
.hero h1{font-size:44px;line-height:1.12;margin-bottom:12px}
.hero p{opacity:.9;font-size:18px;margin-bottom:26px;max-width:560px}
.hero-ic{font-size:160px;opacity:.16;text-align:center}
.hero.banner{background-image:linear-gradient(90deg,rgba(15,23,42,.8),rgba(15,23,42,.1)),var(--bg);background-size:cover;background-position:center;min-height:340px;grid-template-columns:1fr}

.cats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin:6px 0 40px}
.cat{background:#fff;border-radius:18px;padding:18px 10px;text-align:center;box-shadow:0 2px 10px rgba(15,23,42,.05);transition:.15s}
.cat:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(15,23,42,.1)}
.cat i{width:54px;height:54px;border-radius:16px;background:var(--p-soft);color:var(--p);display:inline-flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:10px}
.cat span{display:block;font-weight:600;font-size:14px;line-height:1.25}

.sec-t{font-size:32px;font-weight:500;margin:6px 0 26px}
.sec-t small{font-size:14px;text-transform:uppercase;color:var(--muted);font-weight:500;margin-left:6px;font-family:'Inter',sans-serif}

.planes{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:30px;margin-bottom:50px}
.plan{background:#fff;border-radius:20px;box-shadow:0 4px 20px rgba(15,23,42,.08);display:flex;flex-direction:column;overflow:hidden;border:1px solid #eef0f3}
.plan-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.plan-tag{background:var(--s);color:#fff;font-weight:600;font-size:14px;text-transform:uppercase;padding:10px 18px;border-radius:0 0 16px 0;font-family:'Poppins',sans-serif;letter-spacing:.2px}
.plan-etq{margin:10px 14px 0 0;font-size:12px;font-weight:600;color:var(--p);background:var(--p-soft);padding:4px 10px;border-radius:999px;white-space:nowrap}
.plan-promo{text-align:right;padding:14px 22px 0}
.plan-promo strong{display:block;color:var(--promo);font-style:italic;font-weight:800;font-size:19px;font-family:'Poppins',sans-serif}
.plan-promo small{color:var(--muted);font-size:11px}
.plan-body{padding:16px 26px 0;display:flex;gap:16px;align-items:center;flex:1}
.plan-img{width:84px;flex-shrink:0;border-radius:10px}
.plan-comp{list-style:none;flex:1}
.plan-comp li{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;padding:4px 0;font-size:17px}
.plan-comp i{color:var(--muted);width:22px;text-align:center;font-size:16px}
.c-tit{color:var(--s);font-weight:600}
.c-val{font-style:italic;font-weight:500}
.plan-comp s{color:var(--muted);font-style:italic}
.c-det{font-size:12px;font-style:italic;text-transform:uppercase;color:#374151}
.plan-badge{margin:12px auto 0;background:#F1F3F6;border-radius:8px;padding:5px 14px;font-size:13px;font-weight:500}
.plan-badge b{color:var(--p)}
.plan-precio{text-align:center;color:var(--p);margin:18px 0 6px;font-family:'Poppins',sans-serif;line-height:1}
.plan-precio .ent{font-size:54px;font-weight:700;letter-spacing:-2px}
.plan-precio .dec{font-size:27px;font-weight:600}
.plan-precio .per{font-size:14px;color:var(--muted);font-weight:500;margin-left:3px}
.plan-meta{text-align:center;font-size:12px;color:var(--muted);padding:0 16px}
.plan-btns{display:flex;gap:12px;justify-content:center;padding:18px 22px 24px}
.plan-btns .btn{padding:11px 20px;font-size:14px}

.cobertura{background:#fff;border-radius:22px;box-shadow:0 4px 18px rgba(15,23,42,.06);padding:30px 38px;display:flex;align-items:center;gap:24px;justify-content:space-between;margin-bottom:50px;flex-wrap:wrap}
.cobertura h3{font-size:28px;font-weight:500}
.cobertura form{display:flex;gap:10px;flex:1;max-width:520px}
.input{flex:1;border:1.5px solid #dfe3e8;border-radius:999px;padding:12px 20px;font-size:15px;font-family:inherit;outline:none;min-width:0}
.input:focus{border-color:var(--p)}

.market{background:var(--d);color:#fff;border-radius:24px;padding:42px;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;margin-bottom:50px}
.market h2{font-size:30px;line-height:1.2;margin-bottom:10px}
.market p{opacity:.85;margin-bottom:22px}
.market-cats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.market-cats a{background:rgba(255,255,255,.08);border-radius:14px;padding:14px 16px;display:flex;gap:10px;align-items:center;font-weight:500;transition:.15s}
.market-cats a:hover{background:rgba(255,255,255,.15)}
.market-cats i{color:var(--p);width:20px;text-align:center}

.faqs{margin-bottom:56px}
.faqs details{background:#fff;border-radius:14px;margin-bottom:10px;padding:16px 20px;box-shadow:0 1px 6px rgba(15,23,42,.04)}
.faqs summary{font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary i{color:var(--p);transition:.2s}
.faqs details[open] summary i{transform:rotate(45deg)}
.faqs details p{margin-top:10px;color:#4B5563}

.page-h{margin:30px 0 16px}
.page-h h1{font-size:34px;font-weight:600}
.page-h p{color:var(--muted)}
.chips{display:flex;gap:10px;overflow-x:auto;padding:4px 0 22px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{white-space:nowrap;background:#fff;border:1.5px solid #e5e7eb;border-radius:999px;padding:9px 18px;font-weight:600;font-size:14px;display:inline-flex;gap:8px;align-items:center;transition:.15s}
.chip.on{background:var(--p);border-color:var(--p);color:#fff}

.caja{background:#fff;border-radius:22px;padding:40px;margin:30px 0 50px;box-shadow:0 4px 18px rgba(15,23,42,.06)}
.contenido h1{font-size:30px;margin-bottom:16px}
.contenido p{margin-bottom:12px}
.vacio{text-align:center;padding:60px 20px;grid-column:1/-1}
.vacio i{font-size:54px;color:var(--p);margin-bottom:16px}
.vacio h1,.vacio h2{margin-bottom:8px}
.vacio p{color:var(--muted);margin-bottom:18px}

.foot{background:var(--d);color:#cbd5e1;padding:50px 0 24px;margin-top:20px}
.foot .grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}
.foot h4{color:#fff;font-size:15px;margin-bottom:12px}
.foot a{display:block;padding:3px 0;font-size:14px}
.foot a:hover{color:#fff}
.foot .logo{margin-bottom:8px;display:inline-block}
.foot p{font-size:14px;margin-bottom:6px}
.foot .copy{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:18px;font-size:13px;text-align:center}

.app-top,.bnav{display:none}

@media (max-width:1050px){
  .nav{gap:16px;font-size:13px}
  .cats{grid-template-columns:repeat(3,1fr)}
  .hero{grid-template-columns:1fr}
  .hero-ic{display:none}
  .market{grid-template-columns:1fr}
  .foot .grid{grid-template-columns:1fr 1fr}
}

@media (max-width:768px){
  .top,.ayuda-bar{display:none}
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .wrap{padding:0 14px}
  .app-top{display:flex;position:sticky;top:0;z-index:50;background:var(--p);color:#fff;height:calc(58px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 16px 0;align-items:center;justify-content:space-between;box-shadow:0 2px 12px rgba(0,0,0,.12)}
  .app-top .logo{font-size:25px}
  .app-top .logo img{height:32px}
  .app-top .acts{display:flex;gap:20px;font-size:20px}
  .bnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:#fff;border-top:1px solid #e9ecef;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 16px rgba(15,23,42,.06)}
  .bnav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 0 8px;font-size:11px;font-weight:600;color:var(--muted)}
  .bnav a i{font-size:19px}
  .bnav a.on{color:var(--p)}
  .hero{margin:14px 0 18px;padding:28px 22px;border-radius:20px}
  .hero h1{font-size:27px}
  .hero p{font-size:15px;margin-bottom:18px}
  .hero .btn{flex:1}
  .hero.banner{background-image:linear-gradient(180deg,rgba(15,23,42,.15),rgba(15,23,42,.85)),var(--bgm,var(--bg));min-height:280px;align-items:end}
  .cats{gap:10px;margin-bottom:28px}
  .cat{padding:14px 6px;border-radius:16px}
  .cat i{width:46px;height:46px;font-size:19px;border-radius:14px}
  .cat span{font-size:12px}
  .sec-t{font-size:22px;margin-bottom:14px}
  .sec-t small{display:block;margin:2px 0 0;font-size:12px}
  .planes{grid-template-columns:1fr;gap:16px;margin-bottom:32px}
  .planes.carrusel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -14px 32px;padding:4px 14px 12px;scrollbar-width:none}
  .planes.carrusel::-webkit-scrollbar{display:none}
  .planes.carrusel .plan{flex:0 0 86%;scroll-snap-align:center}
  .plan-body{padding:14px 20px 0}
  .plan-comp li{font-size:15px}
  .plan-precio .ent{font-size:46px}
  .plan-btns{padding:16px 18px 20px}
  .plan-btns .btn{flex:1;padding:11px 12px}
  .cobertura{padding:22px;flex-direction:column;align-items:stretch;margin-bottom:32px}
  .cobertura h3{font-size:20px}
  .cobertura form{flex-direction:column;max-width:none}
  .market{padding:26px 22px;margin-bottom:32px}
  .market h2{font-size:22px}
  .market .btn{flex:1}
  .page-h{margin:18px 0 12px}
  .page-h h1{font-size:24px}
  .caja{padding:24px;margin:16px 0 30px}
  .foot{padding:30px 0 18px}
}

.auth{max-width:460px;margin:34px auto 56px}
.auth.ancho{max-width:640px}
.auth-card{background:#fff;border-radius:24px;padding:36px 32px;box-shadow:0 6px 26px rgba(15,23,42,.08)}
.auth-ic{width:64px;height:64px;border-radius:20px;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 14px}
.auth-card h1{text-align:center;font-size:26px}
.auth-card h2{font-size:20px;margin-bottom:18px}
.sub{text-align:center;color:var(--muted);margin-bottom:24px}
.campo{margin-bottom:16px}
.campo label{display:block;font-weight:600;font-size:14px;margin-bottom:6px}
.campo .input{width:100%;border-radius:14px}
.campo .input:disabled{background:#F3F4F6;color:var(--muted)}
.fila{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.err{display:block;color:#DC2626;font-size:13px;margin-top:5px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin:4px 0 20px;cursor:pointer}
.check input{margin-top:3px;accent-color:var(--p);width:17px;height:17px;flex-shrink:0}
.check a,.alt a{color:var(--p);font-weight:600}
.btn-blq{width:100%}
.alt{text-align:center;margin-top:20px;font-size:14px;color:var(--muted)}
.alerta{border-radius:14px;padding:14px 18px;margin:18px 0 0;font-weight:500;display:flex;gap:10px;align-items:center}
.alerta.ok{background:#ECFDF5;color:#047857}
.alerta.mal{background:#FEF2F2;color:#B91C1C}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:50px}
.tiles form{display:contents}
.tile{background:#fff;border-radius:20px;padding:24px;box-shadow:0 2px 12px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:6px;transition:.15s;text-align:left;border:0;font-family:inherit;font-size:inherit;color:inherit;cursor:pointer}
.tile:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(15,23,42,.1)}
.tile i{width:48px;height:48px;border-radius:14px;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:8px}
.tile b{font-size:17px;font-family:'Poppins',sans-serif}
.tile span{color:var(--muted);font-size:14px}
.tile.salir i{background:#FEF2F2;color:#DC2626}
.volver{display:inline-flex;gap:8px;align-items:center;color:var(--muted);font-weight:600;margin-top:22px}
.dos-col{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;margin-bottom:50px;align-items:start}
@media (max-width:768px){
  .auth{margin:18px auto 30px}
  .auth-card{padding:26px 20px;border-radius:20px}
  .fila{grid-template-columns:1fr}
  .tiles{grid-template-columns:1fr 1fr;gap:12px}
  .tile{padding:18px}
  .tile b{font-size:15px}
  .tile span{font-size:12px}
  .dos-col{grid-template-columns:1fr}
  .volver{margin-top:14px}
}

.ib{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#F3F4F6;color:#374151;border:0;cursor:pointer;font-size:14px;transition:.15s;flex-shrink:0}
.ib:hover{background:#DC2626;color:#fff}
.pill{display:inline-flex;gap:5px;align-items:center;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.pill.si{background:#ECFDF5;color:#047857}
.pill.no{background:#F3F4F6;color:#6B7280}
.pill.am{background:#FFFBEB;color:#B45309}
.pill.az{background:#EFF6FF;color:#1D4ED8}
.pill.rojo{background:#FEF2F2;color:#B91C1C}
.compra{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:24px;align-items:start;margin:4px 0 50px}
.resumen{position:sticky;top:96px}
.box{background:#fff;border-radius:20px;padding:24px;box-shadow:0 4px 18px rgba(15,23,42,.06);margin-bottom:18px}
.box h2{font-size:19px;margin-bottom:16px;display:flex;gap:10px;align-items:center}
.box h2 i{color:var(--p)}
.cl-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.cl-tag{background:var(--s);color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;padding:5px 12px;border-radius:999px;font-family:'Poppins',sans-serif}
.cesta-l h3{font-size:20px;margin-bottom:8px}
.cl-comp{list-style:none;margin-bottom:10px}
.cl-comp li{padding:3px 0;font-size:15px}
.cl-comp i{color:var(--muted);width:20px;text-align:center}
.cl-comp b{color:var(--s)}
.cl-comp small{font-size:12px;color:var(--muted);text-transform:uppercase}
.cl-precio{font-family:'Poppins',sans-serif;font-size:26px;font-weight:700;color:var(--p)}
.cl-precio small{font-size:14px;color:var(--muted);font-weight:500}
.cl-sub{font-weight:600;margin:16px 0 8px}
.extras-l{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.extra-op{display:flex;gap:12px;align-items:center;border:1.5px solid #e5e7eb;border-radius:14px;padding:10px 14px;cursor:pointer;transition:.15s}
.extra-op:has(input:checked){border-color:var(--p);background:var(--p-soft)}
.extra-op input{accent-color:var(--p);width:17px;height:17px;flex-shrink:0}
.extra-op i{color:var(--p);width:20px;text-align:center}
.extra-op b{display:block;font-size:14px}
.extra-op small{display:block;font-size:12px;color:var(--muted)}
.extra-op .ep{margin-left:auto;font-weight:600;white-space:nowrap;font-size:14px}
.res-fila{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:15px}
.res-fila.sub{font-size:13px;color:var(--muted);padding:2px 0 2px 10px}
.res-fila.total{border-top:1px solid #eef0f3;margin-top:8px;padding-top:14px;font-weight:700;font-size:18px}
.res-fila.total span:last-child{color:var(--p);font-family:'Poppins',sans-serif}
.seg{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.seg label{flex:1;min-width:140px;border:1.5px solid #e5e7eb;border-radius:14px;padding:12px 14px;cursor:pointer;display:flex;gap:10px;align-items:center;font-weight:600;font-size:14px;background:#fff;transition:.15s}
.seg label:has(input:checked){border-color:var(--p);background:var(--p-soft);color:var(--p)}
.seg input{accent-color:var(--p)}
.linea{border:1px solid #eef0f3;border-radius:16px;padding:16px;background:#FAFBFC}
.linea:has(input[value="nueva"]:checked) .porta{display:none}
.codigos{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:18px 0 8px}
.codigos span{background:var(--p-soft);color:var(--p);font-family:'Poppins',sans-serif;font-weight:700;font-size:18px;padding:10px 18px;border-radius:14px;letter-spacing:.5px}
.contr{padding:0;overflow:hidden}
.contr-h{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid #f0f2f5}
.contr-h b{font-size:17px}
.contr-b{padding:12px 22px 16px}
.bnav a{position:relative}
.bn-b{position:absolute;top:4px;left:calc(50% + 6px);background:var(--p);color:#fff;font-style:normal;font-size:10px;border-radius:999px;padding:0 5px;line-height:16px}
@media (max-width:900px){
  .compra{grid-template-columns:1fr}
  .resumen{position:static}
}
@media (max-width:768px){
  .box{padding:18px;border-radius:18px}
  .seg label{min-width:0}
  .contr-h,.contr-b{padding-left:16px;padding-right:16px}
}

.btn-sm{padding:9px 16px;font-size:14px}
.ib.neutro:hover{background:var(--p)}
.alerta.az{background:#EFF6FF;color:#1D4ED8}
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:40px}
.paso{background:#fff;border-radius:20px;padding:26px;box-shadow:0 2px 12px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:6px}
.paso i{width:52px;height:52px;border-radius:16px;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:8px}
.paso b{font-size:17px;font-family:'Poppins',sans-serif}
.paso span{color:var(--muted);font-size:14px}
.t-prev{max-height:70px;border-radius:10px;margin-bottom:4px}
.t-prev.ancha{max-height:90px;width:100%;object-fit:cover}
.tienda-h{display:flex;align-items:center;gap:18px;margin-top:16px;flex-wrap:wrap;background-image:linear-gradient(90deg,#fff 45%,rgba(255,255,255,.75)),var(--portada,none);background-size:cover;background-position:center}
.t-logo{width:72px;height:72px;border-radius:20px;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-size:28px;overflow:hidden;flex-shrink:0}
.t-logo img{width:100%;height:100%;object-fit:cover}
.t-info{flex:1;min-width:180px}
.t-info h1{font-size:24px;margin-bottom:4px}
.kpis-v{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:30px}
.kpi-v{background:#fff;border-radius:18px;padding:18px;box-shadow:0 2px 10px rgba(15,23,42,.05);display:flex;gap:12px;align-items:center}
.kpi-v i{width:44px;height:44px;border-radius:14px;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.kpi-v b{display:block;font-size:22px;font-family:'Poppins',sans-serif;line-height:1.1}
.kpi-v span{font-size:13px;color:var(--muted)}
.prods-v{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-bottom:50px}
.prod-v{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px rgba(15,23,42,.06);display:flex;flex-direction:column}
.pv-img{position:relative;aspect-ratio:4/3;background:#F3F4F6;display:flex;align-items:center;justify-content:center;color:#cbd5e1;font-size:40px}
.pv-img img{width:100%;height:100%;object-fit:cover}
.pv-img .pill{position:absolute;top:10px;left:10px}
.pv-b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.pv-b b{font-size:15px;line-height:1.3}
.pv-meta{font-size:13px;color:var(--muted)}
.pv-acc{display:flex;gap:8px;align-items:center;margin-top:auto;padding-top:8px}
.pv-acc .btn{flex:1}
.img-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.img-it{display:flex;flex-direction:column;gap:4px;font-size:12px;cursor:pointer}
.img-it img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;border:2px solid transparent}
.img-it:has(input:checked) img{border-color:#DC2626;opacity:.5}
@media (max-width:768px){
  .pasos{grid-template-columns:1fr}
  .kpis-v{grid-template-columns:1fr 1fr;gap:10px}
  .kpi-v{padding:14px}
  .prods-v{grid-template-columns:1fr 1fr;gap:10px}
  .pv-b{padding:10px 12px 12px}
  .pv-acc .btn{padding:8px 10px;font-size:13px}
  .t-acc{width:100%}
  .t-acc .btn{flex:1}
}

.tienda-busca{display:flex;gap:10px;margin-bottom:18px}
.busca-in{flex:1;display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid #e5e7eb;border-radius:999px;padding:0 18px}
.busca-in i{color:var(--muted)}
.busca-in input{flex:1;border:0;outline:none;padding:13px 0;font-size:15px;font-family:inherit;background:none;min-width:0}
.tienda-cats{display:flex;gap:10px;overflow-x:auto;padding-bottom:16px;scrollbar-width:none}
.tienda-cats::-webkit-scrollbar{display:none}
.tcat{white-space:nowrap;display:inline-flex;gap:8px;align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:14px;padding:10px 16px;font-weight:600;font-size:14px}
.tcat.on{background:var(--p);border-color:var(--p);color:#fff}
.tcat i{color:var(--p)}
.tcat.on i{color:#fff}
.tienda-filtros{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}
.tf-chips{display:flex;gap:8px;flex-wrap:wrap}
.tf-orden .input{border-radius:12px;padding:9px 14px;font-size:14px}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;margin-bottom:30px}
.pc{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 2px 12px rgba(15,23,42,.06);display:flex;flex-direction:column;transition:.15s}
.pc:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(15,23,42,.12)}
.pc-img{position:relative;aspect-ratio:1;background:#F3F4F6;display:flex;align-items:center;justify-content:center;color:#cbd5e1;font-size:38px}
.pc-img img{width:100%;height:100%;object-fit:cover}
.pc-desc{position:absolute;top:10px;left:10px;background:var(--promo);color:#fff;font-weight:700;font-size:13px;padding:3px 10px;border-radius:999px}
.pc-sin{position:absolute;inset:0;background:rgba(255,255,255,.72);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--d);font-size:15px}
.pc-b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:5px;flex:1}
.pc-cond{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:600}
.pc-nom{font-size:15px;line-height:1.3;flex:1}
.pc-precio{display:flex;align-items:baseline;gap:8px}
.pc-precio span{font-family:'Poppins',sans-serif;font-weight:700;font-size:20px;color:var(--p)}
.pc-precio s{color:var(--muted);font-size:14px}
.paginador{display:flex;justify-content:center;margin-bottom:40px}
.paginador .pagination{display:flex;gap:6px;list-style:none;padding:0;flex-wrap:wrap}
.paginador .pagination a,.paginador .pagination span{display:inline-flex;min-width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#fff;font-size:14px;padding:0 12px;box-shadow:0 1px 6px rgba(15,23,42,.05)}
.paginador .pagination .active span{background:var(--p);color:#fff}
.paginador .pagination .disabled span{opacity:.4}
.prod-detalle{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:10px 0 40px;align-items:start}
.pd-main{position:relative;background:#fff;border-radius:20px;overflow:hidden;aspect-ratio:1;box-shadow:0 4px 18px rgba(15,23,42,.06)}
.pd-main.sinimg{display:flex;align-items:center;justify-content:center;color:#cbd5e1;font-size:60px}
.pdg-r{position:absolute;opacity:0;pointer-events:none}
.pdg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .2s}
.pdg-r:checked + .pdg-img{opacity:1}
.pd-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.pd-th{width:70px;height:70px;border-radius:12px;overflow:hidden;cursor:pointer;border:2px solid transparent;background:#fff}
.pd-th img{width:100%;height:100%;object-fit:cover}
.pd-th:hover{border-color:var(--p)}
.pd-info h1{font-size:28px;margin:6px 0}
.pd-marca{color:var(--muted);margin-bottom:12px}
.pd-precio{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:10px}
.pd-p{font-family:'Poppins',sans-serif;font-weight:700;font-size:38px;color:var(--p)}
.pd-precio s{color:var(--muted);font-size:20px}
.pd-ahorro{background:var(--p-soft);color:var(--p);font-weight:600;font-size:13px;padding:3px 10px;border-radius:999px}
.pd-stock{font-weight:600;margin:14px 0}
.pd-stock.ok{color:#047857}
.pd-stock.no{color:#B91C1C}
.pd-compra{background:#fff;border-radius:18px;padding:18px;box-shadow:0 2px 12px rgba(15,23,42,.06);margin-bottom:18px}
.pd-cant{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.pd-cant label{font-weight:600;font-size:14px}
.pd-cant .input{width:90px;border-radius:12px}
.pd-btns{display:flex;gap:10px;flex-wrap:wrap}
.pd-btns .btn{flex:1;min-width:150px}
.pd-vend{display:flex;gap:10px;align-items:center;background:#fff;border-radius:14px;padding:14px 16px;box-shadow:0 2px 12px rgba(15,23,42,.05);margin-bottom:18px}
.pd-vend i{color:var(--p)}
.pd-vend a{color:var(--p);font-weight:600}
.pd-desc h3{font-size:18px;margin-bottom:8px}
.pd-desc div{color:#374151;line-height:1.6}
.tienda-pub{display:flex;gap:18px;align-items:center;margin-top:16px;flex-wrap:wrap;background-image:linear-gradient(90deg,#fff 50%,rgba(255,255,255,.7)),var(--portada,none);background-size:cover;background-position:center}
.tienda-pub h1{font-size:26px}
.cesta-prod{display:flex;gap:16px;align-items:center}
.cp-img{width:80px;height:80px;border-radius:12px;background:#F3F4F6;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#cbd5e1;font-size:24px;overflow:hidden}
.cp-img img{width:100%;height:100%;object-fit:cover}
.cp-info{flex:1;min-width:0}
.cp-cant{display:flex;gap:8px;margin-top:8px;align-items:center}
.cp-cant .input{width:80px;border-radius:10px;padding:7px 10px}
.cp-der{text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.cp-der b{font-family:'Poppins',sans-serif;font-size:18px;color:var(--p)}
.venta{padding:0;overflow:hidden}
.venta-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #f0f2f5}
.venta-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 20px}
.venta-env{font-size:14px;line-height:1.6;color:#374151}
.venta-form{display:flex;gap:10px;padding:14px 20px;border-top:1px solid #f0f2f5;background:#FAFBFC;flex-wrap:wrap;align-items:center}
.venta-form .input{border-radius:12px;padding:9px 12px;font-size:14px}
.venta-form select.input{flex:0 1 160px}
.venta-form input.input{flex:1;min-width:150px}
@media (max-width:768px){
  .prod-grid{grid-template-columns:1fr 1fr;gap:12px}
  .prod-detalle{grid-template-columns:1fr;gap:18px}
  .pd-info h1{font-size:23px}
  .pd-p{font-size:32px}
  .venta-grid{grid-template-columns:1fr;gap:10px}
  .tienda-busca{flex-direction:column}
  .cesta-prod{flex-wrap:wrap}
  .cp-der{width:100%;flex-direction:row;justify-content:space-between;align-items:center}
}
