:root{
  --bg:#07060f; --panel:#100d22; --panel2:#171233; --line:#2a2255;
  --violet:#8b5cf6; --cyan:#22d3ee; --pink:#f43f9d; --text:#e8e6ff; --mute:#9a95c7;
  --cut:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:"Be Vietnam Pro",system-ui,sans-serif;line-height:1.5;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

/* nền động */
.bg-fx{position:fixed;inset:0;z-index:-1;overflow:hidden}
.bg-fx span{position:absolute;border-radius:50%;filter:blur(120px);opacity:.35}
.bg-fx span:nth-child(1){width:520px;height:520px;background:var(--violet);top:-120px;left:-120px;animation:float 14s ease-in-out infinite}
.bg-fx span:nth-child(2){width:480px;height:480px;background:var(--cyan);bottom:-160px;right:-120px;opacity:.22;animation:float 18s ease-in-out infinite reverse}
.bg-fx .grid{inset:0;width:auto;height:auto;border-radius:0;opacity:1;
  background-color:#05040b;background-image:url("../assets/champions-trophy.jpg?v=2");
  background-position:center center;background-size:cover;background-repeat:no-repeat;
  filter:brightness(.36) contrast(1.12) saturate(1.08);transform:scale(1.03);animation:champZoom 24s ease-in-out infinite alternate}
.bg-fx::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at 50% 40%,rgba(234,179,8,.06) 0%,rgba(16,13,34,.52) 55%,rgba(5,4,11,.88) 100%)}
@media(max-width:760px){
  .bg-fx .grid{background-position:76% center}
}
@keyframes champZoom{to{transform:scale(1.08)}}
@keyframes float{50%{transform:translate(60px,40px)}}

/* nav */
.nav{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:12px 5vw;
  background:rgba(7,6,15,.7);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px}
.logo{position:relative;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;overflow:hidden;
  background:linear-gradient(135deg,var(--violet),var(--cyan));box-shadow:0 0 18px rgba(139,92,246,.7)}
.logo b{font-family:"Chakra Petch",sans-serif;font-size:15px;color:#fff}
.logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;z-index:1}
.brand-name{font-family:"Chakra Petch",sans-serif;font-weight:800;font-size:15px;letter-spacing:.08em}
.brand-name em{font-style:normal;color:var(--cyan)}

/* buttons */
.btn{display:inline-block;font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:17px;letter-spacing:.08em;text-transform:uppercase;
  padding:12px 28px;cursor:pointer;border:0;transition:.25s;
  clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}
.btn-primary{background:linear-gradient(90deg,var(--violet),var(--pink));color:#fff}
.btn-primary:hover{filter:brightness(1.2);transform:translateY(-2px)}
.btn-ghost{background:var(--line);color:var(--text)}
.btn-ghost:hover{background:var(--cyan);color:#06121a}
.btn-zalo{background:#0068ff;color:#fff}
.btn-zalo:hover{background:#2a85ff;box-shadow:0 0 24px #0068ff}
.btn.wide{display:block;text-align:center;margin-top:18px}

/* hero */
.hero{text-align:center;padding:clamp(60px,10vw,120px) 5vw 50px}
.tag{font-family:"Chakra Petch",sans-serif;font-weight:700;letter-spacing:.35em;color:var(--cyan);margin-bottom:14px}
.hero h1{font-family:"Chakra Petch",sans-serif;font-weight:900;font-size:clamp(26px,4.1vw,52px);line-height:1.12;letter-spacing:.02em}
.hero h1 span{background:linear-gradient(90deg,var(--violet),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 18px rgba(139,92,246,.6))}
.sub{max-width:560px;margin:20px auto 30px;color:var(--mute)}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.stats{display:flex;justify-content:center;gap:clamp(20px,6vw,70px);margin-top:50px;flex-wrap:wrap}
.stats div{display:flex;flex-direction:column;align-items:center}
.stats b{font-family:"Chakra Petch",sans-serif;font-size:28px;color:var(--cyan)}
.stats span{color:var(--mute);font-size:13px;letter-spacing:.1em;text-transform:uppercase}

/* filters */
.wrap{max-width:1280px;margin:0 auto;padding:30px 5vw 80px}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;gap:10px;align-items:center;
  background:var(--panel);border:1px solid var(--line);padding:14px;
  clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}
.filters input,.filters select{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--text);padding:11px 12px;font:inherit;font-size:14px;outline:none;transition:.2s}
.filters input:focus,.filters select:focus{border-color:var(--violet);box-shadow:0 0 0 2px rgba(139,92,246,.3)}
.chk{display:flex;gap:6px;align-items:center;color:var(--mute);font-size:14px;white-space:nowrap}
.chk input{width:auto;accent-color:var(--violet)}
.count{margin:18px 0 12px;color:var(--mute);font-family:"Chakra Petch",sans-serif;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.empty{text-align:center;color:var(--mute);padding:60px 0}

/* cards */
.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px}
.card{background:var(--panel);border:1px solid var(--line);cursor:pointer;position:relative;transition:.3s;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));animation:in .5s both}
.card:hover,.card:focus-visible{transform:translateY(-6px);border-color:var(--violet);box-shadow:0 12px 40px rgba(139,92,246,.35);outline:none}
@keyframes in{from{opacity:0;transform:translateY(20px)}}
.thumb{position:relative;aspect-ratio:4/3;background:radial-gradient(circle at 50% 30%,#2b1f66,#0b0820);overflow:hidden}
.thumb>img:first-child{width:100%;height:100%;object-fit:cover;object-position:top;transition:.5s}
.card:hover .thumb>img:first-child{transform:scale(1.07)}
.thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,rgba(16,13,34,.95))}
.code{position:absolute;top:10px;left:10px;z-index:2;font-family:"Chakra Petch",sans-serif;font-size:11px;padding:4px 10px;background:rgba(7,6,15,.75);border:1px solid var(--cyan);color:var(--cyan)}
.rank-ico{position:absolute;right:10px;bottom:8px;width:54px;z-index:2;filter:drop-shadow(0 0 8px #000)}
.sold-badge{position:absolute;z-index:3;inset:auto 0 40% 0;text-align:center;background:rgba(244,63,157,.9);font-family:"Chakra Petch",sans-serif;font-weight:800;padding:6px;transform:rotate(-6deg) scale(1.1)}
.card.sold{filter:grayscale(.8);opacity:.7}
.card-body{padding:14px 16px 16px}
.card h3{font-family:"Chakra Petch",sans-serif;font-size:18px;margin-bottom:6px}
.row{display:flex;gap:14px;color:var(--mute);font-size:13px}
.agents-mini{display:flex;margin:10px 0}
.agents-mini img{width:30px;height:30px;border-radius:50%;background:var(--panel2);border:2px solid var(--panel);margin-right:-6px}
.foot-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.price{font-family:"Chakra Petch",sans-serif;font-size:19px;color:var(--cyan);text-shadow:0 0 12px rgba(34,211,238,.5)}
.more{font-family:"Chakra Petch",sans-serif;font-weight:700;color:var(--violet);letter-spacing:.06em}

/* modal */
dialog{margin:auto;width:min(960px,94vw);max-height:92vh;overflow:auto;background:var(--panel);color:var(--text);border:1px solid var(--violet);
  box-shadow:0 0 60px rgba(139,92,246,.45);padding:0}
dialog::backdrop{background:rgba(3,2,10,.8);backdrop-filter:blur(6px)}
dialog[open]{animation:pop .3s}
@keyframes pop{from{opacity:0;transform:scale(.94)}}
.close{position:absolute;top:10px;right:10px;z-index:5;width:36px;height:36px;background:var(--panel2);color:var(--text);border:1px solid var(--line);cursor:pointer;font-size:16px}
.close:hover{background:var(--pink)}
.m-body{display:grid;grid-template-columns:1.2fr 1fr}
.m-gallery{background:#0b0820;padding:14px}
#mMain{width:100%;aspect-ratio:4/3;object-fit:contain;background:radial-gradient(circle,#2b1f66,#0b0820)}
.thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto}
.thumbs img{width:70px;height:54px;object-fit:cover;opacity:.55;cursor:pointer;border:2px solid transparent;flex:none}
.thumbs img.on,.thumbs img:hover{opacity:1;border-color:var(--cyan)}
.m-info{padding:26px 24px}
.m-info .code{position:static;display:inline-block}
.m-info h2{font-family:"Chakra Petch",sans-serif;font-size:26px;margin:10px 0 4px}
.m-info .price{font-size:28px;display:block;margin-bottom:12px}
.meta{list-style:none;color:var(--mute);margin-bottom:14px}
.meta b{color:var(--text)}
.m-info h4{font-family:"Chakra Petch",sans-serif;letter-spacing:.15em;color:var(--violet);text-transform:uppercase;margin-bottom:8px}
.agents{display:flex;flex-wrap:wrap;gap:6px}
.ag{display:flex;align-items:center;gap:6px;background:var(--panel2);border:1px solid var(--line);padding:3px 10px 3px 3px;border-radius:30px;font-size:13px}
.ag img{width:24px;height:24px;border-radius:50%}
.desc{margin-top:14px;color:var(--mute);font-size:14px;white-space:pre-line}

.foot{text-align:center;padding:30px;color:var(--mute);border-top:1px solid var(--line);font-size:13px}

@media(max-width:900px){
  .filters{grid-template-columns:1fr 1fr}
  .filters input[type=search]{grid-column:1/-1}
  .m-body{grid-template-columns:1fr}
  .brand-name{font-size:12px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}


/* ===== page title (favorites) ===== */
.page-title{font-family:"Chakra Petch",sans-serif;font-weight:900;font-size:clamp(26px,4vw,44px);margin-top:20px}
.page-title span{background:linear-gradient(90deg,var(--violet),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.sub.left{margin:10px 0 0;max-width:none}
.empty .btn{margin-top:4px}

/* ===== heart ===== */
svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.heart{position:absolute;top:8px;right:8px;z-index:4;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:rgba(7,6,15,.7);border:1px solid var(--line);color:#fff;backdrop-filter:blur(4px);transition:.2s}
.heart svg{width:20px;height:20px}
.heart:hover{border-color:var(--pink);transform:scale(1.12)}
.heart.on{color:var(--pink);border-color:var(--pink);box-shadow:0 0 14px rgba(244,63,157,.7)}
.heart.on svg,.fav-btn.on svg{fill:var(--pink)}
.fav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:11px;cursor:pointer;
  background:transparent;border:1px solid var(--line);color:var(--text);font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:16px;letter-spacing:.08em;text-transform:uppercase;transition:.2s}
.fav-btn svg{width:20px;height:20px}
.fav-btn:hover,.fav-btn.on{border-color:var(--pink);color:var(--pink)}

/* ===== dock (nút nổi góc phải) ===== */
.dock{position:fixed;right:18px;bottom:18px;z-index:30;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.dock-list{display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}
.dock-item{position:relative;display:flex;align-items:center;gap:10px;padding:11px 20px 11px 16px;cursor:pointer;
  background:rgba(16,13,34,.92);border:1px solid var(--line);color:var(--text);backdrop-filter:blur(10px);
  font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:16px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;
  border-radius:40px;box-shadow:0 6px 24px rgba(0,0,0,.5);
  opacity:0;transform:translateY(14px) scale(.9);transition:.25s}
.dock-item svg{width:22px;height:22px;color:var(--cyan)}
.dock-item:hover,.dock-item.active{border-color:var(--violet);box-shadow:0 0 20px rgba(139,92,246,.6);background:linear-gradient(90deg,rgba(139,92,246,.35),rgba(16,13,34,.95))}
.dock.open .dock-list{pointer-events:auto}
.dock.open .dock-item{opacity:1;transform:none}
.dock.open .dock-item:nth-child(4){transition-delay:.03s}
.dock.open .dock-item:nth-child(3){transition-delay:.06s}
.dock.open .dock-item:nth-child(2){transition-delay:.09s}
.dock.open .dock-item:nth-child(1){transition-delay:.12s}
.badge{font-style:normal;font-family:"Chakra Petch",sans-serif;font-size:11px;min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border-radius:10px;background:var(--pink);color:#fff}
.dock-toggle{width:60px;height:60px;border-radius:50%;border:0;cursor:pointer;color:#fff;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--violet),var(--pink));box-shadow:0 0 0 0 rgba(139,92,246,.7),0 6px 24px rgba(0,0,0,.5);animation:pulse 2.4s infinite;transition:transform .25s}
.dock-toggle svg{width:26px;height:26px}
.dock.open .dock-toggle{animation:none;transform:rotate(90deg)}
@keyframes pulse{to{box-shadow:0 0 0 18px rgba(139,92,246,0),0 6px 24px rgba(0,0,0,.5)}}

/* ===== bảng liên hệ ===== */
dialog.contact{margin:auto;width:min(480px,92vw);background:#fff;color:#444;border:0;border-radius:12px;padding:26px 24px 20px;box-shadow:0 0 60px rgba(139,92,246,.5)}
dialog.contact::backdrop{background:rgba(3,2,10,.8);backdrop-filter:blur(6px)}
dialog.contact[open]{animation:pop .3s}
.contact h3{text-align:center;font-weight:600;font-size:16px;margin-bottom:14px}
.contact ul{padding-left:20px;display:grid;gap:10px;font-size:15px;line-height:1.55}
.divider{position:relative;height:1px;background:#e5e5e5;margin:22px 0}
.divider i{position:absolute;left:50%;top:50%;width:18px;height:18px;transform:translate(-50%,-50%) rotate(45deg);background:var(--cyan);border:3px solid #999}
.cbtn{position:relative;display:flex;align-items:center;justify-content:center;height:50px;border-radius:30px;font-weight:600;margin-top:12px;transition:.2s}
.cbtn:hover{transform:translateY(-2px);filter:brightness(1.1)}
.cbtn.fb{background:#0866ff;color:#fff}
.cbtn.zl{background:#fff;color:#0000cd;border:2px solid #0866ff}
.cbtn img{position:absolute;left:14px;width:36px;height:36px;border-radius:50%;object-fit:cover}
.cbtn.zl b{position:absolute;left:14px;width:36px;height:36px;border-radius:9px;background:#0068ff;color:#fff;display:grid;place-items:center;font-size:12px}
.cclose{display:block;margin:14px auto 0;background:none;border:0;color:#888;cursor:pointer;font:inherit;font-size:14px}
.cclose:hover{color:var(--pink)}
@media(max-width:600px){.dock{right:12px;bottom:12px}}

/* ===== menu trên thanh nav ===== */
.menu{display:flex;align-items:center;gap:clamp(14px,3vw,38px)}
.menu a,.menu button{position:relative;display:flex;align-items:center;gap:6px;background:none;border:0;cursor:pointer;color:var(--text);
  font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:17px;letter-spacing:.1em;text-transform:uppercase;padding:8px 2px;white-space:nowrap;transition:color .2s}
.menu a::after,.menu button::after{content:"";position:absolute;left:0;bottom:2px;width:0;height:2px;background:linear-gradient(90deg,var(--violet),var(--cyan));transition:width .25s}
.menu a:hover,.menu button:hover,.menu a.active{color:var(--cyan)}
.menu a:hover::after,.menu button:hover::after,.menu a.active::after{width:100%}
@media(max-width:760px){
  .nav{flex-wrap:wrap;gap:6px}
  .menu{width:100%;overflow-x:auto;gap:18px}
  .menu a,.menu button{font-size:15px}
}

/* ===== fix badge + mobile ===== */
[hidden]{display:none!important}
.heart svg{display:block;flex:none}
@media(max-width:760px){
  .dock{display:none}
  .nav{padding:10px 4vw 0}
  .menu{justify-content:space-between;gap:4px;overflow:visible;border-top:1px solid var(--line);padding:2px 0}
  .menu a,.menu button{font-size:13px;letter-spacing:.04em;padding:9px 2px}
  .menu a::after,.menu button::after{bottom:0}
  .logo{width:38px;height:38px}
  .brand-name{font-size:12px}
  .hero{padding:44px 5vw 30px}
  .sub{font-size:14px}
  .hero-actions .btn{padding:11px 22px;font-size:15px}
  .stats{margin-top:34px;gap:22px}
  .stats b{font-size:22px}
  .wrap{padding:20px 4vw 60px}
  .filters{padding:10px;gap:8px}
  .filters input,.filters select{font-size:16px;padding:10px}
  .chk{grid-column:1/-1}
  .grid-cards{grid-template-columns:repeat(2,1fr);gap:12px}
  .card{clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}
  .card h3{font-size:14px}
  .card-body{padding:10px}
  .row{font-size:12px;gap:8px}
  .agents-mini img{width:24px;height:24px}
  .agents-mini img:nth-child(n+5){display:none}
  .price{font-size:14px}
  .more{display:none}
  .code{font-size:10px;padding:3px 7px}
  .rank-ico{width:38px}
  .heart{width:32px;height:32px;top:6px;right:6px}
  .heart svg{width:17px;height:17px}
  .thumb{aspect-ratio:1/1}
  dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border:0}
  .m-gallery{padding:10px}
  .m-info{padding:16px}
  .m-info h2{font-size:22px}
  .m-info .price{font-size:24px}
  .close{position:fixed}
  .btn{padding:11px 22px}
  dialog.contact{width:92vw;height:auto;max-height:90dvh;max-width:92vw}
}
@media(max-width:380px){.grid-cards{gap:8px}.menu a,.menu button{font-size:12px}}

.dock-toggle svg,.dock-item svg{pointer-events:none}

/* ===== CẬP NHẬT GIAO DIỆN MỚI (DAO, SÚNG, DROP MAIL, STATS) ===== */
.type-pill{position:absolute;top:10px;left:76px;z-index:2;font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:11px;padding:3px 8px;border-radius:4px;letter-spacing:.05em;text-transform:uppercase;backdrop-filter:blur(4px)}
.type-pill.drop,.type-pill.drop-confirm{background:rgba(14,165,233,.22);border:1px solid #38bdf8;color:#7dd3fc}
.type-pill.drop-welcome{background:rgba(16,185,129,.22);border:1px solid #34d399;color:#6ee7b7}
.type-pill.drop-back{background:rgba(244,63,157,.22);border:1px solid var(--pink);color:#f9a8d4}
.type-pill.dead{background:rgba(249,115,22,.22);border:1px solid #fb923c;color:#fdba74}

.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.card-head h3{margin-bottom:0}
.card-lv{font-family:"Chakra Petch",sans-serif;font-size:12px;color:var(--mute);background:var(--panel2);padding:2px 6px;border-radius:3px;border:1px solid var(--line)}

.card-specs{display:flex;gap:8px;margin-bottom:8px}
.spec-tag{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:14px;padding:3px 10px;border-radius:4px;background:var(--panel2);border:1px solid var(--line)}
.spec-tag.dao{border-color:rgba(139,92,246,.5);color:#d8b4fe}
.spec-tag.sung{border-color:rgba(34,211,238,.4);color:#67e8f9}
.spec-tag b{color:#fff;font-family:"Chakra Petch",sans-serif;font-size:13px}

.card-sub-specs{display:flex;gap:12px;color:var(--mute);font-size:12px;margin-bottom:10px}
.card-sub-specs b{color:var(--text)}

/* Modal Stats Grid */
.m-top-tags{display:flex;gap:10px;align-items:center;margin-bottom:6px}
.type-badge{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:13px;padding:4px 10px;border-radius:4px;text-transform:uppercase}
.type-badge.drop,.type-badge.drop-confirm{background:rgba(14,165,233,.22);border:1px solid #38bdf8;color:#7dd3fc}
.type-badge.drop-welcome{background:rgba(16,185,129,.22);border:1px solid #34d399;color:#6ee7b7}
.type-badge.drop-back{background:rgba(244,63,157,.22);border:1px solid var(--pink);color:#f9a8d4}
.type-badge.dead{background:rgba(249,115,22,.22);border:1px solid #fb923c;color:#fdba74}

.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}
.stat-box{background:var(--panel2);border:1px solid var(--line);padding:8px 12px;border-radius:6px;display:flex;flex-direction:column}
.stat-box span{color:var(--mute);font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.stat-box b{font-family:"Chakra Petch",sans-serif;font-size:17px;color:var(--cyan);margin-top:2px}

@media(max-width:760px){
  .type-pill{left:60px;font-size:9px;padding:2px 5px}
  .spec-tag{font-size:12px;padding:2px 6px}
  .stat-grid{grid-template-columns:repeat(3,1fr);gap:6px}
  .stat-box{padding:6px 8px}
  .stat-box b{font-size:14px}
}

/* loại acc nằm dưới mã id */
.type-pill{left:10px;top:40px}
@media(max-width:760px){.type-pill{left:10px;top:30px}}

.filters{grid-template-columns:2fr 1fr 1fr 1fr 1fr auto}
@media(max-width:900px){.filters{grid-template-columns:1fr 1fr}}

@media(max-width:760px){.menu{gap:2px}.menu a,.menu button{font-size:12px;letter-spacing:.02em}}
@media(max-width:380px){.menu a,.menu button{font-size:10.5px}}

/* ===== bảng nhỏ Đăng nhập Admin Account ===== */
dialog.admin-login{margin:auto;width:min(360px,90vw);height:auto;max-height:none;background:var(--panel);color:var(--text);border:1px solid var(--violet);border-radius:8px;padding:22px 20px;box-shadow:0 0 40px rgba(139,92,246,.5)}
dialog.admin-login form{display:flex;flex-direction:column;gap:12px}
dialog.admin-login h3{font-family:"Chakra Petch",sans-serif;font-size:16px;text-align:center;color:var(--cyan);margin-bottom:4px}
dialog.admin-login input{background:var(--panel2);border:1px solid var(--line);color:var(--text);padding:11px 12px;font:inherit;font-size:14px;border-radius:4px;outline:none}
dialog.admin-login input:focus{border-color:var(--violet);box-shadow:0 0 0 2px rgba(139,92,246,.3)}
.adm-err{color:var(--pink);font-size:13px;text-align:center}
.adm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.adm-actions .btn{padding:10px 14px;font-size:15px;text-align:center}


/* ===== CẬP NHẬT MENU 6 MỤC & FOOTER 3/7 ===== */
.menu{gap:clamp(10px,1.8vw,24px)}
.dock.open .dock-item:nth-child(7){transition-delay:.01s}
.dock.open .dock-item:nth-child(6){transition-delay:.03s}
.dock.open .dock-item:nth-child(5){transition-delay:.05s}
.dock.open .dock-item:nth-child(4){transition-delay:.07s}
.dock.open .dock-item:nth-child(3){transition-delay:.09s}
.dock.open .dock-item:nth-child(2){transition-delay:.11s}
.dock.open .dock-item:nth-child(1){transition-delay:.13s}

.foot{background:rgba(5,4,12,.94);border-top:1px solid var(--line);padding:56px 5vw 24px;text-align:left}
.foot-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:3fr 7fr;gap:clamp(28px,5vw,72px);align-items:center}
.foot-left{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}
.foot-logo{position:relative;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;overflow:hidden;
  background:linear-gradient(135deg,var(--violet),var(--cyan));box-shadow:0 0 28px rgba(139,92,246,.65);border:2px solid rgba(34,211,238,.5)}
.foot-logo b{font-family:"Chakra Petch",sans-serif;font-size:28px;color:#fff}
.foot-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;z-index:1}
.foot-slogan{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:15px;letter-spacing:.08em;color:var(--cyan);text-shadow:0 0 12px rgba(34,211,238,.4)}

.foot-right{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}
.foot-col{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.foot-col h4{font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:16px;letter-spacing:.06em;color:#fff;text-transform:uppercase;margin-bottom:4px}
.foot-col a,.foot-col button{background:none;border:0;padding:0;color:var(--mute);font:inherit;font-size:15px;font-weight:500;cursor:pointer;text-align:left;transition:color .2s,transform .2s}
.foot-col a:hover,.foot-col button:hover{color:var(--cyan);transform:translateX(3px)}
.foot-copy{max-width:1280px;margin:44px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.07);text-align:center;color:var(--mute);font-size:13px}

@media(max-width:760px){
  .menu{display:flex;flex-wrap:wrap;justify-content:center;gap:2px 12px;padding:6px 0;text-align:center}
  .menu a,.menu button{justify-content:center;font-size:13px;padding:6px 4px;letter-spacing:.03em}
  .foot{padding:40px 5vw 22px}
  .foot-inner{grid-template-columns:1fr;gap:32px}
  .foot-logo{width:92px;height:92px}
  .foot-slogan{font-size:14px}
  .foot-right{grid-template-columns:repeat(2,1fr);gap:24px 16px}
  .foot-col h4{font-size:15px}
  .foot-col a,.foot-col button{font-size:14px}
  .foot-copy{margin-top:30px}
}

/* ===== CHỐNG TRÀN NGANG & TỐI ƯU MOBILE/TABLET ===== */
body{max-width:100%;overflow-x:clip}
.card,.filters>*,.foot-col,.stat-box{min-width:0}
@media(max-width:1024px){
  .nav{flex-wrap:wrap;gap:6px}
  .menu{width:100%;justify-content:center;flex-wrap:wrap;gap:4px 16px;border-top:1px solid var(--line);padding-top:6px}
}
@media(max-width:760px){
  .card-specs{flex-wrap:wrap;gap:4px}
  .spec-tag{font-size:11.5px;padding:2px 6px}
  .card-sub-specs{gap:8px;font-size:11.5px}
}

/* ===== 1. HẠT NĂNG LƯỢNG SẢNH CHỜ (LOBBY PARTICLES) ===== */
.particles-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}

/* ===== 2. HERO BANNER NHÂN VẬT NỔI (AGENT SPOTLIGHT KHUNG CHỮ NHẬT LỚN) ===== */
.hero{padding:clamp(32px,4.5vw,64px) 5vw 26px;text-align:left}
.hero-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:.94fr 1.06fr;gap:clamp(16px,2.2vw,30px);align-items:center}
.hero-copy .sub{margin:18px 0 28px;max-width:530px}
.hero-copy .hero-actions{justify-content:flex-start}
.hero-copy .stats{justify-content:flex-start;margin-top:38px;gap:clamp(24px,3.8vw,52px)}
.hero-copy .stats div{align-items:flex-start}

.hero-stage{
  --stage-accent:#38bdf8;
  --stage-border:rgba(56,189,248,.5);
  --stage-glow:rgba(56,189,248,.28);
  --stage-bg:radial-gradient(ellipse at 50% 45%,rgba(56,189,248,.24) 0%,rgba(14,22,46,.82) 62%,rgba(7,6,15,.95) 100%);
  position:relative;width:100%;height:clamp(340px,35vw,440px);display:flex;align-items:center;justify-content:center;user-select:none
}
.hero-stage[data-agent="jett"]{
  --stage-accent:#7dd3fc;
  --stage-border:rgba(125,211,252,.55);
  --stage-glow:rgba(56,189,248,.32);
  --stage-bg:radial-gradient(ellipse at 50% 45%,rgba(125,211,252,.26) 0%,rgba(12,28,52,.84) 60%,rgba(7,6,15,.95) 100%)
}
.hero-stage[data-agent="omen"]{
  --stage-accent:#818cf8;
  --stage-border:rgba(99,102,241,.55);
  --stage-glow:rgba(76,29,149,.45);
  --stage-bg:radial-gradient(ellipse at 50% 50%,rgba(76,29,149,.42) 0%,rgba(15,10,36,.9) 58%,rgba(4,3,10,.98) 100%)
}
.hero-stage[data-agent="clove"]{
  --stage-accent:#f472b6;
  --stage-border:rgba(244,63,157,.55);
  --stage-glow:rgba(232,121,249,.32);
  --stage-bg:radial-gradient(ellipse at 50% 45%,rgba(244,63,157,.28) 0%,rgba(46,12,56,.85) 60%,rgba(7,6,15,.95) 100%)
}
.hero-stage[data-agent="neon"]{
  --stage-accent:#38bdf8;
  --stage-border:rgba(56,189,248,.65);
  --stage-glow:rgba(14,165,233,.38);
  --stage-bg:radial-gradient(ellipse at 50% 45%,rgba(14,165,233,.32) 0%,rgba(12,24,62,.86) 58%,rgba(7,6,15,.95) 100%)
}
.hero-stage[data-agent="iso"]{
  --stage-accent:#c084fc;
  --stage-border:rgba(168,85,247,.6);
  --stage-glow:rgba(168,85,247,.36);
  --stage-bg:radial-gradient(ellipse at 50% 48%,rgba(168,85,247,.32) 0%,rgba(28,12,54,.86) 60%,rgba(7,6,15,.95) 100%)
}

.stage-rect{
  position:absolute;inset:16px 0 22px 0;overflow:hidden;
  background:var(--stage-bg);
  border:1.5px solid var(--stage-border);
  box-shadow:0 12px 44px rgba(0,0,0,.65),0 0 36px var(--stage-glow),inset 0 0 38px var(--stage-glow);
  clip-path:polygon(22px 0,100% 0,100% calc(100% - 22px),calc(100% - 22px) 100%,0 100%,0 22px);
  transition:border-color .35s,box-shadow .35s,background .35s
}
.stage-rect::before{
  content:"";position:absolute;top:0;left:0;width:85px;height:3px;background:var(--stage-accent);z-index:3;box-shadow:0 0 12px var(--stage-accent)
}
.stage-rect::after{
  content:"";position:absolute;bottom:0;right:0;width:85px;height:3px;background:var(--stage-accent);z-index:3;box-shadow:0 0 12px var(--stage-accent)
}
.stage-fx-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.stage-vignette{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(ellipse at 50% 50%,transparent 48%,rgba(5,4,12,.72) 100%)}

.agent-bg{position:absolute;inset:0;margin:auto;height:92%;max-height:360px;object-fit:contain;opacity:.16;z-index:1;
  filter:drop-shadow(0 0 18px var(--stage-accent));pointer-events:none;transition:opacity .25s,transform .35s}
.agent-portrait{position:relative;z-index:3;height:104%;max-height:445px;object-fit:contain;
  filter:drop-shadow(0 14px 28px rgba(0,0,0,.8)) drop-shadow(0 0 24px var(--stage-glow));
  animation:agentFloat 4.5s ease-in-out infinite;transition:opacity .22s,transform .28s,filter .35s}
@keyframes agentFloat{50%{transform:translateY(-10px)}}
.hero-stage.switching .agent-portrait,.hero-stage.switching .agent-bg{opacity:0;transform:scale(.95) translateY(8px)}

.agent-caption{position:absolute;left:18px;bottom:38px;z-index:4;background:rgba(7,6,15,.84);border-left:3px solid var(--stage-accent);
  padding:6px 14px;backdrop-filter:blur(8px);box-shadow:0 6px 20px rgba(0,0,0,.5);transition:border-color .3s}
.agent-role{display:block;font-size:10px;letter-spacing:.22em;color:var(--stage-accent);font-family:"Chakra Petch",sans-serif;font-weight:700;transition:color .3s}
.agent-name{font-family:"Chakra Petch",sans-serif;font-size:20px;letter-spacing:.08em;color:#fff}

.agent-dots{position:absolute;bottom:0;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:8px;
  background:rgba(16,13,34,.92);border:1px solid var(--stage-border);padding:5px 12px;border-radius:30px;backdrop-filter:blur(8px);
  box-shadow:0 6px 20px rgba(0,0,0,.55)}
.agent-dot{width:34px;height:34px;border-radius:50%;border:1.5px solid transparent;background:var(--panel2);padding:0;cursor:pointer;overflow:hidden;opacity:.55;transition:.2s}
.agent-dot img{width:100%;height:100%;object-fit:cover}
.agent-dot:hover,.agent-dot.active{opacity:1;border-color:var(--stage-accent);transform:scale(1.12);box-shadow:0 0 12px var(--stage-glow)}

/* ===== 3. HÀO QUANG THEO RANK & VỆT SÁNG QUÉT NGANG THẺ ACC ===== */
.thumb .shine{position:absolute;top:0;left:-120%;width:65%;height:100%;z-index:3;pointer-events:none;
  background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.26) 50%,transparent 80%);transform:skewX(-20deg);transition:left .65s ease}
.card:hover .thumb .shine{left:140%}

.card.tier-radiant{border-color:rgba(250,204,21,.55);box-shadow:0 0 22px rgba(250,204,21,.16)}
.card.tier-radiant:hover{border-color:#fde047;box-shadow:0 12px 38px rgba(250,204,21,.42)}
.card.tier-radiant .rank-ico{filter:drop-shadow(0 0 12px rgba(250,204,21,.9))}

.card.tier-immortal{border-color:rgba(244,63,94,.55);box-shadow:0 0 20px rgba(244,63,94,.16)}
.card.tier-immortal:hover{border-color:#fb7185;box-shadow:0 12px 38px rgba(244,63,94,.42)}
.card.tier-immortal .rank-ico{filter:drop-shadow(0 0 12px rgba(244,63,94,.9))}

.card.tier-ascendant{border-color:rgba(16,185,129,.5)}
.card.tier-ascendant:hover{border-color:#34d399;box-shadow:0 12px 36px rgba(16,185,129,.35)}
.card.tier-ascendant .rank-ico{filter:drop-shadow(0 0 10px rgba(52,211,153,.85))}

.card.tier-diamond{border-color:rgba(192,132,252,.5)}
.card.tier-diamond:hover{border-color:#c084fc;box-shadow:0 12px 36px rgba(192,132,252,.38)}
.card.tier-diamond .rank-ico{filter:drop-shadow(0 0 10px rgba(192,132,252,.85))}

.card.tier-platinum:hover{border-color:var(--cyan);box-shadow:0 12px 34px rgba(34,211,238,.32)}
.card.tier-gold .rank-ico{filter:drop-shadow(0 0 8px rgba(251,191,36,.7))}

/* ===== 4. DẢI HUD THƯƠNG HIỆU & 4 TRỤ CỘT ĐẶC QUYỀN TRÊN FOOTER ===== */
.vct-wrap{max-width:1280px;margin:0 auto 48px}
.vct-ticker{display:flex;align-items:center;position:relative;overflow:hidden;
  background:linear-gradient(90deg,rgba(12,18,38,.94),rgba(20,14,44,.94));
  border:1px solid rgba(56,189,248,.32);margin-bottom:20px;
  box-shadow:0 6px 24px rgba(0,0,0,.45),inset 0 0 20px rgba(34,211,238,.06);
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px))}
.vct-badge{flex:none;display:inline-flex;align-items:center;padding:11px 18px;
  background:linear-gradient(135deg,var(--cyan),var(--violet));color:#05060f;
  font-family:"Chakra Petch",sans-serif;font-weight:800;font-size:13px;letter-spacing:.12em;
  clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);z-index:2}
.vct-ticker-viewport{flex:1;overflow:hidden;padding:10px 0}
.vct-track{display:flex;align-items:center;gap:28px;width:max-content;animation:vctScroll 32s linear infinite;
  font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.1em;color:#e0f2fe;text-transform:uppercase}
.vct-track i{font-style:normal;color:var(--cyan);font-size:12px;filter:drop-shadow(0 0 6px var(--cyan))}
@keyframes vctScroll{to{transform:translateX(-50%)}}

.vct-features{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.vct-card{position:relative;display:flex;flex-direction:column;justify-content:flex-start;
  background:linear-gradient(160deg,rgba(19,15,42,.92) 0%,rgba(10,8,24,.95) 100%);
  border:1px solid rgba(139,92,246,.32);padding:18px 18px 20px;overflow:hidden;transition:.28s;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px))}
.vct-card::before{content:"";position:absolute;top:0;left:0;width:64px;height:2.5px;
  background:linear-gradient(90deg,var(--cyan),var(--violet));box-shadow:0 0 10px var(--cyan)}
.vct-card:hover{border-color:var(--cyan);transform:translateY(-4px);
  box-shadow:0 12px 30px rgba(34,211,238,.18),inset 0 0 24px rgba(139,92,246,.12)}
.vct-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.vct-ico{width:38px;height:38px;display:grid;place-items:center;
  background:rgba(34,211,238,.1);border:1px solid rgba(34,211,238,.4);color:var(--cyan);
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  box-shadow:0 0 14px rgba(34,211,238,.2);transition:.25s}
.vct-ico svg{width:20px;height:20px}
.vct-card:hover .vct-ico{background:var(--cyan);color:#06101e;box-shadow:0 0 18px var(--cyan)}
.vct-num{font-style:normal;font-family:"Chakra Petch",sans-serif;font-weight:700;font-size:12px;
  letter-spacing:.14em;color:rgba(154,149,199,.6)}
.vct-card strong{display:block;font-family:"Chakra Petch",sans-serif;font-weight:800;font-size:16px;
  letter-spacing:.05em;color:#fff;margin-bottom:5px}
.vct-card p{font-size:12.5px;color:var(--mute);line-height:1.45}

@media(max-width:980px){
  .vct-features{grid-template-columns:repeat(2,1fr);gap:12px}
}
@media(max-width:860px){
  .hero{text-align:center;padding:32px 4vw 20px}
  .hero-inner{grid-template-columns:1fr;gap:22px}
  .hero-copy .sub{margin:14px auto 22px}
  .hero-copy .hero-actions,.hero-copy .stats{justify-content:center}
  .hero-copy .stats div{align-items:center}
  .hero-stage{height:290px}
  .vct-wrap{margin-bottom:32px}
}
@media(max-width:560px){
  .vct-badge{padding:10px 12px;font-size:11.5px}
  .vct-features{grid-template-columns:1fr;gap:10px}
}

/* ===== CHIA 2 CỘT CON CHO MỤC DỊCH VỤ Ở FOOTER ===== */
.foot-right{grid-template-columns:1.1fr .8fr 1.4fr}
.foot-subgrid{display:grid;grid-template-columns:repeat(2,max-content);gap:12px 32px}
@media(max-width:760px){
  .foot-right{grid-template-columns:1fr 1fr}
  .foot-col:last-child{grid-column:1/-1}
  .foot-subgrid{grid-template-columns:repeat(2,1fr);width:100%;gap:10px 16px}
}

/* ===== 5. HAI BANNER VIDEO NGANG (TOP JETT KUNAI & BOTTOM CLOVE) ===== */
.top-vid-banner{
  position:relative;width:100%;height:clamp(260px,34vw,430px);overflow:hidden;
  background:#030308;border-bottom:1px solid rgba(56,189,248,.22);user-select:none
}
.top-vid-media{
  width:100%;height:100%;object-fit:cover;object-position:center 28%;
  display:block;filter:url(#sharpVideo) brightness(1.06) contrast(1.08) saturate(1.08);
  transform:translateZ(0)
}
.top-vid-banner::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,6,15,.42) 0%,rgba(5,4,12,.1) 45%,rgba(7,6,15,.8) 100%)
}
.top-vid-overlay{
  position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;padding:18px 4vw 6px
}
.top-vid-sub{
  font-family:"Be Vietnam Pro",sans-serif;font-weight:600;
  font-size:clamp(10.5px,1.25vw,15px);letter-spacing:.28em;text-transform:uppercase;
  color:rgba(240,249,255,.92);margin-bottom:clamp(6px,1vw,12px);
  text-shadow:0 2px 10px rgba(0,0,0,.95),0 0 14px rgba(56,189,248,.55)
}
.top-vid-title{
  font-family:"Chakra Petch",sans-serif;font-weight:800;font-style:italic;
  font-size:clamp(30px,5.8vw,72px);line-height:1.02;letter-spacing:.04em;
  text-transform:uppercase;color:#fff;
  text-shadow:0 8px 28px rgba(0,0,0,.95),0 0 26px rgba(56,189,248,.32)
}
.top-vid-title span{display:inline-block}

.wrap{padding-bottom:36px}
.bottom-vid-banner{
  position:relative;width:100%;height:clamp(155px,18.5vw,245px);overflow:hidden;
  background:#070510;border-top:1px solid rgba(244,63,157,.28);border-bottom:1px solid rgba(139,92,246,.32)
}
.bottom-vid-media{
  width:100%;height:100%;object-fit:cover;object-position:center 42%;
  display:block;filter:url(#sharpVideo) brightness(.98) contrast(1.06) saturate(1.08);
  transform:translateZ(0)
}
.bottom-vid-banner::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,6,15,.44) 0%,transparent 25%,transparent 75%,rgba(5,4,12,.64) 100%)
}
.foot{padding-top:26px}

@media(max-width:760px){
  .top-vid-banner{height:225px}
  .top-vid-sub{letter-spacing:.2em}
  .bottom-vid-banner{height:140px}
}
