/* ============ VOSS MARKET ============ */
:root{
  --blue:#00A3FF;
  --red:#FF0033;
  --radius:18px;
  --font:'Pixelify Sans',ui-monospace,'SFMono-Regular','Cascadia Mono',system-ui,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
[data-theme="dark"]{
  --bg:#070A0F;
  --bg-soft:#0D1117;
  --card:rgba(255,255,255,.045);
  --card-border:rgba(255,255,255,.09);
  --glass:rgba(13,17,23,.65);
  --text:#F2F6FA;
  --text-dim:#8B96A5;
  --nav-bg:rgba(7,10,15,.72);
  --input-bg:rgba(255,255,255,.05);
  --shadow:0 20px 60px rgba(0,0,0,.5);
}
[data-theme="light"]{
  --bg:#F5F7FA;
  --bg-soft:#FFFFFF;
  --card:rgba(255,255,255,.75);
  --card-border:rgba(10,20,40,.08);
  --glass:rgba(255,255,255,.7);
  --text:#0B1220;
  --text-dim:#5A6677;
  --nav-bg:rgba(245,247,250,.75);
  --input-bg:rgba(10,20,40,.04);
  --shadow:0 20px 60px rgba(10,20,40,.12);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--font);
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
  transition:background .4s var(--ease),color .4s var(--ease);
}
a{color:inherit;text-decoration:none}
img{display:block}
[hidden]{display:none!important}

/* ===== Glass ===== */
.glass{
  background:var(--card);
  border:1px solid var(--card-border);
  backdrop-filter:blur(20px) saturate(160%);
  -webkit-backdrop-filter:blur(20px) saturate(160%);
  border-radius:var(--radius);
}

/* ===== Botones ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font);font-weight:600;font-size:15px;
  padding:12px 24px;border-radius:14px;border:none;cursor:pointer;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,filter .25s;
  will-change:transform;
}
.btn:active{transform:scale(.96)}
.btn-primary{
  background:linear-gradient(135deg,var(--blue),#0066FF);
  color:#fff;box-shadow:0 6px 24px rgba(0,163,255,.35);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(0,163,255,.55)}
.btn-outline{
  background:transparent;color:var(--text);
  border:1.5px solid var(--card-border);
}
.btn-outline:hover{border-color:var(--blue);box-shadow:0 0 24px rgba(0,163,255,.3);transform:translateY(-2px)}
.btn-ghost{background:var(--card);color:var(--text);border:1px solid var(--card-border)}
.btn-ghost:hover{box-shadow:0 0 18px rgba(0,163,255,.25)}
.btn-sm{padding:8px 16px;font-size:13.5px;border-radius:11px}
.btn-lg{padding:16px 34px;font-size:17px;border-radius:16px}
.btn-full{width:100%}

/* ===== Navbar ===== */
.navbar{
  position:sticky;top:0;left:0;right:0;z-index:100;
  background:var(--nav-bg);
  backdrop-filter:blur(22px) saturate(180%);
  -webkit-backdrop-filter:blur(22px) saturate(180%);
  border-bottom:1px solid var(--card-border);
  transition:box-shadow .3s;
}
.navbar.scrolled{box-shadow:0 8px 30px rgba(0,0,0,.25)}
.nav-inner{
  max-width:1200px;margin:0 auto;padding:12px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.nav-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px}
.nav-logo img{width:38px;height:38px;border-radius:10px;object-fit:cover}
.nav-logo em{font-style:normal;color:var(--blue)}
.nav-links{display:flex;gap:26px;font-size:14.5px;font-weight:500;color:var(--text-dim)}
.nav-links a{transition:color .25s}
.nav-links a:hover{color:var(--blue)}
.nav-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.theme-toggle{
  width:38px;height:38px;border-radius:11px;border:1px solid var(--card-border);
  background:var(--card);cursor:pointer;font-size:16px;display:grid;place-items:center;
  transition:box-shadow .25s,transform .25s;
}
.theme-toggle:hover{box-shadow:0 0 18px rgba(0,163,255,.35);transform:translateY(-1px)}
[data-theme="dark"] .tt-sun{display:none}
[data-theme="light"] .tt-moon{display:none}

/* ===== Hero ===== */
.hero{
  position:relative;min-height:92vh;display:grid;place-items:center;
  padding:140px 24px 80px;text-align:center;overflow:hidden;
}
/* difumina los bordes de color hacia el negro (arriba y abajo) para que combine */
.hero::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(to bottom,
    var(--bg) 0%,
    rgba(0,0,0,0) 26%,
    rgba(0,0,0,0) 70%,
    var(--bg) 100%);
}
.hero-glow{position:absolute;z-index:0;border-radius:50%;filter:blur(100px);opacity:.2;pointer-events:none;will-change:auto}
.hero-glow-blue{width:560px;height:560px;background:var(--blue);top:-6%;left:-10%}
.hero-glow-red{width:460px;height:460px;background:var(--red);bottom:-8%;right:-8%;animation-delay:-4.5s}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(40px)}}
.hero-content{max-width:880px;position:relative;z-index:2}
.hero-badge{
  display:inline-block;padding:7px 18px;border-radius:999px;font-size:13.5px;font-weight:600;
  background:rgba(0,163,255,.12);color:var(--blue);border:1px solid rgba(0,163,255,.3);margin-bottom:26px;
}
.hero h1{font-size:clamp(34px,5.5vw,62px);font-weight:900;line-height:1.12;letter-spacing:-.02em}
.grad-blue{background:linear-gradient(135deg,var(--blue),#66CFFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.grad-red{background:linear-gradient(135deg,var(--red),#FF6680);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{margin:22px auto 36px;max-width:600px;font-size:18px;color:var(--text-dim)}
.hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.hero-stats{display:flex;gap:48px;justify-content:center;margin-top:64px;flex-wrap:wrap}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats strong{font-size:26px;font-weight:800;color:var(--blue)}
.hero-stats span{font-size:13px;color:var(--text-dim)}

/* ===== Secciones ===== */
.section{max-width:1200px;margin:0 auto;padding:90px 24px}
.section-head{text-align:center;margin-bottom:48px}
.section-head h2{font-size:clamp(28px,3.5vw,42px);font-weight:800;letter-spacing:-.02em}
.section-head p{color:var(--text-dim);margin-top:8px}

/* ===== Grid productos ===== */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:22px}
.card{
  position:relative;padding:26px 22px;border-radius:var(--radius);
  background:var(--card);border:1px solid var(--card-border);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;
  cursor:pointer;overflow:hidden;
}
.card::before{
  content:'';position:absolute;inset:0;border-radius:inherit;opacity:0;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(0,163,255,.14),transparent 60%);
  transition:opacity .3s;pointer-events:none;
}
.card:hover{transform:translateY(-6px);border-color:rgba(0,163,255,.45);box-shadow:0 16px 44px rgba(0,163,255,.18)}
.card:hover::before{opacity:1}
.card-icon{
  width:58px;height:58px;border-radius:16px;display:grid;place-items:center;font-size:28px;margin-bottom:16px;
  background:linear-gradient(135deg,rgba(0,163,255,.18),rgba(255,0,51,.12));
  border:1px solid var(--card-border);
}
.card-icon.card-img{padding:0;overflow:hidden}
.card-icon.card-img img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.card h3{font-size:18px;font-weight:700;margin-bottom:6px}
.card p{font-size:13.5px;color:var(--text-dim);margin-bottom:18px;min-height:42px}
.card .tag{
  position:absolute;top:16px;right:16px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;
  background:rgba(255,0,51,.14);color:var(--red);border:1px solid rgba(255,0,51,.3);
}

/* ===== Planes de suscripción ===== */
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:24px;max-width:1000px;margin:0 auto}
.plan{
  position:relative;padding:34px 28px;text-align:left;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;
}
.plan:hover{transform:translateY(-8px);border-color:rgba(0,163,255,.45);box-shadow:0 18px 50px rgba(0,163,255,.2)}
.plan-popular{
  border-color:rgba(0,163,255,.55);
  box-shadow:0 0 0 1px rgba(0,163,255,.35),0 14px 44px rgba(0,163,255,.22);
  transform:scale(1.03);
}
.plan-popular:hover{transform:scale(1.03) translateY(-8px)}
.plan-badge{
  position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  font-size:12px;font-weight:800;padding:5px 16px;border-radius:999px;white-space:nowrap;
  background:linear-gradient(135deg,var(--blue),#0066FF);color:#fff;
  box-shadow:0 4px 18px rgba(0,163,255,.5);
}
.plan-icon{
  width:54px;height:54px;border-radius:15px;display:grid;place-items:center;font-size:26px;margin-bottom:14px;
  border:1px solid var(--card-border);
}
.plan-blue{background:rgba(0,163,255,.14);box-shadow:0 0 22px rgba(0,163,255,.25)}
.plan-gold{background:rgba(255,176,32,.14);box-shadow:0 0 22px rgba(255,176,32,.3)}
.plan-red{background:rgba(255,0,51,.14);box-shadow:0 0 22px rgba(255,0,51,.3)}
.plan h3{font-size:21px;font-weight:800}
.plan-desc{font-size:13.5px;color:var(--text-dim);margin:4px 0 16px}
.plan-price{font-size:14px;color:var(--text-dim);margin-bottom:18px}
.plan-price span{font-size:38px;font-weight:900;color:var(--text);letter-spacing:-.02em}
.plan-features{list-style:none;display:grid;gap:10px;margin-bottom:24px}
.plan-features li{display:flex;align-items:center;gap:10px;font-size:14.5px}
.plan-features li::before{
  content:'✓';flex:0 0 auto;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;
  font-size:11px;font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--blue),#0066FF);
}
.plan[data-plan="Elite"] .plan-features li::before{background:linear-gradient(135deg,var(--red),#CC0029)}
.btn-red{
  background:linear-gradient(135deg,var(--red),#CC0029);color:#fff;
  box-shadow:0 6px 24px rgba(255,0,51,.35);
}
.btn-red:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(255,0,51,.55)}
.btn-green{
  background:linear-gradient(135deg,#25D366,#128C7E);color:#fff;
  box-shadow:0 6px 24px rgba(37,211,102,.35);
}
.btn-green:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(37,211,102,.5)}
.sub-actions{display:grid;gap:10px}
.copy-inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mini-copy{
  font-family:var(--font);font-size:11px;font-weight:700;padding:3px 10px;border-radius:8px;cursor:pointer;
  background:var(--card);border:1px solid var(--card-border);color:var(--blue);transition:all .25s;
}
.mini-copy:hover{border-color:var(--blue);box-shadow:0 0 12px rgba(0,163,255,.3)}

/* ===== Steps ===== */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.step{padding:30px 26px;text-align:left}
.step-num{
  display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;font-weight:800;font-size:18px;
  background:linear-gradient(135deg,var(--blue),#0066FF);color:#fff;margin-bottom:14px;
}
.step h3{font-size:18px;margin-bottom:6px}
.step p{font-size:14px;color:var(--text-dim)}

/* ===== Términos ===== */
.lang-tabs{display:inline-flex;gap:6px;margin-top:16px;padding:5px;border-radius:12px;background:var(--card);border:1px solid var(--card-border)}
.lang-tab{
  padding:7px 18px;border-radius:9px;border:none;background:transparent;color:var(--text-dim);
  font-family:var(--font);font-weight:600;font-size:13.5px;cursor:pointer;transition:all .25s;
}
.lang-tab.active{background:var(--blue);color:#fff}
.terms{max-width:760px;margin:0 auto;padding:34px 38px}
.terms ol{padding-left:20px;display:grid;gap:12px;font-size:15px;color:var(--text-dim)}
.terms strong{color:var(--text)}

/* ===== Footer ===== */
.footer{border-top:1px solid var(--card-border);background:var(--bg-soft);padding:56px 24px 28px}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
.footer-brand img{width:44px;height:44px;border-radius:11px;margin-bottom:10px}
.footer-brand span{font-weight:800;font-size:18px}
.footer-brand p{color:var(--text-dim);font-size:14px;margin-top:6px;max-width:280px}
.footer-col{display:flex;flex-direction:column;gap:9px;font-size:14px;color:var(--text-dim)}
.footer-col h4{color:var(--text);font-size:14.5px;margin-bottom:4px}
.footer-col a:hover{color:var(--blue)}
.footer-copy{text-align:center;color:var(--text-dim);font-size:12.5px;margin-top:42px}

/* ===== Modal ===== */
.modal-backdrop{
  position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px;
  background:rgba(0,0,0,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  animation:fadeIn .25s var(--ease);
}
.modal{
  position:relative;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;
  padding:34px 30px;background:var(--glass);box-shadow:var(--shadow);
  animation:popIn .35s var(--ease);
}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popIn{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}
.modal-close{
  position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:10px;border:1px solid var(--card-border);
  background:var(--card);color:var(--text);cursor:pointer;font-size:14px;transition:all .25s;
}
.modal-close:hover{border-color:var(--red);color:var(--red);box-shadow:0 0 14px rgba(255,0,51,.3)}
.modal h3{font-size:22px;font-weight:800}
.modal-sub{color:var(--text-dim);font-size:14px;margin:6px 0 20px}
#orderForm{display:grid;gap:14px}
#orderForm label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--text-dim)}
#orderForm input,#orderForm select,#orderForm textarea{
  font-family:var(--font);font-size:15px;color:var(--text);
  padding:12px 14px;border-radius:12px;border:1.5px solid var(--card-border);
  background:var(--input-bg);outline:none;transition:border-color .25s,box-shadow .25s;resize:vertical;
}
#orderForm input:focus,#orderForm select:focus,#orderForm textarea:focus{
  border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,163,255,.15);
}
#orderForm input[readonly]{opacity:.7;cursor:not-allowed}

.success-icon{font-size:46px;text-align:center;margin-bottom:8px;animation:popIn .5s var(--ease)}
#orderSuccessStep h3{text-align:center}
#orderSuccessStep .modal-sub{text-align:center}
.order-id-box{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 18px;border-radius:14px;margin-bottom:18px;
  background:rgba(0,163,255,.1);border:1.5px dashed rgba(0,163,255,.45);
}
.order-id-box span{font-weight:800;font-size:20px;letter-spacing:.04em;color:var(--blue)}
.pay-box{padding:18px;border-radius:14px;background:var(--card);border:1px solid var(--card-border);margin-bottom:14px;display:grid;gap:8px}
.pay-box h4{font-size:15.5px}
.pay-box p{font-size:13.5px;color:var(--text-dim)}
.copy-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.copy-row code{font-size:15px;font-weight:700}
.modal-note{font-size:12.5px;color:var(--text-dim);text-align:center}
.modal-note a{color:var(--blue);font-weight:600}

/* ===== Toasts ===== */
.toast-container{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:300;display:grid;gap:10px;width:min(92vw,360px)}
.toast{
  padding:14px 20px;border-radius:14px;font-size:14.5px;font-weight:600;text-align:center;
  background:var(--glass);border:1px solid var(--card-border);color:var(--text);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  box-shadow:var(--shadow);animation:toastIn .35s var(--ease);
}
.toast.success{border-color:rgba(0,163,255,.5)}
.toast.error{border-color:rgba(255,0,51,.55)}
.toast.out{animation:toastOut .3s var(--ease) forwards}
@keyframes toastIn{from{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:none}}
@keyframes toastOut{to{opacity:0;transform:translateY(10px) scale(.95)}}

/* ===== ⚡ Rayo eléctrico ===== */
#lightningLayer{position:fixed;inset:0;z-index:500;pointer-events:none}
.bolt-svg{position:absolute;overflow:visible;animation:boltLife .45s ease-out forwards}
.bolt-path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.bolt-core{stroke-width:2.5}
.bolt-glow{stroke-width:9;opacity:.45;filter:blur(4px)}
@keyframes boltLife{
  0%{opacity:0}
  8%{opacity:1}
  20%{opacity:.4}
  32%{opacity:1}
  100%{opacity:0}
}
.screen-flash{
  position:absolute;inset:0;opacity:0;animation:flashLife .4s ease-out forwards;
}
@keyframes flashLife{0%{opacity:0}10%{opacity:.22}100%{opacity:0}}

/* ===== Reveal al scroll ===== */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.visible{opacity:1;transform:none}

/* ===== Responsive ===== */
@media(max-width:820px){
  .nav-links{display:none}
  .footer-inner{grid-template-columns:1fr}
  .hero-stats{gap:28px}
  .section{padding:64px 18px}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* ===== 🔍 Buscador ===== */
.hero-search{
  display:flex;align-items:center;gap:10px;max-width:520px;margin:26px auto 0;
  padding:6px 6px 6px 18px;border-radius:999px;
  background:var(--card);border:1.5px solid var(--card-border);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  transition:border-color .3s,box-shadow .3s;
}
.hero-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,163,255,.15)}
.hero-search .hs-icon{font-size:17px;opacity:.7}
.hero-search input{
  flex:1;border:none;outline:none;background:transparent;
  font-family:var(--font);font-size:15px;color:var(--text);padding:11px 4px;
}
.hero-search input::placeholder{color:var(--text-dim)}
.products-search{
  display:flex;align-items:center;gap:10px;max-width:420px;margin:18px auto 0;
  padding:4px 4px 4px 16px;border-radius:999px;
  background:var(--card);border:1.5px solid var(--card-border);
  transition:border-color .3s;
}
.products-search:focus-within{border-color:var(--blue)}
.products-search .hs-icon{font-size:15px;opacity:.7}
.products-search input{
  flex:1;border:none;outline:none;background:transparent;
  font-family:var(--font);font-size:14px;color:var(--text);padding:9px 4px;
}
.no-results{text-align:center;color:var(--text-dim);margin-top:30px;font-size:15px}
.link-btn{background:none;border:none;color:var(--blue);font-family:var(--font);font-size:15px;font-weight:600;cursor:pointer;text-decoration:underline}

/* ===== 💬 Comunidad / Discord ===== */
.community{
  display:flex;gap:28px;justify-content:center;align-items:stretch;flex-wrap:wrap;
  max-width:880px;margin:0 auto;
}
.community-info{
  flex:1;min-width:280px;max-width:440px;padding:34px 30px;
  display:flex;flex-direction:column;justify-content:center;gap:14px;text-align:left;
}
.community-info h3{font-size:22px;font-weight:800}
.community-info p{color:var(--text-dim);font-size:14.5px;line-height:1.6}
.online-count{display:flex;align-items:center;font-size:15px}
.online-count strong{color:#2ECC71;font-size:18px}
.online-dot{
  width:10px;height:10px;border-radius:50%;background:#2ECC71;margin-right:8px;
  box-shadow:0 0 10px rgba(46,204,113,.8);animation:pulse-dot 1.6s ease-in-out infinite;
}
@keyframes pulse-dot{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.25);opacity:.7}}
.discord-widget{border-radius:var(--radius);border:1px solid var(--card-border);max-width:100%}

/* ===== 🏢 Modal About / Company ===== */
.info-body{font-size:14.5px;line-height:1.65;color:var(--text)}
.info-body p{margin-bottom:12px;color:var(--text-dim)}
.info-body p strong{color:var(--text)}
.info-body ul{list-style:none;margin:12px 0;display:grid;gap:8px}
.info-body li{padding-left:4px}

/* ===== Plan único centrado ===== */
.plans-single{grid-template-columns:minmax(280px,420px);justify-content:center}

/* ===== 🌐 Botón y modal de idioma/moneda ===== */
.lang-btn{
  font-family:var(--font);font-size:12.5px;font-weight:600;color:var(--text);
  background:var(--card);border:1.5px solid var(--card-border);border-radius:999px;
  padding:8px 14px;cursor:pointer;transition:border-color .25s,box-shadow .25s;white-space:nowrap;
}
.lang-btn:hover{border-color:var(--blue);box-shadow:0 0 12px rgba(0,163,255,.25)}
.modal-narrow{max-width:380px}
.lang-form{display:grid;gap:14px;margin-top:14px}
.lang-form label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--text-dim)}
.lang-form select{
  font-family:var(--font);font-size:14.5px;color:var(--text);padding:11px 14px;border-radius:12px;
  border:1.5px solid var(--card-border);background:var(--input-bg);outline:none;cursor:pointer;
}
.lang-form select:focus{border-color:var(--blue)}

/* ===== Discord / WhatsApp en el modal de pedido ===== */
.order-alt{display:grid;gap:10px;margin:14px 0 4px}
.divider{
  display:flex;align-items:center;gap:12px;margin:14px 0;
  color:var(--text-dim);font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;
}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:var(--card-border)}

/* Botón verde (WhatsApp) por si no existe */
.btn-green{background:#1fb355;color:#fff;border:none}
.btn-green:hover{box-shadow:0 0 18px rgba(31,179,85,.5)}

/* precio /mes */
.plan-price em{font-style:normal}

/* ===== ⚠️ Aviso: no pagues todavía ===== */
.warn-box{
  margin:16px 0;padding:16px 18px;border-radius:14px;text-align:center;
  background:rgba(255,176,32,.10);border:1.5px solid rgba(255,176,32,.45);
}
.warn-box h4{color:#FFB020;font-size:15px;font-weight:800;letter-spacing:.03em;margin-bottom:6px}
.warn-box p{font-size:13.5px;color:var(--text);line-height:1.55;margin-bottom:12px}
.warn-actions{display:grid;gap:9px}

.lm-note{font-size:12px;color:var(--text-dim);text-align:center;line-height:1.5}

/* ════════════════════════════════════════════════
   ✨ MEJORAS SMOOTH + POP-UP — VOSS MARKET v2
   ════════════════════════════════════════════════ */

/* ===== Logo más grande y nítido (ahora sin texto al lado) ===== */
.logo-img{height:42px;width:auto;transition:transform .3s var(--ease),filter .3s var(--ease)}
.nav-logo:hover .logo-img{transform:scale(1.06)}
.logo-img-footer{height:48px;width:auto;margin-bottom:6px}

/* ===== Animaciones de entrada al hacer scroll ===== */
@keyframes vmRise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.product-card,.plan-card,.step,.stat-box,.footer-col,.community-card{
  animation:vmRise .6s var(--ease) both;
}
.product-card:nth-child(2),.step:nth-child(2){animation-delay:.08s}
.product-card:nth-child(3),.step:nth-child(3){animation-delay:.16s}
.product-card:nth-child(4){animation-delay:.24s}

/* ===== Hover más suave en tarjetas ===== */
.product-card,.plan-card{
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.product-card:hover,.plan-card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 50px rgba(0,163,255,.18);
  border-color:rgba(0,163,255,.35);
}

/* ===== Botones con micro-bounce ===== */
.btn{transition:transform .2s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),opacity .2s ease!important}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary:hover{box-shadow:0 10px 30px rgba(0,163,255,.4)}

/* ===== Glow sutil animado en el hero ===== */
@keyframes vmPulse{0%,100%{opacity:.5}50%{opacity:.85}}

/* ===== Links de navbar con subrayado animado ===== */
.nav-links a{position:relative;transition:color .25s var(--ease)}
.nav-links a::after{
  content:'';position:absolute;left:0;bottom:-4px;width:0;height:2px;
  background:var(--blue);transition:width .28s var(--ease);border-radius:2px;
}
.nav-links a:hover::after{width:100%}
.nav-links a:hover{color:var(--text)}

/* ===== Inputs más suaves ===== */
input,select,textarea{transition:border-color .25s var(--ease),box-shadow .25s var(--ease)!important}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px rgba(0,163,255,.12)}

/* ===== Scrollbar custom ===== */
::-webkit-scrollbar{width:10px}
::-webkit-scrollbar-track{background:var(--bg-soft)}
::-webkit-scrollbar-thumb{background:rgba(0,163,255,.3);border-radius:10px}
::-webkit-scrollbar-thumb:hover{background:rgba(0,163,255,.5)}

/* ===== Discord widget más integrado ===== */
.discord-widget{border-radius:16px;box-shadow:0 16px 40px rgba(0,0,0,.4);max-width:100%}

/* ════════════════════════════════════════════════
   POP-UP DESCUENTO
   ════════════════════════════════════════════════ */
.vm-promo-overlay{
  position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  background:rgba(5,8,18,.72);backdrop-filter:blur(8px);padding:20px;
  animation:vmFade .35s ease;
}
@keyframes vmFade{from{opacity:0}to{opacity:1}}
.vm-promo-card{
  position:relative;max-width:420px;width:100%;padding:38px 30px 30px;border-radius:22px;
  text-align:center;animation:vmPop .45s cubic-bezier(.2,.9,.3,1.3);box-shadow:0 30px 80px rgba(0,0,0,.6);
}
@keyframes vmPop{from{transform:scale(.88) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}
.vm-promo-close{
  position:absolute;top:14px;right:16px;background:none;border:none;color:var(--text-dim);
  font-size:18px;cursor:pointer;line-height:1;padding:6px;border-radius:8px;transition:all .2s;
}
.vm-promo-close:hover{color:var(--text);background:rgba(255,255,255,.08);transform:rotate(90deg)}
.vm-promo-badge{
  display:inline-block;background:rgba(0,163,255,.14);color:var(--blue);
  font-size:12px;font-weight:700;letter-spacing:.04em;padding:7px 14px;border-radius:20px;margin-bottom:16px;
}
.vm-promo-title{font-size:25px;font-weight:800;line-height:1.2;margin-bottom:10px;color:var(--text)}
.vm-promo-title span{color:var(--blue)}
.vm-promo-sub{font-size:14px;color:var(--text-dim);line-height:1.5;margin-bottom:22px}
.vm-promo-input{
  width:100%;font-family:var(--font);font-size:15px;color:var(--text);
  padding:13px 16px;border-radius:13px;border:1.5px solid var(--card-border);
  background:var(--input-bg);outline:none;margin-bottom:14px;
}
.vm-promo-input:focus{border-color:var(--blue)}
.vm-promo-check{
  display:flex;gap:9px;align-items:flex-start;text-align:left;
  font-size:12px;color:var(--text-dim);line-height:1.45;margin-bottom:18px;cursor:pointer;
}
.vm-promo-check input{margin-top:2px;flex-shrink:0;accent-color:var(--blue);width:16px;height:16px}
.vm-promo-check a{color:var(--blue)}
.vm-promo-mini{font-size:11.5px;color:var(--text-dim);margin-top:12px}
.vm-promo-success-icon{font-size:46px;margin-bottom:8px;animation:vmPop .5s var(--ease)}
.vm-promo-success-title{font-size:19px;font-weight:700;margin-bottom:14px;color:var(--text)}
.vm-promo-code{
  font-size:30px;font-weight:800;letter-spacing:.08em;color:var(--blue);
  background:rgba(0,163,255,.1);border:1.5px dashed var(--blue);
  border-radius:14px;padding:16px;margin-bottom:6px;
}

/* ===== Responsive: logo en móvil ===== */
@media(max-width:600px){
  .logo-img{height:36px}
  .vm-promo-card{padding:32px 22px 24px}
  .vm-promo-title{font-size:22px}
}

/* ════════════════════════════════════════════════
   🔥 ESTILO TEMU (SIN RIESGOS) — VOSS MARKET v3
   ════════════════════════════════════════════════ */

/* ===== Barra superior de beneficios (como Temu) ===== */



/* Removed an orphaned keyframe fragment left by a previous ticker rule. */

/* ===== Sección Empieza a Vender ===== */
.sell-cta{max-width:1100px;margin:60px auto;padding:0 20px}
.sell-inner{border-radius:24px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:center}
.sell-banner{width:100%;height:100%;object-fit:contain;min-height:280px;background:var(--bg)}
.sell-body{padding:38px 34px}
.sell-body h2{font-size:27px;font-weight:800;line-height:1.18;margin-bottom:12px;color:var(--text)}
.sell-body p{color:var(--text-dim);font-size:15px;line-height:1.55;margin-bottom:22px}
.sell-perks{display:grid;gap:11px;margin-bottom:26px}
.sell-perk{display:flex;align-items:center;gap:11px;font-size:14.5px;font-weight:600;color:var(--text)}
.sell-perk span{font-size:20px}
.btn-lg{padding:15px 28px!important;font-size:16px!important;font-weight:700!important}
@media(max-width:780px){
  .sell-inner{grid-template-columns:1fr}
  .sell-banner{min-height:200px}
  .sell-body{padding:28px 22px}
  .sell-body h2{font-size:22px}
}

/* ===== Badges en productos (urgencia REAL) ===== */
.vm-badge{
  position:absolute;top:12px;left:12px;z-index:3;
  font-size:11px;font-weight:800;letter-spacing:.03em;
  padding:5px 11px;border-radius:20px;color:#fff;text-transform:uppercase;
  box-shadow:0 4px 12px rgba(0,0,0,.3);
}
.vm-badge-hot{background:linear-gradient(90deg,#FF0033,#ff5500);animation:vmGlow 1.8s ease-in-out infinite}
.vm-badge-new{background:linear-gradient(90deg,#00A3FF,#0066ff)}
.vm-badge-low{background:linear-gradient(90deg,#FFB020,#ff7a00)}
@keyframes vmGlow{0%,100%{box-shadow:0 4px 12px rgba(255,0,51,.4)}50%{box-shadow:0 4px 22px rgba(255,0,51,.8)}}

/* ===== Ribbon de descuento esquina ===== */
.vm-discount{
  position:absolute;top:12px;right:12px;z-index:3;
  background:#FF0033;color:#fff;font-weight:800;font-size:13px;
  padding:6px 10px;border-radius:12px;box-shadow:0 4px 12px rgba(255,0,51,.4);
}

/* ===== Contador de gente viendo (prueba social real-ish) ===== */
.vm-viewing{
  display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim);
  margin-top:6px;
}
.vm-viewing .dot{width:7px;height:7px;border-radius:50%;background:#2ECC71;animation:vmPulse2 1.5s ease-in-out infinite}
@keyframes vmPulse2{0%,100%{opacity:1}50%{opacity:.3}}

/* ===== Estrellas de rating ===== */
.vm-stars{color:#FFB020;font-size:13px;letter-spacing:1px}
.vm-stars-count{color:var(--text-dim);font-size:12px;margin-left:4px}

/* ===== Animación de "flash sale" en hero ===== */
.vm-flash{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,0,51,.12);border:1px solid rgba(255,0,51,.3);
  color:var(--red);font-weight:700;font-size:13px;padding:8px 16px;border-radius:30px;
  margin-bottom:18px;animation:vmGlow 2s ease-in-out infinite;
}

/* ===== Íconos de redes sociales (SVG reales) ===== */
.social-link{display:flex;align-items:center;gap:10px;padding:4px 0;transition:color .2s var(--ease),transform .2s var(--ease)}
.social-link:hover{color:var(--blue);transform:translateX(3px)}
.social-ico{width:20px;height:20px;flex-shrink:0}

/* ════════════════════════════════════════════════
   ⭐ RESEÑAS + FAQ (estilo Bloxlux)
   ════════════════════════════════════════════════ */
.reviews-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:18px;max-width:1100px;margin:0 auto;padding:0 20px;
}
.review-card{padding:15px 16px;border-radius:14px;border:1px solid var(--card-border);transition:transform .3s var(--ease)}
.review-card:hover{transform:translateY(-4px)}
.review-stars{font-size:12.5px;margin-bottom:7px;letter-spacing:.5px}
.review-text{font-size:13px;line-height:1.45;color:var(--text);margin-bottom:8px}
.review-name{font-size:12px;color:var(--blue);font-weight:700}

.faq-list{max-width:760px;margin:0 auto;padding:0 20px;display:grid;gap:12px}
.faq-item{padding:0;border-radius:14px;overflow:hidden}
.faq-item summary{
  padding:16px 20px;font-size:15px;font-weight:700;color:var(--text);
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;
  transition:color .2s var(--ease);
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';font-size:22px;color:var(--blue);font-weight:400;transition:transform .25s var(--ease)}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:var(--blue)}
.faq-item p{padding:0 20px 18px;font-size:14px;line-height:1.55;color:var(--text-dim);margin:0}

/* ════════════════════════════════════════════════
   🎠 RESEÑAS CARRUSEL + TÉRMINOS COLAPSABLE + EMAIL
   ════════════════════════════════════════════════ */

/* ===== Reseñas que se mueven solas (marquee) ===== */
.reviews-marquee{overflow:hidden;width:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.reviews-track{display:flex;align-items:flex-start;gap:14px;width:max-content;animation:reviewsScroll 35s linear infinite;padding:4px 0}
.reviews-marquee:hover .reviews-track{animation-play-state:paused}
.reviews-track .review-card{width:230px;flex-shrink:0}
@keyframes reviewsScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ===== Términos colapsable ===== */
.terms-details{max-width:900px;margin:0 auto}
.terms-summary{
  list-style:none;cursor:pointer;text-align:center;
  font-size:22px;font-weight:800;color:var(--text);
  padding:18px 24px;border-radius:14px;background:var(--card-bg,rgba(255,255,255,.04));
  border:1px solid var(--card-border);transition:all .25s var(--ease);
}
.terms-summary::-webkit-details-marker{display:none}
.terms-summary:hover{border-color:var(--blue);color:var(--blue)}
.terms-hint{font-size:13px;font-weight:500;color:var(--text-dim);display:block;margin-top:4px}
.terms-details[open] .terms-hint{display:none}

/* ===== Email list ===== */
.email-box{max-width:560px;margin:0 auto;padding:36px 30px;border-radius:20px;text-align:center}
.email-title{font-size:24px;font-weight:800;margin-bottom:10px;color:var(--text)}
.email-sub{font-size:14.5px;color:var(--text-dim);margin-bottom:22px;line-height:1.5}
.email-form{display:flex;gap:10px;max-width:440px;margin:0 auto;flex-wrap:wrap}
.email-input{
  flex:1;min-width:200px;font-family:var(--font);font-size:15px;color:var(--text);
  padding:13px 16px;border-radius:12px;border:1.5px solid var(--card-border);
  background:var(--input-bg);outline:none;
}
.email-input:focus{border-color:var(--blue)}
.email-mini{font-size:13px;color:#2ECC71;margin-top:14px;font-weight:600}
@media(max-width:520px){.email-form{flex-direction:column}.email-form .btn{width:100%}}

/* ===== Precio en tarjeta de producto ===== */
.card-price{
  font-size:20px;font-weight:800;color:var(--blue);
  margin:4px 0 12px;letter-spacing:.01em;
}

/* ════════════════════════════════════════════════
   🎮 JUEGOS EXPANDIBLES + FILTROS + ÍTEMS
   ════════════════════════════════════════════════ */
.card-game-meta{font-size:12px;color:var(--text-dim);margin:6px 0 12px}

.game-modal{max-width:880px;width:100%;max-height:88vh;overflow-y:auto}
.game-modal-head{margin-bottom:18px}
.game-modal-head h2{font-size:24px;font-weight:800;margin-bottom:10px}
.game-delivery{display:flex;gap:10px;flex-wrap:wrap}
.gd-pill{font-size:12.5px;background:rgba(0,163,255,.12);color:var(--blue);padding:6px 12px;border-radius:20px;font-weight:600}
.gd-pill strong{color:var(--text)}

.game-modal-body{display:grid;grid-template-columns:170px 1fr;gap:20px}
.game-filters h4{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin:14px 0 8px}
.game-filters h4:first-child{margin-top:0}
.game-filters label{display:flex;align-items:center;gap:8px;font-size:14px;padding:5px 0;cursor:pointer;color:var(--text)}
.game-filters input{accent-color:var(--blue);width:16px;height:16px}

.game-items{display:grid;gap:12px;align-content:start}
.game-item{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:12px 14px;border-radius:14px}
.gi-img{position:relative;width:64px;height:64px;border-radius:10px;overflow:hidden;background:rgba(255,255,255,.04)}
.gi-img img{width:100%;height:100%;object-fit:cover}
.gi-info h4{font-size:15px;font-weight:700;margin-bottom:3px}
.gi-tags{font-size:11.5px;color:var(--blue);font-weight:600}
.gi-info p{font-size:12.5px;color:var(--text-dim);line-height:1.4;margin-top:4px}
.gi-buy{text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.gi-price{font-size:17px;font-weight:800;color:var(--blue);white-space:nowrap}
.gi-price em{font-size:11px;color:var(--text-dim);font-weight:500;font-style:normal}
.game-empty{text-align:center;color:var(--text-dim);padding:30px}

@media(max-width:600px){
  .game-modal-body{grid-template-columns:1fr}
  .game-filters{display:flex;flex-wrap:wrap;gap:6px 16px;padding-bottom:10px;border-bottom:1px solid var(--card-border)}
  .game-filters h4{width:100%;margin:6px 0 2px}
  .game-item{grid-template-columns:54px 1fr;gap:10px}
  .gi-buy{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center}
}

/* ===== Precio tachado en ítems ===== */
.gi-old{font-size:13px;color:var(--text-dim);text-decoration:line-through;font-weight:600;opacity:.7}

/* ===== Pop-up de imagen promo ===== */
.vm-imgpromo-overlay{
  position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;
  background:rgba(5,8,18,.8);backdrop-filter:blur(8px);padding:20px;animation:vmFade .35s ease;
}
.vm-imgpromo-box{position:relative;max-width:340px;width:100%;animation:vmPop .45s cubic-bezier(.2,.9,.3,1.3)}
.vm-imgpromo-box img{width:100%;border-radius:18px;display:block;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.vm-imgpromo-box .btn{margin-top:14px}
.vm-imgpromo-close{
  position:absolute;top:-14px;right:-14px;width:36px;height:36px;border-radius:50%;
  background:#fff;color:#111;border:none;font-size:16px;cursor:pointer;z-index:2;
  box-shadow:0 4px 12px rgba(0,0,0,.4);transition:transform .2s;
}
.vm-imgpromo-close:hover{transform:scale(1.1) rotate(90deg)}

/* ════════════════════════════════════════════════
   🔍 BUSCADOR EN NAVBAR (estilo eldorado) + LOGO VIP
   ════════════════════════════════════════════════ */
.nav-search{
  flex:1 1 0;min-width:0;max-width:420px;margin:0 20px;display:flex;align-items:center;gap:8px;
  background:var(--input-bg,rgba(255,255,255,.06));border:1.5px solid var(--card-border);
  border-radius:12px;padding:9px 14px;transition:border-color .25s var(--ease);
}
.nav-search:focus-within{border-color:var(--blue)}
.nav-search-ico{font-size:14px;opacity:.7;flex-shrink:0}
.nav-search input{
  flex:1;background:none;border:none;outline:none;color:var(--text);
  font-family:var(--font);font-size:14.5px;min-width:0;
}
.nav-search input::placeholder{color:var(--text-dim)}

@media(max-width:760px){
  .nav-search{margin:0 10px;max-width:none}
  .nav-search input{font-size:14px}
}
@media(max-width:480px){
  .nav-search-ico{display:none}
  .nav-search{padding:8px 10px}
}

/* ===== Logo Voss VIP en planes ===== */
.plan-vip-logo{width:100%;max-width:260px;margin:0 auto 14px;display:block;border-radius:12px}

/* ════════════════════════════════════════════════
   💳 ACEPTAMOS PAGOS (footer) + FILTROS DINÁMICOS
   ════════════════════════════════════════════════ */
.pay-accepted{
  display:flex;flex-direction:column;align-items:center;gap:13px;
  margin:26px auto 8px;padding:18px 24px;max-width:420px;position:relative;
  background:transparent;
  border:1px solid rgba(255,255,255,.06);border-radius:18px;
}
.pay-accepted-label{font-weight:700;font-size:14px;color:var(--text-dim);display:inline-flex;align-items:center;gap:8px;letter-spacing:.01em}
.pay-accepted-label::before{content:"🔒";font-size:14px;opacity:.85}
.pay-logos{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}
.pay-logo-img{height:34px;width:auto;background:rgba(255,255,255,.92);border-radius:9px;padding:6px 11px;opacity:.92;transition:opacity .2s var(--ease),transform .2s var(--ease)}
.pay-logo-img:hover{opacity:1;transform:translateY(-2px)}

/* Filtros del modal de juego */
.filter-group{margin-bottom:18px}
.filter-group h4{font-size:12px;letter-spacing:.08em;color:var(--text-dim);margin:0 0 8px;text-transform:uppercase}
.filter-check{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:14.5px;cursor:pointer;color:var(--text)}
.filter-check input{accent-color:var(--blue);width:16px;height:16px;cursor:pointer}

/* ════════════════════════════════════════════════
   🎞️ BANNER CARRUSEL (rota solo + flechas)
   ════════════════════════════════════════════════ */
.banner-carousel{
  position:relative;width:100%;max-width:940px;margin:16px auto 0;
  border-radius:16px;overflow:hidden;background:var(--bg);
  box-shadow:0 6px 22px rgba(0,0,0,.22);
}
.banner-track{display:flex;transition:transform .5s var(--ease,ease)}
.banner-slide{flex:0 0 100%;display:block;background:var(--bg)}
.banner-slide img{width:100%;aspect-ratio:16/9;height:auto;object-fit:contain;object-position:center;display:block;background:var(--bg)}
.banner-arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  background:rgba(0,0,0,.45);color:#fff;border:none;cursor:pointer;
  width:42px;height:42px;border-radius:50%;font-size:18px;line-height:1;
  display:flex;align-items:center;justify-content:center;transition:background .2s;z-index:2;
}
.banner-arrow:hover{background:rgba(0,0,0,.75)}
.banner-prev{left:12px}
.banner-next{right:12px}
.banner-dots{
  position:absolute;bottom:12px;left:50%;transform:translateX(-50%);
  display:flex;gap:8px;z-index:2;
}
.banner-dots button{
  width:10px;height:10px;border-radius:50%;border:none;cursor:pointer;
  background:rgba(255,255,255,.5);transition:background .2s,transform .2s;padding:0;
}
.banner-dots button.active{background:#fff;transform:scale(1.25)}
@media(max-width:560px){
  .banner-arrow{width:34px;height:34px;font-size:15px}
  .banner-carousel{margin:12px auto 0;border-radius:12px}
}

/* ════════════════════════════════════════════════
   🛒 CARRITO + CHECKOUT + TRUST BADGES
   ════════════════════════════════════════════════ */
/* Trust badges en cada item */
.gi-trust{display:flex;flex-direction:column;gap:3px;margin-top:8px}
.gi-seller,.gi-return{font-size:12px;color:var(--text-dim);display:flex;align-items:center;gap:5px}
.gi-seller strong{color:var(--blue)}
.gi-return{color:#21c17a}
.gi-actions{display:flex;gap:8px;flex-wrap:wrap}

/* Panel lateral del carrito */
.cart-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:998;backdrop-filter:blur(2px)}
.cart-panel{
  position:fixed;top:0;right:0;height:100%;width:380px;max-width:90vw;z-index:999;
  background:var(--bg,#0b1020);border-left:1px solid var(--card-border);
  display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s var(--ease,ease);
  box-shadow:-8px 0 30px rgba(0,0,0,.3);
}
.cart-panel.open{transform:translateX(0)}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--card-border)}
.cart-head h3{margin:0;font-size:18px}
.cart-close{background:none;border:none;color:var(--text);font-size:22px;cursor:pointer;line-height:1}
.cart-items{flex:1;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:12px}
.cart-empty{text-align:center;color:var(--text-dim);margin-top:40px}
.cart-row{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--card-border)}
.cart-row-info{flex:1;min-width:0}
.cart-row-info strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-row-info span{font-size:13px;color:var(--text-dim)}
.cart-qty{display:flex;align-items:center;gap:8px}
.cart-qty button{width:26px;height:26px;border-radius:7px;border:1px solid var(--card-border);background:var(--input-bg,rgba(255,255,255,.06));color:var(--text);cursor:pointer;font-size:16px;line-height:1}
.cart-qty span{min-width:18px;text-align:center;font-weight:700}
.cart-remove{background:none;border:none;cursor:pointer;font-size:16px;opacity:.7}
.cart-remove:hover{opacity:1}
.cart-foot{padding:18px 20px;border-top:1px solid var(--card-border)}
.cart-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:17px}
.cart-total-row strong{color:var(--blue);font-size:20px}

/* Checkout modal */
.checkout-card{max-width:460px;max-height:calc(100dvh - 36px);overflow-y:auto;-webkit-overflow-scrolling:touch}
.checkout-sub{color:var(--text-dim);font-size:14px;margin:-4px 0 16px}
.checkout-summary{background:rgba(255,255,255,.05);border-radius:12px;padding:12px 14px;margin-bottom:16px;font-size:14px}
.cs-row{display:flex;justify-content:space-between;padding:3px 0}
.cs-total{border-top:1px solid var(--card-border);margin-top:6px;padding-top:8px}
.checkout-form label{display:block;margin-bottom:12px;font-size:14px;font-weight:600}
.checkout-form label span{display:block;margin-bottom:5px;color:var(--text-dim);font-weight:500}
.checkout-form input,.checkout-form textarea{
  width:100%;padding:11px 13px;border-radius:10px;border:1.5px solid var(--card-border);
  background:var(--input-bg,rgba(255,255,255,.06));color:var(--text);font-family:var(--font);font-size:14.5px;
}
.checkout-form input:focus,.checkout-form textarea:focus{outline:none;border-color:var(--blue)}
.checkout-msg{padding:10px 12px;border-radius:9px;font-size:14px;margin-bottom:10px}
.checkout-msg.ok{background:rgba(33,193,122,.15);color:#21c17a}
.checkout-msg.err{background:rgba(255,77,77,.15);color:#ff6b6b}

/* contador del carrito en navbar */
.cart-btn .cart-soon{font-weight:700}

@media(max-width:480px){
  .cart-panel{width:100%}
}

/* ════════════════════════════════════════════════
   🛒 BOTÓN CARRITO (logo + badge contador)
   ════════════════════════════════════════════════ */
.cart-btn{
  position:relative;width:38px;height:38px;border-radius:11px;
  border:1px solid var(--card-border);background:var(--card);color:var(--text);
  cursor:pointer;display:grid;place-items:center;
  transition:box-shadow .25s var(--ease),transform .25s var(--ease),border-color .25s var(--ease);
}
.cart-btn:hover{border-color:var(--blue);box-shadow:0 0 18px rgba(0,163,255,.35);transform:translateY(-1px)}
.cart-btn .cart-ico{width:20px;height:20px;display:block}
.cart-btn.has-items{border-color:rgba(0,163,255,.55)}
.cart-count{
  position:absolute;top:-7px;right:-7px;min-width:18px;height:18px;padding:0 5px;
  border-radius:999px;background:var(--red);color:#fff;font-size:11px;font-weight:800;
  display:flex;align-items:center;justify-content:center;line-height:1;
  border:2px solid var(--bg);box-shadow:0 2px 8px rgba(255,0,51,.45);
  animation:cartPop .3s var(--ease);
}
@keyframes cartPop{0%{transform:scale(.2)}60%{transform:scale(1.25)}100%{transform:scale(1)}}

/* ✅ Badge de vendedor verificado (Dux) */
.gi-seller{align-items:center}
.verified-badge{width:15px;height:15px;flex-shrink:0;margin-left:1px;filter:drop-shadow(0 1px 2px rgba(0,163,255,.45))}

/* ════════════════════════════════════════════════
   🎞️ BANNER MÁS GRANDE EN MÓVIL (full-bleed + más alto)
   ════════════════════════════════════════════════ */
@media(max-width:600px){
  .banner-carousel{max-width:96%;margin:10px auto 0;border-radius:14px;background:var(--bg);box-shadow:0 5px 18px rgba(0,0,0,.28)}
  .banner-slide img{aspect-ratio:16/9;width:100%;height:auto;object-fit:contain;object-position:center;background:var(--bg)}
  .banner-dots{bottom:10px}
  .banner-dots button{width:8px;height:8px}
  .banner-arrow{width:32px;height:32px;font-size:14px}
  .banner-prev{left:8px}.banner-next{right:8px}
}
@media(max-width:430px){
  .banner-slide img{aspect-ratio:16/9}
}

/* ════════════════════════════════════════════════
   💬 BOTÓN DE AYUDA FLOTANTE
   ════════════════════════════════════════════════ */
.help-fab{
  position:fixed;right:18px;bottom:18px;z-index:1100;
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 18px 12px 14px;border:none;border-radius:999px;cursor:pointer;
  background:linear-gradient(135deg,var(--blue),#0077cc);color:#fff;
  font-family:var(--font);font-weight:700;font-size:14.5px;
  box-shadow:0 8px 24px rgba(0,163,255,.45);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.help-fab:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 12px 30px rgba(0,163,255,.6)}
.help-fab:active{transform:translateY(0) scale(.98)}
.help-fab-ico{width:20px;height:20px;display:block}
.help-fab::after{content:'';position:absolute;inset:0;border-radius:999px;box-shadow:0 0 0 0 rgba(0,163,255,.45);animation:helpPulse 2.4s var(--ease) infinite;pointer-events:none}
@keyframes helpPulse{0%{box-shadow:0 0 0 0 rgba(0,163,255,.42)}70%{box-shadow:0 0 0 14px rgba(0,163,255,0)}100%{box-shadow:0 0 0 0 rgba(0,163,255,0)}}
@media(max-width:480px){
  .help-fab{right:14px;bottom:14px;padding:12px}
  .help-fab-text{display:none}
}

/* ════════════════════════════════════════════════
   ✦ AYUDA / SOPORTE + EFECTO APPLE INTELLIGENCE
   ════════════════════════════════════════════════ */
.help-overlay{
  position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;
  background:rgba(3,5,10,.74);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
  opacity:0;transition:opacity .3s var(--ease);
}
.help-overlay.show{opacity:1}

/* Glow multicolor que abraza los 4 bordes de la pantalla */
.ai-glow{
  position:fixed;inset:0;pointer-events:none;overflow:hidden;
  -webkit-mask:radial-gradient(135% 105% at 50% 50%,transparent 50%,#000 74%);
          mask:radial-gradient(135% 105% at 50% 50%,transparent 50%,#000 74%);
  opacity:0;transition:opacity .5s var(--ease);
}
.help-overlay.show .ai-glow{opacity:1}
.ai-ring{
  position:absolute;left:50%;top:50%;width:320vmax;height:320vmax;
  transform:translate(-50%,-50%) rotate(0deg);
  background:conic-gradient(from 0deg,#ff2d92,#a64bff,#3b82ff,#00c3ff,#00e0a4,#ffd60a,#ff7eb3,#ff2d92);
  filter:blur(6px) saturate(170%) brightness(1.06);
  animation:aiSpin 7s linear infinite,aiBreathe 3.4s ease-in-out infinite;
}
@keyframes aiSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes aiBreathe{0%,100%{opacity:.82}50%{opacity:1}}

.help-card{
  position:relative;z-index:2;width:100%;max-width:440px;max-height:88vh;overflow-y:auto;
  padding:26px 24px 22px;border-radius:22px;
  transform:translateY(16px) scale(.97);transition:transform .35s var(--ease);
  box-shadow:0 30px 80px rgba(0,0,0,.5);
}
.help-overlay.show .help-card{transform:translateY(0) scale(1)}
.help-close{position:absolute;top:14px;right:16px;background:none;border:none;color:var(--text);font-size:20px;cursor:pointer;line-height:1;opacity:.7}
.help-close:hover{opacity:1}
.help-head{text-align:center;margin-bottom:18px}
.help-spark{display:inline-block;font-size:22px;background:linear-gradient(135deg,#ff2d92,#a64bff,#3b82ff,#00e0a4);-webkit-background-clip:text;background-clip:text;color:transparent;animation:aiBreathe 2.6s ease-in-out infinite}
.help-head h3{font-size:21px;font-weight:800;margin:2px 0 4px}
.help-head p{font-size:13.5px;color:var(--text-dim);margin:0}

.help-support{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}
.help-support-btn{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;color:#fff;font-weight:700;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.help-support-btn svg{width:24px;height:24px;flex-shrink:0}
.help-support-btn span{display:flex;flex-direction:column;line-height:1.15}
.help-support-btn em{font-style:normal;font-weight:500;font-size:11.5px;opacity:.85}
.help-support-btn:hover{transform:translateY(-2px)}
.help-discord{background:#5865F2;box-shadow:0 6px 18px rgba(88,101,242,.4)}
.help-wa{background:#25D366;box-shadow:0 6px 18px rgba(37,211,102,.4)}

.help-faq-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);margin:0 2px 10px}
.help-faq{display:grid;gap:8px}
.help-faq-item{border:1px solid var(--card-border);border-radius:13px;background:var(--input-bg);overflow:hidden}
.help-faq-item summary{list-style:none;cursor:pointer;padding:12px 40px 12px 14px;font-size:14px;font-weight:600;position:relative}
.help-faq-item summary::-webkit-details-marker{display:none}
.help-faq-item summary::after{content:'+';position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:19px;color:var(--blue);transition:transform .25s var(--ease)}
.help-faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.help-faq-item summary:hover{color:var(--blue)}
.help-faq-item p{padding:0 14px 13px;font-size:13.5px;line-height:1.55;color:var(--text-dim);margin:0}
.help-faq-item p strong{color:var(--text)}
.help-foot{text-align:center;font-size:12.5px;color:var(--text-dim);margin:16px 0 0}

@media(max-width:380px){
  .help-support{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .help-fab::after{animation:none}
}

/* ════════════════════════════════════════════════
   📱 NAVBAR MÓVIL — que el carrito (logo) siempre se vea
   ════════════════════════════════════════════════ */
.nav-brand{white-space:nowrap}
@media(max-width:820px){
  .nav-actions .nav-cta{display:none}        /* Discord/Comprar ya están en el hero */
}
@media(max-width:600px){
  .nav-inner{gap:8px;padding:10px 12px}
  .nav-brand{font-size:15.5px}
  .nav-logo img{width:34px;height:34px}
  .lang-btn .lang-cur{display:none}          /* deja solo 🌐 ES */
  .lang-btn{padding:7px 10px}
  .nav-search{margin:0 8px}
}
@media(max-width:430px){
  .nav-brand{display:none}                    /* en pantallas chicas, solo el logo VM */
  .nav-actions{gap:7px}
}

/* ════════════════════════════════════════════════
   💎 GALERÍA "Mira lo que obtienes con Voss VIP"
   ════════════════════════════════════════════════ */
.vip-gallery{max-width:1100px;margin:42px auto 0;padding:0 8px}
.vip-gallery-title{
  text-align:center;font-size:clamp(20px,3vw,28px);font-weight:800;margin:0 0 22px;
  background:linear-gradient(90deg,var(--blue),#fff 60%,var(--red));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.vip-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vip-gallery-grid img{
  width:100%;aspect-ratio:1/1;object-fit:cover;display:block;
  border-radius:16px;border:1.5px solid var(--card-border);
  box-shadow:0 8px 26px rgba(0,0,0,.3);transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.vip-gallery-grid img:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,163,255,.32)}
@media(max-width:820px){.vip-gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){
  .vip-gallery{margin-top:30px}
  .vip-gallery-grid{grid-template-columns:1fr;gap:14px}
  .vip-gallery-grid img{aspect-ratio:16/12}
}

/* ════════════════════════════════════════════════
   🌎 REGIÓN DEL FOOTER (estilo Apple country selector)
   ════════════════════════════════════════════════ */
.footer-region{
  text-align:center;border-top:1px solid var(--card-border);
  max-width:1180px;margin:0 auto;padding:14px 16px 4px;
  display:flex;flex-direction:column;align-items:center;gap:3px;
}
.footer-region-link{
  display:inline-flex;align-items:center;gap:7px;
  color:var(--text);font-size:14px;font-weight:600;
  padding:2px 4px;
}
.footer-region-op{color:var(--text-dim);font-size:12.5px;letter-spacing:.01em}
.footer-region-flag{font-size:15px;line-height:1}

/* ════════════════════════════════════════════════
   ❤️ BOTÓN DE FAVORITOS en cada ítem
   ════════════════════════════════════════════════ */
.gi-fav{
  position:absolute;top:5px;right:5px;width:28px;height:28px;padding:0;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  border:none;border-radius:50%;background:rgba(0,0,0,.55);backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);transition:transform .18s var(--ease),background .2s var(--ease);
  z-index:2;
}
.gi-fav svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2;transition:fill .2s var(--ease),stroke .2s var(--ease)}
.gi-fav:hover{background:rgba(0,0,0,.7);transform:scale(1.12)}
.gi-fav:active{transform:scale(.9)}
.gi-fav.is-fav{background:rgba(255,0,51,.16)}
.gi-fav.is-fav svg{fill:var(--red,#FF0033);stroke:var(--red,#FF0033);animation:favPop .32s var(--ease)}
@keyframes favPop{0%{transform:scale(.6)}55%{transform:scale(1.25)}100%{transform:scale(1)}}

/* ════════════════════════════════════════════════
   🔒 CÓMO PROTEGEMOS TU COMPRA
   ════════════════════════════════════════════════ */
.protect-sec{max-width:1180px;margin:0 auto}
.protect-head{text-align:center;max-width:680px;margin:0 auto 40px}
.protect-kicker{
  display:inline-block;padding:6px 16px;border-radius:999px;font-size:13px;font-weight:700;
  background:rgba(0,163,255,.12);color:var(--blue);border:1px solid rgba(0,163,255,.3);margin-bottom:16px;
}
.protect-head h2{font-size:30px;font-weight:800;line-height:1.15;margin-bottom:12px;color:var(--text)}
.protect-head p{color:var(--text-dim);font-size:16px;line-height:1.55}
.protect-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
}
.protect-card{
  padding:26px 22px;border-radius:18px;text-align:left;
  border:1px solid var(--card-border);background:var(--card);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);
}
.protect-card:hover{transform:translateY(-5px);box-shadow:0 14px 34px rgba(0,0,0,.32);border-color:rgba(0,163,255,.35)}
.protect-icon{
  width:50px;height:50px;border-radius:14px;display:grid;place-items:center;font-size:24px;margin-bottom:16px;
  background:linear-gradient(135deg,rgba(0,163,255,.18),rgba(255,0,51,.12));border:1px solid var(--card-border);
}
.protect-card h3{font-size:16px;font-weight:800;line-height:1.25;margin-bottom:8px;color:var(--text)}
.protect-card p{font-size:13.5px;line-height:1.5;color:var(--text-dim)}
@media(max-width:980px){.protect-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){
  .protect-grid{grid-template-columns:1fr}
  .protect-head h2{font-size:24px}
}

/* ════════════════════════════════════════════════
   🤖 CAPTCHA anti-bot
   ════════════════════════════════════════════════ */
.cap-overlay{
  position:fixed;inset:0;z-index:99999;display:none;
  align-items:center;justify-content:center;padding:20px;
  background:rgba(2,6,14,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.cap-overlay.show{display:flex;animation:capFade .2s var(--ease)}
@keyframes capFade{from{opacity:0}to{opacity:1}}
.cap-box{
  width:100%;max-width:380px;text-align:center;padding:30px 26px;
  background:var(--card);border:1px solid var(--card-border);border-radius:22px;
  box-shadow:0 24px 60px rgba(0,0,0,.5);animation:capPop .25s var(--ease);
}
@keyframes capPop{from{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.cap-shield{
  width:58px;height:58px;margin:0 auto 14px;border-radius:16px;display:grid;place-items:center;font-size:28px;
  background:linear-gradient(135deg,rgba(0,163,255,.2),rgba(255,0,51,.14));border:1px solid var(--card-border);
}
.cap-title{font-size:19px;font-weight:800;color:var(--text);margin-bottom:8px}
.cap-desc{font-size:14px;color:var(--text-dim);line-height:1.5;margin-bottom:20px}
.cap-check{
  display:flex;align-items:center;gap:11px;justify-content:flex-start;
  padding:13px 15px;border:1px solid var(--card-border);border-radius:12px;
  background:rgba(255,255,255,.04);cursor:pointer;font-size:14.5px;font-weight:600;color:var(--text);
}
.cap-check input{width:22px;height:22px;accent-color:var(--blue);cursor:pointer;flex-shrink:0}
.cap-math{display:flex;align-items:center;gap:10px;justify-content:center;margin-top:16px;font-size:16px;font-weight:700;color:var(--text)}
.cap-ans{
  width:84px;padding:9px 10px;font-size:16px;text-align:center;border-radius:10px;
  border:1px solid var(--card-border);background:rgba(255,255,255,.05);color:var(--text);
}
.cap-ans:focus{outline:none;border-color:var(--blue)}
.cap-btn{
  width:100%;margin-top:20px;padding:13px;border:none;border-radius:12px;cursor:pointer;
  font-size:15px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--blue),#0066FF);
  transition:transform .15s var(--ease),box-shadow .2s var(--ease);
}
.cap-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,163,255,.4)}
.cap-err{margin-top:12px;font-size:13px;font-weight:600;color:var(--red)}

/* ════════════════════════════════════════════════
   👤 CUENTAS — botón navbar + modal Supabase
   ════════════════════════════════════════════════ */
.acct-btn{
  display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 10px;
  border:1px solid var(--card-border);border-radius:12px;background:var(--card);
  color:var(--text);cursor:pointer;flex-shrink:0;transition:border-color .2s var(--ease),background .2s var(--ease);
}
.acct-btn:hover{border-color:rgba(0,163,255,.4)}
.acct-ico{width:20px;height:20px}
.acct-avatar{width:26px;height:26px;border-radius:50%;object-fit:cover;border:1px solid var(--card-border)}
.acct-username{font-size:13px;font-weight:700;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.auth-overlay{
  position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;
  padding:18px;background:rgba(2,6,14,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.auth-overlay[hidden]{display:none}
.auth-box{
  position:relative;width:100%;max-width:400px;max-height:92vh;overflow-y:auto;
  padding:28px 26px;border-radius:22px;background:var(--card);border:1px solid var(--card-border);
  box-shadow:0 24px 60px rgba(0,0,0,.5);animation:authPop .25s var(--ease);
}
@keyframes authPop{from{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.auth-close{
  position:absolute;top:12px;right:12px;width:34px;height:34px;border:none;border-radius:10px;
  background:rgba(255,255,255,.06);color:var(--text);font-size:16px;cursor:pointer;
}
.auth-close:hover{background:rgba(255,255,255,.12)}
.auth-logo{text-align:center;font-weight:800;font-size:18px;margin-bottom:6px;color:var(--text)}
.auth-logo span{color:var(--blue)}
.auth-view h3{font-size:20px;font-weight:800;margin:4px 0 16px;color:var(--text);text-align:center}
.auth-input{
  width:100%;padding:12px 14px;margin-bottom:12px;border-radius:12px;font-size:15px;
  border:1px solid var(--card-border);background:rgba(255,255,255,.05);color:var(--text);
  font-family:inherit;
}
.auth-input:focus{outline:none;border-color:var(--blue)}
textarea.auth-input{resize:vertical;min-height:52px}
.auth-err{
  background:rgba(255,0,51,.12);border:1px solid rgba(255,0,51,.35);color:#ff6680;
  padding:10px 12px;border-radius:10px;font-size:13.5px;margin-bottom:12px;line-height:1.4;
}
.auth-switch{text-align:center;font-size:13.5px;color:var(--text-dim);margin-top:14px}
.auth-link{background:none;border:none;color:var(--blue);font-weight:700;cursor:pointer;font-size:13.5px;padding:0}
.auth-link:hover{text-decoration:underline}
.auth-lbl{display:block;font-size:12.5px;font-weight:600;color:var(--text-dim);margin:2px 0 6px}
.auth-file{
  width:100%;font-size:13px;color:var(--text-dim);margin-bottom:14px;
}
.auth-file::file-selector-button{
  margin-right:10px;padding:8px 12px;border-radius:10px;border:1px solid var(--card-border);
  background:rgba(255,255,255,.06);color:var(--text);cursor:pointer;font-weight:600;
}
.auth-actions{display:flex;gap:10px;margin-top:6px}
.auth-actions .btn{flex:1}
.auth-logout{margin-top:10px}

.auth-profile-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.auth-avatar-lg{width:66px;height:66px;border-radius:50%;object-fit:cover;border:2px solid var(--blue);flex-shrink:0}
.auth-profile-meta h3{margin:0;text-align:left;font-size:18px}
.auth-username{display:block;color:var(--text-dim);font-size:14px}
.auth-role{
  display:inline-block;margin-top:4px;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;
  background:rgba(0,163,255,.14);color:var(--blue);border:1px solid rgba(0,163,255,.3);text-transform:capitalize;
}
.auth-bio{color:var(--text);font-size:14px;line-height:1.5;margin:6px 0}
.auth-email{color:var(--text-dim);font-size:13px;margin:2px 0 16px;word-break:break-all}

@media(max-width:600px){
  .acct-username{display:none}
  .acct-btn{padding:0 9px}
  .auth-box{padding:24px 20px;border-radius:18px}
}

/* ════════════════════════════════════════════════
   📱 PULIDO MÓVIL — más cómodo en teléfono
   ════════════════════════════════════════════════ */
@media(max-width:600px){
  /* respiración general entre secciones */
  .section{padding:52px 18px}
  .hero{min-height:auto;padding:116px 20px 54px}
  .hero h1{font-size:clamp(28px,8vw,38px)}
  .hero p{font-size:15px}
  .hero-cta{flex-direction:column;gap:10px;width:100%}
  .hero-cta .btn{width:100%}

  /* botones y controles con buen tamaño táctil */
  .btn{min-height:46px}
  .btn-sm{min-height:38px}
  .acct-btn,.cart-btn,.theme-toggle,.lang-btn{min-height:38px}

  /* tarjetas e ítems con más aire */
  .game-item{padding:12px;border-radius:14px}
  .gi-buy .btn{min-height:42px}
  .protect-card{padding:20px 18px}
  .sell-body{padding:24px 20px}

  /* encabezados de sección un poco más compactos */
  .section h2{font-size:24px}

  /* modales cómodos a pantalla */
  .auth-box,.vm-imgpromo-box,.cap-box{border-radius:18px}
  .auth-box{max-height:90vh}

  /* evita scroll horizontal accidental */
  body{overflow-x:hidden}
}
@media(max-width:380px){
  .nav-actions{gap:6px}
  .acct-btn{padding:0 8px}
  .section{padding:44px 16px}
}

/* avatar del vendedor (Dux = Voss Market) + agotado */
.gi-seller-av{width:18px;height:18px;border-radius:50%;object-fit:cover;vertical-align:middle;margin-right:2px;border:1px solid var(--card-border)}
.gi-soldout-badge{margin-top:6px;font-size:12px;font-weight:800;color:var(--red);letter-spacing:.01em}
.gi-buy.is-soldout{opacity:.92}
.gi-buy.is-soldout .gi-price{text-decoration:line-through;opacity:.6}

/* ════════════════════════════════════════════════
   👋 BOTÓN ¿ERES NUEVO? + MODAL CÓMO FUNCIONA
   ════════════════════════════════════════════════ */
.newbie-btn{
  margin:18px auto 0;display:inline-flex;align-items:center;gap:6px;cursor:pointer;
  padding:11px 20px;border-radius:999px;font-size:14px;font-weight:700;font-family:inherit;
  color:var(--text);background:linear-gradient(120deg,rgba(0,163,255,.16),rgba(255,0,51,.12));
  border:1px solid rgba(0,163,255,.35);transition:transform .18s var(--ease),box-shadow .2s var(--ease);
}
.newbie-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,163,255,.28)}
.newbie-overlay{
  position:fixed;inset:0;z-index:10001;display:flex;align-items:center;justify-content:center;
  padding:18px;background:rgba(2,6,14,.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.newbie-overlay[hidden]{display:none}
.newbie-box{
  position:relative;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;
  padding:30px 28px;border-radius:22px;background:var(--card);border:1px solid var(--card-border);
  box-shadow:0 24px 60px rgba(0,0,0,.5);animation:authPop .25s var(--ease);
}
.newbie-close{
  position:absolute;top:14px;right:14px;width:34px;height:34px;border:none;border-radius:10px;
  background:rgba(255,255,255,.06);color:var(--text);font-size:16px;cursor:pointer;
}
.newbie-close:hover{background:rgba(255,255,255,.12)}
.newbie-title{font-size:22px;font-weight:800;line-height:1.2;margin-bottom:12px;color:var(--text);padding-right:30px}
.newbie-intro{color:var(--text-dim);font-size:14.5px;line-height:1.55;margin-bottom:8px}
.newbie-h{font-size:16px;font-weight:800;color:var(--text);margin:20px 0 10px}
.newbie-steps,.newbie-list{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:9px}
.newbie-steps li,.newbie-list li{color:var(--text-dim);font-size:14px;line-height:1.5}
.newbie-steps li strong,.newbie-list li{color:var(--text)}
.newbie-list{list-style:none;padding-left:2px}
.newbie-cta{margin-top:24px}
@media(max-width:600px){
  .newbie-box{padding:24px 20px;border-radius:18px}
  .newbie-title{font-size:19px}
}

/* ════════════════════════════════════════════════
   👤 CUENTA — online, pedidos, chat
   ════════════════════════════════════════════════ */
.auth-toggle{display:flex;align-items:center;gap:10px;margin:4px 0 14px;cursor:pointer;user-select:none}
.auth-toggle input{position:absolute;opacity:0;pointer-events:none}
.auth-toggle-track{width:42px;height:24px;border-radius:999px;background:rgba(255,255,255,.12);position:relative;transition:background .2s var(--ease);flex-shrink:0}
.auth-toggle-dot{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#9aa6b8;transition:transform .2s var(--ease),background .2s var(--ease)}
.auth-toggle input:checked + .auth-toggle-track{background:rgba(46,204,113,.35)}
.auth-toggle input:checked + .auth-toggle-track .auth-toggle-dot{transform:translateX(18px);background:#2ecc71}
.auth-toggle-lbl{font-size:13.5px;font-weight:700;color:var(--text-dim)}
.auth-toggle-lbl.is-on{color:#2ecc71}

.auth-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.auth-grid2 .btn{width:100%}

.auth-orders{max-height:46vh;overflow-y:auto;margin:6px 0 14px;display:flex;flex-direction:column;gap:10px}
.order-row{padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--card-border)}
.order-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px}
.order-top strong{font-size:14px;color:var(--text)}
.order-status{font-size:11px;font-weight:800;padding:2px 9px;border-radius:999px;text-transform:capitalize;background:rgba(0,163,255,.16);color:var(--blue);border:1px solid rgba(0,163,255,.3)}
.order-status.order-paid,.order-status.order-completed,.order-status.order-delivered{background:rgba(46,204,113,.16);color:#2ecc71;border-color:rgba(46,204,113,.3)}
.order-meta{font-size:12px;color:var(--text-dim)}
.auth-empty{color:var(--text-dim);font-size:14px;text-align:center;padding:20px 0}

.auth-chat{height:300px;max-height:46vh;overflow-y:auto;padding:12px;margin:6px 0 12px;border-radius:14px;background:rgba(0,0,0,.22);border:1px solid var(--card-border);display:flex;flex-direction:column;gap:8px}
.chat-msg{max-width:80%;padding:9px 13px;border-radius:14px;font-size:14px;line-height:1.4;word-break:break-word}
.chat-msg.from-me{align-self:flex-end;background:linear-gradient(120deg,var(--blue),#0077cc);color:#fff;border-bottom-right-radius:4px}
.chat-msg.from-seller{align-self:flex-start;background:rgba(255,255,255,.08);color:var(--text);border-bottom-left-radius:4px}
.auth-chat-input{display:flex;gap:8px;margin-bottom:10px}
.auth-chat-input .auth-input{margin-bottom:0}
.auth-chat-input .btn{flex-shrink:0}

/* punto de estado online en el avatar del perfil */
.auth-profile-head{position:relative}

/* descuento en checkout + tag recomendado */
.discount-msg{font-size:13px;font-weight:700;margin:-4px 0 12px;padding:8px 12px;border-radius:10px}
.discount-msg.ok{background:rgba(46,204,113,.14);color:#2ecc71;border:1px solid rgba(46,204,113,.3)}
.discount-msg.bad{background:rgba(255,0,51,.12);color:#ff6680;border:1px solid rgba(255,0,51,.3)}
.tag.tag-rec{background:linear-gradient(120deg,#00A3FF,#FF0033);color:#fff;border:none}

/* sección Traducción */
.translate-sec{padding-top:20px}
.translate-box{max-width:760px;margin:0 auto;text-align:center;padding:34px 28px;border-radius:22px;background:var(--card);border:1px solid var(--card-border)}
.translate-title{font-size:26px;font-weight:800;margin-bottom:16px}
.translate-box p{color:var(--text-dim);font-size:15px;line-height:1.6;margin:0 auto 12px;max-width:620px}
.translate-box .btn{margin-top:12px}
@media(max-width:600px){.translate-box{padding:26px 20px}.translate-title{font-size:21px}}

/* directorio de usuarios / vendedores */
.auth-direct{text-align:center;font-size:12.5px;color:var(--text-dim);margin-top:8px}
.auth-direct a{color:var(--blue);font-weight:700;text-decoration:none}
.auth-direct a:hover{text-decoration:underline}
.auth-users{max-height:46vh;overflow-y:auto;margin:8px 0 12px;display:flex;flex-direction:column;gap:8px}
.user-row{display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:10px 12px;border-radius:12px;
  background:rgba(255,255,255,.05);border:1px solid var(--card-border);color:var(--text);cursor:pointer;transition:border-color .2s var(--ease)}
.user-row:hover{border-color:rgba(0,163,255,.4)}
.user-av{width:38px;height:38px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--card-border)}
.user-meta{display:flex;flex-direction:column;flex:1;min-width:0}
.user-name{font-weight:700;font-size:14px;display:flex;align-items:center;gap:7px}
.user-handle{font-size:12px;color:var(--text-dim)}
.user-seller{font-size:10px;font-weight:800;padding:1px 7px;border-radius:999px;background:rgba(0,163,255,.16);color:var(--blue);border:1px solid rgba(0,163,255,.3)}
.user-dot{width:10px;height:10px;border-radius:50%;background:#6b7280;flex-shrink:0}
.user-dot.on{background:#2ecc71;box-shadow:0 0 8px rgba(46,204,113,.7)}

/* cabecera del chat 1-a-1 */
.chat-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.chat-back{width:32px;height:32px;border:none;border-radius:9px;background:rgba(255,255,255,.06);color:var(--text);font-size:17px;cursor:pointer;flex-shrink:0}
.chat-back:hover{background:rgba(255,255,255,.12)}
.chat-head-av{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid var(--card-border)}
.chat-head-name{font-weight:700;font-size:15px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-head-dot{width:10px;height:10px;border-radius:50%;background:#6b7280;flex-shrink:0}
.chat-head-dot.on{background:#2ecc71;box-shadow:0 0 8px rgba(46,204,113,.7)}

/* contacto oficial en directorio + seguridad/2FA */
.user-official{cursor:default}
.official-links{display:flex;gap:10px;margin:10px 0 4px}
.official-links .btn{flex:1}
.sec-status{font-weight:700;color:var(--text);margin-bottom:14px}
.sec-note{color:var(--text-dim);font-size:13.5px;line-height:1.5;margin-bottom:12px}
.sec-qr{display:flex;justify-content:center;margin:10px 0}
.sec-qr img{width:180px;height:180px;background:#fff;border-radius:12px;padding:8px}
.sec-secret{text-align:center;font-size:13px;color:var(--text-dim);word-break:break-all;margin:8px 0 12px}
.sec-secret span{font-family:monospace;color:var(--text);background:rgba(255,255,255,.06);padding:2px 8px;border-radius:6px}

/* ════════════════════════════════════════════════
   🔔 CAMPANA + ACTIVIDADES, FAVORITOS, 2FA EMAIL, REPORTAR
   ════════════════════════════════════════════════ */
.bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border:1px solid var(--card-border);border-radius:12px;background:var(--card);color:var(--text);cursor:pointer;flex-shrink:0;transition:border-color .2s var(--ease)}
.bell-btn:hover{border-color:rgba(0,163,255,.4)}
.bell-btn svg{width:19px;height:19px}
.bell-dot{position:absolute;top:7px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 6px var(--red)}

.act-overlay{position:fixed;inset:0;z-index:10002;display:flex;align-items:center;justify-content:center;padding:18px;
  background:rgba(2,6,14,.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.act-overlay[hidden]{display:none}
.act-box{position:relative;width:100%;max-width:420px;max-height:84vh;overflow-y:auto;padding:26px 22px;border-radius:20px;
  background:var(--card);border:1px solid var(--card-border);box-shadow:0 24px 60px rgba(0,0,0,.5);animation:authPop .25s var(--ease)}
.act-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:9px;background:rgba(255,255,255,.06);color:var(--text);cursor:pointer}
.act-title{font-size:19px;font-weight:800;margin-bottom:14px}
.act-list{display:flex;flex-direction:column;gap:9px}
.act-row{display:flex;gap:11px;align-items:flex-start;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--card-border)}
.act-ico{font-size:17px;flex-shrink:0}
.act-meta{display:flex;flex-direction:column;min-width:0}
.act-text{font-size:13.5px;color:var(--text);line-height:1.4}
.act-time{font-size:11.5px;color:var(--text-dim);margin-top:2px}
.act-empty{color:var(--text-dim);text-align:center;padding:28px 0;font-size:14px}

.auth-favs{display:flex;flex-direction:column;gap:8px;margin:6px 0 12px;max-height:46vh;overflow-y:auto}
.fav-row{display:flex;align-items:center;gap:10px;width:100%;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--card-border);font-size:14px;color:var(--text);cursor:pointer;text-align:left;transition:border-color .15s var(--ease),background .15s var(--ease)}
.fav-row:hover{border-color:var(--blue);background:rgba(0,163,255,.08)}
.fav-row .fav-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fav-row .fav-go{font-size:12.5px;font-weight:800;color:var(--blue);flex-shrink:0}
.fav-heart{flex-shrink:0}

.order-done{margin-top:8px;font-size:12.5px;font-weight:700;color:#2ecc71}
.order-row.is-done{border-color:rgba(46,204,113,.35)}

.auth-logout-all{color:var(--red);margin-top:6px;font-size:13px}
.sec-divider{display:flex;align-items:center;gap:10px;margin:18px 0;color:var(--text-dim);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.sec-divider::before,.sec-divider::after{content:'';flex:1;height:1px;background:var(--card-border)}
.sec-sub{font-size:15px;font-weight:800;margin:4px 0 6px;color:var(--text)}

.chat-report{margin-left:6px;width:30px;height:30px;border:none;border-radius:8px;background:rgba(255,0,51,.12);cursor:pointer;font-size:14px;flex-shrink:0}
.chat-report:hover{background:rgba(255,0,51,.22)}

@media(max-width:600px){.act-box{padding:22px 18px}}

/* ════════════════════════════════════════════════
   📱 FIX MÓVIL — evita el zoom que se traba en iPhone
   (iOS hace auto-zoom cuando el input es < 16px)
   ════════════════════════════════════════════════ */
@media(max-width:768px){
  input, select, textarea, .auth-input, .auth-file{ font-size:16px !important; }
  html, body{ -webkit-text-size-adjust:100%; text-size-adjust:100%; touch-action:manipulation; }
}
/* evita doble-tap zoom en botones/enlaces interactivos */
button, a, .btn, .card, .game-item, .user-row, .gi-fav{ touch-action:manipulation; }

.hero-mini{ margin-top:10px; font-size:14px; color:var(--text-dim); }
.act-logo{width:26px;height:26px;border-radius:7px;object-fit:cover;vertical-align:middle}

/* mini beneficios bajo el título de productos */
.mini-benefits{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px}
.mini-benefits span{font-size:12.5px;font-weight:700;color:var(--text-dim);background:rgba(255,255,255,.05);border:1px solid var(--card-border);padding:6px 12px;border-radius:999px}
/* badges de urgencia en tarjetas */
.card-badges{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.ubadge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.06);color:var(--text-dim);border:1px solid rgba(255,255,255,.12)}
.ubadge-stock{background:rgba(46,204,113,.10);color:#5fd39a;border-color:rgba(46,204,113,.22)}

/* sección ¿por qué comprar? */
.whybuy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:980px;margin:0 auto}
.whybuy-card{display:flex;align-items:center;gap:12px;padding:18px 18px;border-radius:16px;border:1px solid var(--card-border)}
.whybuy-card span{font-size:20px;flex-shrink:0}
.whybuy-card p{margin:0;font-size:14.5px;color:var(--text);line-height:1.4}
.whybuy-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
@media(max-width:860px){.whybuy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.whybuy-grid{grid-template-columns:1fr}.whybuy-cta .btn{width:100%}}

/* topbar premium: una sola línea centrada */


@media(max-width:600px){
  
  
}

/* ════════════════════════════════════════════════
   💎 VOSS VIP — tarjeta premium
   ════════════════════════════════════════════════ */
.vip-card{position:relative;max-width:420px;margin:0 auto;padding:42px 30px 26px;border-radius:24px;text-align:center;
  background:radial-gradient(120% 120% at 50% 0%, rgba(0,163,255,.14), rgba(11,27,52,.9) 55%), #0a1730;
  border:1.5px solid transparent;
  background-clip:padding-box;
  box-shadow:0 18px 50px rgba(0,0,0,.5), 0 0 0 1px rgba(0,163,255,.25), 0 0 40px rgba(0,163,255,.18);
  overflow:visible;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.vip-card::before{content:'';position:absolute;inset:-1.5px;border-radius:24px;padding:1.5px;z-index:-1;
  background:linear-gradient(135deg,var(--blue),var(--red));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.vip-card:hover{transform:translateY(-5px);box-shadow:0 26px 64px rgba(0,0,0,.55),0 0 56px rgba(0,163,255,.32),0 0 40px rgba(255,0,51,.18)}
.vip-crown{position:absolute;top:-22px;left:50%;transform:translateX(-50%);font-size:38px;filter:drop-shadow(0 4px 12px rgba(0,163,255,.5))}
.vip-card .plan-badge{display:inline-block;position:static;transform:none;left:auto;top:auto;margin:6px auto 14px;padding:5px 16px;border-radius:999px;font-size:13px;font-weight:800;
  background:linear-gradient(120deg,var(--blue),#0077cc);color:#fff;border:none;position:static}
.vip-card .plan-price{font-size:0;margin:6px 0 12px}
.vip-card .plan-price #planPrice{font-size:54px;font-weight:900;letter-spacing:-.02em;
  background:linear-gradient(120deg,#fff,#bfe0ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.vip-card .plan-price em{font-size:18px;font-style:normal;color:var(--text-dim);font-weight:700;-webkit-text-fill-color:initial}
.vip-small{font-size:13px;color:var(--text-dim);line-height:1.5;margin:0 0 18px;max-width:320px;margin-inline:auto}
.vip-card .sub-btn{font-size:16px;padding:14px;box-shadow:0 10px 28px rgba(0,163,255,.4)}
.vip-see{margin-top:14px;font-size:13px;font-weight:700;color:var(--blue)}

/* tarjetas de beneficios VIP con glow y hover */
.vip-gallery-title{max-width:680px;margin:0 auto 22px;font-size:17px;font-weight:700;color:var(--text-dim);line-height:1.5;text-align:center}
.vip-gallery-grid img{border-radius:18px;border:1px solid var(--card-border);transition:transform .25s var(--ease),box-shadow .25s var(--ease);background:#0a1730}
.vip-gallery-grid img:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 18px 44px rgba(0,0,0,.5),0 0 34px rgba(0,163,255,.3),0 0 22px rgba(255,0,51,.16)}
@media(max-width:600px){.vip-card{padding:38px 22px 24px}.vip-card .plan-price #planPrice{font-size:46px}}

/* ════════════════════════════════════════════════
   🔥 ENGANCHE — bienvenida, actividad reciente, sticky, micro
   ════════════════════════════════════════════════ */
.trust-micro{margin-top:14px;font-size:12.5px;color:var(--text-dim);font-weight:600}
.welcome-reward{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  max-width:980px;margin:28px auto 0;padding:20px 24px;border-radius:18px;
  background:linear-gradient(120deg,rgba(0,163,255,.12),rgba(255,0,51,.1));border:1px solid rgba(0,163,255,.3)}
.wr-left{display:flex;align-items:center;gap:14px}
.wr-emoji{font-size:30px}
.welcome-reward h3{margin:0 0 3px;font-size:17px;font-weight:800}
.welcome-reward p{margin:0;font-size:13.5px;color:var(--text-dim);max-width:520px}
.recent-activity{display:flex;align-items:center;gap:14px;max-width:980px;margin:16px auto 0;padding:12px 18px;border-radius:14px;
  background:rgba(255,255,255,.04);border:1px solid var(--card-border);overflow:hidden}
.ra-live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:#2ecc71;white-space:nowrap;flex-shrink:0}
.ra-dot{width:8px;height:8px;border-radius:50%;background:#2ecc71;box-shadow:0 0 6px rgba(46,204,113,.6)}
@keyframes raPulse{0%,100%{opacity:1}50%{opacity:.35}}
.ra-ticker{flex:1;min-width:0;overflow:hidden}
.ra-item{font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .25s var(--ease)}

.mobile-bar{display:none}
@media(max-width:760px){
  .mobile-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9000;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    background:rgba(8,16,30,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--card-border)}
  .mobile-bar .btn{flex:1;min-height:46px;font-size:15px}
  body{padding-bottom:72px}
  .welcome-reward{flex-direction:column;text-align:center}
  .welcome-reward .btn{width:100%}
}

/* ════════════════════════════════════════════════
   🔥 OFERTAS ACTIVAS + ✨ RECOMENDADO PARA TI
   ════════════════════════════════════════════════ */
.offers-banner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;max-width:980px;margin:0 auto 22px;
  padding:14px 20px;border-radius:16px;background:linear-gradient(120deg,rgba(255,0,51,.12),rgba(0,163,255,.1));border:1px solid rgba(255,0,51,.28)}
.ob-tags{display:flex;gap:8px;flex-wrap:wrap}
.ob-tag{font-size:11.5px;font-weight:800;padding:4px 11px;border-radius:999px;background:rgba(255,0,51,.16);color:#ff5c7a;border:1px solid rgba(255,0,51,.3)}
.ob-tag-2{background:rgba(0,163,255,.14);color:var(--blue);border-color:rgba(0,163,255,.3)}
.ob-tag-3{background:rgba(46,204,113,.14);color:#2ecc71;border-color:rgba(46,204,113,.3)}
.ob-timer{font-size:14px;font-weight:700;color:var(--text)}
.ob-timer strong{font-family:monospace;font-size:16px;color:#fff;background:rgba(0,0,0,.3);padding:3px 10px;border-radius:8px;margin-left:4px;letter-spacing:1px}
.ob-note{font-size:12px;color:var(--text-dim);font-weight:600}

.recommended{max-width:1200px;margin:0 auto 26px}
.rec-title{font-size:20px;font-weight:800;margin-bottom:14px}
.rec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.rec-card{position:relative}
@media(max-width:860px){.rec-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.rec-grid{grid-template-columns:1fr 1fr;gap:10px}.offers-banner{padding:12px 14px}}

/* === FIX hero: separar bien el texto de bienvenida de los botones === */
.hero-sub{margin:20px auto 12px !important}
.hero-mini{margin:0 auto 26px !important;max-width:560px;line-height:1.5}
.hero-cta{margin-top:0}
.newbie-btn{margin:20px auto 4px;max-width:92%;text-align:center;line-height:1.35;white-space:normal}
.trust-micro{margin-top:16px;line-height:1.5;max-width:560px;margin-left:auto;margin-right:auto}

/* reseñas en grilla estática (sin duplicados) */
.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:1200px;margin:0 auto}
.reviews-grid .review-card{padding:18px 18px;border-radius:16px;border:1px solid var(--card-border)}
.reviews-grid .review-stars{font-size:13px;margin-bottom:8px}
.reviews-grid .review-text{font-size:14px;line-height:1.5;color:var(--text);margin:0 0 10px}
.reviews-grid .review-name{font-size:12.5px;font-weight:700;color:var(--blue)}
@media(max-width:900px){.reviews-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.reviews-grid{grid-template-columns:1fr}}

/* ⭐ calificación en tarjetas */
.card-rating{display:flex;align-items:center;gap:6px;margin:2px 0 6px;font-size:13px}
.card-rating .stars{display:inline-flex;letter-spacing:1px}
.card-rating .st{color:#39435a}
.card-rating .st.full{color:#ffc83d}
.card-rating .st.half{position:relative;color:#39435a}
.card-rating .st.half::before{content:'★';position:absolute;left:0;width:50%;overflow:hidden;color:#ffc83d}
.card-rating b{color:var(--text);font-weight:800}
.card-rating .rev-count{color:var(--text-dim);font-size:12px}

/* foto en chat */
.chat-photo-btn{width:42px;height:42px;flex-shrink:0;border:1px solid var(--card-border);border-radius:12px;background:rgba(255,255,255,.05);font-size:18px;cursor:pointer}
.chat-photo-btn:hover{background:rgba(255,255,255,.1)}
.chat-msg.is-img{padding:5px;background:transparent!important}
.chat-img{max-width:200px;max-height:240px;border-radius:12px;display:block}

/* sección Feedback */
.feedback-box{max-width:620px;margin:0 auto;text-align:center;padding:34px 28px;border-radius:22px;background:var(--card);border:1px solid var(--card-border)}
.feedback-title{font-size:26px;font-weight:800;margin-bottom:10px}
.feedback-sub{color:var(--text-dim);font-size:15px;margin-bottom:18px}
.fb-stars{display:flex;justify-content:center;gap:6px;margin-bottom:16px}
.fb-stars button{background:none;border:none;font-size:32px;line-height:1;color:#39435a;cursor:pointer;transition:transform .12s var(--ease),color .12s var(--ease)}
.fb-stars button:hover{transform:scale(1.15)}
.fb-stars button.on{color:#ffc83d}
.fb-textarea{width:100%;padding:14px 16px;border-radius:14px;background:rgba(0,0,0,.25);border:1px solid var(--card-border);color:var(--text);font-family:inherit;font-size:15px;resize:vertical;margin-bottom:16px}
.fb-textarea:focus{outline:none;border-color:var(--blue)}
.fb-msg{margin-top:14px;font-weight:700;font-size:14px}
.fb-msg.ok{color:#2ecc71}.fb-msg.bad{color:#ff6680}
@media(max-width:600px){.feedback-box{padding:26px 20px}.feedback-title{font-size:21px}}

/* ════════════════════════════════════════════════
   📱 BARRA INFERIOR estilo app (4 accesos) + tamaños móvil
   ════════════════════════════════════════════════ */
@media(max-width:760px){
  .mobile-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9000;gap:0;padding:6px 4px calc(6px + env(safe-area-inset-bottom));
    background:rgba(8,16,30,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--card-border)}
  .mbar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    background:none;border:none;color:var(--text-dim);font-size:11px;font-weight:700;text-decoration:none;padding:6px 2px;cursor:pointer;min-height:52px}
  .mbar-item:active{color:var(--blue)}
  .mbar-ico{font-size:20px;line-height:1}
  body{padding-bottom:76px}
}

/* === MÓVIL: todo un poco más grande y cómodo (no apretado) === */
@media(max-width:600px){
  html{font-size:17px}
  .hero-sub{font-size:16px !important}
  .hero-mini{font-size:15px !important}
  .section-head h2,.section-title{font-size:25px}
  .section-head p{font-size:15.5px}
  /* productos: 1 columna cómoda */
  #productGrid,.grid{grid-template-columns:1fr !important;gap:16px}
  .rec-grid{grid-template-columns:1fr 1fr;gap:12px}
  .card h3{font-size:19px}
  .card p{font-size:14.5px}
  .card .btn,.btn-sm{font-size:15px;padding:12px 16px;min-height:46px;width:100%}
  .card-rating{font-size:15px}
  .gi-fav{width:42px;height:42px}
  .game-item .btn{min-height:46px;font-size:15px}
  /* botones grandes y separados */
  .hero-cta .btn{min-height:52px;font-size:16px}
  .btn-lg{min-height:54px;font-size:17px}
  .mini-benefits span{font-size:12px}
}

/* visor de feedback (admin) */
.fb-row{padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--card-border);text-align:left}
.fb-row-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
.fb-row-stars{color:#ffc83d;font-size:14px;letter-spacing:1px}
.fb-row-date{font-size:11.5px;color:var(--text-dim)}
.fb-row-msg{margin:0 0 6px;font-size:14px;color:var(--text);line-height:1.45}
.fb-row-mail{font-size:12px;color:var(--blue)}

/* filtro de precio en ítems */
.filter-price{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.filter-price-inp{flex:1;min-width:0;width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--card-border);background:rgba(0,0,0,.3);color:var(--text);font-size:15px;-moz-appearance:textfield}
.filter-price-inp::-webkit-outer-spin-button,.filter-price-inp::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.filter-price-inp:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 2px rgba(0,163,255,.2)}
.filter-price-inp::placeholder{color:var(--text-dim)}
.filter-price-sep{color:var(--text-dim);font-size:15px;flex-shrink:0}
.filter-price-clear{margin-top:8px;width:100%;background:rgba(255,255,255,.05);border:1px solid var(--card-border);color:var(--text-dim);border-radius:9px;padding:7px;font-size:12.5px;cursor:pointer}
.filter-price-clear:hover{color:var(--text);border-color:var(--blue)}

/* beneficios VIP en cards separadas */
.vip-benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;max-width:900px;margin:0 auto 22px}
.vip-benefit{display:flex;align-items:center;gap:11px;padding:13px 16px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--card-border);font-size:14.5px;font-weight:600;color:var(--text)}
.vip-benefit-ico{font-size:20px;flex-shrink:0}
@media(max-width:600px){.vip-benefits{grid-template-columns:1fr}}

/* botón limpiar todos los filtros */
.filter-clear-all{width:100%;margin-top:14px;background:rgba(0,163,255,.1);border:1px solid rgba(0,163,255,.35);color:var(--blue);border-radius:10px;padding:10px;font-size:13px;font-weight:700;cursor:pointer}
.filter-clear-all:hover{background:rgba(0,163,255,.18)}
.game-empty{text-align:center;color:var(--text-dim);padding:30px 16px;font-size:15px}

/* ===== Términos: botón abrir + modal ===== */
.terms-footer{text-align:center;padding:10px 0}
.terms-open-btn{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.05);border:1px solid var(--card-border);color:var(--text);border-radius:14px;padding:14px 26px;font-size:16px;font-weight:700;cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}
.terms-open-btn:hover{border-color:var(--blue);background:rgba(0,163,255,.08)}
.terms-open-tag{color:var(--blue);font-weight:800}
.terms-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}
.terms-modal[hidden]{display:none}
.terms-modal-box{position:relative;max-width:760px;width:100%;max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:30px 28px}
.terms-modal-title{font-size:24px;font-weight:800;text-align:center;margin-bottom:18px}
.terms-modal-box .lang-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:18px}
.terms-modal-box .terms-block ol{padding-left:20px}
.terms-modal-box .terms-block li{margin-bottom:12px;line-height:1.55;font-size:14px}
@media(max-width:600px){.terms-modal-box{padding:24px 18px;max-height:90vh}.terms-modal-title{font-size:20px}}

/* ===== Modal aplicar como vendedor ===== */
.seller-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}
.seller-modal[hidden]{display:none}
.seller-modal-box{position:relative;max-width:540px;width:100%;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:30px 28px}
.seller-modal-title{font-size:24px;font-weight:800;text-align:center;margin-bottom:8px}
.seller-modal-sub{color:var(--text-dim);font-size:14.5px;text-align:center;line-height:1.5;margin-bottom:16px}
.seller-benefits{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:8px}
.seller-benefits li{background:rgba(255,255,255,.04);border:1px solid var(--card-border);border-radius:10px;padding:10px 13px;font-size:13.5px;font-weight:600;color:var(--text)}
.seller-form{display:grid;gap:13px}
.seller-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--text-dim)}
.seller-form input,.seller-form textarea{padding:11px 13px;border-radius:11px;border:1px solid var(--card-border);background:rgba(0,0,0,.28);color:var(--text);font-size:15px;font-family:inherit;font-weight:400}
.seller-form input:focus,.seller-form textarea:focus{outline:none;border-color:var(--blue)}
.seller-form textarea{resize:vertical}
.seller-form-msg{margin-top:6px;font-weight:700;font-size:14px;text-align:center;line-height:1.5}
.seller-form-msg.ok{color:#2ecc71}.seller-form-msg.bad{color:#ff6680}
@media(max-width:600px){.seller-modal-box{padding:24px 18px}.seller-modal-title{font-size:20px}}

/* productos de vendedores verificados */
.verified-seller-badge{font-size:11.5px;font-weight:800;color:#2ecc71;background:rgba(46,204,113,.12);border:1px solid rgba(46,204,113,.3);border-radius:999px;padding:4px 10px}

/* ===== Panel de vendedor integrado (overlay pantalla completa, fondo Voss) ===== */
.seller-panel{position:fixed;inset:0;z-index:10060;background:var(--bg);overflow-y:auto;-webkit-overflow-scrolling:touch;animation:spnFade .3s var(--ease)}
.seller-panel[hidden]{display:none}
@keyframes spnFade{from{opacity:0}to{opacity:1}}
.spn-topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:rgba(5,7,10,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--card-border)}
.spn-brand{font-weight:800;font-size:16px;color:var(--text)}
.spn-brand em{color:var(--blue);font-style:normal}
.spn-sub{color:var(--text-dim);font-weight:700;font-size:13.5px}
.spn-close{width:42px;height:42px;border-radius:12px;border:1px solid var(--card-border);background:rgba(255,255,255,.05);color:var(--text);font-size:16px;cursor:pointer;flex-shrink:0;transition:border-color .2s var(--ease)}
.spn-close:hover{border-color:var(--blue)}
.spn-wrap{max-width:980px;margin:0 auto;padding:22px 16px 90px}
.spn-title{font-size:clamp(19px,4.5vw,24px);font-weight:800;margin-bottom:16px}
.spn-center{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:20px}
.spn-msg-card{max-width:420px;width:100%;padding:34px 26px;text-align:center;display:grid;gap:14px}
.spn-msg-card h2{font-size:20px;line-height:1.35}
.spn-msg-card p{color:var(--text-dim);font-size:14.5px;line-height:1.55}
.spn-note{color:var(--text-dim);font-size:12.5px;margin-top:10px;line-height:1.5}
.sd-tabs{display:flex;gap:8px;margin:0 -16px 16px;padding:4px 16px 10px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sd-tabs::-webkit-scrollbar{display:none}
.sd-tabs button{flex-shrink:0;font-family:inherit;font-size:13.5px;font-weight:700;padding:11px 16px;border-radius:12px;border:1px solid var(--card-border);background:rgba(255,255,255,.04);color:var(--text-dim);cursor:pointer;min-height:44px;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .12s var(--ease)}
.sd-tabs button:active{transform:scale(.96)}
.sd-tabs button.on{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 4px 16px rgba(0,163,255,.35)}
.sd-card{padding:20px;border-radius:18px;margin-bottom:16px}
.sd-card h3{margin-bottom:14px}
.sd-view{animation:spnFade .25s var(--ease)}
.sd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.sd-stat{background:rgba(255,255,255,.04);border:1px solid var(--card-border);border-radius:14px;padding:16px 10px;text-align:center}
.sd-stat b{display:block;font-size:clamp(18px,5vw,22px);margin-bottom:4px}
.sd-stat span{font-size:12px;color:var(--text-dim)}
.sd-form{display:grid;gap:13px}
.sd-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--text-dim)}
.sd-form input,.sd-form textarea,.sd-form select{padding:13px 14px;border-radius:12px;border:1px solid var(--card-border);background:rgba(0,0,0,.28);color:var(--text);font-size:16px;font-family:inherit;min-height:48px;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.sd-form textarea{min-height:74px;resize:vertical}
.sd-form input:focus,.sd-form textarea:focus,.sd-form select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,163,255,.15)}
.sd-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sd-msg{font-weight:700;font-size:14px;text-align:center;margin-top:8px;line-height:1.5}
.sd-msg.ok{color:#2ecc71}.sd-msg.bad{color:#ff6680}
.sp-item{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.04);border:1px solid var(--card-border);border-radius:16px;padding:14px;margin-bottom:10px;flex-wrap:wrap;transition:border-color .2s var(--ease)}
.sp-item:hover{border-color:rgba(0,163,255,.35)}
.sp-item img{width:52px;height:52px;object-fit:cover;border-radius:12px;background:#111}
.sp-main{flex:1;min-width:180px}
.sp-main h4{font-size:15px;margin-bottom:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sp-main p{font-size:12.5px;color:var(--text-dim);line-height:1.5}
.sp-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;width:100%;justify-content:flex-end}
.sp-actions button{font-family:inherit;font-size:12.5px;font-weight:700;padding:10px 13px;border-radius:11px;border:1px solid var(--card-border);background:rgba(255,255,255,.05);color:var(--text);cursor:pointer;min-height:42px;transition:border-color .2s var(--ease),transform .12s var(--ease)}
.sp-actions button:active{transform:scale(.95)}
.sp-actions button:hover{border-color:var(--blue)}
.st-badge{font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
.st-pending{background:rgba(255,176,32,.15);color:#FFB020}
.st-approved{background:rgba(46,204,113,.15);color:#2ecc71}
.st-rejected{background:rgba(255,0,51,.15);color:#ff5577}
.st-paused{background:rgba(160,160,160,.15);color:#aaa}
.st-sold_out{background:rgba(255,140,0,.18);color:#ff9d3d}
.ord-btns{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-top:10px;width:100%}
.ord-btns button{font-family:inherit;font-size:12.5px;font-weight:700;padding:11px 8px;border-radius:11px;border:1px solid var(--card-border);background:rgba(255,255,255,.05);color:var(--text);cursor:pointer;min-height:46px;transition:border-color .2s var(--ease),background .2s var(--ease),transform .12s var(--ease)}
.ord-btns button:active{transform:scale(.95)}
.ord-btns button:hover{border-color:var(--blue);background:rgba(0,163,255,.08)}
.sd-empty{padding:30px 16px;text-align:center;color:var(--text-dim);font-size:14px;line-height:1.5}
.rules-list{display:grid;gap:8px;padding:0;list-style:none}
.rules-list li{background:rgba(255,255,255,.04);border:1px solid var(--card-border);border-radius:12px;padding:12px 14px;font-size:13.5px;line-height:1.5}
@media(max-width:600px){
  .spn-wrap{padding:16px 13px 80px}
  .sd-card{padding:16px 14px}
  .sd-row2{grid-template-columns:1fr}
  .sd-tabs{margin:0 -13px 14px;padding:4px 13px 10px}
}

/* estado de vendedor en el perfil */
.prof-seller-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--card-border);font-size:13.5px;margin-top:4px}
.prof-seller-label{color:var(--text-dim);font-weight:700}
.prof-seller-status{font-weight:800;padding:3px 10px;border-radius:999px;font-size:12px;background:rgba(160,160,160,.15);color:#aaa}
.prof-seller-status.is-pending{background:rgba(255,176,32,.15);color:#FFB020}
.prof-seller-status.is-approved{background:rgba(46,204,113,.15);color:#2ecc71}
.prof-seller-status.is-rejected{background:rgba(255,0,51,.15);color:#ff5577}

/* X roja gigante (texto no permitido) */
.bigx-overlay{position:fixed;inset:0;z-index:10999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;background:rgba(0,0,0,.55);backdrop-filter:blur(3px);animation:bigxFade .18s var(--ease)}
.bigx-mark{font-size:120px;font-weight:900;color:#FF0033;line-height:1;text-shadow:0 0 40px rgba(255,0,51,.6);animation:bigxPop .35s cubic-bezier(.2,1.6,.4,1)}
.bigx-msg{color:#fff;font-weight:800;font-size:16px}
@keyframes bigxPop{0%{transform:scale(.2);opacity:0}60%{transform:scale(1.15)}100%{transform:scale(1);opacity:1}}
@keyframes bigxFade{from{opacity:0}to{opacity:1}}
.bigx-overlay.out{animation:bigxOut .25s var(--ease) forwards}
@keyframes bigxOut{to{opacity:0}}

/* filtros de productos de vendedores */
.spf-bar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}
.spf-sel,.spf-inp{padding:10px 12px;border-radius:11px;border:1px solid var(--card-border);background:rgba(0,0,0,.28);color:var(--text);font-size:14px;font-family:inherit;min-height:44px}
.spf-inp{width:110px}
.spf-sel:focus,.spf-inp:focus{outline:none;border-color:var(--blue)}
@media(max-width:600px){.spf-bar{gap:8px}.spf-sel{flex:1;min-width:130px}.spf-inp{flex:1;min-width:90px}}

/* sección simple Sé un Vendedor */
.seller-simple-card{max-width:560px;margin:0 auto;padding:30px 26px;text-align:center;border-radius:20px}
.seller-simple-title{font-size:24px;font-weight:800;margin-bottom:10px}
.seller-simple-text{color:var(--text-dim);font-size:14.5px;line-height:1.55;margin-bottom:18px}
.seller-simple-list{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:8px;text-align:left}
.seller-simple-list li{background:rgba(255,255,255,.04);border:1px solid var(--card-border);border-radius:10px;padding:11px 14px;font-size:13.5px;font-weight:600}

/* solicitando con cuenta */
.seller-as{background:rgba(0,163,255,.08);border:1px solid rgba(0,163,255,.3);border-radius:11px;padding:11px 14px;font-size:13.5px;color:var(--text-dim);text-align:center}
.seller-as b{color:var(--blue)}

/* ============================================================
   ===== MOBILE-FIRST + UI PREMIUM PASS (Voss Market) =====
   Añadido al final: tiene prioridad sobre reglas previas.
   ============================================================ */

/* --- Cierre grande y táctil en TODOS los modales/overlays --- */
.modal-close, .vm-promo-close, .vm-imgpromo-close, .modal-close#sellerModalClose,
#termsModalClose, #sellerModalClose, .spn-close, .act-close, .auth-close, .newbie-close, .cap-close{
  width:44px !important; height:44px !important; border-radius:14px !important;
  font-size:19px !important; display:flex; align-items:center; justify-content:center;
  z-index:20; touch-action:manipulation;
}

/* --- Modal de pedido / genérico: bottom-sheet cómodo en móvil --- */
@media (max-width:600px){
  .modal-backdrop{ padding:0; place-items:end center; }
  .modal{
    max-width:100%; width:100%; max-height:92vh; overflow-y:auto;
    border-radius:22px 22px 0 0; padding:20px 16px calc(20px + env(safe-area-inset-bottom));
    animation:sheetUp .3s cubic-bezier(.2,.9,.3,1);
  }
  @keyframes sheetUp{from{transform:translateY(100%)}to{transform:none}}
  /* barrita de "arrastre" arriba del sheet */
  .modal::before{
    content:""; position:sticky; top:0; display:block; width:40px; height:4px; margin:-4px auto 12px;
    border-radius:99px; background:rgba(255,255,255,.25);
  }
  .modal-close{ position:sticky; top:0; float:right; margin:-2px -2px 0 0; }
  .modal h3{ font-size:19px; clear:both; }
  .modal-sub{ font-size:13.5px; margin:6px 0 16px; }
  #orderForm input,#orderForm select,#orderForm textarea,
  .seller-form input,.seller-form textarea,.sd-form input,.sd-form select,.sd-form textarea{
    font-size:16px; min-height:48px; padding:13px 14px;
  }
  #orderForm button[type=submit], .seller-form button[type=submit]{ min-height:52px; font-size:16px; }
}

/* ============================================================
   Mensajes comprador-vendedor · estados, Realtime y adjuntos
   ============================================================ */
.chat-list-title{margin:14px 0 7px;color:#ffe28a;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.chat-conversation-list{max-height:230px}
.chat-empty-compact{padding:12px 0}
.conversation-row{position:relative;min-width:0}
.conversation-row.has-unread{border-color:rgba(0,210,190,.5);background:linear-gradient(110deg,rgba(0,163,255,.12),rgba(46,204,113,.08))}
.conversation-preview{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim);font-size:12px}
.conversation-side{display:flex;min-width:63px;flex-direction:column;align-items:flex-end;gap:5px;color:var(--text-dim)}
.conversation-side time{font-size:9px;white-space:nowrap}
.conversation-side .user-dot{position:absolute;left:39px;bottom:8px;border:2px solid var(--bg-soft)}
.conversation-unread{display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#00cfa8;color:#032c34;font-size:10px;box-shadow:0 3px 12px rgba(0,207,168,.25)}

.chat-time{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-height:14px}
.chat-msg.from-seller .chat-time{justify-content:flex-start}
.chat-time time{font:inherit}
.chat-receipt-wrap{display:inline-grid;place-items:center;line-height:0}
.chat-receipt{width:14px;height:14px;display:block;flex:none}
.receipt-sending{color:rgba(255,255,255,.75);animation:chat-clock-pulse 1.25s ease-in-out infinite}
.receipt-delivered{color:rgba(255,255,255,.84)}
.receipt-read{color:#8dffbe;filter:drop-shadow(0 0 3px rgba(68,255,157,.32))}
.receipt-failed{color:#ffd0d0}
.chat-msg.status-failed{outline:1px solid rgba(255,100,110,.55)}
.chat-retry{display:block;margin:7px 0 0 auto;padding:4px 8px;border:1px solid rgba(255,255,255,.42);border-radius:7px;background:rgba(0,0,0,.14);color:inherit;font:700 10px/1.2 inherit;cursor:pointer}
.chat-retry:hover{background:rgba(0,0,0,.26)}
@keyframes chat-clock-pulse{50%{opacity:.42}}

.chat-photo-btn{display:grid;place-items:center;color:var(--text)}
.chat-photo-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.chat-photo-btn:disabled,.auth-chat-input .btn:disabled{opacity:.5;cursor:wait}
.chat-attachment-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-2px 0 8px;padding:9px 11px;border:1px solid rgba(0,163,255,.28);border-radius:11px;background:rgba(0,163,255,.08)}
.chat-attachment-preview span{display:flex;flex-direction:column;min-width:0}
.chat-attachment-preview strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.chat-attachment-preview small{color:var(--text-dim);font-size:10px}
.chat-attachment-preview button{display:grid;place-items:center;width:30px;height:30px;flex:none;border:0;border-radius:8px;background:rgba(255,255,255,.09);color:var(--text);font-size:19px;cursor:pointer}
.chat-send-status{min-height:16px;margin:0;font-size:11px;color:#79e6d2}
.chat-send-status.is-error{color:#ff9ca6}

.chat-attachment-image{display:block;max-width:100%;padding:0;border:0;border-radius:10px;overflow:hidden;background:rgba(0,0,0,.16);color:inherit;cursor:pointer}
.chat-attachment-image .chat-img{display:block;width:min(230px,100%);max-height:220px;object-fit:cover;border-radius:10px}
.chat-attachment-fallback{display:block;min-width:150px;padding:22px 14px;color:var(--text-dim);font-size:11px;text-align:center}
.chat-file-card{display:flex;align-items:center;gap:9px;width:100%;min-width:190px;padding:8px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(0,0,0,.12);color:inherit;text-align:left;cursor:pointer}
.chat-file-card svg{width:25px;height:25px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-file-card span{display:flex;min-width:0;flex-direction:column}
.chat-file-card strong{max-width:185px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.chat-file-card small{font-size:9px;opacity:.7}

@media (max-width:600px){
  .auth-chat{height:min(52vh,390px);max-height:52vh;padding:9px}
  .chat-msg{max-width:88%;font-size:13px}
  .auth-chat-input{gap:6px}
  .auth-chat-input .btn{padding-inline:12px}
  .conversation-side{min-width:54px}
  .conversation-side time{font-size:8px}
  .chat-file-card{min-width:0}
  .chat-file-card strong{max-width:145px}
}
@media (max-width:360px){
  .auth-chat-input{display:grid;grid-template-columns:42px minmax(0,1fr) auto}
  .auth-chat-input .auth-input{min-width:0}
  .auth-chat-input .btn{padding-inline:9px;font-size:11px}
  .chat-msg{max-width:92%}
}
@media (prefers-reduced-motion:reduce){.receipt-sending{animation:none}}

/* --- Oferta "Dragon" (vm-promo) y popup de imagen: nunca cubren todo, X grande --- */
.vm-promo-overlay, .vm-imgpromo-overlay{ padding:16px; }
@media (max-width:600px){
  .vm-promo-overlay{ align-items:flex-end !important; padding:0 !important; }
  .vm-promo-box{
    max-width:100% !important; width:100% !important; max-height:85vh !important; overflow-y:auto !important;
    border-radius:22px 22px 0 0 !important; padding:22px 16px calc(20px + env(safe-area-inset-bottom)) !important;
    animation:sheetUp .3s cubic-bezier(.2,.9,.3,1) !important;
  }
  .vm-promo-close{ position:sticky !important; top:6px; right:6px; float:right; margin:0 0 6px 0; background:rgba(0,0,0,.4) !important; }
  .vm-imgpromo-overlay{ align-items:center !important; padding:16px !important; }
  .vm-imgpromo-box{ max-width:92vw !important; max-height:88vh !important; overflow:visible !important; }
  .vm-imgpromo-box img{ max-height:74vh; object-fit:contain; }
  .vm-imgpromo-close{
    top:-14px !important; right:-6px !important; width:44px !important; height:44px !important;
    background:#111 !important; border:2px solid rgba(255,255,255,.25) !important; box-shadow:0 6px 20px rgba(0,0,0,.5);
  }
}

/* --- Cards con mejor spacing y toque; grid móvil de 1 columna cómoda --- */
@media (max-width:600px){
  .grid{ grid-template-columns:1fr !important; gap:14px !important; }
  .card{ padding:16px !important; border-radius:18px; }
  .card h3{ font-size:16px; }
  .card p{ font-size:13px; line-height:1.5; }
  .card .btn{ min-height:46px; font-size:14.5px; width:100%; }
  .card-rating{ font-size:13px; }
  /* filtros de productos de vendedor: stack cómodo */
  .spf-bar{ gap:8px; }
  .spf-sel{ flex:1 1 100%; }
  .spf-inp{ flex:1 1 calc(50% - 4px); }
}

/* --- Botones: separación mínima táctil en barras de acción --- */
.card-actions, .ord-btns, .sp-actions, .modal-actions{ gap:10px; }
button, .btn, a.btn{ touch-action:manipulation; }

/* --- Franja de confianza "Compra protegida" --- */
.trust-strip{
  display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap;
  max-width:760px; margin:24px auto 0; padding:14px 18px; text-align:center;
  background:linear-gradient(180deg,rgba(0,163,255,.07),rgba(0,163,255,.02));
  border:1px solid rgba(0,163,255,.2); border-radius:16px;
  color:var(--text); font-weight:700; font-size:14.5px;
}
.trust-strip span{ color:var(--text-dim); font-weight:500; font-size:13px; }
@media(max-width:600px){ .trust-strip{ margin:18px 13px 0; font-size:13.5px; } }

/* --- Microinteracciones suaves (tap feedback) sin tapar contenido --- */
.card, .btn, .sd-tabs button, .filter-check, .review-card{ transition:transform .14s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease); }
.card:active, .btn:active, a.btn:active{ transform:scale(.98); }
@media(hover:hover){ .card:hover{ transform:translateY(-3px); } }

/* --- Reveal con blur suave (aparecer elegante) --- */
.reveal{ filter:blur(6px); }
.reveal.visible{ filter:blur(0); transition:filter .5s var(--ease), opacity .5s var(--ease), transform .5s var(--ease); }

/* --- Aligerar sombras pesadas en móvil (rendimiento) --- */
@media (max-width:600px){
  .card, .glass, .modal{ box-shadow:0 6px 20px rgba(0,0,0,.28) !important; }
  *{ backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
  .modal-backdrop, .vm-promo-overlay, .vm-imgpromo-overlay, .seller-modal, .terms-modal{
    background:rgba(0,0,0,.72) !important;
  }
}

/* --- Evitar scroll horizontal accidental --- */
html,body{ max-width:100%; overflow-x:hidden; }

/* producto de vendedor integrado en el juego */
.gi-store-ico{font-size:14px}
.gi-stock{color:var(--text-dim);font-size:12px;font-weight:600}
.gi-seller strong{color:var(--text)}

/* vendedor discreto en card de ítem (se ve como producto normal de Voss) */
.gi-seller-store{color:var(--text-dim);font-size:12.5px}
.gi-seller-store strong{color:var(--text);font-weight:700}
.gi-seller-store .gi-stock{color:var(--blue)}

/* ===== Pantalla de cuenta suspendida ===== */
.vm-suspended-overlay{position:fixed;inset:0;z-index:99999;background:radial-gradient(circle at 50% 30%,#1a0a0f,#050709 70%);display:flex;align-items:center;justify-content:center;padding:24px}
.vm-suspended-overlay[hidden]{display:none}
.vm-suspended-box{max-width:440px;width:100%;text-align:center;background:rgba(20,10,14,.7);border:1px solid rgba(255,0,51,.3);border-radius:22px;padding:40px 28px;box-shadow:0 20px 70px rgba(0,0,0,.6)}
.vm-suspended-icon{font-size:64px;line-height:1;margin-bottom:14px}
.vm-suspended-box h1{font-size:26px;font-weight:900;color:#ff5577;margin-bottom:10px}
.vm-susp-lead{color:var(--text);font-size:15.5px;margin-bottom:18px}
.vm-susp-reason{background:rgba(255,0,51,.1);border:1px solid rgba(255,0,51,.3);border-radius:12px;padding:13px 16px;font-size:14px;color:var(--text);margin-bottom:16px;word-break:break-word}
.vm-susp-help{color:var(--text-dim);font-size:13.5px;margin-bottom:22px;line-height:1.5}
.vm-susp-actions{display:grid;gap:10px}
.vm-susp-actions .btn{width:100%;min-height:50px}

/* ============================================================
   VOSS — Chat menú por mensaje · reporte · compartir (nuevo)
   ============================================================ */
.chat-msg{position:relative}
.chat-time{display:block;font-size:10px;opacity:.55;margin-top:3px;text-align:right}
.chat-msg.from-seller .chat-time{text-align:left}
.chat-msg.is-deleted{opacity:.7;font-style:italic}
.chat-deleted{font-size:13px}
.chat-msg.is-img .chat-time{color:var(--text-dim);opacity:.8;padding:0 4px 2px}

.msg-dots{position:absolute;top:2px;right:4px;width:28px;height:24px;border:none;border-radius:7px;
  background:rgba(0,0,0,.20);color:inherit;cursor:pointer;font-size:16px;line-height:1;padding:0;
  opacity:0;transition:opacity .15s}
.chat-msg:hover .msg-dots,.msg-dots:focus{opacity:1}
.chat-msg.from-seller .msg-dots{background:rgba(255,255,255,.14)}
.msg-menu{position:absolute;top:28px;right:4px;z-index:6;background:var(--bg-soft);
  border:1px solid var(--card-border);border-radius:12px;box-shadow:0 12px 34px rgba(0,0,0,.45);
  padding:6px;min-width:180px;display:flex;flex-direction:column;gap:2px}
.msg-mi{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text);
  padding:10px 12px;border-radius:8px;font-size:13.5px;cursor:pointer}
.msg-mi:hover{background:rgba(127,127,127,.14)}
.msg-mi.danger{color:#ff6b6b}

/* el botón reportar del header ya no choca con la ✕ de cerrar */
.chat-head{padding-right:36px}

/* ===== Modal de reporte ===== */
.report-backdrop{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.6);
  display:grid;place-items:center;padding:16px}
.report-box{position:relative;width:100%;max-width:400px;padding:22px}
.report-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;border-radius:9px;
  background:rgba(127,127,127,.16);color:var(--text);cursor:pointer;font-size:15px}
.report-title{margin:0 0 2px;font-size:19px}
.report-subtitle{margin:0 0 14px;color:var(--text-dim);font-size:13.5px}
.report-lbl{display:block;font-size:12px;color:var(--text-dim);margin:10px 0 5px;font-weight:600}
.report-input{width:100%;padding:11px 13px;border-radius:12px;background:var(--card);
  border:1px solid var(--card-border);color:var(--text);font-size:14px;font-family:inherit;box-sizing:border-box}
.report-input:focus{outline:none;border-color:var(--blue)}
textarea.report-input{resize:vertical;min-height:64px}
.report-actions{display:flex;gap:10px;margin-top:16px}
.report-actions .btn{flex:1}
.report-msg{margin-top:12px;padding:9px 12px;border-radius:10px;font-size:13px}
.report-msg.ok{background:rgba(46,204,113,.14);color:#2ecc71}
.report-msg.err{background:rgba(255,0,51,.12);color:#ff6b6b}

/* ===== Carrito: botón compartir ===== */
.cart-share-btn{margin-top:8px}

@media (max-width:600px){
  .msg-dots{opacity:1;width:32px;height:28px;font-size:18px}
  .msg-menu{min-width:190px}
  .msg-mi{padding:12px 13px;font-size:14px}
  .report-box{max-width:100%}
}

/* ============================================================
   VOSS — Sonido de entrada · compartir fallback · pase móvil
   ============================================================ */
#vmSoundBtn{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:99998;
  background:linear-gradient(120deg,var(--blue),#0077cc);color:#fff;border:none;border-radius:999px;
  padding:11px 16px;font-size:14px;font-weight:700;box-shadow:0 8px 24px rgba(0,163,255,.4);cursor:pointer;
  animation:vmSoundIn .35s ease}
@keyframes vmSoundIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.vm-share-ov{position:fixed;inset:0;z-index:100001;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:16px}
.vm-share-box{position:relative;width:100%;max-width:380px;padding:20px}
.vm-share-close{position:absolute;top:10px;right:10px;width:30px;height:30px;border:none;border-radius:8px;
  background:rgba(127,127,127,.16);color:var(--text);cursor:pointer;font-size:14px}
.vm-share-title{margin:0 0 12px;font-size:14.5px;font-weight:700;line-height:1.35}
.vm-share-input{width:100%;padding:11px;border-radius:11px;background:var(--card);border:1px solid var(--card-border);
  color:var(--text);font-size:13px;font-family:inherit;box-sizing:border-box;margin-bottom:12px;resize:none}

/* pase móvil: objetivos de toque más cómodos en pantallas pequeñas */
@media (max-width:600px){
  #vmSoundBtn{right:12px;bottom:12px;font-size:13px;padding:10px 14px}
  .report-actions{flex-direction:column}
  .report-actions .btn{width:100%}
  .msg-menu,.report-input,.report-actions .btn{font-size:15px}
  .cart-share-btn{min-height:48px}
}

/* ============================================================
   VOSS — Newsletter + marketplace links (footer)
   ============================================================ */
.footer-newsletter{max-width:1200px;margin:0 auto 8px;padding:22px 20px;border-radius:18px;
  background:linear-gradient(120deg,rgba(0,163,255,.10),rgba(0,163,255,.02));
  border:1px solid rgba(0,163,255,.20);display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.footer-newsletter .fn-text{flex:1 1 260px;min-width:0}
.footer-newsletter .fn-text h3{margin:0 0 4px;font-size:18px}
.footer-newsletter .fn-text p{margin:0;color:var(--text-dim);font-size:13.5px}
.fn-form{display:flex;gap:10px;flex:1 1 320px;max-width:460px}
.fn-input{flex:1;min-width:0;padding:12px 14px;border-radius:12px;border:1px solid var(--card-border);
  background:var(--card);color:var(--text);font-size:14px;font-family:inherit;box-sizing:border-box}
.fn-input:focus{outline:none;border-color:var(--blue)}
.fn-btn{flex-shrink:0;white-space:nowrap}
.fn-msg{flex-basis:100%;margin:2px 0 0;font-size:13px}
.fn-msg.ok{color:#2ecc71}
.fn-msg.bad{color:#ff6b6b}

.footer-market{max-width:1200px;margin:16px auto 0;padding:14px 20px 0;border-top:1px solid var(--card-border);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 12px;font-size:13.5px}
.footer-market a{color:var(--text-dim);text-decoration:none;font-weight:600}
.footer-market a:hover{color:var(--blue)}
.footer-market .fm-sep{color:var(--text-dim);opacity:.5}

@media (max-width:600px){
  .footer-newsletter{flex-direction:column;align-items:stretch;text-align:center;padding:18px 15px}
  .fn-form{flex-direction:column;max-width:100%}
  .fn-btn{width:100%;min-height:48px}
  .fn-input{min-height:48px}
  .footer-market{gap:8px 10px}
  /* selects del vendedor cómodos en móvil */
  .sd-form select,.sd-form input,.sd-form textarea{min-height:46px;font-size:15px}
}

/* ============================================================
   VOSS — Fixes ronda UX/mobile/a11y
   ============================================================ */

/* Accesibilidad: respetar reduce motion */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important;scroll-behavior:auto !important}
}

/* ===== Privacidad, protección y preferencias ===== */
.gi-price{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:5px}
.gi-price-label{flex-basis:100%;font-size:11px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:#006f81;font-weight:700}
[data-theme="dark"] .gi-price-label{color:#7eeaff}
.checkout-protection{margin:16px 0;padding:14px;border:2px solid rgba(0,134,155,.34);border-radius:16px;background:linear-gradient(145deg,rgba(38,216,218,.12),rgba(255,209,91,.1))}
.checkout-protection legend{padding:0 8px;font-weight:700;color:var(--text)}
.checkout-protection-intro,.protection-availability{margin:0 0 10px;color:var(--text-dim);font-size:13px;line-height:1.45}
.protection-availability{margin-top:9px}
.protection-availability.is-enabled{color:#007a68;font-weight:700}
.protection-plan-option{display:flex;align-items:center;gap:10px;margin:8px 0;padding:10px;border:1px solid rgba(0,134,155,.25);border-radius:11px;background:rgba(255,255,255,.45);cursor:pointer}
[data-theme="dark"] .protection-plan-option{background:rgba(2,69,84,.38)}
.protection-plan-option:has(input:disabled){opacity:.56;cursor:not-allowed}
.protection-plan-option input{accent-color:#008c9e;width:18px;height:18px;flex:0 0 auto}
.protection-plan-option span{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%}
.protection-plan-option small{font-size:13px;color:var(--text-dim)}
.cs-protection{color:#007b83}
.notification-note{color:var(--text-dim);font-size:13px;line-height:1.45;margin:-2px 0 12px}
.notification-prefs{display:grid;gap:8px;margin-bottom:12px}
.notification-prefs label{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;border:1px solid rgba(0,134,155,.24);border-radius:12px;background:rgba(47,207,216,.08)}
.notification-prefs label span{display:grid;gap:2px;min-width:0}
.notification-prefs label small{color:var(--text-dim);font-size:11px;line-height:1.3}
.notification-prefs input{width:20px;height:20px;accent-color:#008c9e;flex:0 0 auto}
.notification-save-status{min-height:18px;margin:4px 0 8px;font-size:12px;line-height:1.35}
.notification-save-status.ok{color:#007a68}.notification-save-status.bad{color:#c0392b}
.auth-privacy-link{display:block;text-align:center;margin:11px 0;color:#007f91;text-decoration:underline;text-underline-offset:3px}

/* Página pública de seguridad y privacidad */
.policy-body{min-height:100vh;background:linear-gradient(180deg,#8cddf3 0,#e9faff 26%,#fff0ba 100%);color:#053747}
.policy-main{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:116px 0 70px}
.policy-hero,.policy-card{position:relative;overflow:hidden;border:2px solid rgba(0,101,124,.22);border-radius:22px;background:rgba(255,255,255,.82);box-shadow:0 18px 48px rgba(0,89,111,.16)}
.policy-hero{padding:clamp(24px,5vw,56px);background:linear-gradient(135deg,rgba(0,178,190,.92),rgba(58,198,232,.86) 54%,rgba(255,204,76,.9));color:#032f3c}
.policy-hero::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-30px;height:72px;background:radial-gradient(55px 20px at 10% 0,rgba(255,255,255,.52) 49%,transparent 51%) 0 0/110px 40px repeat-x;opacity:.7;pointer-events:none}
.policy-kicker{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff2a8;border:1px solid rgba(0,63,80,.18);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px}
.policy-hero h1{font-size:clamp(32px,7vw,66px);line-height:.96;margin:18px 0 14px;max-width:850px}
.policy-hero p{max-width:760px;font-size:clamp(16px,2vw,20px);line-height:1.55}
.policy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
.policy-card{padding:clamp(20px,3vw,34px)}
.policy-card h2{font-size:clamp(23px,3vw,34px);margin:0 0 12px;color:#005b70}
.policy-card h3{font-size:18px;margin:20px 0 8px;color:#006a77}
.policy-card p,.policy-card li{font-size:15px;line-height:1.65;color:#174f5c}
.policy-card ul{padding-left:20px}
.policy-card-wide{grid-column:1/-1}
.policy-notice{padding:14px 16px;border-left:5px solid #d99a00;border-radius:10px;background:#fff6ce;font-weight:700}
.policy-table{width:100%;border-collapse:collapse;margin:12px 0}
.policy-table th,.policy-table td{text-align:left;padding:10px;border-bottom:1px solid rgba(0,93,112,.18);vertical-align:top}
.policy-footer{text-align:center;padding:22px 10px;color:#07586c;font-size:13px}
@media(max-width:720px){
  .policy-main{width:min(100% - 20px,1080px);padding-top:96px}
  .policy-grid{grid-template-columns:1fr}.policy-card-wide{grid-column:auto}
  .policy-actions .btn{width:100%;text-align:center}
  .gi-price{justify-content:flex-start}
}

/* Footer marketplace: visible, buen contraste, chips en móvil */
.footer-market{max-width:1200px;margin:18px auto 0;padding:16px 20px 0;border-top:1px solid var(--card-border);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;font-size:14px}
.footer-market .fm-link{color:var(--text);text-decoration:none;font-weight:700;opacity:.92;
  padding:6px 4px;border-radius:8px;transition:color .15s,background .15s}
.footer-market .fm-link:hover{color:var(--blue)}
.footer-market .fm-sep{color:var(--text-dim);opacity:.5}
.info-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.info-socials .btn{flex:1 1 30%}

/* Empty state de búsqueda */
.no-results{text-align:center;padding:34px 16px;max-width:520px;margin:10px auto 0}
.no-results .nr-emoji{font-size:40px;margin-bottom:8px}
.no-results .nr-title{font-size:17px;font-weight:700;margin:0 0 14px}
.no-results .nr-suggest{color:var(--text-dim);font-size:13.5px;margin:14px 0 0}

/* Carrito vacío: botón deshabilitado + hint */
#cartCheckout:disabled,#cartShare:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.3)}
.cart-empty-hint{margin:0 0 8px;text-align:center;color:var(--text-dim);font-size:13px}

/* ===== Móvil: nada tapa "Comprar ahora" ===== */
@media (max-width:600px){
  .footer-market{gap:8px;flex-direction:column}
  .footer-market .fm-sep{display:none}
  .footer-market .fm-link{background:rgba(255,255,255,.05);border:1px solid var(--card-border);
    width:100%;text-align:center;padding:12px;min-height:46px;box-sizing:border-box}
  .info-socials .btn{flex:1 1 100%}
  /* barra inferior y FAB con safe-area */
  .mobile-bar{padding-bottom:calc(6px + env(safe-area-inset-bottom,0px)) !important}
  .help-fab{bottom:calc(74px + env(safe-area-inset-bottom,0px)) !important;right:14px !important;z-index:60}
}
/* Cuando hay un modal/overlay abierto, ocultar controles flotantes para no
   tapar el CTA "Comprar ahora" ni superponerse */
body.vm-modal-open .help-fab{display:none !important}
body.vm-modal-open .mobile-bar{display:none !important}

/* ============================================================
   VOSS — Badge de confianza (Verificado / 100% confiable)
   ============================================================ */
.trust-badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:800;
  padding:3px 9px;border-radius:999px;margin:2px 0 4px;line-height:1}
.trust-badge svg{flex-shrink:0}
.trust-badge.verified{background:rgba(0,163,255,.14);color:#3db6ff;border:1px solid rgba(0,163,255,.3)}
.trust-badge.trusted{background:linear-gradient(120deg,rgba(46,204,113,.18),rgba(0,163,255,.14));
  color:#2ecc71;border:1px solid rgba(46,204,113,.35)}

/* ============================================================
   VOSS — Footer: Discord + idioma/moneda (abajo, ordenado)
   ============================================================ */
.footer-utility{max-width:1200px;margin:14px auto 0;padding:14px 20px 0;border-top:1px solid var(--card-border);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.footer-discord{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.footer-discord .fd-label{font-weight:800;font-size:14px}
.footer-discord .fd-btn{display:inline-flex;align-items:center;gap:7px}
.footer-lang-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.05);
  border:1px solid var(--card-border);color:var(--text);border-radius:12px;padding:9px 14px;
  font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;min-height:44px}
.footer-lang-btn:hover{border-color:var(--blue)}
.footer-lang-btn .fl-caret{color:var(--text-dim);font-size:11px}

@media (max-width:600px){
  .footer-utility{flex-direction:column;align-items:stretch;text-align:center}
  .footer-discord{justify-content:center}
  .footer-discord .fd-btn{width:100%;justify-content:center;min-height:48px}
  .footer-lang{display:flex;justify-content:center}
  .footer-lang-btn{width:100%;justify-content:center}
  /* En móvil el idioma vive ABAJO (footer), no arriba en el navbar */
  #langBtn{display:none !important}
}

/* ============================================================
   VOSS — Iconos shield (reemplazo de 🛡️)
   ============================================================ */
.ico-shield{width:1em;height:1em;vertical-align:-2px;display:inline-block}
.tb-item{display:inline-flex;align-items:center;gap:4px}
.tb-item .ico-shield{width:14px;height:14px}
.why-title-h{display:inline-flex;align-items:center;gap:8px;justify-content:center}
.why-ico .ico-shield{width:26px;height:26px;color:var(--blue)}
.protect-icon .ico-shield{width:32px;height:32px;color:var(--blue)}
.stat-ico .ico-shield{width:20px;height:20px;color:var(--blue)}
.newbie-h .ico-shield{width:18px;height:18px;color:var(--blue);vertical-align:-3px}

/* ============================================================
   VOSS — Iconos premium en cards de confianza (protect)
   ============================================================ */
.protect-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;
  border-radius:16px;background:linear-gradient(150deg,rgba(0,163,255,.16),rgba(0,163,255,.04));
  border:1px solid rgba(0,163,255,.22);margin-bottom:14px}
.protect-icon svg{width:26px;height:26px;color:#4db6ff}
.protect-card h3{font-size:17px;letter-spacing:-.01em;margin:0 0 6px}
.protect-card p{color:var(--text-dim);font-size:14px;line-height:1.5}
@media (prefers-reduced-motion: no-preference){
  .protect-card{transition:transform .25s ease, border-color .25s ease}
  .protect-card:hover{transform:translateY(-3px)}
}

/* ============================================================
   VOSS — Parte baja premium (beneficios bento, vendedor, FAQ)
   ============================================================ */

/* Beneficios: bento con iconos lucide (sin verde ni ✅) */
.whybuy-grid.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1100px;margin:0 auto}
.whybuy-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:22px;border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.08)}
.whybuy-card .wb-ico{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:14px;
  background:linear-gradient(150deg,rgba(0,163,255,.16),rgba(0,163,255,.03));border:1px solid rgba(0,163,255,.2);margin-bottom:8px}
.whybuy-card .wb-ico svg{width:23px;height:23px;color:#4db6ff}
.whybuy-card h3{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:0}
.whybuy-card p{font-size:13.5px;color:var(--text-dim);line-height:1.5;margin:0}
.whybuy-card:nth-child(1),.whybuy-card:nth-child(6){grid-column:span 1}
@media (prefers-reduced-motion: no-preference){
  .whybuy-card{transition:transform .25s ease,border-color .25s ease,background .25s ease}
  .whybuy-card:hover{transform:translateY(-3px);border-color:rgba(0,163,255,.35)}
}

/* Sé un Vendedor: card premium */
.seller-simple-card{max-width:760px;margin:0 auto;padding:34px 30px;border-radius:26px}
.seller-head{text-align:center;margin-bottom:22px}
.seller-badge-ico{width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;
  background:linear-gradient(150deg,rgba(0,163,255,.18),rgba(0,163,255,.04));border:1px solid rgba(0,163,255,.25);margin-bottom:14px}
.seller-badge-ico svg{width:28px;height:28px;color:#4db6ff}
.seller-simple-title{font-size:clamp(22px,4vw,30px);letter-spacing:-.02em;margin:0 0 8px}
.seller-simple-text{color:var(--text-dim);font-size:15px;max-width:520px;margin:0 auto;line-height:1.55}
.seller-simple-list{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}
.seller-simple-list li{display:flex;align-items:center;gap:11px;font-size:14.5px;color:var(--text)}
.seller-simple-list .sl-ico{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09)}
.seller-simple-list .sl-ico svg{width:18px;height:18px;color:#9fc6ff}
.seller-cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* FAQ: acordeón premium, cerca del footer */
.faq-title-h{display:inline-flex;align-items:center;gap:9px;justify-content:center}
.faq-ico{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:#4db6ff}
.faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq-item{border-radius:16px;border:1px solid rgba(255,255,255,.08);overflow:hidden;background:rgba(255,255,255,.025)}
.faq-item summary{cursor:pointer;list-style:none;padding:18px 20px;font-weight:600;font-size:15.5px;
  display:flex;align-items:center;justify-content:space-between;gap:12px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';font-size:22px;color:var(--text-dim);font-weight:400;transition:transform .2s}
.faq-item[open] summary::after{content:'−'}
.faq-item[open] summary{color:#4db6ff}
.faq-item p{padding:0 20px 18px;margin:0;color:var(--text-dim);font-size:14px;line-height:1.6}

/* toggle de tema ahora en el footer */
.footer-theme{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.05);
  border:1px solid var(--card-border);cursor:pointer;font-size:16px}
.footer-theme:hover{border-color:var(--blue)}

@media (max-width:820px){
  .whybuy-grid.bento{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .whybuy-grid.bento{grid-template-columns:1fr 1fr;gap:12px}
  .whybuy-card{padding:16px}
  .seller-simple-list{grid-template-columns:1fr}
  .seller-cta-row .btn{width:100%}
  .navbar .nav-cta{display:none}      /* "Comprar" ya está en la barra inferior */
  .faq-item summary{font-size:15px;padding:16px}
}

/* ============================================================
   VOSS — FOOTER REDISEÑADO (premium, limpio, mobile-first)
   ============================================================ */
.footer{border-top:1px solid rgba(255,255,255,.07);padding:0 0 26px;margin-top:60px}
.footer-newsletter{margin:0 auto 34px}

/* Grid de 4 columnas */
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:34px 28px;
  max-width:1160px;margin:0 auto;padding:8px 22px 26px;align-items:start;
  border-bottom:1px solid rgba(255,255,255,.07)}
.footer-brand{display:flex;flex-direction:column;gap:12px}
.footer-brand .logo-img-footer{width:120px;height:auto;border-radius:12px}
.footer-brand p{color:var(--text-dim);font-size:13.5px;line-height:1.55;max-width:260px;margin:0}
.footer-col{display:flex;flex-direction:column;gap:11px;min-width:0}
.footer-col h4{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  color:var(--text);margin:0 0 4px}
.footer-col a{color:var(--text-dim);text-decoration:none;font-size:14px;transition:color .15s}
.footer-col a:hover{color:var(--blue)}
.footer-socials{display:flex;flex-direction:column;gap:11px}
.social-link{display:inline-flex;align-items:center;gap:9px;color:var(--text-dim);text-decoration:none;font-size:14px}
.social-link .social-ico{width:19px;height:19px;flex-shrink:0}
.social-link:hover{color:var(--blue)}
.footer-discord-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;width:fit-content}

/* Chips (Vende · Anúnciate · Síguenos) */
.footer-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:1160px;
  margin:22px auto 0;padding:0 22px}
.footer-chip{display:inline-flex;align-items:center;text-decoration:none;font-size:13px;font-weight:600;
  color:var(--text);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  padding:8px 15px;border-radius:999px;transition:border-color .15s,background .15s}
.footer-chip:hover{border-color:var(--blue);background:rgba(0,163,255,.08)}

/* Última fila: copyright · idioma/moneda · país · tema */
.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;
  max-width:1160px;margin:22px auto 0;padding:20px 22px 0;border-top:1px solid rgba(255,255,255,.07)}
.footer-bottom .footer-copy{margin:0;color:var(--text-dim);font-size:12.5px}
.footer-bottom-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.footer-bottom-meta .footer-lang-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);color:var(--text);border-radius:10px;padding:8px 13px;
  font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;min-height:40px}
.footer-bottom-meta .footer-lang-btn:hover{border-color:var(--blue)}
.footer-bottom-meta .fl-caret{color:var(--text-dim);font-size:10px}
.fb-country{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim);font-size:13px}
.fb-country svg{color:var(--text-dim)}
.footer-theme{width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);cursor:pointer;font-size:15px;display:inline-flex;align-items:center;justify-content:center}
.footer-theme:hover{border-color:var(--blue)}

/* Responsive */
@media (max-width:860px){
  .footer-inner{grid-template-columns:1fr 1fr;gap:28px 24px}
  .footer-brand{grid-column:1 / -1}
}
@media (max-width:560px){
  .footer{margin-top:40px}
  .footer-inner{grid-template-columns:1fr;gap:26px;text-align:left;padding:8px 20px 24px}
  .footer-brand{align-items:flex-start}
  .footer-chips{gap:8px}
  .footer-chip{flex:1 1 100%;justify-content:center;padding:12px;min-height:46px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:14px}
  .footer-bottom-meta{width:100%;justify-content:space-between}
  .footer-discord-btn{width:100%}
}

/* ============================================================
   VOSS — SECCIÓN VIP PREMIUM (rediseño)
   ============================================================ */
.vip-eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.22em;
  color:#4db6ff;text-transform:uppercase;margin-bottom:10px;
  padding:6px 14px;border:1px solid rgba(0,163,255,.3);border-radius:999px;
  background:rgba(0,163,255,.07)}
#planes .section-head h2{font-size:clamp(26px,4.6vw,40px);letter-spacing:-.025em;line-height:1.12}
#planes .section-head p{max-width:560px;margin-left:auto;margin-right:auto;font-size:15.5px;line-height:1.6}

/* Tarjeta principal más grande, más jerarquía */
.plan.vip-card{max-width:460px;padding:38px 34px;border-radius:26px;position:relative;overflow:hidden;
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(0,163,255,.14), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
  border:1px solid rgba(0,163,255,.25);
  box-shadow:0 24px 70px rgba(0,0,0,.4)}
.vip-crown-ico{width:60px;height:60px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;
  border-radius:18px;background:linear-gradient(150deg,rgba(0,163,255,.2),rgba(180,200,230,.06));
  border:1px solid rgba(0,163,255,.3)}
.vip-crown-ico svg{width:30px;height:30px;color:#cfe6ff}
.plan.vip-card .plan-badge{background:none;border:1px solid rgba(255,255,255,.14);color:#cfe0f5;
  letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:800;padding:6px 14px;border-radius:999px}
.plan.vip-card .plan-price{margin:16px 0 6px}
.plan.vip-card .plan-price span{font-size:46px}
.plan.vip-card .vip-small{font-size:14px;color:var(--text-dim);line-height:1.55;max-width:330px;margin:0 auto 22px}
.plan.vip-card .sub-btn{min-height:50px;font-size:15.5px;border-radius:14px}
.vip-see-btn{margin-top:10px;min-height:46px;border-radius:14px;text-decoration:none;
  display:flex;align-items:center;justify-content:center}

/* Beneficios: grid premium icono + título + texto */
#vip-beneficios{scroll-margin-top:90px}
.vip-gallery-title{text-align:center;font-size:clamp(18px,3vw,24px);letter-spacing:-.015em;margin-bottom:22px}
.vip-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:980px;margin:0 auto 26px}
.vip-benefit{display:flex;align-items:flex-start;gap:13px;padding:18px;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  border:1px solid rgba(255,255,255,.08)}
.vip-benefit-ico{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  border-radius:12px;background:rgba(0,163,255,.1);border:1px solid rgba(0,163,255,.2)}
.vip-benefit-ico svg{width:21px;height:21px;color:#9fd0ff}
.vip-benefit-txt h4{margin:1px 0 3px;font-size:14.5px;font-weight:700;letter-spacing:-.01em}
.vip-benefit-txt p{margin:0;font-size:13px;color:var(--text-dim);line-height:1.5}
.vip-benefit:nth-child(4),.vip-benefit:nth-child(5){grid-column:span 1}
@media (prefers-reduced-motion: no-preference){
  .vip-benefit{transition:transform .22s ease,border-color .22s ease}
  .vip-benefit:hover{transform:translateY(-2px);border-color:rgba(0,163,255,.32)}
}

@media (max-width:860px){ .vip-benefits{grid-template-columns:1fr 1fr} }
@media (max-width:560px){
  .plan.vip-card{padding:30px 22px;max-width:100%}
  .plan.vip-card .plan-price span{font-size:40px}
  .vip-benefits{grid-template-columns:1fr;gap:11px}
  .vip-benefit{padding:15px}
  .vip-see-btn,.plan.vip-card .sub-btn{min-height:50px}
}

/* ============================================================
   VOSS — Productos populares premium + Cómo funciona
   ============================================================ */
/* Chips de features con iconos */
.feat-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:16px}
.feat-chip{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--text);
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:8px 14px;border-radius:999px}
.feat-chip svg{width:15px;height:15px;color:#4db6ff;flex-shrink:0}

/* Barra de ofertas premium */
.offers-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 18px;
  max-width:1000px;margin:22px auto 26px;padding:16px 22px;border-radius:18px;
  background:linear-gradient(120deg,rgba(0,163,255,.09),rgba(255,255,255,.02));
  border:1px solid rgba(0,163,255,.18)}
.offers-banner .ob-tags{display:flex;flex-wrap:wrap;gap:8px}
.offers-banner .ob-tag{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;
  padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--text)}
.offers-banner .ob-tag svg{width:14px;height:14px;color:#4db6ff}
.offers-banner .ob-tag-3 svg{color:#ffb020}
.offers-banner .ob-timer{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--text-dim)}
.offers-banner .ob-timer svg{width:16px;height:16px;color:#4db6ff}
.offers-banner .ob-timer strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px}
.offers-banner .ob-note{font-size:12px;color:var(--text-dim)}

/* Cards de juego más premium */
.card.card-game{border-radius:20px;border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012))}
@media (prefers-reduced-motion: no-preference){
  .card.card-game{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
  .card.card-game:hover{transform:translateY(-5px);border-color:rgba(0,163,255,.4);box-shadow:0 20px 50px rgba(0,0,0,.35)}
}
.card.card-game .card-game-meta{color:var(--text-dim)}

/* Cómo funciona */
#como-funciona .section-head h2{font-size:clamp(24px,4vw,34px);letter-spacing:-.02em}
.hiw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1000px;margin:0 auto}
.hiw-card{position:relative;padding:26px 22px 24px;border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  border:1px solid rgba(255,255,255,.08)}
.hiw-ico{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:14px;
  background:linear-gradient(150deg,rgba(0,163,255,.16),rgba(0,163,255,.03));border:1px solid rgba(0,163,255,.2);margin-bottom:14px}
.hiw-ico svg{width:22px;height:22px;color:#4db6ff}
.hiw-num{position:absolute;top:18px;right:20px;font-size:34px;font-weight:900;line-height:1;
  color:transparent;-webkit-text-stroke:1.5px rgba(0,163,255,.35);opacity:.7}
.hiw-card h3{font-size:17px;letter-spacing:-.01em;margin:0 0 6px}
.hiw-card p{font-size:14px;color:var(--text-dim);line-height:1.55;margin:0}
@media (prefers-reduced-motion: no-preference){
  .hiw-card{transition:transform .25s ease,border-color .25s ease}
  .hiw-card:hover{transform:translateY(-4px);border-color:rgba(0,163,255,.32)}
}
@media (max-width:760px){ .hiw-grid{grid-template-columns:1fr;gap:12px} }
@media (max-width:600px){
  .offers-banner{padding:14px;gap:10px}
  .feat-chips{gap:7px}
  .feat-chip{font-size:12px;padding:7px 12px}
}

/* ============================================================
   VOSS — HEADER rediseñado (nav-left + search centro + chips)
   ============================================================ */
.nav-inner{display:flex;align-items:center;gap:20px}
.nav-left{display:flex;align-items:center;gap:22px;flex-shrink:0}
.nav-menu{display:flex;align-items:center;gap:22px}
.nav-menu a{color:var(--text-dim);text-decoration:none;font-size:14.5px;font-weight:600;
  letter-spacing:-.01em;transition:color .15s;white-space:nowrap}
.nav-menu a:hover{color:var(--text)}

/* Buscador grande centrado */
.nav-search{flex:1;max-width:560px;margin:0 auto;display:flex;align-items:center;gap:9px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:14px;
  padding:0 14px;height:46px;transition:border-color .15s,box-shadow .15s}
.nav-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,163,255,.16)}
.nav-search-ico{display:flex;align-items:center;color:var(--text-dim);flex-shrink:0}
.nav-search-ico svg{width:18px;height:18px}
.nav-search input{flex:1;background:none;border:none;outline:none;color:var(--text);
  font-size:14.5px;font-family:inherit;min-width:0}
.nav-search input::placeholder{color:var(--text-dim)}

.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}

/* Barra de chips de categorías */
.nav-chips-bar{position:relative;z-index:39;background:#0b1220;
  border-bottom:1px solid rgba(255,255,255,.06)}
.nav-chips-inner{display:flex;gap:8px;max-width:1240px;margin:0 auto;padding:9px 22px;
  overflow-x:auto;scrollbar-width:none}
.nav-chips-inner::-webkit-scrollbar{display:none}
.nav-chip{flex-shrink:0;display:inline-flex;align-items:center;text-decoration:none;
  font-size:12.5px;font-weight:600;color:var(--text-dim);
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);
  padding:6px 13px;border-radius:999px;transition:color .15s,border-color .15s,background .15s;white-space:nowrap}
.nav-chip:hover{color:var(--text);border-color:rgba(0,163,255,.4);background:rgba(0,163,255,.08)}

/* ===== Responsive ===== */
@media (max-width:940px){
  .nav-menu{display:none}
  .nav-search{max-width:none}
}
@media (max-width:720px){
  .nav-inner{flex-wrap:wrap;gap:10px 12px;row-gap:10px}
  .nav-left{order:1}
  .nav-actions{order:2;margin-left:auto}
  .nav-search{order:3;flex-basis:100%;max-width:100%;height:44px}
  .nav-chips-inner{padding:8px 14px}
}

/* ============================================================
   VOSS — Reseñas de clientes (carrusel premium)
   ============================================================ */
.reviews-title-h{display:inline-flex;align-items:center;gap:10px;justify-content:center}
.reviews-ico{display:inline-flex;color:#4db6ff}
.reviews-ico svg{width:26px;height:26px}

.reviews-carousel{position:relative;max-width:1180px;margin:6px auto 0;padding:0 8px;display:flex;align-items:center;gap:8px}
.reviews-carousel::before,.reviews-carousel::after{content:"";position:absolute;top:0;bottom:0;width:56px;z-index:2;pointer-events:none}
.reviews-carousel::before{left:8px;background:linear-gradient(90deg,var(--bg,#0a1220),transparent)}
.reviews-carousel::after{right:8px;background:linear-gradient(270deg,var(--bg,#0a1220),transparent)}
.reviews-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;flex:1;will-change:scroll-position}
.reviews-viewport::-webkit-scrollbar{display:none}
.reviews-track{display:flex;gap:16px;padding:18px 6px;animation:none;width:auto;align-items:stretch}
.rev-card{scroll-snap-align:center;flex:0 0 340px;max-width:340px;box-sizing:border-box;
  position:relative;display:flex;flex-direction:column;gap:12px;padding:24px 22px;border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  border:1px solid rgba(255,255,255,.09);min-height:210px;contain:layout paint}
@media (prefers-reduced-motion: no-preference){
  .rev-card{transition:transform .2s ease, border-color .2s ease}
  .rev-card:hover{transform:translateY(-3px);border-color:rgba(0,163,255,.35)}
}
.rev-quote{position:absolute;top:16px;right:18px;color:rgba(0,163,255,.22)}
.rev-quote svg{width:34px;height:34px}
.rev-stars{display:inline-flex;gap:2px}
.rev-star{width:16px;height:16px}
.rev-star.on{fill:#ffc531}
.rev-star.off{fill:rgba(255,255,255,.15)}
.rev-text{font-size:15px;line-height:1.55;color:var(--text);margin:0;flex:1}
.rev-foot{display:flex;flex-direction:column;gap:5px}
.rev-user{font-weight:700;font-size:14px;color:var(--text)}
.rev-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:12.5px;color:var(--text-dim)}
.rev-verified{display:inline-flex;align-items:center;gap:4px;color:#4db6ff;font-weight:600}
.rev-verified svg{width:14px;height:14px}
.rev-dot{opacity:.5}
.rev-prod{color:var(--text-dim)}

.rev-arrow{flex-shrink:0;width:42px;height:42px;border-radius:50%;cursor:pointer;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:var(--text);
  display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}
.rev-arrow:hover{border-color:var(--blue);background:rgba(0,163,255,.1)}
.rev-arrow svg{width:20px;height:20px}

.reviews-dots{display:flex;justify-content:center;gap:7px;margin-top:14px}
.rev-dot-btn{width:8px;height:8px;border-radius:50%;border:none;cursor:pointer;padding:0;
  background:rgba(255,255,255,.2);transition:background .2s,width .2s}
.rev-dot-btn.on{background:var(--blue);width:20px;border-radius:999px}

@media (max-width:600px){
  .reviews-carousel{padding:0}
  .rev-arrow{display:none}
  .reviews-viewport{-webkit-mask-image:none;mask-image:none}
  .rev-card{flex-basis:82vw;max-width:82vw}
}

/* ============================================================
   VOSS — Fondo premium (capa fija, sin coste al hacer scroll)
   ============================================================ */
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(1100px 620px at 12% -8%, rgba(0,163,255,.10), transparent 60%),
    radial-gradient(900px 520px at 100% 6%, rgba(110,90,255,.06), transparent 55%),
    radial-gradient(820px 720px at 50% 112%, rgba(0,163,255,.05), transparent 60%);
}
/* profundidad sutil entre secciones sin recargar */
.section{position:relative}

/* Rendimiento: menos animaciones pesadas corriendo en segundo plano */
@media (prefers-reduced-motion: reduce){
  .hero-glow,
}
/* Badges de producto más elegantes / menos gritones */
.card .gi-badge,.card .badge-soft{font-weight:700;letter-spacing:.01em}

/* accesible pero invisible */
.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}

/* ============================================================
   VOSS — Controles de productos, precios, reseñas, promo suave
   ============================================================ */
.prod-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;
  max-width:1180px;margin:0 auto 18px;padding:0 8px}
.prod-cats{display:flex;flex-wrap:wrap;gap:8px}
.pc-chip{font-family:inherit;font-size:12.5px;font-weight:700;color:var(--text-dim);cursor:pointer;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);padding:8px 14px;border-radius:999px;
  transition:color .15s,border-color .15s,background .15s;min-height:38px}
.pc-chip:hover{color:var(--text);border-color:rgba(0,163,255,.35)}
.pc-chip.on{color:#eaf4ff;background:rgba(0,163,255,.14);border-color:rgba(0,163,255,.4)}
.prod-sort{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-dim)}
.prod-sort select{font-family:inherit;font-size:13px;color:var(--text);background:#0d1424;
  border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:9px 12px;min-height:40px;cursor:pointer}
.prod-sort select:focus{outline:none;border-color:var(--blue)}

.card .card-price{font-weight:800;font-size:15px;color:#9fd0ff;margin:2px 0 4px}
.card-rating .rev-count{font-size:11.5px;color:var(--text-dim);font-weight:500}

/* captura del pedido en reseña */
.rev-shot{position:relative;display:block;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.1);margin:2px 0 4px}
.rev-shot img{display:block;width:100%;height:110px;object-fit:cover}
.rev-shot-tag{position:absolute;left:8px;bottom:8px;font-size:10.5px;font-weight:700;color:#eaf4ff;
  background:rgba(8,14,26,.78);padding:3px 8px;border-radius:999px}

/* promo menos intrusivo: tarjeta abajo-derecha, sin bloquear la página */
.vm-promo-overlay.vm-promo-soft{background:transparent;pointer-events:none;display:block}
.vm-promo-overlay.vm-promo-soft .vm-promo-card{pointer-events:auto;position:fixed;right:18px;bottom:18px;
  left:auto;top:auto;transform:none;max-width:360px;width:calc(100vw - 36px);
  box-shadow:0 24px 70px rgba(0,0,0,.5);animation:promoIn .35s ease}
@keyframes promoIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.vm-promo-check span{font-size:13px;line-height:1.5;color:var(--text)}
.vm-promo-check strong{color:#ffcf6b}
.vm-promo-check a{color:#4db6ff;text-decoration:underline;font-weight:600}
.vm-promo-check input{width:18px;height:18px;accent-color:#00a3ff;flex-shrink:0;margin-top:2px}
@media (max-width:560px){
  .vm-promo-overlay.vm-promo-soft .vm-promo-card{right:10px;bottom:10px;width:calc(100vw - 20px)}
  .prod-controls{flex-direction:column;align-items:stretch}
  .prod-sort{justify-content:space-between}
}
@media (prefers-reduced-motion: reduce){ .vm-promo-overlay.vm-promo-soft .vm-promo-card{animation:none} }

/* ============================================================
   VOSS — Chips de entrega premium (sin emojis, azul suave)
   ============================================================ */
.deliv-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#9fc6ff;
  background:rgba(0,163,255,.08);border:1px solid rgba(0,163,255,.2);padding:4px 10px;border-radius:999px;white-space:nowrap}
.deliv-chip svg{flex-shrink:0}
.card-game-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.card-game-meta .meta-items{font-size:12px;color:var(--text-dim)}
.gd-pill-delivery{color:#9fc6ff;border-color:rgba(0,163,255,.25);background:rgba(0,163,255,.08);
  display:inline-flex;align-items:center;gap:6px}
@media (max-width:560px){ .deliv-chip{font-size:11.5px;padding:4px 9px} }

/* ============================================================
   VOSS — Checkout premium + Dejar review
   ============================================================ */
.co-summary{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:14px;margin:12px 0}
.co-sum-ico{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  border-radius:11px;background:rgba(0,163,255,.1);border:1px solid rgba(0,163,255,.2)}
.co-sum-ico svg{width:20px;height:20px;color:#4db6ff}
.co-sum-name{margin:0 0 7px !important;font-weight:700;color:var(--text) !important}
.co-sum-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.co-orderid-note{font-size:11.5px;color:var(--text-dim)}
.co-coord{margin:0 0 14px}
.co-coord-txt{display:flex;align-items:center;gap:7px;font-size:13px;color:#9fd0ff;font-weight:600;margin:0 0 8px}
.co-coord-txt svg{color:#4db6ff;flex-shrink:0}
.co-chips{display:flex;flex-wrap:wrap;gap:7px}
.co-chip{font-size:11.5px;font-weight:700;color:var(--text-dim);background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);padding:5px 11px;border-radius:999px}
.modal form label{display:block;margin-bottom:12px;font-size:13px;font-weight:600;color:var(--text)}
.modal form input,.modal form select,.modal form textarea{width:100%;box-sizing:border-box;margin-top:5px;
  min-height:46px;padding:11px 13px;font-size:14.5px;border-radius:12px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);color:var(--text);font-family:inherit}
.modal form textarea{min-height:70px}
.modal form input:focus,.modal form select:focus,.modal form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,163,255,.14)}
#submitOrder{min-height:52px;font-size:15.5px;border-radius:13px}

/* Dejar review */
.reviews-cta-row{display:flex;justify-content:center;margin-top:16px}
.review-form-card{max-width:440px}
.lr-stars{display:flex;gap:6px;justify-content:center;margin:10px 0 16px}
.lr-stars button{font-size:30px;line-height:1;background:none;border:none;cursor:pointer;color:rgba(255,255,255,.18);transition:color .12s,transform .12s;padding:4px}
.lr-stars button.on{color:#ffc531}
.lr-stars button:hover{transform:scale(1.12)}
.lr-field{display:block;margin-bottom:12px;font-size:13px;font-weight:600}
.lr-field input,.lr-field textarea{width:100%;box-sizing:border-box;margin-top:5px;min-height:44px;padding:10px 13px;
  font-size:14px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:var(--text);font-family:inherit}
.lr-field textarea{min-height:76px}
.lr-field input:focus,.lr-field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,163,255,.14)}
.lr-check{display:flex;align-items:center;gap:8px;font-size:13px;margin:4px 0 12px;cursor:pointer}
.lr-check input{width:17px;height:17px;accent-color:#00a3ff}
.lr-msg{font-size:13px;font-weight:600;margin:0 0 10px;padding:9px 12px;border-radius:10px}
.lr-msg.ok{color:#5fd39a;background:rgba(46,204,113,.08);border:1px solid rgba(46,204,113,.2)}
.lr-msg.err{color:#ff8a8a;background:rgba(255,80,80,.08);border:1px solid rgba(255,80,80,.22)}
.rev-empty{text-align:center;color:var(--text-dim);font-size:14.5px;padding:30px 16px}

/* ============================================================
   VOSS — REFINAMIENTO VISUAL (menos "gordo", más elegante)
   ============================================================ */
/* Botones: altura y volumen consistentes, menos gruesos */
.btn{font-weight:600;letter-spacing:0;border-width:1px}
.btn-lg{min-height:48px;padding:12px 22px;font-size:15px;border-radius:13px}
.btn:not(.btn-lg):not(.btn-sm){min-height:44px;padding:10px 18px;font-size:14px;border-radius:12px}
.btn-sm{min-height:36px;padding:7px 13px;font-size:13px;border-radius:10px;font-weight:600}
.btn-primary{box-shadow:0 4px 14px rgba(0,163,255,.18)}
.btn-primary:hover{box-shadow:0 6px 18px rgba(0,163,255,.24)}
#submitOrder{min-height:48px;font-size:15px}
.plan.vip-card .sub-btn{min-height:48px;font-size:15px}
.vip-see-btn{min-height:44px}

/* Cards de producto: más finas y balanceadas */
.card.card-game{padding:18px;border-radius:18px}
.card.card-game h3{font-size:16.5px;font-weight:700;letter-spacing:-.01em;margin:8px 0 4px}
.card.card-game p{font-size:13px;line-height:1.5;color:var(--text-dim);font-weight:400}
.card .card-price{font-size:14px;font-weight:700}
.card-rating{gap:6px}
.card-rating .stars .st{font-size:13px}
.card-rating b{font-size:12.5px;font-weight:600}
.card .ubadge{font-size:10.5px;font-weight:600;padding:2px 9px}
.deliv-chip{font-size:11.5px;font-weight:500;padding:3px 9px;gap:4px;border-color:rgba(0,163,255,.16);background:rgba(0,163,255,.06)}
.card-game-meta .meta-items{font-size:11.5px}
.card .tag{font-weight:700;font-size:10px;letter-spacing:.05em}

/* Detalle de producto (modal juego): finos */
.gi-return{display:flex;flex-direction:column;gap:1px;font-size:12px;color:#8fc9a8;font-weight:500;align-items:flex-start}
.gi-return svg{color:#5fd39a;display:inline;vertical-align:-1px}
.gi-return-micro{display:block;font-style:normal;font-size:11px;color:var(--text-dim);font-weight:400}
.gi-seller{font-size:12.5px;font-weight:500}
.gi-store-ico{display:inline-flex;vertical-align:-2px;color:var(--text-dim)}
.gi-cart-btn,.gi-buy-btn{min-height:38px;font-weight:600}
.gd-pill{font-weight:500;font-size:12px;padding:5px 11px}

/* Tipografía general: menos bold innecesario */
.section-title{font-weight:750;letter-spacing:-.02em}
.section-sub{font-weight:400}
.whybuy-card h3,.hiw-card h3,.vip-benefit-txt h4{font-weight:650}
.protect-card h3{font-weight:650}
.footer-col h4{font-weight:700;letter-spacing:.06em;font-size:12px}
.footer-chip{font-weight:500;font-size:12.5px;padding:7px 13px}
.pc-chip{font-weight:600}
.co-chip{font-weight:600}
.rev-user{font-weight:650}
.dash-metric b{font-weight:750}

/* Sombras más suaves en hovers */
.rev-card:hover,.card.card-game:hover{box-shadow:0 12px 32px rgba(0,0,0,.28)}
.plan.vip-card{box-shadow:0 16px 48px rgba(0,0,0,.32)}

@media (max-width:560px){
  .btn-lg{min-height:46px;font-size:14.5px}
  .card.card-game{padding:15px}
  .card.card-game h3{font-size:15.5px}
}

/* ============================================================
   VOSS — MOBILE FIX (mbar pro, help fab, newsletter, spacing)
   ============================================================ */
@media (max-width:760px){
  /* nada tapado por la bottom nav */
  body{padding-bottom:calc(92px + env(safe-area-inset-bottom))}

  /* bottom nav profesional */
  .mbar-item{font-size:10.5px;font-weight:600;gap:4px;min-height:54px;border-radius:10px;
    transition:color .15s,background .15s}
  .mbar-ico{display:flex;align-items:center;justify-content:center;height:22px}
  .mbar-item:active,.mbar-item.on{color:#4db6ff;background:rgba(0,163,255,.08)}

  /* help fab: pequeño, arriba de la mbar, sin tapar CTAs */
  .help-fab{right:12px;bottom:calc(78px + env(safe-area-inset-bottom));padding:0;width:46px;height:46px;
    justify-content:center;border-radius:50%;z-index:8990}
  .help-fab .help-fab-text{display:none}

  /* header compacto: fila 1 (logo+acciones), fila 2 (search) */
  .navbar{padding-top:calc(6px + env(safe-area-inset-top))}
  .nav-inner{gap:8px 10px}
  .nav-search{height:42px;border-radius:12px}
  .nav-search input{font-size:14px}

  /* topbar promo: scroll suave sin tapar */
  

  /* newsletter compacta */
  .footer-newsletter{padding:18px 16px;border-radius:16px;margin:0 12px 8px}
  .footer-newsletter .fn-text h3{font-size:16px}
  .footer-newsletter .fn-text p{font-size:12.5px}
  .fn-form{flex-direction:column;gap:9px;max-width:100%}
  .fn-input{height:48px;min-height:48px;font-size:14.5px;box-sizing:border-box}
  .fn-btn{min-height:48px;width:100%}

  /* secciones con menos aire muerto en móvil */
  .section{padding-top:38px;padding-bottom:38px}
}

/* ===== Fix estructural header (sticky) + capas seguras ===== */
.auth-overlay .auth-card{pointer-events:auto;position:relative;z-index:1}
.navbar .nav-actions,.navbar .nav-actions *{pointer-events:auto}
.banner-carousel{margin-top:14px}
@media (max-width:720px){
  .banner-carousel{margin-top:10px;border-radius:14px}
}
/* hero h1 nuevo: responsive para texto más largo */
.hero h1{font-size:clamp(26px,5vw,46px);line-height:1.16;letter-spacing:-.025em;max-width:820px;margin-left:auto;margin-right:auto}
@media (max-width:560px){ .hero h1{font-size:24px;line-height:1.22} }
.rev-oid{color:var(--text-dim);font-variant-numeric:tabular-nums}

/* modales móviles: scroll interno, botón final siempre alcanzable */
@media (max-width:720px){
  .modal-card,.auth-card,.review-form-card{max-height:calc(100dvh - 24px);overflow-y:auto;
    -webkit-overflow-scrolling:touch;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  .modal-backdrop{align-items:flex-end;padding:0}
  .modal-backdrop .modal-card{border-radius:18px 18px 0 0;width:100%}
}

/* ============================================================
   VOSS — HEADER: logo con proporción correcta (fix de raíz)
   El archivo tenía 42% de canvas vacío y ratio ~1:1 (no ancho).
   Ya viene recortado + fondo transparente. Aquí solo layout flex.
   ============================================================ */
.nav-logo{display:flex;align-items:center;gap:8px;flex-shrink:0;text-decoration:none;
  height:52px;max-width:150px}
.nav-logo .logo-img{height:100%;width:auto;max-width:100%;max-height:100%;
  object-fit:contain;object-position:left center}
.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.nav-actions > *{flex-shrink:0}

@media (max-width:760px){
  .nav-inner{display:flex;align-items:center;justify-content:space-between;gap:8px 10px;padding-left:14px;padding-right:14px}
  .nav-logo{height:48px;max-width:120px}
  /* acciones: área táctil consistente */
  .nav-actions{gap:6px}
  .nav-actions .bell-btn,.nav-actions .acct-btn,.nav-actions .cart-btn,
  .nav-actions button,.nav-actions > a{width:44px;height:44px;min-width:44px;
    display:inline-flex;align-items:center;justify-content:center;border-radius:12px}
  /* buscador: su propio espacio, sin hueco gigante */
  .nav-search{flex-basis:100%;order:3;margin-top:2px;height:42px}
  .nav-chips-bar{margin-top:0}
}
@media (max-width:390px){
  .nav-inner{padding-left:11px;padding-right:11px;gap:6px 8px}
  .nav-logo{height:44px;max-width:100px}
  .nav-actions{gap:5px}
  .nav-actions .bell-btn,.nav-actions .acct-btn,.nav-actions .cart-btn,
  .nav-actions button,.nav-actions > a{width:42px;height:42px;min-width:42px}
}
@media (max-width:340px){
  .nav-logo{height:40px;max-width:88px}
}

/* El estado vacío NUNCA aparece antes de que carguen los productos ni sin JS */
.no-results[hidden]{display:none !important}
/* la card estática sin imagen no deja hueco raro */
.card-game .card-icon.card-img:empty{min-height:0;background:linear-gradient(150deg,rgba(0,163,255,.10),rgba(255,255,255,.03));border-radius:12px;height:74px}

/* ============================================================
   VOSS — Horario de soporte (sustituye a la newsletter eliminada)
   ============================================================ */
/* la newsletter ya no existe: anulamos su espacio por si queda algún resto */
.footer-newsletter{display:none !important}
.footer{padding-top:34px}

/* línea informativa en el footer */
.footer-hours{display:flex;align-items:center;justify-content:center;gap:11px;
  max-width:1160px;margin:0 auto 26px;padding:13px 18px;
  background:rgba(0,163,255,.06);border:1px solid rgba(0,163,255,.18);border-radius:14px;
  box-sizing:border-box}
.footer-hours .fh-ico{display:flex;color:#4db6ff;flex-shrink:0}
.footer-hours .fh-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.footer-hours strong{font-size:13.5px;font-weight:650;color:var(--text);letter-spacing:-.01em}
.footer-hours em{font-style:normal;font-size:12.5px;color:var(--text-dim)}

/* chip junto al botón de Discord */
.hours-chip{display:inline-flex;align-items:center;gap:7px;margin-top:12px;
  font-size:12.5px;font-weight:500;color:#9fc6ff;
  background:rgba(0,163,255,.07);border:1px solid rgba(0,163,255,.18);
  padding:7px 13px;border-radius:999px;line-height:1.35}
.hours-chip svg{flex-shrink:0;color:#4db6ff}

@media (max-width:600px){
  .footer-hours{margin:0 12px 20px;padding:12px 14px;gap:10px;width:auto}
  .footer-hours strong{font-size:13px}
  .footer-hours em{font-size:12px}
  .hours-chip{width:100%;justify-content:center;text-align:center;
    white-space:normal;padding:9px 12px;box-sizing:border-box}
}

/* ============================================================
   VOSS — Footer: columna Soporte + grid reacomodado (5 col)
   ============================================================ */
.footer-inner{grid-template-columns:1.5fr 1fr 1fr 1.1fr 1.1fr;gap:32px 26px}
.footer-col-support{display:flex;flex-direction:column;gap:7px}
.footer-col-support .fs-line{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--text-dim);line-height:1.4}
.footer-col-support .fs-strong{color:var(--text);font-weight:600}
.footer-col-support .fs-strong svg{color:#4db6ff;flex-shrink:0}
.footer-col-support .fs-hours{font-size:15px;font-weight:700;color:#9fd0ff;letter-spacing:-.01em}
.footer-col-support .fs-tz{font-size:12.5px}

@media (max-width:1000px){
  .footer-inner{grid-template-columns:1fr 1fr 1fr;gap:30px 24px}
  .footer-brand{grid-column:1 / -1}
}
@media (max-width:700px){
  .footer-inner{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .footer-inner{grid-template-columns:1fr;gap:24px}
  .footer-col-support .fs-line{font-size:14px}
}

/* ============================================================
   VOSS — Horario dentro de las stats del hero
   ============================================================ */
.hero-stats .hs-support{display:flex;flex-direction:column;align-items:center;gap:2px}
.hero-stats .hs-support strong{font-size:clamp(19px,3vw,26px);letter-spacing:-.02em;white-space:nowrap}
.hero-stats .hs-support span{font-size:13px;color:var(--text-dim)}
.hero-stats .hs-support em{font-style:normal;font-size:11.5px;color:var(--text-dim);opacity:.85}

@media (max-width:760px){
  .hero-stats{gap:22px 26px;margin-top:38px}
  .hero-stats > div{min-width:0}
  .hero-stats .hs-support strong{font-size:17px}
  .hero-stats .hs-support span{font-size:12px}
  .hero-stats .hs-support em{font-size:11px}
}
@media (max-width:430px){
  .hero-stats{gap:16px 18px}
  .hero-stats .hs-support strong{font-size:15.5px}
}

/* ============================================================
   VOSS — Carrusel: swipe, controles clicables, sin layout shift
   ============================================================ */
.banner-carousel{position:relative;overflow:hidden;touch-action:pan-y;isolation:isolate}
.banner-track{display:flex;transition:transform .5s var(--ease,ease);will-change:transform;cursor:grab}
.banner-track:active{cursor:grabbing}
/* las imágenes no roban el gesto ni el arrastre */
.banner-slide img{pointer-events:none;-webkit-user-drag:none;user-select:none;
  aspect-ratio:16/9;width:100%;height:auto;display:block}   /* reserva espacio: sin layout shift */
/* controles SIEMPRE por encima de los slides y clicables */
.banner-arrow{z-index:5;pointer-events:auto}
.banner-dots{z-index:5;pointer-events:auto;position:absolute;left:0;right:0;bottom:10px;
  display:flex;justify-content:center;gap:7px}
.banner-dots button{width:8px;height:8px;padding:0;border:none;border-radius:999px;cursor:pointer;
  background:rgba(255,255,255,.42);transition:width .2s,background .2s}
.banner-dots button.active{background:#fff;width:20px}
.banner-arrow[hidden],.banner-dots[hidden]{display:none !important}
/* una sola imagen: banner estático limpio */
.banner-static .banner-track{transform:none !important;cursor:default}

@media (max-width:560px){
  .banner-arrow{width:36px;height:36px;font-size:16px}
  .banner-dots{bottom:8px}
}

/* ============================================================
   VOSS — Resumen del checkout + estado del pedido + guía
   ============================================================ */
.co-cart-summary{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);
  border-radius:14px;padding:14px;margin:0 0 14px}
.cos-title{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-dim)}
.cos-row{display:grid;grid-template-columns:1fr auto auto;gap:8px 12px;align-items:center;
  padding:7px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:13.5px}
.cos-row:last-of-type{border-bottom:none}
.cos-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.cos-qty{color:var(--text-dim);font-size:12.5px;white-space:nowrap}
.cos-sub{font-weight:700;white-space:nowrap}
.cos-total{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;
  border-top:1px solid rgba(255,255,255,.1);font-size:14px}
.cos-total strong{font-size:17px;color:#9fd0ff}
.co-next{font-size:12.5px;line-height:1.55;color:var(--text-dim);margin:0 0 8px}
.co-guide-link{display:inline-block;font-size:12.5px;font-weight:600;color:#4db6ff;text-decoration:underline;margin-bottom:10px}
.order-status-line{display:flex;align-items:center;justify-content:center;gap:7px;font-size:13px;
  color:#ffcf6b;font-weight:600;margin:12px 0 6px}
.os-dot{width:8px;height:8px;border-radius:50%;background:#ffb020;flex-shrink:0}
@media (max-width:560px){
  .cos-row{grid-template-columns:1fr auto;row-gap:2px}
  .cos-sub{grid-column:2}
}

/* ============================================================
   VOSS — Paso de confirmación (sin contradicción de pago)
   ============================================================ */
.confirm-box{margin-top:16px;padding:16px;border-radius:14px;
  background:rgba(0,163,255,.06);border:1px solid rgba(0,163,255,.2)}
.confirm-box h4{margin:0 0 6px;font-size:15px;color:var(--text)}
.confirm-box > p{margin:0 0 14px;font-size:13.5px;line-height:1.55;color:var(--text-dim)}
.confirm-box .warn-actions{display:flex;flex-direction:column;gap:9px}
.confirm-box .btn{min-height:46px}
.conf-note{margin:12px 0 0;font-size:12px;color:var(--text-dim);text-align:center;line-height:1.5}

/* ============================================================
   VOSS — SUMMER LIMITED EDITION
   Tipografía de bloques + escena tropical animada (100% CSS/SVG)
   ============================================================ */

/* ---------- Tipografía de bloques (solo títulos, nunca párrafos) ---------- */
:root{ --font-block: 'Pixelify Sans', 'Trebuchet MS', system-ui, sans-serif; }
.hero h1,
.summer-promo .sp-tag,
.section-title,
.section-head h2,
h2[data-i18n="products_title"],
.vip-eyebrow,
.banner-slide .banner-caption{
  font-family:var(--font-block);
  letter-spacing:.01em;          /* la fuente de bloques necesita aire, no tracking negativo */
  font-weight:700;
}
.hero h1{ font-size:clamp(25px,4.6vw,46px); line-height:1.25; }
/* legibilidad: el cuerpo NUNCA usa la fuente de bloques */
body,p,.hero-sub,.section-sub,.card p,.rev-text,input,select,textarea,button:not(.sp-tag){
  font-family:var(--font);
}

/* ---------- Escena de verano (decorativa, no bloquea clics) ---------- */
.summer-hero{position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(180deg,#0a1b33 0%,#0d3352 38%,#12586f 68%,#1b7f86 100%)}
.summer-scene{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.summer-hero .hero-content{position:relative;z-index:2}   /* contenido y botones SIEMPRE encima */
.summer-hero .hero-glow{opacity:.14}

/* sol cálido */
.summer-scene .sun{position:absolute;top:6%;right:9%;width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle,#ffe08a 0%,#ffc94d 45%,rgba(255,190,60,0) 72%);
  filter:blur(2px);animation:sunPulse 7s ease-in-out infinite}
@keyframes sunPulse{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}

/* nubes que cruzan lento */
.summer-scene .cloud{position:absolute;height:26px;border-radius:999px;
  background:rgba(255,255,255,.16);filter:blur(6px)}
.summer-scene .cloud::after{content:"";position:absolute;top:-12px;left:22px;width:52px;height:34px;
  border-radius:999px;background:inherit}
.cloud-1{top:12%;left:-20%;width:130px;animation:drift 46s linear infinite}
.cloud-2{top:24%;left:-30%;width:95px;animation:drift 62s linear infinite 6s;opacity:.75}
.cloud-3{top:6%;left:-25%;width:160px;animation:drift 78s linear infinite 14s;opacity:.55}
@keyframes drift{from{transform:translateX(0)}to{transform:translateX(155vw)}}

/* palmeras con balanceo sutil */
.summer-scene .palm{position:absolute;bottom:8%;width:130px;opacity:.9;transform-origin:bottom center}
.summer-scene .palm svg{width:100%;height:auto;display:block}
.palm-left{left:-14px;animation:sway 6s ease-in-out infinite}
.palm-right{right:-16px;transform:scaleX(-1);animation:sway 7.5s ease-in-out infinite .8s}
@keyframes sway{0%,100%{transform:rotate(-1.4deg)}50%{transform:rotate(1.4deg)}}
.palm-right{animation-name:swayR}
@keyframes swayR{0%,100%{transform:scaleX(-1) rotate(-1.4deg)}50%{transform:scaleX(-1) rotate(1.4deg)}}
.palm-leaves{filter:drop-shadow(0 3px 6px rgba(0,0,0,.28))}

/* mar con olas suaves (solo transform: sin coste de layout) */
.summer-scene .sea{position:absolute;left:0;right:0;bottom:0;height:26%;
  background:linear-gradient(180deg,rgba(46,190,190,.35),rgba(20,120,150,.55))}
.summer-scene .wave{position:absolute;left:-50%;width:200%;height:100%;
  background-repeat:repeat-x;background-size:50% 100%;
  background-image:radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.22) 0 42%,transparent 43%)}
.wave-1{bottom:14px;opacity:.5;animation:waveMove 11s linear infinite}
.wave-2{bottom:4px;opacity:.35;animation:waveMove 16s linear infinite reverse}
.wave-3{bottom:-6px;opacity:.22;animation:waveMove 22s linear infinite}
@keyframes waveMove{from{transform:translateX(0)}to{transform:translateX(50%)}}

/* destellos suaves */
.summer-scene .sparkles span{position:absolute;width:4px;height:4px;border-radius:50%;
  background:rgba(255,244,200,.9);box-shadow:0 0 8px rgba(255,224,138,.8);
  animation:twinkle 3.6s ease-in-out infinite}
.sparkles span:nth-child(1){top:22%;left:16%;animation-delay:0s}
.sparkles span:nth-child(2){top:34%;left:78%;animation-delay:.6s}
.sparkles span:nth-child(3){top:16%;left:58%;animation-delay:1.2s}
.sparkles span:nth-child(4){top:48%;left:8%;animation-delay:1.8s}
.sparkles span:nth-child(5){top:12%;left:36%;animation-delay:2.4s}
.sparkles span:nth-child(6){top:42%;left:90%;animation-delay:3s}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}

/* ---------- Promo Edición Limitada (integrada, no popup) ---------- */
.summer-promo{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;
  margin:0 auto 14px;padding:7px 8px 7px 7px;border-radius:999px;
  background:linear-gradient(100deg,rgba(255,201,77,.16),rgba(46,190,190,.16));
  border:1px solid rgba(255,201,77,.4);
  box-shadow:0 6px 22px rgba(255,190,60,.12)}
.summer-promo .sp-tag{display:inline-flex;align-items:center;font-size:12.5px;font-weight:700;
  color:#0b1220;background:linear-gradient(100deg,#ffd66b,#ffc24d);
  padding:5px 12px;border-radius:999px;letter-spacing:.02em;white-space:nowrap}
.summer-promo .sp-until{font-size:12.5px;font-weight:600;color:#ffe8b0;padding-right:8px;white-space:nowrap}

/* acentos veraniegos suaves en el resto de la página (sin perder identidad Voss) */
body::before{
  background:
    radial-gradient(1100px 620px at 12% -8%, rgba(0,163,255,.10), transparent 60%),
    radial-gradient(900px 520px at 100% 6%, rgba(46,190,190,.08), transparent 55%),
    radial-gradient(820px 720px at 50% 112%, rgba(255,201,77,.05), transparent 60%);
}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .summer-scene .palm{width:96px;opacity:.75}
  .summer-scene .sun{width:90px;height:90px;top:5%;right:6%}
}
@media (max-width:560px){
  .hero h1{font-size:23px;line-height:1.3}
  .summer-scene .palm{width:66px;bottom:4%;opacity:.6}   /* no tapa el texto ni los botones */
  .summer-scene .sun{width:70px;height:70px}
  .summer-scene .sea{height:18%}
  .summer-promo{gap:6px;padding:6px;width:auto;max-width:100%}
  .summer-promo .sp-tag,.summer-promo .sp-until{font-size:11px;white-space:normal;text-align:center}
}
@media (max-width:390px){
  .hero h1{font-size:21px}
  .summer-scene .palm{width:56px;opacity:.5}
}

/* ---------- Accesibilidad / rendimiento ---------- */
@media (prefers-reduced-motion: reduce){
  .summer-scene .sun,.summer-scene .cloud,.summer-scene .palm,
  .summer-scene .wave,.summer-scene .sparkles span{animation:none !important}
}

/* ============================================================
   VOSS MARKET — SUMMER GLOBAL EDITION
   Sistema visual tropical/voxel para toda la experiencia
   ============================================================ */
:root{
  --font:'Pixelify Sans',ui-monospace,'SFMono-Regular','Cascadia Mono','Trebuchet MS',system-ui,sans-serif;
  --font-block:var(--font);
  --summer-sky:#39bdf5;
  --summer-ocean:#007f98;
  --summer-aqua:#20d6c7;
  --summer-sand:#f7c85f;
  --summer-sun:#ffe27a;
  --summer-coral:#ff6f59;
  --summer-leaf:#33d17a;
  --summer-ink:#052c3b;
  --blue:#19d8d0;
  --red:#ff6f59;
  --radius:14px;
}
[data-theme="dark"],:root:not([data-theme]){
  --bg:#06364a;
  --bg-soft:#074b5c;
  --card:rgba(5,79,91,.88);
  --card-border:rgba(146,255,233,.35);
  --glass:rgba(4,72,88,.88);
  --text:#f5fffb;
  --text-dim:#c3eced;
  --nav-bg:rgba(4,72,88,.95);
  --input-bg:rgba(240,255,249,.1);
  --shadow:0 20px 60px rgba(0,34,49,.42);
}
[data-theme="light"]{
  --bg:#dffaff;
  --bg-soft:#fff3ce;
  --card:rgba(255,255,255,.86);
  --card-border:rgba(0,112,134,.28);
  --glass:rgba(246,255,252,.9);
  --text:#06364a;
  --text-dim:#315e69;
  --nav-bg:rgba(225,250,250,.96);
  --input-bg:rgba(255,255,255,.78);
  --shadow:0 18px 48px rgba(0,87,105,.18);
}

html{background:var(--bg);scroll-padding-top:104px}
html,body{max-width:100%;overflow-x:clip}
body,button,input,select,textarea,optgroup,option{
  font-family:var(--font) !important;
  font-synthesis:none;
}
body{
  min-width:0;
  font-size:16px;
  line-height:1.58;
  letter-spacing:.012em;
  background:
    linear-gradient(180deg,rgba(57,189,245,.3) 0,rgba(32,214,199,.12) 34%,rgba(6,54,74,0) 70%),
    var(--bg);
}
body::before{
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 3px,transparent 3px 78px),
    radial-gradient(1000px 480px at 8% 0%,rgba(57,189,245,.34),transparent 62%),
    radial-gradient(820px 540px at 92% 8%,rgba(255,226,122,.2),transparent 58%),
    radial-gradient(900px 680px at 50% 108%,rgba(32,214,199,.22),transparent 62%);
}
p,li,label,input,select,textarea,.btn,.nav-menu,.nav-chip,.footer,.modal-sub{
  letter-spacing:.018em;
}
h1,h2,h3,h4,h5,h6,strong,.price,.gi-price,.plan-price,.card-price{
  font-family:var(--font-block) !important;
  letter-spacing:.018em !important;
}
svg{shape-rendering:geometricPrecision}

/* Navegación, buscadores y chips como piezas de un HUD tropical. */
.navbar{
  background:linear-gradient(90deg,rgba(4,79,95,.97),rgba(0,126,145,.96),rgba(4,79,95,.97));
  border-bottom:3px solid var(--summer-sand);
  box-shadow:0 5px 0 rgba(3,42,55,.72),0 16px 32px rgba(0,37,48,.2);
}
.nav-inner{min-height:68px}
.nav-logo img{border:2px solid var(--summer-sand);box-shadow:3px 3px 0 rgba(1,39,50,.7)}
.nav-menu a,.nav-chip{color:var(--text);font-weight:700;text-shadow:1px 1px 0 rgba(0,40,52,.4)}
.nav-menu a:hover,.nav-chip:hover{color:var(--summer-sun)}
.nav-search,.products-search,.hero-search{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(226,255,247,.92));
  border:2px solid rgba(247,200,95,.85) !important;
  box-shadow:0 4px 0 rgba(1,74,88,.55),inset 0 0 0 2px rgba(32,214,199,.15);
}
.nav-search input,.products-search input,.hero-search input{color:#06364a !important;font-weight:600}
.nav-search input::placeholder,.products-search input::placeholder,.hero-search input::placeholder{color:#426c73 !important;opacity:.9}
.nav-search svg,.products-search svg,.hero-search svg{color:#007f98}
.bell-btn,.acct-btn,.cart-btn,.footer-theme,.footer-lang-btn{
  background:rgba(232,255,248,.12) !important;
  border:1px solid rgba(247,200,95,.55) !important;
  color:var(--text) !important;
  box-shadow:0 3px 0 rgba(0,42,54,.48);
}
.nav-chips-bar{
  background:linear-gradient(90deg,rgba(247,200,95,.96),rgba(255,226,122,.94),rgba(247,200,95,.96));
  border-bottom:2px solid rgba(89,56,12,.24);
  box-shadow:0 5px 14px rgba(0,57,68,.18);
}
.nav-chip{color:#07364a;text-shadow:none;border-color:rgba(0,99,115,.2)}
.nav-chip:hover{color:#005e72;background:rgba(255,255,255,.38)}

/* Carrusel visible, táctil y con controles por encima de cualquier overlay. */
.banner-carousel{
  max-width:1040px;
  margin-top:24px;
  z-index:40;
  border:3px solid var(--summer-sand);
  border-radius:18px;
  background:#075066;
  box-shadow:0 8px 0 #054052,0 22px 44px rgba(0,38,50,.3);
  touch-action:pan-y pinch-zoom;
  outline:none;
}
.banner-track{touch-action:pan-y;user-select:none}
.banner-slide{background:#075066}
.banner-slide img{background:#075066;object-fit:cover;object-position:center}
.banner-arrow{
  z-index:20;
  width:44px;height:44px;
  background:linear-gradient(180deg,var(--summer-sun),var(--summer-sand));
  color:#06364a;
  border:2px solid rgba(255,255,255,.7);
  border-radius:10px;
  box-shadow:0 4px 0 rgba(62,42,8,.45);
}
.banner-arrow:hover{background:#fff0a5;color:#004e62;transform:translateY(calc(-50% - 2px))}
.banner-dots{z-index:20}
.banner-dots button{height:10px;width:10px;border:2px solid rgba(5,54,74,.58);background:rgba(255,255,255,.74)}
.banner-dots button.active{width:28px;background:var(--summer-sun)}
.banner-kenburns .banner-slide img{animation:summerBannerPan 10s ease-in-out infinite alternate}
@keyframes summerBannerPan{from{transform:scale(1.01) translate3d(-.4%,0,0)}to{transform:scale(1.07) translate3d(.6%,-.6%,0)}}

/* Hero y escena voxel. */
.summer-hero{
  min-height:78vh;
  margin-top:28px;
  background:linear-gradient(180deg,#38bdf4 0%,#47d7dc 45%,#0d93aa 71%,#087188 100%);
  border-top:4px solid rgba(255,255,255,.55);
  border-bottom:8px solid var(--summer-sand);
  box-shadow:inset 0 -10px 0 rgba(183,126,26,.28);
}
.summer-hero::before{
  background:linear-gradient(180deg,rgba(6,54,74,.08),transparent 18%,transparent 78%,rgba(6,54,74,.32));
}
.summer-hero .hero-content{text-shadow:2px 2px 0 rgba(0,54,70,.25)}
.hero-badge,.summer-promo{
  background:rgba(4,72,88,.78);
  border:2px solid rgba(255,226,122,.72);
  color:#f5fffb;
  box-shadow:0 5px 0 rgba(0,61,74,.38);
}
.summer-promo .sp-tag{
  color:#06364a;
  border:2px solid rgba(255,255,255,.64);
  border-radius:8px;
  box-shadow:3px 3px 0 rgba(77,49,0,.32);
}
.summer-promo .sp-until{color:#fff6cc}
.hero h1{font-size:clamp(30px,5vw,52px);line-height:1.12;color:#fff}
.hero-sub,.hero-mini,.hero-stats span,.hero-stats em{color:#eafffb !important}
.hero-stats strong{color:var(--summer-sun);text-shadow:2px 2px 0 #05677c}
.grad-blue{background:linear-gradient(180deg,#fff7c2,#ffd462);-webkit-background-clip:text;background-clip:text;color:transparent}
.summer-scene .cloud{
  height:24px;border-radius:0;filter:none;
  background:rgba(255,255,255,.8);
  box-shadow:24px -18px 0 rgba(255,255,255,.9),52px -8px 0 rgba(255,255,255,.82),76px 0 0 rgba(255,255,255,.72);
}
.summer-scene .cloud::after{display:none}
.summer-scene .palm svg{shape-rendering:crispEdges;filter:drop-shadow(6px 6px 0 rgba(0,63,64,.28))}
.summer-scene .palm-leaves{filter:none}
.summer-scene .sea{background:linear-gradient(180deg,rgba(28,226,215,.5),rgba(0,103,143,.72))}
.summer-scene .wave{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.3) 0 12px,transparent 12px 34px);height:22px}

/* Todos los bloques del marketplace pertenecen al mismo archipiélago visual. */
.section{
  margin-top:34px;
  margin-bottom:34px;
  border:2px solid rgba(130,246,224,.34);
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(6,91,105,.84),rgba(5,68,88,.93)),
    var(--card);
  box-shadow:0 8px 0 rgba(3,50,64,.48),0 24px 50px rgba(0,42,54,.2);
  overflow:hidden;
}
.section::before{
  content:"";position:absolute;left:0;right:0;top:0;height:7px;pointer-events:none;
  background:repeating-linear-gradient(90deg,var(--summer-sand) 0 28px,var(--summer-sun) 28px 48px,var(--summer-aqua) 48px 72px);
  opacity:.9;
}
.section-head h2,.section-title{color:#fff6cc;text-shadow:3px 3px 0 rgba(0,50,64,.5)}
.section-head p,.section-sub{color:var(--text-dim)}
.glass,.card,.plan,.step,.protect-card,.community-info,.review-card,.rev-card,.faq-item,.offers-banner,.reason-strip,.seller-simple-card,.guide-sec{
  background:linear-gradient(145deg,rgba(8,112,119,.84),rgba(5,70,91,.94));
  border-color:rgba(154,255,231,.35);
  box-shadow:0 5px 0 rgba(2,52,65,.48),0 15px 28px rgba(0,43,54,.16);
}
[data-theme="light"] .glass,[data-theme="light"] .card,[data-theme="light"] .plan,[data-theme="light"] .step,
[data-theme="light"] .protect-card,[data-theme="light"] .community-info,[data-theme="light"] .review-card,
[data-theme="light"] .rev-card,[data-theme="light"] .faq-item,[data-theme="light"] .offers-banner{
  background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(225,252,244,.94));
}
.card,.plan,.step,.protect-card,.review-card,.rev-card,.faq-item{position:relative;overflow:hidden}
.card:hover,.plan:hover,.step:hover,.protect-card:hover,.review-card:hover,.rev-card:hover{
  border-color:var(--summer-sun) !important;
  box-shadow:0 7px 0 rgba(2,52,65,.45),0 20px 36px rgba(0,35,48,.25) !important;
}
.card-icon,.protect-icon,.step-icon,.co-sum-ico{
  background:linear-gradient(145deg,var(--summer-sun),var(--summer-sand));
  color:#075065;
  border:2px solid rgba(255,255,255,.5);
  border-radius:10px;
  box-shadow:3px 3px 0 rgba(0,54,66,.34);
}
.card .tag,.ob-tag,.feat-chip,.pc-chip,.gd-pill,.co-chip,.footer-chip,.auth-role{
  border-radius:8px;
  border-color:rgba(255,226,122,.55);
  background:rgba(255,226,122,.13);
  color:#fff3bd;
}
.pc-chip.on,.prod-cat.active,.prod-cat.is-active{
  background:linear-gradient(180deg,var(--summer-sun),var(--summer-sand));
  color:#06364a;
  border-color:#fff1a5;
  box-shadow:0 3px 0 rgba(76,50,5,.32);
}
.prod-sort select,.auth-input,.modal input,.modal select,.modal textarea,.checkout-card input,.checkout-card textarea,
.report-input,.lr-field input,.lr-field textarea,.seller-form input,.seller-form select{
  background:rgba(238,255,249,.11) !important;
  border:2px solid rgba(143,244,222,.32) !important;
  color:var(--text) !important;
}
select option{background:#075064;color:#fff}
input:focus,select:focus,textarea:focus{
  border-color:var(--summer-sun) !important;
  box-shadow:0 0 0 3px rgba(255,226,122,.18) !important;
}

/* Botones con borde de bloque y brillo ligero. */
.btn,.newbie-btn,.help-fab{
  position:relative;overflow:hidden;
  border-radius:10px;
  border:2px solid rgba(255,255,255,.24);
  box-shadow:0 4px 0 rgba(2,52,65,.52);
}
.btn-primary{
  background:linear-gradient(135deg,#20d6c7,#04a8bd 58%,#0286a2);
  color:#fff;
  border-color:#8ff5e1;
  box-shadow:0 5px 0 #05677b,0 12px 24px rgba(0,47,64,.26);
}
.btn-primary:hover{box-shadow:0 7px 0 #05677b,0 18px 30px rgba(0,47,64,.3)}
.btn-outline,.btn-ghost{
  background:rgba(236,255,249,.1);
  color:var(--text);
  border-color:rgba(255,226,122,.48);
}
.btn::after,.card::after,.protect-card::after,.step::after{
  content:"";position:absolute;top:-30%;bottom:-30%;left:-42%;width:30%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);
  transform:skewX(-18deg) translateX(0);
  transition:transform .72s ease;
}
.btn:hover::after,.card:hover::after,.protect-card:hover::after,.step:hover::after{transform:skewX(-18deg) translateX(520%)}
.sp-tag,.ob-tag:first-child,.bell-dot,.online-dot{animation:summerBadgePulse 3.2s ease-in-out infinite}
@keyframes summerBadgePulse{0%,100%{transform:scale(1);opacity:.92}50%{transform:scale(1.035);opacity:1}}

/* Perfil, carrito, checkout y todos los modales. */
.modal-backdrop,.auth-overlay,.newbie-overlay,.help-overlay,.report-backdrop,.cart-backdrop,
.vm-promo-overlay:not(.vm-promo-soft),.vm-imgpromo-overlay,.act-overlay,.seller-modal{
  background:rgba(1,43,57,.78);
  backdrop-filter:blur(9px) saturate(125%);
  -webkit-backdrop-filter:blur(9px) saturate(125%);
}
.vm-promo-overlay.vm-promo-soft{
  z-index:30 !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.modal-card,.auth-box,.newbie-box,.checkout-card,.game-modal,.help-box,.report-box,.seller-modal-card,
.vm-promo-card,.vm-imgpromo-box,.act-box{
  background:linear-gradient(160deg,rgba(7,105,115,.98),rgba(4,59,79,.99));
  border:2px solid rgba(255,226,122,.5);
  border-radius:18px;
  box-shadow:0 8px 0 rgba(2,42,55,.65),0 28px 70px rgba(0,27,39,.5);
}
.auth-box{max-width:430px}
.auth-menu-btn{justify-content:flex-start;gap:11px;text-align:left}
.profile-menu-icon{width:20px;height:20px;flex:0 0 20px;color:var(--summer-sun)}
.auth-view-title{display:flex;align-items:center;justify-content:center;gap:9px}
.auth-view-title .profile-menu-icon{width:22px;height:22px;flex-basis:22px}
.cart-panel{
  background:linear-gradient(180deg,#087180,#064459);
  border-left:3px solid var(--summer-sand);
  box-shadow:-8px 0 0 rgba(2,48,60,.42),-24px 0 54px rgba(0,24,35,.35);
}
.cart-item,.checkout-summary,.co-cart-summary,.confirm-box,.order-status-line{
  background:rgba(228,255,247,.09);
  border-color:rgba(153,255,230,.3);
}

/* Tutorial visual integrado en “¿Eres nuevo?”. */
.newbie-box{max-width:780px}
.tutorial-video-card{
  margin:20px 0 24px;padding:14px;border-radius:16px;
  background:linear-gradient(145deg,rgba(255,226,122,.14),rgba(32,214,199,.14));
  border:2px solid rgba(255,226,122,.48);
  box-shadow:0 5px 0 rgba(2,48,60,.42);
}
.tutorial-video-copy{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px;flex-wrap:wrap}
.tutorial-kicker{font-size:12px;font-weight:700;color:#06364a;background:var(--summer-sun);padding:5px 9px;border-radius:6px;box-shadow:2px 2px 0 rgba(74,47,0,.3)}
.tutorial-video-copy h3{font-size:16px;line-height:1.3;margin:0;color:#fff}
.tutorial-video-frame{
  position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:12px;
  background:#032c3c;border:2px solid rgba(255,255,255,.35);box-shadow:0 6px 0 rgba(1,43,56,.55);
}
.tutorial-video-frame video{display:block;width:100%;height:100%;object-fit:cover;background:#032c3c}
.tutorial-play{
  position:absolute;inset:0;margin:auto;width:max-content;height:max-content;display:flex;align-items:center;gap:10px;
  padding:11px 17px;border-radius:9px;border:2px solid #fff3b3;cursor:pointer;
  background:linear-gradient(180deg,rgba(7,97,111,.96),rgba(3,65,84,.98));color:#fff;
  font-size:15px;font-weight:700;box-shadow:0 5px 0 rgba(0,32,43,.66),0 14px 28px rgba(0,27,39,.35);
  transition:transform .2s ease,opacity .2s ease;
}
.tutorial-play:hover{transform:translateY(-2px)}
.tutorial-play-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--summer-sun);color:#06465a}
.tutorial-play-icon svg{width:22px;height:22px}
.tutorial-video-frame.is-playing .tutorial-play{opacity:0;pointer-events:none}

/* “Cómo funciona”, reviews, FAQ y footer cierran el tema con arena/agua. */
#como-funciona .step-num,.hiw-num{background:var(--summer-sun);color:#06465a;box-shadow:3px 3px 0 rgba(0,52,64,.36)}
.reviews-carousel::before{background:linear-gradient(90deg,#075165,transparent)}
.reviews-carousel::after{background:linear-gradient(270deg,#075165,transparent)}
.rev-arrow{background:var(--summer-sun);color:#06465a;border:2px solid #fff2ad;box-shadow:0 4px 0 rgba(65,41,3,.34)}
.faq-item[open] summary{color:var(--summer-sun)}
.faq-item summary::after{color:var(--summer-sun)}
.footer{
  margin-top:72px;
  padding-top:42px;
  background:
    linear-gradient(180deg,rgba(247,200,95,.96) 0 10px,transparent 10px),
    linear-gradient(180deg,#07586b,#04394e);
  border-top:0;
  box-shadow:0 -8px 0 rgba(3,50,64,.34);
}
.footer-col,.footer-brand,.footer-bottom,.footer-chips{color:#eafffb}
.footer-col h4,.footer-brand span{color:#fff0aa}
.footer-col a,.footer-copy,.footer-brand p,.footer-bottom{color:#c7eeee}
.footer-chip{background:rgba(238,255,248,.09);border-color:rgba(255,226,122,.42)}
.mobile-bar{
  background:linear-gradient(180deg,rgba(7,96,109,.98),rgba(4,59,78,.99));
  border-top:3px solid var(--summer-sand);
  box-shadow:0 -6px 0 rgba(2,45,58,.42);
}
.mbar-item{color:#dffcf6}.mbar-item:hover,.mbar-item.active{color:var(--summer-sun)}

/* Responsive desde 320 px: controles cómodos, sin desbordes. */
@media (max-width:900px){
  .section{margin-left:14px;margin-right:14px}
  .nav-inner{padding-left:16px;padding-right:16px}
  .banner-carousel{max-width:calc(100% - 28px)}
}
@media (max-width:600px){
  body{font-size:15px;padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .navbar{box-shadow:0 4px 0 rgba(3,42,55,.72),0 12px 24px rgba(0,37,48,.18)}
  .nav-chips-bar{overflow-x:auto;scrollbar-width:none}
  .nav-chips-bar::-webkit-scrollbar{display:none}
  .banner-carousel{max-width:calc(100% - 20px);margin-top:16px;border-width:2px;border-radius:12px;box-shadow:0 5px 0 #054052,0 14px 28px rgba(0,38,50,.28)}
  .banner-arrow{width:36px;height:36px;border-radius:8px}
  .summer-hero{margin-top:18px;min-height:auto;padding:82px 16px 54px}
  .hero h1{font-size:clamp(25px,8.2vw,34px);line-height:1.18}
  .hero-sub,.hero-mini{font-size:14.5px !important;line-height:1.62}
  .section{margin:24px 10px;padding:48px 14px;border-radius:17px;box-shadow:0 5px 0 rgba(3,50,64,.44),0 16px 32px rgba(0,42,54,.18)}
  .section-head{margin-bottom:30px}
  .section-head h2,.section-title{font-size:clamp(23px,7vw,30px);line-height:1.2}
  .grid{grid-template-columns:1fr !important}
  .btn{line-height:1.3}
  .newbie-overlay{align-items:flex-end;padding:10px}
  .newbie-box{max-height:calc(100dvh - 20px);padding:22px 15px;border-radius:18px 18px 10px 10px}
  .newbie-title{font-size:21px;line-height:1.24}
  .tutorial-video-card{padding:10px;margin:17px 0 20px}
  .tutorial-video-copy{gap:8px}
  .tutorial-video-copy h3{font-size:14px}
  .tutorial-play{padding:8px 12px;font-size:13px}
  .tutorial-play-icon{width:30px;height:30px}
  .auth-grid2{grid-template-columns:1fr}
  .auth-menu-btn{min-height:48px}
  .cart-panel{width:100%;max-width:100vw}
  .footer{margin-top:44px}
}
@media (max-width:390px){
  body{font-size:14.5px}
  .nav-inner{padding-left:10px;padding-right:10px;gap:8px}
  .nav-actions{gap:5px}
  .banner-arrow{width:32px;height:32px}
  .summer-promo{border-radius:12px}
  .summer-promo .sp-tag,.summer-promo .sp-until{font-size:10.5px}
  .hero h1{font-size:25px}
  .section{margin-left:8px;margin-right:8px;padding-left:12px;padding-right:12px}
  .tutorial-play>span:last-child{display:none}
  .newbie-steps,.newbie-list{padding-left:18px}
}
@media (max-width:340px){
  .hero h1{font-size:23px}
  .banner-dots{bottom:5px}
  .banner-dots button{width:8px;height:8px}
  .banner-dots button.active{width:20px}
  .section{padding-left:10px;padding-right:10px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto !important;animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .banner-kenburns .banner-slide img{animation:none !important;transform:none !important}
  .btn::after,.card::after,.protect-card::after,.step::after{display:none}
}

/* ============================================================
   VOSS SUMMER EVENT — campaign layer
   Covers the current marketplace and event-* / summer-* markup.
   ============================================================ */
:root{
  --event-sky:#42c7f4;
  --event-sky-deep:#109cc7;
  --event-sea:#05aeba;
  --event-sea-deep:#04667b;
  --event-foam:#dcfff7;
  --event-sand:#f6c963;
  --event-sand-light:#ffe8a0;
  --event-palm:#31cf7d;
  --event-coral:#ff725d;
  --event-night:#04394d;
  --event-panel:rgba(5,78,94,.93);
  --event-line:rgba(160,255,233,.36);
  --event-block-shadow:0 5px 0 rgba(2,45,58,.5);
}

/* Shared event shells keep new sections aligned with the existing page. */
.event-section,.summer-section,.event-shell,.summer-shell{
  position:relative;
  width:min(1200px,calc(100% - 32px));
  margin:34px auto;
  padding:clamp(42px,6vw,72px) clamp(16px,4vw,42px);
  overflow:hidden;
  border:2px solid var(--event-line);
  border-radius:24px;
  background:
    linear-gradient(145deg,rgba(8,111,119,.91),rgba(4,60,79,.97)),
    var(--event-panel);
  box-shadow:0 7px 0 rgba(2,45,58,.48),0 25px 52px rgba(0,35,48,.2);
}
.event-section::before,.summer-section::before,.event-shell::before,.summer-shell::before{
  content:"";
  position:absolute;inset:0 0 auto;height:7px;
  background:repeating-linear-gradient(90deg,var(--event-sand) 0 34px,var(--event-sand-light) 34px 51px,var(--event-sea) 51px 76px);
  pointer-events:none;
}
.event-kicker,.summer-kicker,.event-eyebrow,.summer-eyebrow{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:30px;padding:5px 11px;margin-bottom:10px;
  border:1px solid rgba(255,238,171,.62);border-radius:7px;
  background:rgba(255,226,122,.14);color:#fff0a8;
  font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.09em;text-transform:uppercase;
}
.event-title,.summer-title{
  color:#fff4bc;font-size:clamp(25px,4vw,42px);font-weight:700;
  line-height:1.14;text-shadow:3px 3px 0 rgba(0,45,58,.48);
}
.event-copy,.summer-copy{max-width:680px;color:var(--text-dim);font-size:clamp(14px,1.6vw,16px);line-height:1.62}

/* Campaign hero: sky, ocean, sand, voxel clouds, palms and restrained FX. */
.summer-hero,.event-hero,.summer-event-hero{
  min-height:clamp(630px,78vh,820px);
  padding:clamp(104px,13vh,142px) 24px clamp(96px,13vh,132px);
  isolation:isolate;
  background:
    linear-gradient(180deg,rgba(255,255,255,.17),transparent 18%),
    linear-gradient(180deg,var(--event-sky) 0%,#54d7e1 46%,#0ca4b4 67%,var(--event-sea-deep) 100%);
}
.summer-hero .hero-content,.event-hero .event-hero-content,.summer-event-hero .summer-hero-content{
  width:min(900px,100%);position:relative;z-index:7;margin:auto;
}
.summer-hero h1,.event-hero h1,.summer-event-hero h1{
  max-width:820px;margin-inline:auto;
  font-size:clamp(36px,6.2vw,66px);line-height:1.02;letter-spacing:.025em !important;
  text-wrap:balance;text-shadow:4px 4px 0 rgba(0,66,78,.5),0 12px 28px rgba(0,56,69,.18);
}
.summer-hero .hero-sub,.event-hero .event-subtitle,.event-hero .event-copy,.summer-event-hero .summer-subtitle{
  max-width:660px;margin:18px auto 25px;font-size:clamp(15px,2vw,19px);line-height:1.55;
  color:#effffb !important;text-wrap:pretty;
}
.summer-hero .hero-cta,.event-hero .event-actions,.summer-event-hero .summer-actions{
  position:relative;z-index:8;gap:12px;
}
.summer-hero .hero-cta .btn,.event-hero .btn,.summer-event-hero .btn{min-height:50px;padding-inline:25px}

.summer-scene,.event-scene,.summer-event-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.summer-scene::before,.event-scene::before,.summer-event-scene::before{
  content:"";position:absolute;z-index:1;left:-10%;right:-10%;bottom:18%;height:23%;
  opacity:.44;
  background:
    repeating-linear-gradient(174deg,transparent 0 19px,rgba(255,255,255,.18) 20px 23px,transparent 24px 40px),
    linear-gradient(180deg,rgba(85,246,231,.2),rgba(0,98,126,.62));
  transform:skewY(-1deg);animation:eventWaterShift 14s ease-in-out infinite alternate;
}
.summer-scene::after,.event-scene::after,.summer-event-scene::after{
  content:"";position:absolute;z-index:5;left:-3%;right:-3%;bottom:-11px;height:13%;min-height:58px;
  background:
    radial-gradient(70px 22px at 8% 0,rgba(255,249,204,.9),transparent 72%),
    radial-gradient(100px 24px at 42% 2%,rgba(255,249,204,.68),transparent 72%),
    radial-gradient(90px 26px at 84% 0,rgba(255,249,204,.72),transparent 72%),
    repeating-linear-gradient(90deg,var(--event-sand) 0 45px,#efb84a 45px 49px,var(--event-sand) 49px 93px);
  box-shadow:inset 0 7px 0 rgba(255,244,182,.46);
}
.summer-scene .sea,.event-sea,.summer-sea{z-index:2;height:31%;overflow:visible}
.summer-scene .sea::before,.event-shark-fin,.summer-shark-fin{
  content:"";position:absolute;z-index:4;left:-70px;top:28%;width:43px;height:35px;
  background:linear-gradient(135deg,#06495d,#0a6d7d);clip-path:polygon(0 100%,70% 0,100% 100%);
  filter:drop-shadow(0 6px 0 rgba(223,255,248,.2));
  animation:eventSharkCruise 24s linear infinite;
}
.summer-scene .sea::after,.event-sea-reflection,.summer-sea-reflection{
  content:"";position:absolute;z-index:3;inset:7% -20% auto;height:45%;
  opacity:.42;background:repeating-linear-gradient(90deg,transparent 0 34px,rgba(235,255,248,.74) 35px 64px,transparent 65px 112px);
  transform:skewX(-22deg);animation:eventReflection 9s ease-in-out infinite alternate;
}
.event-cloud,.summer-cloud{position:absolute;height:22px;background:rgba(255,255,255,.84);box-shadow:22px -16px 0 #fff,47px -7px 0 rgba(255,255,255,.9),69px 0 0 rgba(255,255,255,.78)}
.event-palm,.summer-palm{position:absolute;bottom:8%;transform-origin:50% 100%;animation:eventPalmSway 7s ease-in-out infinite}
.event-particles,.summer-particles{position:absolute;inset:0;opacity:.72;background-image:radial-gradient(circle,rgba(255,249,204,.9) 0 2px,transparent 2.6px);background-size:89px 83px;animation:eventParticleDrift 15s linear infinite}
@keyframes eventWaterShift{from{transform:translate3d(-1%,0,0) skewY(-1deg)}to{transform:translate3d(1.5%,7px,0) skewY(1deg)}}
@keyframes eventSharkCruise{0%{transform:translate3d(0,0,0)}48%{transform:translate3d(112vw,5px,0)}49%,100%{transform:translate3d(112vw,28px,0)}}
@keyframes eventReflection{from{transform:translate3d(-2%,0,0) skewX(-22deg)}to{transform:translate3d(3%,4px,0) skewX(-22deg)}}
@keyframes eventPalmSway{0%,100%{rotate:-1.2deg}50%{rotate:1.2deg}}
@keyframes eventParticleDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(18px,-30px,0)}}

/* Real countdown: stable digits, no jumpy widths, compact at every size. */
.event-countdown,.summer-countdown,.event-clock,.summer-clock{
  width:min(680px,100%);margin:22px auto 0;padding:14px 16px;
  border:2px solid rgba(255,235,157,.64);border-radius:14px;
  background:linear-gradient(145deg,rgba(4,73,88,.92),rgba(3,52,71,.96));
  box-shadow:var(--event-block-shadow),0 16px 30px rgba(0,37,48,.2);
  color:#fff;text-align:center;
}
.event-countdown-title,.summer-countdown-title,.event-clock-title{
  display:block;margin-bottom:9px;color:#fff1ae;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.11em;text-transform:uppercase;
}
.event-countdown-grid,.summer-countdown-grid,.event-clock-grid,.countdown-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;
}
.event-time-unit,.summer-time-unit,.countdown-unit,.event-countdown-unit{
  min-width:0;padding:8px 5px;border:1px solid rgba(157,255,230,.26);border-radius:9px;background:rgba(229,255,248,.08);
}
.event-time-value,.summer-time-value,.countdown-value,.event-countdown-value{
  display:block;color:#fff8d2;font-size:clamp(22px,4.4vw,36px);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;
}
.event-time-label,.summer-time-label,.countdown-label,.event-countdown-label{
  display:block;margin-top:5px;color:#c9f4ec;font-size:10px;font-weight:600;line-height:1.15;letter-spacing:.06em;text-transform:uppercase;
}
.event-ended,.summer-event-ended{color:#fff0a8;font-weight:700;text-align:center}
.ob-timer{font-variant-numeric:tabular-nums}.ob-timer strong{min-width:78px;text-align:center;color:#fff2ad !important}

/* Summer offers consume only real product data; visuals do not imply stock. */
.event-offers,.summer-offers{position:relative}
.event-offers-grid,.summer-offers-grid,.offer-grid,.summer-offer-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;
}
.event-offer-card,.summer-offer-card,.offer-card{
  position:relative;display:flex;flex-direction:column;min-width:0;padding:15px;
  border:2px solid rgba(151,255,231,.31);border-radius:16px;overflow:hidden;
  background:linear-gradient(155deg,rgba(9,118,121,.9),rgba(4,63,82,.96));box-shadow:var(--event-block-shadow);
}
.event-offer-card::before,.summer-offer-card::before,.offer-card::before{
  content:"";position:absolute;inset:0 auto auto 0;width:100%;height:5px;background:linear-gradient(90deg,var(--event-sea),var(--event-sand),var(--event-coral));
}
.event-offer-media,.summer-offer-media,.offer-card-media{aspect-ratio:16/10;overflow:hidden;margin-bottom:12px;border-radius:10px;background:#07586a}
.event-offer-media img,.summer-offer-media img,.offer-card-media img{width:100%;height:100%;object-fit:cover}
.event-offer-card h3,.summer-offer-card h3,.offer-card h3{font-size:17px;line-height:1.25;color:#fff;margin-bottom:6px}
.event-offer-price,.summer-offer-price,.offer-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto;color:#fff4b9;font-size:23px;font-weight:700}
.event-offer-old-price,.summer-offer-old-price,.offer-old-price{color:#bce5e3;font-size:13px;font-weight:500;text-decoration:line-through}
.event-offer-meta,.summer-offer-meta,.offer-meta{display:grid;gap:4px;margin:9px 0 12px;color:#c7efeb;font-size:12px;line-height:1.35}
.event-offer-image{aspect-ratio:16/10;overflow:hidden;margin-bottom:12px;border-radius:10px;background:#07586a}
.event-offer-image img{width:100%;height:100%;object-fit:cover}
.event-offer-body{display:flex;flex:1;min-width:0;flex-direction:column}
.event-offer-game{align-self:flex-start;margin-bottom:7px;padding:4px 7px;border:1px solid rgba(255,232,156,.45);border-radius:6px;background:rgba(255,226,122,.1);color:#fff0aa;font-size:10.5px;font-weight:700;line-height:1.2}
.event-offer-prices{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto}
.event-offer-prices strong{color:#fff4b9;font-size:23px;font-weight:700;font-variant-numeric:tabular-nums}
.event-offer-prices del{color:#bce5e3;font-size:13px;font-weight:500}
.event-offer-saving{align-self:flex-start;margin-top:5px;padding:3px 6px;border-radius:5px;background:rgba(49,207,125,.14);color:#a9ffd2;font-size:11px;font-weight:700}
.event-offer-card .btn{min-height:42px;margin-top:auto;padding:9px 11px;font-size:13px}

/* Tropical category shortcuts are horizontally discoverable on narrow screens. */
.event-categories,.summer-categories{position:relative}
.event-category-strip,.summer-category-strip,.event-category-track,.summer-category-track{
  display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin-top:20px;
}
.event-category,.summer-category,.category-card{
  position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;
  min-width:0;min-height:112px;padding:13px;border:2px solid rgba(255,236,163,.38);border-radius:14px;overflow:hidden;
  background:
    linear-gradient(180deg,rgba(40,195,221,.08),rgba(3,58,76,.86)),
    linear-gradient(145deg,#16b8c0,#077a91);
  color:#fff;text-align:left;box-shadow:0 4px 0 rgba(1,48,62,.48);cursor:pointer;
  scroll-snap-align:start;transition:transform .2s ease,border-color .2s ease,filter .2s ease;
}
.event-category::before,.summer-category::before,.category-card::before{
  content:"";position:absolute;z-index:-1;inset:auto -8% 0;height:36%;
  background:repeating-linear-gradient(90deg,var(--event-sand) 0 30px,#e8b345 30px 33px,var(--event-sand) 33px 66px);
  clip-path:polygon(0 30%,12% 18%,26% 31%,43% 8%,58% 27%,72% 15%,100% 28%,100% 100%,0 100%);
}
.event-category:nth-child(2n),.summer-category:nth-child(2n),.category-card:nth-child(2n){background:linear-gradient(180deg,rgba(55,220,219,.08),rgba(3,58,76,.88)),linear-gradient(145deg,#4ecbf0,#098da0)}
.event-category:nth-child(3n),.summer-category:nth-child(3n),.category-card:nth-child(3n){background:linear-gradient(180deg,rgba(80,216,153,.12),rgba(3,58,76,.9)),linear-gradient(145deg,#38cc92,#087b82)}
.event-category:hover,.summer-category:hover,.category-card:hover,.event-category.is-active,.summer-category.is-active,.category-card.is-active{
  transform:translateY(-3px);border-color:#fff0a5;filter:saturate(1.1) brightness(1.04);
}
.event-category strong,.summer-category strong,.category-card strong{position:relative;z-index:2;font-size:14px;line-height:1.15;text-shadow:2px 2px 0 rgba(0,47,61,.58)}
.prod-cats{scroll-snap-type:x proximity;overscroll-behavior-inline:contain}.pc-chip{scroll-snap-align:start}

/* Tutorial and four buying steps. */
.event-tutorial,.summer-tutorial{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr);align-items:center;gap:clamp(18px,4vw,44px);
}
.event-tutorial-frame,.summer-tutorial-frame{position:relative;aspect-ratio:16/9;overflow:hidden;border:3px solid var(--event-sand);border-radius:16px;background:#032c3c;box-shadow:0 7px 0 rgba(1,43,55,.55),0 20px 40px rgba(0,34,46,.24)}
.event-tutorial-frame video,.summer-tutorial-frame video{display:block;width:100%;height:100%;object-fit:cover;background:#032c3c}
.event-tutorial .btn,.summer-tutorial .btn{min-height:50px;margin-top:16px}
.event-steps,.summer-steps,.event-steps-grid,.summer-steps-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;
}
.event-step,.summer-step{
  position:relative;min-width:0;padding:19px 15px 16px;border:2px solid rgba(151,255,231,.3);border-radius:15px;
  background:linear-gradient(150deg,rgba(8,115,120,.88),rgba(4,65,84,.96));box-shadow:0 4px 0 rgba(1,48,61,.5);
}
.event-step-icon,.summer-step-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:12px;border:2px solid rgba(255,255,255,.6);border-radius:9px;background:linear-gradient(145deg,var(--event-sand-light),var(--event-sand));color:#075064;box-shadow:3px 3px 0 rgba(0,52,64,.34)}
.event-step-icon svg,.summer-step-icon svg{width:22px;height:22px}.event-step h3,.summer-step h3{font-size:15px;line-height:1.25;margin-bottom:6px}.event-step p,.summer-step p{font-size:12.5px;line-height:1.5;color:var(--text-dim)}

/* Compact trust strip, with existing 25+ proof kept readable. */
.event-trust,.summer-trust,.event-trust-strip,.summer-trust-strip{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;overflow:hidden;
  border:2px solid rgba(255,234,157,.55);border-radius:16px;background:linear-gradient(90deg,#076b79,#087f83,#076b79);box-shadow:var(--event-block-shadow);
}
.event-trust-item,.summer-trust-item{
  display:flex;align-items:center;justify-content:center;gap:9px;min-width:0;padding:15px 12px;color:#effffb;font-size:12.5px;font-weight:600;line-height:1.25;text-align:left;
}
.event-trust-item+.event-trust-item,.summer-trust-item+.summer-trust-item{border-left:1px solid rgba(255,255,255,.14)}
.event-trust-icon,.summer-trust-icon{width:31px;height:31px;display:grid;place-items:center;flex:0 0 31px;border-radius:8px;background:var(--event-sand);color:#075064}
.event-trust-icon svg,.summer-trust-icon svg{width:17px;height:17px}
.event-trust-proof,.summer-trust-proof{color:#fff0a8;font-size:17px;font-weight:700}

/* Existing products: visual hierarchy without increasing card height. */
#productos{position:relative}
#productGrid{align-items:stretch}
#productGrid .card.card-game{
  padding:18px 16px 16px;border:2px solid rgba(147,255,231,.29);border-radius:16px;
  background:
    linear-gradient(180deg,rgba(21,164,162,.13),transparent 38%),
    linear-gradient(150deg,rgba(7,104,113,.94),rgba(4,61,81,.98));
  box-shadow:0 4px 0 rgba(1,48,61,.5),0 14px 25px rgba(0,34,48,.14);
}
#productGrid .card.card-game .card-icon{width:52px;height:52px;margin-bottom:12px;border-radius:11px}
#productGrid .card.card-game h3{font-size:16px;line-height:1.22;margin-bottom:5px}
#productGrid .card.card-game p{display:-webkit-box;min-height:0;margin-bottom:10px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12.5px;line-height:1.42}
#productGrid .card.card-game .card-price{font-size:20px;line-height:1.2;color:#fff0a9}
#productGrid .card.card-game .card-game-meta{display:grid;gap:4px;min-height:0;margin:7px 0 11px;font-size:11px;line-height:1.3}
#productGrid .card.card-game .btn{min-height:42px;padding:9px 11px;font-size:13px}
#productGrid .card.card-game .tag{top:12px;right:12px}

/* Summer cart, total and expected supporting copy. */
.cart-head{background:rgba(255,226,122,.08);border-bottom-color:rgba(255,234,163,.34)}
.cart-head h3{color:#fff3b7}.cart-items{overscroll-behavior:contain}
.cart-row,.cart-item{padding:11px;border:1px solid rgba(154,255,231,.24);border-radius:12px;background:rgba(229,255,248,.07)}
.cart-row{border-bottom:1px solid rgba(154,255,231,.24)}
.cart-qty button{border:1px solid rgba(255,234,163,.42);background:rgba(236,255,248,.1);color:#fff}
.cart-total-row strong{color:#fff0a8 !important;font-variant-numeric:tabular-nums}
.cart-order-note,.summer-cart-note,.event-cart-note{
  margin:0 0 12px;padding:9px 10px;border-left:3px solid var(--event-sand);border-radius:6px;background:rgba(255,226,122,.08);color:#d7f4ed;font-size:11.5px;line-height:1.42;
}
.summer-cart-order-note{
  margin:0 0 12px;padding:9px 10px;border-left:3px solid var(--event-sand);border-radius:6px;background:rgba(255,226,122,.08);color:#d7f4ed;font-size:11.5px;line-height:1.42;
}
.cart-next-step,.summer-cart-next,.event-cart-next{display:flex;align-items:center;gap:8px;margin:10px 0;color:#d7f4ed;font-size:12px}
.checkout-card .checkout-summary,.checkout-card .co-cart-summary{border:1px solid rgba(154,255,231,.28);border-radius:12px}

/* Optional persistent mobile CTA supplied by the event markup. */
.event-mobile-cta,.summer-mobile-cta{display:none}

/* Moderate reveal/shine only when motion is welcome. */
@media (prefers-reduced-motion:no-preference){
  .event-section,.summer-section,.event-offer-card,.summer-offer-card,.offer-card,.event-step,.summer-step{animation:eventSectionIn .55s cubic-bezier(.22,.61,.36,1) both}
  .event-offer-card:hover,.summer-offer-card:hover,.offer-card:hover,.event-step:hover,.summer-step:hover{transform:translateY(-4px);border-color:var(--event-sand)}
  @keyframes eventSectionIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
}

/* Tablet: two-column content, four trust items remain compact. */
@media (max-width:900px){
  .event-offers-grid,.summer-offers-grid,.offer-grid,.summer-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-category-strip,.summer-category-strip,.event-category-track,.summer-category-track{grid-template-columns:repeat(3,minmax(0,1fr))}
  .event-steps,.summer-steps,.event-steps-grid,.summer-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-tutorial,.summer-tutorial{grid-template-columns:1fr;max-width:720px;margin-inline:auto}
  .summer-hero,.event-hero,.summer-event-hero{min-height:650px}
}

/* Mobile: horizontal discovery and dense cards, with no covered content. */
@media (max-width:600px){
  .event-section,.summer-section,.event-shell,.summer-shell{width:calc(100% - 18px);margin-block:22px;padding:38px 13px 30px;border-radius:17px}
  .event-title,.summer-title{font-size:clamp(23px,7.3vw,30px)}
  .summer-hero,.event-hero,.summer-event-hero{
    min-height:610px;margin-top:14px;padding:75px 14px 92px;
  }
  .summer-hero h1,.event-hero h1,.summer-event-hero h1{font-size:clamp(28px,9.7vw,39px);line-height:1.06}
  .summer-hero .hero-sub,.event-hero .event-subtitle,.event-hero .event-copy,.summer-event-hero .summer-subtitle{font-size:14.5px;line-height:1.52;margin-block:14px 20px}
  .summer-hero .hero-cta,.event-hero .event-actions,.summer-event-hero .summer-actions{display:grid;grid-template-columns:1fr;width:100%;max-width:350px;margin-inline:auto}
  .summer-hero .hero-cta .btn,.event-hero .btn,.summer-event-hero .btn{width:100%;min-height:47px}
  .summer-scene::after,.event-scene::after,.summer-event-scene::after{height:10%;min-height:52px}
  .summer-scene .sea,.event-sea,.summer-sea{height:23%}
  .summer-scene .sea::before,.event-shark-fin,.summer-shark-fin{width:32px;height:27px;animation-duration:30s}
  .event-countdown,.summer-countdown,.event-clock,.summer-clock{padding:11px 9px;margin-top:16px}
  .event-countdown-grid,.summer-countdown-grid,.event-clock-grid,.countdown-grid{gap:5px}
  .event-time-unit,.summer-time-unit,.countdown-unit,.event-countdown-unit{padding:7px 2px}
  .event-time-value,.summer-time-value,.countdown-value,.event-countdown-value{font-size:clamp(20px,7vw,28px)}
  .event-time-label,.summer-time-label,.countdown-label,.event-countdown-label{font-size:8.5px;letter-spacing:.03em}
  .event-offers-grid,.summer-offers-grid,.offer-grid,.summer-offer-grid{
    display:flex;gap:11px;overflow-x:auto;padding:3px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;
  }
  .event-offers-grid::-webkit-scrollbar,.summer-offers-grid::-webkit-scrollbar,.offer-grid::-webkit-scrollbar,.summer-offer-grid::-webkit-scrollbar{display:none}
  .event-offer-card,.summer-offer-card,.offer-card{flex:0 0 min(78vw,270px);scroll-snap-align:start;padding:13px}
  .event-category-strip,.summer-category-strip,.event-category-track,.summer-category-track,
  .prod-cats{
    display:flex;gap:9px;max-width:none;overflow-x:auto;padding:3px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;
  }
  .event-category-strip::-webkit-scrollbar,.summer-category-strip::-webkit-scrollbar,.event-category-track::-webkit-scrollbar,.summer-category-track::-webkit-scrollbar,.prod-cats::-webkit-scrollbar{display:none}
  .event-category,.summer-category,.category-card{flex:0 0 132px;min-height:96px;padding:11px}
  .pc-chip{flex:0 0 auto;min-height:40px}
  .event-steps,.summer-steps,.event-steps-grid,.summer-steps-grid{grid-template-columns:1fr;gap:9px}
  .event-step,.summer-step{display:grid;grid-template-columns:40px 1fr;column-gap:11px;padding:13px}
  .event-step-icon,.summer-step-icon{grid-row:1/3;width:38px;height:38px;margin:0}
  .event-step h3,.summer-step h3,.event-step p,.summer-step p{grid-column:2;margin:0}
  .event-trust,.summer-trust,.event-trust-strip,.summer-trust-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-trust-item,.summer-trust-item{justify-content:flex-start;padding:11px 9px;font-size:10.5px}
  .event-trust-item+.event-trust-item,.summer-trust-item+.summer-trust-item{border-left:0}
  .event-trust-item:nth-child(even),.summer-trust-item:nth-child(even){border-left:1px solid rgba(255,255,255,.14)}
  .event-trust-item:nth-child(n+3),.summer-trust-item:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
  .event-trust-icon,.summer-trust-icon{width:27px;height:27px;flex-basis:27px}
  #productGrid{
    display:flex !important;flex-wrap:nowrap;grid-template-columns:none !important;grid-auto-flow:initial;grid-auto-columns:auto;
    gap:11px;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:3px 18px 14px 2px;
    scroll-snap-type:x proximity;scroll-padding-inline:2px;scrollbar-width:none;overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;
  }
  #productGrid::-webkit-scrollbar{display:none}
  #productGrid>.card{flex:0 0 min(78vw,250px);width:auto;min-width:0;scroll-snap-align:start;scroll-snap-stop:normal}
  #productGrid .card.card-game{padding:14px 13px 13px;backdrop-filter:none;-webkit-backdrop-filter:none}
  #productGrid .card.card-game .card-icon{width:44px;height:44px;margin-bottom:9px}
  #productGrid .card.card-game h3{font-size:15px}
  #productGrid .card.card-game .card-price{font-size:18px}
  .event-mobile-cta,.summer-mobile-cta{
    position:fixed;z-index:135;left:8px;right:8px;bottom:calc(70px + env(safe-area-inset-bottom));
    display:flex;align-items:center;gap:8px;padding:7px;border:2px solid rgba(255,235,163,.64);border-radius:13px;
    background:rgba(4,70,87,.96);box-shadow:0 5px 0 rgba(1,43,56,.58),0 15px 30px rgba(0,31,43,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  }
  .event-mobile-cta .btn,.summer-mobile-cta .btn{flex:1;min-height:43px;padding:8px 11px;font-size:12.5px}
  body:has(.event-mobile-cta:not([hidden])),body:has(.summer-mobile-cta:not([hidden])){padding-bottom:calc(136px + env(safe-area-inset-bottom))}
  .cart-panel{padding-bottom:env(safe-area-inset-bottom)}
}

@media (max-width:390px){
  .summer-hero,.event-hero,.summer-event-hero{min-height:590px;padding-inline:11px}
  .summer-hero h1,.event-hero h1,.summer-event-hero h1{font-size:clamp(27px,9.2vw,35px)}
  .event-offer-card,.summer-offer-card,.offer-card{flex-basis:min(82vw,255px)}
  .event-category,.summer-category,.category-card{flex-basis:122px;min-height:91px}
  #productGrid>.card{flex-basis:min(82vw,244px)}
}

@media (max-width:340px){
  .event-section,.summer-section,.event-shell,.summer-shell{width:calc(100% - 12px);padding-inline:10px}
  .summer-hero,.event-hero,.summer-event-hero{min-height:570px;padding-top:70px}
  .summer-hero h1,.event-hero h1,.summer-event-hero h1{font-size:27px}
  .event-time-value,.summer-time-value,.countdown-value,.event-countdown-value{font-size:20px}
  .event-trust,.summer-trust,.event-trust-strip,.summer-trust-strip{grid-template-columns:1fr}
  .event-trust-item:nth-child(n),.summer-trust-item:nth-child(n){border-left:0;border-top:1px solid rgba(255,255,255,.12)}
  .event-trust-item:first-child,.summer-trust-item:first-child{border-top:0}
  #productGrid>.card{flex-basis:min(86vw,236px)}
}

@media (prefers-reduced-motion:reduce){
  .summer-scene::before,.event-scene::before,.summer-event-scene::before,
  .summer-scene .sea::before,.event-shark-fin,.summer-shark-fin,
  .summer-scene .sea::after,.event-sea-reflection,.summer-sea-reflection,
  .event-particles,.summer-particles,.event-palm,.summer-palm{
    animation:none !important;transform:none !important;
  }
  .event-offer-card:hover,.summer-offer-card:hover,.offer-card:hover,.event-step:hover,.summer-step:hover,
  .event-category:hover,.summer-category:hover,.category-card:hover{transform:none !important}
}

/* Exact event markup generated by the campaign controller. */
.event-section-kicker{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:29px;margin-bottom:10px;padding:5px 10px;border:1px solid rgba(255,238,171,.62);border-radius:7px;
  background:rgba(255,226,122,.14);color:#fff0a8;font-size:11.5px;font-weight:700;line-height:1.2;letter-spacing:.09em;text-transform:uppercase;
}
.event-campaign-content,.event-tutorial-section{position:relative}
.event-primary-cta{
  background:linear-gradient(180deg,var(--event-sand-light),var(--event-sand));
  border-color:#fff4bd;color:#06465a;box-shadow:0 5px 0 rgba(104,68,9,.52),0 13px 25px rgba(0,47,61,.24);
}
.event-primary-cta:hover{box-shadow:0 7px 0 rgba(104,68,9,.52),0 18px 30px rgba(0,47,61,.28)}
.event-tutorial-cta{border-color:rgba(255,244,189,.72);background:rgba(3,73,88,.58);color:#fff}

/* The DOM owns the shark; suppress the older generated fin when it is present. */
.summer-scene .sea:has(.event-shark)::before{display:none}
.event-shark{
  position:absolute;z-index:4;left:-70px;top:28%;width:43px;height:35px;
  animation:eventSharkCruise 24s linear infinite;
}
.event-shark>.event-shark-fin{
  position:absolute;inset:0;display:block;width:100%;height:100%;
  background:linear-gradient(135deg,#06495d,#0a6d7d);clip-path:polygon(0 100%,70% 0,100% 100%);
  filter:drop-shadow(0 6px 0 rgba(223,255,248,.2));animation:none;
}

/* Countdown class names in index.html. */
.event-countdown>.event-countdown-label{
  display:block;margin:0 0 9px;color:#fff1ae;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.11em;text-transform:uppercase;
}
.event-countdown-units{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.event-countdown-units .event-time-unit{
  display:block;min-width:0;padding:8px 5px;border:1px solid rgba(157,255,230,.26);border-radius:9px;background:rgba(229,255,248,.08);
}
.event-countdown-units .event-time-unit strong{
  display:block;color:#fff8d2;font-size:clamp(22px,4.4vw,36px);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;
}
.event-countdown-units .event-time-unit small{
  display:block;margin-top:5px;color:#c9f4ec;font-size:10px;font-weight:600;line-height:1.15;letter-spacing:.06em;text-transform:uppercase;
}

/* Standalone trust bar in current markup. */
.event-trust-strip{
  width:min(1120px,calc(100% - 32px));margin:24px auto 28px;
}
.event-trust-item>svg{
  width:31px;height:31px;padding:7px;flex:0 0 31px;border-radius:8px;
  background:var(--event-sand);color:#075064;stroke-width:1.9;
}

/* Exact tropical category cards. */
.event-category-card{
  position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;
  min-width:0;min-height:112px;padding:13px;border:2px solid rgba(255,236,163,.38);border-radius:14px;overflow:hidden;
  background:linear-gradient(180deg,rgba(40,195,221,.08),rgba(3,58,76,.86)),linear-gradient(145deg,#16b8c0,#077a91);
  color:#fff;text-align:left;box-shadow:0 4px 0 rgba(1,48,62,.48);cursor:pointer;scroll-snap-align:start;
  transition:transform .2s ease,border-color .2s ease,filter .2s ease;
}
.event-category-card::before{
  content:"";position:absolute;z-index:-1;inset:auto -8% 0;height:38%;
  background:repeating-linear-gradient(90deg,var(--event-sand) 0 30px,#e8b345 30px 33px,var(--event-sand) 33px 66px);
  clip-path:polygon(0 30%,12% 18%,26% 31%,43% 8%,58% 27%,72% 15%,100% 28%,100% 100%,0 100%);
}
.event-category-scene{
  position:absolute;z-index:-1;inset:0;opacity:.8;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 18%,rgba(255,255,255,.17) 18% 21%,transparent 21% 66%,rgba(255,255,255,.13) 66% 70%,transparent 70%),
    radial-gradient(circle at 78% 23%,rgba(255,240,146,.9) 0 10px,transparent 11px);
}
.event-category-card strong{position:relative;z-index:2;font-size:14px;line-height:1.15;text-shadow:2px 2px 0 rgba(0,47,61,.58)}
.event-category-roblox{background:linear-gradient(180deg,rgba(40,195,221,.08),rgba(3,58,76,.86)),linear-gradient(145deg,#16b8c0,#077a91)}
.event-category-blox,.event-category-mm2{background:linear-gradient(180deg,rgba(55,220,219,.08),rgba(3,58,76,.88)),linear-gradient(145deg,#4ecbf0,#098da0)}
.event-category-grow,.event-category-adopt{background:linear-gradient(180deg,rgba(80,216,153,.12),rgba(3,58,76,.9)),linear-gradient(145deg,#38cc92,#087b82)}
.event-category-services{background:linear-gradient(180deg,rgba(255,189,97,.08),rgba(3,58,76,.9)),linear-gradient(145deg,#f19a62,#08778a)}
.event-category-card:hover,.event-category-card.is-active,.event-category-card[aria-pressed="true"]{transform:translateY(-3px);border-color:#fff0a5;filter:saturate(1.1) brightness(1.04)}

/* Exact tutorial section: compact copy + a responsive, clearly playable preview. */
.event-tutorial-card{
  display:grid;grid-template-columns:minmax(300px,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(20px,4vw,44px);
  width:min(960px,100%);margin:auto;
}
.event-tutorial-preview{
  position:relative;aspect-ratio:16/9;overflow:hidden;border:3px solid var(--event-sand);border-radius:16px;
  background:#032c3c;box-shadow:0 7px 0 rgba(1,43,55,.55),0 20px 40px rgba(0,34,46,.24);
}
.event-tutorial-preview::after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 54%,rgba(2,40,54,.42));pointer-events:none;
}
.event-tutorial-preview img{display:block;width:100%;height:100%;object-fit:cover}
.event-tutorial-preview-play{
  position:absolute;z-index:2;inset:50% auto auto 50%;display:grid;place-items:center;width:58px;height:58px;
  transform:translate(-50%,-50%);border:2px solid #fff4b7;border-radius:12px;
  background:linear-gradient(180deg,var(--event-sand-light),var(--event-sand));color:#075064;box-shadow:0 5px 0 rgba(1,46,58,.62),0 14px 28px rgba(0,31,43,.25);
}
.event-tutorial-preview-play svg{width:27px;height:27px;margin-left:3px}
.event-tutorial-copy h2{margin:0 0 10px;color:#fff4bc;font-size:clamp(25px,3.7vw,39px);line-height:1.12;text-shadow:3px 3px 0 rgba(0,45,58,.48)}
.event-tutorial-copy p{max-width:520px;margin-bottom:18px;color:var(--text-dim);font-size:15px;line-height:1.55}
.event-tutorial-button{min-height:50px}

/* Four real purchase steps. */
#como-funciona .hiw-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;max-width:1120px}
#como-funciona .hiw-card{min-width:0;padding:20px 16px 18px;border:2px solid rgba(151,255,231,.3);border-radius:15px;background:linear-gradient(150deg,rgba(8,115,120,.88),rgba(4,65,84,.96));box-shadow:0 4px 0 rgba(1,48,61,.5)}
#como-funciona .hiw-ico{width:42px;height:42px;margin-bottom:12px;border:2px solid rgba(255,255,255,.56);border-radius:9px;background:linear-gradient(145deg,var(--event-sand-light),var(--event-sand));color:#075064;box-shadow:3px 3px 0 rgba(0,52,64,.34)}
#como-funciona .hiw-ico svg{color:#075064}
#como-funciona .hiw-num{top:15px;right:14px;font-size:30px;color:rgba(255,240,168,.2);-webkit-text-stroke:1px rgba(255,240,168,.55)}
#como-funciona .hiw-card h3{font-size:15px;line-height:1.25}
#como-funciona .hiw-card p{font-size:12.5px;line-height:1.48}

@media (max-width:900px){
  #como-funciona .hiw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .event-tutorial-card{grid-template-columns:1fr;max-width:720px}
}

@media (max-width:600px){
  .event-shark{width:32px;height:27px;animation-duration:30s}
  .event-countdown-units{gap:5px}
  .event-countdown-units .event-time-unit{padding:7px 2px}
  .event-countdown-units .event-time-unit strong{font-size:clamp(20px,7vw,28px)}
  .event-countdown-units .event-time-unit small{font-size:8.5px;letter-spacing:.03em}
  .event-trust-strip{width:calc(100% - 18px);margin-block:18px 22px}
  .event-trust-item>svg{width:27px;height:27px;padding:6px;flex-basis:27px}
  .event-category-card{flex:0 0 132px;min-height:96px;padding:11px}
  .event-tutorial-card{gap:22px}
  .event-tutorial-preview{border-radius:12px;border-width:2px;box-shadow:0 5px 0 rgba(1,43,55,.55),0 14px 28px rgba(0,34,46,.2)}
  .event-tutorial-preview-play{width:48px;height:48px}
  .event-tutorial-preview-play svg{width:23px;height:23px}
  .event-tutorial-copy h2{font-size:clamp(23px,7vw,30px)}
  .event-tutorial-copy p{font-size:14px}
  .event-tutorial-button{width:100%;min-height:47px}
  #como-funciona .hiw-grid{grid-template-columns:1fr;gap:9px}
  #como-funciona .hiw-card{display:grid;grid-template-columns:40px 1fr;column-gap:11px;padding:13px}
  #como-funciona .hiw-ico{grid-row:1/3;width:38px;height:38px;margin:0}
  #como-funciona .hiw-card h3,#como-funciona .hiw-card p{grid-column:2;margin:0}
  .event-mobile-cta,.summer-mobile-cta{bottom:calc(76px + env(safe-area-inset-bottom));z-index:135}
  .mobile-bar{z-index:140}
  body:has(.event-mobile-cta:not([hidden])),body:has(.summer-mobile-cta:not([hidden])){padding-bottom:calc(142px + env(safe-area-inset-bottom))}
}

@media (max-width:390px){.event-category-card{flex-basis:122px;min-height:91px}}

@media (prefers-reduced-motion:reduce){
  .event-shark{animation:none !important}
  .event-category-card:hover{transform:none !important}
}

/* ============================================================
   SUMMER EVENT OFICIAL · hero, vida marina y compra rápida
   ============================================================ */
.event-hero{
  height:clamp(650px,56.28vw,900px);min-height:0;padding:0;
  background:#087f9b;border-bottom-color:#f5c865;
}
.event-hero-art{position:absolute;inset:0;z-index:0;display:block;overflow:hidden;pointer-events:none}
.event-hero-art::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,43,74,.04) 45%,rgba(0,52,69,.18) 72%,rgba(1,48,61,.72) 100%);
}
.event-hero-art img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:50% 50%;
  transform:scale(1.01);animation:eventOfficialHeroPan 16s ease-in-out infinite alternate;
}
.event-hero .summer-scene{z-index:1;opacity:.82;pointer-events:none!important}
.event-hero .summer-scene .sun{opacity:.16}
.event-hero .summer-scene .cloud{opacity:.24}
.event-hero .summer-scene .palm{opacity:.3}
.event-hero .summer-scene::after{opacity:.14}
.event-hero .hero-glow{z-index:2;pointer-events:none}
.event-hero .event-hero-content{
  position:absolute;z-index:8;left:clamp(16px,5vw,76px);right:auto;bottom:clamp(18px,3.3vw,48px);transform:none;
  width:min(620px,calc(100% - 32px));margin:0;padding:clamp(16px,2vw,24px);
  display:grid;justify-items:start;gap:10px;text-align:left;
  border:2px solid rgba(255,238,170,.72);border-radius:16px;
  background:linear-gradient(145deg,rgba(5,107,125,.9),rgba(3,68,91,.92));
  box-shadow:0 6px 0 rgba(1,41,54,.55),0 18px 38px rgba(0,30,43,.25);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.event-hero .event-hero-content h1{
  margin:0;color:#fff;font-size:clamp(30px,4vw,52px);line-height:1.02;
  text-wrap:balance;text-shadow:0 4px 0 rgba(0,48,67,.58);
}
.event-hero .event-until{margin:0;color:#fff0ae;font-size:clamp(13px,1.45vw,17px);font-weight:800;line-height:1.35}
.event-hero .hero-badge{
  display:inline-flex;margin:0;padding:7px 10px;border:1px solid rgba(255,239,171,.65);border-radius:9px;
  background:rgba(0,75,96,.62);color:#effffa;font-size:clamp(11px,1.25vw,14px);line-height:1.4;
}
.event-hero .hero-sub{margin:0;color:#f5fffb;font-size:clamp(13px,1.45vw,16px);line-height:1.5;max-width:58ch}
.event-hero .hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 0;justify-content:flex-start}
.event-hero .hero-cta .btn{min-width:165px}
@keyframes eventOfficialHeroPan{
  from{transform:scale(1.015) translate3d(-.3%,0,0)}
  to{transform:scale(1.055) translate3d(.45%,-.35%,0)}
}

.event-sun-reflection{
  position:absolute;z-index:3;right:14%;top:3%;width:18%;height:74%;opacity:.42;
  background:repeating-linear-gradient(180deg,rgba(255,249,191,.8) 0 3px,transparent 3px 12px);
  clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);filter:blur(.2px);
  animation:eventSunGlitter 5.5s ease-in-out infinite alternate;
}
.event-shark{pointer-events:none}
.event-shark-a{top:25%;animation-duration:24s}
.event-shark-b{top:52%;left:-120px;width:31px;height:25px;opacity:.62;animation-duration:34s;animation-delay:-17s}
.event-shark-c{top:68%;left:-95px;width:24px;height:20px;opacity:.48;animation-duration:43s;animation-delay:-31s}
.event-shark-b>.event-shark-fin{background:linear-gradient(135deg,#087187,#0b8da0)}
.event-shark-c>.event-shark-fin{background:linear-gradient(135deg,#07546c,#0a7485)}
.event-fish-school{position:absolute;z-index:2;inset:0;animation:eventFishCruise 28s linear infinite;opacity:.55}
.event-fish{
  position:absolute;width:17px;height:9px;background:#ffe075;clip-path:polygon(0 50%,28% 0,78% 10%,100% 0,88% 50%,100% 100%,78% 90%,28% 100%);
  filter:drop-shadow(3px 2px 0 rgba(1,77,97,.25));
}
.event-fish:nth-child(even){background:#ff8b5a;transform:scale(.72)}
.fish-1{left:5%;top:48%}.fish-2{left:9%;top:56%}.fish-3{left:14%;top:42%}
.fish-4{left:20%;top:62%}.fish-5{left:25%;top:50%}.fish-6{left:30%;top:69%}
.event-bubbles{position:absolute;z-index:3;inset:0;opacity:.48}
.event-bubbles span{position:absolute;bottom:4%;width:7px;height:7px;border:2px solid rgba(225,255,250,.8);border-radius:50%;animation:eventBubbleRise 8s ease-in infinite}
.event-bubbles span:nth-child(1){left:12%;animation-delay:-1s}.event-bubbles span:nth-child(2){left:24%;width:4px;height:4px;animation-delay:-5s}
.event-bubbles span:nth-child(3){left:43%;animation-delay:-3s}.event-bubbles span:nth-child(4){left:61%;width:5px;height:5px;animation-delay:-7s}
.event-bubbles span:nth-child(5){left:76%;animation-delay:-2s}.event-bubbles span:nth-child(6){left:89%;width:4px;height:4px;animation-delay:-6s}
.event-splash{position:absolute;z-index:5;top:10%;width:42px;height:22px;opacity:0;background:radial-gradient(circle at 50% 100%,rgba(242,255,251,.95) 0 3px,transparent 4px);background-size:12px 18px;animation:eventSplash 11s ease-out infinite}
.splash-1{left:30%;animation-delay:-2s}.splash-2{left:72%;transform:scale(.7);animation-delay:-7s}
.event-float{position:absolute;z-index:4;left:-110px;top:19%;width:82px;height:25px;border-radius:50%;background:linear-gradient(180deg,#ffec8e 0 42%,#ff685c 43% 100%);border:4px solid rgba(255,255,255,.72);box-shadow:0 5px 0 rgba(2,83,101,.26);animation:eventFloatCruise 46s linear infinite}
.event-float span{position:absolute;inset:6px 21px;border-radius:50%;background:rgba(13,158,180,.82)}
@keyframes eventSunGlitter{from{transform:translate3d(-3%,0,0) scaleX(.82);opacity:.25}to{transform:translate3d(4%,4px,0) scaleX(1.12);opacity:.5}}
@keyframes eventFishCruise{0%{transform:translate3d(-38%,0,0)}100%{transform:translate3d(138%,8px,0)}}
@keyframes eventBubbleRise{0%{transform:translate3d(0,0,0) scale(.7);opacity:0}18%{opacity:.75}100%{transform:translate3d(9px,-150px,0) scale(1.25);opacity:0}}
@keyframes eventSplash{0%,82%,100%{opacity:0;transform:translateY(10px) scale(.55)}86%{opacity:.72}91%{opacity:0;transform:translateY(-13px) scale(1.05)}}
@keyframes eventFloatCruise{0%{transform:translate3d(-10vw,0,0) rotate(-2deg)}50%{transform:translate3d(60vw,5px,0) rotate(2deg)}100%{transform:translate3d(125vw,-2px,0) rotate(-1deg)}}

.field-error{display:block;min-height:0;margin-top:5px;color:#ffe4dc;font-size:12px;line-height:1.3;font-weight:700}
.field-error:empty{display:none}
#orderForm [aria-invalid="true"],.checkout-form [aria-invalid="true"]{border-color:#ff8a74!important;box-shadow:0 0 0 3px rgba(255,106,86,.18)!important}
#orderForm .remember-payment,.checkout-form .remember-payment{display:flex;align-items:center;gap:9px;margin:0 0 6px;color:var(--text);font-size:13px}
#orderForm .remember-payment input,.checkout-form .remember-payment input{width:18px;height:18px;flex:0 0 18px;accent-color:#f5c75a}
.checkout-form select,.quickbuy-form select{
  width:100%;padding:12px 13px;border:1px solid var(--card-border);border-radius:10px;background:rgba(2,75,91,.58);color:var(--text);font:inherit;
}
.checkout-form textarea[readonly],#orderForm input[readonly]{color:#e9fff9;background:rgba(1,57,72,.45);cursor:not-allowed;opacity:.9}
.quickbuy-note{margin:-2px 0 16px;color:var(--text-dim);font-size:13px;line-height:1.5}
.quickbuy-form{display:grid;gap:12px}
.quickbuy-form label{display:grid;gap:6px;color:var(--text-dim);font-size:13px;font-weight:700}
.quickbuy-form .auth-input{margin:0}
.order-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.order-meta-icon{width:15px;height:15px;flex:0 0 15px;color:var(--summer-sun)}
.gi-price-history{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:2px 5px;font-size:.72em;line-height:1.35}
.gi-price-history del{color:#ffe09a}.gi-price-history strong{color:#f6fff9;font-size:1.2em}

@media (max-width:600px){
  .event-hero{height:700px;min-height:700px;margin-top:14px;padding:0}
  .event-hero-art img{object-position:56% 50%;animation-duration:20s}
  .event-hero .event-hero-content{left:10px;bottom:14px;width:calc(100% - 20px);padding:14px 12px;gap:8px;border-radius:13px;justify-items:center;text-align:center}
  .event-hero .event-hero-content h1{font-size:clamp(27px,9vw,38px)}
  .event-hero .hero-badge{justify-content:center;font-size:11px}
  .event-hero .hero-sub{font-size:12.5px;line-height:1.4}
  .event-hero .hero-cta{display:grid;width:100%;max-width:none;grid-template-columns:1fr 1fr;gap:8px}
  .event-hero .hero-cta .btn{min-width:0;width:auto;min-height:44px;padding:8px;font-size:12px}
  .event-hero .summer-scene .palm{opacity:.18}
  .event-shark-c,.event-fish:nth-child(n+4),.event-bubbles span:nth-child(even),.splash-2,.event-float{display:none}
  .event-shark-b{animation-duration:40s;opacity:.45}
  .event-fish-school{animation-duration:36s;opacity:.38}
  .event-sun-reflection{opacity:.24}
}
@media (max-width:390px){.event-hero{height:650px;min-height:650px}.event-hero-art img{object-position:58% 50%}.event-hero .event-hero-content{padding:12px 10px}.event-hero .event-until{font-size:12px}}
@media (max-width:340px){.event-hero{height:630px;min-height:630px}.event-hero .hero-cta{grid-template-columns:1fr}.event-hero .event-hero-content h1{font-size:25px}}
@media (prefers-reduced-motion:reduce){
  .event-hero-art img,.event-sun-reflection,.event-shark,.event-fish-school,.event-bubbles span,.event-splash,.event-float,
  .event-hero .summer-scene .wave,.event-hero .summer-scene .cloud,.event-hero .summer-scene .palm,.event-hero .summer-scene .sparkles span{
    animation:none!important;transform:none!important;
  }
  .event-shark-b,.event-shark-c,.event-fish-school,.event-bubbles,.event-splash,.event-float{display:none!important}
}

/* ============================================================
   HERO PLAYA SUMMER · imagen completa, sin zoom y texto fuera del agua
   ============================================================ */
.event-hero{
  position:relative;isolation:isolate;display:block;height:clamp(620px,56.28vw,900px);min-height:0;margin-top:18px;padding:0;
  overflow:hidden;background:#079de0;border-top:4px solid rgba(255,255,255,.58);border-bottom:7px solid var(--summer-sand);
}
.event-hero::before{display:none!important}
.event-hero .event-hero-art{
  position:absolute;z-index:0;inset:0;display:block;width:100%;height:100%;overflow:hidden;pointer-events:none;
}
.event-hero .event-hero-art::after{
  content:"";display:block;position:absolute;z-index:1;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(0,42,76,.16) 0%,rgba(0,42,76,.035) 43%,transparent 67%);
}
.event-hero .event-hero-art::before{
  content:"";position:absolute;z-index:2;left:0;right:0;bottom:0;height:28%;pointer-events:none;opacity:.18;
  background:repeating-linear-gradient(168deg,transparent 0 17px,rgba(228,255,250,.58) 18px 20px,transparent 21px 39px);
  mix-blend-mode:screen;animation:eventWaterShimmer 7s linear infinite;
}
.event-hero .event-hero-art img{
  position:relative;z-index:0;width:100%;height:100%;display:block;object-fit:contain;object-position:center;
  animation:none!important;transform:none!important;filter:none!important;
}
.event-hero .event-hero-content{
  position:absolute;z-index:3;top:clamp(24px,4.4vw,70px);left:clamp(18px,5vw,80px);right:auto;bottom:auto;transform:none;
  width:min(560px,calc(100% - 36px));max-width:none;margin:0;padding:clamp(19px,2.2vw,27px);
  display:grid;grid-template-columns:1fr;align-items:center;gap:15px;overflow:visible;
  border:2px solid rgba(255,239,166,.76);border-radius:18px;
  background:linear-gradient(145deg,rgba(2,58,84,.88),rgba(4,112,128,.76));
  box-shadow:0 7px 0 rgba(0,47,68,.5),0 22px 46px rgba(0,41,67,.24),inset 0 1px 0 rgba(255,255,255,.24);
  backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);text-align:left;
}
.event-hero .event-hero-content::before{
  content:"";position:absolute;inset:0 18px auto;height:4px;border-radius:0 0 5px 5px;pointer-events:none;
  background:repeating-linear-gradient(90deg,#fff1a7 0 22px,#48e4d4 22px 44px,#ff8d5f 44px 66px);opacity:.78;
}
.event-hero-copy{position:relative;display:grid;justify-items:start;gap:8px;min-width:0;padding-right:28px}
.event-hero-copy::after{
  content:"";position:absolute;right:0;top:2px;width:22px;height:22px;pointer-events:none;
  background:linear-gradient(145deg,#ffd75c,#ff7b4e);clip-path:polygon(50% 0,61% 35%,98% 25%,69% 50%,96% 72%,60% 64%,50% 100%,40% 64%,4% 72%,31% 50%,2% 25%,39% 35%);
  filter:drop-shadow(3px 3px 0 rgba(0,54,72,.38));
}
.event-hero .event-hero-content h1{
  margin:0;color:#fff7c0;font-size:clamp(31px,3.4vw,48px);line-height:1.01;letter-spacing:-.015em;
  text-wrap:balance;text-shadow:0 3px 0 #075473,3px 0 0 rgba(8,84,112,.72);
}
.event-hero .event-until{
  display:inline-flex;margin:1px 0 0;padding:6px 9px;border:1px solid rgba(255,240,164,.72);border-radius:8px;
  background:linear-gradient(180deg,rgba(255,219,91,.2),rgba(255,180,69,.1));color:#fff3b5;
  font-size:clamp(11.5px,1.15vw,14px);font-weight:800;line-height:1.3;
}
.event-hero .hero-badge{
  display:inline-flex;margin:0;padding:7px 9px;border:1px solid rgba(114,246,224,.52);border-radius:8px;
  background:rgba(0,82,103,.52);box-shadow:inset 3px 0 0 #5ce8d3;color:#f2fffb;font-size:clamp(10.5px,1.05vw,12.5px);line-height:1.4;
}
.event-hero .hero-sub{margin:0;max-width:54ch;color:#eafff9!important;font-size:clamp(12px,1.12vw,14px);line-height:1.5}
.event-hero-actions{position:relative;display:grid;gap:12px;min-width:0}
.event-hero-actions::after{
  content:"";position:absolute;right:-34px;bottom:-17px;width:58px;height:15px;border:2px solid rgba(255,255,255,.74);border-radius:55% 45% 52% 48%;pointer-events:none;
  background:repeating-linear-gradient(90deg,#ff6f52 0 12px,#fff3b5 12px 20px,#43dccc 20px 32px);box-shadow:3px 4px 0 rgba(0,53,69,.3);transform:rotate(-12deg);
}
.event-hero .event-countdown{
  width:100%;margin:0;padding:13px 12px 15px;border:1px solid rgba(255,240,170,.62);border-radius:13px;
  background:linear-gradient(145deg,rgba(0,44,70,.74),rgba(0,91,107,.58));
  box-shadow:inset 0 0 0 1px rgba(137,255,235,.1),0 4px 0 rgba(0,45,62,.42);text-align:center;
}
.event-hero .event-countdown>.event-countdown-label{margin-bottom:11px;color:#fff1a5;font-size:11px;letter-spacing:.13em}
.event-hero .event-countdown-units{gap:8px}
.event-hero .event-countdown-units .event-time-unit{
  position:relative;overflow:hidden;padding:9px 3px 8px;border:2px solid rgba(125,246,225,.42);border-radius:10px;
  background:linear-gradient(180deg,rgba(23,179,183,.34),rgba(0,76,100,.56));box-shadow:0 4px 0 rgba(0,39,58,.5),inset 0 1px 0 rgba(255,255,255,.22);
}
.event-hero .event-countdown-units .event-time-unit::before{
  content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#ffe37c,#66f0d4,#ffe37c);opacity:.75;
}
.event-hero .event-countdown-units .event-time-unit strong{color:#fff8c9;font-size:clamp(24px,2.7vw,35px);text-shadow:0 2px 0 rgba(0,50,68,.56)}
.event-hero .event-countdown-units .event-time-unit small{margin-top:6px;color:#d7fff6;font-size:8.5px;letter-spacing:.055em}
.event-hero .hero-cta{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%;margin:0}
.event-hero .hero-cta .btn{width:100%;min-width:0;min-height:46px;padding:10px 11px;font-size:12px;border-radius:10px}

@keyframes eventWaterShimmer{
  from{background-position:0 0}
  to{background-position:110px 12px}
}

@media (min-width:701px) and (max-width:1050px){
  .event-hero .event-hero-content{top:22px;left:22px;width:min(510px,calc(100% - 44px));padding:18px;gap:12px}
  .event-hero .event-hero-content h1{font-size:36px}
  .event-hero .event-countdown{padding:10px}
  .event-hero .event-countdown-units .event-time-unit{padding-block:7px}
}

@media (max-width:700px){
  .event-hero{
    display:flex;flex-direction:column;height:auto;min-height:0;margin-top:12px;padding:0;background:#079de0;
  }
  .event-hero .event-hero-content{
    position:relative;order:1;top:auto;left:auto;right:auto;bottom:auto;transform:none;
    width:100%;padding:15px 12px 14px;grid-template-columns:1fr;gap:13px;border:0;border-bottom:3px solid rgba(255,231,135,.72);border-radius:0;
    background:linear-gradient(145deg,#075f86,#078fa6);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-align:center;
  }
  .event-hero .event-hero-content::before{inset-inline:12px}
  .event-hero-copy{justify-items:center;gap:7px;padding-right:0}
  .event-hero-copy::after,.event-hero-actions::after{display:none}
  .event-hero .event-hero-content h1{max-width:100%;font-size:clamp(26px,8.8vw,38px);line-height:1.04;overflow-wrap:anywhere}
  .event-hero .event-until{font-size:12px}
  .event-hero .hero-badge{justify-content:center;max-width:100%;font-size:10.5px}
  .event-hero .hero-sub{font-size:12px;line-height:1.4}
  .event-hero-actions{width:min(470px,100%);margin-inline:auto;gap:9px}
  .event-hero .event-countdown{padding:9px 8px}
  .event-hero .event-countdown-units .event-time-unit strong{font-size:clamp(20px,7vw,27px)}
  .event-hero .hero-cta .btn{min-height:43px;padding:8px 6px;font-size:11.5px}
  .event-hero .event-hero-art{
    position:relative;order:2;inset:auto;width:100%;height:auto;aspect-ratio:1672/941;background:#079de0;
  }
  .event-hero .event-hero-art::after,.event-hero .event-hero-art::before{display:none}
  .event-hero .event-hero-art img{width:100%;height:100%;object-fit:contain;object-position:center}
}

@media (max-width:360px){
  .event-hero .event-hero-content{padding-inline:9px}
  .event-hero .event-hero-content h1{font-size:25px}
  .event-hero .event-countdown-units{gap:4px}
  .event-hero .event-countdown-units .event-time-unit{padding-inline:1px}
  .event-hero .event-countdown-units .event-time-unit small{font-size:7.5px;letter-spacing:0}
  .event-hero .hero-cta{grid-template-columns:1fr}
}

/* ============================================================
   PERFIL SUMMER · dashboard privado, compacto y responsive
   ============================================================ */
.auth-overlay.is-profile-dashboard{align-items:flex-start;overflow-y:auto;padding-block:clamp(10px,3vh,28px)}
.auth-overlay.is-profile-dashboard .auth-box{max-width:920px;width:min(920px,calc(100vw - 28px));max-height:none;overflow:visible;padding:25px;border-color:rgba(105,238,218,.46);background:linear-gradient(155deg,rgba(3,65,91,.98),rgba(2,42,68,.98));box-shadow:0 22px 70px rgba(0,39,63,.52),inset 0 1px 0 rgba(255,255,255,.12)}
.profile-dashboard{display:grid;gap:16px;color:#f5fffb}
.profile-dashboard-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding:17px;border:1px solid rgba(111,238,218,.34);border-radius:17px;background:linear-gradient(135deg,rgba(15,158,165,.22),rgba(255,207,91,.09));box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
.profile-identity{display:flex;align-items:center;gap:15px;min-width:0}
.profile-avatar-wrap{position:relative;flex:0 0 auto}
.profile-avatar-wrap .auth-avatar-lg{width:76px;height:76px;border:3px solid #64ead6;box-shadow:0 0 0 4px rgba(255,218,102,.16),0 8px 22px rgba(0,37,62,.35)}
.profile-presence{position:absolute;right:2px;bottom:3px;width:17px;height:17px;border:3px solid #064c67;border-radius:50%;background:#7a8b98}
.profile-presence.is-online{background:#47e688;box-shadow:0 0 0 3px rgba(71,230,136,.18)}
.profile-name-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.profile-name-row .auth-role{margin:0;color:#063c51;background:#ffe27a;border-color:#fff0ad;text-transform:none}
.profile-dashboard .auth-profile-meta{min-width:0}
.profile-dashboard .auth-profile-meta h3{margin:0;color:#fff6bd;font-size:clamp(19px,2.4vw,25px);text-align:left;overflow-wrap:anywhere}
.profile-dashboard .auth-username{margin-top:2px;color:#89eee0;font-weight:700}
.profile-dashboard .auth-bio{margin:5px 0 0;color:#e0fff8;font-size:13px;line-height:1.45}
.profile-edit-btn{align-self:start;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:41px;padding:9px 13px;font-size:12px}
.profile-private-row{grid-column:1/-1;display:flex;align-items:center;gap:10px;min-width:0;padding-top:11px;border-top:1px solid rgba(153,242,225,.16)}
.profile-private-label{display:inline-flex;align-items:center;gap:6px;color:#a9d9d5;font-size:11px;font-weight:700;white-space:nowrap}
.profile-private-label svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.profile-dashboard .auth-email{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;color:#f3fffb;font-size:12px;white-space:nowrap}
.profile-dashboard .auth-toggle{margin:0 0 0 auto;flex:0 0 auto}
.profile-dashboard .auth-toggle-lbl{color:#d7fff7;font-size:12px}
.profile-section{padding:13px;border:1px solid rgba(117,231,215,.24);border-radius:15px;background:rgba(3,50,75,.58)}
.profile-section-title{margin:0 0 10px;color:#ffe58b;font-size:11px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase}
.profile-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.profile-stat{display:grid;place-items:center;gap:3px;min-width:0;min-height:73px;padding:9px 5px;border:1px solid rgba(112,233,216,.27);border-radius:12px;background:linear-gradient(145deg,rgba(20,167,172,.18),rgba(0,77,102,.38));color:#eefefa;font-family:inherit;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.profile-stat:hover{transform:translateY(-2px);border-color:#63e7d3;background:rgba(23,169,170,.25)}
.profile-stat strong{color:#fff4af;font-size:25px;line-height:1}
.profile-stat span{max-width:100%;overflow:hidden;text-overflow:ellipsis;color:#c9f7ef;font-size:10px;white-space:nowrap}
.profile-summary-status{min-height:0;margin:7px 2px 0;color:#b9e2de;font-size:10.5px}
.profile-summary-status:empty{display:none}
.profile-sections-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.profile-account-section{grid-column:1/-1}
.profile-action-list{display:grid;gap:7px}
.profile-account-actions{grid-template-columns:1fr 1fr}
.profile-action{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:52px;padding:8px 10px;border:1px solid rgba(122,232,216,.18);border-radius:11px;background:rgba(4,76,99,.34);color:#f1fffb;text-align:left;font-family:inherit;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.profile-action:hover{transform:translateY(-1px);border-color:rgba(111,239,219,.55);background:rgba(14,131,142,.28)}
.profile-action .profile-menu-icon,.profile-edit-btn .profile-menu-icon,.auth-view-title .profile-menu-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.profile-action>.profile-menu-icon{width:30px;height:30px;padding:6px;border-radius:9px;background:rgba(80,228,207,.12);color:#78edda}
.profile-action>span{display:grid;gap:2px;min-width:0}
.profile-action strong{overflow:hidden;text-overflow:ellipsis;color:#f5fffb;font-size:11.5px;line-height:1.35;white-space:nowrap}
.profile-action small{overflow:hidden;text-overflow:ellipsis;color:#a9d5d2;font-size:9.5px;line-height:1.35;white-space:nowrap}
.profile-action>i{color:#ffe07c;font-size:20px;font-style:normal}
.profile-action>em{min-width:22px;padding:3px 6px;border-radius:999px;background:#ff5c5c;color:#fff;font-size:9px;font-style:normal;text-align:center}
.profile-logout-action>.profile-menu-icon{color:#ffcd74}.profile-logout-all-action>.profile-menu-icon,.profile-danger-action>.profile-menu-icon{color:#ff918e}
.profile-logout-all-action,.profile-danger-action{border-color:rgba(255,116,112,.21)}
.profile-detail-view{min-height:220px}
.profile-detail-note{margin:0 0 12px;color:var(--text-dim);font-size:11.5px;line-height:1.5}
.profile-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.profile-mini-stats>span{display:grid;place-items:center;gap:4px;padding:10px 5px;border:1px solid rgba(109,230,213,.24);border-radius:11px;background:rgba(5,102,121,.25)}
.profile-mini-stats strong{color:#ffe37c;font-size:20px}.profile-mini-stats small{color:#c5e9e5;font-size:9px;text-align:center}
.profile-data-list{display:grid;gap:9px;max-height:48vh;margin:5px 0 14px;overflow-y:auto}
.profile-data-row{display:grid;gap:5px;padding:11px;border:1px solid rgba(124,228,213,.2);border-radius:11px;background:rgba(3,68,91,.38)}
.profile-data-row-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.profile-data-row strong{color:#f5fffb;font-size:12px}.profile-data-row p{margin:0;color:#c6e7e3;font-size:10.5px;line-height:1.45}.profile-data-row small{color:#9dc9c6;font-size:9.5px}.profile-data-badges{display:flex;flex-wrap:wrap;gap:5px}.profile-data-badge{padding:3px 7px;border-radius:999px;background:rgba(75,225,200,.12);border:1px solid rgba(96,233,211,.3);color:#bdfbf0;font-size:8.5px;font-weight:700}.profile-data-badge.is-warn{color:#ffe39a;border-color:rgba(255,210,91,.35);background:rgba(255,196,52,.1)}.profile-data-badge.is-good{color:#9ff1bd;border-color:rgba(71,226,131,.35);background:rgba(71,226,131,.1)}
.profile-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.profile-search-row .auth-input{margin:0}.profile-search-row .btn{min-height:44px}
.profile-field-status{min-height:18px;margin:7px 0 10px;color:#badeda;font-size:10.5px;line-height:1.4}.profile-field-status.is-error{color:#ff9996}.profile-field-status.is-success{color:#8ff0b5}
.profile-support-form{display:grid;gap:8px;margin:9px 0}.profile-support-form label{display:grid;gap:5px;color:#ccece7;font-size:10.5px}.profile-support-form .auth-input{margin:0}
.profile-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.profile-subtitle{margin:15px 0 8px;color:#ffe28a;font-size:12px}
.profile-security-block{margin-top:14px;padding-top:1px;border-top:1px solid rgba(128,231,217,.18)}
.profile-session-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;border:1px solid rgba(107,230,213,.24);border-radius:11px;background:rgba(5,87,108,.28)}
.profile-session-dot{width:10px;height:10px;border-radius:50%;background:#42e482;box-shadow:0 0 0 3px rgba(66,228,130,.14)}
.profile-session-card>div{display:grid;gap:2px;min-width:0}.profile-session-card strong{font-size:11.5px}.profile-session-card small{overflow:hidden;text-overflow:ellipsis;color:#a9d7d2;font-size:9.5px;white-space:nowrap}.profile-session-card .btn{min-height:36px;padding:7px 9px;font-size:9.5px}
.profile-privacy-actions{display:grid;gap:8px;margin-bottom:11px}

@media(max-width:700px){
  .auth-overlay.is-profile-dashboard{padding:0;align-items:stretch;background:#023d5b;backdrop-filter:none;-webkit-backdrop-filter:none}
  .auth-overlay.is-profile-dashboard .auth-box{width:100%;min-height:100dvh;max-width:none;margin:0;padding:18px 12px 24px;border:0;border-radius:0;box-shadow:none}
  .auth-overlay.is-profile-dashboard .auth-close{position:fixed;z-index:2;top:10px;right:10px;background:rgba(0,48,70,.76)}
  .profile-dashboard-head{grid-template-columns:1fr;padding:13px;gap:11px}
  .profile-identity{padding-right:37px}.profile-avatar-wrap .auth-avatar-lg{width:64px;height:64px}
  .profile-edit-btn{width:100%}.profile-private-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px}.profile-private-label{grid-column:1/-1}.profile-dashboard .auth-toggle{grid-column:2;margin:0}.profile-dashboard .auth-email{grid-column:1}
  .profile-sections-grid{grid-template-columns:1fr}.profile-account-section{grid-column:auto}.profile-account-actions{grid-template-columns:1fr}
}
@media(max-width:430px){
  .profile-dashboard{gap:11px}.profile-section{padding:10px}.profile-summary-grid{gap:5px}.profile-stat{min-height:65px;padding-inline:2px}.profile-stat strong{font-size:21px}.profile-stat span{font-size:8.5px}
  .profile-action{grid-template-columns:28px minmax(0,1fr) auto;min-height:49px;padding:7px}.profile-action>.profile-menu-icon{width:28px;height:28px;padding:5px}.profile-action strong{font-size:10.5px}.profile-action small{font-size:8.7px}
  .profile-session-card{grid-template-columns:auto minmax(0,1fr)}.profile-session-card .btn{grid-column:1/-1;width:100%}
}
@media(max-width:340px){.profile-identity{align-items:flex-start}.profile-avatar-wrap .auth-avatar-lg{width:55px;height:55px}.profile-name-row{gap:5px}.profile-dashboard .auth-profile-meta h3{font-size:18px}.profile-private-row{grid-template-columns:1fr}.profile-dashboard .auth-toggle{grid-column:1;margin:0}.profile-summary-grid{grid-template-columns:1fr 1fr}.profile-stat span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.auth-box,.profile-stat,.profile-action{animation:none!important;transition:none!important}.profile-stat:hover,.profile-action:hover{transform:none}}

@media (prefers-reduced-motion:reduce){
  .event-hero .event-hero-art img,.event-hero .event-hero-art::before{animation:none!important;transform:none!important}
  .event-hero .event-hero-art::before{opacity:.08}
}

/* ============================================================
   FOOTER DE CONFIANZA · orden móvil, tema Lucide y FAB seguro
   Esta capa final consolida reglas históricas del footer sin tocar sus IDs.
   ============================================================ */
.footer-inner{
  grid-template-columns:minmax(210px,1.45fr) repeat(5,minmax(112px,1fr));
  gap:28px 20px;
}
.footer-brand{gap:9px}
.footer-brand-title{margin:0;color:#fff0aa;font-size:16px;line-height:1.2;letter-spacing:.08em}
.footer-brand .footer-payments{max-width:290px;color:#fff0aa;font-size:12.5px;font-weight:700;line-height:1.5}
.footer-link-button{
  display:block;width:max-content;max-width:100%;margin:0;padding:0;border:0;background:none;
  color:var(--text-dim);font:inherit;font-size:14px;line-height:1.45;text-align:left;cursor:pointer;
  transition:color .15s ease;
}
.footer-link-button:hover,.footer-link-button:focus-visible{color:var(--blue)}
.footer-link-button:focus-visible,.footer-col a:focus-visible,.social-link:focus-visible{
  outline:2px solid #fff0aa;outline-offset:3px;border-radius:4px;
}
.footer-col-support a.fs-line{text-decoration:none}
.footer-legal{
  max-width:1160px;margin:18px auto 0;padding:0 22px;color:#aad6d5;font-size:11px;line-height:1.55;text-align:center;
}
.footer-bottom{margin-top:14px}
.footer-theme{min-width:44px;width:44px;min-height:44px;height:44px;color:var(--text)}
.footer-theme .tt-sun,.footer-theme .tt-moon{width:20px;height:20px;line-height:0}
.footer-theme svg{display:block;width:20px;height:20px}
.help-fab{
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),opacity .2s ease,visibility .2s ease;
}

@media (max-width:1000px){
  .footer-inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 22px}
  .footer-brand{grid-column:1/-1}
}
@media (max-width:700px){
  .footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .footer{
    margin-top:40px;padding-top:32px;padding-bottom:26px;
  }
  .footer-inner{
    grid-template-columns:minmax(0,1fr);gap:20px;padding:0 18px 22px;text-align:left;
  }
  .footer-brand{grid-column:auto;align-items:flex-start;gap:8px}
  .footer-brand .logo-img-footer{width:108px}
  .footer-col{gap:9px}
  .footer-col h4{margin-bottom:2px}
  .footer-legal{margin-top:16px;padding:0 20px;font-size:10.5px}

  /* Orden: copyright → idioma/moneda → Puerto Rico → tema. */
  .footer-bottom{
    flex-direction:column;align-items:center;justify-content:center;gap:14px;
    margin-top:14px;padding:18px 18px 0;text-align:center;
  }
  .footer-bottom .footer-copy{width:100%;font-size:11.5px;line-height:1.5;text-align:center}
  .footer-bottom-meta{
    width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;
  }
  .footer-bottom-meta .footer-lang-btn{
    width:auto;max-width:190px;min-width:0;min-height:44px;padding:8px 14px;justify-content:center;white-space:nowrap;
  }
  .fb-country{min-height:24px;justify-content:center;white-space:nowrap}
  .footer-theme{flex:0 0 44px}

  /* Barra inferior reservada por el padding del body; el FAB vive encima y
     desaparece al entrar el footer mediante IntersectionObserver. */
  .help-fab{
    right:12px!important;bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
    width:46px;height:46px;padding:0;z-index:150;
  }
  .help-fab.is-near-footer{
    opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px) scale(.9);
  }
}

@media (max-width:340px){
  .footer-inner{padding-inline:15px}
  .footer-bottom{padding-inline:15px}
  .footer-bottom-meta .footer-lang-btn{font-size:12.5px;padding-inline:12px}
}

@media (prefers-reduced-motion:reduce){
  .help-fab{transition:none!important}
}
/* ============================================================
   PASAPORTE DE VERANO · progreso verificable y liviano
   ============================================================ */
.summer-passport{position:relative;isolation:isolate}
.summer-passport::before{content:"";position:absolute;inset:5% 0 auto;height:70%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 16% 20%,rgba(33,221,255,.2),transparent 32%),radial-gradient(circle at 84% 70%,rgba(255,205,70,.16),transparent 34%);filter:blur(16px)}
.passport-shell{max-width:1180px;margin:auto;padding:clamp(18px,3vw,34px);border:1px solid rgba(70,223,255,.4);border-radius:28px;background:linear-gradient(145deg,rgba(4,38,61,.94),rgba(5,82,100,.88));box-shadow:0 22px 60px rgba(0,33,55,.35),inset 0 1px rgba(255,255,255,.14);overflow:hidden}
.passport-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.passport-head h2{margin:5px 0 7px;font-size:clamp(28px,4vw,48px);line-height:1;color:#fff;text-shadow:0 3px 0 #075d79}
.passport-head p{max-width:730px;margin:0;color:#c9f6ff;line-height:1.65}
.passport-kicker,.passport-label{display:inline-block;color:#6be9ff;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.passport-account{position:relative;min-width:190px;display:grid;gap:5px;padding:14px 16px;border-radius:16px;background:rgba(0,18,35,.52);border:1px solid rgba(117,232,255,.3);overflow:hidden}
.passport-account::after{content:"";position:absolute;inset:auto 0 0;height:3px;width:var(--level-progress,0);background:linear-gradient(90deg,#25d7ff,#ffd34e);transition:width .7s ease}
.passport-account strong{color:#fff;font-size:18px}.passport-account>span:last-child{color:#ffd45a;font-weight:700}
.passport-level{justify-self:start;padding:3px 8px;border-radius:999px;background:#0faec3;color:#fff!important;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.community-progress-card{padding:18px;border:1px solid rgba(106,232,255,.28);border-radius:18px;background:linear-gradient(110deg,rgba(4,25,46,.64),rgba(8,121,133,.35));margin-bottom:20px}
.community-progress-copy{display:flex;align-items:end;justify-content:space-between;gap:18px}.community-progress-copy h3{margin:3px 0 0;color:#fff;font-size:clamp(17px,2.3vw,23px)}
.community-progress-copy>strong{font-size:clamp(26px,4vw,40px);color:#ffd75a;line-height:1}.community-progress-card>p{margin:9px 0 0;color:#bfeef5;font-size:13px}
.passport-progress,.mission-progress{height:9px;border-radius:999px;background:rgba(0,9,25,.58);overflow:hidden;margin-top:14px}
.passport-progress>span,.mission-progress>span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#25d6ff,#3ce6a8,#ffd34e);box-shadow:0 0 16px rgba(50,220,255,.5);transition:width .7s cubic-bezier(.2,.8,.2,1)}
.passport-guest{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border-radius:18px;background:rgba(255,255,255,.07);border:1px dashed rgba(255,255,255,.25)}
.passport-guest h3,.passport-panel h3,.treasure-card h3{margin:0 0 6px;color:#fff}.passport-guest p{margin:0;color:#bfe8ee}
.passport-top-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);gap:18px}
.passport-panel,.treasure-card{border-radius:20px;border:1px solid rgba(115,234,255,.25);background:rgba(0,22,41,.58);padding:18px}
.passport-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.passport-panel-head>span{padding:5px 9px;border-radius:999px;background:rgba(52,218,255,.13);color:#a9efff;font-size:12px;font-weight:700}
.mission-list{display:grid;gap:10px}.mission-row{display:grid;grid-template-columns:32px 1fr;gap:11px;padding:12px;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}
.mission-row.is-complete{border-color:rgba(63,230,168,.42);background:rgba(21,133,102,.14)}.mission-check{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:rgba(30,199,236,.12);border:1px solid rgba(79,223,255,.26);color:#5ff1b8;font-weight:900}
.mission-copy>div{display:flex;justify-content:space-between;gap:10px}.mission-copy strong{color:#fff}.mission-copy>div>span{color:#ffd45a;font-size:11px;font-weight:700;white-space:nowrap}.mission-copy p{margin:4px 0;color:#addbe3;font-size:12.5px;line-height:1.45}.mission-copy small{display:block;margin-top:5px;color:#78bfc9;font-size:11px}.mission-progress{height:6px;margin-top:8px}
.treasure-card{position:relative;overflow:hidden;background:linear-gradient(155deg,rgba(11,81,100,.8),rgba(3,29,51,.92));text-align:center}.treasure-card>*{position:relative}.treasure-rays{position:absolute;inset:-30%;pointer-events:none;background:repeating-conic-gradient(from 0deg,rgba(255,218,76,.11) 0 10deg,transparent 10deg 25deg);animation:treasureSpin 16s linear infinite}.treasure-card h3{font-size:27px;margin:9px 0}.treasure-card>p{color:#c6edf2;line-height:1.55}.treasure-timer{min-height:46px;display:grid;place-items:center;margin:16px 0 12px;border-radius:12px;background:rgba(0,12,29,.5);border:1px solid rgba(255,218,90,.28);color:#ffd75a;font-weight:800}.treasure-note{font-size:10.5px!important;color:#8dbec7!important;margin:12px 0 0!important}
.collectibles-panel{margin-top:18px}.collectible-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}.collectible-card{position:relative;min-width:0;padding:13px 10px;border-radius:15px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);text-align:center;transition:transform .2s ease,border-color .2s ease}.collectible-card.is-unlocked:hover{transform:translateY(-3px);border-color:rgba(255,215,79,.5)}.collectible-card.is-locked{filter:saturate(.3);opacity:.62}.collectible-icon{width:48px;height:48px;display:grid;place-items:center;margin:0 auto 8px;border-radius:14px;background:linear-gradient(145deg,rgba(52,220,255,.19),rgba(255,204,75,.12));color:#8deaff}.collectible-icon svg{width:29px;height:29px}.collectible-card.is-unlocked .collectible-icon{color:#ffd35a;box-shadow:0 0 24px rgba(255,211,90,.15)}.collectible-card h4{margin:7px 0 5px;color:#fff;font-size:13px;line-height:1.25}.collectible-card p{margin:0;color:#9bcbd3;font-size:10.5px;line-height:1.4}.collectible-card small{display:block;margin-top:8px;color:#64e4b1;font-size:10px;font-weight:800;text-transform:uppercase}.collectible-card.is-locked small{color:#9aaeb4}.collectible-rarity{font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#96dbe6}.rarity-epic{color:#bd91ff}.rarity-legendary{color:#ffd054}.rarity-rare{color:#65dcff}
.passport-disclaimer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:12px 15px;border-radius:14px;background:rgba(0,16,32,.45);color:#9ecad2;font-size:11.5px}.passport-disclaimer p{margin:0;max-width:780px}.passport-disclaimer label{display:flex;align-items:center;gap:7px;white-space:nowrap;color:#c8edf2}.passport-disclaimer input{accent-color:#16bfd0}
.passport-empty{grid-column:1/-1;margin:0;padding:18px;text-align:center;color:#9acbd3}.passport-confetti{position:fixed;inset:0;z-index:9999;pointer-events:none;overflow:hidden}.passport-confetti i{position:absolute;left:var(--x);top:-15px;width:8px;height:14px;border-radius:2px;background:hsl(calc(var(--h)*70 + 35) 90% 58%);animation:passportFall 1.6s var(--d) ease-in forwards}
@keyframes treasureSpin{to{transform:rotate(360deg)}}@keyframes passportFall{to{transform:translate3d(20px,105vh,0) rotate(560deg);opacity:.2}}
@media(max-width:850px){.passport-top-grid{grid-template-columns:1fr}.collectible-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.passport-head{align-items:stretch}.passport-account{min-width:165px}.passport-disclaimer{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.summer-passport{padding-left:12px!important;padding-right:12px!important}.passport-shell{padding:16px;border-radius:21px}.passport-head{display:grid;gap:14px}.passport-account{grid-template-columns:auto 1fr;align-items:center}.passport-account>span:last-child{grid-column:1/-1}.community-progress-copy{align-items:flex-start}.community-progress-copy>strong{font-size:28px}.passport-guest{align-items:stretch;flex-direction:column}.passport-guest .btn{width:100%}.collectible-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-copy>div{align-items:flex-start;flex-direction:column;gap:3px}.passport-panel,.treasure-card{padding:14px}.passport-disclaimer label{white-space:normal}.passport-head h2{font-size:30px}}
@media(max-width:340px){.collectible-grid{grid-template-columns:1fr}.passport-shell{padding:13px}.mission-row{grid-template-columns:27px 1fr;padding:10px}.mission-check{width:26px;height:26px}}
@media(prefers-reduced-motion:reduce){.treasure-rays,.passport-confetti{display:none!important}.passport-progress>span,.mission-progress>span,.passport-account::after,.collectible-card{transition:none!important;animation:none!important}}

/* ===== Presentación oficial Summer: video diferido y sin autoplay ===== */
.summer-video-showcase{padding-top:clamp(42px,6vw,80px);padding-bottom:clamp(42px,6vw,80px)}
.summer-video-shell{position:relative;display:grid;grid-template-columns:minmax(250px,.82fr) minmax(0,1.35fr);gap:clamp(18px,4vw,48px);align-items:center;max-width:1180px;margin:auto;padding:clamp(18px,3.4vw,42px);overflow:hidden;border:1px solid rgba(116,241,226,.42);border-radius:28px;background:linear-gradient(145deg,rgba(2,74,101,.96),rgba(3,42,75,.94));box-shadow:0 24px 65px rgba(1,44,73,.32),inset 0 1px 0 rgba(255,255,255,.12)}
.summer-video-shell:before{content:"";position:absolute;inset:auto -8% -58% 25%;height:82%;border-radius:50%;background:radial-gradient(ellipse,rgba(34,228,213,.25),transparent 68%);pointer-events:none}.summer-video-copy{position:relative;z-index:1;display:grid;gap:11px;align-content:center}.summer-video-copy h2{margin:0;color:#fff4a8;font-size:clamp(30px,4vw,54px);line-height:.94;text-shadow:3px 4px 0 rgba(0,57,87,.64)}.summer-video-copy>strong{color:#fff;font-size:clamp(18px,2.2vw,28px);line-height:1.1}.summer-video-copy>p{margin:0;color:#bdf9ef;font-size:clamp(14px,1.5vw,18px)}
.summer-video-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.summer-video-actions .btn{min-width:145px}.summer-event-video-frame{position:relative;z-index:1;aspect-ratio:16/9;min-width:0;overflow:hidden;border:2px solid rgba(144,255,239,.58);border-radius:21px;background:#031c2b;box-shadow:0 16px 42px rgba(0,23,41,.4)}.summer-event-video-frame video{display:block;width:100%;height:100%;object-fit:contain;background:#031c2b}.summer-event-video-play{position:absolute;inset:50% auto auto 50%;display:flex;align-items:center;gap:9px;min-height:50px;padding:0 18px;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(0,56,82,.88);color:#fff;font:700 14px/1 'Pixelify Sans',system-ui,sans-serif;box-shadow:0 9px 30px rgba(0,0,0,.32);cursor:pointer;transition:transform .2s ease,opacity .2s ease,background .2s ease}.summer-event-video-play:hover{transform:translate(-50%,-50%) scale(1.04);background:rgba(0,118,134,.94)}.summer-event-video-play svg{width:22px;height:22px}.summer-event-video-frame.is-playing .summer-event-video-play{top:16px;left:16px;min-height:42px;padding:0 13px;transform:none;opacity:.18}.summer-event-video-frame.is-playing:hover .summer-event-video-play,.summer-event-video-frame.is-playing .summer-event-video-play:focus-visible{opacity:1;transform:none}.summer-event-video-muted{position:absolute;right:11px;bottom:48px;padding:5px 9px;border-radius:999px;background:rgba(0,31,49,.75);color:#d8fffa;font-size:10px;pointer-events:none}.summer-event-video-frame.is-playing .summer-event-video-muted{opacity:0}

/* ===== Centro de soporte privado ===== */
.support-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.support-choice{display:flex;align-items:center;gap:10px;min-height:66px;padding:11px;border:1px solid rgba(110,230,216,.24);border-radius:13px;background:rgba(5,78,100,.32);color:#d9fff8;text-align:left;font-family:inherit;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.support-choice:hover,.support-choice.is-active{border-color:rgba(97,242,221,.67);background:rgba(10,132,139,.28);transform:translateY(-1px)}.support-choice svg{width:24px;height:24px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.support-choice span{display:grid;gap:2px}.support-choice strong{font-size:11.5px}.support-choice small{color:#99cbc6;font-size:9px}
.support-order-lookup{display:grid;gap:7px;padding:12px;border:1px solid rgba(110,230,216,.18);border-radius:14px;background:rgba(2,50,76,.28)}.support-order-card{display:grid;gap:9px;margin-top:3px;padding:12px;border:1px solid rgba(255,213,74,.38);border-radius:13px;background:linear-gradient(135deg,rgba(255,200,56,.1),rgba(10,128,146,.13))}.support-order-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.support-order-card-head strong{color:#fff5ad;font-size:13px}.support-order-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.support-order-card-grid span{display:grid;gap:2px;padding:7px;border-radius:8px;background:rgba(0,40,62,.31)}.support-order-card-grid small{color:#8fc7c2;font-size:8px;text-transform:uppercase;letter-spacing:.05em}.support-order-card-grid b{color:#effffa;font-size:10px}
.support-ticket-form{padding:12px;border:1px solid rgba(110,230,216,.2);border-radius:14px;background:rgba(2,50,76,.28)}.support-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.support-file-label small{color:#91beba;font-size:8.5px}.support-file-label input[type=file]{padding:8px;font-size:9px}.support-file-label input[type=file]::file-selector-button{margin-right:8px;padding:6px 9px;border:0;border-radius:7px;background:#0d8793;color:#fff;font:700 9px/1 'Pixelify Sans',system-ui,sans-serif}
.support-ticket-list{max-height:250px}.support-ticket-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:11px;border:1px solid rgba(124,228,213,.2);border-radius:11px;background:rgba(3,68,91,.38);color:inherit;text-align:left;font-family:inherit;cursor:pointer}.support-ticket-row:hover{border-color:rgba(97,242,221,.55)}.support-ticket-row-main{display:grid;gap:3px;min-width:0}.support-ticket-row-main strong{overflow:hidden;color:#f5fffb;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.support-ticket-row-main small{color:#9dc9c6;font-size:8.8px}.support-ticket-row-side{display:grid;justify-items:end;gap:5px}.support-ticket-status{display:inline-flex;padding:3px 7px;border:1px solid rgba(255,208,83,.4);border-radius:999px;background:rgba(255,195,44,.1);color:#ffe89f;font-size:8px;font-weight:700}.support-ticket-status.is-resolved,.support-ticket-status.is-closed{border-color:rgba(80,230,146,.4);background:rgba(56,205,124,.1);color:#a5f4c8}.support-ticket-unread{min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#ff525e;color:#fff;font-size:8px;line-height:19px;text-align:center}
.support-conversation{display:grid;grid-template-rows:auto auto minmax(190px,1fr) auto auto;min-height:min(590px,72dvh);max-height:72dvh;margin-top:10px;overflow:hidden;border:1px solid rgba(112,235,219,.3);border-radius:16px;background:rgba(0,38,60,.5)}.support-chat-head{display:flex;align-items:center;gap:10px;padding:11px;border-bottom:1px solid rgba(111,222,211,.2);background:rgba(3,78,96,.46)}.support-chat-back{width:36px;height:36px;border:1px solid rgba(134,238,225,.3);border-radius:10px;background:rgba(0,37,59,.4);color:#fff;cursor:pointer}.support-chat-head>div{display:grid;gap:2px;min-width:0}.support-chat-head strong{color:#fff;font-size:12px}.support-chat-head small{overflow:hidden;max-width:360px;color:#9ecac7;font-size:8.8px;text-overflow:ellipsis;white-space:nowrap}.support-presence{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:#a9d4cf;font-size:8.5px}.support-presence i{width:7px;height:7px;border-radius:50%;background:#7c9192}.support-presence.is-online{color:#a5f4c8}.support-presence.is-online i{background:#37d47e;box-shadow:0 0 0 4px rgba(55,212,126,.12)}
.support-resolution{display:grid;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(255,210,76,.26);background:rgba(255,198,44,.1);color:#fff1ad;font-size:10px}.support-resolution>div{display:flex;flex-wrap:wrap;gap:7px}.support-resolution .btn{min-height:36px;padding:7px 10px;font-size:9px}.support-chat-messages{display:flex;flex-direction:column;gap:8px;min-height:190px;padding:12px;overflow-y:auto;overscroll-behavior:contain}.support-message{display:grid;gap:3px;align-self:flex-start;max-width:min(82%,560px);padding:9px 11px;border:1px solid rgba(121,220,210,.18);border-radius:13px 13px 13px 3px;background:rgba(8,80,101,.7)}.support-message.is-mine{align-self:flex-end;border-color:rgba(255,216,91,.25);border-radius:13px 13px 3px 13px;background:rgba(13,111,120,.72)}.support-message.is-system{align-self:center;max-width:94%;border-style:dashed;border-radius:999px;background:rgba(255,255,255,.05);text-align:center}.support-message p{margin:0;color:#ecfffb;font-size:10px;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.support-message small{color:#8fbfbc;font-size:7.8px}.support-message.is-mine small{text-align:right}.support-message-read{color:#77eac8}.support-attachment-link{display:flex;align-items:center;gap:7px;margin-top:3px;padding:7px;border:1px solid rgba(133,237,225,.25);border-radius:9px;background:rgba(1,41,61,.35);color:#c9fff5;font:700 9px/1.2 'Pixelify Sans',system-ui,sans-serif;cursor:pointer}.support-attachment-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.support-chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:end;padding:9px;border-top:1px solid rgba(111,222,211,.2);background:rgba(1,45,67,.78)}.support-chat-composer textarea{min-height:52px;max-height:120px;margin:0;resize:vertical}.support-attach-button{display:grid;place-items:center;gap:2px;min-width:54px;height:52px;padding:5px;border:1px solid rgba(125,229,217,.28);border-radius:10px;color:#c9f7f2;cursor:pointer}.support-attach-button input{position:absolute;width:1px;height:1px;opacity:0}.support-attach-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.support-attach-button span{font-size:7.5px}.support-chat-composer>.btn{height:52px}.support-chat-composer.is-locked{display:none}
.support-site-toast{position:fixed;z-index:1200;right:18px;bottom:calc(92px + env(safe-area-inset-bottom));max-width:min(360px,calc(100vw - 28px));padding:12px 15px;border:1px solid rgba(115,239,222,.55);border-radius:13px;background:#06495c;color:#effffa;font-size:11px;box-shadow:0 16px 42px rgba(0,22,38,.4);opacity:0;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.support-site-toast.is-visible{opacity:1;transform:none}
@media(max-width:760px){.summer-video-shell{grid-template-columns:1fr;padding:17px;border-radius:21px}.summer-video-copy{text-align:center}.summer-video-actions{justify-content:center}.summer-event-video-frame{border-radius:15px}.summer-event-video-muted{display:none}.support-conversation{max-height:none;min-height:calc(100dvh - 116px);border-radius:13px}.support-chat-messages{min-height:42dvh}.support-chat-composer{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));z-index:2;padding-bottom:calc(9px + env(safe-area-inset-bottom))}}
@media(max-width:520px){.support-choice-grid,.support-form-grid,.support-order-card-grid{grid-template-columns:1fr}.profile-search-row{align-items:stretch}.profile-search-row .btn{min-width:88px}.support-chat-head{align-items:flex-start}.support-presence{max-width:92px;text-align:right}.support-chat-composer{grid-template-columns:minmax(0,1fr) 48px}.support-chat-composer>.btn{grid-column:1/-1;width:100%;height:44px}.support-attach-button{min-width:48px}.support-message{max-width:90%}}
@media(max-width:340px){.summer-video-actions{display:grid}.summer-video-actions .btn{width:100%}.support-choice{padding:9px}.support-chat-head{gap:6px}.support-chat-back{width:34px;height:34px}.support-presence{font-size:7.5px}.support-resolution>div{display:grid}.support-resolution .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.summer-event-video-play,.support-choice{transition:none}.support-choice:hover{transform:none}}

/* ===== Adjuntos privados de soporte: preview, progreso y visor ===== */
.support-upload-preview{margin:8px 0}.support-upload-preview-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px;border:1px solid rgba(92,226,214,.34);border-radius:12px;background:rgba(2,58,75,.42)}.support-upload-preview-card>img{width:58px;height:58px;border-radius:9px;object-fit:cover;background:#052f41}.support-upload-file-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:9px;background:rgba(24,190,194,.14);color:#a7fff3;font-size:11px;font-weight:800}.support-upload-preview-copy{display:grid;gap:3px;min-width:0}.support-upload-preview-copy strong{overflow:hidden;color:#effffa;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.support-upload-preview-copy small{color:#91c8c3;font-size:8px}.support-upload-remove{min-height:36px;padding:6px 10px;border:1px solid rgba(255,116,125,.4);border-radius:8px;background:rgba(255,75,91,.08);color:#ff9ea5;font:700 9px/1 'Pixelify Sans',system-ui,sans-serif;cursor:pointer}.support-upload-progress{display:grid;grid-template-columns:minmax(100px,1fr) auto auto;gap:9px;align-items:center;margin:8px 0;padding:9px;border:1px solid rgba(87,220,212,.24);border-radius:10px;background:rgba(0,42,58,.55)}.support-upload-progress progress{width:100%;height:8px;accent-color:#39d9c5}.support-upload-progress span{color:#b7eae5;font-size:8.5px}.support-upload-progress button{min-height:34px;padding:5px 9px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:transparent;color:#e8fffb;font:700 8.5px/1 'Pixelify Sans',system-ui,sans-serif;cursor:pointer}.support-composer-preview,.support-composer-progress{grid-column:1/-1;width:100%;margin:0}.support-image-thumb{display:block;position:relative;width:min(240px,100%);margin-top:5px;padding:0;overflow:hidden;border:1px solid rgba(142,242,227,.3);border-radius:11px;background:rgba(0,32,49,.6);color:#d7fff8;cursor:zoom-in;text-align:left}.support-image-thumb img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.support-image-fallback{display:grid;place-items:center;min-height:92px;padding:12px;color:#a8ceca;font-size:9px;text-align:center}.support-file-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;align-items:center;margin-top:5px;padding:8px;border:1px solid rgba(133,237,225,.25);border-radius:9px;background:rgba(1,41,61,.35);color:#c9fff5;cursor:pointer;text-align:left}.support-file-card-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:rgba(58,208,194,.14);font-size:8px;font-weight:800}.support-file-card-copy{display:grid;gap:2px;min-width:0}.support-file-card-copy strong{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.support-file-card-copy small{color:#91c6c1;font-size:7.5px}.support-image-viewer{position:fixed;inset:0;z-index:100020;display:grid;place-items:center;padding:16px;background:rgba(0,13,23,.9);backdrop-filter:blur(7px)}.support-image-viewer-panel{position:relative;display:grid;gap:12px;justify-items:center;width:min(960px,96vw);max-height:94dvh;padding:16px;border:1px solid rgba(131,241,225,.36);border-radius:18px;background:#052c3d;box-shadow:0 24px 70px rgba(0,0,0,.48)}.support-image-viewer-panel>img{display:block;max-width:100%;max-height:76dvh;border-radius:12px;object-fit:contain;background:#001b28}.support-image-viewer-close{position:absolute;z-index:2;top:8px;right:8px;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:rgba(0,25,38,.85);color:#fff;font-size:26px;cursor:pointer}.support-image-loading{margin:38px 0;color:#b9e8e3;font-size:11px}.support-admin-msg .support-image-thumb{width:min(220px,100%)}.support-admin-msg .support-file-card{color:#c9fff5;font-size:9px}.support-admin-msg .support-image-fallback{font-size:8px}
@media(max-width:520px){.support-upload-preview-card{grid-template-columns:50px minmax(0,1fr)}.support-upload-preview-card>img,.support-upload-file-icon{width:50px;height:50px}.support-upload-remove{grid-column:1/-1;width:100%}.support-upload-progress{grid-template-columns:1fr auto}.support-upload-progress progress{grid-column:1/-1}.support-image-thumb{width:min(210px,100%)}.support-image-viewer-panel{padding:10px}.support-image-viewer-panel>img{max-height:72dvh}}

/* ===== Entrega y lectura real de mensajes ===== */
.support-message-read{display:inline-flex;align-items:center;margin-left:5px;vertical-align:middle}
.support-delivery{display:inline-grid;place-items:center;width:19px;height:14px;color:#86d8cb}
.support-delivery svg{width:18px;height:14px;overflow:visible;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}
.support-delivery.is-read{color:#58efc5}.support-delivery.is-sending{color:#a8c5c1}.support-delivery.is-failed{color:#ff7f89}
.support-message.is-failed,.support-admin-msg.is-failed{border-color:rgba(255,94,107,.58);background:rgba(124,24,38,.24)}
.support-message.is-failed p,.support-admin-msg.is-failed p{opacity:.82}
@media(prefers-reduced-motion:no-preference){.support-delivery.is-sending svg{animation:support-clock-pulse 1.4s ease-in-out infinite}}
@keyframes support-clock-pulse{50%{opacity:.48;transform:scale(.92)}}
