/* ============================================================
   PokéGalaxy — Cosmic Universe Design System
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600;700;900&family=Inter:wght@300;400;500;600;700&display=swap');

:root {
  --space-void:    #02040A;
  --space-deep:    #060B18;
  --space-mid:     #0A1128;
  --space-card:    #0E1835;
  --space-raised:  #15254A;
  --nebula-purple: #7C3AED;
  --nebula-blue:   #2563EB;
  --nebula-cyan:   #06B6D4;
  --nebula-pink:   #EC4899;
  --star-gold:     #F59E0B;
  --star-white:    #E2E8F0;
  --glow-gold:     rgba(245,158,11,.4);
  --glow-cyan:     rgba(6,182,212,.3);
  --glow-purple:   rgba(124,58,237,.3);
  --text:          #EEF2FF;
  --muted:         #475569;
  --muted2:        #94A3B8;
  --green:         #10B981;
  --red:           #EF4444;
  --orange:        #F97316;
  --border:        rgba(99,132,255,.1);
  --border2:       rgba(99,132,255,.2);
  --border3:       rgba(6,182,212,.4);
  --radius:        12px;
  --radius-lg:     20px;
  --radius-xl:     28px;
  --font-display:  'Orbitron', monospace;
  --font-body:     'Inter', sans-serif;
  --t:             .2s cubic-bezier(.4,0,.2,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--space-void);
  color:var(--text);
  font-family:var(--font-body);
  font-size:15px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  min-height:100vh;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{cursor:pointer;border:none;background:none;font:inherit}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:var(--space-void)}
::-webkit-scrollbar-thumb{background:var(--space-raised);border-radius:99px}

/* ── Stars canvas ── */
#starsCanvas{position:fixed;inset:0;z-index:0;pointer-events:none}
.topbar,main,footer,.cart-overlay,.cart-drawer,.modal-overlay,.mobile-menu{position:relative;z-index:1}

/* ── Nebula body bg ── */
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(ellipse 70% 45% at 15% 10%, rgba(124,58,237,.10) 0%,transparent 65%),
    radial-gradient(ellipse 55% 40% at 85% 85%, rgba(6,182,212,.08) 0%,transparent 65%),
    radial-gradient(ellipse 45% 35% at 55% 45%, rgba(236,72,153,.06) 0%,transparent 55%);
}

/* ============================================================ TICKER */
.ticker-wrap{
  width:100%;overflow:hidden;
  background:linear-gradient(90deg,rgba(124,58,237,.15),rgba(6,182,212,.1),rgba(124,58,237,.15));
  border-bottom:1px solid rgba(124,58,237,.25);
  border-top:1px solid rgba(124,58,237,.15);
  padding:7px 0;
  position:relative;z-index:1;
}
.ticker-track{
  display:inline-flex;align-items:center;
  white-space:nowrap;
  animation:tickerScroll 22s linear infinite;
}
.ticker-track:hover{animation-play-state:paused;}
.ticker-item{
  font-family:var(--font-display);
  font-size:.68rem;font-weight:700;letter-spacing:.06em;
  color:var(--star-white);
  padding:0 20px;
}
.ticker-sep{
  color:var(--nebula-cyan);
  font-size:.7rem;
  opacity:.7;
  flex-shrink:0;
}
@keyframes tickerScroll{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}

/* ============================================================ TOPBAR */
.topbar{
  position:fixed;top:0;left:0;right:0;z-index:200;
  background:rgba(2,4,10,.85);
  backdrop-filter:blur(24px);
  border-bottom:1px solid var(--border);
}
/* compensar o header fixo */
body{padding-top:60px;}
.topbar-inner{
  display:flex;align-items:center;gap:12px;
  padding:0 16px;height:60px;
  max-width:1260px;margin:0 auto;
  overflow:hidden;
}
/* Logo responsivo — garante que não sai fora da topbar */
.topbar-inner > a[aria-label="PokéGalaxy"]{
  max-width:calc(100% - 120px) !important;
  overflow:visible !important;
}
.brand-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.brand-logo img{height:30px;width:auto}
.brand-name{
  font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.08em;
  background:linear-gradient(135deg,#F59E0B 0%,#EC4899 45%,#7C3AED 90%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  white-space:nowrap;
}
.topbar-nav{display:none;align-items:center;gap:2px}
@media(min-width:700px){.topbar-nav{display:flex}}
.topbar-nav a{
  padding:7px 13px;border-radius:8px;
  font-size:.83rem;font-weight:500;color:var(--muted2);letter-spacing:.02em;
  transition:color var(--t),background var(--t);
}
.topbar-nav a:hover{color:var(--text);background:rgba(255,255,255,.05)}
.topbar-spacer{flex:1}
.topbar-actions{display:flex;align-items:center;gap:8px}

.icon-btn{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:10px;
  background:rgba(255,255,255,.04);border:1px solid var(--border);
  color:var(--muted2);transition:all var(--t);position:relative;flex-shrink:0;
}
.icon-btn:hover{background:rgba(255,255,255,.08);border-color:var(--border2);color:var(--text)}
.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cart-badge{
  position:absolute;top:-6px;right:-6px;
  background:linear-gradient(135deg,#F59E0B,#EC4899);
  color:#fff;font-size:.6rem;font-weight:800;border-radius:99px;
  min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;
  padding:0 4px;line-height:1;box-shadow:0 0 8px rgba(245,158,11,.5);
}

/* ============================================================ PAGE */
.page{max-width:1260px;margin:0 auto;padding:20px 16px 100px}

/* ============================================================ BUTTONS */
.btn-primary{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 24px;
  background:linear-gradient(135deg,#F59E0B 0%,#EC4899 60%);
  color:#fff;font-weight:700;font-size:.92rem;border-radius:var(--radius);
  letter-spacing:.03em;white-space:nowrap;
  box-shadow:0 4px 20px rgba(245,158,11,.25);
  transition:opacity var(--t),transform var(--t),box-shadow var(--t);
}
.btn-primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 6px 28px rgba(245,158,11,.35)}
.btn-primary:active{transform:translateY(0)}
.btn-primary.full{width:100%}
.btn-secondary{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:12px 22px;background:rgba(255,255,255,.05);color:var(--text);
  font-weight:600;font-size:.9rem;border-radius:var(--radius);
  border:1px solid var(--border2);white-space:nowrap;
  transition:background var(--t),border-color var(--t);
}
.btn-secondary:hover{background:rgba(255,255,255,.09);border-color:var(--border3)}
.btn-secondary.full{width:100%}
.btn-ghost{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;color:var(--muted2);font-size:.88rem;border-radius:8px;
  transition:color var(--t),background var(--t);
}
.btn-ghost:hover{color:var(--text);background:rgba(255,255,255,.05)}

/* ============================================================ HERO BANNER */
.hero-banner{
  position:relative;overflow:hidden;
  margin-bottom:22px;margin-left:-16px;margin-right:-16px;
  border-left:none;border-right:none;
  border-top:1px solid var(--border2);border-bottom:1px solid var(--border2);
  background:var(--space-mid);aspect-ratio:21/7;min-height:140px;
  box-shadow:0 0 50px rgba(124,58,237,.18),0 0 100px rgba(6,182,212,.08);
}
@media(min-width:700px){
  .hero-banner{
    border-radius:var(--radius-xl);
    margin-left:0;margin-right:0;
    border:1px solid var(--border2);
  }
}
.hero-banner::before{
  content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(ellipse 55% 55% at 82% 50%,rgba(124,58,237,.28),transparent),
    radial-gradient(ellipse 38% 38% at 18% 50%,rgba(6,182,212,.22),transparent);
}
.hero-banner-slides{position:absolute;inset:0}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}
.hero-slide.active{opacity:1}
.hero-slide img{width:100%;height:100%;object-fit:cover}
.hero-dots{
  position:absolute;bottom:14px;left:50%;transform:translateX(-50%);
  display:flex;gap:6px;z-index:2;
}
.hero-dot{
  width:6px;height:6px;border-radius:99px;
  background:rgba(255,255,255,.22);border:none;cursor:pointer;
  transition:width var(--t),background var(--t);
}
.hero-dot.active{width:24px;background:linear-gradient(90deg,#F59E0B,#EC4899)}

/* ============================================================ SEARCH */
.search-bar{
  display:flex;align-items:center;gap:10px;
  background:var(--space-card);border:1px solid var(--border);
  border-radius:var(--radius);padding:11px 16px;margin-bottom:16px;
  transition:border-color var(--t),box-shadow var(--t);
}
.search-bar:focus-within{border-color:var(--border3);box-shadow:0 0 0 3px rgba(6,182,212,.1)}
.search-bar svg{width:16px;height:16px;stroke:var(--muted);fill:none;flex-shrink:0}
.search-bar input{flex:1;background:none;border:none;outline:none;color:var(--text);font:inherit;font-size:.92rem}
.search-bar input::placeholder{color:var(--muted)}

/* ============================================================ CHIPS */
.chips-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:10px;scrollbar-width:none}
.chips-row::-webkit-scrollbar{display:none}
.chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:99px;
  background:var(--space-card);border:1px solid var(--border);
  font-size:.82rem;font-weight:600;color:var(--muted2);
  white-space:nowrap;flex-shrink:0;letter-spacing:.02em;
  transition:all var(--t);font-family:var(--font-display);
}
.chip:hover{border-color:var(--border2);color:var(--text)}
.chip.active{
  background:linear-gradient(135deg,rgba(124,58,237,.2),rgba(6,182,212,.18));
  border-color:var(--nebula-cyan);color:var(--text);
  box-shadow:0 0 14px rgba(6,182,212,.18);
}

/* ============================================================ SECTION HEAD */
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;gap:12px}
.section-title{
  font-family:var(--font-display);font-size:1.25rem;font-weight:700;letter-spacing:.07em;
  background:linear-gradient(135deg,#E2E8F0 0%,#7C3AED 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.section-link{font-size:.8rem;font-weight:600;color:var(--muted);transition:color var(--t)}
.section-link:hover{color:var(--nebula-cyan)}

/* ============================================================ PRODUCT GRID */
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:560px){.product-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:900px){.product-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1100px){.product-grid{grid-template-columns:repeat(5,1fr)}}

/* CARD */
.product-card{
  background:var(--space-card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  overflow:hidden;display:flex;flex-direction:column;
  position:relative;
  transition:border-color var(--t),transform var(--t),box-shadow var(--t);
}
.product-card:hover{
  border-color:rgba(6,182,212,.4);
  transform:translateY(-4px);
  box-shadow:0 14px 45px rgba(0,0,0,.55),0 0 22px rgba(6,182,212,.12);
}
.product-card__img{aspect-ratio:1;overflow:hidden;background:var(--space-mid);position:relative}
.product-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.product-card:hover .product-card__img img{transform:scale(1.07)}
.product-card__body{padding:10px 12px 4px;flex:1;display:flex;flex-direction:column;gap:3px}
.product-card__cat{
  font-size:.65rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.13em;color:var(--nebula-cyan);font-family:var(--font-display);
}
.product-card__name{
  font-size:.88rem;font-weight:600;line-height:1.35;color:var(--star-white);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.product-card__foot{
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 12px 12px;gap:8px;
}
.product-card__price{display:flex;flex-direction:column}
.product-card__price .price{
  font-family:var(--font-display);font-size:1rem;line-height:1;
  background:linear-gradient(135deg,#F59E0B,#FBBF24);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.product-card__price .old-price{font-size:.7rem;color:var(--muted);text-decoration:line-through}
.product-card__add{
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:10px;
  background:linear-gradient(135deg,#F59E0B,#EC4899);
  color:#fff;font-size:1.2rem;font-weight:700;flex-shrink:0;
  box-shadow:0 3px 12px rgba(245,158,11,.3);
  transition:transform var(--t),box-shadow var(--t);
}
.product-card__add:hover{transform:scale(1.12);box-shadow:0 4px 20px rgba(245,158,11,.5)}

/* BADGES */
.badge{
  position:absolute;top:8px;left:8px;padding:3px 8px;border-radius:6px;
  font-size:.62rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;z-index:3;font-family:var(--font-display);
}
.badge--sale    {background:linear-gradient(135deg,#EF4444,#F97316);color:#fff}
.badge--new     {background:linear-gradient(135deg,#10B981,#06B6D4);color:#000}
.badge--preorder{background:linear-gradient(135deg,#7C3AED,#2563EB);color:#fff}
.badge--hot     {background:linear-gradient(135deg,#F59E0B,#EC4899);color:#fff}
.badge--limited {background:rgba(255,255,255,.07);color:var(--muted2);border:1px solid var(--border2)}

/* Cart fly */
.cart-flyer{position:fixed;width:56px;height:56px;border-radius:10px;object-fit:cover;z-index:9999;pointer-events:none;--fly-x:0px;--fly-y:0px}
.cart-flyer.is-flying{animation:flyToCart .5s cubic-bezier(.4,0,.2,1) forwards}
@keyframes flyToCart{0%{transform:scale(1) translate(0,0);opacity:1}80%{opacity:.7}100%{transform:scale(.15) translate(var(--fly-x),var(--fly-y));opacity:0}}
@keyframes cartBump{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}
.cart-bump{animation:cartBump .3s ease}

/* Empty state */
.empty-state{grid-column:1/-1;text-align:center;padding:70px 20px;color:var(--muted)}
.empty-state .empty-icon{font-size:3.5rem;margin-bottom:14px;opacity:.5}
.empty-state strong{display:block;font-size:1.05rem;color:var(--star-white);margin-bottom:6px;font-family:var(--font-display);letter-spacing:.04em}

/* ============================================================ CART DRAWER */
.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);z-index:400;opacity:0;transition:opacity var(--t);pointer-events:none}
.cart-overlay.open{opacity:1;pointer-events:all}
.cart-drawer{
  position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);
  background:var(--space-deep);border-left:1px solid var(--border2);
  z-index:500;display:flex;flex-direction:column;
  transform:translateX(110%);transition:transform .3s cubic-bezier(.4,0,.2,1);
  box-shadow:-20px 0 80px rgba(124,58,237,.18);
}
.cart-drawer.open{transform:translateX(0)}
.cart-drawer__head{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 20px;border-bottom:1px solid var(--border);flex-shrink:0;
  background:linear-gradient(135deg,rgba(124,58,237,.1),rgba(6,182,212,.07));
}
.cart-drawer__title{
  font-family:var(--font-display);font-size:1.15rem;letter-spacing:.06em;
  display:flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,#E2E8F0,#7C3AED);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.cart-drawer__count{
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#F59E0B,#EC4899);color:#fff;
  font-family:var(--font-body);font-size:.7rem;font-weight:800;
  border-radius:99px;min-width:20px;height:20px;padding:0 5px;
  -webkit-text-fill-color:#fff;
}
.cart-drawer__close{
  display:flex;align-items:center;justify-content:center;width:36px;height:36px;
  border-radius:8px;background:rgba(255,255,255,.05);border:1px solid var(--border);
  color:var(--muted2);font-size:1rem;transition:background var(--t),color var(--t);
}
.cart-drawer__close:hover{background:rgba(255,255,255,.1);color:var(--text)}
.cart-drawer__items{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}
.cart-item{
  display:flex;gap:12px;align-items:flex-start;padding:12px;
  background:var(--space-card);border:1px solid var(--border);border-radius:var(--radius);
  transition:border-color var(--t);
}
.cart-item:hover{border-color:var(--border2)}
.cart-item__img{width:60px;height:60px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--space-mid)}
.cart-item__info{flex:1;min-width:0}
.cart-item__name{font-size:.85rem;font-weight:600;line-height:1.3;margin-bottom:3px;color:var(--star-white);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cart-item__price{font-size:.78rem;color:var(--muted);margin-bottom:8px}
.cart-item__qty{display:inline-flex;align-items:center;background:var(--space-mid);border:1px solid var(--border);border-radius:8px;overflow:hidden}
.cart-item__qty button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:.9rem;color:var(--muted2);transition:background var(--t),color var(--t)}
.cart-item__qty button:hover{background:var(--space-raised);color:var(--text)}
.cart-item__qty span{width:28px;text-align:center;font-size:.85rem;font-weight:700}
.cart-item__total{font-family:var(--font-display);font-size:.9rem;background:linear-gradient(135deg,#F59E0B,#FBBF24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;white-space:nowrap;flex-shrink:0}
.cart-drawer__footer{border-top:1px solid var(--border);padding:16px 18px;flex-shrink:0}
.coupon-row{display:flex;gap:8px;margin-bottom:14px}
.coupon-input{flex:1;background:var(--space-card);border:1px solid var(--border);border-radius:10px;color:var(--text);font:inherit;font-size:.85rem;padding:10px 14px;outline:none;transition:border-color var(--t)}
.coupon-input:focus{border-color:var(--nebula-cyan);box-shadow:0 0 0 2px rgba(6,182,212,.1)}
.coupon-input::placeholder{color:var(--muted)}
.coupon-apply{padding:10px 14px;background:rgba(255,255,255,.05);border:1px solid var(--border2);border-radius:10px;color:var(--muted2);font-size:.82rem;font-weight:600;transition:all var(--t);white-space:nowrap}
.coupon-apply:hover{background:rgba(255,255,255,.1);color:var(--text)}
.cart-totals{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}
.cart-totals__row{display:flex;justify-content:space-between;font-size:.84rem;color:var(--muted2)}
.cart-totals__row.total{font-size:.98rem;font-weight:700;color:var(--text);padding-top:10px;border-top:1px solid var(--border);margin-top:4px}
.cart-totals__row.total strong{font-family:var(--font-display);font-size:1.1rem;background:linear-gradient(135deg,#F59E0B,#FBBF24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.cart-actions{display:flex;gap:8px}
.cart-actions .btn-secondary{flex:0 0 auto;padding:13px 16px}

/* ============================================================ PRODUCT PAGE */
.product-page{display:flex;flex-direction:column;gap:24px}
@media(min-width:760px){.product-page{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}}
.product-gallery{display:flex;flex-direction:column;gap:10px}
.product-gallery__main{aspect-ratio:1;border-radius:var(--radius-xl);overflow:hidden;background:var(--space-card);border:1px solid var(--border2);box-shadow:0 0 40px rgba(124,58,237,.12)}
.product-gallery__main img{width:100%;height:100%;object-fit:cover}
.product-gallery__thumbs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.product-gallery__thumbs::-webkit-scrollbar{display:none}
.product-gallery__thumb{width:64px;height:64px;border-radius:10px;overflow:hidden;border:2px solid transparent;flex-shrink:0;cursor:pointer;transition:border-color var(--t),box-shadow var(--t)}
.product-gallery__thumb.active{border-color:var(--nebula-cyan);box-shadow:0 0 10px rgba(6,182,212,.3)}
.product-gallery__thumb img{width:100%;height:100%;object-fit:cover}
.product-info{display:flex;flex-direction:column;gap:16px}
.product-info__cat{font-family:var(--font-display);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--nebula-cyan)}
.product-info__name{font-family:var(--font-display);font-size:clamp(1.2rem,4vw,1.85rem);letter-spacing:.04em;line-height:1.15;background:linear-gradient(135deg,#E2E8F0,#94A3B8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.product-info__price-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.product-info__price{font-family:var(--font-display);font-size:2rem;background:linear-gradient(135deg,#F59E0B,#FBBF24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.product-info__old-price{font-size:1rem;color:var(--muted);text-decoration:line-through}
.product-info__stock-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:99px;font-size:.7rem;font-weight:700;letter-spacing:.04em;font-family:var(--font-display)}
.product-info__stock-pill.in{background:rgba(16,185,129,.1);color:var(--green);border:1px solid rgba(16,185,129,.25)}
.product-info__stock-pill.low{background:rgba(249,115,22,.1);color:var(--orange);border:1px solid rgba(249,115,22,.25)}
.product-info__stock-pill.out{background:rgba(239,68,68,.1);color:var(--red);border:1px solid rgba(239,68,68,.2)}
.product-info__desc{color:var(--muted2);font-size:.92rem;line-height:1.7}
.product-info__features{list-style:none;padding:0;display:flex;flex-direction:column;gap:7px}
.product-info__features li{display:flex;gap:9px;font-size:.88rem;color:var(--muted2);line-height:1.5}
.product-info__features li::before{content:'✦';color:var(--nebula-cyan);font-size:.6rem;flex-shrink:0;margin-top:3px}
.product-info__actions{display:flex;flex-direction:column;gap:10px}
.qty-row{display:flex;align-items:center;gap:12px}
.qty-label{font-size:.78rem;font-weight:600;color:var(--muted2);font-family:var(--font-display);letter-spacing:.05em}
.qty-control{display:inline-flex;align-items:center;background:var(--space-card);border:1px solid var(--border2);border-radius:10px;overflow:hidden}
.qty-control button{width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--muted2);transition:background var(--t),color var(--t)}
.qty-control button:hover{background:var(--space-raised);color:var(--text)}
.qty-control span{width:44px;text-align:center;font-weight:700;font-size:1rem}
.trust-pills{display:flex;flex-wrap:wrap;gap:8px}
.trust-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:99px;font-size:.72rem;font-weight:600;color:var(--muted2);background:var(--space-card);border:1px solid var(--border)}

/* ============================================================ CHECKOUT */
.checkout-layout{display:flex;flex-direction:column;gap:20px}
@media(min-width:820px){.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:28px;align-items:start}}
.checkout-steps{display:flex;align-items:center;gap:0;margin-bottom:28px}
.checkout-step{display:flex;align-items:center;gap:8px;flex:1}
.checkout-step__num{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;border:2px solid var(--border2);background:var(--space-card);color:var(--muted2);transition:all var(--t);flex-shrink:0;font-family:var(--font-display)}
.checkout-step__label{font-size:.78rem;font-weight:600;color:var(--muted2);font-family:var(--font-display);letter-spacing:.04em}
.checkout-step.active .checkout-step__num{border-color:var(--nebula-cyan);background:rgba(6,182,212,.15);color:var(--nebula-cyan);box-shadow:0 0 12px rgba(6,182,212,.25)}
.checkout-step.active .checkout-step__label{color:var(--text)}
.checkout-step.done .checkout-step__num{border-color:var(--green);background:rgba(16,185,129,.12);color:var(--green)}
.checkout-step__line{flex:1;height:1px;background:var(--border);margin:0 4px}
.checkout-form-card{background:var(--space-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:24px;display:flex;flex-direction:column;gap:22px}
.form-section-title{font-family:var(--font-display);font-size:.95rem;letter-spacing:.06em;margin-bottom:14px;display:flex;align-items:center;gap:8px;color:var(--star-white)}
.form-section-title svg{stroke:var(--nebula-cyan)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-field{display:flex;flex-direction:column;gap:5px}
.form-field.wide{grid-column:1/-1}
.form-field label{font-size:.7rem;font-weight:700;color:var(--muted2);text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-display)}
.form-field input,.form-field textarea{background:var(--space-mid);border:1px solid var(--border);border-radius:10px;color:var(--text);font:inherit;font-size:.92rem;padding:11px 14px;outline:none;width:100%;transition:border-color var(--t),box-shadow var(--t)}
.form-field input:focus,.form-field textarea:focus{border-color:var(--nebula-cyan);box-shadow:0 0 0 3px rgba(6,182,212,.1)}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--muted)}
.form-field input.error{border-color:var(--red);box-shadow:0 0 0 2px rgba(239,68,68,.15)}
.payment-methods{display:flex;flex-direction:column;gap:10px}
.payment-method{padding:16px;background:var(--space-mid);border:2px solid var(--border);border-radius:var(--radius);transition:border-color var(--t),box-shadow var(--t)}
.payment-method:hover{border-color:var(--border2);box-shadow:0 0 16px rgba(124,58,237,.1)}
.payment-method__head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.payment-method__icon{font-size:1.6rem}
.payment-method__name{font-weight:700;font-size:.9rem;font-family:var(--font-display);letter-spacing:.03em}
.payment-method__sub{font-size:.78rem;color:var(--muted2)}
.order-summary{background:var(--space-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:20px;position:sticky;top:78px}
.order-summary__title{font-family:var(--font-display);font-size:.95rem;letter-spacing:.08em;margin-bottom:16px;color:var(--star-white)}
.order-items{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.order-item{display:flex;gap:10px;align-items:center}
.order-item__img{width:50px;height:50px;border-radius:8px;object-fit:cover;background:var(--space-mid);flex-shrink:0}
.order-item__name{font-size:.83rem;font-weight:600;flex:1;line-height:1.3}
.order-item__qty{font-size:.75rem;color:var(--muted2)}
.order-item__price{font-weight:700;font-size:.88rem;white-space:nowrap}
.order-divider{height:1px;background:var(--border);margin:12px 0}
.order-totals{display:flex;flex-direction:column;gap:8px}
.order-totals__row{display:flex;justify-content:space-between;font-size:.85rem;color:var(--muted2)}
.order-totals__row.total{font-size:1rem;color:var(--text);font-weight:700;padding-top:8px;border-top:1px solid var(--border)}
.order-totals__row.total strong{font-family:var(--font-display);font-size:1.15rem;background:linear-gradient(135deg,#F59E0B,#FBBF24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.checkout-error{font-size:.83rem;color:var(--red);padding:10px 14px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:8px}

/* ============================================================ MODAL */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(10px);z-index:600;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .22s ease}
.modal-overlay.open{opacity:1;pointer-events:all}
@media(min-width:500px){.modal-overlay{align-items:center;padding:20px}}
.modal-box{width:100%;max-width:420px;background:var(--space-card);border:1px solid var(--border2);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:28px 24px 36px;transform:translateY(40px);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:16px;box-shadow:0 -20px 60px rgba(124,58,237,.22)}
.modal-overlay.open .modal-box{transform:translateY(0)}
@media(min-width:500px){.modal-box{border-radius:var(--radius-xl)}}
.modal-head{display:flex;align-items:center;gap:12px}
.modal-icon{font-size:2rem}
.modal-title{font-family:var(--font-display);font-size:1.2rem;letter-spacing:.05em;background:linear-gradient(135deg,#E2E8F0,#7C3AED);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.modal-sub{color:var(--muted2);font-size:.9rem;line-height:1.65}
.mb-ref-fields{display:flex;flex-direction:column;gap:10px;background:var(--space-mid);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}
.mb-ref-field{display:flex;justify-content:space-between;align-items:center}
.mb-ref-label{font-size:.7rem;color:var(--muted2);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-display)}
.mb-ref-value{font-family:var(--font-display);font-size:1.05rem;background:linear-gradient(135deg,#F59E0B,#FBBF24);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.mb-ref-value.big{font-size:1.45rem}
.mb-ref-note{font-size:.8rem;color:var(--muted2);text-align:center;display:flex;align-items:center;gap:5px;justify-content:center}
.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--nebula-cyan);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto;box-shadow:0 0 20px rgba(6,182,212,.2)}
@keyframes spin{to{transform:rotate(360deg)}}

/* ============================================================ FOOTER */
.footer{border-top:1px solid var(--border);padding:44px 16px 36px;margin-top:60px}
.footer-inner{max-width:1260px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:28px}
@media(min-width:600px){.footer-inner{grid-template-columns:repeat(3,1fr)}}
.footer-col h4{font-family:var(--font-display);font-size:.85rem;letter-spacing:.1em;margin-bottom:14px;color:var(--text)}
.footer-col p,.footer-col a{font-size:.82rem;color:var(--muted2);line-height:1.9;display:block;transition:color var(--t)}
.footer-col a:hover{color:var(--nebula-cyan)}
.footer-bottom{max-width:1260px;margin:24px auto 0;padding-top:18px;border-top:1px solid var(--border);font-size:.75rem;color:var(--muted);text-align:center;font-family:var(--font-display);letter-spacing:.04em}

/* ============================================================ STATUS & INFO */
.status-page{min-height:65vh;display:flex;align-items:center;justify-content:center;padding:40px 16px}
.status-card{max-width:480px;width:100%;background:var(--space-card);border:1px solid var(--border2);border-radius:var(--radius-xl);padding:40px 28px;text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center;box-shadow:0 0 60px rgba(124,58,237,.15)}
.status-icon{font-size:3.8rem}
.status-title{font-family:var(--font-display);font-size:1.7rem;letter-spacing:.05em;background:linear-gradient(135deg,#E2E8F0,#7C3AED);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.status-text{color:var(--muted2);line-height:1.7;max-width:340px}
.status-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.info-page{max-width:780px;margin:0 auto;padding:24px 16px 80px;display:flex;flex-direction:column;gap:18px}
.info-hero{background:var(--space-card);border:1px solid var(--border2);border-radius:var(--radius-xl);padding:28px 24px}
.info-hero .eyebrow{font-family:var(--font-display);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--nebula-cyan);display:block;margin-bottom:10px}
.info-hero h1{font-family:var(--font-display);font-size:clamp(1.5rem,5vw,2.2rem);letter-spacing:.04em;margin-bottom:12px;background:linear-gradient(135deg,#E2E8F0,#7C3AED);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.info-hero p{color:var(--muted2);line-height:1.75}
.info-card{background:var(--space-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px}
.info-card h2{font-family:var(--font-display);font-size:1rem;letter-spacing:.05em;margin-bottom:10px;color:var(--star-white)}
.info-card p{color:var(--muted2);line-height:1.75;font-size:.92rem}
.info-card p+p{margin-top:8px}
.info-card ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:7px}
.info-card ul li{display:flex;gap:9px;color:var(--muted2);font-size:.92rem;line-height:1.5}
.info-card ul li::before{content:'✦';color:var(--nebula-cyan);font-size:.6rem;flex-shrink:0;margin-top:3px}
.info-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:600px){.info-grid{grid-template-columns:1fr 1fr}}
.detail-list{display:flex;flex-direction:column;gap:8px}
.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--space-mid);border-radius:10px;font-size:.88rem}
.detail-row span{color:var(--muted2)}
.detail-row strong{color:var(--text)}
.info-actions{display:flex;flex-wrap:wrap;gap:10px}
.back-btn{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--muted2);font-family:var(--font-display);letter-spacing:.04em;transition:color var(--t);margin-bottom:18px}
.back-btn:hover{color:var(--nebula-cyan)}

/* ============================================================ MOBILE MENU */
.mobile-menu{position:fixed;inset:0;z-index:700;display:flex}
.mobile-menu:not(.open){pointer-events:none}
.mobile-menu__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);opacity:0;transition:opacity .26s ease;z-index:0}
.mobile-menu.open .mobile-menu__backdrop{opacity:1;pointer-events:all}
.mobile-menu__panel{position:relative;width:80vw;max-width:290px;height:100%;background:var(--space-deep);border-right:1px solid var(--border2);padding:22px 14px;display:flex;flex-direction:column;gap:3px;overflow-y:auto;transform:translateX(-110%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:20px 0 60px rgba(124,58,237,.15);z-index:1}
.mobile-menu.open .mobile-menu__panel{transform:translateX(0)}
.mobile-menu__close{position:absolute;top:16px;right:12px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.05);color:var(--muted2);font-size:1rem;transition:background var(--t)}
.mobile-menu__close:hover{background:rgba(255,255,255,.1)}
.mobile-menu__header{display:flex;align-items:center;gap:8px;margin-bottom:18px;padding:0 4px 16px;border-bottom:1px solid var(--border)}
.mobile-menu__header img{height:24px}
.mobile-menu__header span{font-family:var(--font-display);font-size:.85rem;letter-spacing:.07em;background:linear-gradient(135deg,#F59E0B,#EC4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.mobile-menu__link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;font-size:.88rem;font-weight:600;color:var(--muted2);transition:background var(--t),color var(--t);font-family:var(--font-display);letter-spacing:.03em;border-left:2px solid transparent}
.mobile-menu__link:hover,.mobile-menu__link.active{background:rgba(6,182,212,.07);color:var(--text);border-left-color:var(--nebula-cyan)}
.mobile-menu__divider{height:1px;background:var(--border);margin:8px 0}

/* ============================================================ UTILITIES */
.hidden{display:none!important}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.product-card:nth-child(1){animation:fadeUp .35s .03s ease both}
.product-card:nth-child(2){animation:fadeUp .35s .07s ease both}
.product-card:nth-child(3){animation:fadeUp .35s .11s ease both}
.product-card:nth-child(4){animation:fadeUp .35s .15s ease both}
.product-card:nth-child(5){animation:fadeUp .35s .19s ease both}
.product-card:nth-child(6){animation:fadeUp .35s .23s ease both}
.product-card:nth-child(7){animation:fadeUp .35s .27s ease both}
.product-card:nth-child(8){animation:fadeUp .35s .31s ease both}
@media(max-width:400px){.product-grid{gap:8px}.product-card__name{font-size:.82rem}.product-card__price .price{font-size:.9rem}}

/* ============================================================ TAWK CHAT BUTTON */
#tawk-chat-btn{position:fixed;bottom:20px;right:16px;z-index:350;cursor:pointer;background:none;border:none;padding:0;outline:none;-webkit-tap-highlight-color:transparent;display:flex;align-items:flex-end;gap:8px;transition:opacity .2s ease}
#tawk-chat-btn .chat-ship{width:62px;height:62px;flex-shrink:0;filter:drop-shadow(0 0 10px rgba(6,182,212,.7)) drop-shadow(0 0 20px rgba(124,58,237,.4));transition:filter .2s;animation:chatShipFloat 3s ease-in-out infinite}
#tawk-chat-btn:hover .chat-ship{filter:drop-shadow(0 0 16px rgba(6,182,212,1)) drop-shadow(0 0 28px rgba(124,58,237,.7))}
#tawk-chat-btn .chat-badge{position:absolute;top:2px;right:2px;background:var(--nebula-pink);color:#fff;font-size:10px;font-weight:700;font-family:var(--font-display,monospace);width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--space-void,#02040A);opacity:0;transition:opacity .2s;z-index:2}
#tawk-chat-btn .chat-badge.visible{opacity:1}
/* Speech bubble */
#tawk-chat-btn .chat-bubble{position:relative;background:rgba(10,17,40,.96);border:1px solid rgba(6,182,212,.45);border-radius:14px 14px 4px 14px;padding:8px 12px;margin-bottom:10px;white-space:nowrap;box-shadow:0 0 16px rgba(6,182,212,.2),0 2px 12px rgba(0,0,0,.5);animation:bubblePop .4s .6s cubic-bezier(.34,1.56,.64,1) both}
#tawk-chat-btn .chat-bubble::after{content:'';position:absolute;bottom:-7px;right:10px;width:0;height:0;border-left:7px solid transparent;border-top:7px solid rgba(6,182,212,.45)}
#tawk-chat-btn .chat-bubble::before{content:'';position:absolute;bottom:-6px;right:11px;width:0;height:0;border-left:6px solid transparent;border-top:6px solid rgba(10,17,40,.96);z-index:1}
#tawk-chat-btn .bubble-line1{display:block;font-size:.72rem;font-weight:700;font-family:'Orbitron',monospace;letter-spacing:.06em;background:linear-gradient(90deg,#06B6D4,#7C3AED);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.3}
#tawk-chat-btn .bubble-line2{display:flex;align-items:center;gap:4px;font-size:.68rem;color:#94A3B8;font-family:'Inter',sans-serif;font-weight:500;margin-top:2px}
#tawk-chat-btn .bubble-dot{width:7px;height:7px;border-radius:50%;background:#10B981;box-shadow:0 0 6px #10B981;animation:dotPulse 2s ease-in-out infinite;flex-shrink:0}
@keyframes chatShipFloat{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-8px) rotate(4deg)}}
@keyframes bubblePop{from{opacity:0;transform:scale(.7) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes dotPulse{0%,100%{opacity:1;box-shadow:0 0 6px #10B981}50%{opacity:.5;box-shadow:0 0 2px #10B981}}

/* ══ ACCORDION MENU ══ */
.mm-accordion{padding:8px 0;}
.mm-universe{overflow:hidden;}

.mm-universe__btn{
  width:100%;display:flex;align-items:center;gap:12px;
  padding:13px 20px;
  background:none;border:none;cursor:pointer;
  font-family:var(--font-display);font-size:.7rem;font-weight:800;letter-spacing:.12em;
  color:var(--muted2);
  transition:background .15s, color .15s;
  position:relative;
}
.mm-universe__btn::before{
  content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:3px;height:0;border-radius:0 3px 3px 0;
  transition:height .25s ease,opacity .25s;opacity:0;
}
.mm-universe__btn:hover{background:rgba(255,255,255,.04);}

.mm-universe__btn--pokemon.open,.mm-universe__btn--pokemon:hover{color:#FCA5A5;}
.mm-universe__btn--pokemon::before{background:#EF4444;}
.mm-universe__btn--pokemon.open::before{height:60%;opacity:1;}

.mm-universe__btn--onepiece.open,.mm-universe__btn--onepiece:hover{color:#FCD34D;}
.mm-universe__btn--onepiece::before{background:#F59E0B;}
.mm-universe__btn--onepiece.open::before{height:60%;opacity:1;}

.mm-universe__btn--magic.open,.mm-universe__btn--magic:hover{color:#C4B5FD;}
.mm-universe__btn--magic::before{background:#7C3AED;}
.mm-universe__btn--magic.open::before{height:60%;opacity:1;}

.mm-universe__icon{font-size:16px;line-height:1;flex-shrink:0;display:flex;align-items:center;}
.mm-universe__name{flex:1;text-align:left;}
.mm-universe__chevron{
  flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2.5;
  stroke-linecap:round;stroke-linejoin:round;
  transition:transform .25s cubic-bezier(.4,0,.2,1);opacity:.5;
}
.mm-universe__btn.open .mm-universe__chevron{transform:rotate(180deg);opacity:1;}

.mm-universe__sub{
  max-height:0;overflow:hidden;
  transition:max-height .32s cubic-bezier(.4,0,.2,1);
  background:rgba(255,255,255,.02);
}
.mm-universe__sub.open{max-height:340px;}

.mm-sub__link{
  display:flex;align-items:center;gap:10px;
  padding:10px 20px 10px 48px;
  font-size:.84rem;font-weight:500;color:var(--muted2);
  transition:color .15s,background .15s,border-left-color .15s;
  border-left:2px solid transparent;
}
.mm-sub__link:hover{color:var(--star-white);background:rgba(255,255,255,.03);}
.mm-sub__link.active{color:var(--star-white);font-weight:700;}

.mm-universe--pokemon-active .mm-sub__link.active{color:#FCA5A5;border-left-color:#EF4444;}
.mm-universe--onepiece-active .mm-sub__link.active{color:#FCD34D;border-left-color:#F59E0B;}
.mm-universe--magic-active .mm-sub__link.active{color:#C4B5FD;border-left-color:#7C3AED;}

/* ── CHIPS WRAPPER ── */
.chips-wrapper{padding:0 16px 0;}
.chips-universe-label{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--font-display);font-size:.58rem;font-weight:700;letter-spacing:.12em;
  padding:4px 12px 4px 8px;border-radius:99px;margin-bottom:10px;margin-top:4px;
  border:1px solid;
}
.chips-universe-label--pokemon{color:#FCA5A5;background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.25);}
.chips-universe-label--onepiece{color:#FCD34D;background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.25);}
.chips-universe-label--magic{color:#C4B5FD;background:rgba(124,58,237,.08);border-color:rgba(124,58,237,.3);}
.chip--disabled{opacity:.35;pointer-events:none;cursor:default;}

/* ============================================================ UNIVERSE SELECTOR */
.universe-selector{
  padding:24px 12px 20px;
  text-align:center;
}
.universe-label{
  font-family:var(--font-display);
  font-size:.58rem;font-weight:700;letter-spacing:.16em;
  color:var(--muted2);margin-bottom:16px;
  display:flex;align-items:center;gap:10px;justify-content:center;
}
.universe-label__line{
  flex:1;max-width:48px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(99,132,255,.3),transparent);
}

/* ── Grid: 3 lado a lado SEMPRE — sem carrossel ── */
.universe-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  padding:4px 0 8px;
  justify-items:center;
}

/* ── Base card — mobile-first ── */
.universe-card{
  position:relative;
  border:1px solid var(--border2);
  border-radius:16px;
  background:var(--space-card);
  padding:0;overflow:hidden;cursor:pointer;
  text-align:center;
  width:100%;
  min-height:0;
  display:flex;flex-direction:column;
  transition:transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .25s ease, border-color .25s ease;
  opacity:0;
  animation:ucEntrance .55s cubic-bezier(.34,1.2,.64,1) forwards;
}
.universe-card:nth-child(1){animation-delay:.08s;}
.universe-card:nth-child(2){animation-delay:.18s;}
.universe-card:nth-child(3){animation-delay:.28s;}
@keyframes ucEntrance{
  from{opacity:0;transform:translateY(20px) scale(.93);}
  to{opacity:1;transform:translateY(0) scale(1);}
}

/* Canvas background */
.uc-canvas{
  position:absolute;inset:0;width:100%;height:100%;
  pointer-events:none;opacity:.5;
}

/* ── Inner layout — compact mobile ── */
.universe-card__inner{
  position:relative;z-index:1;
  display:flex;flex-direction:column;align-items:center;
  padding:14px 6px 12px;flex:1;
}

/* ── Icon — smaller on mobile ── */
.universe-card__icon{
  margin-bottom:8px;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1), filter .3s;
  filter:drop-shadow(0 3px 8px rgba(245,158,11,.3));
}
.universe-card__icon svg{width:48px;height:48px;}

/* ── Text ── */
.universe-card__name{
  font-family:var(--font-display);
  font-size:.62rem;font-weight:900;letter-spacing:.08em;
  color:var(--star-white);margin-bottom:2px;
  line-height:1.2;
}
.universe-card__sub{
  font-size:.52rem;color:var(--muted2);letter-spacing:.02em;margin-bottom:8px;
  line-height:1.3;
}

/* ── Tags — hidden on mobile, show on bigger screens ── */
.universe-card__tags{
  display:none;
  flex-wrap:wrap;gap:4px;justify-content:center;
}
.universe-card__tags span{
  font-size:.55rem;font-family:var(--font-display);
  letter-spacing:.05em;font-weight:700;
  padding:2px 7px;border-radius:99px;
  border:1px solid var(--border2);
  color:var(--muted2);background:rgba(255,255,255,.03);
}

/* ── Active bar ── */
.universe-card__active-bar{
  height:3px;width:0%;
  border-radius:99px;transition:width .4s cubic-bezier(.4,0,.2,1);
  position:absolute;bottom:0;left:50%;transform:translateX(-50%);
  background:linear-gradient(90deg,#EF4444,#F59E0B);
}
.universe-card--pokemon.active .universe-card__active-bar{width:70%;}
.universe-card--onepiece .universe-card__active-bar{background:linear-gradient(90deg,#F59E0B,#EF4444);}
.universe-card--magic.active .universe-card__active-bar{width:70%;background:linear-gradient(90deg,#7C3AED,#A78BFA,#F59E0B);}

/* ── Em breve badge ── */
.universe-card__badge{
  position:absolute;top:8px;right:8px;z-index:2;
  font-family:var(--font-display);font-size:.48rem;font-weight:700;letter-spacing:.08em;
  padding:3px 7px;border-radius:99px;
  background:linear-gradient(135deg,rgba(245,158,11,.25),rgba(239,68,68,.2));
  border:1px solid rgba(245,158,11,.4);color:#FCD34D;
  animation:badgePulse 2.5s ease-in-out infinite;
}
@keyframes badgePulse{
  0%,100%{box-shadow:0 0 0 0 rgba(245,158,11,.3);}
  50%{box-shadow:0 0 0 4px rgba(245,158,11,0);}
}

/* ══ POKÉMON ══ */
.universe-card--pokemon:hover{transform:translateY(-4px) scale(1.02);}
.universe-card--pokemon.active{
  border-color:rgba(239,68,68,.6);
  box-shadow:0 0 0 1px rgba(239,68,68,.25), 0 4px 24px rgba(239,68,68,.2);
}
.universe-card--pokemon .universe-card__glow,
.universe-card--onepiece .universe-card__glow,
.universe-card--magic .universe-card__glow{
  position:absolute;inset:0;pointer-events:none;transition:opacity .3s;
}
.universe-card--pokemon .universe-card__glow{background:radial-gradient(ellipse 90% 60% at 50% 0%,rgba(239,68,68,.18) 0%,transparent 70%);}
.universe-card--pokemon.active .universe-card__glow{background:radial-gradient(ellipse 90% 60% at 50% 0%,rgba(239,68,68,.3) 0%,transparent 70%);}
.universe-card--pokemon .universe-card__icon{filter:drop-shadow(0 3px 12px rgba(239,68,68,.5));}
.universe-card--pokemon:hover .universe-card__icon,
.universe-card--pokemon.active .universe-card__icon{transform:scale(1.08) translateY(-3px);filter:drop-shadow(0 6px 18px rgba(239,68,68,.7));}
.universe-card--pokemon:hover .pk-ball,
.universe-card--pokemon.active .pk-ball{animation:pkSpin 8s linear infinite;}
@keyframes pkSpin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}
.universe-card--pokemon.active .universe-card__tags span{border-color:rgba(239,68,68,.4);color:#FCA5A5;background:rgba(239,68,68,.08);}

/* ══ ONE PIECE ══ */
.universe-card--onepiece{opacity:1;cursor:pointer;}
.universe-card--onepiece:hover{transform:translateY(-4px) scale(1.02);}
.universe-card--onepiece.active{
  border-color:rgba(245,158,11,.6);
  box-shadow:0 0 0 1px rgba(245,158,11,.25), 0 4px 24px rgba(245,158,11,.2);
}
.universe-card--onepiece .universe-card__glow{background:radial-gradient(ellipse 90% 60% at 50% 30%,rgba(245,158,11,.14) 0%,transparent 70%);}
.universe-card--onepiece.active .universe-card__glow{background:radial-gradient(ellipse 90% 60% at 50% 30%,rgba(245,158,11,.3) 0%,transparent 70%);}
.universe-card--onepiece .universe-card__icon{filter:drop-shadow(0 3px 12px rgba(245,158,11,.4));}
.universe-card--onepiece:hover .universe-card__icon,
.universe-card--onepiece.active .universe-card__icon{transform:scale(1.08) translateY(-3px);filter:drop-shadow(0 6px 18px rgba(245,158,11,.7));}
.universe-card--onepiece.active .universe-card__active-bar{width:70%;}
.universe-card--onepiece.active .universe-card__tags span{border-color:rgba(245,158,11,.4);color:#FCD34D;background:rgba(245,158,11,.08);}
.op-hat{animation:hatBob 3s ease-in-out infinite;}
@keyframes hatBob{0%,100%{transform:translateY(0) rotate(-2deg);}50%{transform:translateY(-5px) rotate(2deg);}}

/* ══ MAGIC ══ */
.universe-card--magic{cursor:pointer;opacity:1;}
.universe-card--magic:hover{transform:translateY(-4px) scale(1.02);}
.universe-card--magic.active{
  border-color:rgba(124,58,237,.6);
  box-shadow:0 0 0 1px rgba(124,58,237,.25), 0 4px 24px rgba(124,58,237,.2);
}
.universe-card--magic .universe-card__glow{background:radial-gradient(ellipse 90% 60% at 50% 30%,rgba(124,58,237,.18) 0%,transparent 70%);}
.universe-card--magic.active .universe-card__glow{background:radial-gradient(ellipse 90% 60% at 50% 30%,rgba(124,58,237,.32) 0%,transparent 70%);}
.universe-card--magic .universe-card__icon{filter:drop-shadow(0 3px 12px rgba(124,58,237,.5));}
.universe-card--magic:hover .universe-card__icon,
.universe-card--magic.active .universe-card__icon{transform:scale(1.08) translateY(-3px);filter:drop-shadow(0 6px 18px rgba(124,58,237,.8));}
.mtg-orb{animation:mtgFloat 4s ease-in-out infinite;}
@keyframes mtgFloat{0%,100%{transform:translateY(0) scale(1);}33%{transform:translateY(-5px) scale(1.04);}66%{transform:translateY(-2px) scale(.98);}}
.universe-card--magic.active .universe-card__tags span{border-color:rgba(124,58,237,.4);color:#C4B5FD;background:rgba(124,58,237,.08);}

/* ── Menu headers ── */
.mobile-menu__universe-header--magic{color:#C4B5FD;}

/* ── CHECKOUT BUTTON (universe-aware) ── */
.checkout-btn{
  flex:1;display:flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 20px;border:none;border-radius:12px;cursor:pointer;
  font-family:var(--font-display);font-size:.82rem;font-weight:700;letter-spacing:.05em;
  color:#fff;position:relative;overflow:hidden;
  background-size:200% 200%;
  animation:checkoutGlow 3s ease infinite;
  transition:transform .15s ease, box-shadow .15s ease;
}
.checkout-btn:hover{transform:translateY(-2px);}
.checkout-btn__shimmer{
  position:absolute;top:0;left:-100%;width:60%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  animation:cartShimmer 2.5s ease infinite;pointer-events:none;
}
.checkout-btn--pokemon{
  background:linear-gradient(135deg,#EF4444 0%,#EC4899 50%,#7C3AED 100%);
  box-shadow:0 4px 20px rgba(239,68,68,.35);
}
.checkout-btn--pokemon:hover{box-shadow:0 8px 30px rgba(239,68,68,.5);}
.checkout-btn--onepiece{
  background:linear-gradient(135deg,#F59E0B 0%,#EF4444 50%,#B45309 100%);
  box-shadow:0 4px 20px rgba(245,158,11,.4);
}
.checkout-btn--onepiece:hover{box-shadow:0 8px 30px rgba(245,158,11,.55);}
.checkout-btn--magic{
  background:linear-gradient(135deg,#7C3AED 0%,#A78BFA 40%,#4C1D95 100%);
  box-shadow:0 4px 20px rgba(124,58,237,.4);
}
.checkout-btn--magic:hover{box-shadow:0 8px 30px rgba(124,58,237,.55);}
@keyframes checkoutGlow{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
@keyframes cartShimmer{0%{left:-100%;}60%{left:140%;}100%{left:140%;}}

/* ══ DESKTOP — mais espaço, mostra tags ══ */
@media(min-width:480px){
  .universe-selector{padding:28px 16px 22px;}
  .universe-cards{gap:12px;}
  .universe-card__inner{padding:20px 12px 16px;}
  .universe-card__icon svg{width:68px;height:68px;}
  .universe-card__name{font-size:.8rem;}
  .universe-card__sub{font-size:.6rem;margin-bottom:12px;}
  .universe-card__tags{display:flex;}
}
@media(min-width:680px){
  .universe-cards{max-width:600px;margin:0 auto;}
  .universe-card__icon svg{width:80px;height:80px;}
  .universe-card__name{font-size:.92rem;}
}
