/* ============================================================
   AÇAÍ SEU LOLY — style.css
   ============================================================ */
:root {
  --roxo-dark: #1a0035;
  --roxo:      #3d006e;
  --amarelo:   #FFD700;
  --amarelo2:  #FF9900;
  --verde:     #00e676;
}

*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}

body{
  font-family:'Nunito',Arial,sans-serif;
  background:var(--roxo-dark);
  min-height:100vh;
  overflow-x:hidden;
  color:white;
}

/* BG */
.bg-stars{
  position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  background:
    radial-gradient(ellipse at 10% 0%,rgba(98,0,179,.7) 0%,transparent 55%),
    radial-gradient(ellipse at 90% 100%,rgba(255,153,0,.15) 0%,transparent 55%),
    var(--roxo-dark);
}
.bg-stars::before{
  content:'';position:absolute;inset:0;
  background-image:
    radial-gradient(1px 1px at 20% 30%,rgba(255,255,255,.6) 0%,transparent 100%),
    radial-gradient(1px 1px at 80% 15%,rgba(255,255,255,.5) 0%,transparent 100%),
    radial-gradient(1px 1px at 50% 70%,rgba(255,255,255,.4) 0%,transparent 100%),
    radial-gradient(1px 1px at 35% 85%,rgba(255,255,255,.5) 0%,transparent 100%);
}

/* WRAPPER */
.wrap{position:relative;z-index:1;max-width:430px;margin:0 auto;padding:0 14px 60px;}

/* SCREENS */
.screen{display:none;animation:fadeUp .4s ease;}
.screen.on{display:block;}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

/* HEADER */
.header{text-align:center;padding:24px 0 16px;}
.logo-mascot{font-size:52px;animation:bobble 2.2s ease-in-out infinite;}
@keyframes bobble{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(2deg)}}
.logo-brand{
  font-family:'Bebas Neue',sans-serif;font-size:52px;letter-spacing:4px;line-height:1;
  background:linear-gradient(180deg,#fff 0%,var(--amarelo) 60%,var(--amarelo2) 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
}
.logo-sub{font-size:11px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.55);margin-top:2px;}
.logo-tag{
  display:inline-block;
  background:linear-gradient(90deg,var(--amarelo),var(--amarelo2));
  color:var(--roxo-dark);font-family:'Bebas Neue',sans-serif;
  font-size:14px;letter-spacing:2px;padding:3px 14px;border-radius:20px;margin-top:6px;
}

/* CARDS */
.card{background:rgba(255,255,255,.06);border:1px solid rgba(255,215,0,.18);border-radius:22px;padding:22px 18px;margin-bottom:14px;backdrop-filter:blur(8px);}
.card-title{font-family:'Bebas Neue',sans-serif;font-size:26px;letter-spacing:2px;color:var(--amarelo);margin-bottom:6px;}
.card-desc{color:rgba(255,255,255,.65);font-size:14px;line-height:1.5;margin-bottom:16px;}

/* ABAS */
.abas{display:flex;gap:8px;}
.aba-btn{flex:1;padding:12px;border-radius:12px 12px 0 0;border:none;cursor:pointer;font-family:'Bebas Neue',sans-serif;font-size:17px;letter-spacing:1px;}
.aba-btn.on{background:linear-gradient(135deg,var(--amarelo),var(--amarelo2));color:var(--roxo-dark);}
.aba-btn.off{background:rgba(255,255,255,.07);color:rgba(255,255,255,.45);border:1px solid rgba(255,215,0,.18);border-bottom:none;}
.aba-content{display:none;background:rgba(255,255,255,.04);border:1px solid rgba(255,215,0,.18);border-radius:0 16px 16px 16px;padding:18px 16px;margin-bottom:14px;}
.aba-content.on{display:block;animation:fadeUp .3s ease;}

/* INPUTS */
.inp-label{font-size:11px;font-weight:800;color:rgba(255,255,255,.5);letter-spacing:.5px;text-transform:uppercase;margin-bottom:5px;display:block;}
.input-box{width:100%;padding:14px;border-radius:12px;border:2px solid rgba(255,215,0,.3);background:rgba(255,255,255,.07);color:white;font-size:16px;font-family:'Nunito',sans-serif;font-weight:800;outline:none;transition:border-color .3s;margin-bottom:10px;}
.input-box:focus{border-color:var(--amarelo);}
.input-box::placeholder{color:rgba(255,255,255,.3);}
.input-box.cod{font-size:24px;font-family:'Bebas Neue',sans-serif;letter-spacing:8px;text-align:center;}

/* BOTÕES */
.btn{width:100%;padding:15px;border-radius:14px;border:none;font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:2px;cursor:pointer;transition:transform .15s;}
.btn:active{transform:scale(.97);}
.btn:disabled{opacity:.5;}
.btn-gold{background:linear-gradient(135deg,var(--amarelo),var(--amarelo2));color:var(--roxo-dark);box-shadow:0 6px 24px rgba(255,215,0,.4);margin-top:8px;}
.btn-ghost{background:transparent;color:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.15);font-size:15px;margin-top:8px;}

/* ERROS */
.msg-erro{background:rgba(255,70,70,.15);border:1px solid rgba(255,70,70,.35);border-radius:12px;padding:11px 14px;color:#ff8888;font-size:13px;font-weight:800;text-align:center;display:none;margin-top:10px;}
.msg-erro.on{display:block;animation:shake .4s;}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}

/* HERO */
.hero-user{background:linear-gradient(180deg,rgba(255,215,0,.12),transparent);border-bottom:1px solid rgba(255,215,0,.15);padding:12px 16px;text-align:center;margin:-14px -14px 14px;}
.hero-nome{font-family:'Bebas Neue',sans-serif;font-size:20px;color:var(--amarelo);}
.hero-sub{font-size:12px;color:rgba(255,255,255,.6);margin-top:2px;}
.prog-wrap{margin:8px 0 0;}
.prog-labels{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:rgba(255,255,255,.5);margin-bottom:7px;}
.prog-bar{height:9px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;}
.prog-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#00e676,var(--amarelo),var(--amarelo2));transition:width .9s ease;}

/* PRÊMIOS */
.premios-lista{display:flex;flex-direction:column;gap:8px;}
.premio-row{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.05);border-radius:12px;padding:11px 14px;border-left:3px solid var(--amarelo);}
.premio-row .qnt{font-family:'Bebas Neue',sans-serif;font-size:22px;color:var(--amarelo);}
.premio-row .desc{font-size:13px;font-weight:700;color:rgba(255,255,255,.8);}
.premio-row .icon{font-size:22px;}
.premio-row.gold{background:rgba(255,215,0,.1);border-color:rgba(255,215,0,.5);}

/* ÁLBUM */
.album-section-title{font-family:'Bebas Neue',sans-serif;font-size:16px;letter-spacing:2px;color:rgba(255,255,255,.45);margin:16px 0 8px;display:flex;align-items:center;gap:8px;}
.album-section-title::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.1);}
.album-section-title.rara{color:#00e5ff;}
.album-section-title.ultra{color:#df9fff;}
.album-section-title.lenda{color:var(--amarelo);}
.album-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.a-slot{aspect-ratio:2.5/3.5;border-radius:10px;border:2px dashed rgba(255,255,255,.15);background:rgba(255,255,255,.03);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;}
.lock-icon{font-size:20px;animation:lockglow 2.5s ease-in-out infinite;}
@keyframes lockglow{0%,100%{filter:drop-shadow(0 2px 6px rgba(255,215,0,.3))}50%{filter:drop-shadow(0 2px 14px rgba(255,215,0,.8))}}
.slot-num{font-size:9px;position:absolute;bottom:5px;color:rgba(255,255,255,.2);}
.a-slot.got{border:2px solid var(--amarelo);animation:popIn .45s cubic-bezier(.34,1.56,.64,1);}
.a-slot.got .flag-big{font-size:28px;line-height:1;}
.a-slot.got .country-lbl{font-size:7.5px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;color:var(--amarelo);text-align:center;padding:0 2px;line-height:1.2;}
.a-slot.got.rara{border-color:#00e5ff;box-shadow:0 0 10px rgba(0,229,255,.4);}
.a-slot.got.ultra{border-color:#df9fff;box-shadow:0 0 12px rgba(199,0,255,.5);}
.a-slot.got.lendaria{border-color:var(--amarelo);box-shadow:0 0 20px rgba(255,215,0,.7);}
@keyframes popIn{0%{transform:scale(0) rotate(-10deg)}100%{transform:scale(1) rotate(0)}}

/* FLIP */
.reveal-center{display:flex;flex-direction:column;align-items:center;gap:18px;}
.sticker-wrap{width:220px;height:308px;perspective:1000px;cursor:pointer;}
.sticker-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.4,0,.2,1);}
.sticker-inner.flipped{transform:rotateY(180deg);}
.sticker-face,.sticker-back{position:absolute;inset:0;border-radius:18px;backface-visibility:hidden;overflow:hidden;}
.sticker-face{background:linear-gradient(160deg,#4a0090,#1a0035);border:3px solid var(--amarelo);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-shadow:0 16px 50px rgba(0,0,0,.5);}
.brand-watermark{font-family:'Bebas Neue',sans-serif;font-size:16px;letter-spacing:3px;color:rgba(255,215,0,.4);position:absolute;bottom:14px;}
.q-mark{font-size:80px;animation:pulse 1.6s ease-in-out infinite;}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
.tap-txt{font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.45);}
.sticker-face::before{content:'✦';position:absolute;top:16px;left:16px;font-size:16px;opacity:.3;}
.sticker-face::after{content:'✦';position:absolute;top:16px;right:16px;font-size:16px;opacity:.3;}
.sticker-back{transform:rotateY(180deg);}
.s-header{position:absolute;top:0;left:0;right:0;padding:10px 12px 8px;display:flex;justify-content:space-between;align-items:center;background:rgba(0,0,0,.35);}
.s-country{font-family:'Bebas Neue',sans-serif;font-size:16px;letter-spacing:1px;}
.s-num{font-family:'Bebas Neue',sans-serif;font-size:14px;color:rgba(255,255,255,.45);}
.s-big-emoji{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:90px;line-height:1;}
.s-footer{position:absolute;bottom:0;left:0;right:0;padding:10px 12px 14px;background:rgba(0,0,0,.4);text-align:center;}
.s-name{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:1.5px;line-height:1;}
.s-rarity{display:inline-block;padding:3px 10px;border-radius:20px;font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;margin-top:6px;}
.r-comum{background:rgba(255,255,255,.2);color:#eee;}
.r-rara{background:linear-gradient(90deg,#00e5ff,#0080ff);color:#000;}
.r-ultra{background:linear-gradient(90deg,#c700ff,#8b00ff);color:#fff;}
.r-lenda{background:linear-gradient(90deg,#b8860b,var(--amarelo),#ffe066);color:#1a0035;}
.sticker-back::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 35%,rgba(255,255,255,.14) 50%,transparent 65%);animation:shine 3.5s linear infinite;pointer-events:none;}
@keyframes shine{0%{transform:translateX(-150%) translateY(-150%)}100%{transform:translateX(150%) translateY(150%)}}
.reveal-success{background:rgba(0,230,118,.1);border:1px solid rgba(0,230,118,.3);border-radius:14px;padding:14px 18px;text-align:center;color:#00e676;font-weight:800;font-size:14px;line-height:1.5;display:none;}
.reveal-success.on{display:block;animation:fadeUp .4s ease;}
.lenda-reveal{background:rgba(255,215,0,.12);border:2px solid rgba(255,215,0,.5);border-radius:14px;padding:12px 16px;text-align:center;display:none;}

/* CONFETTI */
#confetti{position:fixed;inset:0;pointer-events:none;z-index:9999;display:none;}
.cf{position:absolute;width:9px;height:9px;opacity:0;animation:fall linear forwards;}
@keyframes fall{0%{opacity:1;transform:translateY(-15px) rotate(0)}100%{opacity:0;transform:translateY(105vh) rotate(600deg)}}

/* ADMIN */
.admin-link{text-align:center;color:rgba(255,255,255,.2);font-size:11px;cursor:pointer;letter-spacing:1px;}
.admin-link:hover{color:rgba(255,255,255,.45);}
.admin-tabs{display:flex;gap:6px;margin-bottom:12px;}
.admin-tab{flex:1;padding:9px 6px;border-radius:10px;border:none;cursor:pointer;font-family:'Bebas Neue',sans-serif;font-size:12px;letter-spacing:1px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.5);}
.admin-tab.on{background:rgba(255,215,0,.15);color:var(--amarelo);border:1px solid rgba(255,215,0,.3);}
.admin-stat{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px;}
.astat{background:rgba(0,0,0,.35);border:1.5px solid rgba(255,215,0,.2);border-radius:14px;padding:13px 11px;}
.astat.hi{background:rgba(255,215,0,.08);border-color:rgba(255,215,0,.4);}
.astat-val{font-family:'Bebas Neue',sans-serif;font-size:32px;color:var(--amarelo);line-height:1;}
.astat-lbl{font-size:11px;font-weight:800;color:rgba(255,255,255,.5);}
.arow{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:10px;margin-bottom:5px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);}
.codigo-row{display:flex;justify-content:space-between;align-items:center;padding:10px 13px;border-radius:11px;margin-bottom:6px;}
.cod-val{font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:3px;}
.cod-ok{background:rgba(0,230,118,.1);border:1px solid rgba(0,230,118,.25);}
.cod-used{background:rgba(255,70,70,.08);border:1px solid rgba(255,70,70,.2);}
.loading{text-align:center;padding:30px;color:rgba(255,255,255,.4);font-size:14px;}
.slot-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center center;display:block;padding:0;background:transparent;}
.a-slot.got .country-lbl{position:absolute;left:0;right:0;bottom:0;padding:18px 4px 6px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.85));font-size:8px;z-index:2;}
.a-slot.got .flag-big{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.card-img{width:100%;height:100%;object-fit:contain;object-position:center center;display:block;position:absolute;inset:0;padding:0;background:transparent;}
.s-big-emoji{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:90px;line-height:1;overflow:hidden;}
.s-big-emoji img.card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}

.slot-media,.card-media{position:absolute;inset:0;overflow:hidden;border-radius:inherit;z-index:1;}
