:root{--bg:#07111d;--panel:#0d1b2a;--line:#25364a;--text:#ecf4ff;--muted:#9db0c3;--gold:#f3c35b;--red:#ff4a3d;--cyan:#06f9e3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#06101c,#0b1726 58%,#07111d);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}
@view-transition{navigation:auto}::view-transition-old(root){animation:fadeOut .18s ease both}::view-transition-new(root){animation:fadeIn .25s ease both}@keyframes fadeOut{to{opacity:.25;transform:scale(.995)}}@keyframes fadeIn{from{opacity:.25;transform:translateY(8px)}}
.top{height:68px;display:flex;align-items:center;gap:18px;padding:0 24px;background:rgba(8,21,35,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(10px)}
.logo{font-weight:900;color:#60b7ff;min-width:160px}.logo small{display:block;color:#fff;font-size:11px;letter-spacing:2px}
.searchTop{margin-left:auto;background:#0e1d2d;border:1px solid var(--line);border-radius:22px;padding:10px 16px;color:#fff;width:min(360px,34vw)}
.wrap{max-width:1500px;margin:auto;padding:0 18px 18px}
.indexBanner{height:min(500px,48vw);min-height:360px;border-radius:0 0 18px 18px;border:1px solid var(--line);border-top:0;position:relative;overflow:hidden;margin-bottom:18px;background:#081523}
.indexBanner:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 68% 46%,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 30%,rgba(7,17,29,.18) 50%,rgba(7,17,29,.58) 76%,rgba(7,17,29,.88) 100%),linear-gradient(90deg,rgba(6,13,22,.92) 0%,rgba(6,13,22,.58) 24%,rgba(6,13,22,0) 54%,rgba(6,13,22,.55) 100%),linear-gradient(180deg,rgba(7,17,29,.12) 0%,rgba(7,17,29,0) 52%,#07111d 100%),url('../../crew-list/banner/home.jpg');background-size:cover;background-position:center;filter:saturate(1.08);transform:scale(1.02)}
.bannerText{position:absolute;left:58px;bottom:88px;z-index:2;max-width:720px}.badge{display:inline-block;background:var(--red);padding:8px 14px;border-radius:9px;font-weight:900}h1{font-size:64px;line-height:1;margin:18px 0 10px}.bannerText p{color:#dbe8f4;line-height:1.7}
.panel{background:rgba(12,27,43,.92);border:1px solid var(--line);border-radius:14px;padding:18px;margin-top:18px}.panel:hover,.heroCard:hover,.tabBtn:hover{background:#17283b}
.headRow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.sectionTitle{font-weight:1000;margin:0;font-size:20px}
.tabs{display:flex;gap:10px;flex-wrap:wrap}.tabBtn{background:#0e1d2d;border:1px solid var(--line);border-radius:12px;padding:10px 14px;color:#fff;font-weight:900;cursor:pointer}.tabBtn.active{color:var(--cyan);background:#17283b}
.heroGrid{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:14px}
.heroCard{display:flex;flex-direction:column;min-height:220px;background:#081625;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:background .16s ease}
.cardBanner{height:120px;background-image:var(--hero-banner);background-size:cover;background-position:center}
.heroCardBody{display:flex;gap:12px;align-items:center;padding:12px}.heroAvatar{width:70px;height:70px;border-radius:10px;border:2px solid #b7832d;background:#152436;display:flex;align-items:center;justify-content:center;font-size:12px;color:#aac;text-align:center;flex:none}.heroCard b{display:block;font-size:16px}.heroCard span{display:block;color:var(--muted);font-size:13px;margin-top:5px}
.heroMeta{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding:12px;border-top:1px solid rgba(255,255,255,.08);color:#d6e7f7;font-size:13px}.heroMeta span:last-child{color:var(--gold);font-weight:900}
.footer{margin-top:28px;border-top:1px solid var(--line);background:#07111d;padding:0;text-align:left}.footerInner{max-width:1500px;margin:auto;display:grid;grid-template-columns:30% 70%;gap:18px;align-items:center;padding:24px}.footerLogoBox{min-height:82px;border:1px dashed #36506c;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#60b7ff;font-weight:1000;font-size:24px;background:#081625}.footerText{color:#9db0c3;line-height:1.6}.footer b{color:#fff}.notice{font-size:12px;color:#7f91a8;margin-top:8px}
@media(max-width:1100px){.heroGrid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}h1{font-size:46px}}
@media(max-width:760px){.footerInner{grid-template-columns:1fr}.indexBanner{height:420px}.bannerText{left:24px;right:24px}.searchTop{width:220px}}

.indexBannerActions{position:absolute;right:24px;bottom:22px;display:flex;gap:10px;z-index:3}
.indexRoundBtn{border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.45);color:#fff;border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;transition:background .16s ease}
.indexRoundBtn:hover{background:#17283b}
.indexRoundBtn.liked{background:#3b1718;color:#ffb4ad}


/* =========================
   v13 PREMIUM UI SKIN
   Giữ nguyên logic JS + dữ liệu, chỉ nâng cấp giao diện
========================= */
:root{
  --bg:#050911!important;
  --panel:#0b1422!important;
  --panel2:#111d2e!important;
  --line:rgba(255,211,112,.18)!important;
  --text:#f4f7ff!important;
  --muted:#aab8ca!important;
  --gold:#ffd56a!important;
  --red:#ff4a32!important;
  --green:#33df7a!important;
  --blue:#4db4ff!important;
  --cyan:#06f9e3!important;
}
body{
  background:
    radial-gradient(circle at 18% 8%,rgba(255,75,36,.18),transparent 24%),
    radial-gradient(circle at 76% 0%,rgba(255,194,72,.11),transparent 22%),
    linear-gradient(180deg,#050911 0%,#07111d 52%,#04070d 100%)!important;
  color:var(--text)!important;
}
.top{
  height:74px!important;
  background:rgba(3,7,13,.78)!important;
  border-bottom:1px solid rgba(255,213,106,.16)!important;
  box-shadow:0 12px 42px rgba(0,0,0,.32)!important;
}
.logo{
  color:#fff!important;
  text-shadow:0 0 18px rgba(255,213,106,.28)!important;
  letter-spacing:.3px!important;
}
.logo:before{
  
  display:inline-flex;
  width:36px;height:36px;
  align-items:center;justify-content:center;
  margin-right:9px;
  border-radius:50%;
  background:linear-gradient(135deg,#ffdf7a,#c67b18);
  color:#150a05;
  box-shadow:0 0 22px rgba(255,204,72,.35);
}
.logo small{color:#ffd56a!important;letter-spacing:2.6px!important}
.menuBtn,.searchTop{
  background:rgba(13,23,37,.78)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.menuBtn:hover,.searchTop:hover{
  background:#17283b!important;
  border-color:rgba(255,213,106,.26)!important;
}
.dropdown{
  background:rgba(7,14,24,.96)!important;
  border:1px solid rgba(255,213,106,.18)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.55)!important;
}
.heroBanner,.indexBanner{
  height:min(500px,48vw)!important;
  min-height:420px!important;
  border-radius:0 0 28px 28px!important;
  border:1px solid rgba(255,213,106,.17)!important;
  border-top:0!important;
  box-shadow:
    0 26px 70px rgba(0,0,0,.42),
    inset 0 -1px 0 rgba(255,213,106,.16)!important;
}
.heroBanner::before,.indexBanner:before{
  filter:saturate(1.18) contrast(1.06)!important;
}
.heroBanner::after,.indexBanner:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    radial-gradient(circle at 76% 46%,rgba(255,76,20,.23),transparent 22%),
    linear-gradient(180deg,transparent 0%,rgba(4,7,13,.08) 54%,#050911 100%)!important;
  pointer-events:none!important;
}
.bannerText{
  bottom:72px!important;
}
.badge{
  background:linear-gradient(136deg, #3271ff, #1030a5) !important; margin-top: 27px;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 10px 26px rgba(255,50,24,.24)!important;
  letter-spacing:.8px!important;
}
.bannerText h1,.nameLine h1{
  font-size:clamp(44px,5vw,82px)!important;
  letter-spacing:1.2px!important;
  text-shadow:0 6px 24px rgba(0,0,0,.75),0 0 26px rgba(255,213,106,.15)!important;
}
.bannerDesc{
  color:#eef5ff!important;
  font-size:16px!important;
  line-height:1.7!important;
  max-width:740px!important;
  text-shadow:0 2px 16px rgba(0,0,0,.9)!important;
}
.tagBox,.scoreName,.scoreMini{
  background:rgba(5,10,18,.64)!important;
  border:1px solid rgba(255,213,106,.2)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 28px rgba(0,0,0,.22)!important;
}
.tagLabel{
  background:linear-gradient(180deg,#2b1c0b,#101a28)!important;
  border-color:rgba(255,213,106,.3)!important;
  color:#ffdc78!important;
}
.bannerActions,.indexBannerActions{
  right:30px!important;
  bottom:28px!important;
}
.roundBtn,.indexRoundBtn,.btn{
  background:linear-gradient(180deg,rgba(40,54,76,.88),rgba(12,22,36,.88))!important;
  border:1px solid rgba(255,213,106,.2)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 26px rgba(0,0,0,.24)!important;
}
.roundBtn:hover,.indexRoundBtn:hover,.btn:hover{
  background:linear-gradient(180deg,#24364f,#13253a)!important;
}
.main{
  gap:22px!important;
}
.card,.panel,.statPanel,.gameSkill,.introBox{
  background:
    linear-gradient(180deg,rgba(17,29,46,.92),rgba(8,18,31,.92))!important;
  border:1px solid rgba(255,213,106,.16)!important;
  box-shadow:
    0 18px 44px rgba(0,0,0,.25),
    inset 0 1px 0 rgba(255,255,255,.045)!important;
  border-radius:18px!important;
}
.card:hover,.panel:hover,.statPanel:hover,.gameSkill:hover,.introBox:hover{
  background:
    linear-gradient(180deg,rgba(22,38,58,.96),rgba(10,22,36,.96))!important;
}
.sectionTitle{
  color:#ffdc78!important;
  text-transform:uppercase!important;
  letter-spacing:.5px!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
.sectionTitle:before{
  content:"✦";
  color:#ffb43a;
  text-shadow:0 0 14px rgba(255,180,58,.42);
}
.tabs{
  border:1px solid rgba(255,213,106,.16)!important;
  background:rgba(5,10,18,.55)!important;
  border-radius:18px!important;
  padding:5px!important;
}
.tab{
  border-radius:13px!important;
  background:transparent!important;
  color:#cfd8e6!important;
}
.tab.active{
  background:linear-gradient(180deg,#2b3d58,#142338)!important;
  color:#fff!important;
  border-bottom:0!important;
  box-shadow:inset 0 0 0 1px rgba(255,213,106,.18),0 8px 22px rgba(0,0,0,.24)!important;
}
.heroItem{
  border-radius:14px!important;
}
.heroItem.active{
  background:linear-gradient(90deg,rgba(255,74,50,.18),rgba(255,213,106,.08))!important;
  border-color:rgba(255,213,106,.28)!important;
}
.avatar,.heroAvatar,.heroIcon70,.bigIcon,.fruitIcon,.comboIcon{
  border-color:#d69a35!important;
  box-shadow:0 0 0 1px rgba(255,213,106,.12),0 8px 24px rgba(0,0,0,.24)!important;
}
.dataText,.rebirthBox,.comboInIntro,.ratingMiniRows{
  background:rgba(5,12,22,.72)!important;
  border-color:rgba(255,213,106,.16)!important;
}
.gameSkillHead{
  background:linear-gradient(90deg,#3a1a0b,#152e48)!important;
  color:#ffdc78!important;
  letter-spacing:.5px!important;
}
.rateRow .bar,.bar{
  background:rgba(255,255,255,.09)!important;
}
.bar i{
  background:linear-gradient(90deg,#ff4a32,#ffd56a)!important;
}
.starWidget span.on,.stars{
  color:#ffd56a!important;
  text-shadow:0 0 16px rgba(255,213,106,.35)!important;
}
.statRow{
  border-bottom:1px solid rgba(255,255,255,.075)!important;
}
.statName{
  color:#ffdc78!important;
}
.rageCoef{
  background:rgba(6,13,24,.82)!important;
  border-color:rgba(255,213,106,.28)!important;
}
.tooltip,.diffHint{
  background:#070d14!important;
  border-color:#d69a35!important;
  box-shadow:0 16px 42px rgba(0,0,0,.55)!important;
}
.heroGrid{
  gap:18px!important;
}
.heroCard{
  background:linear-gradient(180deg,rgba(17,29,46,.92),rgba(8,18,31,.92))!important;
  border-color:rgba(255,213,106,.16)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.22)!important;
}
.heroCard:hover{
  background:linear-gradient(180deg,rgba(22,38,58,.96),rgba(10,22,36,.96))!important;
  transform:translateY(-2px)!important;
}
.footer{
  background:linear-gradient(180deg,#060d17,#03060b)!important;
  border-top:1px solid rgba(255,213,106,.16)!important;
}
.footerLogoBox{
  background:rgba(8,18,31,.85)!important;
  border-color:rgba(255,213,106,.18)!important;
  color:#ffd56a!important;
}
@media(min-width:1200px){
  .wrap{max-width:1560px!important}
  .main{grid-template-columns:300px 1fr!important}
}


/* =========================
   v14 premium visual fixes
========================= */

/* Menu */
.top{
  background:
    linear-gradient(90deg,rgba(5,9,17,.98) 0%,rgba(5,9,17,.92) 38%,rgba(5,9,17,.66) 70%,rgba(5,9,17,.42) 100%)!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
.homeLink{
  color:#f4f7ff;
  font-weight:900;
  letter-spacing:.4px;
  padding:25px 14px 23px;
  border-bottom:3px solid transparent;
}
.homeLink:hover{
  color:#ffd56a;
  background:rgba(255,255,255,.04);
}

/* Banner blend: dark left/right, clear bright center-right */
.heroBanner,.indexBanner{
  border:0!important;
  border-radius:0 0 24px 24px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.42)!important;
}
.heroBanner::before,.indexBanner:before{
  background-image:
    linear-gradient(90deg,
      #050911 0%,
      rgba(5,9,17,.96) 13%,
      rgba(5,9,17,.72) 28%,
      rgba(5,9,17,.24) 45%,
      rgba(5,9,17,0) 60%,
      rgba(5,9,17,.18) 76%,
      rgba(5,9,17,.82) 100%
    ),
    linear-gradient(180deg,rgba(5,9,17,.18) 0%,rgba(5,9,17,0) 52%,#050911 100%),
    var(--banner-url)!important;
  background-size:cover!important;
  background-position:center!important;
  filter:saturate(1.2) contrast(1.08)!important;
}
.indexBanner:before{
  background-image:
    linear-gradient(90deg,#050911 0%,rgba(5,9,17,.96) 13%,rgba(5,9,17,.72) 28%,rgba(5,9,17,.24) 45%,rgba(5,9,17,0) 60%,rgba(5,9,17,.18) 76%,rgba(5,9,17,.82) 100%),
    linear-gradient(180deg,rgba(5,9,17,.18) 0%,rgba(5,9,17,0) 52%,#050911 100%),
    url('../../crew-list/banner/home.jpg')!important;
}
.heroBanner::after,.indexBanner:after{
  opacity:.72!important;
}

/* Banner title + description */
.heroBanner .nameLine h1{
  font-family:Impact,Haettenschweiler,'Arial Black',sans-serif!important;
  font-weight:1000!important;
  letter-spacing:2px!important;
  background:linear-gradient(180deg,#fff 0%,#f3f3f3 38%,#ffd56a 74%,#c77816 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
  -webkit-text-stroke:1px rgba(0,0,0,.35);
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.82));
}
.bannerDescBelow{
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
  max-width:720px!important;
  margin-top:14px!important;
}

/* Community rating bar colors like reference */
#ratingRows .rateRow:nth-of-type(1) .bar i,
.ratingMiniRows .rateRow:nth-of-type(1) .bar i{background:#df3236!important}
#ratingRows .rateRow:nth-of-type(2) .bar i,
.ratingMiniRows .rateRow:nth-of-type(2) .bar i{background:#31bf63!important}
#ratingRows .rateRow:nth-of-type(3) .bar i,
.ratingMiniRows .rateRow:nth-of-type(3) .bar i{background:#9b43d8!important}
#ratingRows .rateRow:nth-of-type(4) .bar i,
.ratingMiniRows .rateRow:nth-of-type(4) .bar i{background:#2096ee!important}
#ratingRows .rateRow:nth-of-type(5) .bar i,
.ratingMiniRows .rateRow:nth-of-type(5) .bar i{background:#f0c027!important}
#ratingRows .rateRow:nth-of-type(6) .bar i,
.ratingMiniRows .rateRow:nth-of-type(6) .bar i{background:#ff8b2e!important}

/* Fruit summary like reference */
.fruitSummary{
  display:grid;
  grid-template-columns:78px 1fr;
  gap:14px;
  align-items:center;
  padding-bottom:12px;
}
.fruitSummary .fruitIcon{
  width:56px!important;
  height:56px!important;
  flex:none;
}
.fruitBrief b{
  display:block;
  color:#ffdc78;
  font-size:14px;
  letter-spacing:.2px;
  margin-bottom:3px;
  text-transform:uppercase;
}
.fruitBrief span{
  display:block;
  color:#fff;
  font-weight:800;
  margin-bottom:6px;
}
.fruitBrief p{
  margin:0;
  color:#bfcadc;
  line-height:1.45;
  font-size:13px;
}

/* Skill title icon */
.gameSkillHead{
  display:flex;
  align-items:center;
  gap:10px;
}
.skillMiniIcon{
  width:40px;
  height:34px;
  border-radius:9px;
  border:1px solid rgba(255,213,106,.42);
  background:radial-gradient(circle at 35% 30%,rgba(255,213,106,.35),rgba(255,74,50,.18) 42%,rgba(5,9,17,.8) 100%);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffd56a;
  font-size:10px;
  box-shadow:0 0 18px rgba(255,74,50,.24);
}

/* Footer like reference */
.premiumFooter{
  margin-top:30px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,#050a12,#02050a)!important;
  padding:0!important;
}
.premiumFooterInner{
  max-width:1500px;
  margin:auto;
  display:grid;
  grid-template-columns:1.15fr 1.5fr 1.15fr 1.15fr 1.55fr;
  gap:36px;
  padding:26px 24px;
  align-items:start;
}
.footerBrand{
  display:flex;
  align-items:center;
}
.footerLogoArt{
  display:flex;
  align-items:center;
  gap:12px;
  color:#ffd56a;
  font-size:42px;
  font-weight:1000;
  line-height:.9;
}
.footerLogoArt span{
  color:#fff;
  font-size:24px;
  letter-spacing:.5px;
}
.footerCol b{
  display:block;
  color:#fff;
  margin-bottom:12px;
  font-size:14px;
}
.footerCol p,.footerCol a{
  display:block;
  margin:0 0 8px;
  color:#aeb8c8;
  line-height:1.6;
  font-size:14px;
}
.footerCol a:hover{
  color:#ffd56a;
}
.socialRow{
  display:flex;
  gap:12px;
}
.socialRow span{
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#101b2c;
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-weight:900;
}
@media(max-width:1100px){
  .premiumFooterInner{grid-template-columns:1fr 1fr;gap:22px}
}
@media(max-width:720px){
  .premiumFooterInner{grid-template-columns:1fr}
}


/* =========================
   v15 banner + title + tag refinements
========================= */

/* Top area blends into banner black */
body{
  background:#050505!important;
}
.top{
  background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.98) 34%,rgba(5,5,5,.86) 62%,rgba(5,5,5,.72) 100%)!important;
  border-bottom:0!important;
  box-shadow:0 14px 42px rgba(0,0,0,.36)!important;
}
.wrap{
  background:#050505!important;
}

/* Banner sits directly under menu and fades from black -> clear image -> black */
.heroBanner,.indexBanner{
  margin-top:0!important;
  border:0!important;
  border-radius:0 0 24px 24px!important;
  background:#050505!important;
}
.heroBanner::before,.indexBanner:before{
  background-image:
    linear-gradient(90deg,
      #050505 0%,
      rgba(5,5,5,.96) 12%,
      rgba(5,5,5,.78) 25%,
      rgba(5,5,5,.48) 38%,
      rgba(5,5,5,.12) 51%,
      rgba(5,5,5,0) 61%,
      rgba(5,5,5,.08) 70%,
      rgba(5,5,5,.42) 84%,
      #050505 100%
    ),
    linear-gradient(180deg,
      rgba(5,5,5,.42) 0%,
      rgba(5,5,5,.08) 22%,
      rgba(5,5,5,0) 50%,
      rgba(5,5,5,.38) 82%,
      #050505 100%
    ),
    var(--banner-url)!important;
  background-size:cover!important;
  background-position:center!important;
  filter:saturate(1.18) contrast(1.08)!important;
}
.indexBanner:before{
  background-image:
    linear-gradient(90deg,#050505 0%,rgba(5,5,5,.96) 12%,rgba(5,5,5,.78) 25%,rgba(5,5,5,.48) 38%,rgba(5,5,5,.12) 51%,rgba(5,5,5,0) 61%,rgba(5,5,5,.08) 70%,rgba(5,5,5,.42) 84%,#050505 100%),
    linear-gradient(180deg,rgba(5,5,5,.42) 0%,rgba(5,5,5,.08) 22%,rgba(5,5,5,0) 50%,rgba(5,5,5,.38) 82%,#050505 100%),
    url('../../crew-list/banner/home.jpg')!important;
}
.heroBanner::after,.indexBanner:after{
  background:linear-gradient(180deg,rgba(5,5,5,0) 0%,rgba(5,5,5,.08) 52%,#050505 100%)!important;
  opacity:1!important;
}

/* Professional heavy title like reference */
.heroBanner .nameLine{
  align-items:flex-start!important;
}
.heroBanner .nameLine h1{
  font-family:Impact,'Anton','Arial Black',Haettenschweiler,sans-serif!important;
  font-weight:1000!important;
  font-size:clamp(58px,6.7vw,112px)!important;
  line-height:.88!important;
  letter-spacing:3px!important;
  color:#f7f7f7!important;
  -webkit-text-stroke:1.2px rgba(0,0,0,.65)!important;
  text-shadow:
    0 2px 0 #d7d7d7,
    0 8px 0 rgba(0,0,0,.25),
    0 12px 26px rgba(0,0,0,.86)!important;
  background:
    linear-gradient(180deg,#ffffff 0%,#eeeeee 36%,#cfcfcf 64%,#ffffff 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  position:relative!important;
}
.heroBanner .nameLine h1:after{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(-8deg,rgba(0,0,0,.13) 0 1px,transparent 1px 7px);
  -webkit-background-clip:text;
  background-clip:text;
  mix-blend-mode:multiply;
  pointer-events:none;
}
.bannerDescBelow{
  margin-top:12px!important;
  color:#ffd56a!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
  letter-spacing:.4px!important;
  text-shadow:0 3px 14px rgba(0,0,0,.9),0 0 16px rgba(255,213,106,.22)!important;
}

/* Banner tags by hero type */
.tagBox{
  overflow:hidden!important;
  backdrop-filter:blur(6px)!important;
}
.tagBox.type-vatcong{
  background:rgba(204,32,32,.70)!important;
  border-color:rgba(255,90,70,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 24px rgba(204,32,32,.22)!important;
}
.tagBox.type-tuyetchieu{
  background:rgba(231,151,28,.70)!important;
  border-color:rgba(255,200,90,.56)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 24px rgba(231,151,28,.22)!important;
}
.tagBox.type-macong{
  background:rgba(117,48,190,.70)!important;
  border-color:rgba(190,120,255,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 24px rgba(117,48,190,.24)!important;
}
.tagBox.type-hotro{
  background:rgba(18,75,128,.70)!important;
  border-color:rgba(70,155,230,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 24px rgba(18,75,128,.22)!important;
}
.tagBox.sourceTag{
  background:rgba(92,96,106,.70)!important;
  border-color:rgba(180,190,205,.38)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 24px rgba(0,0,0,.22)!important;
}
.tagBox .tagLabel{
  background:rgba(0,0,0,.38)!important;
  color:#fff6c9!important;
}


/* =========================
   v16 typography + banner tag + language selector
========================= */
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Be+Vietnam+Pro:wght@400;500;600;700;800;900&display=swap');

body,
button,
input,
select,
textarea{
  font-family:'Be Vietnam Pro',Inter,Segoe UI,Arial,sans-serif!important;
}

.heroBanner .nameLine h1{
  font-family:'Anton',Impact,'Arial Black',sans-serif!important;
  font-size:clamp(64px,7.1vw,118px)!important;
  line-height:.88!important;
  letter-spacing:2.2px!important;
  color:#f8f8f8!important;
  background:
    linear-gradient(180deg,#fff 0%,#f7f7f7 32%,#d8d8d8 58%,#fff 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-stroke:1px rgba(0,0,0,.72)!important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.18),
    0 5px 0 rgba(0,0,0,.34),
    0 13px 28px rgba(0,0,0,.86)!important;
  transform:skewX(-2deg);
}
.heroBanner .nameLine h1:after{
  opacity:.42!important;
  background:
    repeating-linear-gradient(-7deg,rgba(0,0,0,.18) 0 1px,transparent 1px 8px)!important;
}
.bannerDescBelow{
  max-width:760px!important;
  color:#ffdf70!important;
  font-size:17px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.35px!important;
  line-height:1.45!important;
  margin-top:10px!important;
}
.heroBanner .tagRow{
  margin-top:16px!important;
}
.heroBanner .tagBox{
  min-width:auto!important;
  padding:10px 15px!important;
  border-radius:999px!important;
  font-size:13px!important;
  letter-spacing:.2px!important;
  color:#fff!important;
  text-transform:uppercase!important;
}
.heroBanner .tagBox .tagLabel{
  display:none!important;
}
.heroBanner .tagBox span:last-child{
  display:flex;
  align-items:center;
  gap:6px;
}
.heroBanner .sourceTag{
  color:#f0f2f6!important;
}

.langBox{
  display:flex;
  align-items:center;
  gap:7px;
  margin-left:8px;
}
.langBox label{
  color:#9db0c3;
  font-size:12px;
  font-weight:800;
}
.langSelect{
  background:rgba(13,23,37,.78);
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:9px 12px;
  font-weight:900;
  outline:none;
  cursor:pointer;
}
.langSelect:hover{
  background:#17283b;
  border-color:rgba(255,213,106,.26);
}
@media(max-width:920px){
  .langBox label{display:none}
  .langSelect{max-width:118px}
}


/* v18 robust i18n + banner text layout */
.heroBanner .nameLine h1{
  font-family:'Be Vietnam Pro',Inter,Segoe UI,Arial,sans-serif!important;
  font-size:clamp(48px,6.2vw,96px)!important;
  line-height:.96!important;
  font-weight:1000!important;
  letter-spacing:1.4px!important;
  color:#ffffff!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  -webkit-text-fill-color:#fff!important;
  -webkit-text-stroke:0!important;
  transform:none!important;
  text-shadow:0 4px 0 rgba(0,0,0,.35),0 12px 28px rgba(0,0,0,.92),0 0 18px rgba(255,255,255,.08)!important;
}
.heroBanner .nameLine h1:after{display:none!important}
.bannerSlogan{
  max-width:760px!important;
  margin:8px 0 12px!important;
  color:#ffd56a!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
  letter-spacing:.45px!important;
  line-height:1.42!important;
  font-size:clamp(15px,1.45vw,21px)!important;
  text-shadow:0 3px 14px rgba(0,0,0,.9),0 0 16px rgba(255,213,106,.22)!important;
}
.bannerHeroDesc{
  display:-webkit-box!important;
  -webkit-line-clamp:4!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  max-width:760px!important;
  margin-top:14px!important;
  color:#f2f5fb!important;
  font-weight:500!important;
  text-transform:none!important;
  letter-spacing:0!important;
  line-height:1.65!important;
  font-size:15px!important;
  text-shadow:0 2px 14px rgba(0,0,0,.82)!important;
}


/* v24 auto render image paths inside icon boxes */
.heroIcon70 img,
.heroFull img,
.avatar img,
.heroAvatar img,
.bigIcon img,
.fruitIcon img,
.comboIcon img{
  max-width:100%!important;
  max-height:100%!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  display:block!important;
}
.heroIcon70,
.heroFull,
.avatar,
.heroAvatar,
.bigIcon,
.fruitIcon,
.comboIcon{
  overflow:hidden;
}
.fruitIcon img,
.comboIcon img{
  pointer-events:none;
}


/* v30 requested refinements */
.card>.sectionTitle,
.comboCard>.comboTitle,
.compareHead>.sectionTitle,
.communityHead>.sectionTitle{
  background:linear-gradient(90deg,#0b2339,#1c3e5f)!important;
  padding:10px 12px!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#fff!important;
}
.card>.sectionTitle,
.comboCard>.comboTitle{
  margin:0 0 14px!important;
}
.communityHead>.sectionTitle,
.compareHead>.sectionTitle{
  margin:0!important;
}
.passiveCard,
.comboCard{
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.passiveCard:hover,
.comboCard:hover{
  border-color:var(--red)!important;
  box-shadow:0 0 0 1px rgba(255,74,61,.18),0 10px 28px rgba(0,0,0,.18)!important;
}
.comboCard:hover .comboIcon{
  border-color:var(--red);
}
.floatingTooltip{
  transform:none!important;
}
@media(max-width:760px){
  .top{
    height:auto!important;
    min-height:0!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px 12px!important;
  }
  .logo{
    min-width:0!important;
    flex:1 0 100%!important;
    font-size:18px!important;
    line-height:1.1!important;
  }
  .logo small{
    font-size:10px!important;
    letter-spacing:1.4px!important;
  }
  .menu{
    order:3!important;
    width:100%!important;
    display:flex!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    gap:8px!important;
    padding:2px 0 6px!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  .menuItem{
    flex:0 0 auto!important;
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  .menuBtn{
    white-space:nowrap!important;
    padding:9px 10px!important;
    font-size:12px!important;
    border-radius:10px!important;
  }
  .dropdown{
    position:fixed!important;
    top:112px!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    min-width:0!important;
    max-height:55vh!important;
    overflow:auto!important;
    z-index:999999!important;
  }
  .searchTop{
    order:2!important;
    width:100%!important;
    max-width:none!important;
    flex:1 1 100%!important;
    margin-left:0!important;
    padding:9px 12px!important;
  }
  .tabs{
    overflow-x:auto!important;
    white-space:nowrap!important;
  }
  .tab{
    min-width:150px!important;
    flex:0 0 auto!important;
    padding:12px 14px!important;
    font-size:12px!important;
  }
}


/* v31: careful fixes for tooltip, title headers, and mobile menu */
.top{overflow:visible!important}
.dropdown{z-index:2147483000!important}
.card>.sectionTitle,
.comboCard>.comboTitle{
  display:block!important;
  background:linear-gradient(90deg,#0b2339,#1c3e5f)!important;
  padding:10px 12px!important;
  font-weight:900!important;
  color:#fff!important;
  border:0!important;
  border-radius:14px 14px 0 0!important;
  margin:-18px -18px 14px!important;
}
.passiveCard>.sectionTitle,
.comboCard>.comboTitle{
  margin:-16px -16px 14px!important;
}
.compareHead>.sectionTitle,
.communityHead>.sectionTitle{
  background:linear-gradient(90deg,#0b2339,#1c3e5f)!important;
  padding:10px 12px!important;
  font-weight:900!important;
  color:#fff!important;
  border-radius:10px!important;
}
.passiveCard,
.comboCard{
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.passiveCard:hover,
.comboCard:hover{
  border-color:var(--red)!important;
  box-shadow:0 0 0 1px rgba(255,74,61,.18),0 10px 28px rgba(0,0,0,.18)!important;
  transform:translateY(-1px);
}
.fruitIcon:hover>.tooltip,
.comboIcon:hover>.tooltip,
.fashionIcon50:hover>.tooltip{
  display:none!important;
}
.floatingTooltip{
  position:fixed!important;
  z-index:2147483647!important;
  display:none;
  width:330px!important;
  max-width:min(330px, calc(100vw - 28px))!important;
  background:#070d14!important;
  border:1px solid #6c5524!important;
  border-radius:10px!important;
  padding:12px!important;
  box-shadow:0 10px 35px rgba(0,0,0,.55)!important;
  color:#f3f0c8!important;
  text-align:left!important;
  line-height:1.5!important;
  pointer-events:none!important;
  box-sizing:border-box!important;
}
@media(max-width:760px){
  .top{
    height:auto!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    padding:10px 12px!important;
    align-items:center!important;
  }
  .logo{
    flex:1 0 100%!important;
    min-width:0!important;
    font-size:18px!important;
  }
  .logo small{
    font-size:10px!important;
    letter-spacing:1.2px!important;
  }
  .langBox{
    margin-left:0!important;
    order:2!important;
  }
  .searchTop{
    order:3!important;
    width:100%!important;
    max-width:none!important;
    flex:1 1 100%!important;
    margin-left:0!important;
    padding:9px 12px!important;
  }
  .menu{
    order:4!important;
    width:100%!important;
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    padding:2px 0 6px!important;
    -webkit-overflow-scrolling:touch;
  }
  .menuItem{
    flex:0 0 auto!important;
    padding-bottom:0!important;
    margin-bottom:0!important;
    position:static!important;
  }
  .menuBtn{
    white-space:nowrap!important;
    padding:9px 10px!important;
    font-size:12px!important;
    border-radius:10px!important;
  }
  .dropdown{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    min-width:0!important;
    max-height:56vh!important;
    overflow:auto!important;
    z-index:2147483000!important;
  }
  .dropOption{
    padding:13px 12px!important;
    font-size:14px!important;
  }
  .tabs{
    overflow-x:auto!important;
    white-space:nowrap!important;
  }
  .tab{
    min-width:150px!important;
    flex:0 0 auto!important;
    padding:12px 14px!important;
    font-size:12px!important;
  }
}


/* v32: stable Shura-style tooltip + mobile header row */
@media(max-width:760px){
  .top{
    height:auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    grid-template-areas:
      "logo home lang"
      "search search search"
      "menu menu menu"!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px 12px!important;
    overflow:visible!important;
  }
  .logo{
    grid-area:logo!important;
    min-width:0!important;
    flex:initial!important;
    font-size:18px!important;
    line-height:1.05!important;
  }
  .logo small{
    font-size:10px!important;
    letter-spacing:1.2px!important;
  }
  .homeLink{
    grid-area:home!important;
    white-space:nowrap!important;
    padding:8px 10px!important;
    border:1px solid var(--line)!important;
    border-radius:10px!important;
    font-size:12px!important;
    background:#0e1d2d!important;
  }
  .langBox{
    grid-area:lang!important;
    margin-left:0!important;
    justify-self:end!important;
  }
  .langBox label{display:none!important}
  .langSelect{
    max-width:108px!important;
    padding:8px 8px!important;
    font-size:12px!important;
  }
  .searchTop{
    grid-area:search!important;
    width:100%!important;
    max-width:none!important;
    flex:initial!important;
    margin-left:0!important;
    padding:9px 12px!important;
  }
  .menu{
    grid-area:menu!important;
    width:100%!important;
    display:flex!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    gap:8px!important;
    padding:2px 0 6px!important;
    -webkit-overflow-scrolling:touch;
  }
  .menuItem{
    flex:0 0 auto!important;
    padding-bottom:0!important;
    margin-bottom:0!important;
  }
  .menuBtn{
    white-space:nowrap!important;
    padding:9px 10px!important;
    font-size:12px!important;
    border-radius:10px!important;
  }
  .dropdown{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    min-width:0!important;
    max-height:56vh!important;
    overflow:auto!important;
    z-index:2147483000!important;
  }
  .dropOption{
    padding:13px 12px!important;
    font-size:14px!important;
  }
}


/* v32: index title header synced with hero pages */
.panel>.headRow{
  background:linear-gradient(90deg,#0b2339,#1c3e5f)!important;
  margin:-18px -18px 18px!important;
  padding:10px 12px!important;
  border-radius:14px 14px 0 0!important;
  border:0!important;
}
.panel>.headRow .sectionTitle{
  color:#fff!important;
  font-weight:900!important;
}
.panel>.headRow .tabBtn{
  background:rgba(7,22,37,.72)!important;
  border-color:rgba(255,255,255,.12)!important;
}
.panel>.headRow .tabBtn.active{
  background:#17283b!important;
  color:var(--cyan)!important;
}
@media(max-width:760px){
  .panel>.headRow{
    align-items:flex-start!important;
  }
  .panel>.headRow .tabs{
    width:100%!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    padding-bottom:4px!important;
  }
  .panel>.headRow .tabBtn{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
}


/* v34 mobile only: progressive hero list on index */
.indexMobileMore{display:none}
@media(max-width:760px){
  .heroCard.mobileHidden{
    display:none!important;
  }
  .heroGrid.mobileHasMore{
    position:relative;
  }
  .indexMobileMore.show{
    display:flex!important;
    position:relative;
    justify-content:center;
    align-items:center;
    padding:20px 0 4px;
  }
  .indexMobileMore.show::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-68px;
    height:76px;
    background:linear-gradient(180deg,rgba(5,9,17,0),rgba(5,9,17,.94) 72%,rgba(5,9,17,1));
    pointer-events:none;
  }
  .indexLoadMoreBtn{
    position:relative;
    z-index:2;
    border:1px solid rgba(255,213,106,.28);
    background:linear-gradient(180deg,#17283b,#0e1d2d);
    color:#fff;
    border-radius:999px;
    padding:10px 20px;
    font-weight:1000;
    cursor:pointer;
    box-shadow:0 12px 28px rgba(0,0,0,.24);
  }
  .indexLoadMoreBtn:hover{
    background:#1b3048;
  }
}
@media(min-width:761px){
  .heroCard.mobileHidden{
    display:flex!important;
  }
  .indexMobileMore{
    display:none!important;
  }
}


/* v40: back-to-top button for PC + mobile */
.backTopBtn{
  position:fixed;
  right:22px;
  bottom:24px;
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(255,213,106,.32);
  background:linear-gradient(180deg,#17314b,#0b1928);
  color:#fff;
  font-size:22px;
  font-weight:1000;
  cursor:pointer;
  z-index:2147482500;
  box-shadow:0 14px 34px rgba(0,0,0,.38);
  opacity:0;
  transform:translateY(14px);
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,background .16s ease;
}
.backTopBtn.show{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.backTopBtn:hover{
  background:#1b3048;
}
@media(max-width:760px){
  .backTopBtn{
    right:14px;
    bottom:16px;
    width:42px;
    height:42px;
    font-size:20px;
  }
}


/* robust index banner after moving CSS to assets/css */
.indexBanner{
  isolation:isolate;
}
.indexBanner:before{
  background-image:none!important;
}
.indexBannerBg{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-size:cover!important;
  background-position:center!important;
  filter:saturate(1.18) contrast(1.08)!important;
  transform:scale(1.02)!important;
  pointer-events:none!important;
}
.indexBanner:after{
  z-index:1!important;
}
.indexBanner>.bannerText,
.indexBanner>.indexBannerActions{
  z-index:3!important;
}


/* v16: index hero-card banner uses JS absolute URL after CSS split */
.cardBanner{
  background-color:#081625;
}



/* v17 crew menu link */
.crewLink{
  color:#f4f7ff;
  font-weight:900;
  letter-spacing:.4px;
  padding:25px 14px 23px;
  border-bottom:3px solid transparent;
}
.crewLink:hover{
  color:#ffd56a;
  background:rgba(255,255,255,.04);
}
@media(max-width:760px){
  .crewLink{
    grid-area:crew!important;
    white-space:nowrap!important;
    padding:8px 10px!important;
    border:1px solid var(--line)!important;
    border-radius:10px!important;
    font-size:12px!important;
    background:#0e1d2d!important;
  }
  .top{
    grid-template-columns:minmax(0,1fr) auto auto auto!important;
    grid-template-areas:
      "logo home crew lang"
      "search search search search"
      "menu menu menu menu"!important;
  }
}

/* v18 top multi links */
.crewLink,.buildCrewLink{
  color:#f4f7ff;
  font-weight:900;
  letter-spacing:.4px;
  padding:25px 14px 23px;
  border-bottom:3px solid transparent;
}
.homeLink.active,.crewLink.active,.buildCrewLink.active,
.crewLink:hover,.buildCrewLink:hover{
  color:#ffd56a;
  background:rgba(255,255,255,.04);
  border-bottom-color:#ffd56a;
}
@media(max-width:760px){
  .crewLink,.buildCrewLink{
    white-space:nowrap!important;
    padding:8px 10px!important;
    border:1px solid var(--line)!important;
    border-radius:10px!important;
    font-size:12px!important;
    background:#0e1d2d!important;
  }
}


/* v19 mobile drawer and Data Wiki label */
.homeLink{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}
.homeLink::after{content:"Data Wiki";display:block;color:#39d66b;font-size:10px;font-weight:1000;letter-spacing:.2px;margin-top:3px}
.mobileMenuBtn,.mobileDrawer,.mobileDrawerOverlay{display:none}
@media(max-width:760px){
  .top{display:grid!important;grid-template-columns:auto 1fr auto auto!important;grid-template-areas:"logo home lang burger" "search search search search"!important;gap:8px!important;height:auto!important;padding:10px 12px!important}
  .logo{grid-area:logo!important;min-width:0!important}.logo img{max-width:110px}
  .homeLink{grid-area:home!important;justify-self:start!important;white-space:nowrap!important;padding:8px 10px!important;border:1px solid var(--line)!important;border-radius:10px!important;font-size:12px!important;background:#0e1d2d!important;border-bottom:1px solid var(--line)!important}
  .crewLink,.buildCrewLink{display:none!important}
  .searchTop{grid-area:search!important;width:100%!important;margin:0!important}
  .langBox{grid-area:lang!important;margin:0!important}.langBox label{display:none}.langSelect{max-width:112px!important;padding:8px!important}
  .mobileMenuBtn{grid-area:burger!important;display:flex!important;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:10px;background:#0e1d2d;color:#ffd56a;font-size:22px;font-weight:1000}
  .mobileDrawerOverlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:2147482000}
  .mobileDrawer{display:flex;position:fixed;top:0;right:0;width:min(82vw,320px);height:100vh;background:linear-gradient(180deg,#0b1928,#050d17);border-left:1px solid rgba(255,213,106,.25);box-shadow:-20px 0 60px rgba(0,0,0,.5);z-index:2147482001;transform:translateX(105%);transition:transform .22s ease;flex-direction:column;padding:18px;gap:10px}
  .mobileDrawer.show{transform:translateX(0)}
  .mobileDrawerClose{align-self:flex-end;width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#10243a;color:#fff;font-size:24px}
  .mobileDrawer a{display:flex;flex-direction:column;gap:3px;padding:13px 14px;border:1px solid rgba(255,213,106,.16);border-radius:12px;background:#0b1726;color:#fff;font-weight:1000}
  .mobileDrawer a small{color:#39d66b;font-size:11px}
}

/* v20 force mobile drawer hidden by default */
.mobileDrawer{visibility:hidden;pointer-events:none;transform:translateX(105%)!important}
.mobileDrawer.show{visibility:visible;pointer-events:auto;transform:translateX(0)!important}
.mobileDrawerOverlay{visibility:hidden;pointer-events:none;opacity:0}
.mobileDrawerOverlay.show{visibility:visible;pointer-events:auto;opacity:1}
@media(min-width:761px){.mobileMenuBtn,.mobileDrawer,.mobileDrawerOverlay{display:none!important}}


/* v22 requested top subtitles and mobile drawer */
.homeLink,.crewLink{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05}
.homeLink::after{content:attr(data-subtitle);display:block;color:#39d66b;font-size:10px;font-weight:1000;letter-spacing:.2px;margin-top:3px}
.crewLink::after{content:attr(data-subtitle);display:block;color:#39d66b;font-size:10px;font-weight:1000;letter-spacing:.2px;margin-top:3px}
.mobileMenuBtn{display:none!important}
.mobileDrawerOverlay{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.mobileDrawer{display:none!important;visibility:hidden!important;pointer-events:none!important;transform:translateX(110%)!important}
.globalBackTop{position:fixed;right:18px;bottom:18px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,213,106,.5);background:#0e1d2d;color:#ffd56a;font-size:24px;font-weight:1000;z-index:2147481000;box-shadow:0 12px 34px rgba(0,0,0,.35);cursor:pointer;opacity:0;pointer-events:none;transition:.18s}
.globalBackTop.show{opacity:1;pointer-events:auto}
@media(max-width:760px){
  .mobileMenuBtn{display:flex!important}
  .mobileDrawerOverlay.show{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
  .mobileDrawer{display:flex!important;visibility:hidden!important;pointer-events:none!important;transform:translateX(110%)!important}
  .mobileDrawer.show{visibility:visible!important;pointer-events:auto!important;transform:translateX(0)!important}
}
/* ================================================= */
/* HERO GRID - IMAGE EFFECT ONLY BY CSS              */
/* ================================================= */

#heroGrid .heroCard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid rgba(255, 190, 70, 0.28);
  transition:
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

#heroGrid .heroCard:hover {
  border-color: rgba(255, 210, 105, 0.85);

  box-shadow:
    0 16px 34px rgba(0, 0, 0, 0.55),
    0 0 22px rgba(255, 180, 55, 0.28),
    inset 0 0 0 1px rgba(255, 230, 150, 0.12);
}

#heroGrid .heroCard .cardBanner {
  position: relative;
  overflow: hidden;
  border-radius: 12px 12px 0 0;
  background-size: cover !important;
  background-position: center center !important;

  filter:
    brightness(1.04)
    contrast(1.05)
    saturate(1.08);

  transition:
    filter 0.45s ease;
}

#heroGrid .heroCard .cardBanner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.14) 0%,
      rgba(255, 255, 255, 0.02) 45%,
      rgba(0, 0, 0, 0.36) 100%
    ),
    radial-gradient(
      circle at 50% 15%,
      rgba(255, 230, 150, 0.16),
      transparent 42%
    );

  pointer-events: none;
}

#heroGrid .heroCard .cardBanner::after {
  content: "";
  position: absolute;
  top: -60%;
  left: -90%;
  z-index: 2;

  width: 42%;
  height: 220%;

  background:
    linear-gradient(
      120deg,
      transparent 0%,
      rgba(255, 255, 255, 0.08) 35%,
      rgba(255, 255, 255, 0.55) 50%,
      rgba(255, 255, 255, 0.08) 65%,
      transparent 100%
    );

  transform: rotate(18deg);
  opacity: 0;
  pointer-events: none;
}

#heroGrid .heroCard:hover .cardBanner {
  filter:
    brightness(1.16)
    contrast(1.1)
    saturate(1.18);
}

#heroGrid .heroCard:hover .cardBanner::after {
  animation: heroGridBannerShine 0.9s ease forwards;
  opacity: 1;
}

@keyframes heroGridBannerShine {
  from {
    left: -90%;
  }

  to {
    left: 135%;
  }
}

#heroGrid .heroCard .heroCardBody {
  position: relative;
  z-index: 3;

  display: flex;
  align-items: center;
  gap: 12px;

  padding: 12px 12px 8px;
}

#heroGrid .heroCard .heroAvatar {
  position: relative;

  width: 68px;
  height: 68px;
  min-width: 68px;

  display: flex;
  align-items: center;
  justify-content: center;

  overflow: hidden;
  border-radius: 11px;

  background:
    linear-gradient(145deg, #0b1c32, #153456);

  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;

  border: 2px solid rgba(255, 185, 55, 0.9);

  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.65),
    0 0 14px rgba(255, 180, 45, 0.32),
    inset 0 0 12px rgba(255, 255, 255, 0.08);

  transition:
    filter 0.28s ease,
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

#heroGrid .heroCard .heroAvatar::after {
  content: "";
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.18),
      transparent 45%,
      rgba(0, 0, 0, 0.22)
    );

  pointer-events: none;
}

#heroGrid .heroCard:hover .heroAvatar {
  filter:
    brightness(1.14)
    saturate(1.12);

  border-color: rgba(255, 225, 125, 1);

  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.65),
    0 0 22px rgba(255, 195, 75, 0.5),
    inset 0 0 14px rgba(255, 255, 255, 0.16);
}


#heroGrid .heroCard .heroCardBody b {
  display: block;
  margin-bottom: 4px;

  color: #f5f8ff;
  font-size: 16px;
  line-height: 1.2;

  transition:
    color 0.25s ease,
    text-shadow 0.25s ease;
}

#heroGrid .heroCard:hover .heroCardBody b {
  color: #fff1ba;

  text-shadow:
    0 0 8px rgba(255, 205, 90, 0.65),
    0 0 16px rgba(255, 160, 50, 0.28);
}


#heroGrid .heroCard [data-role="hero-info"] {
  display: block;

  color: #b8c9df;
  font-size: 13px;
  line-height: 1.35;

  transition: color 0.25s ease;
}

#heroGrid .heroCard:hover [data-role="hero-info"] {
  color: #e5efff;
}


#heroGrid .heroCard .heroMeta {
  position: relative;
  z-index: 3;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;

  margin-top: auto;
  padding: 10px 12px 12px;

  color: #bed2ea;
  font-size: 13px;

  border-top: 1px solid rgba(255, 255, 255, 0.055);
}

/* Source */
#heroGrid .heroCard .heroMeta [data-role="source"] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#heroGrid .heroCard .heroMeta span:last-child {
  color: #ffd35a;
  font-weight: 700;

  text-shadow:
    0 0 8px rgba(255, 195, 65, 0.65),
    0 0 16px rgba(255, 150, 35, 0.25);
}

#heroGrid .heroCard:focus,
#heroGrid .heroCard:focus-visible {
  outline: none;

  border-color: rgba(255, 60, 60, 0.95);

  box-shadow:
    0 0 0 2px rgba(255, 50, 50, 0.85),
    0 0 24px rgba(255, 50, 50, 0.42),
    0 14px 30px rgba(0, 0, 0, 0.52);
}

#heroGrid .heroCard.active,
#heroGrid .heroCard.selected,
#heroGrid .heroCard.is-active {
  border-color: rgba(255, 55, 55, 0.95) !important;

  box-shadow:
    0 0 0 2px rgba(255, 50, 50, 0.85),
    0 0 24px rgba(255, 50, 50, 0.42),
    0 14px 30px rgba(0, 0, 0, 0.52);
}