:root{
  --bg:#0a0a0a;
  --bg2:#141414;
  --bg3:#1a1a1a;
  --panel:rgba(255,255,255,.045);
  --panel2:rgba(255,255,255,.07);
  --panel3:rgba(255,255,255,.1);
  --line:rgba(255,255,255,.1);
  --line-strong:rgba(255,255,255,.16);
  --cyan:#00e5ff;
  --green:#00ff94;
  --gold:#f2ca50;
  --silver:#d4d4d4;
  --red:#ff6b6b;
  --txt:#eef5ff;
  --dim:#94a3b8;
  --dim2:#64748b;
  --shadow:0 26px 80px rgba(0,0,0,.42);
  --nav-top-gap:10px;
  --font-body:"Geist","Segoe UI",system-ui,Arial,sans-serif;
  --font-display:"Geist","Segoe UI",system-ui,Arial,sans-serif;
  --font-luxury:"Geist","Segoe UI",system-ui,Arial,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(78px + var(--nav-top-gap));
  background:#0a0a0a;
  overflow-x:hidden;
}
body{
  min-height:100vh;
  background:
    radial-gradient(1400px 720px at 50% -10%, rgba(0,229,255,.08), transparent 60%),
    linear-gradient(180deg, #0a0a0a 0%, #0a0a0a 46%, #0a0a0a 100%);
  color:var(--txt);
  font-family:var(--font-body);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  position:relative;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(180deg, rgba(255,255,255,.65), rgba(255,255,255,.08));
  opacity:.45;
}
body::after{
  content:"";
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:var(--nav-top-gap);
  z-index:49;
  pointer-events:none;
  background:linear-gradient(180deg, #0a0a0a, rgba(10,10,10,.95));
}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img{max-width:100%}
.mono{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace}
.green{color:var(--green)}
.cyan{color:var(--cyan)}
.gold{color:var(--gold)}
.red{color:var(--red)}
.dim{color:var(--dim)}
.b{font-weight:700}
.r{text-align:right}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.brand-mark{
  display:inline;
  white-space:nowrap;
  font-weight:800;
  letter-spacing:0;
}
.brand-mark-kn{
  color:var(--cyan);
  text-shadow:0 0 14px rgba(0,229,255,.34);
}
.brand-mark-invest{
  color:#fff6d8;
  background:linear-gradient(90deg,#fff 0%,#fff3b0 42%,#ffd700 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 0 18px rgba(255,215,0,.2);
}

h1,h2,.brand,.tier-dep,.tp-val,.pp-val,.mr-big,.lb-head h1,.cd-status{
  font-family:var(--font-display);
  font-weight:800;
  letter-spacing:0;
}
h3,h4{
  font-family:var(--font-body);
  letter-spacing:0;
}

/* Sidebar trái cố định (kiểu Exness): luôn hiện, KHÔNG ẩn, KHÔNG drawer */
:root{--sidebar-w:264px}
body{margin-left:var(--sidebar-w)}
.nav{
  position:fixed;
  top:0;left:0;
  width:var(--sidebar-w);
  height:100vh;
  z-index:60;
  background:#070b14;
  backdrop-filter:blur(18px);
  border-right:1px solid rgba(255,255,255,.08);
  box-shadow:4px 0 30px rgba(0,0,0,.28);
  display:flex;flex-direction:column;
  padding:22px 14px;
  overflow-y:auto;
}
.nav .wrap{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:14px;
}
.brand{font-weight:700;font-size:22px;line-height:1}
.brand-home{
  border:0;
  background:transparent;
  color:inherit;
  padding:0;
  text-align:left;
  cursor:pointer;
}
.brand-home:hover .n,
.brand-home:focus-visible .n{
  filter:brightness(1.16);
  text-shadow:0 0 20px rgba(255,215,0,.32);
}
.brand-home:focus-visible{
  outline:2px solid rgba(0,229,255,.55);
  outline-offset:6px;
  border-radius:6px;
}
.brand .k{color:var(--cyan)}
.brand .n{
  color:#fff6d8;
  background:linear-gradient(90deg,#fff 0%,#fff3b0 42%,#ffd700 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
.brand small{
  display:block;
  margin-top:4px;
  font-size:10px;
  font-weight:700;
  color:var(--dim2);
  letter-spacing:.28em;
}
.nav-timebar{
  flex:0 1 285px;
  min-width:210px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:8px 13px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,215,0,.13), rgba(0,229,255,.1));
  border:1px solid rgba(255,255,255,.11);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 14px 30px rgba(0,0,0,.18);
  white-space:nowrap;
}
.nav-timebar span{
  color:var(--dim2);
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.nav-timebar b{
  color:#fff;
  font-size:14px;
  line-height:1;
}
.nav-timebar.is-pending b{color:var(--gold)}
.nav-timebar.is-active b{color:var(--green)}
.nav-timebar.is-ended b{color:#ff9b9b}
.nav .links{display:flex;flex-direction:column;align-items:stretch;gap:6px}
.nav .links a{
  padding:11px 14px;
  border-radius:12px;
  color:var(--dim);
  font-weight:600;
  font-size:14px;
  text-align:left;
  cursor:pointer;
  transition:background .2s,color .2s,transform .2s;
}
.nav .links .brand-link{
  background:linear-gradient(135deg, var(--green), #7dffcb);
  color:#03130c !important;
  font-size:15px;
  font-weight:800;
  border-radius:12px;
  padding:12px 14px;
  text-align:center;
  box-shadow:0 8px 20px rgba(0,255,148,.25);
}
.nav .links .brand-link:hover{
  background:linear-gradient(135deg, #7dffcb, var(--green));
  transform:translateY(-1px);
}
.nav .links a:hover{
  color:#fff;
  background:rgba(255,255,255,.05);
}
.nav .links a.active{
  color:#fff;
  background:rgba(255,255,255,.06);
}
.nav .cta{
  background:linear-gradient(135deg, var(--green), #7dffcb);
  color:#03130c !important;
  box-shadow:0 14px 30px rgba(0,255,148,.22);
}
.nav .links{
  display:flex;flex-direction:column;align-items:stretch;
  gap:6px;width:100%;
}
.nav .links a{text-align:left}
.nav-toggle{display:none}
.nav .brand-home{display:none}
/* Mobile: top bar ngang + hamburger → drawer trượt từ trái */
@media(max-width:880px){
  html,body{margin:0!important;padding-left:0!important}
  body{margin-left:0;padding-top:var(--mobilenav-h,70px)}
  :root{--mobilenav-h:70px}
  .nav{
    position:fixed;top:0!important;left:0!important;margin:0!important;
    width:100%;height:auto;
    flex-direction:column;align-items:stretch;
    padding:8px 12px 8px;
    border-right:none;border-bottom:1px solid rgba(255,255,255,.08);
    overflow:visible;
  }
  .nav .wrap{flex-direction:row;align-items:center;gap:8px;width:100%}
  .nav .brand-home{display:block;font-size:18px;flex:1}
  .nav-sub{display:flex!important;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;line-height:1.2;color:#aeb6c2;width:100%}
  .nav-toggle{
    display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:42px;height:42px;flex:0 0 42px;
    border:1px solid rgba(255,255,255,.14);border-radius:12px;
    background:rgba(255,255,255,.05);cursor:pointer;padding:0 10px;
  }
  .nav-toggle span{display:block;height:2px;width:100%;background:#fff;border-radius:2px;transition:.22s}
  .nav.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav.nav-open .nav-toggle span:nth-child(2){opacity:0}
  .nav.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  /* Drawer trượt từ trái */
  .nav .links{
    position:fixed;top:0;left:0;height:100vh;width:78%;max-width:300px;
    background:rgba(6,10,22,.97);backdrop-filter:blur(18px);
    flex-direction:column;align-items:stretch;
    padding:104px 16px 24px;gap:8px;z-index:70;
    transform:translateX(-104%);transition:transform .26s ease;
    border-right:1px solid rgba(255,255,255,.08);
  }
  .nav.nav-open .links{transform:translateX(0)}
  .nav .links a{font-size:15px;padding:12px 14px;text-align:left;white-space:normal;width:100%}
  .nav .links .brand-link{font-size:15px;padding:12px 14px;text-align:left;width:100%}
  /* Overlay mờ khi drawer mở: chạm vào → đóng */
  .nav::after{
    content:"";position:fixed;inset:0;z-index:65;
    background:rgba(2,6,12,.5);backdrop-filter:blur(2px);
    opacity:0;pointer-events:none;transition:opacity .22s;
  }
  .nav.nav-open::after{opacity:1;pointer-events:auto}
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:none;
  cursor:pointer;
  font-weight:800;
  padding:13px 24px;
  border-radius:14px;
  font-size:15px;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease, border-color .18s ease;
  letter-spacing:0;
}
.btn:hover{transform:translateY(-2px)}
.btn.sm{padding:9px 16px;font-size:13px}
.btn-cyan{
  background:linear-gradient(135deg, #46ecff, #00c8ff);
  color:#04121a;
  box-shadow:0 16px 32px rgba(0,229,255,.22);
}
.btn-green{
  background:linear-gradient(135deg, var(--green), #7dffcb);
  color:#04110a;
  box-shadow:0 16px 32px rgba(0,255,148,.22);
}
.btn-zalo{
  background:linear-gradient(135deg, #0f7cff, #0059ff);
  color:#fff;
  box-shadow:0 16px 32px rgba(0,104,255,.24);
}
.btn-tele{
  background:linear-gradient(135deg, #58d8ff, #1695ff);
  color:#04131c;
  box-shadow:0 16px 32px rgba(22,149,255,.24);
}
.btn-group{
  background:linear-gradient(135deg, #00ff94, #62e8ff);
  color:#04131c;
  box-shadow:0 16px 32px rgba(0,255,148,.18);
}
.btn-form{
  background:linear-gradient(135deg, #fffdf6, #dcefff);
  color:#07131c;
  box-shadow:0 16px 32px rgba(255,255,255,.12);
}
.btn-claude{
  background:linear-gradient(135deg, #c9d9ff, #87a9ff);
  color:#081221;
  box-shadow:0 16px 32px rgba(135,169,255,.24);
}
.btn-hermes{
  background:linear-gradient(135deg, #c997ff, #7d7bff);
  color:#081021;
  box-shadow:0 16px 32px rgba(125,123,255,.24);
}
.btn-ghost{
  background:rgba(255,255,255,.06);
  color:var(--dim);
  cursor:not-allowed;
}
.btn-ghost:hover{transform:none}
.btn-outline{
  background:transparent;
  border:1px solid rgba(0,229,255,.32);
  color:var(--cyan);
}
.btn-outline:hover{border-color:rgba(0,229,255,.54)}

.hero{
  position:relative;
  min-height:calc(100vh - 78px);
  padding:92px 0 70px;
  overflow:hidden;
  background:#05080f;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(620px 460px at 18% 22%, rgba(0,198,255,.20), transparent 60%),
    radial-gradient(560px 440px at 82% 18%, rgba(150,90,255,.18), transparent 62%),
    radial-gradient(700px 520px at 50% 88%, rgba(255,196,64,.12), transparent 60%),
    radial-gradient(900px 600px at 50% 50%, rgba(0,255,148,.06), transparent 70%),
    linear-gradient(180deg, rgba(5,8,15,0), rgba(5,8,15,.55) 70%, rgba(3,7,17,.96));
  filter:saturate(1.1);
  animation:heroAurora 14s ease-in-out infinite alternate;
}
@keyframes heroAurora{
  0%   { transform:translate3d(0,0,0) scale(1); }
  50%  { transform:translate3d(-2%, 1.5%, 0) scale(1.06); }
  100% { transform:translate3d(2%, -1.5%, 0) scale(1.03); }
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 28%, rgba(0,229,255,.10), transparent 40%),
    radial-gradient(circle at 80% 66%, rgba(150,90,255,.10), transparent 42%),
    linear-gradient(90deg, rgba(0,229,255,.06) 1px, transparent 1px),
    linear-gradient(rgba(0,229,255,.05) 1px, transparent 1px);
  background-size:auto, auto, 60px 60px, 60px 60px;
  opacity:.55;
  mask-image:radial-gradient(125% 95% at 50% 30%, rgba(255,255,255,.9), transparent 78%);
  -webkit-mask-image:radial-gradient(125% 95% at 50% 30%, rgba(255,255,255,.9), transparent 78%);
}
.hero-shell{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:32px;
  align-items:center;
}
.hero-copy{
  max-width:min(100%, 820px);
  margin-inline:auto;
  text-align:center;
}
.hero-stage{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
  margin-top:18px;
  width:100%;
}
.hero-trophy{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
}
.hero-trophy-glow{
  position:absolute;
  inset:-30% -10% auto;
  height:120%;
  background:radial-gradient(420px 280px at 50% 40%, rgba(255,196,64,.22), transparent 66%);
  filter:blur(8px);
  pointer-events:none;
}
.hero-trophy img{
  width:min(320px,80%);
  height:auto;
  filter:drop-shadow(0 24px 60px rgba(0,0,0,.5));
  animation:trophyFloat 5s ease-in-out infinite;
}
@keyframes trophyFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hero-trophy-cap{
  margin-top:10px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.2em;
  color:#ffd479;
  background:linear-gradient(180deg, rgba(255,196,64,.16), rgba(255,196,64,.04));
  border:1px solid rgba(255,196,64,.4);
  border-radius:999px;
  padding:6px 18px;
}
.hero-live-panel{
  width:100%;
}
.hero-live-dot{
  font-size:11px;
  font-weight:700;
  color:#38f0a0;
  letter-spacing:.1em;
  animation:liveBlink 1.6s ease-in-out infinite;
}
@keyframes liveBlink{0%,100%{opacity:1}50%{opacity:.35}}
.hero-live-panel .hero-kpi{background:rgba(255,255,255,.04)}
.hero-lower-shell{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
  gap:32px;
  align-items:start;
  margin-top:16px;
}
.hero-copy{max-width:640px}
.kicker{
  display:inline-block;
  background:rgba(0,0,0,.24);
  border:1px solid rgba(255,255,255,.12);
  border-radius:0;
  padding:15px 18px;
  margin-bottom:18px;
  box-shadow:0 22px 60px rgba(0,0,0,.28);
  backdrop-filter:blur(14px);
}
.kicker .big{font-size:19px;font-weight:800}
.kicker .small{font-size:13px;color:var(--dim);margin-top:4px}
.hero-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:20px;
}
.hero-pills span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:var(--dim);
  font-size:13px;
  font-weight:700;
  backdrop-filter:blur(10px);
}
.hero-est{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin:4px 0 18px;
  color:rgba(255,215,0,.78);
  font-size:12px;
  font-weight:900;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.hero-est::before{
  content:"";
  display:inline-block;
  width:46px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,215,0,.75));
}
.hero-est::after{
  content:"";
  display:inline-block;
  width:46px;
  height:1px;
  background:linear-gradient(90deg, rgba(255,215,0,.75), transparent);
}
.hero h1{
  font-family:var(--font-luxury);
  font-size:clamp(58px,8.2vw,132px);
  font-weight:800;
  line-height:.9;
  max-width:9.5ch;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:rgba(255,255,255,.94);
  text-shadow:0 22px 80px rgba(0,0,0,.78), 0 0 28px rgba(0,229,255,.08);
}
.hero h1 .glow{
  color:rgba(255,255,255,.9);
  text-shadow:0 0 28px rgba(0,229,255,.18);
}
.hero p.sub{
  margin-top:18px;
  max-width:620px;
  color:var(--dim);
  font-size:clamp(15px,2vw,18px);
}
.hero-signature{
  font-family:var(--font-body);
  color:rgba(255,255,255,.82) !important;
  font-size:clamp(21px,2.2vw,29px) !important;
  font-style:normal;
  font-weight:700;
  line-height:1.25;
}
.hero .actions{
  display:flex;
  gap:12px;
  justify-content:flex-start;
  flex-wrap:wrap;
  margin-top:26px;
}
.hero-stage{
  display:grid;
  gap:16px;
  align-content:start;
}
.hero-panel,
.card,
.step,
.tier,
.panel,
.rule,
.faq,
.tele-box,
.cta-box,
.mr-card,
.feat{
  box-shadow:var(--shadow);
  backdrop-filter:blur(16px);
}
.hero-panel{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:24px;
  background:linear-gradient(180deg, rgba(14,23,40,.86), rgba(8,12,22,.94));
  border:1px solid var(--line);
}
.hero-panel::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.05), transparent 26%);
  pointer-events:none;
}
.hero-title-panel{
  padding:22px 24px;
}
.hero-title-panel .hero-panel-top{
  margin-bottom:0;
}
.hero-main-panel{
  min-height:0;
  display:grid;
  gap:18px;
}
.hero-panel-top,
.hero-board-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
}
.hero-panel-top{margin-bottom:18px}
.hero-label{
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#ffd479;
  opacity:.92;
}
.hero-panel h3{
  margin-top:8px;
  font-size:27px;
  line-height:1.05;
  background:linear-gradient(92deg, #ffe9a8 0%, #ffd479 45%, #f0a500 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.hero-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,255,148,.08);
  border:1px solid rgba(0,255,148,.18);
  font-size:12px;
  font-weight:800;
  color:var(--green);
}
.hero-live span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 16px rgba(0,255,148,.8);
}
.hero-kpis{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:0;
}
.hero-kpi{
  min-height:108px;
  padding:16px;
  border-radius:20px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.hero-kpi-label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--dim2);
  font-weight:700;
}
.hero-kpi strong{
  font-size:30px;
  line-height:1;
  color:#fff;
}
.hero-kpi small{
  color:var(--dim);
  font-size:13px;
}
.hero-board{
  position:relative;
  z-index:1;
  padding:18px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
}
.hero-board-title{
  font-size:15px;
  font-weight:700;
  color:#fff;
}
.hero-board-meta{
  color:var(--dim2);
  font-size:12px;
  font-weight:700;
}
.hero-leaders{
  margin-top:14px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.hero-leader{
  padding:14px 14px 12px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
.hero-leader-row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
}
.hero-rank{
  width:42px;
  height:42px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg, rgba(0,229,255,.18), rgba(255,255,255,.06));
  border:1px solid rgba(0,229,255,.22);
  color:var(--cyan);
  font-weight:800;
}
.hero-trader-name{
  font-weight:700;
  color:#fff;
  font-size:15px;
}
.hero-trader-sub{
  color:var(--dim2);
  font-size:12px;
  margin-top:2px;
  font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
}
.hero-score{
  text-align:right;
  font-weight:800;
  font-size:24px;
  color:var(--cyan);
}
.hero-bar{
  margin-top:12px;
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.06);
}
.hero-bar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, var(--cyan), var(--green));
  box-shadow:0 0 18px rgba(0,229,255,.28);
}
.hero-leader-stats{
  margin-top:10px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  color:var(--dim);
  font-size:12px;
}
.hero-empty{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px dashed rgba(255,255,255,.12);
  color:var(--dim);
  text-align:center;
}
.hero-side-panel{text-align:center}
.hero-side-panel .hero-guards{justify-content:center}
.hero-side-panel h3{margin-bottom:16px;text-align:center}
.hero-guards{
  display:grid;
  gap:10px;
}
.hero-guard{
  padding:14px 16px;
  border-radius:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.hero-guard-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:6px;
}
.hero-guard-top strong{
  font-size:14px;
  color:#fff;
}
.hero-guard-badge{
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hero-guard-badge.ok{
  background:rgba(0,255,148,.1);
  color:var(--green);
}
.hero-guard-badge.info{
  background:rgba(0,229,255,.1);
  color:var(--cyan);
}
.hero-guard p{
  color:var(--dim);
  font-size:13px;
}
.hero-ticker{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.hero-ticker span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  font-size:12px;
  color:var(--dim);
  font-weight:700;
}

.prizepool{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:18px;
  flex-wrap:wrap;
  margin:28px 0 0;
  padding:18px 22px;
  max-width:760px;
  border-radius:20px;
  background:linear-gradient(135deg, rgba(255,215,0,.12), rgba(0,255,148,.1));
  border:1px solid rgba(255,215,0,.22);
}
.pp-item{text-align:left}
.pp-lbl{
  font-size:11px;
  color:var(--dim);
  text-transform:uppercase;
  letter-spacing:.12em;
}
.pp-val{font-size:34px;font-weight:700;line-height:1.02}
.pp-val.green{color:var(--green)}
.pp-val.cyan{color:var(--cyan)}
.pp-sub{font-size:12px;color:var(--dim2);margin-top:4px}
.pp-div{width:1px;height:46px;background:var(--line)}

.prop-strip{
  position:relative;
  z-index:2;
  margin-top:-22px;
  padding:0 0 26px;
}
.prop-strip-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.prop-strip-item{
  min-height:116px;
  padding:18px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.1);
  background:linear-gradient(180deg,rgba(13,24,42,.92),rgba(6,12,22,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.28);
}
.prop-strip-item span{
  display:block;
  color:var(--cyan);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0;
}
.prop-strip-item strong{
  display:block;
  margin-top:6px;
  color:#fff;
  font-size:22px;
  line-height:1.12;
}
.prop-strip-item small{
  display:block;
  margin-top:8px;
  color:var(--dim);
  font-size:12px;
  line-height:1.45;
}
.hero-prop-list{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-self:start;
}
.hero-prop-list .prop-strip-item{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(118px,.42fr) minmax(0,.58fr);
  column-gap:18px;
  row-gap:4px;
  align-items:center;
  padding:18px 20px;
  border-radius:18px;
}
.hero-prop-list .prop-strip-item span{
  grid-column:1;
}
.hero-prop-list .prop-strip-item strong{
  grid-column:1;
  margin-top:4px;
}
.hero-prop-list .prop-strip-item small{
  grid-column:2;
  grid-row:1 / span 2;
  margin-top:0;
  font-size:13px;
}

section.block{position:relative;padding:72px 0}
.sec-head{text-align:center;margin-bottom:38px}
.sec-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,215,0,.12);
  border:1px solid rgba(255,215,0,.18);
  color:var(--gold);
  font-weight:800;
  font-size:12px;
  margin-bottom:14px;
  letter-spacing:.06em;
}
.sec-head h2{font-size:clamp(28px,3.8vw,44px);font-weight:700;line-height:1.04;background:linear-gradient(92deg, #ffe9a8 0%, #ffd479 45%, #f0a500 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.sec-head p{color:var(--dim);margin-top:10px}
.bg-grad{
  background:
    linear-gradient(180deg, rgba(7,17,31,.66), rgba(3,7,17,.92)),
    linear-gradient(135deg, rgba(0,229,255,.03), transparent 35%);
}
.bg-grad2{
  background:
    linear-gradient(180deg, rgba(9,17,31,.88), rgba(5,9,17,.96)),
    linear-gradient(315deg, rgba(0,255,148,.025), transparent 36%);
}

.challenge-suite{
  background:
    linear-gradient(180deg, rgba(238,245,255,.03), rgba(3,7,17,.94)),
    linear-gradient(135deg, rgba(0,229,255,.06), rgba(255,215,0,.025) 46%, rgba(0,255,148,.04));
}
.challenge-suite-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:26px;
}
.challenge-suite-head h2{
  font-size:clamp(32px,4vw,52px);
  line-height:1.02;
}
.challenge-suite-head p{
  max-width:720px;
  margin-top:12px;
  color:var(--dim);
}
.suite-status{
  flex:none;
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0 15px;
  border-radius:999px;
  background:rgba(0,255,148,.1);
  border:1px solid rgba(0,255,148,.22);
  color:var(--green);
  font-size:13px;
  font-weight:900;
}
.suite-status span{
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 18px rgba(0,255,148,.8);
}
.challenge-suite-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:stretch;
  max-width:1160px;
  margin:0 auto;
}
.challenge-offer,
.objective-table{
  min-width:0;
  border-radius:8px;
  background:linear-gradient(180deg,rgba(14,23,40,.9),rgba(7,12,22,.98));
  border:1px solid rgba(255,255,255,.11);
  box-shadow:var(--shadow);
}
.challenge-offer{
  padding:24px;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.offer-top{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.offer-top span,
.offer-reward span,
.objective-table-head span,
.objective-row span{
  display:block;
  color:var(--dim2);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.offer-top strong{
  display:block;
  margin-top:8px;
  font-size:56px;
  line-height:.92;
  color:#fff;
}
.offer-badge{
  flex:none;
  border-radius:999px;
  padding:7px 11px;
  background:rgba(0,229,255,.12);
  border:1px solid rgba(0,229,255,.26);
  color:var(--cyan);
  font-size:12px;
  font-weight:900;
}
.offer-reward{
  padding:20px;
  border-radius:8px;
  background:linear-gradient(135deg,rgba(255,215,0,.1),rgba(0,255,148,.06));
  border:1px solid rgba(255,215,0,.18);
}
.offer-reward b{
  display:block;
  margin-top:6px;
  color:var(--gold);
  font-size:26px;
  line-height:1.1;
}
.offer-reward small{
  display:block;
  margin-top:8px;
  color:var(--dim);
  font-size:13px;
  line-height:1.45;
}
.offer-prizes{
  display:grid;
  gap:11px;
  margin:4px 0 6px;
}
.offer-prizes div{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  align-items:center;
  gap:14px;
  min-height:60px;
  padding:10px 12px;
  border-radius:8px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.07);
}
.offer-prizes b{
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:8px;
  background:rgba(0,229,255,.12);
  color:var(--cyan);
  font-size:13px;
}
.offer-prize-copy{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.offer-prize-name{
  min-width:0;
  flex:1 1 auto;
  font-size:13px;
  color:#fff;
  font-weight:800;
  line-height:1.25;
}
.offer-prize-copy small{
  flex:none;
  max-width:52%;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,215,0,.1);
  border:1px solid rgba(255,215,0,.2);
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  line-height:1.15;
  text-align:right;
  white-space:normal;
}
.challenge-offer .btn{
  width:100%;
}
.objective-table{
  overflow:hidden;
}
.objective-table-head{
  min-height:74px;
  padding:18px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  background:rgba(255,255,255,.035);
  border-bottom:1px solid rgba(255,255,255,.1);
  text-align:center;
}
.objective-table-head b{
  color:#fff;
  font-size:20px;
}
.objective-row{
  display:grid;
  grid-template-columns:minmax(150px,.8fr) minmax(150px,.8fr) minmax(190px,1fr);
  gap:16px;
  align-items:center;
  min-height:72px;
  padding:14px 20px;
  border-bottom:1px solid rgba(255,255,255,.075);
}
.objective-row > *{min-width:0}
.objective-row:last-child{border-bottom:none}
.objective-row b{
  color:#fff;
  font-size:18px;
  line-height:1.15;
}
.objective-row small{
  color:var(--dim);
  font-size:13px;
  line-height:1.4;
}
.objective-row.ok b{color:var(--green)}
.objective-row.danger b{color:var(--red)}
.challenge-timeline{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}
.challenge-timeline div{
  min-width:0;
  min-height:136px;
  padding:17px;
  border-radius:8px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}
.challenge-timeline span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:8px;
  background:linear-gradient(135deg,var(--cyan),var(--green));
  color:#04121a;
  font-weight:900;
  font-size:13px;
}
.challenge-timeline b{
  display:block;
  margin-top:12px;
  color:#fff;
  font-size:16px;
  line-height:1.2;
}
.challenge-timeline small{
  display:block;
  margin-top:8px;
  color:var(--dim);
  font-size:12px;
  line-height:1.42;
}
.challenge-specs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.challenge-specs div{
  min-width:0;
  padding:16px;
  border-radius:8px;
  background:rgba(3,7,17,.42);
  border:1px solid rgba(255,255,255,.08);
}
.challenge-specs span{
  display:block;
  color:var(--dim2);
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.challenge-specs b{
  display:block;
  margin-top:8px;
  color:#fff;
  font-size:18px;
  line-height:1.15;
}
.challenge-specs small{
  display:block;
  margin-top:7px;
  color:var(--dim);
  font-size:12px;
  line-height:1.42;
}

.tiers{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
.tier{
  position:relative;
  min-width:0;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025));
  border:1px solid rgba(0,229,255,.18);
  border-radius:22px;
  padding:24px 20px 20px;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.tier:hover{
  transform:translateY(-4px);
  border-color:rgba(255,255,255,.22);
}
.tier.t-500usd{border-color:rgba(80,140,255,.24)}
.tier.t-1000usd{border-color:rgba(155,89,182,.26)}
.tier.locked{opacity:.68}
.badge{
  position:absolute;
  top:-11px;
  left:50%;
  transform:translateX(-50%);
  font-size:11px;
  font-weight:800;
  padding:4px 12px;
  border-radius:999px;
}
.badge.live{background:var(--green);color:#04110a;animation:pulse 1.6s infinite}
.badge.soon{background:#273345;color:var(--dim)}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.55}}
.tier-dep{font-size:34px;font-weight:700;text-align:center;color:var(--cyan)}
.tier.t-500usd .tier-dep{color:#80a9ff}
.tier.t-1000usd .tier-dep{color:#c69cff}
.tier-sub{text-align:center;color:var(--dim);font-size:12px;margin-top:4px}
.tier-prize{
  margin:16px 0;
  padding:14px;
  border-radius:16px;
  background:rgba(0,0,0,.24);
  border:1px solid rgba(255,255,255,.05);
}
.tp-val{text-align:center;font-size:26px;font-weight:700;color:var(--green)}
.tier-meta{font-size:13px;margin-bottom:12px}
.trow{display:flex;justify-content:space-between;padding:4px 0;color:var(--dim)}
.tier-top{max-width:100%;border-top:1px solid var(--line);padding-top:12px;margin-bottom:16px}
.tt-h{font-size:11px;color:var(--dim2);text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}
.tt-list{margin-top:14px}
.tier .btn{width:100%}
.top-prize-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:8px 0 6px;
}
.top-prize-button{
  min-width:0;
  min-height:96px;
  padding:14px 13px;
  border:1px solid rgba(96,202,218,.24);
  border-radius:999px;
  background:
    linear-gradient(180deg, rgba(46,130,148,.34), rgba(15,24,38,.94)),
    radial-gradient(circle at 50% -12%, rgba(0,229,255,.2), transparent 58%);
  color:#fff;
  cursor:pointer;
  text-align:center;
  box-shadow:0 18px 42px -34px rgba(0,0,0,.9);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.top-prize-button span{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.top-prize-button b{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:15px;
  line-height:1.18;
}
.top-prize-button small{
  display:block;
  margin-top:7px;
  color:var(--dim);
  font-size:12px;
  font-weight:900;
  line-height:1.2;
}
.top-prize-button:hover{
  transform:translateY(-5px) scale(1.03);
  border-color:rgba(255,215,0,.9);
  box-shadow:
    0 0 0 1px rgba(255,215,0,.22),
    0 24px 68px -32px rgba(255,215,0,.62);
}
.prize-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  width:100%;
}
.prize-card{
  min-height:190px;
  padding:14px 12px;
  border-radius:16px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.075);
  text-align:center;
}
.prize-img{
  height:112px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:10px;
  border-radius:14px;
  background:none;
  overflow:visible;
}
.prize-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  mix-blend-mode:normal;
}
.prize-rank{
  color:var(--gold);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.prize-name{
  margin-top:5px;
  color:#fff;
  font-weight:800;
  font-size:14px;
  line-height:1.25;
}

.objectives-block{
  background:linear-gradient(180deg,rgba(4,10,18,.96),rgba(9,16,28,.92));
}
.objective-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.objective-card{
  min-height:172px;
  padding:20px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.085);
}
.objective-card.primary{border-color:rgba(0,229,255,.28);background:linear-gradient(160deg,rgba(0,229,255,.12),rgba(255,255,255,.025))}
.objective-card.warn{border-color:rgba(255,107,107,.24);background:linear-gradient(160deg,rgba(255,107,107,.1),rgba(255,255,255,.025))}
.objective-card.ok{border-color:rgba(0,255,148,.24);background:linear-gradient(160deg,rgba(0,255,148,.1),rgba(255,255,255,.025))}
.objective-label{
  color:var(--dim2);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:800;
}
.objective-card strong{
  display:block;
  margin-top:10px;
  color:#fff;
  font-size:26px;
  line-height:1.08;
}
.objective-card p{margin-top:10px;color:var(--dim);font-size:13px;line-height:1.55}
.objective-note{
  margin-top:16px;
  padding:16px 18px;
  border-radius:16px;
  border:1px solid rgba(0,229,255,.16);
  background:rgba(0,229,255,.055);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.objective-note span{color:var(--cyan);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.objective-note b{font-size:14px;color:#fff;text-align:right}
.challenge-lab{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  gap:18px;
  margin-top:22px;
}
.challenge-card{
  padding:22px;
  border-radius:8px;
  background:linear-gradient(180deg,rgba(14,23,40,.86),rgba(7,12,22,.96));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:var(--shadow);
}
.challenge-card.primary{
  border-color:rgba(0,229,255,.24);
  background:
    linear-gradient(180deg,rgba(0,229,255,.08),transparent 48%),
    linear-gradient(180deg,rgba(14,23,40,.9),rgba(7,12,22,.98));
}
.challenge-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.challenge-card h3{
  margin-top:8px;
  font-size:26px;
  line-height:1.08;
}
.challenge-price{
  flex:none;
  min-width:86px;
  text-align:center;
  padding:10px 12px;
  border-radius:8px;
  background:rgba(0,255,148,.12);
  border:1px solid rgba(0,255,148,.22);
  color:var(--green);
  font-weight:900;
  font-size:24px;
}
.challenge-matrix{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}
.challenge-matrix div{
  min-height:86px;
  padding:14px;
  border-radius:8px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}
.challenge-matrix span,
.mini-metric span{
  display:block;
  color:var(--dim2);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0;
}
.challenge-matrix b{
  display:block;
  margin-top:9px;
  color:#fff;
  font-size:18px;
  line-height:1.2;
}
.challenge-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
  color:var(--dim);
  font-size:13px;
}
.review-steps{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.review-steps div{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:12px;
  align-items:center;
  min-height:72px;
  padding:12px;
  border-radius:8px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}
.review-steps b{
  color:var(--gold);
  font-size:18px;
}
.review-steps span{
  color:var(--dim);
  font-size:13px;
  line-height:1.45;
}
.phase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.phase-card{
  position:relative;
  padding:26px 22px 22px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.026));
  border:1px solid rgba(255,255,255,.085);
}
.phase-num{
  width:42px;
  height:42px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#04121a;
  background:linear-gradient(135deg,var(--cyan),var(--green));
  font-weight:900;
  margin-bottom:16px;
}
.phase-card h3{font-size:20px;margin-bottom:8px}
.phase-card p{color:var(--dim);font-size:14px;line-height:1.55}
.phase-card ul{list-style:none;margin-top:14px;color:#fff;font-size:13px}
.phase-card li{padding:7px 0;border-top:1px solid rgba(255,255,255,.07)}
.phase-card li::before{content:"✓";color:var(--green);font-weight:900;margin-right:8px}

.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid5{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.card{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  padding:24px;
  transition:transform .18s ease, border-color .18s ease;
}
.card:hover{
  transform:translateY(-3px);
  border-color:rgba(255,255,255,.14);
}
.card.center{text-align:center}
.ic{
  width:58px;
  height:58px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  margin:0 auto 14px;
}
.ic.g{background:rgba(0,255,148,.16)}
.ic.c{background:rgba(0,229,255,.16)}
.ic.y{background:rgba(255,215,0,.16)}
.ic.p{background:rgba(155,89,182,.16)}
.ic.r{background:rgba(255,107,107,.16)}
.card h3{font-size:20px;margin-bottom:8px}
.card p{color:var(--dim);font-size:14px}
.code{
  display:inline-block;
  margin-top:10px;
  padding:6px 10px;
  border-radius:10px;
  background:rgba(0,229,255,.08);
  color:var(--cyan);
  font-family:ui-monospace,monospace;
  font-size:12px;
}
.card .tag{
  position:absolute;
  top:12px;
  right:12px;
  font-size:11px;
  font-weight:800;
  padding:4px 9px;
  border-radius:999px;
}
.relative{position:relative}

.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.step{
  position:relative;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  padding:28px 24px 24px;
}
.step .num{
  position:absolute;
  top:-14px;
  left:20px;
  color:#04121a;
  font-weight:800;
  font-size:13px;
  padding:4px 12px;
  border-radius:999px;
}
.step .num.c{background:var(--cyan)}
.step .num.g{background:var(--green)}
.step .num.y{background:var(--gold)}
.step .em{font-size:30px;margin:8px 0 10px;display:block}

.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ex-row{
  position:relative;
  border-radius:16px;
  padding:16px 16px 16px 20px;
  margin-bottom:12px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.ex-1{background:linear-gradient(90deg, rgba(255,215,0,.18), transparent);border:1px solid rgba(255,215,0,.28)}
.ex-2{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.ex-row .badge2{
  position:absolute;
  top:-10px;
  left:-10px;
  width:30px;
  height:30px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  color:#fff;
}
.ex-1 .badge2{background:var(--gold);color:#000}
.ex-2 .badge2{background:#46535f}
.ex-score{font-size:26px;font-weight:700;color:#b07bd4;text-align:right}
.ex-score small{display:block;font-size:11px;color:var(--dim2);font-weight:400}
.note{
  background:rgba(155,89,182,.1);
  border:1px solid rgba(155,89,182,.22);
  border-radius:12px;
  padding:12px;
  text-align:center;
  font-size:14px;
  color:var(--dim);
}
.feat{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:16px;
  display:flex;
  gap:14px;
  margin-bottom:12px;
  align-items:flex-start;
}
.feat .fic{
  width:46px;
  height:46px;
  border-radius:14px;
  flex:0 0 46px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
}
.feat h4{font-size:15px;margin-bottom:4px}
.feat p{font-size:13px;color:var(--dim)}
.xau{border:1px solid rgba(255,107,107,.22);background:rgba(255,107,107,.05)}
.xau ul{list-style:none;font-size:13.5px;color:var(--txt)}
.xau li{display:flex;gap:8px;margin-top:8px}

.lb-head{text-align:center;margin-bottom:22px}
.lb-head h1{font-size:clamp(28px,4vw,48px);font-weight:700}
.chips{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:center;
  margin:10px 0;
}
.chip{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:var(--dim);
  font-weight:700;
  font-size:14px;
  padding:9px 15px;
  border-radius:999px;
  cursor:pointer;
  white-space:nowrap;
  transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.chip:hover{color:#fff;border-color:rgba(255,255,255,.16)}
.chip.on{
  background:linear-gradient(135deg, var(--gold), #ffa500);
  color:#1a1200;
  border-color:transparent;
}
.chip.dis{opacity:.42;cursor:not-allowed}
.board-desc{text-align:center;color:var(--dim2);font-size:13px;margin:4px 0 18px}
.panel{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  overflow:hidden;
}
.panel .ph{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:16px 18px;
  border-bottom:1px solid rgba(255,255,255,.08);
  font-weight:700;
}
.leaderboard-titlebar{flex-wrap:wrap}
.lb-title-main{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.lb-rank-search{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:300px;
  max-width:430px;
  flex:1 1 330px;
  justify-content:flex-end;
}
.lb-rank-search input{
  width:100%;
  min-width:0;
  height:38px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  padding:0 12px;
  color:#fff;
  outline:none;
  font-size:13px;
}
.lb-rank-search input:focus{border-color:rgba(0,229,255,.45);box-shadow:0 0 0 3px rgba(0,229,255,.08)}
.lb-rank-result:empty{display:none}
.lb-rank-result{
  padding:14px 18px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.lb-rank-result .mr-card{
  margin-bottom:14px;
  padding:16px;
  border-radius:16px;
}
.lb-rank-result .mr-big{font-size:22px}
table{width:100%;border-collapse:collapse}
#lb-table,
#winners-list{
  overflow-x:auto;
  max-width:100%;
}
#lb-table table{
  min-width:760px;
}
thead tr{background:rgba(255,255,255,.03);font-size:12.5px;color:var(--dim)}
th,td{padding:13px 16px;text-align:left}
tbody tr{border-top:1px solid rgba(255,255,255,.05)}
tbody tr:hover{background:rgba(255,255,255,.03)}
tbody tr.top{background:linear-gradient(90deg, rgba(255,255,255,.04), transparent)}
.rank{font-size:18px;font-weight:800;color:var(--dim)}
.rank.r1{color:var(--gold)}
.rank.r2{color:#c8cdd4}
.rank.r3{color:#cd7f32}
.tg{font-weight:600}
.acc{font-size:11px;color:var(--dim2);font-family:ui-monospace,monospace}
.pill{
  background:rgba(255,215,0,.18);
  color:var(--gold);
  font-weight:800;
  font-size:13px;
  padding:4px 9px;
  border-radius:8px;
}
.empty{text-align:center;color:var(--dim);padding:42px 0}
.empty .btn{margin-top:14px}
.dq{
  margin-top:14px;
  background:rgba(255,107,107,.07);
  border:1px solid rgba(255,107,107,.2);
  border-radius:14px;
  padding:12px 16px;
  font-size:13px;
  color:var(--dim);
}
.dq span{color:var(--red);cursor:help;border-bottom:1px dashed rgba(255,107,107,.4)}

.rule{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:18px;
  margin-bottom:12px;
}
.rules-notice,
.rules-warning{
  margin-bottom:14px;
  border-radius:18px;
  padding:20px;
  border:1px solid rgba(255,215,0,.22);
  background:
    linear-gradient(180deg, rgba(255,215,0,.12), rgba(255,255,255,.035)),
    linear-gradient(135deg, rgba(0,229,255,.06), transparent 48%);
}
.rules-notice-kicker{
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rules-notice h3,
.rules-warning h3{
  margin-top:8px;
  color:#fff;
  font-size:22px;
  line-height:1.18;
}
.rules-notice p{
  margin-top:10px;
  color:var(--dim);
}
.rules-notice p b{
  color:var(--green);
}
.rules-notice small{
  display:block;
  margin-top:8px;
  color:var(--dim2);
  font-size:12px;
}
.rules-warning{
  border-color:rgba(255,107,107,.28);
  background:
    linear-gradient(180deg, rgba(255,107,107,.12), rgba(255,255,255,.035)),
    linear-gradient(135deg, rgba(255,215,0,.06), transparent 48%);
}
.rules-warning p{
  margin-top:10px;
  color:var(--dim);
  font-size:14px;
}
.rules-warning b{
  display:block;
  margin-top:12px;
  color:var(--gold);
}
.rule h4{
  font-size:16px;
  margin-bottom:6px;
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  font-weight:800;
  background:linear-gradient(92deg, #ffe9a8 0%, #ffd479 45%, #f0a500 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.rule .st{
  font-size:11px;
  font-weight:800;
  padding:3px 8px;
  border-radius:999px;
}
.st.ok{background:rgba(0,255,148,.16);color:var(--green)}
.st.warn{background:rgba(255,215,0,.16);color:var(--gold)}
.rule p{color:var(--dim);font-size:14px}
.rule code{
  background:rgba(0,229,255,.08);
  color:var(--cyan);
  padding:2px 7px;
  border-radius:6px;
  font-size:12.5px;
}

.cta-box{
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(0,229,255,.2);
  border-radius:28px;
  padding:48px 28px;
  text-align:center;
  max-width:780px;
  margin:0 auto;
}
.zalo-line{margin-top:26px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}
.portal-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  width:100%;
}
.portal-grid-inline{
  max-width:860px;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
}
.portal-grid-center{
  max-width:860px;
  margin-left:auto;
  margin-right:auto;
}
.portal-grid-single{
  grid-template-columns:1fr;
  max-width:360px;
}
.portal-btn{
  min-height:52px;
  padding:0 16px;
  width:100%;
  min-width:0;
  font-size:14px;
}
.btn-tele.portal-btn{
  min-height:56px;
  padding-left:30px;
  padding-right:30px;
  border-radius:999px;
}
.portal-note{
  width:100%;
  color:var(--dim2);
  font-size:12px;
  line-height:1.6;
}
.hero .portal-note{text-align:left}
.contact-duo{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  justify-content:center;
}
.contact-duo-inline{
  align-items:center;
}
.hero .actions .contact-duo-inline{
  justify-content:flex-start;
}
.hero .actions .contact-duo-inline .btn{
  width:auto;
}
footer{
  border-top:1px solid rgba(255,255,255,.08);
  padding:8px 0 10px;
  color:var(--dim2);
  font-size:11px;
  line-height:1.25;
}
footer .wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:5px 12px;
}
footer .wrap > div:last-child{
  gap:12px !important;
}
footer a{color:var(--dim)}
footer a:hover{color:#fff}
.zalo-float{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:60;
  display:flex;
  align-items:center;
  gap:8px;
  min-height:52px;
  padding:0 18px;
  border-radius:999px;
  background:linear-gradient(135deg, #0f7cff, #0059ff);
  color:#fff;
  font-weight:700;
  box-shadow:0 16px 34px rgba(0,104,255,.34);
  transition:transform .18s ease;
}
.zalo-float:hover{transform:translateY(-2px)}
.disclaimer{
  max-width:760px;
  margin:7px auto 0;
  color:var(--dim2);
  font-size:10.5px;
  text-align:center;
  line-height:1.38;
}
.risk-disclaimer{
  margin:18px auto 0;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.035);
  color:rgba(235,230,218,.68);
  font-size:11px;
  line-height:1.55;
  text-align:left;
}
.risk-disclaimer strong{
  color:rgba(255,255,255,.86);
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
}

[data-view="register"] section.block{
  padding:34px 0 18px;
}
[data-view="register"] .cta-box{
  max-width:640px;
  padding:32px 24px 28px;
  border-radius:22px;
}
[data-view="register"] .cta-box h2{
  margin:0;
  font-size:28px !important;
  line-height:1.12;
}
[data-view="register"] .cta-box p{
  margin-top:7px !important;
  max-width:500px !important;
  font-size:14px;
  line-height:1.5;
}
[data-view="register"] .portal-grid{
  margin-top:18px !important;
}
[data-view="register"] .actions{
  margin-top:12px !important;
}
[data-view="register"] .btn-tele.portal-btn{
  min-height:48px;
}
[data-view="register"] .disclaimer{
  margin-top:8px;
  max-width:700px;
}
.register-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:22px;
  align-items:stretch;
}
.register-copy,
.register-form{
  border:1px solid rgba(232,207,154,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(11,10,8,.76);
  box-shadow:0 26px 86px -58px rgba(240,213,143,.4);
}
.register-copy{
  padding:30px 28px;
  border-radius:24px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:100%;
}
.register-copy .register-steps{margin-bottom:auto}
.register-copy .register-actions{margin-top:28px}
.register-copy h2{
  margin:8px 0 12px;
  font-size:clamp(28px,4vw,48px);
  line-height:1.05;
  color:#fff;
}
.register-copy p{
  color:rgba(246,242,231,.76);
  font-size:15px;
  line-height:1.66;
}
.register-step-eyebrow{
  display:inline-flex;
  align-items:center;
  margin:10px 0 12px;
  padding:7px 13px;
  border-radius:999px;
  border:1px solid rgba(240,213,143,.24);
  background:rgba(240,213,143,.08);
  color:#f6e4ad;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}
.register-steps{
  display:grid;
  gap:10px;
  margin:18px 0 20px;
}
.register-steps div{
  display:grid;
  grid-template-columns:48px 1fr;
  align-items:center;
  gap:12px;
  padding:12px 13px;
  border-radius:16px;
  border:1px solid rgba(232,207,154,.12);
  background:rgba(255,244,220,.045);
}
.register-steps b{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  background:linear-gradient(135deg,#f0d58f,#a66f35);
  color:#111;
  font-size:13px;
}
.register-steps span{
  color:#fff;
  font-weight:800;
  line-height:1.25;
}
.register-steps small{
  display:block;
  margin-top:5px;
  color:rgba(246,242,231,.62);
  font-size:12.5px;
  font-weight:600;
  line-height:1.45;
}
.register-actions{
  justify-content:flex-start;
  margin-top:18px;
}
.register-form{
  padding:24px;
  border-radius:24px;
}
.form-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-end;
  margin-bottom:18px;
}
.form-head span{
  color:var(--champagne);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.form-head b{
  color:#fff;
  font-size:22px;
  line-height:1.1;
}
.form-grid,
.mt5-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.form-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.register-form label{
  display:grid;
  gap:7px;
}
.register-form label.full{grid-column:1 / -1}
.register-form label > span,
.mt5-head span{
  color:rgba(246,242,231,.68);
  font-size:12px;
  font-weight:800;
}
.register-form input,
.register-form select,
.register-form textarea{
  width:100%;
  border:1px solid rgba(232,207,154,.13);
  border-radius:14px;
  background:rgba(4,4,5,.66);
  color:#fff;
  font:inherit;
  outline:none;
  padding:13px 14px;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.register-form textarea{resize:vertical;min-height:92px}
.register-form select{appearance:auto}
.register-form input:focus,
.register-form select:focus,
.register-form textarea:focus{
  border-color:rgba(240,213,143,.55);
  box-shadow:0 0 0 4px rgba(240,213,143,.1);
  background:rgba(8,8,9,.9);
}
.register-form input::placeholder,
.register-form textarea::placeholder{color:rgba(246,242,231,.36)}
.mt5-block{
  margin:18px 0 14px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(232,207,154,.12);
  background:rgba(255,244,220,.035);
}
.mt5-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.mt5-head b{
  color:#fff;
  font-size:15px;
}
.mt5-head span{
  text-align:right;
  max-width:240px;
}
.agree{
  display:flex !important;
  grid-template-columns:18px 1fr;
  align-items:flex-start;
  gap:10px !important;
  margin-top:14px;
  color:rgba(246,242,231,.78);
  font-size:12.5px;
  line-height:1.5;
}
.agree input{
  width:18px;
  height:18px;
  flex:0 0 18px;
  margin-top:2px;
  accent-color:#d8ae56;
}
.form-actions{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:10px;
  margin-top:18px;
}
.form-actions .btn{
  width:100%;
  min-height:48px;
}
.form-status{
  min-height:22px;
  margin-top:12px;
  color:rgba(246,242,231,.7);
  font-size:13px;
  line-height:1.45;
}
.form-status.ok{color:#54e0a6}
.form-status.error{color:#ff8585}
@media(max-width:900px){
  .register-layout{grid-template-columns:1fr}
  .register-copy{min-height:auto}
}
@media(max-width:640px){
  [data-view="register"] section.block{padding-top:18px}
  .register-copy,
  .register-form{
    border-radius:18px;
    padding:18px;
  }
  .register-step-eyebrow{
    margin:8px 0 10px;
  }
  .register-copy h2{
    margin-top:6px;
    font-size:28px;
  }
  .register-copy p{
    font-size:13.5px;
    line-height:1.55;
  }
  .register-steps{
    margin:16px 0 18px;
    gap:8px;
  }
  .register-steps div{
    grid-template-columns:42px 1fr;
    padding:10px;
    border-radius:14px;
  }
  .register-steps b{
    width:34px;
    height:34px;
  }
  .form-head{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .form-grid,
  .mt5-grid,
  .form-actions{
    grid-template-columns:1fr;
  }
  .mt5-row{
    grid-template-columns:1fr 34px !important;
    grid-auto-rows:auto;
  }
  .mt5-row input[name="mt5_account"]{grid-column:1 / 2}
  .mt5-row .mt5-server-wrap{grid-column:1 / 2}
  .mt5-row input[name="investor_password"]{grid-column:1 / 2}
  .mt5-row .mt5-del-btn{
    grid-column:2;
    grid-row:1 / span 3;
    align-self:stretch;
    height:auto;
    min-height:40px;
    font-size:16px;
  }
  .mt5-server-wrap select,
  .mt5-server-wrap .mt5-server-custom{
    font-size:14px;
  }
  .form-broker-links{
    grid-template-columns:1fr 1fr !important;
    gap:8px;
  }
  .form-broker-btn{
    min-height:40px !important;
    padding:8px 10px !important;
    font-size:12px !important;
  }
  .form-broker-btn .btn-logo{
    width:16px !important;
    height:16px !important;
  }
  .register-copy .register-actions{
    flex-wrap:wrap;
    gap:8px;
  }
  .register-copy .register-actions .btn{
    font-size:12px;
    padding:10px 14px;
  }
  .mt5-block{
    padding:13px;
  }
  .mt5-head{
    flex-direction:column;
    gap:4px;
  }
  .mt5-head span{
    text-align:left;
    max-width:none;
  }
  .register-form input,
  .register-form select,
  .register-form textarea{
    border-radius:13px;
    padding:12px 13px;
  }
}

.cd-wrap{
  text-align:center;
  margin:0 auto 32px;
  max-width:760px;
  padding:18px 22px 20px;
  border-radius:20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    linear-gradient(90deg, rgba(0,229,255,.09), rgba(0,255,148,.08));
  border:1px solid rgba(0,229,255,.22);
  box-shadow:0 22px 70px -42px rgba(0,229,255,.62);
}
.cd-head{
  color:var(--cyan);
  font-weight:700;
  font-size:14px;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:8px;
}
.cd-status{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  color:#fff;
  max-width:640px;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(21px,2.5vw,30px);
  font-weight:400;
  line-height:1.12;
  text-wrap:balance;
  margin-bottom:14px;
}
.cd-status-lead,
.cd-status-time,
.cd-status-note{
  display:block;
  max-width:100%;
}
.cd-status-lead{
  font-size:clamp(21px,2.35vw,30px);
  line-height:1.14;
}
.cd-status-time{
  font-size:clamp(27px,3vw,38px);
  line-height:1.08;
  color:#fffaf0;
}
.cd-status-note{
  margin-top:4px;
  font-family:var(--font-body);
  font-size:clamp(14px,1.35vw,17px);
  font-weight:800;
  line-height:1.42;
  color:#efe7d8;
  letter-spacing:0;
}
.cd-progress-track{
  height:10px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(0,0,0,.34);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 0 18px rgba(0,0,0,.4);
}
.cd-progress-track span{
  display:block;
  width:0%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--cyan),var(--green));
  box-shadow:0 0 22px rgba(0,229,255,.5);
  transition:width .8s cubic-bezier(.2,.8,.2,1);
}
.cd-wrap.is-pending .cd-progress-track span{
  background:linear-gradient(90deg,var(--gold),var(--cyan));
}
.cd-wrap.is-ended .cd-progress-track span{
  background:linear-gradient(90deg,var(--gold),rgba(255,107,107,.9));
}
.cd-meta{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin:10px 2px 14px;
  color:var(--dim);
  font-size:12px;
  font-weight:700;
}
.cd{display:flex;gap:10px;justify-content:center}
.cd-box{
  min-width:68px;
  padding:12px 4px;
  border-radius:14px;
  background:rgba(0,0,0,.42);
}
.cd-num{
  font-size:30px;
  font-weight:700;
  color:#fff;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.cd-lbl{font-size:11px;color:var(--dim);margin-top:6px}
.cd-end,.cd-end-state{color:var(--gold);font-weight:700}

.trust-strip{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:26px;
}
.trust-strip span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(0,255,148,.08);
  border:1px solid rgba(0,255,148,.2);
  color:var(--green);
  font-weight:700;
  font-size:13px;
}

.cockpit-block{
  background:
    linear-gradient(180deg,rgba(0,229,255,.035),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.015),transparent);
}
.cockpit-grid{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:16px;
}
.cockpit-panel{
  min-height:210px;
  padding:22px;
  border-radius:8px;
  background:linear-gradient(180deg,rgba(14,23,40,.88),rgba(7,12,22,.96));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:var(--shadow);
}
.cockpit-panel.wide{min-height:260px}
.cockpit-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--dim);
  font-size:13px;
  font-weight:800;
}
.status-dot{
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 18px rgba(0,255,148,.8);
}
.cockpit-top b{color:var(--green)}
.cockpit-list{
  display:grid;
  gap:10px;
  margin-top:20px;
}
.cockpit-list div{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:center;
  padding:13px;
  border-radius:8px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}
.cockpit-list span{
  color:var(--cyan);
  font-weight:900;
  grid-row:1 / span 2;
}
.cockpit-list b{
  grid-column:2;
  color:#fff;
  font-size:15px;
}
.cockpit-list small{
  grid-column:2;
  display:block;
  margin-top:3px;
  color:var(--dim);
  font-size:12px;
  line-height:1.4;
}
.mini-metric strong{
  display:block;
  margin-top:8px;
  color:#fff;
  font-size:34px;
  line-height:1;
}
.cockpit-panel p{
  margin-top:18px;
  color:var(--dim);
  font-size:14px;
  line-height:1.6;
}

.faq{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:4px 18px;
  margin-bottom:10px;
}
.faq summary{
  cursor:pointer;
  font-weight:700;
  padding:14px 0;
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";
  color:var(--cyan);
  font-size:22px;
  font-weight:400;
}
.faq[open] summary::after{content:"−"}
.faq p{color:var(--dim);font-size:14px;padding:0 0 16px}

.tele-box{
  display:flex;
  align-items:center;
  gap:20px;
  flex-wrap:wrap;
  justify-content:center;
  text-align:left;
  max-width:900px;
  margin:0 auto;
  padding:28px 30px;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(0,104,255,.24);
}
.tele-ic{font-size:40px}
.tele-txt{flex:1;min-width:240px}
.tele-txt h3{font-size:20px;margin-bottom:0}
.tele-box-actions{
  align-items:center;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  width:min(100%,760px);
}

.paid,
.pending{
  font-weight:700;
  font-size:12.5px;
  padding:4px 9px;
  border-radius:8px;
  white-space:nowrap;
}
.paid{background:rgba(0,255,148,.16);color:var(--green)}
.pending{background:rgba(255,215,0,.16);color:var(--gold)}

.mr-search{
  display:flex;
  gap:10px;
  max-width:560px;
  margin:0 auto;
}
.mr-search input{
  flex:1;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:13px 16px;
  color:#fff;
  font-size:15px;
  outline:none;
}
.mr-search input:focus{border-color:rgba(0,229,255,.4)}
.mr-card{
  border-radius:20px;
  padding:24px;
  border:1px solid rgba(255,255,255,.08);
}
.mr-card.ok{
  background:linear-gradient(160deg, rgba(0,229,255,.1), transparent);
  border-color:rgba(0,229,255,.26);
}
.mr-card.miss{
  background:linear-gradient(160deg, rgba(255,107,107,.1), transparent);
  border-color:rgba(255,107,107,.24);
}
.mr-h{
  color:var(--dim);
  font-size:13px;
  font-family:ui-monospace,monospace;
  margin-bottom:8px;
}
.mr-big{font-size:26px;font-weight:700;margin-bottom:12px}
.mr-stats{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  color:var(--dim);
  font-size:14px;
  margin-bottom:14px;
}
.mr-stats b{color:#fff}
.mr-chips{display:flex;flex-wrap:wrap;gap:8px}
.mr-chip{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  padding:7px 12px;
  font-size:13px;
  color:var(--dim);
}
.mr-chip b{color:#fff}
.mr-row{font-size:14px;margin-top:4px}

@media(max-width:1100px){
  .hero-shell{grid-template-columns:1fr}
  .hero-lower-shell{grid-template-columns:1fr}
  .hero-copy{max-width:none}
  .hero h1{max-width:none}
  .hero-stage{grid-template-columns:1fr}
  .prop-strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-prop-list{grid-template-columns:1fr}
  .cockpit-grid{grid-template-columns:1fr 1fr}
  .cockpit-panel.wide{grid-column:1 / -1}
}

@media(max-width:880px){
  .tiers,
  .grid3,
  .steps,
  .two,
  .grid5{grid-template-columns:1fr}
  .objective-grid,
  .phase-grid,
  .challenge-lab,
  .challenge-suite-grid,
  .cockpit-grid{grid-template-columns:1fr}
  .challenge-suite-head{align-items:flex-start;flex-direction:column}
  .suite-status{align-self:flex-start}
  .challenge-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .challenge-specs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .objective-row{
    grid-template-columns:1fr;
    gap:7px;
    align-items:start;
  }
  .objective-note{align-items:flex-start;flex-direction:column}
  .objective-note b{text-align:left}
  .challenge-footer{align-items:flex-start;flex-direction:column}
  .prize-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px;
  }
  .prize-card{
    min-height:152px;
    padding:10px 6px;
    border-radius:12px;
  }
  .prize-img{
    height:76px;
    margin-bottom:8px;
    border-radius:10px;
  }
  .prize-rank{font-size:10px}
  .prize-name{
    font-size:11px;
    line-height:1.18;
    overflow-wrap:anywhere;
  }
  .hero{
    padding-top:44px;
    padding-bottom:44px;
  }
  .hero-kpis{grid-template-columns:1fr}
  .nav .links a:not(.cta){display:block}
  .nav .links{width:100%}
  .nav .links a{text-align:center}
  .nav-timebar{
    order:3;
    flex:1 0 100%;
    max-width:520px;
    margin:0 auto 8px;
  }
  .pp-div{display:none}
  .prizepool{justify-content:center}
  .pp-item{text-align:center}
  .hero .actions{justify-content:center}
  .hero .actions .contact-duo-inline{justify-content:center}
  .hero .portal-note{text-align:center}
  .hero-copy{text-align:center}
  .hero p.sub{margin-left:auto;margin-right:auto}
  .hero-pills{justify-content:center}
  .kicker{text-align:left}
  .hero-panel-top,
  .hero-board-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .tele-box{text-align:center}
  .tele-box-actions{
    width:100%;
  }
  footer .wrap{flex-direction:column}
}

@media(max-width:640px){
  .wrap{padding:0 16px}
  body{padding-bottom:84px}
  .nav .wrap{min-height:64px}
  .brand{font-size:20px}
  .nav-timebar{
    min-width:0;
    padding:7px 10px;
  }
  .nav-timebar b{font-size:13px}
  .hero h1{font-size:clamp(34px,11vw,48px)}
  .kicker{padding:14px 16px}
  .kicker .big{font-size:18px}
  .prop-strip{margin-top:0}
  .prop-strip-grid{grid-template-columns:1fr}
  .hero-prop-list{grid-template-columns:1fr}
  .challenge-card-head{flex-direction:column}
  .offer-top{flex-direction:column}
  .offer-top strong{font-size:46px}
  .challenge-price{width:100%;text-align:left}
  .challenge-matrix{grid-template-columns:1fr}
  .btn{width:100%}
  .hero .actions .btn,
  .hero .actions a{width:100%}
  .portal-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .cd-box{min-width:58px}
  .cd-num{font-size:25px}
  .hero-panel{padding:18px}
  .hero-panel h3{font-size:24px}
  .hero-rank{width:38px;height:38px}
  .hero-score{font-size:20px}
  .mr-search{flex-direction:column}
  .zalo-float{
    display:none;
  }
}

@media(max-width:640px){
  #lb-table,
  #winners-list{
    -webkit-overflow-scrolling:touch;
    border-radius:14px;
  }
  #lb-table table{min-width:680px}
  th,td{padding:10px 11px;font-size:13px}
  thead tr{font-size:11px}
  .acc{font-size:10px}
  .pill{padding:3px 8px;font-size:11px}
  .leaderboard-titlebar{align-items:stretch}
  .lb-title-main{width:100%;justify-content:space-between}
  .lb-rank-search{max-width:none;min-width:0;width:100%;flex-basis:100%}
}

@media(max-width:420px){
  .wrap{padding:0 13px}
  .hero h1{font-size:clamp(30px,10vw,40px)}
  .kicker .big{font-size:16px}
  .nav-timebar span{display:none}
  .portal-grid{grid-template-columns:1fr}
  .challenge-timeline{grid-template-columns:1fr}
  .challenge-specs{grid-template-columns:1fr}
  .objective-table-head{align-items:flex-start;flex-direction:column}
  .pp-val{font-size:28px}
  .hero-panel h3{font-size:21px}
  .cd{gap:7px}
  .cd-box{min-width:0;flex:1;padding-left:6px;padding-right:6px}
  .cd-num{font-size:21px}
  th,td{padding:9px 8px;font-size:12px}
  .sec-head h2{font-size:clamp(24px,7vw,32px)}
  .tier-top{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:6px;
  }
  .prize-grid{
    grid-template-columns:repeat(5,84px);
    min-width:max-content;
    width:max-content;
  }
}

/* Local Vietnamese type refresh: Phudu for event headlines, Be Vietnam Pro for reading text. */
h1,h2,.brand,.tier-dep,.tp-val,.pp-val,.mr-big,.lb-head h1,.cd-status,
.hero h1,.hero h1.hero-logo-title,.hero-copy .hero-logo-title{
  font-family:var(--font-display) !important;
  font-weight:800;
}
.hero h1.hero-logo-title,.hero-copy .hero-logo-title{
  font-weight:900 !important;
  letter-spacing:0 !important;
}
.hero-signature,.hero-copy .hero-signature{
  font-family:var(--font-body) !important;
  font-style:normal !important;
  font-weight:700 !important;
}
/* ================= MOBILE POLISH (added) ================= */
.mobile-bar{display:none}
@media(max-width:640px){
  /* Thanh hành động dính đáy cho điện thoại */
  .mobile-bar{
    display:flex;
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:70;
    gap:10px;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    background:linear-gradient(180deg, rgba(3,7,17,.4), rgba(3,7,17,.96) 38%);
    backdrop-filter:blur(14px);
    border-top:1px solid rgba(255,255,255,.08);
  }
  .mobile-bar .btn{flex:1;width:auto;padding:13px 10px;font-size:15px}
  .mobile-bar .mb-zalo{
    flex:0 0 auto;
    width:52px;
    padding:0;
    display:flex;align-items:center;justify-content:center;
    font-size:20px;
  }
  /* chừa chỗ cho thanh đáy + nút chat khỏi đè */
  body{padding-bottom:96px}
  .knc-btn{bottom:calc(78px + env(safe-area-inset-bottom))}
  .knc-wrap{bottom:calc(140px + env(safe-area-inset-bottom));max-height:calc(100vh - 168px)}
  /* hero gọn hơn */
  .hero-panel{padding:18px;border-radius:22px}
  .hero-main-panel{min-height:0}
  .hero-kpi{min-height:0;padding:14px}
  .hero-kpi strong{font-size:24px}
  .hero-panel h3{font-size:21px}
  /* gợi ý cuộn ngang cho bảng */
  .panel .ph{font-size:14px}
  #lb-table,#winners-list{position:relative}
}
@media(max-width:420px){
  .mobile-bar .btn{font-size:14px;padding:12px 8px}
}
/* ================= PREMIUM POLISH (Claude) — mượt + pro hơn ================= */
@media (prefers-reduced-motion: no-preference){
  .reveal{opacity:0;transform:translateY(26px);filter:blur(6px);
    transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1),filter .7s}
  .reveal.in{opacity:1;transform:none;filter:none}
}
/* thanh bar chạy mượt từ 0 */
.hero-bar span,.bar>span,.mr-bar span{transition:width 1.1s cubic-bezier(.2,.8,.2,1)}
/* thẻ tier: nhấc + glow, viền sáng chạy quanh thẻ đang mở */
.tier{position:relative}
.tier:hover{transform:translateY(-6px);box-shadow:0 30px 72px -24px rgba(0,229,255,.32),0 0 0 1px rgba(0,229,255,.22)}
@property --beam{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes beamSpin{to{--beam:360deg}}
.tier:not(.locked)::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.3px;pointer-events:none;z-index:1;
  background:conic-gradient(from var(--beam),transparent 0deg,rgba(0,229,255,.78) 46deg,rgba(0,255,148,.5) 72deg,transparent 112deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
  animation:beamSpin 5.5s linear infinite;opacity:.6}
/* prize pool: hover + glow số */
.pp-item{transition:transform .25s cubic-bezier(.2,.85,.25,1)}
.pp-item:hover{transform:translateY(-3px)}
.pp-val.green{text-shadow:0 0 32px rgba(0,255,148,.4)}
.pp-val.cyan{text-shadow:0 0 32px rgba(0,229,255,.4)}
/* nút CTA: ánh sáng quét + nhấc */
.cta{position:relative;overflow:hidden;transition:transform .2s cubic-bezier(.2,.85,.25,1),box-shadow .3s,filter .2s}
.cta::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.42) 50%,transparent 68%);transform:translateX(-135%);transition:transform .7s ease}
.cta:hover::after{transform:translateX(135%)}
.cta:hover{transform:translateY(-2px);box-shadow:0 16px 40px -10px rgba(0,229,255,.5)}
/* badge live nhịp thở */
@keyframes pulseRing{0%,100%{box-shadow:0 0 0 0 rgba(0,255,148,.5)}50%{box-shadow:0 0 0 7px rgba(0,255,148,0)}}
.hero-live,.badge.live{animation:pulseRing 2.4s ease-in-out infinite}
/* hàng xếp hạng sáng khi rê */
.hero-leader{transition:background .2s,transform .2s}
.hero-leader:hover{background:rgba(0,229,255,.06);transform:translateX(3px)}

/* ================= MOBILE PRO (Claude) — xịn hơn trên điện thoại ================= */
@media (max-width:640px){
  /* gõ không bị iPhone tự phóng to */
  input,select,textarea{font-size:16px !important}
  /* KPI 2 cột cho gọn (đỡ dài lê thê) */
  .hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .hero-kpi{padding:13px;min-height:0}
  .hero-kpi strong{font-size:22px}
  /* quỹ thưởng nổi bật, gọn */
  .prizepool{gap:8px}
  .pp-val{font-size:25px}
  .pp-val.green{font-size:30px}
  /* phản hồi khi CHẠM: nút/thẻ lún nhẹ + tắt ô xanh nhấp nháy */
  .btn:active,.cta:active,.tier:active,.pp-item:active,.hero-leader:active{transform:scale(.975)}
  a,button,.btn,.cta,.tier,.pill,summary,.hero-leader{-webkit-tap-highlight-color:transparent}
  /* khoảng cách section gọn lại */
  .block{padding-top:46px;padding-bottom:46px}
  .sec-head{margin-bottom:18px}
  .hero-pills{flex-wrap:wrap;gap:8px}
  /* viền sáng tier chậm hơn chút cho mượt pin */
  .tier:not(.locked)::after{animation-duration:6.5s}
  /* thẻ bo tròn mềm + cách nhau thoáng */
  .tier{border-radius:20px}
  .hero-leader{border-radius:14px}
}
@media (max-width:340px){
  .hero-kpis{grid-template-columns:1fr}   /* chỉ máy RẤT nhỏ -> 1 cột */
  .pp-val.green{font-size:27px}
  .brand{font-size:18px}
}
.mobile-ux-tune-anchor{display:none}
@media(max-width:640px){
  .wrap{padding-left:16px;padding-right:16px}
  .nav .wrap{min-height:58px}
  .brand{font-size:19px}
  .brand small{font-size:9px;letter-spacing:.22em}
  .nav .cta{padding:8px 11px;font-size:12px}
  .hero{padding:34px 0 28px}
  .hero-shell{gap:22px;align-items:start}
  .hero-lower-shell{gap:12px;margin-top:12px}
  .hero-copy{text-align:left}
  .kicker{display:block;width:100%;margin-bottom:14px;padding:12px 14px;border-radius:14px}
  .kicker .big{font-size:17px}
  .kicker .small{font-size:12px}
  .hero-pills{justify-content:flex-start;margin-bottom:14px}
  .hero-pills span{min-height:32px;padding:0 10px;font-size:12px}
  .hero h1{max-width:none;font-size:clamp(32px,9vw,40px);line-height:1.05}
  .hero p.sub{margin:14px 0 0;font-size:14px;line-height:1.55}
  .prizepool{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;padding:14px;border-radius:16px}
  .prizepool .pp-item:first-child{grid-column:1 / -1;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}
  .pp-item{text-align:left}
  .pp-lbl{font-size:10px;letter-spacing:.1em}
  .pp-val{font-size:22px}
  .pp-val.green{font-size:27px}
  .pp-sub{font-size:11px;line-height:1.35}
  .hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;width:100%}
  .hero .actions .btn,.hero .actions a{min-height:46px;padding:11px 10px;font-size:13px}
  .hero .actions .portal-grid,.hero .actions .portal-note{grid-column:1 / -1}
  .portal-grid-single{max-width:none}
  .hero .portal-note{text-align:left;font-size:11px;line-height:1.45}
  .hero-stage{gap:12px}
  .hero-side-panel{display:none}
  .hero-panel{padding:15px;border-radius:18px}
  .hero-panel-top{flex-direction:row;align-items:center;margin-bottom:12px}
  .hero-label{font-size:10px;letter-spacing:.14em}
  .hero-panel h3{margin-top:5px;font-size:18px;line-height:1.12}
  .hero-live{padding:7px 10px;font-size:11px}
  .hero-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
  .hero-kpi{min-height:86px;padding:11px;border-radius:14px}
  .hero-kpi-label{font-size:10px;letter-spacing:.08em}
  .hero-kpi strong{font-size:19px}
  .hero-kpi small{font-size:11px;line-height:1.3}
  .hero-board{padding:12px;border-radius:16px}
  .hero-board-head{flex-direction:row;align-items:center}
  .hero-board-title{font-size:13px}
  .hero-board-meta{font-size:11px}
  .hero-leaders{margin-top:10px;gap:8px}
  .hero-leader{padding:10px;border-radius:13px}
  .hero-leader:nth-child(n+4){display:none}
  .hero-leader-row{gap:9px;grid-template-columns:auto minmax(0,1fr) auto}
  .hero-rank{width:32px;height:32px;border-radius:10px;font-size:12px}
  .hero-trader-name{font-size:13px}
  .hero-trader-sub{font-size:10px}
  .hero-score{font-size:16px}
  .hero-bar,.hero-leader-stats{display:none}
  .prop-strip{margin-top:0;padding-bottom:14px}
  .prop-strip-grid{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
  .prop-strip-grid::-webkit-scrollbar{display:none}
  .prop-strip-item{flex:0 0 78%;min-height:112px;scroll-snap-align:start}
  .hero-prop-list{
    display:grid;
    grid-template-columns:1fr;
    overflow:visible;
    padding-bottom:0;
    scroll-snap-type:none;
  }
  .hero-prop-list .prop-strip-item{
    flex:auto;
    min-height:0;
    grid-template-columns:1fr;
    scroll-snap-align:none;
  }
  .hero-prop-list .prop-strip-item small{
    grid-column:1;
    grid-row:auto;
    margin-top:6px;
  }
  .challenge-suite-head{gap:14px;margin-bottom:18px}
  .challenge-suite-head h2{font-size:clamp(28px,8vw,36px)}
  .challenge-suite-head p{font-size:14px;line-height:1.55}
  .challenge-offer{padding:18px;gap:15px}
  .offer-top strong{font-size:40px}
  .offer-reward{padding:16px}
  .offer-reward b{font-size:22px}
  .offer-prizes{gap:10px;margin:6px 0 8px}
  .offer-prizes div{min-height:66px;padding:11px 12px;gap:12px}
  .offer-prize-copy{align-items:flex-start;flex-direction:column;gap:7px}
  .offer-prize-copy small{font-size:11px;padding:5px 9px}
  .objective-table-head{min-height:0;padding:14px}
  .objective-table-head b{font-size:18px}
  .objective-row{min-height:0;padding:12px 14px}
  .challenge-timeline div,.challenge-specs div{min-height:0;padding:14px}
  .mobile-bar{z-index:9997;padding:9px 12px calc(9px + env(safe-area-inset-bottom))}
  .mobile-bar .btn{min-height:46px;border-radius:13px;font-size:14px}
  .mobile-bot-btn{flex:0 0 108px;width:108px !important;padding-left:12px !important;padding-right:12px !important}
}
@media(max-width:420px){
  .wrap{padding-left:13px;padding-right:13px}
  .hero{padding-top:26px}
  .hero h1{font-size:clamp(30px,9.5vw,37px)}
  .hero .actions .btn,.hero .actions a{font-size:12.5px}
  .mobile-bot-btn{flex-basis:92px;width:92px !important}
}
@media(max-width:340px){
  .hero .actions{grid-template-columns:1fr}
  .hero .actions .portal-grid,.hero .actions .portal-note{grid-column:auto}
}

/* ================= PRIZE COVERFLOW + SCROLL MOTION ================= */
.tier-top{
  position:relative;
  overflow:hidden;
}
.tier-top::before{
  content:"";
  position:absolute;
  inset:10px 0 auto;
  height:120px;
  pointer-events:none;
  background:radial-gradient(circle at 50% 0%, rgba(0,229,255,.18), transparent 60%);
  opacity:.75;
}
.prize-grid{
  position:relative;
  perspective:1200px;
  transform-style:preserve-3d;
  align-items:stretch;
  gap:14px;
  padding:12px 2px 4px;
}
.prize-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:228px;
  padding:14px 12px 13px;
  border-radius:8px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.035)),
    radial-gradient(circle at 50% -10%, rgba(0,229,255,.18), transparent 56%);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 54px -34px rgba(0,0,0,.9);
  transform:translateY(calc(var(--i,0) * 2px)) rotateY(calc((2 - var(--i,0)) * 4deg));
  transition:transform .34s cubic-bezier(.2,.8,.2,1), border-color .34s, box-shadow .34s, background .34s;
}
.prize-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(115deg, transparent 12%, rgba(255,255,255,.18) 40%, transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.04), transparent);
  transform:translateX(-110%);
  transition:transform .75s ease;
}
.prize-card:hover{
  transform:translateY(-12px) rotateY(0deg) scale(1.03);
  border-color:rgba(0,229,255,.42);
  box-shadow:0 30px 80px -38px rgba(0,229,255,.85);
}
.prize-card:hover::before{transform:translateX(110%)}
.prize-card-glow{
  position:absolute;
  inset:auto 12% -18px;
  height:46px;
  border-radius:50%;
  background:rgba(0,229,255,.2);
  filter:blur(22px);
  pointer-events:none;
}
.prize-rank-1{
  background:
    linear-gradient(180deg, rgba(255,215,0,.2), rgba(255,255,255,.045)),
    radial-gradient(circle at 50% -12%, rgba(255,215,0,.34), transparent 58%);
  border-color:rgba(255,215,0,.35);
  transform:translateY(-10px) scale(1.04);
}
.prize-rank-1 .prize-card-glow{background:rgba(255,215,0,.3)}
.prize-medal{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(3,7,17,.68);
  border:1px solid rgba(255,255,255,.12);
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.prize-img{
  height:116px;
  margin:12px 0 10px;
  border-radius:8px;
  background:none;
  overflow:visible;
}
.prize-img img{
  transform:scale(.94);
  transition:transform .34s cubic-bezier(.2,.8,.2,1), filter .34s;
}
.prize-card:hover .prize-img img{
  transform:scale(1.02) translateY(-3px);
  filter:drop-shadow(0 16px 18px rgba(0,0,0,.36));
}
.prize-name{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
}
.prize-foot{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:8px;
  color:var(--dim2);
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.prize-foot i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 14px rgba(0,255,148,.7);
}

@media(max-width:880px){
  .tier-top{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:8px;
  }
  .tier-top::before{display:none}
  .prize-grid{
    display:flex;
    width:max-content;
    min-width:0;
    gap:12px;
    padding:12px 4px 8px;
    scroll-snap-type:x mandatory;
  }
  .prize-card{
    flex:0 0 178px;
    width:178px;
    min-height:218px;
    transform:none;
    scroll-snap-align:start;
  }
  .prize-rank-1{transform:none}
}

@media(max-width:420px){
  .prize-card{
    flex-basis:168px;
    width:168px;
    min-height:210px;
    padding:12px 10px;
  }
  .prize-img{height:98px}
  .prize-name{font-size:12px;min-height:38px}
}

@media (prefers-reduced-motion: no-preference){
  .reveal{
    opacity:0;
    transform:translateY(32px) scale(.985);
    filter:blur(10px);
    clip-path:inset(12% 0 0 0 round 8px);
    transition:
      opacity .72s cubic-bezier(.2,.8,.2,1),
      transform .72s cubic-bezier(.2,.8,.2,1),
      filter .72s cubic-bezier(.2,.8,.2,1),
      clip-path .72s cubic-bezier(.2,.8,.2,1);
    transition-delay:calc(min(var(--reveal-i,0), 8) * 60ms);
    will-change:opacity,transform,filter,clip-path;
  }
  .reveal.in{
    opacity:1;
    transform:none;
    filter:none;
    clip-path:inset(0 0 0 0 round 8px);
  }
  .prize-card.reveal{
    transform:translateY(24px) rotateY(-10deg) scale(.96);
  }
  .prize-card.reveal.in{
    transform:translateY(calc(var(--i,0) * 2px)) rotateY(calc((2 - var(--i,0)) * 4deg));
  }
  .prize-rank-1.reveal.in{
    transform:translateY(-10px) scale(1.04);
  }
  @media(max-width:880px){
    .prize-card.reveal.in,
    .prize-rank-1.reveal.in{transform:none}
  }
}

.reveal{
  opacity:0;
  transform:translateY(28px) scale(.99);
  filter:blur(8px);
  clip-path:inset(10% 0 0 0 round 8px);
  transition:
    opacity .64s cubic-bezier(.2,.8,.2,1),
    transform .64s cubic-bezier(.2,.8,.2,1),
    filter .64s cubic-bezier(.2,.8,.2,1),
    clip-path .64s cubic-bezier(.2,.8,.2,1);
  transition-delay:calc(min(var(--reveal-i,0), 8) * 50ms);
}
.reveal.in{
  opacity:1;
  transform:none;
  filter:none;
  clip-path:inset(0 0 0 0 round 8px);
}
.prize-card.reveal{
  transform:translateY(22px) rotateY(-8deg) scale(.97);
}
.prize-card.reveal.in{
  transform:translateY(calc(var(--i,0) * 2px)) rotateY(calc((2 - var(--i,0)) * 4deg));
}
.prize-rank-1.reveal.in{
  transform:translateY(-10px) scale(1.04);
}
@media(max-width:880px){
  .prize-card.reveal.in,
  .prize-rank-1.reveal.in{transform:none}
}

/* ================= PRIZE INFINITE MARQUEE ================= */
.tier-top{
  --prize-gap:14px;
  --prize-card-w:214px;
  overflow:hidden;
  padding-bottom:10px;
}
.prize-marquee{
  position:relative;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
}
.prize-grid{
  display:flex;
  grid-template-columns:none;
  width:max-content;
  min-width:max-content;
  gap:var(--prize-gap);
  padding:16px 0 12px;
  animation:prizeMarquee 42s linear infinite;
  will-change:transform;
  transform:translate3d(0,0,0);
}
.tier-top:hover .prize-grid{animation-play-state:paused}
.prize-loop-set{
  display:flex;
  flex:0 0 auto;
  align-items:stretch;
  gap:var(--prize-gap);
}
.prize-card{
  flex:0 0 var(--prize-card-w);
  width:var(--prize-card-w);
  min-height:268px;
  padding:16px 13px 15px;
}
.prize-rank-1{transform:translateY(-8px) scale(1.03)}
.prize-img{
  height:138px;
  margin:14px 0 12px;
}
.prize-name{
  min-height:48px;
  font-size:14px;
  line-height:1.25;
}
.prize-value{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(255,215,0,.1);
  border:1px solid rgba(255,215,0,.2);
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  line-height:1.15;
  white-space:nowrap;
}
.prize-cash-visual{
  width:112px;
  height:112px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin:auto;
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.2), transparent 30%),
    linear-gradient(135deg, rgba(0,255,148,.22), rgba(0,229,255,.12));
  border:1px solid rgba(0,255,148,.22);
  box-shadow:inset 0 0 24px rgba(0,0,0,.18), 0 18px 36px -30px rgba(0,255,148,.8);
}
.prize-cash-visual b{
  color:#fff;
  font-size:22px;
  line-height:1;
}
.prize-cash-visual small{
  max-width:90px;
  color:var(--green);
  font-size:10px;
  font-weight:900;
  line-height:1.15;
}
.prize-card.is-clone{pointer-events:none}
@keyframes prizeMarquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-1 * var(--prize-loop-step, 1140px)),0,0)}
}

@media(max-width:880px){
  .tier-top{
    --prize-card-w:178px;
    --prize-gap:12px;
    overflow:hidden;
    -webkit-overflow-scrolling:auto;
    padding-bottom:10px;
  }
  .prize-marquee{overflow:hidden}
  .prize-grid{
    display:flex;
    width:max-content;
    min-width:max-content;
    gap:var(--prize-gap);
    padding:14px 0 12px;
    scroll-snap-type:none;
    animation-duration:38s;
  }
  .prize-loop-set{gap:var(--prize-gap)}
  .prize-card{
    flex:0 0 var(--prize-card-w);
    width:var(--prize-card-w);
    min-height:244px;
    transform:none;
    scroll-snap-align:none;
  }
  .prize-rank-1{transform:none}
  .prize-card.reveal.in,
  .prize-rank-1.reveal.in{transform:none}
  .top-prize-actions{
    grid-template-columns:1fr;
    gap:9px;
  }
  .top-prize-button{
    min-height:76px;
    border-radius:22px;
  }
}

@media(max-width:420px){
  .tier-top{
    --prize-card-w:170px;
    --prize-gap:12px;
  }
  .prize-card{
    flex-basis:var(--prize-card-w);
    width:var(--prize-card-w);
    min-height:236px;
    padding:13px 10px 12px;
  }
  .prize-img{height:112px}
  .prize-name{font-size:12px;min-height:42px}
  .prize-value{font-size:10px;white-space:normal}
  .prize-cash-visual{
    width:98px;
    height:98px;
  }
  .prize-cash-visual b{font-size:19px}
}

@media (prefers-reduced-motion: reduce){
  .prize-grid{animation-duration:46s}
}

/* Center the ranking mode card. */
.ranking-mode-grid{
  grid-template-columns:minmax(280px,420px);
  justify-content:center;
  align-items:stretch;
  gap:16px;
}
.ranking-mode-grid .card{width:100%}

@media(max-width:760px){
  .ranking-mode-grid{
    grid-template-columns:minmax(0,1fr);
    max-width:420px;
    margin-left:auto;
    margin-right:auto;
  }
}

@media(max-width:640px){
  .cd-wrap{
    padding:16px 14px 18px;
    border-radius:18px;
  }
  .cd-status{
    font-size:20px;
    line-height:1.24;
  }
  .cd-meta{
    flex-direction:column;
    align-items:center;
    gap:4px;
    margin-bottom:12px;
  }
  .cd{
    gap:7px;
  }
  .cd-box{
    min-width:0;
    flex:1 1 0;
    padding:10px 2px;
  }
  .cd-num{
    font-size:24px;
  }
}

/* ================= PAID WINNERS PODIUM ================= */
.payout-week-carousel{
  position:relative;
}
.payout-week-rail{
  display:flex;
  gap:18px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  padding:24px max(20px, calc((100vw - 1160px) / 2)) 18px;
  margin:0 -20px;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.payout-week-rail::-webkit-scrollbar{
  display:none;
}
.payout-week-nav{
  position:absolute;
  top:50%;
  z-index:5;
  width:46px;
  height:74px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.16);
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.045)),
    rgba(3,7,17,.82);
  color:#fff;
  font-size:30px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  box-shadow:0 18px 42px rgba(0,0,0,.34), 0 0 24px rgba(0,229,255,.15);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}
.payout-week-nav:hover{
  color:var(--gold);
  border-color:rgba(0,229,255,.5);
  box-shadow:0 22px 50px rgba(0,0,0,.42), 0 0 30px rgba(0,229,255,.28);
  transform:translateY(-50%) scale(1.05);
}
.payout-week-prev{left:-4px}
.payout-week-next{right:-4px}
.payout-week-prev::before,
.payout-week-next::before{
  content:"";
  position:absolute;
  top:-80px;
  bottom:-80px;
  width:80px;
  pointer-events:none;
  opacity:.78;
}
.payout-week-prev::before{
  left:-12px;
  background:linear-gradient(90deg, #030711, transparent);
}
.payout-week-next::before{
  right:-12px;
  background:linear-gradient(270deg, #030711, transparent);
}
.payout-week-card{
  position:relative;
  flex:0 0 min(980px,86vw);
  min-height:590px;
  scroll-snap-align:center;
  padding:54px 22px 24px;
  border-radius:8px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% -16%, rgba(0,229,255,.18), transparent 48%),
    linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 30px 110px -78px rgba(0,229,255,.9);
}
.payout-week-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.08), transparent 28%);
}
.payout-week-card.has-data{
  border-color:rgba(0,229,255,.2);
}
.payout-week-card.is-empty{
  display:grid;
  place-items:center;
  border-style:dashed;
  opacity:.86;
}
.payout-week-tab{
  position:absolute;
  top:16px;
  left:16px;
  z-index:2;
  min-width:132px;
  min-height:46px;
  padding:8px 14px;
  border-radius:8px;
  display:grid;
  gap:2px;
  background:linear-gradient(135deg, rgba(255,215,0,.24), rgba(0,229,255,.12));
  border:1px solid rgba(255,215,0,.35);
  box-shadow:0 16px 34px rgba(0,0,0,.24);
}
.payout-week-tab span{
  color:#fff;
  font-weight:950;
  font-size:18px;
  line-height:1;
}
.payout-week-tab b{
  color:var(--gold);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.payout-empty-week{
  max-width:330px;
  text-align:center;
  color:var(--dim);
}
.payout-empty-mark{
  width:58px;
  height:58px;
  margin:0 auto 16px;
  border-radius:8px;
  display:grid;
  place-items:center;
  color:var(--cyan);
  font-size:36px;
  font-weight:900;
  border:1px solid rgba(0,229,255,.24);
  background:rgba(0,229,255,.08);
}
.payout-empty-week h3{
  color:#fff;
  font-size:24px;
  margin-bottom:8px;
}
.payout-empty-week p{
  font-size:14px;
  line-height:1.6;
}
.payout-week-card .payout-podium{
  padding-top:12px;
}
.payout-podium{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:end;
  gap:12px;
  max-width:1220px;
  margin:0 auto;
  padding:30px 0 10px;
}
.payout-card{
  position:relative;
  isolation:isolate;
  min-height:var(--payout-h);
  height:var(--payout-h);
  padding:18px 14px 18px;
  border-radius:8px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  text-align:center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.035)),
    radial-gradient(circle at 50% -12%, rgba(0,229,255,.2), transparent 56%);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 26px 80px -50px rgba(0,229,255,.7);
  transform-origin:bottom center;
  animation:payoutCardIn .7s cubic-bezier(.18,.82,.25,1) both;
  animation-delay:calc(var(--payout-i) * .06s);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, filter .22s ease;
}
.payout-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(120deg, transparent 0 28%, rgba(255,255,255,.16) 45%, transparent 64%);
  transform:translateX(-125%);
}
.payout-card:hover{
  transform:translateY(-10px) scale(1.035);
  border-color:rgba(0,229,255,.52);
  box-shadow:0 34px 100px -44px rgba(0,229,255,.95), 0 0 0 1px rgba(255,255,255,.08);
}
.payout-card:hover::before{
  animation:payoutShine .9s ease forwards;
}
.payout-rank-1{
  background:
    linear-gradient(180deg, rgba(255,215,0,.24), rgba(255,255,255,.045)),
    radial-gradient(circle at 50% -10%, rgba(255,215,0,.36), transparent 62%);
  border-color:rgba(255,215,0,.4);
  box-shadow:0 34px 90px -42px rgba(255,215,0,.7);
}
.payout-rank-2,.payout-rank-3{border-color:rgba(0,229,255,.28)}
.payout-rank-4,.payout-rank-5{opacity:.94}
.payout-topline{
  display:grid;
  justify-items:center;
  gap:0;
  min-height:36px;
}
.payout-rank-badge{
  width:max-content;
  max-width:100%;
  margin:0 auto;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(3,7,17,.72);
  border:1px solid rgba(255,255,255,.14);
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.payout-topline h3{
  font-size:18px;
  line-height:1.12;
  margin:0;
  word-break:break-word;
}
.payout-rank-1 .payout-topline h3{font-size:23px}
.payout-prize-img{
  min-height:136px;
  margin:12px 0 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:none;
  overflow:visible;
}
.payout-rank-1 .payout-prize-img{min-height:182px}
.payout-rank-2 .payout-prize-img,
.payout-rank-3 .payout-prize-img{min-height:150px}
.payout-prize-img img{
  width:min(88%,172px);
  max-height:172px;
  object-fit:contain;
  filter:drop-shadow(0 18px 18px rgba(0,0,0,.38));
  transform:translateZ(0);
  transition:transform .22s ease, filter .22s ease;
}
.payout-rank-1 .payout-prize-img img{
  width:min(94%,222px);
  max-height:222px;
}
.payout-card:hover .payout-prize-img img{
  transform:scale(1.08);
  filter:drop-shadow(0 24px 24px rgba(0,0,0,.45)) drop-shadow(0 0 18px rgba(0,229,255,.28));
}
.payout-prize-name{
  color:var(--gold);
  font-weight:900;
  font-size:13px;
  line-height:1.25;
  min-height:34px;
}
.payout-stats{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin-top:12px;
}
.payout-stats span{
  min-width:0;
  padding:8px 7px;
  border-radius:8px;
  background:rgba(0,0,0,.26);
  border:1px solid rgba(255,255,255,.08);
}
.payout-stats b{
  display:block;
  color:var(--green);
  font-size:15px;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.payout-stats small{
  display:block;
  color:var(--dim2);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.1em;
  margin-top:3px;
}
@keyframes payoutCardIn{
  0%{opacity:0;transform:translateY(28px) scale(.96)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes payoutShine{
  0%,46%{transform:translateX(-125%)}
  70%,100%{transform:translateX(125%)}
}
.reward-celebration{
  position:fixed;
  inset:0;
  z-index:9999;
  pointer-events:none;
  overflow:hidden;
}
.reward-celebration span{
  position:absolute;
  left:calc(var(--x) * 1%);
  top:-36px;
  font-size:var(--size);
  color:var(--gold);
  text-shadow:0 0 18px rgba(255,215,0,.55), 0 0 26px rgba(0,229,255,.35);
  animation:rewardPetalFall 2.7s cubic-bezier(.18,.7,.22,1) forwards;
  animation-delay:var(--delay);
}
@keyframes rewardPetalFall{
  0%{opacity:0;transform:translate3d(0,-24px,0) rotate(0deg) scale(.75)}
  12%{opacity:1}
  100%{opacity:0;transform:translate3d(var(--drift),108vh,0) rotate(var(--rot)) scale(1.15)}
}

@media(max-width:940px){
  .payout-week-rail{
    padding-left:16px;
    padding-right:16px;
    margin-left:-16px;
    margin-right:-16px;
  }
  .payout-week-card{
    flex-basis:820px;
    min-height:540px;
    padding:52px 16px 18px;
  }
  .payout-week-card .payout-podium{
    grid-template-columns:repeat(5,148px);
    justify-content:center;
    overflow:visible;
    padding-left:0;
    padding-right:0;
  }
  .payout-week-nav{
    width:40px;
    height:64px;
    font-size:26px;
  }
  .payout-week-prev{left:4px}
  .payout-week-next{right:4px}
  .payout-podium{
    grid-template-columns:repeat(5,190px);
    justify-content:flex-start;
    overflow-x:auto;
    padding:22px 6px 12px;
    scroll-snap-type:x proximity;
  }
  .payout-card{
    min-height:340px;
    height:340px;
    scroll-snap-align:center;
  }
  .payout-rank-1{
    min-height:392px;
    height:392px;
  }
  .payout-prize-img,
  .payout-rank-1 .payout-prize-img,
  .payout-rank-2 .payout-prize-img,
  .payout-rank-3 .payout-prize-img{min-height:128px}
}

@media(max-width:520px){
  .payout-week-rail{
    padding-top:18px;
    padding-bottom:12px;
  }
  .payout-week-card{
    flex-basis:760px;
    min-height:500px;
    padding:50px 12px 16px;
  }
  .payout-week-tab{
    top:12px;
    left:12px;
    min-height:40px;
  }
  .payout-week-tab span{font-size:16px}
  .payout-week-card .payout-podium{
    grid-template-columns:repeat(5,140px);
    gap:8px;
  }
  .payout-week-nav{
    width:36px;
    height:56px;
    font-size:23px;
  }
  .payout-week-prev{left:3px}
  .payout-week-next{right:3px}
  .payout-week-prev::before,
  .payout-week-next::before{width:54px}
  .payout-podium{
    grid-template-columns:repeat(5,176px);
    gap:8px;
  }
  .payout-card{
    padding:12px 9px 13px;
  }
  .payout-topline h3{font-size:15px}
  .payout-rank-1 .payout-topline h3{font-size:18px}
  .payout-prize-name{font-size:12px}
}

/* ================= FTMO-STYLE PROCESS + MOBILE MOTION ================= */
.phase-card{
  isolation:isolate;
  overflow:hidden;
  min-height:308px;
  box-shadow:0 24px 80px -56px rgba(0,0,0,.95);
}
.phase-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.86;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
}
.phase-card::after{
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  bottom:0;
  height:74px;
  z-index:-1;
  background:linear-gradient(180deg, transparent, rgba(0,0,0,.26));
}
.phase-card:nth-child(1){
  background:
    radial-gradient(circle at 70% 0%, rgba(80,180,255,.42), transparent 42%),
    linear-gradient(180deg, rgba(41,146,216,.88), rgba(7,21,48,.94) 72%);
  border-color:rgba(86,188,255,.36);
}
.phase-card:nth-child(2){
  background:
    radial-gradient(circle at 68% -8%, rgba(0,255,148,.34), transparent 46%),
    linear-gradient(180deg, rgba(9,180,98,.86), rgba(5,44,29,.96) 74%);
  border-color:rgba(0,255,148,.3);
}
.phase-card:nth-child(3){
  background:
    radial-gradient(circle at 70% 0%, rgba(255,215,0,.3), transparent 44%),
    linear-gradient(180deg, rgba(215,124,4,.86), rgba(57,20,7,.96) 74%);
  border-color:rgba(255,189,66,.32);
}
.phase-card h3,
.phase-card p,
.phase-card li{
  text-shadow:0 1px 14px rgba(0,0,0,.18);
}
.phase-card p{color:rgba(255,255,255,.78)}
.phase-card:hover{
  transform:translateY(-5px);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 32px 96px -56px rgba(0,229,255,.64);
}
.phase-card .phase-num{
  box-shadow:0 12px 34px rgba(0,0,0,.24);
}
.mobile-flow{display:none}

@media(max-width:640px){
  .phase-grid{gap:12px}
  .phase-card{
    min-height:250px;
    padding:22px 18px 18px;
    border-radius:18px;
  }
  .mobile-flow{
    display:block;
    position:relative;
    overflow:hidden;
    width:100%;
    margin:18px 0 0;
    padding:4px 0 8px;
  }
  .mobile-flow::before,
  .mobile-flow::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    z-index:2;
    width:44px;
    pointer-events:none;
  }
  .mobile-flow::before{
    left:0;
    background:linear-gradient(90deg, #030711, transparent);
  }
  .mobile-flow::after{
    right:0;
    background:linear-gradient(270deg, #030711, transparent);
  }
  .mobile-flow-track{
    width:max-content;
    display:flex;
    gap:10px;
    padding:0 16px;
    animation:mobileFlowLoop 34s linear infinite;
  }
  .mobile-flow-card{
    flex:0 0 232px;
    min-height:132px;
    padding:16px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.12);
    background:linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.035));
    box-shadow:0 18px 48px -34px rgba(0,0,0,.9);
  }
  .mobile-flow-card span{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:12px;
    color:#03111a;
    font-weight:950;
    background:linear-gradient(135deg, var(--cyan), var(--green));
    margin-bottom:12px;
  }
  .mobile-flow-card b{
    display:block;
    color:#fff;
    font-size:17px;
    line-height:1.16;
  }
  .mobile-flow-card small{
    display:block;
    margin-top:7px;
    color:var(--dim);
    font-size:12px;
    line-height:1.45;
  }
  .mobile-flow-card.blue{background:linear-gradient(180deg, rgba(46,146,224,.38), rgba(6,18,42,.94))}
  .mobile-flow-card.green{background:linear-gradient(180deg, rgba(0,188,105,.36), rgba(5,33,24,.94))}
  .mobile-flow-card.gold{background:linear-gradient(180deg, rgba(255,170,28,.33), rgba(48,22,5,.94))}
  .mobile-flow-card.cyan{background:linear-gradient(180deg, rgba(0,229,255,.25), rgba(4,24,35,.94))}
}
@keyframes mobileFlowLoop{
  to{transform:translate3d(-50%,0,0)}
}

/* ================= PAYOUT HEIGHT + STATUS FIX ================= */
.payout-week-card{
  min-height:690px;
  overflow:visible;
  padding-bottom:38px;
}
.payout-week-tab.is-live{
  background:linear-gradient(135deg, rgba(0,229,255,.2), rgba(0,255,148,.12));
  border-color:rgba(0,229,255,.36);
}
.payout-week-tab.is-live b{color:var(--green)}
.payout-week-tab.is-paid{
  background:linear-gradient(135deg, rgba(255,215,0,.24), rgba(0,229,255,.12));
  border-color:rgba(255,215,0,.38);
}
.payout-card{
  height:auto;
  min-height:var(--payout-h);
  gap:12px;
}
.payout-topline{
  min-height:66px;
  gap:8px;
}
.payout-topline h3{
  display:block;
  color:#fff;
  font-size:16px;
  font-weight:900;
  line-height:1.16;
}
.payout-rank-1 .payout-topline h3{font-size:21px}
.payout-prize-img{margin:6px 0 8px}
.payout-stats{margin-top:10px}
@media(max-width:940px){
  .payout-week-card{
    min-height:650px;
    padding-bottom:30px;
  }
  .payout-card,
  .payout-rank-1{
    height:auto;
  }
}
@media(max-width:520px){
  .payout-week-card{
    min-height:620px;
    padding-bottom:28px;
  }
  .payout-card{
    min-height:386px;
  }
  .payout-rank-1{
    min-height:438px;
  }
  .payout-topline{
    min-height:62px;
  }
}

/* Paid tab: 3 major winners + Top 4-10 consolation list. */
.payout-layout{
  position:relative;
  z-index:1;
  display:grid;
  gap:18px;
  padding-top:12px;
}
.payout-fireworks{
  position:absolute;
  inset:-34px -10px 32%;
  z-index:0;
  pointer-events:none;
  overflow:visible;
  opacity:.9;
  filter:saturate(1.08);
}
.payout-firework{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:6px;
  height:6px;
  border-radius:50%;
  color:#f0d58f;
  background:currentColor;
  box-shadow:
    0 -32px 0 -1px currentColor,
    23px -23px 0 -1px currentColor,
    32px 0 0 -1px currentColor,
    23px 23px 0 -1px currentColor,
    0 32px 0 -1px currentColor,
    -23px 23px 0 -1px currentColor,
    -32px 0 0 -1px currentColor,
    -23px -23px 0 -1px currentColor;
  transform:translate(-50%,-50%) scale(.08) rotate(0deg);
  opacity:0;
  animation:payoutFireworkBurst 3.2s cubic-bezier(.16,.76,.25,1) infinite;
  animation-delay:var(--delay);
}
.payout-firework::before,
.payout-firework::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:currentColor;
}
.payout-firework::before{
  box-shadow:
    0 -22px 0 -2px currentColor,
    16px -16px 0 -2px currentColor,
    22px 0 0 -2px currentColor,
    16px 16px 0 -2px currentColor,
    0 22px 0 -2px currentColor,
    -16px 16px 0 -2px currentColor,
    -22px 0 0 -2px currentColor,
    -16px -16px 0 -2px currentColor;
  transform:rotate(22deg);
}
.payout-firework::after{
  inset:-20px;
  background:radial-gradient(circle, currentColor 0 2px, transparent 3px);
  opacity:.24;
  filter:blur(8px);
}
.payout-firework.tone-cyan{color:#94eef2}
.payout-firework.tone-rose{color:#ffb6a8}
.payout-major-grid,
.payout-consolation{
  position:relative;
  z-index:1;
}
@keyframes payoutFireworkBurst{
  0%,8%{opacity:0;transform:translate(-50%,-50%) scale(.08) rotate(0deg)}
  14%{opacity:1}
  34%{opacity:.95;transform:translate(-50%,-50%) scale(calc(var(--scale) * 1)) rotate(calc(var(--spin) * 26deg))}
  54%,100%{opacity:0;transform:translate(-50%,-50%) scale(calc(var(--scale) * 1.38)) rotate(calc(var(--spin) * 42deg))}
}
@media (prefers-reduced-motion:reduce){
  .payout-firework{
    animation:none;
    opacity:.18;
    transform:translate(-50%,-50%) scale(.72);
  }
}
.payout-major-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.payout-major-card{
  position:relative;
  isolation:isolate;
  min-width:0;
  min-height:430px;
  padding:22px 18px 20px;
  border-radius:8px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background:
    linear-gradient(180deg, rgba(46,130,148,.34), rgba(15,24,38,.94)),
    radial-gradient(circle at 50% -12%, rgba(0,229,255,.2), transparent 58%);
  border:1px solid rgba(96,202,218,.24);
  box-shadow:0 22px 54px -34px rgba(0,0,0,.9);
  animation:payoutCardIn .7s cubic-bezier(.18,.82,.25,1) both;
  animation-delay:calc(var(--payout-i) * .04s);
}
.payout-major-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(115deg, transparent 12%, rgba(255,255,255,.16) 40%, transparent 58%);
  transform:translateX(-120%);
}
.payout-major-card:hover{
  transform:translateY(-8px) scale(1.025);
  border-color:rgba(255,215,0,.72);
  box-shadow:0 0 0 1px rgba(255,215,0,.2), 0 26px 76px -34px rgba(255,215,0,.46);
}
.payout-major-card:hover::before{animation:payoutShine .9s ease forwards}
.payout-major-card.payout-rank-1{
  background:
    linear-gradient(180deg, rgba(255,215,0,.22), rgba(18,24,32,.94)),
    radial-gradient(circle at 50% -12%, rgba(255,215,0,.3), transparent 58%);
  border-color:rgba(255,215,0,.46);
}
.payout-major-card h3{
  margin-top:12px;
  color:#fff;
  font-size:22px;
  line-height:1.16;
  font-weight:950;
}
.payout-major-card .payout-rank-badge{
  position:static;
  display:inline-flex;
  min-height:34px;
  padding:0 16px;
  font-size:13px;
}
.payout-major-card .payout-prize-img{
  min-height:150px;
  width:100%;
  margin:20px 0 12px;
}
.payout-major-card.payout-rank-1 .payout-prize-img{min-height:172px}
.payout-major-card .payout-prize-img img{
  max-height:168px;
}
.payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:192px;
}
@media(min-width:941px){
  .payout-major-grid{
    grid-template-columns:minmax(0,.92fr) minmax(0,1.16fr) minmax(0,.92fr);
    align-items:end;
    gap:16px;
  }
  .payout-major-card{
    min-height:488px;
  }
  .payout-major-card.payout-rank-1{
    order:2;
    min-height:558px;
    padding-top:28px;
  }
  .payout-major-card.payout-rank-2{
    order:1;
  }
  .payout-major-card.payout-rank-3{
    order:3;
  }
  .payout-major-card.payout-rank-1 h3{
    font-size:25px;
  }
  .payout-major-card.payout-rank-1 .payout-rank-badge{
    min-height:38px;
    padding:0 18px;
    font-size:14px;
  }
  .payout-major-card.payout-rank-1 .payout-prize-img{
    min-height:202px;
  }
  .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-height:228px;
  }
}
.payout-cash-visual{
  width:132px;
  height:132px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:auto;
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.24), transparent 30%),
    linear-gradient(135deg, rgba(0,255,148,.22), rgba(0,229,255,.12));
  border:1px solid rgba(0,255,148,.24);
  box-shadow:inset 0 0 24px rgba(0,0,0,.18), 0 18px 36px -30px rgba(0,255,148,.8);
}
.payout-cash-visual b{
  color:#fff;
  font-size:34px;
  line-height:1;
}
.payout-cash-visual small{
  margin-top:4px;
  color:var(--green);
  font-size:12px;
  font-weight:950;
  letter-spacing:.1em;
}
.payout-major-card .payout-prize-name{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  color:var(--gold);
}
.payout-prize-value{
  margin-top:8px;
  padding:6px 11px;
  border-radius:999px;
  background:rgba(255,215,0,.1);
  border:1px solid rgba(255,215,0,.18);
  color:var(--gold);
  font-size:12px;
  font-weight:950;
}
.payout-major-card .payout-stats{
  width:100%;
  margin-top:auto;
  padding-top:16px;
}
.payout-consolation{
  padding:16px;
  border-radius:8px;
  background:rgba(3,7,17,.36);
  border:1px solid rgba(255,255,255,.08);
}
.payout-consolation-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.payout-consolation-head span{
  color:#fff;
  font-size:18px;
  font-weight:950;
}
.payout-consolation-head b{
  color:var(--gold);
  font-size:13px;
  text-align:right;
}
.payout-consolation-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.payout-consolation-row{
  min-width:0;
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 74px 60px;
  align-items:center;
  gap:10px;
  min-height:50px;
  padding:9px 11px;
  border-radius:8px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.075);
  animation:payoutCardIn .55s cubic-bezier(.18,.82,.25,1) both;
  animation-delay:calc(var(--payout-i) * .035s);
}
.payout-consolation-rank{
  color:var(--gold);
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
}
.payout-consolation-name{
  min-width:0;
  color:#fff;
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.payout-consolation-prize{
  color:var(--green);
  font-size:13px;
  font-weight:950;
  white-space:nowrap;
}
.payout-consolation-roi{
  color:var(--cyan);
  font-size:12px;
  font-weight:950;
  text-align:right;
}

@media(max-width:940px){
  .payout-week-card{
    flex-basis:min(820px,92vw);
    min-height:0;
  }
  .payout-major-grid{
    grid-template-columns:1fr;
  }
  .payout-major-card{
    min-height:0;
    display:grid;
    grid-template-columns:142px minmax(0,1fr);
    grid-template-areas:
      "img badge"
      "img name"
      "img prize"
      "img value"
      "img stats";
    column-gap:16px;
    align-items:center;
    text-align:left;
  }
  .payout-major-card .payout-rank-badge{grid-area:badge;justify-self:start}
  .payout-major-card h3{grid-area:name;margin-top:8px}
  .payout-major-card .payout-prize-img{grid-area:img;min-height:132px;margin:0}
  .payout-major-card.payout-rank-1 .payout-prize-img{min-height:132px}
  .payout-major-card .payout-prize-img img,
  .payout-major-card.payout-rank-1 .payout-prize-img img{max-height:128px}
  .payout-major-card .payout-prize-name{grid-area:prize;justify-content:flex-start;min-height:0}
  .payout-prize-value{grid-area:value;justify-self:start}
  .payout-major-card .payout-stats{grid-area:stats;margin-top:10px;padding-top:0}
  .payout-cash-visual{width:116px;height:116px}
  .payout-consolation-list{grid-template-columns:1fr}
}

@media(max-width:520px){
  .payout-week-card{
    flex-basis:min(620px,94vw);
  }
  .payout-layout{gap:12px}
  .payout-major-card{
    grid-template-columns:104px minmax(0,1fr);
    column-gap:12px;
    padding:15px 12px;
  }
  .payout-major-card h3{font-size:17px}
  .payout-major-card .payout-prize-img,
  .payout-major-card.payout-rank-1 .payout-prize-img{min-height:104px}
  .payout-major-card .payout-prize-img img,
  .payout-major-card.payout-rank-1 .payout-prize-img img{max-height:102px}
  .payout-cash-visual{width:92px;height:92px}
  .payout-cash-visual b{font-size:27px}
  .payout-major-card .payout-prize-name{font-size:13px}
  .payout-prize-value{font-size:10px;white-space:normal}
  .payout-consolation{padding:12px}
  .payout-consolation-head{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
  .payout-consolation-head b{text-align:left}
  .payout-consolation-row{
    grid-template-columns:58px minmax(0,1fr) 56px;
    gap:8px;
  }
  .payout-consolation-roi{display:none}
}

/* Reuse the paid-tab podium inside the challenge prize card. */
.tier-payout-showcase{
  overflow:visible;
  padding-top:12px;
  padding-bottom:0;
}
.tier-payout-showcase::before{
  display:none;
}
.tier-payout-layout{
  gap:16px;
  padding-top:0;
}
.tier-payout-card h3{
  font-size:20px;
}
.tier-payout-card .payout-prize-name{
  color:var(--gold);
  font-size:15px;
  font-weight:950;
}
.tier-payout-card .payout-stats span b{
  font-size:13px;
}
.tier-payout-row .payout-consolation-name{
  color:#fff;
}
.tier-payout-row .payout-consolation-roi{
  color:var(--cyan);
}
@media(max-width:940px){
  .tier-payout-showcase{
    overflow:hidden;
  }
}

/* Prize cards: same blue by default, gold only on pointer hover. */
.prize-card,
.prize-card.reveal,
.prize-rank-1{
  background:
    linear-gradient(180deg, rgba(46,130,148,.34), rgba(15,24,38,.94)),
    radial-gradient(circle at 50% -12%, rgba(0,229,255,.2), transparent 58%);
  border-color:rgba(96,202,218,.24);
  box-shadow:0 22px 54px -34px rgba(0,0,0,.9);
  transform:none;
}
.prize-rank-1.reveal,
.prize-card.reveal.in,
.prize-rank-1.reveal.in{
  transform:none;
}
.prize-rank-1 .prize-card-glow,
.prize-card-glow{
  background:rgba(0,229,255,.18);
}
.prize-card.is-clone{
  pointer-events:auto;
}
.prize-medal{
  gap:5px;
  border-color:rgba(0,229,255,.16);
}
.prize-crown{
  font-size:12px;
  line-height:1;
}
.prize-card:hover{
  transform:translateY(-10px) scale(1.06);
  border-color:rgba(255,215,0,.92);
  background:
    linear-gradient(180deg, rgba(48,139,156,.42), rgba(16,24,38,.96)),
    radial-gradient(circle at 50% -12%, rgba(0,229,255,.22), transparent 58%);
  box-shadow:
    0 0 0 1px rgba(255,215,0,.28),
    0 28px 86px -36px rgba(255,215,0,.62),
    0 0 34px rgba(255,215,0,.16);
}
.prize-card:hover .prize-card-glow{
  background:rgba(255,215,0,.34);
}
.prize-card:hover .prize-medal{
  border-color:rgba(255,215,0,.42);
  box-shadow:0 0 18px rgba(255,215,0,.18);
}

/* Mobile header nav: vertical column layout. */
@media(max-width:880px){
  .nav .wrap{
    gap:10px;
    padding-top:10px;
    padding-bottom:10px;
  }
  .nav .links{
    order:4;
    flex:1 0 100%;
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:8px;
    overflow:visible;
    overscroll-behavior-x:auto;
    -webkit-overflow-scrolling:touch;
    padding:0 2px 2px;
    margin:0 -2px;
    scrollbar-width:none;
    scroll-snap-type:none;
    width:100%;
  }
  .nav .links::-webkit-scrollbar{display:none}
  .nav .links a,
  .nav .links a:not(.cta){
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex:0 0 auto;
    min-height:42px;
    padding:0 16px;
    border-radius:12px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.08);
    color:var(--dim);
    font-size:14px;
    line-height:1;
    white-space:normal;
    text-align:left;
    width:100%;
    scroll-snap-align:none;
  }
  .nav .links a.active{
    color:#fff;
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.14);
  }
  .nav .links a.cta{
    min-width:0;
    border-color:rgba(0,255,148,.28);
    color:#03130c;
  }
}
@media(max-width:640px){
  :root{--nav-top-gap:8px}
  .nav .links a,
  .nav .links a:not(.cta){
    min-height:36px;
    padding:0 13px;
    font-size:12.5px;
  }
  .nav .links a.cta{
    min-width:145px;
  }
}

/* Mobile header final layout: vertical column, full-width buttons. Khit hero, gọn. */
@media(max-width:640px){
  .nav .wrap{
    gap:6px;
    padding-top:6px;
    padding-bottom:6px;
  }
  .nav-timebar{
    order:2;
    flex:1 0 100%;
    max-width:none;
    margin:0;
  }
  .nav .links{
    order:3;
    display:flex;
    flex-direction:column;
    gap:7px;
    overflow:visible;
    padding:0;
    margin:0;
    width:100%;
    scroll-snap-type:none;
  }
  .nav .links a,
  .nav .links a:not(.cta){
    width:100%;
    min-width:0;
    min-height:40px;
    padding:0 14px;
    font-size:13px;
    line-height:1.12;
    text-align:left;
    white-space:normal;
  }
  .nav .links a.cta{
    min-width:0;
    min-height:44px;
    font-size:14px;
  }
}
@media(max-width:380px){
  .nav .links{
    gap:6px;
  }
  .nav .links a,
  .nav .links a:not(.cta){
    font-size:11.5px;
    padding:0 6px;
  }
}
@media(max-width:880px){
  .nav .links a.cta{
    background:linear-gradient(135deg, var(--green), #7dffcb);
    color:#03130c !important;
    box-shadow:0 14px 30px rgba(0,255,148,.22);
  }
}

/* Luxury palette + subtle page motion polish. */
:root{
  --bg:#090806;
  --bg2:#11100c;
  --bg3:#1a150e;
  --panel:rgba(255,244,220,.055);
  --panel2:rgba(255,244,220,.082);
  --panel3:rgba(255,244,220,.12);
  --line:rgba(232,207,154,.13);
  --line-strong:rgba(232,207,154,.24);
  --cyan:#d8bc7a;
  --green:#caa15d;
  --gold:#f0d58f;
  --txt:#f5efe3;
  --dim:#b7aa91;
  --dim2:#84765f;
  --shadow:0 28px 84px rgba(0,0,0,.52);
  --champagne:#f0d58f;
  --bronze:#a66f35;
  --wine:#4b1f1d;
}
html{background:#090806}
body{
  background:
    linear-gradient(180deg, #0d0b08 0%, #080705 44%, #120f0a 100%);
}
body::before{
  background:
    linear-gradient(rgba(232,207,154,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(232,207,154,.022) 1px, transparent 1px);
  opacity:.34;
}
body::after{
  background:linear-gradient(180deg, #090806, rgba(9,8,6,.94));
}
.nav{
  background:rgba(9,8,6,.78);
  border-top-color:rgba(232,207,154,.08);
  border-bottom-color:rgba(232,207,154,.15);
  box-shadow:0 16px 42px rgba(0,0,0,.34);
}
.brand .k,
.brand-home:hover .n,
.brand-home:focus-visible .n{color:var(--champagne)}
.brand small{color:rgba(240,213,143,.52)}
.brand-home:focus-visible{
  outline-color:rgba(240,213,143,.62);
}
.nav-timebar{
  background:linear-gradient(135deg, rgba(240,213,143,.16), rgba(91,55,26,.16));
  border-color:rgba(240,213,143,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 16px 34px rgba(0,0,0,.24);
}
.nav-timebar.is-active b,
.nav-timebar.is-pending b{color:var(--champagne)}
.nav .links a:hover,
.nav .links a.active{
  background:rgba(240,213,143,.08);
  border-color:rgba(240,213,143,.15);
}
.nav .cta,
.nav .links a.cta,
.btn-cyan,
.btn-green,
.btn-tele,
.portal-btn{
  background:linear-gradient(135deg, #f2d890 0%, #c89142 52%, #865321 100%);
  color:#161007 !important;
  box-shadow:0 18px 44px rgba(166,111,53,.28);
}
.btn-outline{
  border-color:rgba(240,213,143,.36);
  color:var(--champagne);
}
.btn-outline:hover{
  border-color:rgba(240,213,143,.72);
  box-shadow:0 0 0 3px rgba(240,213,143,.08);
}
.chip.on,
.badge.live,
.phase-num,
.challenge-timeline span,
.step .num.c,
.step .num.g,
.step .num.y{
  background:linear-gradient(135deg, #f0d58f, #a66f35);
  color:#171007;
}
.badge.live,
.hero-live{animation:none}
.tier:not(.locked)::after{animation:none;opacity:.58}

.hero{
  background:#05080f;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(680px 520px at 16% 20%, rgba(0,198,255,.26), transparent 58%),
    radial-gradient(600px 480px at 84% 16%, rgba(150,90,255,.22), transparent 60%),
    radial-gradient(760px 560px at 50% 92%, rgba(255,196,64,.14), transparent 58%),
    radial-gradient(1000px 680px at 50% 50%, rgba(0,229,255,.08), transparent 68%),
    linear-gradient(180deg, rgba(5,8,15,0), rgba(5,8,15,.5) 68%, rgba(3,7,17,.97));
  filter:saturate(1.15);
  animation:heroAurora 16s ease-in-out infinite alternate;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 28%, rgba(0,229,255,.10), transparent 40%),
    radial-gradient(circle at 80% 66%, rgba(150,90,255,.10), transparent 42%),
    linear-gradient(90deg, rgba(0,229,255,.06) 1px, transparent 1px),
    linear-gradient(rgba(0,229,255,.05) 1px, transparent 1px);
  background-size:auto, auto, 60px 60px, 60px 60px;
  opacity:.55;
  mask-image:radial-gradient(125% 95% at 50% 30%, rgba(255,255,255,.9), transparent 78%);
  -webkit-mask-image:radial-gradient(125% 95% at 50% 30%, rgba(255,255,255,.9), transparent 78%);
}
.kicker,
.hero-pills span,
.hero-ticker span{
  background:rgba(16,13,9,.56);
  border-color:rgba(240,213,143,.14);
}
.hero-est{color:rgba(240,213,143,.82)}
.hero-est::before{background:linear-gradient(90deg, transparent, rgba(240,213,143,.82))}
.hero h1{
  color:rgba(250,245,234,.95);
  text-shadow:0 26px 86px rgba(0,0,0,.86), 0 0 34px rgba(240,213,143,.08);
}
.hero h1 .glow{
  color:#fff7e6;
  text-shadow:0 0 32px rgba(240,213,143,.24);
}
.hero h1.hero-logo-title{
  max-width:100%;
  font-family:var(--font-display);
  font-size:clamp(32px,5vw,64px);
  font-weight:900;
  line-height:1.15;
  letter-spacing:0;
  text-transform:none;
  color:#fff;
  text-shadow:0 24px 76px rgba(0,0,0,.86), 0 0 28px rgba(240,213,143,.08);
}
.hero-logo-title span{
  display:inline-block;
}
.hero-logo-title .hero-brand-line{
  display:block;
  white-space:nowrap;
}
.hero-logo-title .hero-kn{
  color:#ffd479;
  background:linear-gradient(180deg,#ffe9a8,#e8a317);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  text-shadow:0 0 26px rgba(255,212,121,.35), 0 24px 76px rgba(0,0,0,.86);
}
.hero-logo-title .hero-invest{
  color:#ffffff;
  text-shadow:0 24px 76px rgba(0,0,0,.86);
}
.hero-logo-title .hero-challenge{
  display:block;
  margin-top:.3em;
  color:var(--champagne);
  font-size:.5em;
  line-height:1.2;
  max-width:100%;
  word-wrap:break-word;
  overflow-wrap:break-word;
  text-shadow:0 0 24px rgba(240,213,143,.18), 0 20px 60px rgba(0,0,0,.86);
}
@media(max-width:760px){
  .hero h1.hero-logo-title{
    max-width:100%;
    font-size:clamp(28px,9vw,42px);
    line-height:1.15;
  }
  .hero-logo-title .hero-brand-line{
    white-space:normal;
  }
  .hero-logo-title .hero-challenge{
    font-size:.74em;
  }
}
.hero-panel,
.challenge-offer,
.objective-table,
.challenge-card,
.cockpit-panel,
.panel,
.card,
.tier,
.rule,
.faq,
.tele-box,
.cta-box,
.mr-card,
.feat{
  background:linear-gradient(180deg, rgba(28,22,15,.88), rgba(11,9,7,.96));
  border-color:rgba(232,207,154,.13);
}
.hero-panel::before{
  background:linear-gradient(180deg, rgba(240,213,143,.07), transparent 30%);
}
.hero-label,
.hero-score,
.hero-rank,
.code,
.objective-note span,
.cockpit-list span,
.faq summary::after,
.tier-payout-row .payout-consolation-roi{color:var(--champagne)}
.hero-live{
  background:rgba(240,213,143,.09);
  border-color:rgba(240,213,143,.18);
  color:var(--champagne);
}
.hero-live span,
.status-dot{
  background:var(--champagne);
  box-shadow:0 0 16px rgba(240,213,143,.64);
}
.hero-kpi,
.hero-board,
.hero-leader,
.hero-guard,
.objective-row,
.challenge-timeline div,
.challenge-specs div,
.challenge-matrix div,
.review-steps div,
.cockpit-list div,
.offer-prizes div{
  background:rgba(255,244,220,.045);
  border-color:rgba(232,207,154,.1);
}
.hero-rank,
.offer-prizes b{
  background:linear-gradient(135deg, rgba(240,213,143,.2), rgba(166,111,53,.12));
  border-color:rgba(240,213,143,.26);
}
.hero-bar span,
.cd-progress-track span{
  background:linear-gradient(90deg, #f0d58f, #a66f35);
  box-shadow:0 0 20px rgba(240,213,143,.34);
}
.prizepool,
.offer-reward,
.rules-notice,
.cd-wrap{
  background:
    linear-gradient(180deg, rgba(240,213,143,.13), rgba(255,244,220,.035)),
    linear-gradient(135deg, rgba(91,31,29,.14), transparent 54%);
  border-color:rgba(240,213,143,.22);
  box-shadow:0 24px 72px -46px rgba(240,213,143,.42);
}
.rules-warning{
  background:
    linear-gradient(180deg, rgba(103,39,34,.18), rgba(255,244,220,.035)),
    linear-gradient(135deg, rgba(240,213,143,.08), transparent 52%);
}
.lb-rank-search input:focus{
  border-color:rgba(240,213,143,.5);
  box-shadow:0 0 0 3px rgba(240,213,143,.1);
}
tbody tr:hover{
  background:rgba(240,213,143,.05);
}
tbody tr.top{
  background:linear-gradient(90deg, rgba(240,213,143,.065), transparent);
}
.pill{
  background:rgba(240,213,143,.15);
  color:var(--champagne);
}
.trust-strip span{
  background:rgba(240,213,143,.08);
  border-color:rgba(240,213,143,.18);
  color:var(--champagne);
}
.xau{background:rgba(103,39,34,.08)}

.prop-strip-item,
.top-prize-button,
.prize-card,
.prize-card.reveal,
.prize-rank-1{
  background:
    linear-gradient(180deg, rgba(31,24,16,.94), rgba(12,10,8,.98)),
    radial-gradient(circle at 50% -12%, rgba(240,213,143,.18), transparent 60%);
  border-color:rgba(232,207,154,.16);
  box-shadow:0 24px 58px -40px rgba(0,0,0,.92);
}
.prize-card-glow,
.prize-rank-1 .prize-card-glow{
  background:rgba(240,213,143,.18);
}
.top-prize-button:hover,
.prize-card:hover{
  background:
    linear-gradient(180deg, rgba(42,31,18,.96), rgba(12,10,8,.98)),
    radial-gradient(circle at 50% -12%, rgba(240,213,143,.24), transparent 60%);
  border-color:rgba(240,213,143,.88);
  box-shadow:
    0 0 0 1px rgba(240,213,143,.26),
    0 30px 86px -36px rgba(240,213,143,.52);
}

.phase-card:nth-child(1),
.phase-card:nth-child(2),
.phase-card:nth-child(3){
  border-color:rgba(240,213,143,.18);
}
.phase-card:nth-child(1){
  background:
    radial-gradient(circle at 72% 0%, rgba(240,213,143,.25), transparent 43%),
    linear-gradient(180deg, rgba(38,29,18,.94), rgba(10,8,6,.98) 74%);
}
.phase-card:nth-child(2){
  background:
    radial-gradient(circle at 68% -8%, rgba(166,111,53,.24), transparent 46%),
    linear-gradient(180deg, rgba(29,24,18,.94), rgba(9,8,6,.98) 74%);
}
.phase-card:nth-child(3){
  background:
    radial-gradient(circle at 70% 0%, rgba(103,39,34,.26), transparent 44%),
    linear-gradient(180deg, rgba(38,20,16,.94), rgba(10,8,6,.98) 74%);
}
.phase-card:hover{
  box-shadow:0 34px 96px -56px rgba(240,213,143,.5);
}

.payout-major-card,
.payout-major-card.payout-rank-1{
  animation:none;
  background:
    linear-gradient(180deg, rgba(31,24,16,.94), rgba(12,10,8,.98)),
    radial-gradient(circle at 50% -12%, rgba(240,213,143,.18), transparent 60%);
  border-color:rgba(232,207,154,.18);
}
.payout-major-card.payout-rank-1{
  background:
    linear-gradient(180deg, rgba(50,36,18,.96), rgba(12,10,8,.98)),
    radial-gradient(circle at 50% -12%, rgba(240,213,143,.3), transparent 62%);
  border-color:rgba(240,213,143,.42);
}
.payout-week-tab.is-live{
  background:linear-gradient(135deg, rgba(240,213,143,.18), rgba(91,31,29,.1));
  border-color:rgba(240,213,143,.34);
}
.payout-week-tab.is-live b,
.payout-week-tab.is-paid b{color:var(--champagne)}
.payout-week-tab.is-paid{
  background:linear-gradient(135deg, rgba(240,213,143,.22), rgba(166,111,53,.12));
  border-color:rgba(240,213,143,.38);
}
.payout-consolation,
.payout-consolation-row{
  border-color:rgba(232,207,154,.12);
}

.mobile-flow::before{background:linear-gradient(90deg, #090806, transparent)}
.mobile-flow::after{background:linear-gradient(270deg, #090806, transparent)}
.mobile-flow-card,
.mobile-flow-card.blue,
.mobile-flow-card.green,
.mobile-flow-card.gold,
.mobile-flow-card.cyan{
  background:linear-gradient(180deg, rgba(31,24,16,.92), rgba(10,8,6,.97));
  border-color:rgba(232,207,154,.14);
}
.mobile-flow-card span{
  background:linear-gradient(135deg, #f0d58f, #a66f35);
}

@media (prefers-reduced-motion: no-preference){
  .motion-ready{
    opacity:0;
    filter:blur(7px);
    will-change:transform, opacity, filter;
    transition:
      opacity .72s cubic-bezier(.2,.72,.16,1),
      transform .72s cubic-bezier(.2,.72,.16,1),
      filter .72s cubic-bezier(.2,.72,.16,1);
    transition-delay:calc(min(var(--motion-i, 0), 8) * 48ms);
  }
  .motion-rise{transform:translate3d(0,24px,0)}
  .motion-panel{transform:translate3d(0,18px,0) scale(.985);transform-origin:50% 75%}
  .motion-left{transform:translate3d(-30px,0,0)}
  .motion-right{transform:translate3d(30px,0,0)}
  .motion-pop{transform:translate3d(0,14px,0) scale(.965)}
  .motion-row{
    transform:translate3d(18px,0,0);
    filter:none;
    transition-duration:.5s;
    transition-delay:calc(min(var(--motion-i, 0), 10) * 34ms);
  }
  .motion-in{
    opacity:1;
    transform:none;
    filter:none;
  }
}
@media (prefers-reduced-motion: reduce){
  .motion-ready{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
    transition:none !important;
  }
}

.hero-panel,
.hero-kpi,
.hero-leader,
.hero-guard,
.prop-strip-item,
.challenge-offer,
.objective-table,
.objective-row,
.challenge-timeline div,
.challenge-specs div,
.challenge-matrix div,
.review-steps div,
.cockpit-list div,
.objective-card,
.phase-card,
.card,
.feat,
.faq,
.rule,
.payout-major-card,
.payout-consolation-row,
.mobile-flow-card{
  transition:
    transform .24s cubic-bezier(.2,.7,.2,1),
    border-color .24s ease,
    box-shadow .24s ease,
    background .24s ease;
}

@media (hover:hover) and (pointer:fine){
  .hero-panel:hover,
  .challenge-offer:hover,
  .objective-table:hover,
  .card:hover,
  .feat:hover,
  .faq:hover,
  .rule:hover{
    transform:translateY(-4px);
    border-color:rgba(240,213,143,.28);
    box-shadow:0 30px 82px -46px rgba(240,213,143,.32);
  }
  .hero-main-panel:hover{
    transform:translateY(-3px) scale(1.006);
  }
  .hero-kpi:hover{
    transform:translateY(-3px);
    border-color:rgba(240,213,143,.24);
    background:rgba(255,244,220,.065);
  }
  .hero-leader:hover{
    transform:translateX(6px);
    background:rgba(240,213,143,.07);
    border-color:rgba(240,213,143,.22);
  }
  .hero-guard:hover,
  .objective-row:hover,
  .offer-prizes div:hover,
  .payout-consolation-row:hover{
    transform:translateX(5px);
    border-color:rgba(240,213,143,.22);
    background:rgba(255,244,220,.06);
  }
  .hero-prop-list .prop-strip-item:hover{
    transform:translateX(8px) scale(1.012);
    border-color:rgba(240,213,143,.34);
    box-shadow:0 24px 70px -42px rgba(240,213,143,.34);
  }
  .challenge-timeline div:nth-child(odd):hover,
  .challenge-specs div:nth-child(odd):hover,
  .challenge-matrix div:nth-child(odd):hover,
  .review-steps div:nth-child(odd):hover,
  .cockpit-list div:nth-child(odd):hover{
    transform:translateY(-4px);
  }
  .challenge-timeline div:nth-child(even):hover,
  .challenge-specs div:nth-child(even):hover,
  .challenge-matrix div:nth-child(even):hover,
  .review-steps div:nth-child(even):hover,
  .cockpit-list div:nth-child(even):hover{
    transform:translateY(-2px) scale(1.012);
  }
  .objective-card:hover,
  .phase-card:hover{
    transform:translateY(-6px) scale(1.01);
    border-color:rgba(240,213,143,.3);
  }
  .payout-major-card:hover{
    transform:translateY(-8px) scale(1.025);
    border-color:rgba(240,213,143,.72);
  }
  .mobile-flow-card:hover{
    transform:translateY(-5px);
    border-color:rgba(240,213,143,.3);
  }
}

@media (hover:none){
  .hero-panel:active,
  .prop-strip-item:active,
  .card:active,
  .tier:active,
  .phase-card:active,
  .payout-major-card:active{
    transform:scale(.985);
    border-color:rgba(240,213,143,.34);
  }
}

/* Mobile-specific compact edition. Desktop keeps the full presentation. */
@media(max-width:640px){
  :root{--nav-top-gap:4px}
  html{scroll-padding-top:116px}
  body{padding-bottom:78px}
  .wrap{
    padding-left:12px;
    padding-right:12px;
  }
  .nav{
    top:var(--nav-top-gap);
    margin-top:var(--nav-top-gap);
  }
  .nav .wrap{
    display:grid;
    grid-template-columns:minmax(118px,auto) minmax(0,1fr);
    align-items:center;
    gap:6px 8px;
    min-height:0;
    padding-top:6px;
    padding-bottom:6px;
  }
  .brand{
    font-size:17px;
    line-height:.92;
    letter-spacing:0;
  }
  .brand small{
    margin-top:2px;
    font-size:7.5px;
    letter-spacing:.18em;
  }
  .nav-timebar{
    order:2;
    flex:auto;
    width:auto;
    min-width:0;
    max-width:none;
    height:32px;
    margin:0;
    padding:0 9px;
    gap:6px;
    justify-self:stretch;
  }
  .nav-timebar span{
    font-size:8px;
    letter-spacing:.06em;
  }
  .nav-timebar b{
    font-size:12px;
  }
  .nav .links{
    order:3;
    grid-column:1 / -1;
    display:flex;
    flex-direction:column;
    gap:5px;
    width:100%;
    margin:0;
    padding:0;
    overflow:visible;
  }
  .nav .links a,
  .nav .links a:not(.cta),
  .nav .links a.cta{
    display:flex;
    width:100%;
    min-width:0;
    min-height:30px;
    padding:0 6px;
    border-radius:999px;
    font-size:0;
    line-height:1;
    white-space:nowrap;
    box-shadow:none;
  }
  .nav .links a::after{
    content:attr(data-mobile);
    position:static;
    inset:auto;
    display:block;
    width:auto;
    height:auto;
    border-radius:0;
    background:none;
    transform:none;
    transition:none;
    pointer-events:auto;
    font-size:10.5px;
    font-weight:900;
    letter-spacing:0;
  }
  .nav .links a.cta{
    grid-column:auto;
    min-height:30px;
  }

  .hero{
    min-height:auto;
    padding-top:20px;
    padding-bottom:22px;
  }
  .hero-shell,
  .hero-lower-shell{
    gap:10px;
  }
  .hero-lower-shell{
    margin-top:10px;
  }
  .hero-copy{
    text-align:left;
  }
  .kicker{
    margin-bottom:10px;
    padding:10px 12px;
    border-radius:12px;
  }
  .kicker .big{
    font-size:15px;
    line-height:1.25;
  }
  .kicker .small,
  .hero-est,
  .hero-copy > p.sub:not(.hero-signature),
  .hero-title-panel,
  .prizepool .pp-sub{
    display:none !important;
  }
  .hero-pills{
    gap:6px;
    margin-bottom:10px;
  }
  .hero-pills span{
    min-height:27px;
    padding:0 9px;
    font-size:10.5px;
    border-radius:999px;
  }
  .hero-pills span:nth-child(3){
    display:none;
  }
  .hero h1.hero-logo-title{
    max-width:none;
    font-size:clamp(36px,10.8vw,48px);
    line-height:.96;
  }
  .hero-logo-title .hero-brand-line{
    white-space:nowrap;
  }
  .hero-logo-title .hero-challenge{
    margin-top:.02em;
    font-size:.58em;
  }
  .hero-signature{
    max-width:22rem;
    margin-top:9px !important;
    font-size:clamp(17px,5vw,21px) !important;
    line-height:1.22;
  }
  .prizepool{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    margin-top:12px;
    padding:9px;
    border-radius:13px;
  }
  .prizepool .pp-item:first-child{
    grid-column:auto;
    padding-bottom:0;
    border-bottom:0;
  }
  .pp-lbl{
    font-size:8.5px;
    letter-spacing:.06em;
  }
  .pp-val,
  .pp-val.green,
  .pp-val.cyan{
    font-size:18px;
    line-height:1.05;
  }
  .hero .actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:12px;
  }
  .hero .actions .btn,
  .hero .actions a,
  .btn,
  .portal-btn,
  .btn-tele.portal-btn{
    min-height:40px;
    padding:9px 10px;
    border-radius:12px;
    font-size:12px;
  }
  .hero .actions .portal-grid{
    grid-column:1 / -1;
  }
  .portal-grid-single{
    max-width:none;
  }

  .hero-stage{
    gap:9px;
  }
  .hero-panel{
    padding:12px;
    border-radius:15px;
  }
  .hero-main-panel{
    gap:10px;
  }
  .hero-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    margin-bottom:0;
  }
  .hero-kpi{
    min-height:72px;
    padding:9px;
    border-radius:12px;
  }
  .hero-kpi-label{
    font-size:8.5px;
    letter-spacing:.06em;
  }
  .hero-kpi strong{
    font-size:17px;
  }
  .hero-kpi small{
    font-size:10px;
    line-height:1.25;
  }
  .hero-board{
    padding:10px;
    border-radius:13px;
  }
  .hero-board-title{
    font-size:12px;
  }
  .hero-board-meta{
    font-size:10px;
  }
  .hero-leaders{
    gap:7px;
  }
  .hero-leader{
    padding:8px;
  }
  .hero-rank{
    width:29px;
    height:29px;
    border-radius:9px;
    font-size:11px;
  }
  .hero-trader-name{
    font-size:12px;
  }
  .hero-trader-sub{
    font-size:9px;
  }
  .hero-score{
    font-size:14px;
  }
  .hero-leader:nth-child(n+4),
  .hero-bar,
  .hero-leader-stats{
    display:none;
  }

  .hero-prop-list{
    gap:8px;
  }
  .hero-prop-list .prop-strip-item{
    padding:12px;
    border-radius:13px;
    grid-template-columns:minmax(88px,.4fr) minmax(0,.6fr);
    column-gap:10px;
  }
  .hero-prop-list .prop-strip-item span{
    font-size:9px;
  }
  .hero-prop-list .prop-strip-item strong{
    font-size:16px;
  }
  .hero-prop-list .prop-strip-item small{
    grid-column:2;
    grid-row:1 / span 2;
    margin-top:0;
    font-size:11px;
    line-height:1.35;
  }

  section.block{
    padding-top:38px;
    padding-bottom:38px;
  }
  .sec-head{
    margin-bottom:16px;
  }
  .sec-head h2{
    font-size:clamp(24px,7vw,34px);
  }
  .sec-head p,
  .challenge-suite-head p{
    font-size:13px;
    line-height:1.5;
  }
  .challenge-suite-head{
    margin-bottom:14px;
  }
  .challenge-offer,
  .objective-table,
  .challenge-card,
  .cockpit-panel,
  .card,
  .tier,
  .phase-card,
  .faq,
  .rule,
  .cta-box{
    border-radius:14px;
  }
}

@media(max-width:420px){
  .wrap{
    padding-left:10px;
    padding-right:10px;
  }
  .nav .wrap{
    grid-template-columns:minmax(104px,auto) minmax(0,1fr);
    gap:5px 6px;
  }
  .brand{
    font-size:15px;
  }
  .brand small{
    font-size:6.8px;
    letter-spacing:.15em;
  }
  .nav-timebar{
    height:29px;
    padding:0 7px;
  }
  .nav-timebar span{
    display:none;
  }
  .nav-timebar b{
    font-size:11.5px;
  }
  .nav .links{
    gap:4px;
  }
  .nav .links a,
  .nav .links a:not(.cta),
  .nav .links a.cta{
    min-height:28px;
    padding:0 4px;
  }
  .nav .links a::after{
    font-size:9.6px;
  }
  .hero{
    padding-top:16px;
  }
  .hero h1.hero-logo-title{
    font-size:clamp(32px,10vw,40px);
  }
  .hero-signature{
    font-size:16px !important;
  }
  .hero-pills span{
    font-size:10px;
    padding:0 8px;
  }
  .prizepool{
    padding:8px;
  }
  .pp-val,
  .pp-val.green,
  .pp-val.cyan{
    font-size:16px;
  }
  .hero .actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .hero .actions .portal-grid{
    grid-column:1 / -1;
  }
  .hero-prop-list .prop-strip-item{
    grid-template-columns:1fr;
  }
  .hero-prop-list .prop-strip-item small{
    grid-column:1;
    grid-row:auto;
    margin-top:5px;
  }
  .hero-prop-list .prop-strip-item:nth-child(n+3){
    display:none;
  }
}
@media(max-width:340px){
  .hero .actions{
    grid-template-columns:1fr;
  }
  .hero .actions .portal-grid{
    grid-column:auto;
  }
}

/* Hero scroll expansion: smooth, subtle, and scroll-driven. */
.hero{
  --hero-scroll:0;
  --hero-expand:0;
  --hero-bg-y:0px;
  --hero-img-y:0px;
  --hero-bg-grow:0%;
  --hero-before-scale:1;
  --hero-before-opacity:.98;
  --hero-grid-y:0px;
  --hero-grid-scale:1;
  --hero-grid-opacity:.13;
  --hero-copy-y:0px;
  --hero-copy-scale:1;
  --hero-stage-y:0px;
  --hero-stage-scale:1;
  --hero-lower-y:0px;
  --hero-title-spacing:0em;
  --hero-clip-start:25%;
  --hero-clip-end:75%;
  --hero-clip-bg-size:170%;
  --hero-clip-y:0px;
  --hero-clip-opacity:.46;
  transform-origin:top center;
}

.hero-cinematic-mask{display:none;overflow:hidden;
  clip-path:polygon(
    var(--hero-clip-start) var(--hero-clip-start),
    var(--hero-clip-end) var(--hero-clip-start),
    var(--hero-clip-end) var(--hero-clip-end),
    var(--hero-clip-start) var(--hero-clip-end)
  );
  background:
    radial-gradient(620px 360px at 62% 32%, rgba(148,238,242,.2), transparent 62%),
    linear-gradient(90deg, rgba(8,7,5,.22), rgba(8,7,5,.02) 48%, rgba(8,7,5,.46));
  opacity:var(--hero-clip-opacity);
  filter:saturate(1.08) contrast(1.06);
  will-change:clip-path, background-size, background-position, opacity;
}
.hero-cinematic-mask::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), transparent 22%, rgba(0,0,0,.2) 100%),
    radial-gradient(480px 260px at 50% 45%, transparent 34%, rgba(0,0,0,.28) 100%);
}
.hero-cinematic-mask::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(201,147,63,.34);
  box-shadow:
    inset 0 0 0 1px rgba(148,238,242,.08),
    0 0 46px rgba(201,147,63,.16);
  opacity:.72;
}

@media (prefers-reduced-motion: no-preference){
  .hero.hero-scroll-fx{
    background-position:
      center calc(50% + var(--hero-bg-y)),
      center center,
      center calc(50% + var(--hero-img-y));
    background-size:
      100% 100%,
      100% 100%,
      calc(100% + var(--hero-bg-grow)) auto;
  }
  .hero.hero-scroll-fx::before{
    transform:scale(var(--hero-before-scale));
    transform-origin:50% 22%;
    opacity:var(--hero-before-opacity);
  }
  .hero.hero-scroll-fx::after{
    transform:translateY(var(--hero-grid-y)) scale(var(--hero-grid-scale));
    opacity:var(--hero-grid-opacity);
  }
  .hero.hero-scroll-fx .hero-copy{
    transform:translate3d(0, var(--hero-copy-y), 0) scale(var(--hero-copy-scale));
    transform-origin:left top;
    will-change:transform;
  }
  .hero.hero-scroll-fx .hero-stage{
    transform:translate3d(0, var(--hero-stage-y), 0) scale(var(--hero-stage-scale));
    transform-origin:right top;
    will-change:transform;
  }
  .hero.hero-scroll-fx .hero-lower-shell{
    transform:translate3d(0, var(--hero-lower-y), 0);
    will-change:transform;
  }
  .hero.hero-scroll-fx .hero-logo-title{
    letter-spacing:var(--hero-title-spacing);
  }
}

@media(max-width:640px) and (prefers-reduced-motion: no-preference){
  .hero.hero-scroll-fx{
    background-position:
      center calc(50% + var(--hero-bg-y)),
      center center,
      center calc(50% + var(--hero-img-y));
    background-size:
      100% 100%,
      100% 100%,
      calc(100% + var(--hero-bg-grow)) auto;
  }
  .hero.hero-scroll-fx .hero-copy{
    transform:translate3d(0, var(--hero-copy-y), 0) scale(var(--hero-copy-scale));
  }
  .hero.hero-scroll-fx .hero-stage,
  .hero.hero-scroll-fx .hero-lower-shell{
    transform:translate3d(0, var(--hero-stage-y), 0);
  }
  .hero.hero-scroll-fx .hero-logo-title{
    letter-spacing:0;
  }
}

/* Apply the same scroll effect even when the browser prefers reduced motion;
   JS lowers the amplitude in that case. */
.hero.hero-scroll-fx{
  background-position:
    center calc(50% + var(--hero-bg-y)),
    center center,
    center calc(50% + var(--hero-img-y));
  background-size:
    100% 100%,
    100% 100%,
    calc(100% + var(--hero-bg-grow)) auto;
}
.hero.hero-scroll-fx::before{
  transform:scale(var(--hero-before-scale));
  transform-origin:50% 22%;
  opacity:var(--hero-before-opacity);
}
.hero.hero-scroll-fx::after{
  transform:translateY(var(--hero-grid-y)) scale(var(--hero-grid-scale));
  opacity:var(--hero-grid-opacity);
}
.hero.hero-scroll-fx .hero-copy{
  transform:translate3d(0, var(--hero-copy-y), 0) scale(var(--hero-copy-scale));
  transform-origin:left top;
  will-change:transform;
}
.hero.hero-scroll-fx .hero-stage{
  transform:translate3d(0, var(--hero-stage-y), 0) scale(var(--hero-stage-scale));
  transform-origin:right top;
  will-change:transform;
}
.hero.hero-scroll-fx .hero-lower-shell{
  transform:translate3d(0, var(--hero-lower-y), 0);
  will-change:transform;
}
.hero.hero-scroll-fx .hero-logo-title{
  letter-spacing:var(--hero-title-spacing);
}

.hero.hero-scroll-fx .hero-cinematic-mask{
  clip-path:polygon(
    var(--hero-clip-start) var(--hero-clip-start),
    var(--hero-clip-end) var(--hero-clip-start),
    var(--hero-clip-end) var(--hero-clip-end),
    var(--hero-clip-start) var(--hero-clip-end)
  );
  background-position:center calc(50% + var(--hero-clip-y));
  background-size:var(--hero-clip-bg-size) auto;
}

@media(max-width:640px){
  .hero.hero-scroll-fx .hero-logo-title{
    letter-spacing:0;
  }
  .hero-cinematic-mask{
    opacity:var(--hero-clip-opacity);
    background-size:var(--hero-clip-bg-size) auto;
  }
}

/* Contrast pass: use gold as material/accent, not as the main text color. */
:root{
  --cyan:#f7f4ed;
  --green:#f7f4ed;
  --champagne:#f7f4ed;
  --gold:#c9933f;
  --txt:#f7f4ed;
  --dim:#c7c0b4;
  --dim2:#8f877b;
  --contrast-gold:#c9933f;
  --contrast-gold-2:#f0cf7c;
  --contrast-black:#070604;
}

.green,
.cyan,
.gold,
.hero-logo-title .hero-challenge,
.hero-est,
.hero-label,
.hero-score,
.hero-rank,
.hero-guard-badge,
.hero-guard-badge.ok,
.hero-guard-badge.info,
.pp-val.green,
.pp-val.cyan,
.prop-strip-item span,
.sec-tag,
.offer-badge,
.offer-reward b,
.offer-prizes b,
.offer-prize-copy small,
.tier-dep,
.tp-val,
.top-prize-button span,
.prize-rank,
.objective-note span,
.challenge-price,
.review-steps b,
.phase-card li::before,
.code,
.rank.r1,
.pill,
.rules-notice-kicker,
.rules-notice p b,
.rules-warning b,
.st.ok,
.st.warn,
.paid,
.pending,
.cd-head,
.cd-end,
.cd-end-state,
.trust-strip span,
.cockpit-top b,
.cockpit-list span,
.faq summary::after,
.payout-week-tab.is-live b,
.payout-week-tab.is-paid b,
.payout-prize-name,
.payout-prize-value,
.tier-payout-card .payout-prize-name,
.tier-payout-row .payout-consolation-roi{
  color:#f7f4ed !important;
}

.brand .k,
.hero-logo-title .hero-kn{
  color:#00dfff !important;
  text-shadow:0 0 18px rgba(0,223,255,.18), 0 18px 56px rgba(0,0,0,.72);
}

.brand .n,
.hero-logo-title .hero-invest,
.hero h1,
.hero h1 .glow,
h1,
h2,
.sec-head h2,
.challenge-suite-head h2,
.lb-head h1,
.hero-panel h3,
.card h3,
.phase-card h3,
.tier-sub,
.objective-card strong,
.objective-row b,
.payout-major-card h3{
  color:#fffaf0 !important;
}

.btn-cyan,
.btn-green,
.btn-tele,
.portal-btn,
.nav .cta,
.nav .links a.cta,
.chip.on,
.badge.live,
.phase-num,
.challenge-timeline span,
.step .num.c,
.step .num.g,
.step .num.y,
.mobile-bar .btn:first-child{
  background:linear-gradient(135deg, #f2d482 0%, #c88d36 52%, #8c551c 100%) !important;
  color:var(--contrast-black) !important;
  border-color:rgba(240,207,124,.42) !important;
  box-shadow:0 18px 44px rgba(153,95,28,.24) !important;
}

.btn-outline,
.mobile-bar .btn:not(:first-child){
  background:rgba(7,6,4,.72) !important;
  color:#fffaf0 !important;
  border-color:rgba(255,250,240,.22) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02) !important;
}
.btn-outline:hover,
.mobile-bar .btn:not(:first-child):hover{
  border-color:rgba(240,207,124,.48) !important;
  box-shadow:0 16px 36px -24px rgba(240,207,124,.42) !important;
}

.btn-form.portal-btn{
  background:linear-gradient(135deg, #fffdf6 0%, #dcefff 100%) !important;
  color:#07131c !important;
  border-color:rgba(255,255,255,.42) !important;
  box-shadow:0 18px 44px rgba(255,255,255,.12) !important;
}

.nav-timebar b,
.hero-live,
.hero-live span,
.status-dot,
.payout-rank-badge,
.prize-medal,
.offer-badge,
.pill,
.paid,
.pending,
.st.ok,
.st.warn,
.hero-guard-badge{
  color:#fffaf0 !important;
}

.hero-live,
.offer-badge,
.pill,
.paid,
.pending,
.st.ok,
.st.warn,
.hero-guard-badge,
.payout-rank-badge,
.prize-medal{
  background:rgba(255,255,255,.065) !important;
  border-color:rgba(255,255,255,.15) !important;
}

.hero-live span,
.status-dot{
  background:#fffaf0 !important;
  box-shadow:0 0 14px rgba(255,250,240,.42) !important;
}

.hero-bar span,
.cd-progress-track span{
  background:linear-gradient(90deg, #fffaf0, rgba(201,147,63,.72)) !important;
  box-shadow:0 0 18px rgba(255,250,240,.18) !important;
}

.prizepool,
.offer-reward,
.rules-notice,
.cd-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.025)),
    linear-gradient(135deg, rgba(201,147,63,.12), transparent 54%) !important;
  border-color:rgba(255,255,255,.13) !important;
  box-shadow:0 24px 72px -48px rgba(0,0,0,.9) !important;
}

.hero-panel,
.challenge-offer,
.objective-table,
.challenge-card,
.cockpit-panel,
.panel,
.card,
.tier,
.rule,
.faq,
.tele-box,
.cta-box,
.mr-card,
.feat,
.prop-strip-item,
.top-prize-button,
.prize-card,
.payout-major-card,
.payout-major-card.payout-rank-1,
.mobile-flow-card{
  border-color:rgba(255,255,255,.115) !important;
}

.hero-panel:hover,
.challenge-offer:hover,
.objective-table:hover,
.card:hover,
.feat:hover,
.faq:hover,
.rule:hover,
.objective-card:hover,
.phase-card:hover,
.payout-major-card:hover,
.prize-card:hover{
  border-color:rgba(240,207,124,.38) !important;
}

tbody tr.top,
.chip:hover,
.nav .links a:hover,
.nav .links a.active{
  background:rgba(255,255,255,.07) !important;
}

/* Cool balance pass: muted cyan/teal balances the gold CTA without going neon. */
:root{
  --cool:#5ed6df;
  --cool-soft:#94eef2;
  --cool-deep:#123a3d;
  --cool-glass:rgba(94,214,223,.105);
  --cool-line:rgba(148,238,242,.24);
}

body{
  background:
    radial-gradient(900px 420px at 70% 14%, rgba(94,214,223,.08), transparent 62%),
    radial-gradient(760px 380px at 18% 36%, rgba(201,147,63,.055), transparent 65%),
    linear-gradient(180deg, #0d0b08 0%, #080705 44%, #120f0a 100%) !important;
}

.hero::before{
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), transparent 18%, transparent 70%, rgba(8,7,5,.94)),
    radial-gradient(620px 300px at 64% 32%, rgba(94,214,223,.12), transparent 66%),
    radial-gradient(540px 260px at 30% 18%, rgba(201,147,63,.08), transparent 68%),
    radial-gradient(760px 440px at 24% 42%, rgba(0,0,0,.66), transparent 72%) !important;
}

.brand .k,
.hero-logo-title .hero-kn{
  color:var(--cool-soft) !important;
  text-shadow:0 0 18px rgba(94,214,223,.24), 0 18px 56px rgba(0,0,0,.72) !important;
}

.nav-timebar,
.kicker,
.hero-pills span,
.hero-ticker span{
  background:
    linear-gradient(135deg, rgba(94,214,223,.085), rgba(255,255,255,.035)),
    rgba(16,13,9,.56) !important;
  border-color:rgba(148,238,242,.16) !important;
}

.nav .links a:not(.cta).active,
.nav .links a:not(.cta):hover{
  color:#fffaf0 !important;
  background:rgba(94,214,223,.095) !important;
  border-color:rgba(148,238,242,.18) !important;
}

.hero-panel,
.hero-kpi,
.hero-board,
.hero-leader,
.hero-guard,
.challenge-offer,
.objective-table,
.challenge-card,
.cockpit-panel,
.card,
.tier,
.rule,
.faq,
.tele-box,
.cta-box,
.mr-card,
.feat,
.prop-strip-item,
.top-prize-button,
.prize-card,
.payout-major-card,
.payout-major-card.payout-rank-1,
.mobile-flow-card{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 26px 84px rgba(0,0,0,.48) !important;
}

.hero-panel,
.hero-board,
.objective-table,
.panel,
.payout-consolation{
  border-color:rgba(148,238,242,.14) !important;
}

.hero-kpi:nth-child(even),
.hero-leader,
.objective-row,
.challenge-specs div,
.challenge-matrix div,
.cockpit-list div,
.payout-consolation-row{
  background:
    linear-gradient(180deg, rgba(94,214,223,.052), rgba(255,255,255,.026)) !important;
  border-color:rgba(148,238,242,.12) !important;
}

.hero-rank,
.offer-prizes b,
.phase-num,
.challenge-timeline span,
.step .num.c,
.step .num.g{
  background:linear-gradient(135deg, rgba(94,214,223,.22), rgba(255,255,255,.06)) !important;
  border-color:rgba(148,238,242,.26) !important;
  color:#fffaf0 !important;
}

.hero-bar span,
.cd-progress-track span{
  background:linear-gradient(90deg, var(--cool-soft), #fffaf0, rgba(201,147,63,.7)) !important;
  box-shadow:0 0 20px rgba(94,214,223,.24) !important;
}

.btn-outline,
.mobile-bar .btn:not(:first-child){
  border-color:rgba(148,238,242,.28) !important;
  box-shadow:inset 0 0 0 1px rgba(94,214,223,.035) !important;
}

.btn-outline:hover,
.mobile-bar .btn:not(:first-child):hover{
  border-color:rgba(148,238,242,.48) !important;
  box-shadow:0 16px 36px -24px rgba(94,214,223,.45) !important;
}

.prizepool,
.offer-reward,
.rules-notice,
.cd-wrap{
  background:
    linear-gradient(180deg, rgba(255,255,255,.072), rgba(255,255,255,.024)),
    linear-gradient(135deg, rgba(94,214,223,.105), transparent 46%),
    linear-gradient(315deg, rgba(201,147,63,.09), transparent 58%) !important;
  border-color:rgba(148,238,242,.14) !important;
}

.hero-panel:hover,
.challenge-offer:hover,
.objective-table:hover,
.card:hover,
.feat:hover,
.faq:hover,
.rule:hover,
.objective-card:hover,
.phase-card:hover,
.payout-major-card:hover,
.prize-card:hover{
  border-color:rgba(148,238,242,.32) !important;
  box-shadow:0 30px 86px -48px rgba(94,214,223,.24) !important;
}

.btn-cyan:hover,
.btn-green:hover,
.btn-tele:hover,
.portal-btn:hover,
.nav .cta:hover,
.nav .links a.cta:hover{
  filter:saturate(1.03) brightness(1.04);
  box-shadow:
    0 18px 44px rgba(153,95,28,.24),
    0 0 0 1px rgba(148,238,242,.18) !important;
}

/* Hero title containment: keep the logo headline inside its column on PC/mobile. */
.hero-copy,
.hero-logo-title,
.hero-logo-title .hero-brand-line,
.hero-logo-title .hero-challenge{
  min-width:0;
  max-width:100%;
}
.hero h1.hero-logo-title{
  inline-size:100%;
  max-width:100%;
  font-size:clamp(48px, 5.85vw, 88px);
  line-height:.94;
  overflow:visible;
}
.hero-logo-title .hero-brand-line{
  display:flex;
  align-items:baseline;
  gap:.22em;
  white-space:normal;
  flex-wrap:wrap;
}
.hero-logo-title .hero-kn,
.hero-logo-title .hero-invest,
.hero-logo-title .hero-challenge{
  overflow-wrap:normal;
}
.hero-logo-title .hero-challenge{
  font-size:.68em;
}

@media(min-width:1101px){
  .hero-copy{
    max-width:min(100%, 590px);
  }
  .hero-stage{
    position:relative;
    z-index:2;
  }
}

@media(max-width:1100px){
  .hero h1.hero-logo-title{
    inline-size:100%;
    max-width:100%;
    font-size:clamp(48px, 8vw, 78px);
  }
  .hero-logo-title .hero-brand-line{
    flex-wrap:nowrap;
  }
}

@media(max-width:640px){
  .hero-copy{
    overflow:visible;
  }
  .hero h1.hero-logo-title{
    inline-size:100%;
    max-width:100%;
    font-size:clamp(34px, 9.4vw, 42px);
    line-height:1;
    transform:none !important;
  }
  .hero-logo-title .hero-brand-line{
    gap:.18em;
    flex-wrap:wrap;
    white-space:normal;
  }
  .hero-logo-title .hero-challenge{
    font-size:.62em;
    line-height:1.02;
  }
  .hero.hero-scroll-fx .hero-copy{
    transform:none !important;
  }
}

@media(max-width:380px){
  .hero h1.hero-logo-title{
    font-size:clamp(31px, 9vw, 36px);
  }
}

@media(max-width:700px){
  .nav .links{
    display:flex;
    flex-direction:column;
    gap:5px;
    width:100%;
    overflow:visible;
    padding:0;
    margin:0;
    scroll-snap-type:none;
  }
  .nav .links a,
  .nav .links a:not(.cta),
  .nav .links a.cta{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-width:0;
    min-height:31px;
    padding:0 6px;
    font-size:0;
    line-height:1;
    white-space:nowrap;
  }
  .nav .links a::after{
    content:attr(data-mobile);
    position:static;
    display:block;
    background:none;
    transform:none;
    color:inherit;
    font-size:10.5px;
    font-weight:900;
  }
}

/* Center the hero logo lockup on tablet/mobile. */
@media(max-width:1100px){
  .hero-copy{
    text-align:center !important;
  }
  .hero h1.hero-logo-title{
    margin-left:auto;
    margin-right:auto;
    text-align:center;
  }
  .hero-logo-title .hero-brand-line{
    justify-content:center;
  }
  .hero-logo-title .hero-challenge{
    text-align:center;
  }
  .hero-signature{
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center;
  }
}

@media(max-width:640px){
  .hero-copy{
    text-align:center !important;
  }
  .kicker{
    text-align:center;
  }
  .hero-pills{
    justify-content:center;
  }
  .hero h1.hero-logo-title{
    width:100%;
  }
  .hero-logo-title .hero-brand-line{
    justify-content:center;
  }
}

/* Royal gold title accent: only the challenge name gets the premium gold finish. */
.hero-logo-title .hero-challenge{
  color:#f3c45d !important;
  background:
    linear-gradient(180deg, #fff6c8 0%, #f2c45d 34%, #a96a1e 66%, #f7d98a 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:
    0 1px 0 rgba(255,255,255,.12),
    0 16px 46px rgba(0,0,0,.76);
  filter:drop-shadow(0 8px 22px rgba(192,130,40,.28));
}

/* Balance the hero eyebrow: line, label, line. */
.hero-est::before,
.hero-est::after{
  box-shadow:0 0 12px rgba(217,162,64,.24);
}

/* Prize rank badges must keep ranges such as 4-10 on one line. */
.offer-prizes div{
  grid-template-columns:44px minmax(0,1fr) !important;
}
.offer-prizes b{
  box-sizing:border-box;
  width:42px;
  min-width:42px;
  height:32px;
  padding:0 6px;
  white-space:nowrap;
  letter-spacing:0;
  line-height:1;
  font-variant-numeric:tabular-nums;
}

@media(max-width:380px){
  .offer-prizes div{
    grid-template-columns:42px minmax(0,1fr) !important;
  }
  .offer-prizes b{
    width:40px;
    min-width:40px;
    font-size:12px;
  }
}

/* Hero proof cards: cyan labels and larger white values contrast the warm gold cards. */
.hero-prop-list .prop-strip-item{
  position:relative;
  overflow:hidden;
  grid-template-columns:minmax(150px,.43fr) minmax(0,.57fr) !important;
  column-gap:24px;
  padding:20px 22px;
  transition:
    transform .26s cubic-bezier(.2,.78,.2,1),
    border-color .26s ease,
    box-shadow .26s ease,
    background .26s ease;
  will-change:transform;
}
.hero-prop-list .prop-strip-item::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  background:
    linear-gradient(105deg, transparent 0 36%, rgba(255,244,205,.18) 48%, transparent 60%),
    linear-gradient(90deg, rgba(143,246,255,.11), transparent 34%, rgba(217,162,64,.14));
  opacity:0;
  transform:translateX(-24%);
  transition:opacity .26s ease, transform .52s cubic-bezier(.2,.78,.2,1);
  pointer-events:none;
}
.hero-prop-list .prop-strip-item::after{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  bottom:16px;
  width:2px;
  border-radius:999px;
  background:linear-gradient(180deg, transparent, #f3c45d, #8ff6ff, transparent);
  opacity:.26;
  box-shadow:0 0 18px rgba(143,246,255,.18);
  transition:opacity .26s ease, box-shadow .26s ease;
}
.hero-prop-list .prop-strip-item span{
  position:relative;
  z-index:1;
  color:#8ff6ff !important;
  font-size:13.5px;
  font-weight:950;
  letter-spacing:.06em;
  text-shadow:0 0 16px rgba(143,246,255,.18);
  transition:color .22s ease, text-shadow .22s ease, transform .22s ease;
}
.hero-prop-list .prop-strip-item strong{
  position:relative;
  z-index:1;
  color:#fffaf0 !important;
  font-size:clamp(26px,2.15vw,31px);
  font-weight:950;
  line-height:1.05;
  text-shadow:0 12px 34px rgba(0,0,0,.55);
  transition:color .22s ease, text-shadow .22s ease, transform .22s ease;
}
.hero-prop-list .prop-strip-item strong.prop-value-cyan{
  color:#8ff6ff !important;
  text-shadow:0 0 20px rgba(143,246,255,.24), 0 12px 34px rgba(0,0,0,.55);
}
.hero-prop-list .prop-strip-item small{
  position:relative;
  z-index:1;
  color:#e7dfd1 !important;
  font-size:14px;
  line-height:1.5;
  transition:color .22s ease, transform .22s ease;
}

@media (hover:hover) and (pointer:fine){
  .hero-prop-list .prop-strip-item:hover{
    transform:translateX(10px) translateY(-3px) scale(1.018) !important;
    border-color:rgba(243,196,93,.46) !important;
    background:
      linear-gradient(180deg, rgba(38,28,14,.92), rgba(12,9,5,.96)),
      linear-gradient(135deg, rgba(143,246,255,.08), transparent 40%, rgba(243,196,93,.11)) !important;
    box-shadow:
      0 24px 76px -42px rgba(243,196,93,.48),
      0 0 0 1px rgba(143,246,255,.12) !important;
  }
  .hero-prop-list .prop-strip-item:hover::before{
    opacity:1;
    transform:translateX(18%);
  }
  .hero-prop-list .prop-strip-item:hover::after{
    opacity:.9;
    box-shadow:0 0 22px rgba(243,196,93,.42), 0 0 18px rgba(143,246,255,.22);
  }
  .hero-prop-list .prop-strip-item:hover span{
    color:#f3fbff !important;
    text-shadow:0 0 20px rgba(143,246,255,.36);
    transform:translateX(2px);
  }
  .hero-prop-list .prop-strip-item:hover strong{
    color:#fff8dc !important;
    text-shadow:0 0 20px rgba(243,196,93,.22), 0 14px 36px rgba(0,0,0,.62);
    transform:translateX(2px);
  }
  .hero-prop-list .prop-strip-item:hover small{
    color:#fffaf0 !important;
    transform:translateX(4px);
  }
}

.hero-prop-list .prop-strip-item:active{
  transform:scale(.992);
}

@media(max-width:640px){
  .hero-prop-list .prop-strip-item{
    grid-template-columns:minmax(112px,.44fr) minmax(0,.56fr) !important;
    column-gap:14px;
    padding:15px;
  }
  .hero-prop-list .prop-strip-item span{
    font-size:11px;
  }
  .hero-prop-list .prop-strip-item strong{
    font-size:20px;
  }
  .hero-prop-list .prop-strip-item small{
    font-size:12px;
  }
}

/* Keep the pointer reaction active even in browser shells with unusual pointer reporting. */
.hero-prop-list .prop-strip-item:hover,
.hero-prop-list .prop-strip-item.is-hover-preview{
  transform:translateX(10px) translateY(-3px) scale(1.018) !important;
  border-color:rgba(243,196,93,.46) !important;
  background:
    linear-gradient(180deg, rgba(38,28,14,.92), rgba(12,9,5,.96)),
    linear-gradient(135deg, rgba(143,246,255,.08), transparent 40%, rgba(243,196,93,.11)) !important;
  box-shadow:
    0 24px 76px -42px rgba(243,196,93,.48),
    0 0 0 1px rgba(143,246,255,.12) !important;
}
.hero-prop-list .prop-strip-item:hover::before,
.hero-prop-list .prop-strip-item.is-hover-preview::before{
  opacity:1;
  transform:translateX(18%);
}
.hero-prop-list .prop-strip-item:hover::after,
.hero-prop-list .prop-strip-item.is-hover-preview::after{
  opacity:.9;
  box-shadow:0 0 22px rgba(243,196,93,.42), 0 0 18px rgba(143,246,255,.22);
}
.hero-prop-list .prop-strip-item:hover span,
.hero-prop-list .prop-strip-item.is-hover-preview span{
  color:#f3fbff !important;
  text-shadow:0 0 20px rgba(143,246,255,.36);
  transform:translateX(2px);
}
.hero-prop-list .prop-strip-item:hover strong,
.hero-prop-list .prop-strip-item.is-hover-preview strong{
  color:#fff8dc !important;
  text-shadow:0 0 20px rgba(243,196,93,.22), 0 14px 36px rgba(0,0,0,.62);
  transform:translateX(2px);
}
.hero-prop-list .prop-strip-item:hover strong.prop-value-cyan,
.hero-prop-list .prop-strip-item.is-hover-preview strong.prop-value-cyan{
  color:#b8fbff !important;
  text-shadow:0 0 24px rgba(143,246,255,.42), 0 14px 36px rgba(0,0,0,.62);
}
.hero-prop-list .prop-strip-item:hover small,
.hero-prop-list .prop-strip-item.is-hover-preview small{
  color:#fffaf0 !important;
  transform:translateX(4px);
}

.hero-prop-list .prop-strip-item.motion-ready,
.hero-prop-list .prop-strip-item.reveal,
.hero-prop-list .prop-strip-item.in{
  transition:
    transform .26s cubic-bezier(.2,.78,.2,1),
    border-color .26s ease,
    box-shadow .26s ease,
    background .26s ease !important;
}

/* Tier card spacing: prevent Chonburi display text and the live badge from clipping on PC/mobile. */
.tier{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  overflow:visible;
  padding:22px clamp(16px,2.4vw,28px) 24px !important;
}
.tier > .badge{
  position:static !important;
  align-self:center;
  transform:none !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  margin:0 auto 18px;
  padding:6px 15px;
  line-height:1;
  white-space:nowrap;
}
.tier-dep,
.tp-val{
  display:block;
  overflow:visible;
  line-height:1.22 !important;
  padding:.08em 0 .12em;
  text-wrap:balance;
}
.tier-dep{
  font-size:clamp(28px,3.35vw,42px) !important;
  margin:0 auto;
}
.tier-sub{
  line-height:1.45 !important;
}
.tier-prize{
  overflow:visible;
  margin:18px 0 20px !important;
  padding:18px 16px 20px !important;
}
.tp-val{
  font-size:clamp(25px,3vw,36px) !important;
}

@media(max-width:640px){
  .tier{
    padding:18px 16px 20px !important;
  }
  .tier > .badge{
    min-height:26px;
    margin-bottom:14px;
    padding:5px 13px;
    font-size:10px;
  }
  .tier-dep{
    font-size:clamp(28px,8.4vw,36px) !important;
  }
  .tp-val{
    font-size:clamp(24px,7.2vw,32px) !important;
  }
  .tier-prize{
    margin:16px 0 18px !important;
    padding:16px 12px 18px !important;
  }
}

/* Mobile payout scroll fix: let the page own vertical swipes, keep week changes on buttons. */
@media(max-width:640px){
  [data-view="winners"] .block,
  #winners-list,
  .payout-week-carousel,
  .payout-week-card,
  .payout-layout,
  .payout-consolation{
    overflow:visible !important;
  }

  #winners-list,
  .payout-week-carousel,
  .payout-week-rail,
  .payout-week-card,
  .payout-layout,
  .payout-major-grid,
  .payout-major-card,
  .payout-consolation,
  .payout-consolation-row{
    touch-action:pan-y;
  }

  #winners-list{
    margin-left:0;
    margin-right:0;
    width:100%;
  }

  .payout-week-rail{
    margin:0 !important;
    padding:14px 0 24px !important;
    gap:12px !important;
    overflow-x:hidden !important;
    overflow-y:visible !important;
    overscroll-behavior:auto !important;
    scroll-snap-type:none !important;
    -webkit-overflow-scrolling:auto !important;
  }

  .payout-week-card{
    flex:0 0 100% !important;
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:52px 12px 18px !important;
    scroll-snap-align:none !important;
  }

  .payout-major-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .payout-major-card,
  .payout-major-card.payout-rank-1{
    min-height:0 !important;
    overflow:visible !important;
  }

  .payout-week-nav{
    top:30px !important;
    transform:none !important;
    width:34px !important;
    height:46px !important;
    border-radius:999px !important;
  }

  .payout-week-nav:hover{
    transform:none !important;
  }

  .payout-week-prev{left:4px !important}
  .payout-week-next{right:4px !important}
}

/* FTMO-inspired leaderboard and reward boards */
[data-view="leaderboard"] .lb-head{
  text-align:left;
  max-width:980px;
  margin:0 auto 22px;
}
[data-view="leaderboard"] .lb-head h1{
  font-size:clamp(30px,4vw,52px);
  letter-spacing:0;
}
[data-view="leaderboard"] .leaderboard-control-row{
  max-width:980px;
  margin:10px auto 6px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  flex-wrap:wrap;
}
[data-view="leaderboard"] .leaderboard-control-row .chips{
  margin:0;
  max-width:none;
}
[data-view="leaderboard"] .chips,
[data-view="leaderboard"] .board-desc{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
  justify-content:flex-start;
  text-align:left;
}
[data-view="leaderboard"] .chip{
  border-radius:4px;
  padding:14px 16px;
  background:transparent;
  border-color:transparent;
  color:#aeb5c2;
  font-size:13px;
}
[data-view="leaderboard"] .chip.on{
  color:#1a8cff;
  background:rgba(255,255,255,.015);
  border:1px solid rgba(255,255,255,.88);
  box-shadow:none;
}
.leaderboard-panel{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
  background:transparent;
  border:0;
  border-radius:0;
  overflow:visible;
  box-shadow:none;
}
.leaderboard-panel .ph{
  margin-bottom:16px;
  padding:0;
  border:0;
  align-items:flex-end;
}
.lb-title-main span:first-child{
  font-size:18px;
  color:#fff;
}
.lb-rank-search input{
  height:42px;
  border-radius:6px;
  background:#12151a;
  border-color:rgba(255,255,255,.11);
}
#lb-table{overflow:visible}
.lb-ftmo-board{
  display:grid;
  gap:14px;
}
.lb-ftmo-date{
  display:flex;
  align-items:center;
  gap:9px;
  color:#fff;
  font-size:14px;
  font-weight:950;
  margin:4px 0 2px;
}
.lb-ftmo-date span{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#00d5af;
  box-shadow:0 0 0 5px rgba(0,213,175,.09);
}
.lb-ftmo-topgrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.lb-ftmo-card{
  position:relative;
  min-height:166px;
  padding:18px 18px 14px;
  border-radius:4px;
  overflow:hidden;
  background:
    linear-gradient(120deg, rgba(39,42,46,.96), rgba(26,31,38,.96) 44%, rgba(10,42,73,.86)),
    radial-gradient(circle at 82% 0, rgba(0,136,255,.26), transparent 42%);
  border:1px solid rgba(255,255,255,.055);
  box-shadow:0 18px 40px -34px rgba(0,0,0,.95);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.lb-ftmo-card::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.2;
  background:
    linear-gradient(135deg, transparent 18%, rgba(255,255,255,.06) 18% 19%, transparent 19% 34%, rgba(255,255,255,.04) 34% 35%, transparent 35%),
    linear-gradient(45deg, transparent 70%, rgba(0,136,255,.16));
  pointer-events:none;
}
.lb-ftmo-card:hover{
  transform:translateY(-5px) scale(1.015);
  border-color:rgba(240,213,143,.64);
  box-shadow:0 0 0 1px rgba(240,213,143,.16), 0 24px 70px -36px rgba(240,213,143,.55);
}
.lb-ftmo-card-top,
.lb-ftmo-stats,
.lb-ftmo-scale,
.lb-ftmo-prize{
  position:relative;
  z-index:1;
}
.lb-ftmo-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:22px;
}
.lb-ftmo-trader{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.lb-ftmo-trophy{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:inline-grid;
  place-items:center;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.55));
}
.lb-ftmo-trophy svg{
  width:100%;
  height:100%;
}
.lb-ftmo-trader strong{
  display:block;
  max-width:150px;
  color:#f3f4f6;
  font-size:14px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lb-ftmo-trader small{
  display:block;
  margin-top:4px;
  color:#9aa3b3;
  font-size:11px;
  font-family:ui-monospace,monospace;
}
.lb-ftmo-rank{
  min-width:42px;
  min-height:42px;
  display:grid;
  place-items:center;
  border-radius:4px;
  background:rgba(13,17,22,.42);
  color:#fff;
  font-size:17px;
  font-weight:950;
}
.lb-ftmo-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.lb-ftmo-stats small{
  display:block;
  color:#8e96a5;
  font-size:10px;
  font-weight:900;
}
.lb-ftmo-stats b{
  display:block;
  margin-top:5px;
  color:#f9fafb;
  font-size:13px;
  white-space:nowrap;
}
.lb-ftmo-stats b.is-up,
.lb-ftmo-table .green,
.lb-ftmo-card .is-up{color:#00dc82}
.lb-ftmo-stats b.is-down,
.lb-ftmo-table .red,
.lb-ftmo-card .is-down{color:#ff6b6b}
.lb-ftmo-scale{
  display:flex;
  align-items:center;
  gap:5px;
  min-height:29px;
  padding:0 10px;
  border-radius:3px;
  background:linear-gradient(90deg, rgba(17,102,168,.72), rgba(14,35,54,.52));
  color:#b5c0ce;
  font-size:10px;
  font-weight:850;
}
.lb-ftmo-scale b{margin-left:auto;color:#fff;font-size:11px}
.lb-ftmo-scale small{color:#9ba4b2}
.lb-ftmo-progress{
  position:relative;
  height:2px;
  margin-top:8px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.lb-ftmo-progress span{
  display:block;
  height:100%;
  background:#1689ff;
}
.lb-ftmo-prize{
  margin-top:9px;
  color:#f0d58f;
  font-size:11px;
  font-weight:950;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lb-ftmo-table{
  position:relative;
  overflow:auto;
  border-radius:4px;
  background:linear-gradient(180deg, rgba(36,38,40,.98), rgba(17,19,22,.98));
  border:1px solid rgba(255,255,255,.06);
}
.lb-ftmo-table table{
  min-width:820px;
  border-collapse:separate;
  border-spacing:0;
}
.lb-ftmo-table thead tr{
  background:rgba(255,255,255,.035);
  color:#8f96a2;
}
.lb-ftmo-table th,
.lb-ftmo-table td{
  padding:14px 18px;
  border-top:0;
  border-bottom:1px solid rgba(255,255,255,.045);
}
.lb-ftmo-table tbody tr:hover{background:rgba(255,255,255,.035)}
.lb-ftmo-name{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.lb-ftmo-name > span{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 34px;
  color:#061015;
  font-size:11px;
  font-weight:950;
  background:linear-gradient(135deg,#00d5af,#1689ff);
  box-shadow:0 0 0 4px rgba(255,255,255,.08);
}
.lb-ftmo-name b{
  display:block;
  color:#f3f4f6;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lb-ftmo-name small{
  display:block;
  margin-top:3px;
  color:#888f9d;
  font-size:11px;
  font-family:ui-monospace,monospace;
}
.lb-ftmo-table .pill{
  border-radius:4px;
  padding:6px 9px;
  background:rgba(22,137,255,.14);
  color:#d7e8ff;
  border:1px solid rgba(22,137,255,.2);
}

.tier-payout-showcase,
.payout-week-card{
  background:linear-gradient(180deg, rgba(17,19,23,.98), rgba(8,10,13,.98));
  border:1px solid rgba(255,255,255,.06);
  border-radius:4px;
}
.payout-layout{gap:14px}
.payout-major-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:stretch !important;
  gap:14px !important;
}
.payout-major-card,
.payout-major-card.payout-rank-1{
  order:initial !important;
  min-height:236px !important;
  padding:18px !important;
  border-radius:4px !important;
  background:
    linear-gradient(120deg, rgba(41,43,47,.96), rgba(26,31,38,.96) 46%, rgba(10,42,73,.84)),
    radial-gradient(circle at 80% 0, rgba(0,136,255,.2), transparent 44%) !important;
  border-color:rgba(255,255,255,.06) !important;
  text-align:left !important;
  align-items:flex-start !important;
  box-shadow:0 18px 42px -34px rgba(0,0,0,.95) !important;
}
.payout-major-card.payout-rank-1{order:1 !important}
.payout-major-card.payout-rank-2{order:2 !important}
.payout-major-card.payout-rank-3{order:3 !important}
.payout-major-card:hover{
  transform:translateY(-5px) scale(1.012) !important;
  border-color:rgba(240,213,143,.64) !important;
}
.payout-major-card .payout-rank-badge{
  border-radius:4px;
  background:rgba(13,17,22,.56);
  border:1px solid rgba(255,255,255,.08);
  color:#f5f5f5;
}
.rank-title{
  display:inline-flex;
  align-items:center;
  gap:7px;
  line-height:1;
  white-space:nowrap;
}
.rank-trophy{
  width:22px;
  height:22px;
  flex:0 0 22px;
  display:inline-grid;
  place-items:center;
  color:#f0d58f;
  filter:drop-shadow(0 7px 12px rgba(0,0,0,.48));
}
.rank-trophy svg{
  width:100%;
  height:100%;
  display:block;
  fill:currentColor;
}
.rank-trophy-1{
  color:#ffd96a;
  filter:drop-shadow(0 0 13px rgba(255,217,106,.42)) drop-shadow(0 8px 14px rgba(0,0,0,.52));
}
.rank-trophy-2{
  color:#dce3ee;
  filter:drop-shadow(0 0 11px rgba(220,227,238,.28)) drop-shadow(0 8px 14px rgba(0,0,0,.52));
}
.rank-trophy-3{
  color:#c98954;
  filter:drop-shadow(0 0 11px rgba(201,137,84,.3)) drop-shadow(0 8px 14px rgba(0,0,0,.52));
}
.payout-rank-badge .rank-trophy{
  width:20px;
  height:20px;
  flex-basis:20px;
}
.payout-rank-1 .payout-rank-badge{border-color:rgba(255,217,106,.28)}
.payout-rank-2 .payout-rank-badge{border-color:rgba(220,227,238,.22)}
.payout-rank-3 .payout-rank-badge{border-color:rgba(201,137,84,.26)}
.payout-major-card h3,
.payout-rank-1 .payout-major-card h3{
  margin-top:14px;
  color:#fff;
  font-size:18px !important;
  line-height:1.18;
  min-height:42px;
}
.payout-major-card .payout-prize-img,
.payout-major-card.payout-rank-1 .payout-prize-img{
  align-self:center;
  min-height:104px !important;
  width:100%;
  margin:10px 0 !important;
}
.payout-major-card .payout-prize-img img,
.payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:118px !important;
}
.payout-major-card .payout-prize-name{
  color:#aeb5c2;
  font-size:12px;
  justify-content:flex-start;
  min-height:0;
}
.payout-major-card .payout-stats{
  margin-top:auto !important;
  width:100%;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:6px !important;
  padding-top:8px !important;
}
.payout-major-card .payout-stats span{
  padding:6px 7px !important;
  border-radius:4px !important;
}
.payout-major-card .payout-stats b{
  font-size:12px !important;
}
.payout-major-card .payout-stats small{
  font-size:8px !important;
  letter-spacing:.06em !important;
}
.payout-consolation{
  border-radius:4px;
  background:linear-gradient(180deg, rgba(36,38,40,.98), rgba(17,19,22,.98));
  border-color:rgba(255,255,255,.06);
}
.payout-consolation-row{
  border-radius:4px;
  background:rgba(255,255,255,.035);
  border-color:rgba(255,255,255,.055);
}
.payout-consolation-rank{color:#8f96a2}
.payout-consolation-prize{color:#d7e8ff}

@media(max-width:860px){
  [data-view="leaderboard"] .lb-head,
  [data-view="leaderboard"] .leaderboard-control-row,
  [data-view="leaderboard"] .chips,
  [data-view="leaderboard"] .board-desc,
  .leaderboard-panel{max-width:100%}
  .leaderboard-panel .ph{align-items:stretch}
  .lb-rank-search{min-width:0;width:100%;max-width:none}
  .lb-ftmo-topgrid,
  .payout-major-grid{grid-template-columns:1fr !important}
  .lb-ftmo-card{min-height:154px}
  .payout-major-card,
  .payout-major-card.payout-rank-1{
    display:grid !important;
    grid-template-columns:112px minmax(0,1fr);
    grid-template-areas:
      "img badge"
      "img name"
      "img prize"
      "img stats";
    gap:8px 14px;
    min-height:0 !important;
  }
  .payout-major-card .payout-rank-badge{grid-area:badge;justify-self:start}
  .payout-major-card h3{grid-area:name;min-height:0;margin:0 !important}
  .payout-major-card .payout-prize-img{grid-area:img;margin:0 !important;min-height:106px !important}
  .payout-major-card .payout-prize-name{grid-area:prize}
  .payout-major-card .payout-stats{grid-area:stats;margin-top:4px !important;padding-top:0}
}
@media(max-width:540px){
  .lb-ftmo-stats{gap:8px}
  .lb-ftmo-stats b{font-size:12px}
  .lb-ftmo-card{padding:15px 13px}
  .lb-ftmo-table th,
  .lb-ftmo-table td{padding:12px 13px}
}

.lb-ftmo-top-label{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-bottom:5px;
  color:#f0d58f;
  font-size:12px;
  font-weight:950;
  line-height:1;
  text-transform:none;
}
.lb-ftmo-rank-2 .lb-ftmo-top-label{color:#d8dee8}
.lb-ftmo-rank-3 .lb-ftmo-top-label{color:#d8a37a}

/* Hero: 2 cot - copy trai, fan card phai */
.hero-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:32px;
  align-items:center;
}
.hero-copy{
  max-width:min(100%, 820px);
  margin-inline:auto;
  text-align:center;
}
.hero-copy .hero-est{
  justify-content:center;
}
.hero-copy .hero-logo-title{
  margin-left:auto;
  margin-right:auto;
}
.hero-copy .hero-logo-title .hero-brand-line{
  justify-content:center;
}
.hero-copy .prizepool{
  justify-content:center;
}
.hero-copy .actions{
  justify-content:center;
}
@media(min-width:1101px){
  .hero-copy{
    max-width:min(100%, 820px);
  }
}
@media(max-width:1100px){
  .hero-shell{
    grid-template-columns:1fr;
  }
}

.hero-support-block{
  padding-top:42px;
  background:linear-gradient(180deg, rgba(4,7,12,.98), rgba(8,10,12,.96));
}
.hero-support-block .hero-lower-shell{
  margin-top:0;
}

/* Reward showcase: first section after hero, designed to sell the prize structure fast. */
.reward-priority{
  position:relative;
  overflow:hidden;
  padding-top:74px;
  background:
    radial-gradient(circle at 20% 0%, rgba(240,213,143,.2), transparent 34%),
    radial-gradient(circle at 86% 10%, rgba(0,229,255,.16), transparent 35%),
    linear-gradient(180deg, rgba(8,10,12,.98), rgba(13,17,22,.96) 54%, rgba(4,7,12,.98));
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.reward-priority::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, transparent, rgba(255,255,255,.045), transparent),
    linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px);
  background-size:100% 100%, 76px 76px;
  opacity:.55;
}
.reward-priority .wrap{
  position:relative;
  z-index:1;
}
.reward-priority-head{
  max-width:980px;
  margin:0 auto 20px;
}
.reward-priority-head .sec-tag{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(240,213,143,.12);
  border:1px solid rgba(240,213,143,.22);
  color:#f6f1df;
}
.reward-priority-head h2{
  margin-top:14px;
  color:#fff;
  font-size:clamp(38px, 5vw, 68px);
  line-height:.95;
}
.reward-priority-head p{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
  color:#d9dee8;
  font-size:15px;
}
.reward-priority .cd-wrap{
  max-width:980px;
  margin:0 auto 22px;
  border-color:rgba(240,213,143,.18);
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    rgba(0,0,0,.28);
  box-shadow:0 24px 70px -48px rgba(240,213,143,.55);
}
.reward-priority .tier{
  padding:26px 22px 24px;
  border-radius:14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.035)),
    radial-gradient(circle at 50% 0%, rgba(240,213,143,.14), transparent 40%);
  border-color:rgba(240,213,143,.2);
  box-shadow:0 32px 110px -70px rgba(0,0,0,.9);
}
.reward-priority .tier:hover{
  border-color:rgba(240,213,143,.38);
  box-shadow:0 34px 120px -68px rgba(240,213,143,.32);
}
.reward-priority .tier .badge{
  top:18px;
  right:20px;
  left:auto;
  transform:none;
  box-shadow:0 12px 34px -22px rgba(0,255,148,.75);
}
.reward-priority .tier-dep{
  text-align:left;
  color:#fff;
  font-size:22px;
  font-weight:900;
}
.reward-priority .tier > .tier-sub{
  text-align:left;
}
.reward-priority .tier-prize{
  max-width:360px;
  margin:14px 0 18px;
  border-color:rgba(240,213,143,.14);
  background:rgba(0,0,0,.3);
}
.reward-priority .tp-val{
  color:#f6f1df;
  font-size:30px;
}
.reward-priority .tier-meta{
  max-width:360px;
}
.reward-priority .tier-payout-showcase{
  margin-top:18px;
  padding-top:18px;
  border-top-color:rgba(240,213,143,.18);
}
.reward-priority .payout-major-grid{
  gap:18px;
}
.reward-priority .payout-major-card{
  min-height:268px;
  border-radius:12px;
  background:
    linear-gradient(180deg, rgba(31,38,48,.98), rgba(10,12,16,.98)),
    radial-gradient(circle at 50% -20%, rgba(0,229,255,.22), transparent 58%);
  box-shadow:0 28px 82px -50px rgba(0,229,255,.48);
}
.reward-priority .payout-major-card.payout-rank-1{
  background:
    linear-gradient(180deg, rgba(52,42,22,.98), rgba(12,13,15,.98)),
    radial-gradient(circle at 50% -18%, rgba(240,213,143,.38), transparent 58%);
  border-color:rgba(240,213,143,.44);
  box-shadow:0 30px 92px -48px rgba(240,213,143,.62);
}
.reward-priority .payout-major-card .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  min-height:132px !important;
}
.reward-priority .payout-major-card .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:148px !important;
}
.reward-priority .payout-consolation{
  margin-top:18px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
}
@media(max-width:860px){
  .reward-priority{
    padding-top:52px;
  }
  .reward-priority-head h2{
    font-size:clamp(34px, 10vw, 48px);
  }
  .reward-priority .tier{
    padding:22px 14px 18px;
  }
  .reward-priority .tier .badge{
    position:static;
    display:inline-flex;
    transform:none;
    margin-bottom:12px;
  }
  .reward-priority .tier-prize,
  .reward-priority .tier-meta{
    max-width:none;
  }
}

/* Compact hero + reward flow: timebar lives in hero, rewards start immediately after. */
.hero{
  min-height:auto;
  padding:58px 0 32px;
}
.hero-shell{
  grid-template-columns:minmax(0, 1100px);
}
.hero-copy{
  max-width:min(100%, 1100px);
  display:grid;
  grid-template-columns:minmax(0, 1.08fr) minmax(360px, .92fr);
  grid-template-areas:
    "est timebar"
    "title timebar"
    "signature timebar"
    "actions actions";
  align-items:center;
  column-gap:30px;
  row-gap:12px;
  text-align:left;
}
.hero-copy .hero-est{
  grid-area:est;
  justify-content:flex-start;
  margin-bottom:2px;
}
.hero-copy .hero-logo-title{
  grid-area:title;
  margin-left:0;
  margin-right:0;
}
.hero-copy .hero-logo-title .hero-brand-line{
  justify-content:flex-start;
}
.hero-copy .hero-signature{
  grid-area:signature;
  margin-top:4px;
}
.hero-contest-timebar{
  grid-area:timebar;
  width:100%;
  max-width:none;
  margin:0;
  padding:18px 18px 20px;
  text-align:left;
  border-radius:18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.1), rgba(255,255,255,.035)),
    radial-gradient(circle at 82% 0, rgba(240,213,143,.23), transparent 48%),
    rgba(0,0,0,.36);
  border-color:rgba(240,213,143,.26);
  box-shadow:0 30px 88px -58px rgba(240,213,143,.72), inset 0 1px 0 rgba(255,255,255,.08);
}
.hero-contest-timebar .cd-head{
  color:#f6f1df;
  margin-bottom:7px;
}
.hero-contest-timebar .cd-status{
  align-items:flex-start;
  max-width:none;
  margin:0 0 12px;
  font-size:clamp(18px, 1.75vw, 25px);
}
.hero-contest-timebar .cd-status-lead{
  font-size:clamp(18px, 1.7vw, 24px);
}
.hero-contest-timebar .cd-status-time{
  font-size:clamp(24px, 2.45vw, 34px);
}
.hero-contest-timebar .cd-status-note{
  font-size:clamp(13px, 1.1vw, 15px);
}
.hero-contest-timebar .cd-meta{
  margin:9px 0 10px;
}
.hero-contest-timebar .cd{
  justify-content:flex-start;
}
.hero-contest-timebar .cd-box{
  min-width:62px;
  padding:10px 4px;
}
.hero-contest-timebar .cd-num{
  font-size:25px;
}
.hero-copy .prizepool{
  grid-area:prizepool;
  justify-content:center;
  margin-top:8px;
}
.hero-copy .actions{
  grid-area:actions;
  justify-content:center;
  margin-top:8px;
}
.reward-priority{
  padding-top:34px;
  padding-bottom:58px;
}
.reward-priority-head{
  margin-bottom:12px;
}
.reward-priority-head .sec-tag{
  min-height:30px;
  padding:0 12px;
}
.reward-priority-head h2{
  margin-top:9px;
}
.reward-priority-head p{
  margin-top:8px;
  margin-bottom:0;
}
.reward-priority .tier{
  padding:22px 20px 22px;
}
.reward-priority .tier-prize{
  margin:10px 0 14px;
}
.reward-priority .tier-payout-showcase{
  margin-top:12px;
  padding-top:14px;
}
.reward-priority .payout-major-grid{
  gap:14px;
}
.reward-priority .payout-major-card{
  min-height:238px;
}

@media(max-width:860px){
  .hero{
    padding:42px 0 28px;
  }
  .hero-copy{
    display:block;
    max-width:min(100%, 820px);
    text-align:center;
  }
  .hero-copy .hero-est,
  .hero-copy .hero-logo-title .hero-brand-line,
  .hero-copy .prizepool,
  .hero-copy .actions{
    justify-content:center;
  }
  .hero-copy .hero-logo-title{
    margin-left:auto;
    margin-right:auto;
  }
  .hero-contest-timebar{
    margin:16px auto 12px;
    text-align:center;
  }
  .hero-contest-timebar .cd-status{
    align-items:center;
  }
  .hero-contest-timebar .cd{
    justify-content:center;
  }
}
@media(max-width:860px){
  .reward-priority{
    padding-top:30px;
    padding-bottom:44px;
  }
}
@media(max-width:560px){
  .hero{
    padding:30px 0 22px;
  }
  .hero-contest-timebar{
    padding:14px 12px 15px;
    border-radius:15px;
  }
  .hero-contest-timebar .cd-meta{
    flex-direction:column;
    gap:4px;
    align-items:center;
    margin-bottom:9px;
  }
  .hero-contest-timebar .cd{
    gap:7px;
  }
  .hero-contest-timebar .cd-box{
    flex:1 1 0;
    min-width:0;
    padding:9px 2px;
  }
  .hero-contest-timebar .cd-num{
    font-size:21px;
  }
  .reward-priority-head{
    margin-bottom:8px;
  }
  .reward-priority .tier{
    padding:18px 12px 16px;
  }
}

@media(min-width:861px) and (max-width:1100px){
  .hero-copy,
  .hero.hero-scroll-fx .hero-copy{
    display:grid !important;
    max-width:min(100%, 1100px) !important;
    grid-template-columns:minmax(0, 1.08fr) minmax(360px, .92fr) !important;
    grid-template-areas:
      "est timebar"
      "title timebar"
      "signature timebar"
      "actions actions" !important;
    text-align:left !important;
  }
  .hero-copy .hero-est{
    justify-content:flex-start !important;
  }
  .hero-copy .hero-logo-title{
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
  }
  .hero-copy .hero-logo-title .hero-brand-line{
    justify-content:flex-start !important;
  }
  .hero-copy .hero-signature{
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
  }
  .hero-contest-timebar .cd-status{
    align-items:flex-start !important;
  }
  .hero-contest-timebar .cd{
    justify-content:flex-start !important;
  }
}

/* Register page polish: cleaner intro, slimmer steps, correct account-first flow. */
[data-view="register"] section.block{
  padding-top:26px;
}
.register-layout{
  gap:18px;
  align-items:start;
}
.register-copy{
  padding:24px 24px 22px;
  border-radius:20px;
  min-height:0;
  align-self:start;
}
.register-copy h2{
  margin:6px 0 9px;
  font-size:clamp(25px, 3vw, 38px);
  line-height:1.08;
}
.register-copy p{
  max-width:34rem;
  font-size:14px;
  line-height:1.54;
}
.register-step-eyebrow{
  width:max-content;
  max-width:100%;
  margin:0 0 10px;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(240,213,143,.095);
  color:#f7e6b5;
  letter-spacing:.015em;
}
.register-steps{
  gap:8px;
  margin:14px 0 14px;
}
.register-steps div{
  grid-template-columns:40px 1fr;
  gap:10px;
  padding:10px 11px;
  border-radius:13px;
  background:rgba(255,244,220,.035);
}
.register-steps b{
  width:32px;
  height:32px;
  border-radius:10px;
  font-size:12px;
}
.register-steps span{
  font-size:14px;
}
.register-steps small{
  margin-top:3px;
  font-size:11.5px;
  line-height:1.38;
}
.register-actions{
  margin-top:12px;
  gap:8px;
}
.register-actions .btn{
  min-height:42px;
  padding:10px 14px;
  font-size:13px;
}

@media(max-width:640px){
  [data-view="register"] section.block{
    padding-top:14px;
  }
  .register-copy{
    padding:16px;
    border-radius:16px;
  }
  .register-step-eyebrow{
    margin-bottom:8px;
    min-height:28px;
    font-size:11px;
  }
  .register-copy h2{
    margin:4px 0 7px;
    font-size:25px;
  }
  .register-copy p{
    font-size:13px;
    line-height:1.48;
  }
  .register-steps{
    margin:12px 0;
    gap:7px;
  }
  .register-steps div{
    grid-template-columns:36px 1fr;
    padding:9px;
  }
  .register-steps b{
    width:30px;
    height:30px;
  }
  .register-steps span{
    font-size:13px;
  }
  .register-steps small{
    font-size:11px;
  }
}

/* Reward opener: make the challenge card read as one polished unit. */
.reward-priority .tier{
  padding:18px !important;
  border-radius:16px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.024) 46%, rgba(0,229,255,.045)),
    radial-gradient(circle at 8% 0%, rgba(240,213,143,.18), transparent 36%),
    rgba(8,10,12,.72);
  border-color:rgba(240,213,143,.22);
}
.tier-hero-card{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(260px, .52fr);
  gap:18px;
  align-items:end;
  margin-bottom:12px;
  padding:20px 20px 16px;
  border-radius:14px;
  background:
    linear-gradient(140deg, rgba(0,0,0,.22), rgba(255,255,255,.035)),
    radial-gradient(circle at 88% 10%, rgba(0,229,255,.13), transparent 42%);
  border:1px solid rgba(255,255,255,.07);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
.tier-hero-copy{
  min-width:0;
  display:grid;
  gap:7px;
}
.tier-hero-copy .badge{
  position:static !important;
  transform:none !important;
  justify-self:start;
  min-height:24px;
  margin:0 0 4px !important;
  padding:5px 12px;
  border-radius:999px;
  font-size:10px;
  letter-spacing:.045em;
  box-shadow:0 12px 30px -20px rgba(240,213,143,.65) !important;
}
.reward-priority .tier-hero-copy > .tier-sub{
  text-align:left;
  margin:0;
  color:rgba(246,242,231,.7);
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
}
.reward-priority .tier-dep{
  margin:0 !important;
  color:#fff;
  font-size:clamp(34px, 4.6vw, 62px) !important;
  line-height:1 !important;
  text-align:left;
  text-shadow:0 18px 55px rgba(0,0,0,.55);
}
.reward-priority .tier-prize{
  width:min(100%, 390px);
  max-width:none;
  margin:8px 0 0 !important;
  padding:12px 14px !important;
  border-radius:12px;
  background:rgba(0,0,0,.28);
  border-color:rgba(255,255,255,.075);
}
.reward-priority .tp-val{
  color:#fffaf0;
  font-size:clamp(24px, 2.8vw, 36px) !important;
  line-height:1.05 !important;
  text-align:left;
}
.reward-priority .tier-prize .tier-sub{
  text-align:left;
  margin-top:4px;
}
.reward-priority .tier-meta{
  max-width:none;
  margin:0;
  display:grid;
  gap:8px;
}
.reward-priority .tier-meta .trow{
  min-height:52px;
  align-items:center;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.07);
}
.reward-priority .tier-meta .trow span{
  color:rgba(246,242,231,.62);
  font-size:12px;
  font-weight:800;
}
.reward-priority .tier-meta .trow b{
  color:#fff;
  font-size:13px;
}
.reward-priority .tier-payout-showcase{
  margin-top:0;
  padding-top:12px;
}
.reward-priority .payout-major-grid{
  margin-top:0;
}

@media(max-width:760px){
  .reward-priority .tier{
    padding:12px !important;
  }
  .tier-hero-card{
    grid-template-columns:1fr;
    gap:12px;
    padding:16px 14px 14px;
  }
  .reward-priority .tier-dep,
  .reward-priority .tp-val,
  .reward-priority .tier-prize .tier-sub,
  .reward-priority .tier-hero-copy > .tier-sub{
    text-align:center;
  }
  .tier-hero-copy .badge{
    justify-self:center;
  }
  .reward-priority .tier-prize{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .reward-priority .tier-meta{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .reward-priority .tier-meta .trow{
    min-height:48px;
    flex-direction:column;
    justify-content:center;
    gap:3px;
    text-align:center;
  }
}

/* Top 3 prize podium */
.reward-priority .payout-major-grid,
.payout-week-card .payout-major-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:end !important;
  gap:18px !important;
}
.reward-priority .payout-major-card,
.payout-week-card .payout-major-card{
  --podium-y:0px;
  position:relative;
  overflow:hidden;
  min-height:304px !important;
  border:1px solid rgba(255,255,255,.1) !important;
  transition:transform .28s ease, border-color .28s ease, box-shadow .28s ease, filter .28s ease !important;
  transform:translateY(var(--podium-y)) !important;
}
.reward-priority .payout-major-card::after,
.payout-week-card .payout-major-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  opacity:0;
  transition:opacity .28s ease;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.38), inset 0 0 36px rgba(255,255,255,.12);
}
.reward-priority .payout-major-card:hover,
.payout-week-card .payout-major-card:hover{
  transform:translateY(calc(var(--podium-y) - 8px)) scale(1.025) !important;
  filter:saturate(1.08);
}
.reward-priority .payout-major-card:hover::after,
.payout-week-card .payout-major-card:hover::after{
  opacity:1;
}
.reward-priority .payout-major-card.payout-rank-1,
.payout-week-card .payout-major-card.payout-rank-1{
  --podium-y:-18px;
  order:2 !important;
  min-height:354px !important;
  border-color:rgba(255,214,89,.5) !important;
  background:
    radial-gradient(circle at 50% -14%, rgba(255,217,106,.36), transparent 50%),
    linear-gradient(160deg, rgba(67,49,12,.98), rgba(20,18,15,.98) 58%, rgba(9,10,12,.98)) !important;
  box-shadow:0 34px 100px -52px rgba(255,217,106,.9), 0 18px 46px -34px rgba(0,0,0,.95) !important;
}
.reward-priority .payout-major-card.payout-rank-2,
.payout-week-card .payout-major-card.payout-rank-2{
  order:1 !important;
  border-color:rgba(224,232,242,.34) !important;
  background:
    radial-gradient(circle at 50% -18%, rgba(238,244,252,.24), transparent 54%),
    linear-gradient(160deg, rgba(63,68,77,.96), rgba(20,23,29,.98) 58%, rgba(9,10,12,.98)) !important;
  box-shadow:0 28px 78px -54px rgba(224,232,242,.58), 0 18px 42px -34px rgba(0,0,0,.95) !important;
}
.reward-priority .payout-major-card.payout-rank-3,
.payout-week-card .payout-major-card.payout-rank-3{
  order:3 !important;
  border-color:rgba(205,139,84,.36) !important;
  background:
    radial-gradient(circle at 50% -18%, rgba(205,139,84,.28), transparent 54%),
    linear-gradient(160deg, rgba(78,46,25,.96), rgba(22,19,18,.98) 58%, rgba(9,10,12,.98)) !important;
  box-shadow:0 28px 78px -54px rgba(205,139,84,.58), 0 18px 42px -34px rgba(0,0,0,.95) !important;
}
.reward-priority .payout-major-card.payout-rank-1:hover,
.payout-week-card .payout-major-card.payout-rank-1:hover{
  border-color:rgba(255,230,139,.96) !important;
  box-shadow:0 0 0 1px rgba(255,230,139,.42), 0 36px 110px -44px rgba(255,217,106,.96) !important;
}
.reward-priority .payout-major-card.payout-rank-2:hover,
.payout-week-card .payout-major-card.payout-rank-2:hover{
  border-color:rgba(241,247,255,.9) !important;
  box-shadow:0 0 0 1px rgba(241,247,255,.32), 0 34px 94px -48px rgba(224,232,242,.8) !important;
}
.reward-priority .payout-major-card.payout-rank-3:hover,
.payout-week-card .payout-major-card.payout-rank-3:hover{
  border-color:rgba(229,162,104,.92) !important;
  box-shadow:0 0 0 1px rgba(229,162,104,.34), 0 34px 94px -48px rgba(205,139,84,.82) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-rank-badge,
.payout-week-card .payout-major-card.payout-rank-1 .payout-rank-badge{
  color:#fff7cf;
  border-color:rgba(255,217,106,.36);
}
.reward-priority .payout-major-card.payout-rank-2 .payout-rank-badge,
.payout-week-card .payout-major-card.payout-rank-2 .payout-rank-badge{
  color:#eef4ff;
  border-color:rgba(224,232,242,.34);
}
.reward-priority .payout-major-card.payout-rank-3 .payout-rank-badge,
.payout-week-card .payout-major-card.payout-rank-3 .payout-rank-badge{
  color:#ffd2ad;
  border-color:rgba(205,139,84,.38);
}

@media(max-width:860px){
  .reward-priority .payout-major-grid,
  .payout-week-card .payout-major-grid{
    grid-template-columns:1fr !important;
    align-items:stretch !important;
  }
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-1,
  .payout-week-card .payout-major-card,
  .payout-week-card .payout-major-card.payout-rank-1{
    --podium-y:0px;
    order:initial !important;
    min-height:0 !important;
  }
  .reward-priority .payout-major-card.payout-rank-1,
  .payout-week-card .payout-major-card.payout-rank-1{order:1 !important}
  .reward-priority .payout-major-card.payout-rank-2,
  .payout-week-card .payout-major-card.payout-rank-2{order:2 !important}
  .reward-priority .payout-major-card.payout-rank-3,
  .payout-week-card .payout-major-card.payout-rank-3{order:3 !important}
}

/* Register page actions: clearer button hierarchy and softer frames. */
[data-view="register"] .register-copy,
[data-view="register"] .register-form,
[data-view="register"] .register-steps div,
[data-view="register"] .mt5-block{
  border-radius:26px !important;
}
[data-view="register"] .register-step-eyebrow,
[data-view="register"] .register-steps b,
[data-view="register"] .btn,
[data-view="register"] input:not([type="checkbox"]),
[data-view="register"] select,
[data-view="register"] textarea{
  border-radius:999px !important;
}
[data-view="register"] textarea{
  border-radius:22px !important;
}
[data-view="register"] .register-actions{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px !important;
  align-items:stretch;
}
[data-view="register"] .register-actions .btn{
  width:100%;
  min-height:44px;
  padding:10px 14px;
}
[data-view="register"] .register-actions .btn-outline{
  order:1;
}
[data-view="register"] .register-actions .btn-group{
  order:2;
  grid-column:1 / -1;
  min-height:52px;
}
[data-view="register"] .form-actions{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
[data-view="register"] .form-actions .btn{
  width:100%;
  min-height:44px;
  padding:10px 13px;
  font-size:13px;
}
[data-view="register"] .form-actions .btn-cyan{
  order:1;
  grid-column:1 / -1;
  min-height:60px;
  font-size:16px;
}
[data-view="register"] .form-actions .btn-outline{
  order:2;
}

@media(max-width:640px){
  [data-view="register"] .register-copy,
  [data-view="register"] .register-form,
  [data-view="register"] .register-steps div,
  [data-view="register"] .mt5-block{
    border-radius:22px !important;
  }
  [data-view="register"] .register-actions,
  [data-view="register"] .form-actions{
    gap:8px !important;
  }
  [data-view="register"] .register-actions .btn{
    min-height:42px;
    padding:8px 6px;
    font-size:12px;
    white-space:nowrap;
  }
  [data-view="register"] .form-actions .btn{
    min-height:42px;
    padding:9px 8px;
    font-size:12.5px;
  }
  [data-view="register"] .form-actions .btn-cyan{
    min-height:56px;
    font-size:15px;
  }
}

/* Final polish: FAQ text should read as one sentence, and winners uses arrows instead of visible scrollbars. */
.faq summary{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  justify-content:normal !important;
  column-gap:16px;
  white-space:normal;
  overflow-wrap:anywhere;
}
.faq summary .brand-mark{
  display:inline !important;
  white-space:normal !important;
}

[data-view="winners"] .wrap,
[data-view="winners"] #winners-list,
[data-view="winners"] .payout-week-carousel{
  max-width:100%;
  overflow-x:hidden !important;
}
[data-view="winners"] .payout-week-rail{
  overflow-x:hidden !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
}
[data-view="winners"] .payout-week-rail::-webkit-scrollbar{
  width:0 !important;
  height:0 !important;
  display:none !important;
}

/* Compact challenge config: two parallel tables, no duplicate rule block below. */
.challenge-suite-grid{
  grid-template-columns:1fr !important;
  gap:18px !important;
  align-items:stretch;
}
.challenge-config-card{
  padding:0 !important;
  gap:0 !important;
  overflow:hidden;
}
.config-table{
  display:grid;
}
.config-row{
  display:grid;
  grid-template-columns:minmax(96px,.45fr) minmax(0,1fr);
  gap:3px 8px;
  align-items:start;
  min-height:64px;
  padding:12px 16px;
  border-bottom:1px solid rgba(255,255,255,.075);
}
.config-row > *{min-width:0}
.config-row span{
  display:block;
  color:var(--dim2);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.config-row b{
  color:#fff;
  font-size:18px;
  line-height:1.15;
}
.config-row small{
  grid-column:2;
  color:var(--dim);
  font-size:13px;
  line-height:1.4;
  display:block;
}
.config-row.highlight b{
  color:var(--champagne);
}
.config-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:16px 20px 20px;
}
.config-actions .btn{
  min-height:46px;
}

 .challenge-suite .objective-row{
  grid-template-columns:minmax(116px,.72fr) minmax(0,1fr) !important;
  gap:5px 13px !important;
  align-items:start !important;
}
.challenge-suite .objective-row small{
  grid-column:2;
}

@media(max-width:760px){
  .challenge-suite-grid{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:640px){
  .config-row,
  .objective-row{
    grid-template-columns:1fr !important;
    gap:5px !important;
    min-height:0 !important;
    padding:13px 15px !important;
  }
  .config-row small,
  .challenge-suite .objective-row small{
    grid-column:auto;
  }
  .config-actions{
    grid-template-columns:1fr;
    padding:14px 15px 16px;
  }
}

/* Site-wide compact spacing: tighter cards and less empty vertical air. */
section.block{
  padding-top:48px !important;
  padding-bottom:48px !important;
}
.sec-head{
  margin-bottom:22px !important;
}
.sec-head p{
  margin-top:6px !important;
  line-height:1.45;
}
.grid3,
.grid5,
.two,
.steps,
.phase-grid,
.cockpit-grid,
.challenge-lab{
  gap:12px !important;
}
.card,
.step,
.phase-card,
.feat,
.cockpit-panel,
.challenge-card,
.rule{
  padding:18px !important;
  min-height:0 !important;
}
.card.center{
  min-height:0 !important;
}
.card h3,
.phase-card h3,
.feat h4{
  margin-bottom:6px !important;
}
.card p,
.phase-card p,
.feat p{
  line-height:1.45;
}
.ic{
  width:48px !important;
  height:48px !important;
  margin-bottom:10px !important;
  font-size:22px !important;
  border-radius:16px !important;
}
.challenge-suite-head{
  margin-bottom:18px !important;
}
.objective-table-head{
  min-height:60px !important;
  padding:14px 16px !important;
}
.config-row,
.challenge-suite .objective-row{
  min-height:62px !important;
  padding:11px 16px !important;
}
.config-actions{
  padding:12px 16px 16px !important;
}
.ranking-mode-grid{
  margin-bottom:0 !important;
}

@media(max-width:640px){
  section.block{
    padding-top:34px !important;
    padding-bottom:34px !important;
  }
  .sec-head{
    margin-bottom:14px !important;
  }
  .card,
  .step,
  .phase-card,
  .feat,
  .cockpit-panel,
  .challenge-card,
  .rule{
    padding:15px !important;
  }
}

.prizepool{
  display:none !important;
}

.reward-priority .tier{
  padding-top:14px !important;
}
.reward-priority .tier-payout-showcase{
  padding-top:0 !important;
}
.reward-priority{
  padding-top:56px !important;
}
.reward-priority-head h2{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(34px, 4.2vw, 56px) !important;
  line-height:1.08 !important;
  text-wrap:balance;
  overflow:visible;
}

@media(max-width:640px){
  .reward-priority{
    padding-top:38px !important;
  }
  .reward-priority-head h2{
    font-size:clamp(30px, 10vw, 42px) !important;
    line-height:1.08 !important;
  }
}

/* Challenge guardrails: single featured block after rewards. */
.hero-support-block{
  padding-top:46px !important;
  padding-bottom:48px !important;
}
.hero-support-block .hero-lower-shell{
  display:grid !important;
  grid-template-columns:minmax(0, 1040px) !important;
  justify-content:center !important;
  gap:0 !important;
  margin-top:0 !important;
}
.hero-support-block .hero-prop-list{
  display:none !important;
}
.hero-support-block .hero-side-panel{
  display:block !important;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  padding:34px !important;
  border-radius:30px !important;
}
.hero-support-block .hero-side-panel h3{
  margin-bottom:22px !important;
  font-size:clamp(32px, 3.4vw, 48px) !important;
  line-height:1.04 !important;
}
.hero-support-block .hero-guards{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}
.hero-support-block .hero-guard{
  min-height:116px;
  padding:18px 20px;
  border-radius:22px;
}
.hero-support-block .hero-guard-top strong{
  font-size:15px;
}
.hero-support-block .hero-guard p{
  font-size:13.5px;
  line-height:1.45;
}
.hero-support-block .hero-ticker{
  margin-top:20px;
  gap:10px;
}

@media(max-width:760px){
  .hero-support-block{
    padding-top:30px !important;
    padding-bottom:34px !important;
  }
  .hero-support-block .hero-lower-shell{
    grid-template-columns:minmax(0, 1fr) !important;
  }
  .hero-support-block .hero-side-panel{
    display:block !important;
    padding:18px !important;
    border-radius:22px !important;
  }
  .hero-support-block .hero-side-panel h3{
    font-size:clamp(26px, 8vw, 34px) !important;
    line-height:1.1 !important;
    margin-bottom:16px !important;
  }
  .hero-support-block .hero-guards{
    grid-template-columns:1fr;
    gap:10px;
  }
  .hero-support-block .hero-guard{
    min-height:0;
    padding:14px 15px;
    border-radius:18px;
  }
  .hero-support-block .hero-ticker{
    margin-top:14px;
  }
  .hero-support-block .hero-ticker span{
    min-height:34px;
    padding:0 12px;
    font-size:11px;
  }
}

/* Challenge rules: use proper title styling instead of small table labels. */
.challenge-suite .objective-table-head{
  justify-content:center !important;
  text-align:center !important;
  min-height:72px !important;
}
.challenge-suite .objective-table-head span{
  color:#fff !important;
  font-size:clamp(24px, 2.35vw, 32px) !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
  line-height:1.08 !important;
  text-transform:none !important;
}

@media(max-width:640px){
  .challenge-suite .objective-table-head{
    min-height:62px !important;
    padding:14px 16px !important;
  }
  .challenge-suite .objective-table-head span{
    font-size:24px !important;
  }
}

/* Winners page: show one payout period cleanly, without clipping the next period. */
[data-view="winners"] .wrap{
  max-width:1180px;
}
[data-view="winners"] .payout-week-carousel{
  max-width:1120px;
  margin:0 auto;
  padding:0 54px;
  overflow:visible !important;
}
[data-view="winners"] .payout-week-rail{
  width:100%;
  margin:0 !important;
  padding:24px 0 18px !important;
  gap:0 !important;
  overflow-x:hidden !important;
  overflow-y:visible !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth;
}
[data-view="winners"] .payout-week-card{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  box-sizing:border-box;
  scroll-snap-align:start !important;
}
[data-view="winners"] .payout-week-prev{
  left:0 !important;
}
[data-view="winners"] .payout-week-next{
  right:0 !important;
}

@media(max-width:900px){
  [data-view="winners"] .payout-week-carousel{
    padding:0 42px;
  }
}

@media(max-width:640px){
  [data-view="winners"] .payout-week-carousel{
    padding:0 38px;
  }
  [data-view="winners"] .payout-week-rail{
    padding:14px 0 24px !important;
  }
  [data-view="winners"] .payout-week-card{
    padding:52px 12px 18px !important;
  }
}

/* Home cleanup: calmer hero/reward area with a stronger prize label. */
.nav-timebar{
  display:none !important;
}
.nav .wrap{
  gap:18px !important;
}
.hero-contest-timebar{
  border-color:rgba(255,255,255,.08) !important;
  box-shadow:0 24px 76px -62px rgba(240,213,143,.72), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.reward-priority{
  padding-top:42px !important;
}
.reward-priority-head .sec-tag{
  min-height:50px !important;
  padding:0 28px !important;
  font-size:17px !important;
  line-height:1 !important;
  letter-spacing:.025em !important;
  color:#fff6d6 !important;
  background:linear-gradient(135deg, rgba(240,213,143,.2), rgba(255,255,255,.075)) !important;
  border-color:rgba(240,213,143,.34) !important;
  box-shadow:0 18px 52px -38px rgba(240,213,143,.82), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
.reward-priority .tier,
.tier-hero-card,
.reward-priority .tier-prize,
.reward-priority .tier-meta .trow{
  border-color:rgba(255,255,255,.06) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;
}
.reward-priority .tier{
  background:
    linear-gradient(135deg, rgba(255,255,255,.062), rgba(255,255,255,.02) 48%, rgba(0,229,255,.038)),
    radial-gradient(circle at 8% 0%, rgba(240,213,143,.14), transparent 34%),
    rgba(8,10,12,.72) !important;
}
.tier-hero-card{
  background:
    linear-gradient(140deg, rgba(0,0,0,.18), rgba(255,255,255,.028)),
    radial-gradient(circle at 88% 10%, rgba(0,229,255,.1), transparent 42%) !important;
}
.reward-priority .payout-major-card{
  border-color:rgba(255,255,255,.075) !important;
}
.reward-priority .payout-major-card.payout-rank-1{
  border-color:rgba(255,214,89,.38) !important;
}
.reward-priority .payout-major-card.payout-rank-2{
  border-color:rgba(224,232,242,.25) !important;
}
.reward-priority .payout-major-card.payout-rank-3{
  border-color:rgba(205,139,84,.28) !important;
}

@media(max-width:640px){
  .reward-priority{
    padding-top:34px !important;
  }
  .reward-priority-head .sec-tag{
    min-height:42px !important;
    padding:0 20px !important;
    font-size:14px !important;
  }
}

/* Stronger cleanup pass: remove time widgets and make the first screen tighter. */
.hero-contest-timebar{
  display:none !important;
}
.hero{
  padding:48px 0 24px !important;
}
.hero-shell{
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 340px !important;
  gap:32px !important;
  align-items:center !important;
}
.hero-copy,
.hero.hero-scroll-fx .hero-copy{
  display:block !important;
  max-width:none !important;
  margin:0 !important;
  text-align:left !important;
}
.hero-copy .hero-logo-title{
  margin-left:0 !important;
  margin-right:0 !important;
}
.hero-copy .hero-signature{
  margin-left:0 !important;
  margin-right:0 !important;
}
.hero-copy .actions{
  margin-top:24px !important;
  justify-content:flex-start !important;
}
.hero-fan{
  margin:0 !important;
}
.reward-priority{
  padding-top:26px !important;
}
section.block.reward-priority{
  padding-top:26px !important;
  padding-bottom:44px !important;
}
.reward-priority-head{
  margin-bottom:18px !important;
}
.reward-priority .tier,
.tier-hero-card,
.reward-priority .tier-prize,
.reward-priority .tier-meta .trow{
  border-color:transparent !important;
  box-shadow:none !important;
}
.reward-priority .tier{
  padding:14px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.048), rgba(255,255,255,.014) 52%, rgba(0,229,255,.028)),
    radial-gradient(circle at 50% 0%, rgba(240,213,143,.11), transparent 38%),
    rgba(6,9,12,.6) !important;
}
.tier-hero-card{
  padding:16px 18px 12px !important;
  margin-bottom:10px !important;
  background:rgba(255,255,255,.025) !important;
}
.reward-priority .tier-payout-showcase{
  padding-top:8px !important;
}
.reward-priority .payout-major-grid{
  gap:14px !important;
}
.reward-priority .payout-major-card{
  border-color:rgba(255,255,255,.035) !important;
  box-shadow:0 22px 60px -50px rgba(0,0,0,.9) !important;
}
.reward-priority .payout-major-card.payout-rank-1,
.reward-priority .payout-major-card.payout-rank-2,
.reward-priority .payout-major-card.payout-rank-3{
  border-color:rgba(255,255,255,.045) !important;
}
.reward-priority .payout-major-card.payout-rank-1:hover{
  border-color:rgba(255,230,139,.96) !important;
  box-shadow:0 0 0 1px rgba(255,230,139,.42), 0 36px 110px -44px rgba(255,217,106,.96) !important;
}
.reward-priority .payout-major-card.payout-rank-2:hover{
  border-color:rgba(241,247,255,.9) !important;
  box-shadow:0 0 0 1px rgba(241,247,255,.32), 0 34px 94px -48px rgba(224,232,242,.8) !important;
}
.reward-priority .payout-major-card.payout-rank-3:hover{
  border-color:rgba(229,162,104,.92) !important;
  box-shadow:0 0 0 1px rgba(229,162,104,.34), 0 34px 94px -48px rgba(205,139,84,.82) !important;
}

@media(max-width:640px){
  .hero{
    padding:30px 0 18px !important;
  }
  .hero-copy .actions{
    margin-top:18px !important;
  }
  .reward-priority{
    padding-top:22px !important;
  }
  section.block.reward-priority{
    padding-top:22px !important;
    padding-bottom:34px !important;
  }
  .reward-priority .tier{
    padding:10px !important;
  }
}

/* Keep the main countdown, but only as one clean hero time panel. */
.hero-contest-timebar{
  display:block !important;
}
@media(min-width:861px){
  .hero-copy,
  .hero.hero-scroll-fx .hero-copy{
    display:grid !important;
    grid-template-columns:minmax(0, 1.05fr) minmax(340px, .75fr) !important;
    grid-template-areas:
      "est timebar"
      "title timebar"
      "signature timebar"
      "actions actions" !important;
    align-items:center !important;
    column-gap:32px !important;
    max-width:1080px !important;
    text-align:left !important;
  }
  .hero-copy .hero-est,
  .hero-copy .hero-logo-title .hero-brand-line{
    justify-content:flex-start !important;
  }
  .hero-copy .hero-logo-title,
  .hero-copy .hero-signature{
    margin-left:0 !important;
    margin-right:0 !important;
    text-align:left !important;
  }
  .hero-copy .actions{
    justify-content:center !important;
  }
  .hero-contest-timebar{
    grid-area:timebar !important;
    max-width:430px !important;
    margin:0 0 0 auto !important;
    padding:18px 18px 19px !important;
    border-color:rgba(255,255,255,.08) !important;
    box-shadow:0 28px 80px -60px rgba(240,213,143,.78), inset 0 1px 0 rgba(255,255,255,.06) !important;
  }
}
@media(max-width:860px){
  .hero-contest-timebar{
    max-width:520px !important;
    margin:16px auto 0 !important;
  }
}

/* Prize section structure: remove nested frames and keep only the clean cards. */
.reward-priority .tiers{
  max-width:920px !important;
  margin:0 auto !important;
}
.reward-priority .tier{
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.reward-priority .tier-top,
.reward-priority .tier-payout-layout,
.reward-priority .payout-layout{
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.reward-priority .payout-fireworks,
.reward-priority .tier > .btn{
  display:none !important;
}
.reward-priority .payout-major-grid{
  max-width:880px !important;
  margin:0 auto !important;
  gap:18px !important;
}
.reward-priority .payout-major-card,
.reward-priority .payout-major-card.payout-rank-1{
  min-height:158px !important;
  padding:18px 20px 16px !important;
  border-radius:8px !important;
  align-items:center !important;
  text-align:center !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:
    radial-gradient(circle at 50% -18%, rgba(255,255,255,.16), transparent 45%),
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.026) 48%, rgba(0,229,255,.055)),
    rgba(5,11,16,.72) !important;
  box-shadow:0 22px 64px -52px rgba(0,0,0,.95), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.reward-priority .payout-major-card.payout-rank-1{
  --podium-y:-12px;
  min-height:178px !important;
  background:
    radial-gradient(circle at 50% -18%, rgba(255,217,106,.3), transparent 48%),
    linear-gradient(145deg, rgba(255,215,96,.12), rgba(255,255,255,.035) 48%, rgba(0,229,255,.045)),
    rgba(6,11,15,.74) !important;
}
.reward-priority .payout-major-card.payout-rank-2,
.reward-priority .payout-major-card.payout-rank-3{
  --podium-y:0px;
  min-height:158px !important;
}
.reward-priority .payout-major-card .payout-rank-badge{
  order:4;
  margin-top:4px;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:rgba(255,255,255,.78) !important;
  font-size:12px !important;
}
.reward-priority .payout-major-card h3{
  order:2;
  min-height:0 !important;
  margin:2px 0 0 !important;
  font-size:clamp(18px, 2vw, 22px) !important;
  line-height:1.14 !important;
}
.reward-priority .payout-major-card .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  order:1;
  min-height:54px !important;
  height:54px !important;
  width:100% !important;
  margin:-8px 0 2px !important;
}
.reward-priority .payout-major-card .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:68px !important;
}
.reward-priority .payout-major-card .payout-prize-name{
  order:3;
  min-height:0 !important;
  justify-content:center !important;
  margin-top:2px !important;
  color:rgba(255,255,255,.82) !important;
  font-size:13px !important;
}
.reward-priority .payout-major-card .payout-stats{
  display:none !important;
}
.reward-priority .payout-cash-visual{
  position:relative;
  width:56px !important;
  height:56px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.74), transparent 24%),
    linear-gradient(145deg, rgba(236,242,248,.9), rgba(116,130,145,.92)) !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.22), 0 14px 30px -18px rgba(255,255,255,.85) !important;
}
.reward-priority .payout-rank-3 .payout-cash-visual{
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.56), transparent 24%),
    linear-gradient(145deg, rgba(215,148,96,.95), rgba(117,67,38,.96)) !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.16), 0 14px 30px -18px rgba(215,148,96,.85) !important;
}
.reward-priority .payout-cash-visual::before{
  content:"$";
  color:rgba(255,255,255,.88);
  font-size:30px;
  font-weight:900;
  line-height:1;
  text-shadow:0 2px 8px rgba(0,0,0,.34);
}
.reward-priority .payout-cash-visual b,
.reward-priority .payout-cash-visual small{
  display:none !important;
}
.reward-priority .payout-consolation{
  max-width:880px !important;
  margin:16px auto 0 !important;
  border:0 !important;
  background:rgba(255,255,255,.025) !important;
  box-shadow:none !important;
}
.reward-priority .payout-consolation-row{
  border-color:rgba(255,255,255,.045) !important;
  background:rgba(255,255,255,.025) !important;
}

@media(max-width:860px){
  .reward-priority .payout-major-grid{
    max-width:520px !important;
    gap:12px !important;
  }
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-1{
    --podium-y:0px;
    min-height:136px !important;
    padding:16px !important;
  }
}

/* Fold fit: keep hero compact enough that rewards are visible immediately. */
@media(min-width:861px){
  .hero{
    padding:28px 0 18px !important;
  }
  .hero h1.hero-logo-title{
    font-size:clamp(48px, 5.1vw, 72px) !important;
    line-height:.93 !important;
  }
  .hero-copy .hero-est{
    margin-bottom:0 !important;
    font-size:13px !important;
  }
  .hero-copy .hero-signature{
    margin-top:0 !important;
    font-size:clamp(20px, 2vw, 28px) !important;
    line-height:1.18 !important;
  }
  .hero-copy .actions{
    margin-top:14px !important;
  }
  .hero-contest-timebar{
    max-width:390px !important;
    padding:14px 14px 15px !important;
    border-radius:14px !important;
  }
  .hero-contest-timebar .cd-head{
    margin-bottom:5px !important;
    font-size:12px !important;
  }
  .hero-contest-timebar .cd-status{
    margin-bottom:9px !important;
    gap:1px !important;
  }
  .hero-contest-timebar .cd-status-lead{
    font-size:clamp(18px, 1.55vw, 22px) !important;
  }
  .hero-contest-timebar .cd-status-time{
    font-size:clamp(24px, 2.2vw, 30px) !important;
  }
  .hero-contest-timebar .cd-status-note{
    font-size:12px !important;
    margin-top:2px !important;
  }
  .hero-contest-timebar .cd-progress-track{
    height:7px !important;
  }
  .hero-contest-timebar .cd-meta{
    margin:7px 0 8px !important;
    font-size:11px !important;
  }
  .hero-contest-timebar .cd{
    gap:7px !important;
  }
  .hero-contest-timebar .cd-box{
    min-width:54px !important;
    padding:8px 3px !important;
    border-radius:10px !important;
  }
  .hero-contest-timebar .cd-num{
    font-size:22px !important;
  }
  .hero-contest-timebar .cd-lbl{
    font-size:10px !important;
    margin-top:4px !important;
  }
  section.block.reward-priority{
    padding-top:18px !important;
  }
  .reward-priority-head{
    margin-bottom:10px !important;
  }
  .reward-priority-head .sec-tag{
    min-height:38px !important;
    padding:0 20px !important;
    font-size:13px !important;
  }
  .reward-priority-head h2{
    margin-top:8px !important;
    font-size:clamp(30px, 3.2vw, 42px) !important;
  }
  .reward-priority-head p{
    margin-top:4px !important;
    font-size:13px !important;
  }
}

/* Remove leftover section frame lines around the prize block. */
.reward-priority{
  border-top:0 !important;
  border-bottom:0 !important;
}
.reward-priority::before,
.reward-priority::after{
  display:none !important;
  content:none !important;
}

/* Hero name: keep "Trading Challenge" as one premium gold line. */
.hero-logo-title .hero-challenge{
  white-space:nowrap !important;
}
@media(min-width:861px){
  .hero h1.hero-logo-title{
    inline-size:min(100%, 12.8ch) !important;
    max-width:min(100%, 12.8ch) !important;
  }
  .hero-logo-title .hero-challenge{
    font-size:.54em !important;
    line-height:1.02 !important;
  }
}
@media(max-width:860px){
  .hero-logo-title .hero-challenge{
    font-size:.52em !important;
    line-height:1.05 !important;
  }
}

/* Reward title crop fix: keep the prize section clear of the viewport edge. */
section.block.reward-priority,
.reward-priority{
  overflow:visible !important;
  scroll-margin-top:112px !important;
}
section.block.reward-priority{
  padding-top:54px !important;
}
.reward-priority .wrap{
  overflow:visible !important;
}
.reward-priority-head{
  padding-top:8px !important;
  margin-bottom:16px !important;
  overflow:visible !important;
}
.reward-priority-head h2{
  margin-top:10px !important;
  line-height:1.14 !important;
  padding-top:.08em !important;
  overflow:visible !important;
}

@media(min-width:861px){
  section.block.reward-priority{
    padding-top:62px !important;
  }
}

@media(max-width:860px){
  section.block.reward-priority{
    padding-top:44px !important;
    scroll-margin-top:92px !important;
  }
  .reward-priority-head{
    padding-top:6px !important;
  }
}

/* Prize image crop fix: keep the Top 1 product fully inside its card. */
.reward-priority .payout-major-card,
.reward-priority .payout-major-grid{
  overflow:visible !important;
}
.reward-priority .payout-major-card.payout-rank-1{
  padding-top:24px !important;
  overflow:visible !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  height:78px !important;
  min-height:78px !important;
  margin:0 0 8px !important;
  overflow:visible !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
  display:block !important;
  max-height:76px !important;
  width:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
}

@media(max-width:860px){
  .reward-priority .payout-major-card.payout-rank-1{
    padding-top:22px !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    height:72px !important;
    min-height:72px !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-height:70px !important;
  }
}

/* Home rewards: make the Top 3 prize cards large enough for real information. */
.reward-priority .tiers,
.reward-priority .payout-major-grid,
.reward-priority .payout-consolation{
  max-width:1120px !important;
}
.reward-priority .payout-major-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1.08fr) minmax(0, 1fr) !important;
  align-items:end !important;
  gap:22px !important;
  margin:0 auto !important;
}
.reward-priority .payout-major-card,
.reward-priority .payout-major-card.payout-rank-1,
.reward-priority .payout-major-card.payout-rank-2,
.reward-priority .payout-major-card.payout-rank-3{
  min-height:306px !important;
  padding:22px 24px 20px !important;
  border-radius:10px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  align-items:center !important;
  text-align:center !important;
}
.reward-priority .payout-major-card.payout-rank-1{
  min-height:350px !important;
  padding-top:26px !important;
}
.reward-priority .payout-major-card.payout-rank-2,
.reward-priority .payout-major-card.payout-rank-3{
  min-height:312px !important;
}
.reward-priority .payout-major-card .payout-rank-badge{
  order:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:40px !important;
  min-width:126px !important;
  margin:0 auto 8px !important;
  padding:0 18px !important;
  border-radius:6px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
  font-size:15px !important;
}
.reward-priority .payout-major-card h3{
  order:3 !important;
  min-height:0 !important;
  margin:8px 0 2px !important;
  font-size:clamp(22px, 2.15vw, 30px) !important;
  line-height:1.08 !important;
}
.reward-priority .payout-major-card .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  order:2 !important;
  width:100% !important;
  height:122px !important;
  min-height:122px !important;
  margin:4px 0 8px !important;
  display:grid !important;
  place-items:center !important;
  overflow:visible !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  height:148px !important;
  min-height:148px !important;
}
.reward-priority .payout-major-card .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:140px !important;
  width:auto !important;
  object-fit:contain !important;
  transform:none !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:148px !important;
}
.reward-priority .payout-cash-visual{
  width:116px !important;
  height:116px !important;
}
.reward-priority .payout-cash-visual::before{
  font-size:56px !important;
}
.reward-priority .payout-major-card .payout-prize-name{
  order:4 !important;
  margin:4px 0 0 !important;
  min-height:0 !important;
  justify-content:center !important;
  color:rgba(255,255,255,.86) !important;
  font-size:15px !important;
}
.reward-priority .payout-major-card .payout-stats{
  order:5 !important;
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:8px !important;
  width:100% !important;
  margin-top:14px !important;
  padding-top:0 !important;
  border-top:0 !important;
}
.reward-priority .payout-major-card .payout-stats span{
  min-height:48px !important;
  padding:9px 10px !important;
  border-radius:6px !important;
  border:1px solid rgba(255,255,255,.1) !important;
  background:rgba(0,0,0,.18) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  text-align:left !important;
}
.reward-priority .payout-major-card .payout-stats b{
  color:#fff !important;
  font-size:14px !important;
  line-height:1.05 !important;
}
.reward-priority .payout-major-card .payout-stats small{
  margin-top:4px !important;
  color:rgba(255,255,255,.58) !important;
  font-size:10px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
}
.reward-priority .payout-consolation{
  margin-top:22px !important;
}

@media(max-width:980px){
  .reward-priority .payout-major-grid{
    grid-template-columns:1fr !important;
    max-width:560px !important;
  }
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-1,
  .reward-priority .payout-major-card.payout-rank-2,
  .reward-priority .payout-major-card.payout-rank-3{
    min-height:300px !important;
  }
}

@media(max-width:560px){
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-1,
  .reward-priority .payout-major-card.payout-rank-2,
  .reward-priority .payout-major-card.payout-rank-3{
    min-height:268px !important;
    padding:18px !important;
  }
  .reward-priority .payout-major-card h3{
    font-size:clamp(20px, 7vw, 26px) !important;
  }
  .reward-priority .payout-major-card .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    height:108px !important;
    min-height:108px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-height:106px !important;
  }
  .reward-priority .payout-cash-visual{
    width:96px !important;
    height:96px !important;
  }
  .reward-priority .payout-cash-visual::before{
    font-size:44px !important;
  }
}

/* Final balance: large prize cards, but still readable within the first reward viewport. */
@media(min-width:981px){
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-2,
  .reward-priority .payout-major-card.payout-rank-3{
    min-height:304px !important;
    padding:20px 22px 18px !important;
    justify-content:flex-start !important;
  }
  .reward-priority .payout-major-card.payout-rank-1{
    min-height:336px !important;
    padding:22px 24px 18px !important;
    justify-content:flex-start !important;
  }
  .reward-priority .payout-major-card .payout-rank-badge{
    min-height:38px !important;
    margin-bottom:8px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    height:108px !important;
    min-height:108px !important;
    margin:2px 0 8px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-height:108px !important;
  }
  .reward-priority .payout-cash-visual{
    width:104px !important;
    height:104px !important;
  }
  .reward-priority .payout-cash-visual::before{
    font-size:50px !important;
  }
  .reward-priority .payout-major-card h3{
    margin:6px 0 2px !important;
    font-size:clamp(21px, 1.95vw, 26px) !important;
    line-height:1.08 !important;
  }
  .reward-priority .payout-major-card .payout-prize-name{
    font-size:14px !important;
  }
  .reward-priority .payout-major-card .payout-stats{
    margin-top:10px !important;
  }
  .reward-priority .payout-major-card .payout-stats span{
    min-height:42px !important;
    padding:8px 9px !important;
  }
  .reward-priority .payout-major-card .payout-stats b{
    font-size:13px !important;
  }
}

/* Home rewards portrait layout: tall cards, Top 1 centered. */
@media(min-width:981px){
  .reward-priority .tiers,
  .reward-priority .payout-major-grid,
  .reward-priority .payout-consolation{
    max-width:1160px !important;
  }
  .reward-priority .payout-major-grid{
    grid-template-columns:minmax(260px, 300px) minmax(310px, 350px) minmax(260px, 300px) !important;
    justify-content:center !important;
    gap:24px !important;
    align-items:end !important;
  }
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-1,
  .reward-priority .payout-major-card.payout-rank-2,
  .reward-priority .payout-major-card.payout-rank-3{
    width:100% !important;
    min-height:440px !important;
    height:440px !important;
    padding:28px 24px 24px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;
    text-align:center !important;
  }
  .reward-priority .payout-major-card.payout-rank-1{
    grid-column:2 !important;
    grid-row:1 !important;
    min-height:510px !important;
    height:510px !important;
    padding:32px 28px 26px !important;
    transform:translateY(-18px) !important;
  }
  .reward-priority .payout-major-card.payout-rank-2{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .reward-priority .payout-major-card.payout-rank-3{
    grid-column:3 !important;
    grid-row:1 !important;
  }
  .reward-priority .payout-major-card .payout-rank-badge{
    align-self:center !important;
    justify-self:auto !important;
    min-width:118px !important;
    min-height:36px !important;
    margin:0 !important;
    padding:0 16px !important;
    font-size:14px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    width:100% !important;
    height:168px !important;
    min-height:168px !important;
    margin:4px 0 2px !important;
    place-items:center !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    height:205px !important;
    min-height:205px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-width:190px !important;
    max-height:168px !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-width:230px !important;
    max-height:205px !important;
  }
  .reward-priority .payout-cash-visual{
    width:144px !important;
    height:144px !important;
  }
  .reward-priority .payout-cash-visual::before{
    font-size:64px !important;
  }
  .reward-priority .payout-major-card h3{
    margin:2px 0 0 !important;
    font-size:clamp(24px, 1.7vw, 30px) !important;
    line-height:1.08 !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 h3{
    font-size:clamp(30px, 2.1vw, 38px) !important;
  }
  .reward-priority .payout-major-card .payout-prize-name{
    justify-content:center !important;
    margin:0 !important;
    font-size:15px !important;
  }
  .reward-priority .payout-major-card .payout-stats{
    width:100% !important;
    align-self:stretch !important;
    margin-top:auto !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
  .reward-priority .payout-major-card .payout-stats span{
    min-height:60px !important;
  }
}

@media(max-width:980px){
  .reward-priority .payout-major-grid{
    grid-template-columns:minmax(0, min(430px, 92vw)) !important;
    justify-content:center !important;
    gap:18px !important;
  }
  .reward-priority .payout-major-card,
  .reward-priority .payout-major-card.payout-rank-1,
  .reward-priority .payout-major-card.payout-rank-2,
  .reward-priority .payout-major-card.payout-rank-3{
    width:100% !important;
    min-height:430px !important;
    height:auto !important;
    padding:26px 20px 22px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:11px !important;
    text-align:center !important;
  }
  .reward-priority .payout-major-card.payout-rank-1{
    grid-row:1 !important;
    min-height:470px !important;
    transform:none !important;
  }
  .reward-priority .payout-major-card.payout-rank-2{grid-row:2 !important}
  .reward-priority .payout-major-card.payout-rank-3{grid-row:3 !important}
  .reward-priority .payout-major-card .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    width:100% !important;
    height:160px !important;
    min-height:160px !important;
    margin:2px 0 !important;
    display:grid !important;
    place-items:center !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    height:190px !important;
    min-height:190px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-width:210px !important;
    max-height:180px !important;
  }
  .reward-priority .payout-major-card h3{
    font-size:clamp(23px, 7vw, 30px) !important;
    line-height:1.08 !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 h3{
    font-size:clamp(28px, 8vw, 36px) !important;
  }
  .reward-priority .payout-major-card .payout-stats{
    width:100% !important;
    margin-top:auto !important;
  }
}

/* Mobile conversion pass: sticky CTA, cleaner register flow, less cramped nav. */
@media(max-width:640px){
  body{
    padding-bottom:calc(112px + env(safe-area-inset-bottom)) !important;
  }
  body.is-register-view{
    padding-bottom:calc(34px + env(safe-area-inset-bottom)) !important;
  }
  .mobile-bar{
    display:flex !important;
    align-items:center;
    gap:10px;
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
    width:auto;
    padding:8px !important;
    border:1px solid rgba(240,213,143,.2);
    border-radius:24px;
    background:linear-gradient(180deg, rgba(18,15,10,.86), rgba(5,7,11,.96));
    box-shadow:0 20px 70px -36px rgba(0,0,0,.95), 0 0 0 1px rgba(255,255,255,.04) inset;
    backdrop-filter:blur(18px);
    transition:transform .24s ease, opacity .24s ease;
  }
  body.is-register-view .mobile-bar{
    opacity:0;
    pointer-events:none;
    transform:translateY(calc(100% + 18px));
  }
  .mobile-bar .btn{
    display:grid !important;
    place-items:center;
    gap:2px;
    width:auto !important;
    min-height:58px !important;
    padding:10px 12px !important;
    border-radius:18px !important;
    line-height:1.05;
    white-space:normal;
  }
  .mobile-bar .btn:first-child{
    flex:1 1 auto;
    font-size:15px !important;
    box-shadow:0 20px 52px -30px rgba(240,213,143,.9);
  }
  .mobile-bar .btn:not(:first-child){
    flex:0 0 102px;
    font-size:13px !important;
  }
  .mobile-bar small{
    display:block;
    color:rgba(255,255,255,.62);
    font-size:10px;
    font-weight:800;
  }
  .nav .links{
    overflow:visible !important;
    padding-bottom:1px !important;
  }
  .nav .links::-webkit-scrollbar{display:none}
  .hero-copy .actions{
    grid-template-columns:1fr !important;
  }
  .hero-copy .actions .btn{
    min-height:50px !important;
  }
  [data-view="register"] .wrap{
    width:min(100% - 18px, 1180px);
  }
  [data-view="register"] .register-layout{
    gap:12px !important;
  }
  [data-view="register"] .register-copy,
  [data-view="register"] .register-form{
    padding:15px !important;
  }
  [data-view="register"] .form-grid,
  [data-view="register"] .mt5-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  [data-view="register"] .form-actions{
    grid-template-columns:1fr 1fr 1fr !important;
  }
  [data-view="register"] .form-actions .btn-cyan{
    grid-column:1 / -1 !important;
  }
  [data-view="register"] .disclaimer{
    font-size:11.5px;
    line-height:1.5;
  }
}

@media(max-width:420px){
  .mobile-bar{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    gap:8px;
    padding:7px !important;
    border-radius:21px;
  }
  .mobile-bar .btn:first-child{
    font-size:14px !important;
  }
  .mobile-bar .btn:not(:first-child){
    flex-basis:88px;
    font-size:12px !important;
  }
  .mobile-bar small{
    font-size:9.5px;
  }
  [data-view="register"] .form-actions .btn{
    font-size:11.5px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }
}

[data-view="register"] .mt5-grid{grid-template-columns:repeat(2,minmax(0,1fr));}

/* Registration mobile: keep the support control clear of the form. */
@media(max-width:640px){
  body.is-register-view .knc-btn{
    width:48px;
    height:48px;
    bottom:calc(16px + env(safe-area-inset-bottom));
  }
  body.is-register-view .knc-wrap{
    bottom:calc(76px + env(safe-area-inset-bottom));
    max-height:calc(100vh - 96px);
  }
  [data-view="register"] .register-form input,
  [data-view="register"] .register-form select,
  [data-view="register"] .register-form textarea{
    scroll-margin-bottom:96px;
  }
  [data-view="register"] .disclaimer{
    margin-bottom:64px;
  }
}

@media(max-width:640px){
  body.is-register-view .knc-btn{
    width:44px;
    height:44px;
    bottom:calc(8px + env(safe-area-inset-bottom));
  }
  body.is-register-view .knc-wrap{
    bottom:calc(62px + env(safe-area-inset-bottom));
  }
}


/* Risk notice: short, scan-friendly statements. */
.risk-disclaimer strong{
  display:block;
  margin-bottom:8px;
}
.risk-disclaimer ul{
  display:grid;
  gap:6px;
  margin:0;
  padding:0;
  list-style:none;
}
.risk-disclaimer li{
  position:relative;
  padding-left:15px;
}
.risk-disclaimer li::before{
  content:"\2022";
  position:absolute;
  left:0;
  color:var(--champagne);
}

/* prize-luxury-v1 */
.payout-major-card{
  background:
    linear-gradient(165deg, rgba(28,24,18,.98) 0%, rgba(12,14,20,.98) 55%, rgba(8,10,16,.99) 100%),
    radial-gradient(ellipse at 50% -20%, rgba(240,213,143,.22), transparent 55%);
  border:1px solid rgba(232,207,154,.22);
  box-shadow:
    0 28px 60px -36px rgba(0,0,0,.95),
    inset 0 1px 0 rgba(255,255,255,.06);
}
.payout-major-card.payout-rank-1{
  background:
    linear-gradient(165deg, rgba(48,38,18,.99) 0%, rgba(18,16,12,.98) 48%, rgba(10,10,14,.99) 100%),
    radial-gradient(ellipse at 50% -18%, rgba(255,214,102,.38), transparent 58%),
    radial-gradient(circle at 80% 100%, rgba(255,180,40,.12), transparent 40%);
  border-color:rgba(255,214,102,.55);
  box-shadow:
    0 0 0 1px rgba(255,214,102,.18),
    0 34px 80px -32px rgba(255,190,40,.55),
    inset 0 1px 0 rgba(255,240,200,.12);
}
.payout-major-card h3,
.payout-major-card .payout-prize-title{
  margin:0;
  color:#f7ecd0;
  font-size:17px;
  line-height:1.28;
  font-weight:800;
  letter-spacing:.01em;
  text-wrap:balance;
}
.payout-major-card.payout-rank-1 .payout-prize-title{
  font-size:18px;
  color:#fff6d8;
}
.payout-prize-label{
  margin:4px 0 8px;
  color:#c9a84c;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.payout-trader-name{
  margin-top:10px;
  color:#e8d9a8;
  font-size:15px;
  font-weight:800;
  letter-spacing:.02em;
}
.payout-prize-name{
  color:#e8d9a8 !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.01em;
  min-height:auto;
}
.payout-stats span{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(232,207,154,.12);
}
.payout-stats b{
  color:#f0d58f !important;
  font-size:14px;
  font-weight:900;
}
.payout-stats small{
  color:#9a8f72 !important;
  letter-spacing:.12em;
}
.prize-product{
  display:block;
  color:#f3e6c0;
  font-size:15px;
  font-weight:800;
  line-height:1.3;
  letter-spacing:.01em;
}
.prize-plus{
  display:inline-block;
  margin:8px 0 4px;
  color:rgba(240,213,143,.55);
  font-size:14px;
  font-weight:700;
}
.prize-cash888{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  margin-top:4px;
  padding:8px 16px 7px;
  border-radius:999px;
  background:
    linear-gradient(135deg, rgba(255,214,102,.28), rgba(255,170,30,.12)),
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.18), transparent 50%);
  border:1px solid rgba(255,214,102,.55);
  box-shadow:
    0 0 24px rgba(255,190,40,.35),
    inset 0 1px 0 rgba(255,255,255,.18);
  color:#fff4c2;
  vertical-align:middle;
}
.prize-cash888 b{
  font-size:28px;
  font-weight:950;
  letter-spacing:.04em;
  line-height:1;
  background:linear-gradient(180deg,#fff8d6 0%,#ffd666 45%,#e8a820 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 8px rgba(255,190,40,.45));
}
.prize-cash888 small{
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  color:#ffe8a8;
  text-transform:uppercase;
}
.payout-major-card.payout-rank-1 .prize-cash888{
  padding:10px 20px 9px;
  box-shadow:
    0 0 32px rgba(255,190,40,.5),
    0 8px 24px -10px rgba(255,160,0,.6),
    inset 0 1px 0 rgba(255,255,255,.22);
}
.payout-major-card.payout-rank-1 .prize-cash888 b{
  font-size:34px;
}
.payout-major-card .payout-rank-badge{
  background:linear-gradient(135deg, rgba(255,214,102,.22), rgba(255,170,30,.08));
  border:1px solid rgba(255,214,102,.4);
  color:#ffe8a8;
  font-weight:900;
  letter-spacing:.08em;
}
.payout-consolation{
  background:linear-gradient(180deg, rgba(22,20,16,.9), rgba(12,12,16,.95));
  border:1px solid rgba(232,207,154,.14);
}
.payout-consolation-head span,
.payout-consolation-head b{
  color:#e8d9a8 !important;
}
.payout-consolation-rank{color:#c9a84c !important;font-weight:900}
.payout-consolation-name{color:#d8cba8 !important}
.payout-consolation-prize{color:#f0d58f !important;font-weight:800}
.payout-consolation-roi{color:#9a8f72 !important}
.payout-week-tab{
  background:linear-gradient(135deg, rgba(40,34,20,.95), rgba(18,16,12,.98));
  border:1px solid rgba(232,207,154,.22);
  color:#e8d9a8;
}
.payout-week-tab b{color:#f0d58f !important}
.payout-week-tab.is-paid b{color:#8ef0bd !important}
.payout-week-tab.is-live b{color:#ffe29b !important}
.payout-empty-week h3{color:#e8d9a8 !important}
.payout-empty-week p{color:#9a8f72 !important}

/* prize-cash-gold for non-top1 numbers */
.prize-cash-gold{
  display:inline-flex;
  align-items:baseline;
  gap:5px;
  padding:6px 13px 5px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,214,102,.22), rgba(255,170,30,.08));
  border:1px solid rgba(255,214,102,.42);
  box-shadow:0 0 18px rgba(255,190,40,.28), inset 0 1px 0 rgba(255,255,255,.14);
  vertical-align:middle;
}
.prize-cash-gold b{
  font-size:22px;
  font-weight:950;
  letter-spacing:.03em;
  line-height:1;
  background:linear-gradient(180deg,#fff8d6 0%,#ffd666 45%,#e8a820 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 6px rgba(255,190,40,.4));
}
.prize-cash-gold small{
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  color:#ffe8a8;
  text-transform:uppercase;
}
/* consolation prize number gold */
.payout-consolation-prize .prize-cash-gold,
.payout-consolation-prize .prize-cash888{
  padding:4px 11px 3px;
}
.payout-consolation-prize .prize-cash-gold b{font-size:19px}
/* the circle visual (payout-cash-visual) -> gold */
.payout-cash-visual{
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.22), transparent 30%),
    linear-gradient(135deg, rgba(255,214,102,.26), rgba(232,168,32,.14)) !important;
  border:1px solid rgba(255,214,102,.45) !important;
  box-shadow:inset 0 0 24px rgba(0,0,0,.18), 0 18px 36px -30px rgba(255,190,40,.85) !important;
}
.payout-cash-visual b{
  background:linear-gradient(180deg,#fff8d6 0%,#ffd666 45%,#e8a820 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 8px rgba(255,190,40,.5));
}
.payout-cash-visual small{color:#ffe8a8 !important}
/* offer-prize numbers gold */
.offer-prize-name{color:#f3e6c0 !important}
.offer-prize-copy small{color:#f0d58f !important}


/* ===== Prize stage + podium (Top 1/2/3) — refined showcase ===== */
.prize-stage{
  position:relative;
  width:100%;
  min-height:150px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  padding:8px 8px 0;
  isolation:isolate;
}
.prize-stage-r1{min-height:210px}
.prize-stage-r2,
.prize-stage-r3{min-height:160px}
.prize-stage-glow{
  position:absolute;
  left:50%;
  bottom:42px;
  width:78%;
  height:72%;
  transform:translateX(-50%);
  border-radius:50%;
  background:
    radial-gradient(ellipse at 50% 70%, rgba(255,214,102,.42) 0%, rgba(255,214,102,.12) 38%, transparent 70%),
    radial-gradient(ellipse at 50% 100%, rgba(0,229,255,.16) 0%, transparent 55%);
  filter:blur(2px);
  pointer-events:none;
  z-index:0;
  animation:prizeGlowPulse 3.6s ease-in-out infinite;
}
.prize-stage-r2 .prize-stage-glow{
  background:
    radial-gradient(ellipse at 50% 70%, rgba(210,220,235,.34) 0%, rgba(170,190,220,.1) 40%, transparent 70%);
}
.prize-stage-r3 .prize-stage-glow{
  background:
    radial-gradient(ellipse at 50% 70%, rgba(215,148,96,.36) 0%, rgba(215,148,96,.1) 40%, transparent 70%);
}
@keyframes prizeGlowPulse{
  0%,100%{opacity:.85; transform:translateX(-50%) scale(1)}
  50%{opacity:1; transform:translateX(-50%) scale(1.05)}
}
.prize-stage-product{
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:100%;
  margin-bottom:-6px;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.55));
}
.prize-stage-product img{
  display:block !important;
  width:auto !important;
  max-width:92% !important;
  max-height:168px !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  transform:none !important;
  animation:prizeFloat 4.2s ease-in-out infinite;
}
.prize-stage-r1 .prize-stage-product img{
  max-height:196px !important;
}
.prize-stage-r2 .prize-stage-product img,
.prize-stage-r3 .prize-stage-product img{
  max-height:132px !important;
}
@keyframes prizeFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}
.prize-stage-product .payout-cash-visual{
  width:92px !important;
  height:92px !important;
  margin-bottom:4px;
}
.prize-stage-r3 .prize-stage-product .payout-cash-visual{
  width:84px !important;
  height:84px !important;
}
.prize-podium{
  position:relative;
  z-index:1;
  width:min(78%, 220px);
  height:46px;
  margin:0 auto 2px;
  perspective:420px;
}
.prize-stage-r1 .prize-podium{width:min(82%, 250px); height:54px}
.prize-stage-r2 .prize-podium,
.prize-stage-r3 .prize-podium{width:min(74%, 190px); height:42px}
.prize-podium-top{
  position:absolute;
  left:6%;
  right:6%;
  top:0;
  height:14px;
  border-radius:10px 10px 4px 4px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.55) 0%, rgba(255,230,160,.35) 40%, rgba(180,140,60,.25) 100%),
    linear-gradient(90deg, #3a2a0a, #c9a24a 20%, #ffe9a8 50%, #c9a24a 80%, #3a2a0a);
  box-shadow:
    0 0 0 1px rgba(255,230,160,.35),
    0 0 22px rgba(255,214,102,.35),
    inset 0 1px 0 rgba(255,255,255,.55);
  transform:rotateX(58deg);
  transform-origin:center bottom;
}
.prize-stage-r2 .prize-podium-top{
  background:
    linear-gradient(180deg, rgba(255,255,255,.5) 0%, rgba(210,220,235,.3) 45%, rgba(120,140,170,.25) 100%),
    linear-gradient(90deg, #1a2230, #a8b8cc 20%, #eef3f9 50%, #a8b8cc 80%, #1a2230);
  box-shadow:0 0 0 1px rgba(210,220,235,.35), 0 0 18px rgba(180,200,230,.28), inset 0 1px 0 rgba(255,255,255,.5);
}
.prize-stage-r3 .prize-podium-top{
  background:
    linear-gradient(180deg, rgba(255,220,180,.45) 0%, rgba(215,148,96,.3) 45%, rgba(100,55,25,.3) 100%),
    linear-gradient(90deg, #2a1608, #b87a42 20%, #f0c090 50%, #b87a42 80%, #2a1608);
  box-shadow:0 0 0 1px rgba(240,180,110,.3), 0 0 18px rgba(215,148,96,.28), inset 0 1px 0 rgba(255,255,255,.4);
}
.prize-podium-face{
  position:absolute;
  left:10%;
  right:10%;
  top:10px;
  bottom:10px;
  border-radius:0 0 6px 6px;
  background:
    linear-gradient(180deg, rgba(255,230,160,.22), transparent 40%),
    linear-gradient(90deg, #1a1406 0%, #6a5018 18%, #a8842e 50%, #6a5018 82%, #1a1406 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), inset 0 -8px 16px rgba(0,0,0,.35);
}
.prize-stage-r2 .prize-podium-face{
  background:
    linear-gradient(180deg, rgba(220,230,245,.18), transparent 40%),
    linear-gradient(90deg, #121820 0%, #4a5a70 18%, #8a9bb0 50%, #4a5a70 82%, #121820 100%);
}
.prize-stage-r3 .prize-podium-face{
  background:
    linear-gradient(180deg, rgba(240,180,110,.16), transparent 40%),
    linear-gradient(90deg, #1a0e06 0%, #6a3a18 18%, #a86a32 50%, #6a3a18 82%, #1a0e06 100%);
}
.prize-podium-base{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:12px;
  border-radius:40%;
  background:radial-gradient(ellipse at 50% 40%, rgba(255,214,102,.45), rgba(255,214,102,.08) 55%, transparent 72%);
  filter:blur(1px);
}
.prize-stage-r2 .prize-podium-base{
  background:radial-gradient(ellipse at 50% 40%, rgba(180,200,230,.4), rgba(180,200,230,.08) 55%, transparent 72%);
}
.prize-stage-r3 .prize-podium-base{
  background:radial-gradient(ellipse at 50% 40%, rgba(215,148,96,.4), rgba(215,148,96,.08) 55%, transparent 72%);
}
.prize-podium-shine{
  position:absolute;
  left:18%;
  right:18%;
  top:2px;
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
  opacity:.55;
  pointer-events:none;
}
.reward-priority .payout-major-card .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-2 .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-3 .payout-prize-img{
  height:auto !important;
  min-height:0 !important;
  margin:4px 0 6px !important;
  overflow:visible !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  min-height:210px !important;
}
.reward-priority .payout-major-card.payout-rank-2 .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-3 .payout-prize-img{
  min-height:160px !important;
}
.reward-priority .payout-major-card .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-2 .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-3 .payout-prize-img img{
  max-height:none !important;
  width:auto !important;
  transform:none !important;
}
.reward-priority .payout-major-card.payout-rank-1{
  padding-top:18px !important;
  padding-bottom:14px !important;
}
.reward-priority .prize-stage-product .payout-cash-visual{
  width:88px !important;
  height:88px !important;
}
.reward-priority .prize-stage-product .payout-cash-visual::before{
  font-size:36px !important;
}
@media (max-width:860px){
  .prize-stage-r1{min-height:180px}
  .prize-stage-r2,
  .prize-stage-r3{min-height:140px}
  .prize-stage-r1 .prize-stage-product img{max-height:160px !important}
  .prize-stage-r2 .prize-stage-product img,
  .prize-stage-r3 .prize-stage-product img{max-height:112px !important}
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{min-height:180px !important}
  .reward-priority .payout-major-card.payout-rank-2 .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-3 .payout-prize-img{min-height:140px !important}
  .prize-stage-r1 .prize-podium{height:48px}
}


/* ===== Prize cards reflow (v113) — BIG product image, tight text ===== */
.reward-priority .payout-major-grid,
.tier-payout-layout .payout-major-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.18fr) minmax(0,1fr) !important;
  align-items:stretch !important;
  gap:16px !important;
  max-width:1180px !important;
  margin:0 auto !important;
}
.reward-priority .payout-major-card,
.reward-priority .payout-major-card.payout-rank-1,
.reward-priority .payout-major-card.payout-rank-2,
.reward-priority .payout-major-card.payout-rank-3,
.tier-payout-layout .payout-major-card{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  min-height:0 !important;
  height:auto !important;
  padding:14px 14px 14px !important;
  overflow:visible !important;
  text-align:center !important;
}
.reward-priority .payout-major-card.payout-rank-1{
  transform:none !important;
  margin-top:0 !important;
  padding:16px 16px 14px !important;
}
/* reset old absolute/order mess */
.reward-priority .payout-major-card .payout-rank-badge,
.reward-priority .payout-major-card .payout-prize-img,
.reward-priority .payout-major-card .payout-prize-label,
.reward-priority .payout-major-card h3,
.reward-priority .payout-major-card .payout-prize-title,
.reward-priority .payout-major-card .payout-prize-name,
.reward-priority .payout-major-card .payout-stats{
  order:unset !important;
  position:relative !important;
  left:auto !important; right:auto !important; top:auto !important; bottom:auto !important;
  transform:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* badge — nhỏ gọn */
.reward-priority .payout-major-card .payout-rank-badge{
  flex:0 0 auto !important;
  margin:0 auto !important;
  min-height:28px !important;
  min-width:0 !important;
  padding:4px 12px !important;
  font-size:12px !important;
  line-height:1.2 !important;
  z-index:3 !important;
}

/* IMAGE ZONE — to, chiếm phần lớn card */
.reward-priority .payout-major-card .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-2 .payout-prize-img,
.reward-priority .payout-major-card.payout-rank-3 .payout-prize-img{
  flex:0 0 auto !important;
  width:100% !important;
  height:240px !important;
  min-height:240px !important;
  max-height:none !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  overflow:visible !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
  height:300px !important;
  min-height:300px !important;
}
.reward-priority .prize-stage,
.reward-priority .prize-stage-r1,
.reward-priority .prize-stage-r2,
.reward-priority .prize-stage-r3{
  width:100% !important;
  min-height:0 !important;
  height:100% !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:0 !important;
}
.reward-priority .prize-stage-glow{
  bottom:36px !important;
  width:78% !important;
  height:62% !important;
  opacity:.85 !important;
  animation:none !important;
}
.reward-priority .prize-stage-product{
  width:100% !important;
  margin:0 0 -4px !important;
  filter:drop-shadow(0 14px 22px rgba(0,0,0,.5)) !important;
}
/* ẢNH TO — đây là trọng tâm */
.reward-priority .prize-stage-product img,
.reward-priority .payout-major-card .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-2 .payout-prize-img img,
.reward-priority .payout-major-card.payout-rank-3 .payout-prize-img img{
  display:block !important;
  max-height:200px !important;
  max-width:92% !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center bottom !important;
  transform:none !important;
  animation:none !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-stage-product img,
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
  max-height:260px !important;
  max-width:96% !important;
}

/* bục nhỏ, không tranh chỗ với ảnh */
.reward-priority .prize-podium,
.reward-priority .prize-stage-r1 .prize-podium,
.reward-priority .prize-stage-r2 .prize-podium,
.reward-priority .prize-stage-r3 .prize-podium{
  width:min(70%, 170px) !important;
  height:28px !important;
  margin:0 auto !important;
  flex:0 0 28px !important;
}
.reward-priority .prize-stage-r1 .prize-podium{
  width:min(76%, 200px) !important;
  height:32px !important;
  flex-basis:32px !important;
}
.reward-priority .prize-podium-top{height:9px !important}
.reward-priority .prize-podium-face{top:7px !important; bottom:7px !important}
.reward-priority .prize-podium-base{height:7px !important}

/* chữ — gọn, đúng tỷ lệ, không chiếm chỗ ảnh */
.reward-priority .payout-prize-label{
  flex:0 0 auto !important;
  margin:4px 0 0 !important;
  font-size:11px !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  opacity:.75 !important;
  line-height:1.2 !important;
}
.reward-priority .payout-major-card h3,
.reward-priority .payout-major-card .payout-prize-title,
.reward-priority .payout-major-card.payout-rank-1 h3{
  flex:0 0 auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 2px !important;
  font-size:clamp(13px, 1.25vw, 17px) !important;
  line-height:1.25 !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px 5px !important;
  font-weight:700 !important;
}
/* badge 888 USD trong title — vừa phải, không khổng lồ */
.reward-priority .payout-major-card .prize-cash888,
.reward-priority .payout-major-card .prize-cash-gold{
  font-size:14px !important;
  padding:3px 10px !important;
  line-height:1.2 !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-cash888,
.reward-priority .payout-major-card.payout-rank-1 .prize-cash-gold{
  font-size:16px !important;
  padding:4px 12px !important;
}
.reward-priority .payout-major-card .prize-product{
  font-size:inherit !important;
}
.reward-priority .payout-major-card .prize-plus{
  font-size:13px !important;
  opacity:.7 !important;
}
.reward-priority .payout-major-card .payout-stats{
  flex:0 0 auto !important;
  width:100% !important;
  margin-top:6px !important;
  padding-top:8px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:6px !important;
}
.reward-priority .payout-major-card .payout-stats span{
  min-width:0 !important;
  padding:6px 4px !important;
}
.reward-priority .payout-major-card .payout-stats b{
  font-size:12px !important;
  line-height:1.2 !important;
}
.reward-priority .payout-major-card .payout-stats small{
  font-size:9px !important;
}

@media (max-width:900px){
  .reward-priority .payout-major-grid,
  .tier-payout-layout .payout-major-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .reward-priority .payout-major-card .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-2 .payout-prize-img,
  .reward-priority .payout-major-card.payout-rank-3 .payout-prize-img{
    height:220px !important;
    min-height:220px !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{
    height:280px !important;
    min-height:280px !important;
  }
  .reward-priority .prize-stage-product img,
  .reward-priority .payout-major-card .payout-prize-img img{
    max-height:180px !important;
  }
  .reward-priority .payout-major-card.payout-rank-1 .prize-stage-product img,
  .reward-priority .payout-major-card.payout-rank-1 .payout-prize-img img{
    max-height:240px !important;
  }
  .reward-priority .payout-major-card h3,
  .reward-priority .payout-major-card .payout-prize-title{
    font-size:15px !important;
  }
}

/* v113b — force cash badge text proportional under big product image */
.reward-priority .prize-cash888,
.reward-priority .payout-major-card .prize-cash888,
.reward-priority .payout-major-card.payout-rank-1 .prize-cash888{
  margin-top:2px !important;
  padding:4px 12px 3px !important;
  gap:4px !important;
  box-shadow:0 0 12px rgba(255,190,40,.28), inset 0 1px 0 rgba(255,255,255,.15) !important;
}
.reward-priority .prize-cash888 b,
.reward-priority .payout-major-card .prize-cash888 b,
.reward-priority .payout-major-card.payout-rank-1 .prize-cash888 b{
  font-size:18px !important;
  letter-spacing:.03em !important;
  filter:drop-shadow(0 1px 4px rgba(255,190,40,.4)) !important;
}
.reward-priority .prize-cash888 small,
.reward-priority .payout-major-card .prize-cash888 small{
  font-size:10px !important;
  letter-spacing:.1em !important;
}
.reward-priority .prize-cash-gold,
.reward-priority .payout-major-card .prize-cash-gold{
  padding:3px 10px !important;
}
.reward-priority .prize-cash-gold b,
.reward-priority .payout-major-card .prize-cash-gold b{
  font-size:16px !important;
}
.reward-priority .prize-product{
  font-size:14px !important;
  line-height:1.25 !important;
}
.reward-priority .prize-plus{
  margin:0 2px !important;
  font-size:12px !important;
}


/* ===== 7 cam palette + Top1 orange premium (v160) ===== */
:root{
  --cam-1:#FFF3E6; /* kem cam nhạt */
  --cam-2:#FFD4A8; /* peach */
  --cam-3:#FFB366; /* cam sáng */
  --cam-4:#FF8A2B; /* cam chủ */
  --cam-5:#E86A12; /* cam đậm */
  --cam-6:#C24A0A; /* cam cháy */
  --cam-7:#7A2A06; /* cam nâu sâu */
}
.reward-priority .payout-major-card.payout-rank-1{
  border:1px solid rgba(255,138,43,.42) !important;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255,179,102,.18), transparent 55%),
    linear-gradient(165deg, rgba(122,42,6,.55) 0%, rgba(12,14,22,.96) 42%, rgba(8,10,16,.98) 100%) !important;
  box-shadow:
    0 0 0 1px rgba(255,211,166,.12) inset,
    0 18px 48px -20px rgba(232,106,18,.55),
    0 0 40px -12px rgba(255,138,43,.35) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-rank-badge{
  background:linear-gradient(135deg, var(--cam-3), var(--cam-5)) !important;
  border:1px solid rgba(255,211,166,.55) !important;
  color:#2a1206 !important;
  font-weight:900 !important;
  box-shadow:0 0 18px rgba(255,138,43,.45), inset 0 1px 0 rgba(255,255,255,.35) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-stage-glow{
  background:
    radial-gradient(ellipse at 50% 70%, rgba(255,179,102,.55) 0%, rgba(232,106,18,.18) 42%, transparent 72%),
    radial-gradient(ellipse at 50% 100%, rgba(255,138,43,.22) 0%, transparent 55%) !important;
  opacity:1 !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-podium-top{
  background:
    linear-gradient(180deg, rgba(255,243,230,.7) 0%, rgba(255,179,102,.4) 40%, rgba(194,74,10,.3) 100%),
    linear-gradient(90deg, var(--cam-7), var(--cam-4) 22%, var(--cam-2) 50%, var(--cam-4) 78%, var(--cam-7)) !important;
  box-shadow:0 0 0 1px rgba(255,211,166,.45), 0 0 24px rgba(255,138,43,.4), inset 0 1px 0 rgba(255,255,255,.6) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-podium-face{
  background:
    linear-gradient(180deg, rgba(255,179,102,.28), transparent 45%),
    linear-gradient(90deg, #2a1206 0%, var(--cam-6) 18%, var(--cam-4) 50%, var(--cam-6) 82%, #2a1206 100%) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-podium-base{
  background:radial-gradient(ellipse at 50% 40%, rgba(255,138,43,.55), rgba(255,138,43,.1) 55%, transparent 72%) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-label{
  color:var(--cam-3) !important;
  opacity:1 !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-product{
  color:var(--cam-1) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-cash888,
.reward-priority .payout-major-card.payout-rank-1 .prize-cash-gold{
  background:
    linear-gradient(135deg, rgba(255,179,102,.35), rgba(232,106,18,.16)),
    radial-gradient(circle at 30% 20%, rgba(255,243,230,.22), transparent 50%) !important;
  border:1px solid rgba(255,179,102,.6) !important;
  box-shadow:0 0 18px rgba(255,138,43,.4), inset 0 1px 0 rgba(255,255,255,.2) !important;
  color:var(--cam-1) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .prize-cash888 b,
.reward-priority .payout-major-card.payout-rank-1 .prize-cash-gold b{
  background:linear-gradient(180deg, var(--cam-1) 0%, var(--cam-3) 45%, var(--cam-5) 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  filter:drop-shadow(0 1px 6px rgba(255,138,43,.5)) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-stats span{
  border-color:rgba(255,138,43,.22) !important;
  background:rgba(255,138,43,.06) !important;
}
.reward-priority .payout-major-card.payout-rank-1 .payout-stats b{
  color:var(--cam-2) !important;
}

/* TOP 1: ảnh iPhone (kệ+bóng) lên trên, ô Thứ hạng/Top Profit xuống ĐÁY như TOP 2/3 (2026-07-17) */
.reward-priority .payout-major-card.payout-rank-1 .payout-rank-badge{order:0 !important}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-img{order:1 !important}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-label{order:2 !important}
.reward-priority .payout-major-card.payout-rank-1 .payout-prize-title{order:3 !important}
.reward-priority .payout-major-card.payout-rank-1 .payout-stats{order:4 !important;margin-top:auto !important}

/* ===== Hero fan (theo mau React hero-10: 3 anh xeo) ===== */
.hero-hl{color:var(--cyan);text-shadow:0 0 22px rgba(0,229,255,.4)}
.hero-social{margin-top:14px;font-size:16px;font-weight:600;color:var(--fg);letter-spacing:.02em}
.hero-social b{color:var(--txt)}
.btn-outline{background:transparent;border:1px solid var(--line-strong);color:var(--txt);padding:12px 22px;border-radius:12px;font-weight:700;cursor:pointer;transition:.18s}
.btn-outline:hover{background:var(--panel2);border-color:var(--cyan)}
.hero-fan{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0;margin:20px auto 0;max-width:560px;width:100%}
.hero-fan-card{position:relative;flex:0 0 auto;overflow:hidden;border-radius:16px;box-shadow:var(--shadow);outline:1px solid rgba(255,255,255,.1);background:#0b1220;display:flex;align-items:center;justify-content:center;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.hero-fan-card img{width:100%;height:82%;object-fit:contain;display:block;filter:drop-shadow(0 12px 30px rgba(0,0,0,.45))}
.fan-cap{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:12px;font-weight:900;letter-spacing:.04em;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.85);padding:0 6px}
.fan-cap-top{font-size:13px;color:#ffd479;text-shadow:0 0 14px rgba(255,212,121,.6),0 2px 10px rgba(0,0,0,.85)}
.fan-l{width:30%;aspect-ratio:4/5;margin-right:-18px;margin-top:30px;z-index:10;border:2.5px solid rgba(0,188,105,.6);background:linear-gradient(160deg,rgba(0,188,105,.24),rgba(11,18,32,.92))}
.fan-c{width:44%;aspect-ratio:3/4;z-index:20;border:2.5px solid rgba(255,205,90,1);background:radial-gradient(ellipse 80% 80% at 50% 40%,rgba(255,212,121,.28),rgba(11,18,32,.9));box-shadow:0 0 34px rgba(255,212,121,.45),var(--shadow)}
.fan-r{width:30%;aspect-ratio:4/5;margin-left:-18px;margin-top:30px;z-index:10;border:2.5px solid rgba(46,146,224,.6);background:linear-gradient(160deg,rgba(46,146,224,.24),rgba(11,18,32,.92))}
.hero-fan-card:hover{transform:translateY(-6px) scale(1.03);box-shadow:0 18px 40px rgba(0,0,0,.5),0 0 30px rgba(0,229,255,.3);border-color:#fff}
.fan-c:hover{box-shadow:0 0 46px rgba(255,212,121,.7),0 18px 40px rgba(0,0,0,.5)}
.hero-free-hint{margin-top:8px;font-size:13px;color:var(--dim);text-align:center}
.hero-info-box{display:flex;gap:12px;margin-top:16px}
.hero-info-item{flex:1;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px 14px;text-align:left}
.hero-info-item b{display:block;font-size:18px;font-weight:800;color:#ffd479;margin-bottom:2px}
.hero-info-item small{display:block;font-size:11px;color:var(--dim)}
.hero-countdown-bar{grid-column:1/-1;display:flex;gap:16px;align-items:stretch;margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08)}
.hero-countdown-bar .cd-wrap{flex:1}
.hero-countdown-info{display:flex;gap:12px;flex:0 0 auto}
.hero-countdown-info .hero-info-item{min-width:120px}

/* 3 badge metric ở đầu hero */
.hero-badges{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}
.hero-badge{flex:1;min-width:100px;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px 12px;text-align:center}
.hero-badge b{display:block;font-size:16px;font-weight:800;color:var(--fg);margin-bottom:2px}
.hero-badge small{display:block;font-size:11px;color:var(--dim);line-height:1.3}

@media(max-width:640px){
  .hero-badges{gap:6px;margin-bottom:14px}
  .hero-badge{min-width:0;padding:8px 6px}
  .hero-badge b{font-size:13px}
  .hero-badge small{font-size:10px}
  .hero-fan{max-width:320px;margin-top:16px;gap:0}
  .fan-l,.fan-r{width:28%}
  .fan-c{width:42%}
  .fan-l{margin-right:-12px}
  .fan-r{margin-left:-12px}
  .fan-cap{font-size:9px}
  .fan-cap-top{font-size:10px}
  .hero-free-hint{font-size:12px}
}

/* 2026-07-21: PT-HOME dùng #reward-showcase làm podium giải thưởng — phải hiện */

.hero-fan-caption{display:none}

/* ===== Mobile tinh chỉnh hero (nút nhỏ gọn, thu gọn) ===== */
@media(max-width:640px){
  .hero .actions{justify-content:center;gap:10px;margin-top:18px}
  .hero .actions .btn{padding:10px 18px;font-size:13.5px;border-radius:11px;flex:1 1 auto;max-width:46%}
  .hero-logo-title{font-size:clamp(26px,8vw,40px)!important}
  .hero-social{font-size:13px;padding:0 8px}
  .hero-fan-caption{font-size:18px;padding:0 12px}
  .hero-est{font-size:11px;letter-spacing:.08em}
  .hero-copy{gap:10px}
  .config-actions{flex-direction:column;gap:10px}
  .config-actions .btn{width:100%}
}

/* ===== Whitepaper — sang trọng, chuyên nghiệp ===== */
.wp-toc{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:22px 26px;margin-bottom:40px;backdrop-filter:blur(6px)}
.wp-toc b{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);margin-bottom:12px}
.wp-toc ol{margin:0;padding-left:20px;display:grid;grid-template-columns:1fr 1fr;gap:6px 28px}
.wp-toc a{color:var(--dim);text-decoration:none;font-size:14px;transition:.18s}
.wp-toc a:hover{color:var(--cyan)}
.wp-doc{max-width:820px;margin:0 auto}
.wp-sec{margin-bottom:38px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.07)}
.wp-sec:last-child{border-bottom:none}
.wp-sec h3{font-family:var(--font-display);font-size:clamp(20px,3vw,26px);font-weight:800;margin:0 0 14px;padding-left:14px;border-left:3px solid #ffd479;line-height:1.3;background:linear-gradient(92deg, #ffe9a8 0%, #ffd479 45%, #f0a500 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.wp-sec p{color:var(--dim);line-height:1.75;font-size:15.5px;margin:0 0 12px}
.wp-sec b{color:var(--fg);font-weight:700}
.wp-list,.wp-rules{color:var(--dim);line-height:1.7;font-size:15px;padding-left:22px;margin:0 0 12px}
.wp-list li,.wp-rules li{margin-bottom:8px}
.wp-list li::marker,.wp-rules li::marker{color:var(--cyan);font-size:.92em;font-weight:400}
.wp-toc ol li::marker{font-size:.92em;font-weight:400}
.wp-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}
.wp-card{background:linear-gradient(160deg,rgba(0,229,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px 22px}
.wp-card b{display:block;color:var(--fg);font-size:16px;margin-bottom:8px}
.wp-card p{font-size:14px;margin:0 0 8px}
.wp-note{font-size:13px;color:var(--cyan);background:rgba(0,229,255,.07);border-left:3px solid var(--cyan);padding:8px 12px;border-radius:0 8px 8px 0;margin-top:10px!important}
.wp-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
@media(max-width:640px){.wp-toc ol{grid-template-columns:1fr}.wp-cards{grid-template-columns:1fr}.wp-cta .btn{width:100%}}

/* ===== Whitepaper Minh hoạ scroll-gallery ===== */
/* Hero trophy backdrop — glowing gold cup behind title */
.hero-cup-bg{
  position:absolute;
  top:46%;
  left:50%;
  width:min(420px,72vw);
  height:min(420px,72vw);
  transform:translate(-50%,-50%);
  background:url('/assets/cup.svg') center/contain no-repeat;
  opacity:.26;
  filter:drop-shadow(0 0 60px rgba(245,197,66,.55)) drop-shadow(0 0 120px rgba(245,197,66,.25));
  z-index:1;
  pointer-events:none;
  animation:cupFloat 6s ease-in-out infinite;
}
@keyframes cupFloat{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-52%) scale(1.04)}}
@media (max-width:680px){.hero-cup-bg{width:min(300px,80vw);height:min(300px,80vw);opacity:.2}}
/* Inline broker logos inside portal buttons */
.btn-logo{width:18px;height:18px;object-fit:cover;border-radius:5px;vertical-align:middle;margin-right:7px}
.portal-btn{display:inline-flex;align-items:center;justify-content:center}
/* Fix register form layout issues */
.register-form label > span{display:block;margin-bottom:2px}
.form-grid{gap:14px 16px}
.register-copy{justify-content:flex-start}
.register-copy .register-steps{margin-bottom:6px}
.register-copy .register-actions{margin-top:auto}
.mt5-add-btn{
  margin-top:12px;
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 14px;border-radius:12px;
  border:1px dashed rgba(240,213,143,.4);
  background:rgba(240,213,143,.06);color:#f6e4ad;
  font:inherit;font-weight:800;font-size:13px;cursor:pointer;
}
.mt5-add-btn:hover{background:rgba(240,213,143,.12)}
.mt5-add-hint{
  margin:8px 0 0;color:rgba(246,242,231,.55);font-size:12px;line-height:1.45;
}
.mt5-accounts{display:grid;gap:10px}
/* MT5 dynamic rows */
.mt5-empty-hint{color:rgba(246,242,231,.5);font-size:12.5px;line-height:1.45;margin:0}
.mt5-row{display:grid;grid-template-columns:1.1fr 1fr 1.15fr 38px;gap:10px;align-items:center}
@media (max-width:720px){
  .mt5-row{grid-template-columns:1fr 38px;grid-auto-rows:auto}
  .mt5-row input[name="mt5_account"]{grid-column:1 / 2}
  .mt5-row input[name="mt5_server"]{grid-column:1 / 2}
  .mt5-row input[name="investor_password"]{grid-column:1 / 2}
  .mt5-row .mt5-del-btn{grid-column:2;grid-row:1 / span 3;align-self:stretch;height:auto}
}
.mt5-row input{width:100%;border:1px solid rgba(232,207,154,.13);border-radius:12px;background:rgba(4,4,5,.66);color:#fff;font:inherit;padding:11px 12px;outline:none}
.mt5-row input:focus{border-color:rgba(240,213,143,.5);box-shadow:0 0 0 3px rgba(240,213,143,.1)}
.mt5-del-btn{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,120,120,.3);background:rgba(255,90,90,.08);color:#ff9b9b;font-size:18px;line-height:1;cursor:pointer}
.mt5-del-btn:hover{background:rgba(255,90,90,.18)}

/* Form broker quick-open row under submit */
.form-broker-links{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:10px;
  margin-top:12px;
}
.form-broker-btn{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 12px !important;
  font-weight:800;
  white-space:nowrap;
}
.form-broker-btn .btn-logo{
  width:19px !important;
  height:19px !important;
  border-radius:5px;
  margin-right:0 !important;
}
[data-view="register"] .form-broker-links{
  margin-top:14px;
}

.mt5-server-wrap{display:grid;gap:8px;min-width:0}
.mt5-row select[name="mt5_server"],
.mt5-row .mt5-server-custom{
  width:100%;
  border:1px solid rgba(232,207,154,.13);
  border-radius:12px;
  background:rgba(4,4,5,.66);
  color:#fff;
  font:inherit;
  padding:11px 12px;
  outline:none;
}
.mt5-row select[name="mt5_server"]:focus,
.mt5-row .mt5-server-custom:focus{
  border-color:rgba(240,213,143,.5);
  box-shadow:0 0 0 3px rgba(240,213,143,.1);
}
.mt5-row select[name="mt5_server"] option{color:#111}

/* Highlight brand + broker names in register steps */
.register-steps small .hl-brand{
  color:#ffd479;
  font-weight:800;
}
.register-steps small .hl-broker{
  color:#5ed4ff;
  font-weight:800;
}
.objective-table-head .th-main{display:block;color:#fff;font-size:clamp(24px,2.35vw,32px);font-weight:900;line-height:1.08}
.objective-table-head .th-sub{display:block;margin-top:4px;color:rgba(246,242,231,.55);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.lb-ftmo-broker{display:inline-block;margin-top:3px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:800;background:rgba(0,229,255,.12);border:1px solid rgba(0,229,255,.3);color:#5ed4ff;letter-spacing:.04em}
.lb-broker-pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:800;background:rgba(0,229,255,.12);border:1px solid rgba(0,229,255,.3);color:#5ed4ff;white-space:nowrap}

@media(max-width:420px){
  .form-broker-links{grid-template-columns:1fr !important}
  .register-copy,.register-form{padding:14px !important;border-radius:14px !important}
  .register-copy h2{font-size:24px !important}
  .register-steps div{grid-template-columns:36px 1fr !important;padding:8px !important}
  .register-steps b{width:30px !important;height:30px !important;font-size:12px !important}
  .mt5-add-btn{width:100%;justify-content:center}
  .agree{font-size:11.5px !important}
}

/* === KN HERO REDESIGN FINAL 2026-07-20 === */
.hero{padding:48px 0 28px!important;background:radial-gradient(circle at 68% 38%,rgba(255,212,121,.20),transparent 34%),radial-gradient(circle at 18% 20%,rgba(0,229,255,.12),transparent 32%),#030711!important;overflow:hidden}
.hero-shell{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,520px)!important;gap:36px!important;align-items:center!important;min-height:0!important}
.hero-copy,.hero.hero-scroll-fx .hero-copy{max-width:none!important;margin:0!important;text-align:left!important}
.hero-badges{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}
.hero-badge{background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:10px 12px;text-align:center;box-shadow:0 16px 40px rgba(0,0,0,.24)}
.hero-badge b{display:block;font-size:15px;font-weight:900;color:#fff;margin-bottom:2px}.hero-badge small{display:block;font-size:11px;color:var(--dim);line-height:1.25}.hero-est{color:#ffd479!important;letter-spacing:.18em!important;margin-bottom:12px!important}
.hero h1.hero-logo-title{max-width:100%!important;font-size:clamp(40px,5.4vw,72px)!important;line-height:1.04!important;margin:0!important;letter-spacing:-.02em!important}.hero-logo-title .hero-brand-line{display:block!important;white-space:nowrap!important}.hero-logo-title .hero-challenge{display:block!important;margin-top:.18em!important;font-size:.52em!important;line-height:1.15!important;max-width:100%!important;overflow-wrap:break-word!important}.hero-logo-title .hero-hl{display:inline!important}.hero-signature{max-width:620px!important;margin:18px 0 0!important;font-size:clamp(17px,1.6vw,22px)!important;line-height:1.55!important}.hero .actions{justify-content:flex-start!important;margin-top:24px!important}.hero .actions .btn-cyan{background:linear-gradient(135deg,#ffe08a,#ffb82e)!important;color:#170f00!important;border:0!important;box-shadow:0 18px 44px rgba(255,184,46,.30)!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.hero-fan{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:16px!important;max-width:620px!important;width:100%!important;margin:0 auto!important;min-height:330px!important}.hero-fan-card{position:relative!important;overflow:visible!important;border-radius:20px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 22px 60px rgba(0,0,0,.55)!important;outline:1px solid rgba(255,255,255,.13)!important;transition:transform .22s ease,box-shadow .22s ease!important}.hero-fan-card img{border-radius:18px!important}.hero-fan-card img{width:100%!important;height:82%!important;object-fit:contain!important;filter:drop-shadow(0 16px 34px rgba(0,0,0,.5))!important}.fan-l,.fan-r{width:33.333%!important;aspect-ratio:3/4!important;z-index:1!important;margin:0!important}.fan-c{width:33.333%!important;aspect-ratio:3/4!important;z-index:2!important;margin:0!important}.fan-l{border:2px solid #cdd3da!important;background:linear-gradient(160deg,rgba(205,211,218,.26),rgba(9,22,20,.95))!important;box-shadow:0 0 30px rgba(205,211,218,.3),0 24px 64px rgba(0,0,0,.55)!important}.fan-c{border:2px solid rgba(255,212,121,.95)!important;background:radial-gradient(circle at 50% 38%,rgba(255,212,121,.34),rgba(11,18,32,.94))!important;box-shadow:0 0 44px rgba(255,212,121,.42),0 24px 64px rgba(0,0,0,.55)!important}.fan-r{border:2px solid #cd7f32!important;background:linear-gradient(160deg,rgba(205,127,50,.26),rgba(8,19,35,.95))!important;box-shadow:0 0 30px rgba(205,127,50,.3),0 24px 64px rgba(0,0,0,.55)!important}.fan-cap{position:absolute!important;left:8px!important;right:8px!important;bottom:9px!important;text-align:center!important;font-size:12px!important;font-weight:950!important;color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.9)!important}.fan-cap-top{font-size:13px!important;color:#ffd479!important}.hero-fan-caption{display:none!important}
.hero-countdown-bar{grid-column:1/-1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:16px!important;margin-top:26px!important;padding:18px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:18px!important;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.018))!important;box-shadow:0 18px 54px rgba(0,0,0,.28)!important}.hero-countdown-bar .cd-wrap{flex:0 0 auto!important;width:100%!important;max-width:520px!important;margin:0 auto!important;text-align:center!important}.hero-countdown-info{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;width:100%!important;max-width:720px!important}@media(max-width:640px){.hero-countdown-info{grid-template-columns:repeat(2,1fr)!important}}.hero-info-item{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:3px!important;background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.015))!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:12px!important;padding:12px 8px!important}.hero-info-item b{display:block;color:#fff!important;font-size:16px;font-weight:950}.hero-info-item small{display:block;color:#9fb0c2;font-size:11px}
@media(max-width:1100px){.hero-shell{grid-template-columns:1fr!important}.hero-copy{text-align:center!important}.hero-badges{max-width:620px;margin-left:auto;margin-right:auto}.hero .actions{justify-content:center!important}.hero-signature{margin-left:auto!important;margin-right:auto!important}.hero-fan{margin-top:10px!important}.hero-countdown-bar{flex-direction:column!important}}
@media(max-width:640px){.hero{padding-top:24px!important}.hero-badges{grid-template-columns:1fr 1fr 1fr!important;gap:6px!important}.hero-badge{padding:8px 6px!important;border-radius:11px!important}.hero-badge b{font-size:12px!important}.hero-badge small{font-size:9.5px!important}.hero h1.hero-logo-title{font-size:clamp(30px,9vw,42px)!important;line-height:1.08!important}.hero-logo-title .hero-brand-line{white-space:normal!important}.hero-logo-title .hero-challenge{font-size:.55em!important}.hero-fan{max-width:360px!important;min-height:230px!important;gap:10px!important}.fan-l,.fan-r{width:33.333%!important;margin:0!important}.fan-c{width:33.333%!important;margin:0!important}.fan-cap{font-size:9px!important}.fan-cap-top{font-size:10px!important}.hero-countdown-info{grid-template-columns:repeat(2,1fr)!important;flex-direction:row!important}.hero-info-item{min-width:0;flex:initial}.hero-countdown-bar{padding:10px!important}}

/* === KN HERO MOBILE COUNTDOWN FIT 2026-07-20 === */
@media(max-width:640px){
  .hero-countdown-info{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;min-width:0!important;gap:8px!important}
  .hero-countdown-info .hero-info-item{min-width:0!important;width:auto!important;box-sizing:border-box!important;padding:9px 10px!important}
  .hero-info-item b{font-size:15px!important}
  .hero-info-item small{font-size:10px!important;line-height:1.25!important}
}

/* === KN HERO MOBILE COUNTDOWN CLEAN 2026-07-20 === */
@media(max-width:640px){
  .hero-countdown-bar{box-sizing:border-box!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
  .hero-countdown-info{box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:8px!important;overflow:hidden!important}
  .hero-countdown-info .hero-info-item{box-sizing:border-box!important;min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;padding:8px 8px!important}
  .hero-countdown-info .hero-info-item b,
  .hero-countdown-info .hero-info-item small{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .hero-countdown-info .hero-info-item b{font-size:14px!important}
  .hero-countdown-info .hero-info-item small{font-size:9.5px!important;line-height:1.2!important}
}

/* === KN HERO TEXT WIDTH FIX 2026-07-20 === */
.hero h1.hero-logo-title,
.hero-copy .hero-logo-title{
  inline-size:100%!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.hero-logo-title .hero-brand-line,
.hero-logo-title .hero-challenge,
.hero-logo-title .hero-hl{
  inline-size:auto!important;
  width:auto!important;
  max-width:100%!important;
}
.hero-copy .hero-signature,
.hero-signature{
  inline-size:100%!important;
  width:100%!important;
  max-width:620px!important;
  min-width:0!important;
}
@media(max-width:640px){
  .hero-copy .hero-signature,
  .hero-signature{max-width:100%!important}
}

/* === KN HERO COPY FLOW FIX 2026-07-20 === */
.hero-copy,
.hero.hero-scroll-fx .hero-copy{
  display:block!important;
  grid-template-columns:none!important;
  grid-template-areas:none!important;
  row-gap:0!important;
  column-gap:0!important;
}
.hero-copy .hero-badges,
.hero-copy .hero-est,
.hero-copy .hero-logo-title,
.hero-copy .hero-signature,
.hero-copy .actions,
.hero-copy .hero-social{
  grid-area:auto!important;
}
.hero-copy .hero-logo-title,
.hero-copy .hero-signature{
  width:100%!important;
  inline-size:100%!important;
}

/* === KN HERO TITLE GAP FIX 2026-07-20 === */
.hero-copy .hero-logo-title{margin-bottom:18px!important}
.hero-copy .hero-signature{margin-top:0!important}
@media(max-width:640px){.hero-copy .hero-logo-title{margin-bottom:12px!important}}

/* === KN HERO BADGES BELOW COUNTDOWN 2026-07-20 === */
.hero-badges{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:20px 0 0!important;max-width:none!important}
@media(max-width:640px){.hero-badges{gap:6px!important;margin-top:14px!important}.hero-badge{padding:8px 6px!important}.hero-badge b{font-size:12px!important}.hero-badge small{font-size:9.5px!important}}

/* === KN HERO VERTICAL LAYOUT 2026-07-20 === */
.hero-shell{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:none!important;
  gap:24px!important;
  align-items:stretch!important;
  text-align:center!important;
  max-width:900px!important;
}
.hero-copy,.hero.hero-scroll-fx .hero-copy{
  display:block!important;
  text-align:center!important;
  max-width:none!important;
  margin:0 auto!important;
  width:100%!important;
}
.hero-copy .hero-logo-title,
.hero-copy .hero-signature,
.hero-copy .hero-est,
.hero-copy .actions{
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-copy .actions{
  justify-content:center!important;
}
.hero-fan{
  margin:0 auto!important;
  max-width:520px!important;
}
.hero-countdown-bar{
  grid-column:auto!important;
  max-width:900px!important;
  margin:0 auto!important;
  width:100%!important;
}
.hero-badges{
  max-width:900px!important;
  margin:0 auto!important;
  width:100%!important;
}
@media(max-width:640px){
  .hero-shell{gap:18px!important}
  .hero-fan{max-width:340px!important}
}

/* === KN HERO TITLE CENTER BIG 2026-07-20 === */
.hero-copy{
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
.hero-copy .hero-est{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero h1.hero-logo-title,
.hero-copy .hero-logo-title{
  text-align:center!important;
  inline-size:100%!important;
  width:100%!important;
  max-width:100%!important;
  font-size:clamp(48px,8vw,96px)!important;
  line-height:1.06!important;
  margin:0 auto 14px!important;
  letter-spacing:-.02em!important;
}
.hero-logo-title .hero-brand-line{
  display:block!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.hero-logo-title .hero-challenge{
  display:block!important;
  text-align:center!important;
  font-size:.42em!important;
  line-height:1.18!important;
  margin-top:.2em!important;
}
.hero-copy .hero-signature{
  text-align:center!important;
  inline-size:100%!important;
  width:100%!important;
  max-width:680px!important;
  margin:0 auto!important;
  font-size:clamp(20px,2vw,26px)!important;
  line-height:1.5!important;
}
.hero-copy .actions{
  justify-content:center!important;
  margin-top:20px!important;
}
@media(max-width:640px){
  .hero h1.hero-logo-title,
  .hero-copy .hero-logo-title{
    font-size:clamp(32px,11vw,48px)!important;
    line-height:1.08!important;
  }
  .hero-logo-title .hero-brand-line{
    white-space:normal!important;
  }
  .hero-logo-title .hero-challenge{
    font-size:.5em!important;
  }
  .hero-copy .hero-signature{
    font-size:clamp(16px,4.5vw,20px)!important;
    max-width:100%!important;
  }
}

/* === KN HERO TITLE OVERRIDE FINAL 2026-07-20 === */
.hero .hero-copy .hero-logo-title,
.hero h1.hero-logo-title,
.hero-copy h1.hero-logo-title{
  inline-size:100%!important;
  width:100%!important;
  max-width:100%!important;
  font-size:clamp(48px,8vw,96px)!important;
  line-height:1.06!important;
  text-align:center!important;
  margin:0 auto 14px!important;
}
.hero .hero-copy .hero-signature,
.hero-copy .hero-signature,
.hero-signature{
  inline-size:100%!important;
  width:100%!important;
  max-width:680px!important;
  font-size:clamp(20px,2vw,26px)!important;
  line-height:1.5!important;
  text-align:center!important;
  margin:0 auto!important;
}
@media(max-width:640px){
  .hero .hero-copy .hero-logo-title,
  .hero h1.hero-logo-title{
    font-size:clamp(32px,11vw,48px)!important;
  }
  .hero .hero-copy .hero-signature,
  .hero-signature{
    font-size:clamp(16px,4.5vw,20px)!important;
    max-width:100%!important;
  }
}

/* === KN HERO MOBILE BTN CENTER 2026-07-20 === */
@media(max-width:640px){
  .hero .actions,
  .hero-copy .actions{
    display:flex!important;
    justify-content:center!important;
    width:100%!important;
  }
  .hero .actions .btn,
  .hero-copy .actions .btn{
    width:auto!important;
    min-width:240px!important;
    max-width:90%!important;
    margin:0 auto!important;
  }
}

/* ===/* === KN HERO FAN CENTER BIG 2026-07-20 === */
.hero-fan{align-items:flex-end!important;min-height:400px!important;gap:14px!important;max-width:640px!important;margin-top:70px!important}
.hero-fan-card{border-radius:18px!important}
.fan-l,.fan-r{width:28%!important;aspect-ratio:3/4.2!important;margin:0!important}
.fan-c{width:38%!important;aspect-ratio:3/4.6!important;margin:0!important}
@media(max-width:640px){
  .hero-fan{min-height:250px!important;gap:7px!important;max-width:100%!important;margin-top:46px!important}
  .fan-l,.fan-r{width:29%!important;aspect-ratio:3/4.2!important}
  .fan-c{width:38%!important;aspect-ratio:3/4.6!important}
}

/* === KN HERO MEDAL IMG 2026-07-20 === */
.hero-fan-card .fan-medal{
  position:absolute!important;z-index:6;
  top:-66px!important;left:50%!important;transform:translateX(-50%)!important;
  width:60px!important;height:60px!important;object-fit:contain!important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.6));
  pointer-events:none;
}
.hero-fan-card.fan-c .fan-medal{
  width:80px!important;height:80px!important;top:-88px!important;
}
@media(max-width:640px){
  .hero-fan-card .fan-medal{width:46px!important;height:46px!important;top:-52px!important}
  .hero-fan-card.fan-c .fan-medal{width:60px!important;height:60px!important;top:-66px!important}
}/* === KN REGISTER BROKER ROW 2026-07-20 === */
.register-broker-row{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:16px 0 4px!important}
.register-broker-row .reg-broker-btn{flex:1 1 calc(50% - 10px)!important;justify-content:center!important;min-width:150px;padding:11px 12px!important}
@media(max-width:640px){
  .register-broker-row{gap:8px!important}
  .register-broker-row .reg-broker-btn{flex:1 1 100%!important}
}

/* === KN HERO TOP10 LIVELY 2026-07-20 === */
.hero-top10{width:100%!important;max-width:640px!important;margin:30px auto 0!important;text-align:center!important}
.top10-head{display:flex!important;flex-direction:column!important;align-items:center!important;gap:3px;margin-bottom:16px}
.top10-title{font-size:13px!important;font-weight:900!important;letter-spacing:.28em!important;color:#ffd479!important;
  padding:6px 16px;border:1px solid rgba(255,212,121,.3)!important;border-radius:99px!important;background:rgba(255,212,121,.06)!important}
.top10-sub{font-size:12.5px!important;color:#9fb0c2!important;letter-spacing:.02em}
.top10-grid{display:flex!important;flex-direction:column!important;align-items:center!important;gap:16px!important}
.top10-lead{
  position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px;
  width:min(320px,80%)!important;padding:18px 16px!important;overflow:hidden!important;
  background:radial-gradient(120% 120% at 50% 0%,rgba(255,212,121,.2),rgba(255,255,255,.02) 70%)!important;
  border:1.5px solid rgba(255,212,121,.55)!important;border-radius:16px!important;
  box-shadow:0 12px 30px rgba(255,212,121,.2);
}
.top10-lead .medal-wrap.gold{color:#e8a317}
.top10-lead .rname{font-size:24px!important;font-weight:900!important;letter-spacing:.02em;
  background:linear-gradient(180deg,#fff,#ffd479);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.top10-lead .rmoney{font-size:13px!important;font-weight:800!important;color:#ffd479!important}
.medal-wrap{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center;width:40px!important;height:44px!important}
.medal-wrap .rmedal{width:40px!important;height:44px!important;display:block;filter:drop-shadow(0 3px 6px rgba(0,0,0,.4))}
.medal-wrap.gold{color:#e8a317}
.medal-wrap.silver{color:#9aa6b4}
.medal-wrap.bronze{color:#a9651f}
.medal-wrap b{position:absolute!important;top:42%!important;left:50%!important;transform:translate(-50%,-50%)!important;
  font-size:15px!important;font-weight:900!important;color:#1a1206!important;font-family:Arial,Helvetica,sans-serif;line-height:1}
.medal-wrap.gold b,.medal-wrap.silver b{color:#1a1206}
.top10-rest{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;width:100%!important;max-width:520px!important}
.top10-col{display:flex!important;flex-direction:column!important;gap:10px!important}
.top10-cell{
  position:relative!important;overflow:hidden!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px;
  padding:11px 14px!important;border-radius:12px!important;
  background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.09)!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.top10-cell .rname{font-size:17px!important;font-weight:900!important;color:#fff!important;letter-spacing:.02em}
.top10-silver .top10-cell{background:linear-gradient(160deg,rgba(205,211,218,.1),rgba(255,255,255,.02))!important;border-color:rgba(205,211,218,.25)!important}
.top10-bronze .top10-cell{background:linear-gradient(160deg,rgba(205,127,50,.1),rgba(255,255,255,.02))!important;border-color:rgba(205,127,50,.28)!important}
.top10-silver .top10-cell .rname{color:#e6eaf0}
.top10-bronze .top10-cell .rname{color:#f0d9c0}
.top10-cell::after{content:""!important;position:absolute!important;top:0;left:-60%;width:40%!important;height:100%!important;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent)!important;transform:skewX(-20deg);transition:left .5s ease}
.top10-cell:hover{transform:translateY(-4px) scale(1.02)!important;border-color:#ffd479!important;
  background:rgba(255,212,121,.1)!important;box-shadow:0 10px 24px rgba(255,212,121,.18)}
.top10-cell:hover::after{left:120%!important}
.top10-note{
  margin:20px auto 0!important;max-width:560px!important;text-align:center!important;
  padding:15px 18px!important;font-size:13.5px!important;line-height:1.6!important;color:#d7dee8!important;
  background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.015))!important;
  border:1px solid rgba(255,212,121,.35)!important;border-left:3px solid #ffd479!important;border-radius:12px!important;
}
.top10-note .top10-note-hl{display:inline-block;margin-right:4px;font-weight:900;font-size:14.5px;letter-spacing:.03em;
  background:linear-gradient(180deg,#ffe9a8,#ffce4d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.top10-note b{color:#ffd479;font-weight:800}
@media(max-width:640px){
  .hero-top10{max-width:100%!important;margin-top:22px!important}
  .top10-title{font-size:11px!important;letter-spacing:.2em}
  .top10-sub{font-size:11px!important}
  .top10-lead{width:88%!important;padding:15px 12px!important}
  .top10-lead .rname{font-size:20px!important}
  .top10-rest{gap:8px!important;max-width:100%!important}
  .top10-col{gap:7px!important}
  .top10-cell{padding:9px 10px!important;gap:8px}
  .medal-wrap{width:34px!important;height:38px!important}
  .medal-wrap .rmedal{width:34px!important;height:38px!important}
  .medal-wrap b{font-size:13px!important}
  .top10-cell .rname{font-size:14px!important}
  .top10-note{font-size:12px!important;padding:13px 14px!important}
  .top10-note .top10-note-hl{font-size:13px!important}
}

/* === KN HERO LIVELY (framer-style) 2026-07-20 === */
.hero{position:relative!important;overflow:hidden!important}
.hero-orbs{position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none;overflow:hidden}
.hero-orbs .orb{position:absolute!important;border-radius:50%!important;filter:blur(46px);opacity:.5;animation:orbFloat 7s ease-in-out infinite}
.hero-orbs .orb-1{width:220px;height:220px;background:radial-gradient(circle,#ffd479,transparent 70%);top:6%;left:8%;animation-delay:0s}
.hero-orbs .orb-2{width:180px;height:180px;background:radial-gradient(circle,#3aa0ff,transparent 70%);top:18%;right:10%;animation-delay:1.2s}
.hero-orbs .orb-3{width:160px;height:160px;background:radial-gradient(circle,#ff7ac0,transparent 70%);bottom:12%;left:16%;animation-delay:2.4s}
.hero-orbs .orb-4{width:140px;height:140px;background:radial-gradient(circle,#5ee0c0,transparent 70%);bottom:8%;right:18%;animation-delay:3.1s}
@keyframes orbFloat{0%,100%{transform:translateY(0) translateX(0) scale(1)}50%{transform:translateY(-22px) translateX(10px) scale(1.08)}}
.hero-shell{position:relative!important;z-index:1!important}
/* entrance stagger */
@keyframes heroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.hero-copy,.hero-fan,.hero-top10,.hero-countdown-bar,.hero-badges{animation:heroIn .6s ease both}
.hero-copy{animation-delay:.05s}
.hero-fan{animation-delay:.22s}
.hero-top10{animation-delay:.38s}
.hero-countdown-bar{animation-delay:.52s}
.hero-badges{animation-delay:.62s}
/* floaty medals + top4 */
.top10-lead{animation:medalFloat 4s ease-in-out infinite}
@keyframes medalFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.top10-cell{animation:hoverLift .4s ease}
@media (prefers-reduced-motion: reduce){
  .hero-orbs,.top10-lead{animation:none!important}
  .hero-copy,.hero-fan,.hero-top10,.hero-countdown-bar,.hero-badges{animation:none!important}
}

/* === KN TOP STRIP (exness-style) 2026-07-20 === */
.top-strip{display:block!important;width:100%;background:#070b14!important;border-bottom:1px solid rgba(255,255,255,.06);font-family:inherit}
.top-strip .wrap{max-width:1200px;margin:0 auto;padding:0 22px}
.top-strip-inner{display:flex!important;align-items:center;justify-content:space-between;gap:18px;height:46px!important;font-size:14px!important;line-height:1;color:#9aa4b4!important}
.top-strip-brand{display:flex;align-items:center;gap:8px;font-size:14px;color:#b6bdc9}
.top-strip-brand b{color:#ffd479;font-weight:800;letter-spacing:.02em}
.top-strip-status{display:flex;align-items:center;gap:8px;font-size:14px;color:#cfd6e2}
.top-strip-status .dot{width:9px;height:9px;border-radius:50%;background:#3ddc84;box-shadow:0 0 8px rgba(61,220,132,.8);animation:pulseDot 1.6s ease-in-out infinite}
@keyframes pulseDot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}
.top-strip-link{margin-left:auto;color:#9aa4b4;text-decoration:none;font-size:14px;transition:color .15s}
.top-strip-link:hover{color:#fff}
@media(max-width:640px){
  .top-strip-inner{height:38px!important;font-size:12px;gap:10px}
  .top-strip-brand{font-size:12px}
  .top-strip-status{font-size:12px}
}

/* === KN BTN EMOJI 2026-07-20 === */
.btn-emoji{display:inline-block;font-size:16px;line-height:1;margin-right:6px;vertical-align:-1px}

/* === KN TOP STRIP TIME PILL 2026-07-20 === */
.top-strip-time{display:inline-flex!important;align-items:center;gap:5px;padding:5px 11px!important;border-radius:99px!important;
  font-size:13px!important;font-weight:800!important;color:#ffd479!important;
  background:rgba(255,212,121,.1)!important;border:1px solid rgba(255,212,121,.32)!important;white-space:nowrap}
@media(max-width:640px){
  .top-strip-time{font-size:11px!important;padding:4px 8px!important}
}

/* === KN NAV SUB (mobile, under brand) 2026-07-20 === */
.nav-sub{display:none!important}
@media(max-width:880px){
  .top-strip{display:none!important}
  .nav-sub{display:flex!important;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px;line-height:1.2;color:#aeb6c2;width:100%}
  .nav-sub-dot{width:7px;height:7px;border-radius:50%;background:#3ddc84;box-shadow:0 0 8px rgba(61,220,132,.8);animation:pulseDot 1.6s ease-in-out infinite}
  .nav-sub-status{color:#cfd6e2}
  .nav-sub-time{color:#ffd479;font-weight:800}
}

/* === KN PORTAL PRIMARY ROW 2026-07-20 === */
.portal-primary{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center;align-items:center;gap:14px;margin:0 auto 16px;max-width:620px}
.portal-primary .portal-btn{flex:1 1 0;min-width:0;justify-content:center}
.portal-grid.tele-box-actions{display:grid!important;grid-template-columns:repeat(4,1fr);gap:12px;max-width:720px;margin:0 auto;align-items:stretch}
.portal-grid.tele-box-actions .portal-btn{justify-content:center;align-items:center;height:44px}
@media(max-width:640px){
  .portal-grid.tele-box-actions{grid-template-columns:repeat(2,1fr)}
  .portal-primary .portal-btn{flex:1 1 100%;max-width:none}
}

/* === KN MT5 ACCOUNT ROW 2026-07-20 === */
.mt5-account-row{display:flex!important;align-items:flex-end!important;gap:10px!important;flex-wrap:wrap!important;margin-bottom:12px!important;padding:12px!important;background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:12px!important}
.mt5-account-row .mt5-field-broker{flex:0 0 140px!important;min-width:130px!important}
.mt5-account-row .mt5-field-login{flex:1 1 180px!important;min-width:160px!important}
.mt5-account-row .mt5-field-server{flex:1 1 200px!important;min-width:180px!important}
.mt5-account-row .mt5-field-pass{flex:1 1 200px!important;min-width:180px!important}
.mt5-account-row select,.mt5-account-row input{width:100%!important;padding:10px 12px!important;font-size:14px!important;background:rgba(10,14,20,.8)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:8px!important;color:#fff!important;outline:none}
.mt5-account-row select:focus,.mt5-account-row input:focus{border-color:#3ad1ff!important;box-shadow:0 0 0 3px rgba(58,209,255,.15)!important}
@media(max-width:640px){
  .mt5-account-row{flex-direction:column!important;align-items:stretch!important}
  .mt5-account-row .mt5-field-broker,.mt5-account-row .mt5-field-login,.mt5-account-row .mt5-field-server,.mt5-account-row .mt5-field-pass{flex:none!important;width:100%!important;min-width:0!important}
}

/* === KN LEADERBOARD ENHANCED 2026-07-20 === */
.lb-profit-usd{font-size:18px!important;font-weight:700!important;color:#ffd479!important;line-height:1.2}
/* (11/08) nhan cho o dem ngay lai — truoc day o nay tran, khong ai biet la gi */
.lb-progress-wrap{display:inline-flex;flex-direction:column;align-items:center;gap:2px;vertical-align:middle}
.lb-progress-nhan{font-size:10px;letter-spacing:.3px;text-transform:uppercase;color:rgba(233,235,238,.55);white-space:nowrap;font-weight:600}
.lb-progress-wrap .lb-progress-check{margin-left:0}
.lb-progress-hang{display:inline-flex;align-items:center;gap:4px}
.lb-progress-days{display:inline-block;background:rgba(255,255,255,.08)!important;border-radius:6px;padding:2px 8px;font-size:13px!important;font-weight:600}
.lb-progress-check{font-size:16px!important;margin-left:6px}
.lb-ftmo-progress-days.is-complete .lb-progress-days{color:#22c55e}
.lb-ftmo-stats span small{color:#888!important;font-size:11px!important}
.lb-ftmo-stats{break-inside:avoid}

/* ============================================================
   PT-HOME — Landing "Prestige Trade" (2026-07-21)
   Bố cục theo stitch_kn_invest_trading_challenge_landing_page
   Scope: chỉ dùng class tiền tố .pt- (không đụng style cũ)
   ============================================================ */
.pt-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.pt-wrap-narrow{max-width:1000px}
.pt-sec{padding:56px 0}
.pt-center{text-align:center;margin-top:30px}
.pt-glass{background:rgba(18,33,49,.72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(212,175,55,.22);border-radius:14px}
.pt-gold-text{background:linear-gradient(135deg,#ffe088 0%,#d4af37 50%,#b4941f 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f2ca50}
.pt-gold{color:#f2ca50}
.pt-green{color:#10b981}
.pt-h2{font-family:"Montserrat",var(--font-display)!important;font-size:clamp(22px,3.4vw,32px);font-weight:800;letter-spacing:.02em;color:#eef5ff;text-transform:uppercase;margin:0;text-align:center}
.pt-h2-bar{width:96px;height:3px;margin:14px auto 30px;background:linear-gradient(90deg,#ffe088,#d4af37);border-radius:99px}
.pt-num{font-family:"JetBrains Mono","Consolas",monospace}
.pt-up{color:#10b981}.pt-down{color:#ef4444}.pt-dd{color:#fbbf24}

/* Hero */
.pt-hero{position:relative;padding:72px 0 52px;text-align:center;background:radial-gradient(circle at 50% 16%,rgba(212,175,55,.10) 0%,transparent 62%)}
.pt-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border-radius:999px;border:1px solid rgba(242,202,80,.38);background:rgba(18,33,49,.7);color:#f2ca50;font-family:"Montserrat",var(--font-display);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px}
.pt-title{font-family:"Montserrat",var(--font-display)!important;font-weight:800;font-size:clamp(32px,5.6vw,58px);line-height:1.08;margin:0 0 14px;letter-spacing:-.01em}
/* Hero title "ĐẤU TRƯỜNG TRADING" — phóng to + gradient VÀNG→BẠC trái→phải */
.pt-title-arena{font-size:clamp(40px,7.4vw,82px)!important;font-weight:900!important;letter-spacing:.005em;line-height:1.04;margin:6px 0 16px}
.pt-metal{
  background:linear-gradient(90deg,
    #f6d165 0%, #ecc255 18%, #e8b84b 32%,
    #d8cba4 50%,
    #c6cbd2 68%, #d8dce2 84%, #f3f5f8 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
  filter:drop-shadow(0 2px 10px rgba(232,184,75,.18)) drop-shadow(0 1px 18px rgba(216,220,226,.12));
}
.pt-hero-sub{color:#c8d5e8;font-size:clamp(14px,2vw,19px);max-width:760px;margin:0 auto 32px;line-height:1.6}
.pt-cd-label{font-family:"Montserrat",var(--font-display);font-size:13px;font-weight:800;letter-spacing:.18em;color:#9fb3c8;text-transform:uppercase;margin-bottom:14px}
.pt-countdown{display:flex;justify-content:center;align-items:stretch;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.pt-cd-box{min-width:86px;padding:14px 10px;text-align:center}
.pt-cd-num{font-family:"JetBrains Mono","Consolas",monospace;font-size:clamp(28px,4.4vw,40px);font-weight:700;color:#f2ca50;text-shadow:0 0 24px rgba(212,175,55,.35);line-height:1}
.pt-cd-unit{margin-top:6px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9fb3c8}
.pt-cd-sep{font-size:30px;color:rgba(242,202,80,.35);align-self:center;font-family:"JetBrains Mono",monospace}
.pt-cd-end{font-family:"JetBrains Mono","Consolas",monospace;color:#9fb3c8;font-size:13px;margin-bottom:30px}
.pt-hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:26px;padding-top:22px;border-top:1px solid rgba(242,202,80,.18)}
.pt-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 30px;border-radius:10px;border:0;cursor:pointer;font-family:"Montserrat",var(--font-display);font-size:15px;font-weight:800;letter-spacing:.04em;transition:transform .15s,box-shadow .2s,filter .2s}
.pt-btn:active{transform:scale(.96)}
.pt-btn-gold{background:linear-gradient(135deg,#ffe088,#d4af37);color:#241a00;box-shadow:0 0 26px rgba(212,175,55,.28)}
.pt-btn-gold:hover{filter:brightness(1.08);box-shadow:0 0 36px rgba(212,175,55,.4)}
.pt-btn-ghost{background:rgba(18,33,49,.72);border:1px solid rgba(242,202,80,.4);color:#f2ca50}
.pt-btn-ghost:hover{background:rgba(242,202,80,.08)}
.pt-btn-xl{padding:19px 44px;font-size:17px}
.pt-hero-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.pt-chip{padding:7px 14px;border-radius:999px;background:rgba(18,33,49,.6);border:1px solid rgba(255,255,255,.1);color:#c8d5e8;font-size:12.5px;font-weight:600}

/* Prize podium */
.pt-podium{display:grid;grid-template-columns:1fr 1.18fr 1fr;gap:22px;align-items:end;margin:8px 0 22px}
.pt-prize-card{padding:26px 20px 22px;text-align:center;position:relative;transition:border-color .25s,box-shadow .25s}
.pt-prize-card:hover{border-color:rgba(242,202,80,.5)}
.pt-prize-top1{border-color:rgba(242,202,80,.6);box-shadow:0 0 34px rgba(212,175,55,.18);background:linear-gradient(180deg,rgba(28,43,60,.92),rgba(5,7,10,.94));padding-top:34px}
.pt-champ-chip{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#ffe088,#d4af37);color:#241a00;font-family:"Montserrat",var(--font-display);font-weight:800;font-size:12px;letter-spacing:.12em;padding:5px 18px;border-radius:999px;white-space:nowrap}
.pt-prize-medal{height:52px;width:auto;margin-bottom:10px}
.pt-prize-crown{height:58px}
.pt-prize-rank{font-family:"Montserrat",var(--font-display);font-size:22px;font-weight:800;letter-spacing:.06em;color:#eef5ff;margin-bottom:4px}
.pt-prize-top1 .pt-prize-rank{font-size:28px}
.pt-prize-val{font-family:"JetBrains Mono","Consolas",monospace;color:#f2ca50;font-size:15px;font-weight:700;margin-bottom:14px;line-height:1.45}
.pt-prize-top1 .pt-prize-val{font-size:17px}
.pt-prize-img{max-height:110px;width:auto;max-width:88%;margin:0 auto 14px;display:block}
.pt-prize-img-top1{max-height:170px}
.pt-prize-perks{list-style:none;margin:0 0 14px;padding:0;color:#c8d5e8;font-size:13.5px;line-height:1.8}
.pt-prize-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.pt-prize-bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#ffe088,#d4af37);animation:ptPulse 1.8s ease-in-out infinite}
.pt-bar-silver i{background:linear-gradient(90deg,#e2e8f0,#94a3b8)}
.pt-bar-bronze i{background:linear-gradient(90deg,#fbbf77,#c2703d)}
@keyframes ptPulse{0%,100%{opacity:1}50%{opacity:.5}}
.pt-lower{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pt-lower-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px}
.pt-lower-green{border-color:rgba(16,185,129,.38)}
.pt-lower-title{display:block;font-family:"Montserrat",var(--font-display);font-size:16px;font-weight:800;color:#eef5ff;margin-bottom:4px}
.pt-lower-txt p{margin:0;color:#9fb3c8;font-size:13.5px;line-height:1.5}
.pt-lower-val{font-family:"JetBrains Mono","Consolas",monospace;color:#f2ca50;font-size:20px;font-weight:700;white-space:nowrap}
.pt-lower-check{color:#10b981;font-size:24px;font-weight:800}

/* BXH */
.pt-bxh-panel{padding:10px 18px 16px;overflow-x:auto}
.pt-bxh-table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.pt-bxh-table th{font-family:"Montserrat",var(--font-display);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#9fb3c8;text-align:left;padding:12px 10px;border-bottom:1px solid rgba(212,175,55,.25)}
.pt-bxh-table td{padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.06);color:#dbe7f3;vertical-align:middle}
.pt-bxh-table tr:last-child td{border-bottom:0}
.pt-bxh-name{font-weight:700}
.pt-rankchip{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;font-family:"JetBrains Mono",monospace;font-weight:700;font-size:13px;background:rgba(255,255,255,.08);color:#c8d5e8}
.pt-rank-1{background:rgba(242,202,80,.2);color:#ffe088;border:1px solid rgba(242,202,80,.5)}
.pt-rank-2{background:rgba(226,232,240,.14);color:#e2e8f0;border:1px solid rgba(226,232,240,.35)}
.pt-rank-3{background:rgba(194,112,61,.18);color:#fbbf77;border:1px solid rgba(194,112,61,.45)}
.pt-bxh-empty{text-align:center;color:#9fb3c8;padding:26px 10px!important}
.pt-bxh-note{margin-top:10px;text-align:right;color:#9fb3c8;font-size:12.5px}
.pt-bxh-note a{color:#f2ca50;font-weight:700}

/* Điều kiện */
.pt-cond-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pt-cond-card{padding:24px 22px;text-align:center}
.pt-cond-ic{width:56px;height:56px;margin:0 auto 14px;display:grid;place-items:center;font-size:26px;border-radius:14px;background:rgba(242,202,80,.1);border:1px solid rgba(242,202,80,.3)}
.pt-cond-card>b{display:block;font-family:"Montserrat",var(--font-display);font-size:16px;font-weight:800;color:#eef5ff;margin-bottom:8px}
.pt-cond-card p{margin:0;color:#9fb3c8;font-size:13.5px;line-height:1.6}
.pt-brokers{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:14px}
.pt-broker-item{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;background:rgba(255,255,255,.035);border:1px solid rgba(212,212,212,.14);color:#e9ebee;font-size:13px;font-weight:800}
.pt-broker-item img{width:22px;height:22px;object-fit:cover;border-radius:6px}

/* Luật chơi */
.pt-fair-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pt-fair-card{display:flex;gap:15px;align-items:center;padding:18px 20px;border-radius:18px}
.pt-fair-ic{flex:0 0 46px;height:46px;display:grid;place-items:center;font-size:22px;border-radius:14px;background:rgba(242,202,80,.1);border:1px solid rgba(242,202,80,.3)}
.pt-fair-txt > b{display:block;font-family:"Montserrat",var(--font-display);font-size:15.5px;font-weight:800;color:#eef5ff;margin-bottom:5px}
.pt-fair-txt p{margin:0;color:#9fb3c8;font-size:13px;line-height:1.62}
.pt-fair-txt p b{display:inline;font-family:inherit;font-size:inherit;font-weight:800;color:#f5dd9a;margin:0}

/* Quy trình */
.pt-steps-row{position:relative;display:flex;justify-content:space-between;gap:14px;margin:16px 0 8px}
.pt-steps-line{position:absolute;top:36px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,rgba(242,202,80,.45),rgba(242,202,80,.12));z-index:0}
.pt-step{position:relative;z-index:1;flex:1;text-align:center;padding:0 6px}
.pt-step-dot{width:72px;height:72px;margin:0 auto 14px;display:grid;place-items:center;font-size:28px;border-radius:999px;border:2px solid rgba(242,202,80,.55);box-shadow:0 0 22px rgba(212,175,55,.2);transition:transform .2s}
.pt-step:hover .pt-step-dot{transform:scale(1.08)}
.pt-step b{display:block;font-family:"Montserrat",var(--font-display);font-size:14.5px;font-weight:800;color:#eef5ff;margin-bottom:5px}
.pt-step p{margin:0;color:#9fb3c8;font-size:12.5px;line-height:1.5}
.pt-portal{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
.pt-portal-btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:10px;color:#dbe7f3;font-size:13.5px;font-weight:700;text-decoration:none;transition:border-color .2s,background .2s}
.pt-portal-btn:hover{border-color:rgba(242,202,80,.5);background:rgba(242,202,80,.07)}
.pt-portal-btn img{width:18px;height:18px;object-fit:cover;border-radius:5px}

/* FAQ + risk */
.pt-faq .faq{margin-bottom:10px}
.pt-risk{border-top:1px solid rgba(212,175,55,.18);background:rgba(5,7,10,.6);padding:18px 0;margin-top:20px;color:#8fa3b8;font-size:11.5px;letter-spacing:.04em;line-height:1.7;text-align:center;text-transform:uppercase}
.pt-risk b{color:#fbbf24}

/* Responsive */
@media(max-width:900px){
  .pt-podium{grid-template-columns:1fr;align-items:stretch}
  .pt-prize-top1{order:-1}
  .pt-lower{grid-template-columns:1fr}
  .pt-cond-grid{grid-template-columns:1fr}
  .pt-fair-grid{grid-template-columns:1fr}
  .pt-steps-row{flex-direction:column;gap:26px}
  .pt-steps-line{display:none}
  .pt-cd-box{min-width:72px;padding:12px 8px}
  .pt-hero{padding-top:48px}
}

/* ============================================================
   PT-HOME — re-scope BXH sang #home-board (2026-07-21)
   (style gốc scope [data-view="leaderboard"] đã chết khi bảng
    chuyển vào home — khôi phục đúng giao diện chip/control)
   ============================================================ */
#home-board .leaderboard-control-row{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap;margin:10px auto 6px}
#home-board .leaderboard-control-row .chips{margin:0;max-width:none}
#home-board .chip{border-radius:4px;padding:14px 16px;background:transparent;border-color:transparent;color:#aeb5c2;font-size:13px}
#home-board .chip.on{color:#1a8cff;background:rgba(255,255,255,.015);border:1px solid rgba(255,255,255,.88);box-shadow:none}

/* ============================================================
   PT-HOME — MOBILE COMPACT (≤640px): thu nhỏ card/ô toàn trang
   ============================================================ */
@media(max-width:640px){
  .pt-sec{padding:30px 0}
  .pt-wrap{padding:0 14px}
  .pt-h2{font-size:19px}
  .pt-h2-bar{margin:12px auto 20px}
  .pt-center{margin-top:20px}

  /* Hero */
  .pt-hero{padding:34px 0 30px}
  .pt-badge{font-size:10.5px;padding:6px 12px;margin-bottom:14px}
  .pt-title{font-size:29px;margin-bottom:10px}
  .pt-title-arena{font-size:clamp(34px,10.5vw,46px)!important;margin-bottom:12px}
  .pt-hero-sub{font-size:13.5px;margin-bottom:20px}
  .pt-cd-label{font-size:11px;letter-spacing:.14em;margin-bottom:10px}
  .pt-countdown{gap:7px;margin-bottom:8px;flex-wrap:nowrap}
  .pt-cd-sep{display:none}
  .pt-cd-box{min-width:0;flex:1;max-width:80px;padding:10px 4px}
  .pt-cd-num{font-size:24px}
  .pt-cd-unit{font-size:9.5px;margin-top:4px;letter-spacing:.08em}
  .pt-cd-end{font-size:11.5px;margin-bottom:18px}
  .pt-hero-cta{gap:9px;margin-bottom:16px;padding-top:16px}
  .pt-hero-cta .pt-btn{width:100%;padding:13px 16px;font-size:13.5px}
  .pt-chip{font-size:10.5px;padding:5px 9px}
  .pt-hero-chips{gap:6px}

  /* Podium giải thưởng */
  .pt-podium{gap:12px;margin-bottom:14px}
  .pt-prize-card{padding:16px 14px 14px}
  .pt-prize-top1{padding-top:24px}
  .pt-champ-chip{font-size:10.5px;padding:4px 14px;top:-11px}
  .pt-prize-medal{height:38px;margin-bottom:6px}
  .pt-prize-crown{height:42px}
  .pt-prize-rank{font-size:17px}
  .pt-prize-top1 .pt-prize-rank{font-size:21px}
  .pt-prize-val{font-size:13px;margin-bottom:10px}
  .pt-prize-top1 .pt-prize-val{font-size:14px}
  .pt-prize-img{max-height:74px;margin-bottom:10px}
  .pt-prize-img-top1{max-height:112px}
  .pt-prize-perks{font-size:11.5px;line-height:1.65;margin-bottom:10px}
  .pt-lower{gap:10px}
  .pt-lower-card{padding:12px 14px}
  .pt-lower-title{font-size:13.5px}
  .pt-lower-txt p{font-size:11.5px}
  .pt-lower-val{font-size:16px}
  .pt-lower-check{font-size:19px}

  /* BXH tích hợp */
  .pt-bxh-note{font-size:11px;text-align:center}
  #home-board .leaderboard-panel{padding:12px 10px}
  #home-board .chips{max-width:100%}
  #home-board .chip{padding:9px 11px;font-size:12px}
  #home-board .lb-ftmo-card{min-height:0;padding:12px 11px}
  #home-board .lb-rank-search input{font-size:13px}

  /* Điều kiện + luật chơi */
  .pt-cond-grid{gap:10px}
  .pt-cond-card{padding:15px 14px}
  .pt-cond-ic{width:42px;height:42px;font-size:19px;margin-bottom:9px;border-radius:11px}
  .pt-cond-card>b{font-size:14px;margin-bottom:5px}
  .pt-cond-card p{font-size:12px}
  .pt-brokers{gap:7px;margin-top:10px}
  .pt-broker-item{padding:6px 10px;font-size:11.5px;gap:6px}
  .pt-broker-item img{width:18px;height:18px}
  .pt-fair-grid{gap:10px}
  .pt-fair-card{padding:13px 14px;gap:11px}
  .pt-fair-ic{flex-basis:36px;height:36px;font-size:17px;border-radius:9px}
  .pt-fair-txt > b{font-size:13.5px;margin-bottom:3px}
  .pt-fair-txt p{font-size:12px}

  /* Quy trình + portal */
  .pt-steps-row{gap:14px}
  .pt-step-dot{width:52px;height:52px;font-size:21px;margin-bottom:8px}
  .pt-step b{font-size:13px;margin-bottom:3px}
  .pt-step p{font-size:11.5px}
  .pt-btn-xl{padding:14px 24px;font-size:14.5px}
  .pt-portal{gap:7px;margin-top:18px}
  .pt-portal-btn{padding:8px 11px;font-size:11.5px;gap:6px}
  .pt-portal-btn img{width:15px;height:15px}

  /* FAQ + cảnh báo rủi ro */
  .pt-faq .faq{margin-bottom:8px}
  .pt-risk{font-size:9.5px;padding:12px 0;margin-top:10px}
}

/* ============================================================
   PT-HOME — MOBILE nén sâu card BXH trong #home-board (≤640px)
   ============================================================ */
@media(max-width:640px){
  #home-board .lb-ftmo-card{min-height:0;padding:10px 11px}
  #home-board .lb-ftmo-card-top{margin-bottom:8px}
  #home-board .lb-ftmo-stats{gap:8px;margin-bottom:8px}
  #home-board .lb-ftmo-stats b{margin-top:3px;font-size:12px}
  #home-board .lb-ftmo-rank{min-width:30px;min-height:30px;font-size:14px}
  #home-board .lb-ftmo-trader{gap:8px}
  #home-board .lb-ftmo-trader strong{font-size:13px}
  #home-board .lb-ftmo-trader small{margin-top:2px;font-size:10px}
  #home-board .lb-ftmo-top-label{margin-bottom:3px;font-size:11px}
  #home-board .lb-ftmo-trophy{width:24px;height:24px;flex-basis:24px}
  #home-board .lb-ftmo-prize{margin-top:6px;font-size:12px}
  #home-board .lb-progress-days{padding:1px 6px;font-size:11.5px!important}
  #home-board .lb-ftmo-table th,
  #home-board .lb-ftmo-table td{padding:9px 8px;font-size:12px}
  #home-board .leaderboard-titlebar{gap:8px}
  #home-board #ph-title{font-size:15px}
  #home-board #lb-count{font-size:11px}
  #home-board .lb-rank-search input{padding:9px 10px}
  #home-board .lb-rank-search .btn{padding:9px 14px;font-size:12.5px}
}

/* ============================================================
   NAV NGANG DESKTOP (2026-07-21) — thay sidebar trái kiểu Exness
   Scope ≥881px (mobile ≤880px vẫn dùng topbar+drawer cũ, không đụng)
   ============================================================ */
@media(min-width:881px){
  body{margin-left:0;padding-top:66px}
  .nav{
    position:fixed;top:0;left:0;right:0;
    width:100%;height:auto;min-height:0;
    flex-direction:row;align-items:center;
    padding:0 24px;
    border-right:0;border-bottom:1px solid rgba(255,255,255,.08);
    box-shadow:0 6px 30px rgba(0,0,0,.3);
    overflow:visible;
    background:rgba(7,11,20,.94);
    -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  }
  .nav .wrap{flex-direction:row;align-items:center;justify-content:space-between;gap:18px;width:100%;max-width:1240px;margin:0 auto;height:66px}
  .nav .brand-home{display:block;flex:0 0 auto}
  .nav .links{flex-direction:row;align-items:center;gap:4px;width:auto}
  .nav .links a{padding:9px 13px;border-radius:10px;text-align:center;white-space:nowrap;font-size:13.5px}
  .nav .links .brand-link{display:none}
  .nav .links .cta{margin-left:6px;padding:10px 18px}
  .nav-sub{display:none}
}

/* ============================================================
   NAV-TIMEBAR thay top-strip (2026-07-21)
   Top-strip đã xoá khỏi template — đồng hồ nằm ngay trong nav,
   hiện cả desktop (pill giữa thanh ngang) lẫn mobile (dưới topbar)
   ============================================================ */
.nav-sub{display:none!important} /* phần tử chết (renderCountdown cũ đã tắt) */
@media(min-width:881px){
  #nav-timebar{display:flex!important;flex:0 1 auto;min-width:0}
}
@media(max-width:880px){
  .nav .wrap{flex-wrap:wrap}
  #nav-timebar{display:flex!important;flex:1 1 100%;width:100%;margin-top:8px;justify-content:center;min-width:0;padding:7px 12px}
  #nav-timebar span{font-size:9.5px}
  #nav-timebar b{font-size:12.5px}
}

/* ============================================================
   PT-HERO-INFO — 4 ô thông tin + slogan dưới chips (2026-07-21)
   ============================================================ */
.pt-hero-info{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:980px;margin:18px auto 0}
.pt-info-card{display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px 10px;text-align:center}
.pt-info-ic{font-size:22px;line-height:1;margin-bottom:4px}
.pt-info-card small{color:#9fb3c8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.pt-info-card b{color:#eef5ff;font-size:13.5px;line-height:1.35}
.pt-hero-slogan{margin:16px auto 0;color:#f2ca50;font-size:14px;font-style:italic;opacity:.9}
@media(max-width:900px){
  .pt-hero-info{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .pt-hero-info{gap:8px;margin-top:12px}
  .pt-info-card{padding:10px 8px}
  .pt-info-ic{font-size:18px;margin-bottom:2px}
  .pt-info-card small{font-size:9.5px}
  .pt-info-card b{font-size:12px}
  .pt-hero-slogan{font-size:12px;margin-top:12px}
}

/* ============================================================
   MOBILE TOPBAR GỌN 1 HÀNG (2026-07-21)
   [☰ + KN Invest] bên TRÁI · [đồng hồ đếm ngược] bên PHẢI
   + drawer: đẩy cụm nút xuống dưới (padding-top bị rule cũ đè về 0)
   ============================================================ */
@media(max-width:880px){
  .nav{padding:6px 10px}
  /* Rule cũ ≤640px có .nav .wrap{display:grid} → phải ép flex 1 hàng */
  .nav .wrap{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;min-height:0;gap:8px}
  .nav .nav-toggle{order:0}
  .nav .brand-home{order:1;flex:0 1 auto!important;font-size:16px;text-align:left;min-width:0}
  .nav .brand-home small{font-size:8px;letter-spacing:.22em;margin-top:2px}
  #nav-timebar{order:5!important;flex:0 1 auto!important;width:auto!important;max-width:none!important;height:auto!important;margin:0 0 0 auto!important;padding:6px 11px!important;justify-content:flex-end}
  #nav-timebar span{display:none}
  #nav-timebar b{font-size:12.5px;white-space:nowrap}
  .nav .links{padding:110px 16px 24px!important}
}

/* ============================================================
   MOBILE DRAWER — gọn lại, bỏ nút trùng (2026-07-21)
   "KN Invest" (.brand-link) trùng chức năng "Home" → ẩn.
   Còn 5 mục thay vì 6, mỗi mục nhỏ gọn hơn (giống mật độ desktop).
   ============================================================ */
@media(max-width:880px){
  .nav .links .brand-link{display:none!important}
  .nav .links{gap:3px!important;padding:96px 14px 20px!important}
  .nav .links a{padding:11px 13px!important;font-size:14px!important;border-radius:9px!important}
  .nav .links a::after{content:none!important}
  .nav .links a.cta{margin-top:6px}
}

/* ============================================================
   PT-STEP-CARD — Quy trình tham gia dạng CARD (2026-07-21)
   Thay vòng tròn nhỏ + line bằng card to, có badge số bước,
   icon khung nổi bật và 1 dòng chi tiết nhấn mạnh (tag)
   ============================================================ */
.pt-steps-grid{display:flex;align-items:stretch;gap:0;margin:20px 0 8px}
.pt-step-card{flex:1;min-width:0;padding:26px 20px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:border-color .25s,transform .2s}
.pt-step-card:hover{border-color:rgba(242,202,80,.5);transform:translateY(-3px)}
.pt-step-top{position:relative;width:78px;height:78px;margin:0 auto 16px}
.pt-step-num{position:absolute;top:-8px;left:-8px;width:27px;height:27px;border-radius:999px;background:linear-gradient(135deg,#ffe088,#d4af37);color:#241a00;font-family:"JetBrains Mono","Consolas",monospace;font-size:11px;font-weight:800;display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.4);z-index:2}
.pt-step-ic{position:absolute;inset:0;display:grid;place-items:center;font-size:32px;border-radius:20px;background:rgba(242,202,80,.08);border:1.5px solid rgba(242,202,80,.4);box-shadow:0 0 22px rgba(212,175,55,.16)}
.pt-step-body{flex:1;min-width:0;width:100%;display:flex;flex-direction:column;align-items:center}
.pt-step-card b{font-family:"Montserrat",var(--font-display)!important;font-size:16px;font-weight:800;color:#eef5ff;margin-bottom:6px}
.pt-step-card p{flex:1 0 auto;margin:0 0 14px;color:#9fb3c8;font-size:12.5px;line-height:1.5;max-width:100%}
.pt-step-tag{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#c8d5e8;font-size:11px;font-weight:700;line-height:1.3;margin-top:auto;white-space:normal;max-width:100%}
.pt-step-arrow{flex:0 0 30px;display:flex;align-items:center;justify-content:center;color:rgba(242,202,80,.4);font-size:22px;align-self:center;margin-top:-30px}

@media(max-width:900px){
  .pt-steps-grid{flex-direction:column;gap:12px}
  .pt-step-arrow{display:none}
  .pt-step-card{flex-direction:row;align-items:flex-start;text-align:left;gap:16px;padding:18px 20px}
  .pt-step-top{margin:0;flex:0 0 auto}
  .pt-step-body{align-items:flex-start;text-align:left;min-width:0}
  .pt-step-card p{flex:none}
  .pt-step-tag{margin-top:8px}
}
@media(max-width:640px){
  .pt-step-card{padding:14px 15px;gap:12px}
  .pt-step-top{width:56px;height:56px}
  .pt-step-num{width:21px;height:21px;font-size:9.5px;top:-6px;left:-6px}
  .pt-step-ic{font-size:23px;border-radius:15px}
  .pt-step-card b{font-size:13.5px;margin-bottom:4px}
  .pt-step-card p{font-size:11.5px;margin-bottom:8px}
  .pt-step-tag{font-size:10px;padding:5px 10px}
}

/* ============================================================
   PT-STEP-MODAL — zoom chi tiết khi bấm vào card Quy trình (2026-07-21)
   ============================================================ */
.pt-step-card{cursor:pointer}
.pt-step-more{margin-top:8px;font-size:10.5px;font-weight:700;color:#f2ca50;opacity:.7;transition:opacity .2s}
.pt-step-card:hover .pt-step-more{opacity:1}

.pt-step-modal{position:fixed;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;padding:20px}
.pt-step-modal[hidden]{display:none!important}
.pt-step-modal-backdrop{position:absolute;inset:0;background:rgba(2,6,12,.74);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .25s}
.pt-step-modal.is-open .pt-step-modal-backdrop{opacity:1}
.pt-step-modal-card{position:relative;width:100%;max-width:460px;max-height:86vh;overflow-y:auto;padding:34px 28px 28px;transform:scale(.82);opacity:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .22s}
.pt-step-modal.is-open .pt-step-modal-card{transform:scale(1);opacity:1}
.pt-step-modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:0;border-radius:999px;background:rgba(255,255,255,.06);color:#dbe7f3;font-size:17px;cursor:pointer;transition:background .2s}
.pt-step-modal-close:hover{background:rgba(255,255,255,.14)}
.pt-step-modal-top{position:relative;width:76px;height:76px;margin:0 auto 18px}
.pt-step-modal-num{position:absolute;top:-8px;left:-8px;width:28px;height:28px;border-radius:999px;background:linear-gradient(135deg,#ffe088,#d4af37);color:#241a00;font-family:"JetBrains Mono","Consolas",monospace;font-size:11.5px;font-weight:800;display:grid;place-items:center;z-index:2;box-shadow:0 4px 12px rgba(0,0,0,.4)}
.pt-step-modal-ic{position:absolute;inset:0;display:grid;place-items:center;font-size:33px;border-radius:20px;background:rgba(242,202,80,.1);border:1.5px solid rgba(242,202,80,.45);box-shadow:0 0 26px rgba(212,175,55,.22)}
.pt-step-modal-card h3{text-align:center;font-family:"Montserrat",var(--font-display)!important;font-size:21px;font-weight:800;color:#eef5ff;margin:0 0 20px}
.pt-step-modal-list{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:12px}
.pt-step-modal-list li{display:flex;gap:10px;align-items:flex-start;color:#c8d5e8;font-size:13.5px;line-height:1.6}
.pt-step-modal-list li b{color:#f2ca50}
.pt-step-modal-list .li-ic{flex:0 0 auto;font-size:16px;line-height:1.4}
.pt-step-modal-card .pt-btn{width:100%}

@media(max-width:640px){
  .pt-step-modal{padding:14px}
  .pt-step-modal-card{padding:26px 20px 22px;max-height:88vh}
  .pt-step-modal-top{width:60px;height:60px}
  .pt-step-modal-ic{font-size:25px;border-radius:16px}
  .pt-step-modal-card h3{font-size:18px;margin-bottom:16px}
  .pt-step-modal-list li{font-size:12.5px}
}

/* ============================================================
   PT-HERO-PRIZES — Cơ cấu giải thưởng dời vào hero (2026-07-21)
   Thay chỗ countdown đã xoá — nằm giữa subtitle và nút CTA
   ============================================================ */
.pt-hero-prizes{width:100%;margin:30px 0 38px}
@media(max-width:640px){
  .pt-hero-prizes{margin:20px 0 26px}
}

/* ============================================================
   PT-HERO tinh chỉnh (2026-07-21): bỏ nút BXH ở hero (còn 1 nút
   CTA duy nhất, tự canh giữa), 2 hàng "con nhộng" tách biệt rõ,
   khối giải thưởng thu gọn ~76% CHỈ trên desktop (≥901px) để
   nhìn được tổng thể mà không cần cuộn nhiều
   ============================================================ */
.pt-hero-chips-group{margin-top:26px}
.pt-hero-chips-row2{margin-top:14px}

@media(min-width:901px){
  .pt-hero-prizes .pt-h2-bar{margin:10px auto 18px}
  .pt-hero-prizes .pt-podium{gap:17px;margin:6px 0 16px}
  .pt-hero-prizes .pt-prize-card{padding:20px 15px 17px}
  .pt-hero-prizes .pt-prize-top1{padding-top:26px}
  .pt-hero-prizes .pt-champ-chip{top:-11px;font-size:9.5px;padding:4px 14px}
  .pt-hero-prizes .pt-prize-medal{height:40px;margin-bottom:8px}
  .pt-hero-prizes .pt-prize-crown{height:44px}
  .pt-hero-prizes .pt-prize-rank{font-size:17px}
  .pt-hero-prizes .pt-prize-top1 .pt-prize-rank{font-size:21px}
  .pt-hero-prizes .pt-prize-val{font-size:11.5px;margin-bottom:10px}
  .pt-hero-prizes .pt-prize-top1 .pt-prize-val{font-size:13px}
  .pt-hero-prizes .pt-prize-img{max-height:84px;margin-bottom:10px}
  .pt-hero-prizes .pt-prize-img-top1{max-height:130px}
  .pt-hero-prizes .pt-prize-perks{font-size:10.5px;margin-bottom:10px}
  .pt-hero-prizes .pt-lower{gap:14px}
  .pt-hero-prizes .pt-lower-card{padding:14px 17px}
  .pt-hero-prizes .pt-lower-title{font-size:12.5px}
  .pt-hero-prizes .pt-lower-txt p{font-size:10.5px}
  .pt-hero-prizes .pt-lower-val{font-size:15px}
  .pt-hero-prizes .pt-lower-check{font-size:18px}
}

/* ============================================================
   ZOOM TOÀN GIAO DIỆN DESKTOP CÒN 75% (2026-07-21)
   Chỉ desktop (mobile giữ nguyên 100%, đã tối ưu riêng)
   ============================================================ */
@media(min-width:901px){ html{zoom:0.75} }
/* (24/07) ZOOM CO GIAN theo be ngang man -> man to khong bi ti xiu, man nho khong tran */
@media(min-width:1500px){ html{zoom:0.82} }
@media(min-width:1800px){ html{zoom:0.88} }
@media(min-width:2200px){ html{zoom:0.96} }
@media(min-width:2700px){ html{zoom:1.05} }

/* ============================================================
   OBSIDIAN LUXURY (v254): ĐEN chủ đạo + VÀNG & BẠC xen kẽ
   Đen thuần thay nâu ấm; accent teal cũ → BẠC tinh tế
   ============================================================ */
:root{
  --bg:#0a0a0a;
  --bg2:#121212;
  --bg3:#1a1a1a;
  --panel:rgba(255,255,255,.045);
  --panel2:rgba(255,255,255,.07);
  --panel3:rgba(255,255,255,.105);
  --line:rgba(212,212,212,.13);
  --line-strong:rgba(212,212,212,.25);
  --gold:#e8b84b;
  --champagne:#f0d58f;
  --contrast-gold:#e8b84b;
  --contrast-gold-2:#f5dd9a;
  --silver:#d4d4d4;
  --silver-soft:#e9ebee;
  --silver-dim:#9a9da3;
  --cool:#c9cdd4;
  --cool-soft:#e9ebee;
  --cool-deep:#2b2d31;
  --cool-glass:rgba(201,205,212,.09);
  --cool-line:rgba(212,214,220,.22);
  --dim:#b9bcc2;
  --dim2:#84878d;
}
html{background:#0a0a0a !important}
body{
  background:
    radial-gradient(900px 420px at 70% 14%, rgba(212,212,212,.045), transparent 62%),
    radial-gradient(760px 380px at 18% 36%, rgba(232,184,75,.05), transparent 65%),
    linear-gradient(180deg, #0d0d0d 0%, #080808 44%, #101010 100%) !important;
}
body::before{
  background:
    linear-gradient(rgba(212,212,212,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,212,212,.022) 1px, transparent 1px);
}
body::after{
  background:linear-gradient(180deg, #0a0a0a, rgba(10,10,10,.94));
}
.nav{
  background:rgba(10,10,10,.82);
  border-top-color:rgba(212,212,212,.08);
  border-bottom-color:rgba(212,212,212,.15);
}
.hero::before{
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), transparent 18%, transparent 70%, rgba(8,8,8,.94)),
    radial-gradient(620px 300px at 64% 32%, rgba(212,212,212,.09), transparent 66%),
    radial-gradient(540px 260px at 30% 18%, rgba(232,184,75,.07), transparent 68%),
    radial-gradient(760px 440px at 24% 42%, rgba(0,0,0,.66), transparent 72%) !important;
}
.brand .k,
.hero-logo-title .hero-kn{
  color:#e9ebee !important;
  text-shadow:0 0 18px rgba(212,212,212,.22), 0 18px 56px rgba(0,0,0,.72) !important;
}
.mobile-flow::before{background:linear-gradient(90deg, #0a0a0a, transparent)}
.mobile-flow::after{background:linear-gradient(270deg, #0a0a0a, transparent)}

/* ============================================================
   REG WIZARD — Multi-step đăng ký (Obsidian Luxury 2026-07-21)
   Đen chủ đạo · vàng + bạc sen kẽ · tinh tế hiện đại
   ============================================================ */
/* Luồng 1 cột, căn giữa — mỗi lúc chỉ hiện 1 bước */
.reg-guided{max-width:720px;margin:0 auto;width:100%}
.reg-guided-head{text-align:center;margin-bottom:26px}
.reg-home-link{
  display:inline-flex;align-items:center;margin-bottom:14px;padding:8px 15px;
  border-radius:999px;border:1px solid rgba(212,212,212,.2);
  background:rgba(255,255,255,.04);color:var(--silver);
  font-size:12.5px;font-weight:700;cursor:pointer;transition:border-color .2s,background .2s,color .2s;
}
.reg-home-link:hover{border-color:rgba(242,202,80,.45);color:var(--gold);background:rgba(242,202,80,.06)}
.reg-guided-head h2{
  margin:0 0 8px;font-size:clamp(26px,4vw,40px);line-height:1.08;color:#fff;font-weight:800;
}
.reg-guided-head p{margin:0;color:rgba(233,235,238,.66);font-size:14.5px;line-height:1.6}
.reg-guided-head p b{color:var(--gold)}
/* Form thành container trong suốt — card thật nằm ở .reg-step-card */
.reg-guided .register-form{
  border:0 !important;background:none !important;box-shadow:none !important;padding:0 !important;border-radius:0 !important;
}
/* Card từng bước — nền đen kính, viền bạc mảnh */
.reg-step-card{
  position:relative;
  padding:30px 28px 26px;
  border-radius:22px;
  border:1px solid rgba(212,212,212,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015)),
    rgba(10,10,10,.78);
  box-shadow:0 30px 90px -60px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(14px);
}
.reg-step-badge{
  display:grid;place-items:center;width:52px;height:52px;margin-bottom:16px;
  border-radius:15px;
  background:linear-gradient(135deg,#f2ca50,#c9962e);
  color:#0a0a0a;font-weight:900;font-size:19px;letter-spacing:.02em;
  box-shadow:0 12px 30px -14px rgba(242,202,80,.75);
}
.reg-step-card h3{
  margin:0 0 10px;font-size:clamp(20px,2.6vw,26px);line-height:1.22;color:#fff;font-weight:800;
}
.reg-step-card > p{
  margin:0 0 20px;color:rgba(233,235,238,.7);font-size:14px;line-height:1.66;
}
.reg-step-card .hl-brand{color:var(--gold);font-weight:800}
.reg-step-card .hl-broker{color:var(--silver);font-weight:800}
.reg-step-card .form-grid{margin-bottom:0}
.reg-step-card .mt5-block{margin:18px 0 0}
.reg-step-card .form-broker-links{
  display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0;
}
.reg-guided .disclaimer{margin-top:20px;text-align:center;max-width:640px;margin-left:auto;margin-right:auto}
.reg-wizard{display:flex;flex-direction:column}
.reg-progress{margin:4px 0 22px}
.reg-progress-dots{display:flex;justify-content:space-between;gap:6px;margin-bottom:14px}
.reg-progress-dot{display:flex;flex-direction:column;align-items:center;gap:7px;flex:1;cursor:default;transition:transform .2s ease}
.reg-progress-dot .reg-dot{
  display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.05);border:1px solid rgba(212,212,212,.22);
  color:var(--silver);font-weight:800;font-size:14px;
  transition:background .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease;
}
.reg-progress-dot small{font-size:11px;font-weight:700;color:rgba(212,212,212,.5);letter-spacing:.02em;transition:color .28s ease}
.reg-progress-dot.is-done .reg-dot{
  background:linear-gradient(135deg,var(--silver),#9a9a9a);border-color:transparent;color:#0a0a0a;
}
.reg-progress-dot.is-active{transform:translateY(-1px)}
.reg-progress-dot.is-active .reg-dot{
  background:linear-gradient(135deg,#f2ca50,#c9962e);border-color:transparent;color:#0a0a0a;
  box-shadow:0 0 0 4px rgba(242,202,80,.16),0 10px 26px -12px rgba(242,202,80,.7);
}
.reg-progress-dot.is-active small{color:var(--gold)}
.reg-progress-dot[data-step-dot]:hover .reg-dot{border-color:rgba(242,202,80,.5)}
.reg-progress-bar{width:100%;height:5px;border-radius:999px;background:rgba(255,255,255,.07);overflow:hidden}
.reg-progress-bar-fill{
  height:100%;border-radius:999px;width:0;
  background:linear-gradient(90deg,var(--silver) 0%,var(--gold) 100%);
  box-shadow:0 0 14px rgba(242,202,80,.4);
  transition:width .38s cubic-bezier(.4,0,.2,1);
}
.reg-step{animation:regStepIn .34s cubic-bezier(.4,0,.2,1)}
.reg-step[hidden]{display:none}
@keyframes regStepIn{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}
.reg-step-nav{display:flex;gap:10px;margin-top:22px}
.reg-step-nav .btn{flex:1;min-height:50px;font-weight:800}
.reg-step-nav #reg-prev{flex:0 0 auto;min-width:130px}
@media(max-width:640px){
  .reg-progress-dot small{font-size:9.5px}
  .reg-progress-dot .reg-dot{width:30px;height:30px;font-size:13px}
  .reg-step-nav{flex-wrap:wrap}
  .reg-step-nav #reg-prev{flex:1 1 100%;order:2}
}

/* ============================================================
   HEADER / SECTION LAYERS — ngăn cách các lớp bằng tương phản
   nhẹ nhàng, tinh tế (2026-07-21): nền đen ↔ than nhạt xen kẽ,
   đường ngăn VÀNG ↔ BẠC đối lập luân phiên.
   ============================================================ */
.pt-sec{position:relative;padding:66px 0;background:transparent}
/* Lớp CHẴN: dải than nổi RÕ hơn (sáng hơn nền đen) — mép trên/dưới mảnh */
.pt-sec:nth-of-type(even){
  background:linear-gradient(180deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.022) 45%, rgba(255,255,255,.008) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), inset 0 -1px 0 rgba(0,0,0,.55);
}
/* Lớp LẺ: đen sâu HƠN để tương phản mạnh hơn với lớp chẵn */
.pt-sec:nth-of-type(odd){
  background:linear-gradient(180deg, rgba(0,0,0,.5) 0%, rgba(0,0,0,.2) 42%, transparent 100%);
}
/* Đường ngăn phía trên: luân phiên VÀNG (lớp lẻ) ↔ BẠC (lớp chẵn), đậm hơn */
.pt-sec::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:min(1160px,92%);height:1px;
  background:linear-gradient(90deg,transparent,rgba(232,184,75,.6),transparent);
}
.pt-sec:nth-of-type(even)::before{
  background:linear-gradient(90deg,transparent,rgba(224,228,234,.58),transparent);
}
/* Tiêu đề section: CÙNG hiệu ứng kim loại VÀNG→BẠC như tiêu đề hero.
   Emoji đầu tiêu đề vẫn giữ màu (color-emoji không bị text-fill-color) */
.pt-h2{
  margin-top:2px;
  background:linear-gradient(90deg,#f6d165 0%,#ecc255 18%,#e8b84b 32%,#d8cba4 50%,#c6cbd2 68%,#d8dce2 84%,#f3f5f8 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  filter:drop-shadow(0 1px 6px rgba(232,184,75,.14)) drop-shadow(0 1px 12px rgba(216,220,226,.1));
}
/* span vàng lồng trong tiêu đề: bỏ gradient riêng để lộ gradient chung của .pt-h2 */
.pt-h2 .pt-gold-text{
  background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important;
}
/* Emoji đầu tiêu đề: tách khỏi clip-text để LUÔN hiện màu gốc (mọi trình duyệt) */
.pt-h2 .pt-h2-ic{
  -webkit-text-fill-color:#e9ebee!important;color:#e9ebee!important;
  background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;
  filter:none!important;margin-right:5px;
}
.pt-h2-bar{
  position:relative;width:120px;height:3px;margin:16px auto 34px;
  background:linear-gradient(90deg,transparent,#e8b84b 22%,#f5dd9a 50%,#e8b84b 78%,transparent);
  box-shadow:0 0 14px rgba(232,184,75,.35);
}
.pt-sec:nth-of-type(even) .pt-h2-bar{
  background:linear-gradient(90deg,transparent,#c9cdd4 22%,#f2f4f7 50%,#c9cdd4 78%,transparent);
  box-shadow:0 0 14px rgba(212,216,222,.32);
}
.pt-h2-bar::after{
  content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;
  transform:translate(-50%,-50%) rotate(45deg);
  background:#f5dd9a;box-shadow:0 0 10px rgba(245,221,154,.8);border-radius:1px;
}
.pt-sec:nth-of-type(even) .pt-h2-bar::after{
  background:#f2f4f7;box-shadow:0 0 10px rgba(233,235,238,.8);
}
@media(max-width:640px){
  .pt-sec{padding:38px 0}
  .pt-h2-bar{width:88px;margin:12px auto 22px}
}

/* ============================================================
   MOBILE POLISH (2026-07-21) — tích hợp tối đa cho màn nhỏ
   ============================================================ */
@media(max-width:640px){
  /* Hero: title arena 2 dòng thoáng, sub gọn */
  .pt-title-arena{line-height:1.12;margin:4px 0 10px}
  .pt-hero-sub{max-width:320px;margin-left:auto;margin-right:auto}
  /* Section header: giữ tương phản lớp trên mobile nhưng dịu hơn */
  .pt-sec:nth-of-type(odd){background:linear-gradient(180deg, rgba(0,0,0,.42) 0%, rgba(0,0,0,.16) 40%, transparent 100%)}
  .pt-sec:nth-of-type(even){background:linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.016) 46%, transparent 100%)}
  .pt-h2{line-height:1.3;padding:0 8px}
  .pt-h2-ic{display:inline-block;margin-right:4px}
  /* Chip 2 hàng: cuộn ngang mượt nếu chật (thay vì xuống quá nhiều dòng) */
  .pt-hero-chips{row-gap:6px}
  .pt-chip{font-size:10.5px;padding:6px 10px}
  /* Portal + broker btn: full-grid 2 cột đều nhau, chạm dễ */
  .pt-portal{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .pt-portal-btn{width:100%;justify-content:center;min-height:42px}
  /* FAQ: chữ + padding gọn */
  .faq summary{font-size:13.5px;padding:13px 40px 13px 14px}
  .faq p{font-size:12.5px}
  /* Register wizard mobile: card + nav sát mép hợp lý */
  .reg-guided-head h2{font-size:24px}
  .reg-guided-head p{font-size:13px}
  .reg-step-card{padding:20px 16px 18px;border-radius:16px}
  .reg-step-badge{width:44px;height:44px;font-size:16px;border-radius:12px;margin-bottom:12px}
  .reg-step-card h3{font-size:18px}
  .reg-step-card > p{font-size:13px;margin-bottom:16px}
  .reg-step-card .form-broker-links{grid-template-columns:1fr 1fr}
  .reg-step-nav .btn{min-height:46px;font-size:14px}
  /* BXH bảng: chữ nhỏ hơn chút cho đỡ cuộn ngang nhiều */
  #home-board table{font-size:12px}
  /* Risk footer gọn */
  .pt-risk{font-size:11.5px;line-height:1.55}
  /* Card "🌟 ĐẶC BIỆT: Master Trader" nhỏ gọn lại trên mobile */
  .pt-lower-green .pt-lower-title{font-size:11.5px;line-height:1.45;margin-bottom:3px}
  .pt-lower-green .pt-lower-txt p{font-size:10.5px;line-height:1.45}
  .pt-lower-green{padding:10px 12px}
  .pt-lower-check{font-size:14px}
}
@media(max-width:400px){
  .pt-title-arena{font-size:clamp(30px,9.6vw,38px)!important}
  .pt-portal{grid-template-columns:1fr 1fr}
  .pt-h2{font-size:17.5px}
}

/* Nút "Group cuộc thi" trong portal — nổi bật nhẹ kiểu Telegram */
.pt-portal-group{
  border-color:rgba(34,158,217,.45)!important;
  background:rgba(34,158,217,.08)!important;
  color:#bfe6ff!important;
}
.pt-portal-group:hover{
  border-color:rgba(34,158,217,.75)!important;
  background:rgba(34,158,217,.16)!important;
}

/* ============================================================
   HERO VIDEO (2026-07-21) — hero kiểu Topstep: chỉ lời chào,
   hoạt cảnh trading canvas làm nền, chữ + nút nổi trên nền.
   Phần thưởng đã dời xuống section .pt-prizes-sec ngay dưới.
   ============================================================ */
.pt-hero-video{
  position:relative;
  min-height:min(88vh,860px);
  display:flex;align-items:center;justify-content:center;
  padding:118px 0 72px;
  overflow:hidden;
  background:#0a0a0a;
}
#pt-hero-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.pt-hero-overlay{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 62% 52% at 50% 44%, rgba(10,10,10,.18), rgba(10,10,10,.74) 82%),
    linear-gradient(180deg, rgba(10,10,10,.62) 0%, transparent 26%, transparent 62%, #0a0a0a 100%);
}
.pt-hero-inner{position:relative;z-index:2}
/* Dòng chào trắng phía trên tên đấu trường (kiểu "Become a") */
.pt-hero-hello{
  display:block;
  color:#fff;
  font-size:.52em;
  font-weight:800;
  letter-spacing:.01em;
  line-height:1.15;
  margin-bottom:8px;
  text-shadow:0 2px 24px rgba(0,0,0,.65);
}
/* CTA trong hero video: bỏ đường kẻ cũ, nổi trên nền */
.pt-hero-video .pt-hero-cta{border-top:0;padding-top:6px;margin-bottom:8px}
.pt-hero-video .pt-btn-xl{box-shadow:0 18px 50px -18px rgba(232,184,75,.65)}
.pt-hero-video .pt-badge{background:rgba(10,10,10,.66);backdrop-filter:blur(6px)}
.pt-hero-video .pt-hero-sub{text-shadow:0 2px 18px rgba(0,0,0,.7)}
/* Section phần thưởng (header 2) */
.pt-prizes-sec{padding-top:54px}
.pt-prizes-sec .pt-hero-prizes{margin:0}
.pt-prizes-sec .pt-hero-chips-group{margin-top:26px}
@media(max-width:640px){
  .pt-hero-video{min-height:72vh;padding:96px 0 46px}
  .pt-hero-hello{font-size:.56em;margin-bottom:6px}
  .pt-prizes-sec{padding-top:34px}
}

/* ============================================================
   HERO PRO POLISH (2026-07-21) — tinh chỉnh chuyên nghiệp:
   eyebrow cách quãng, badge thanh mảnh, 2 CTA, stats bar Topstep
   ============================================================ */
.pt-hero-video .pt-badge{
  background:transparent;
  border-color:rgba(232,184,75,.32);
  color:#f5dd9a;
  font-size:11px;
  letter-spacing:.24em;
  padding:8px 18px;
  backdrop-filter:blur(4px);
}
/* Dòng chào → eyebrow bạc cách quãng, sang và tiết chế */
.pt-hero-hello{
  color:#d8dce2;
  font-size:.3em;
  font-weight:600;
  letter-spacing:.34em;
  text-transform:uppercase;
  text-indent:.34em; /* cân lại khoảng trống letter-spacing cuối dòng */
  margin-bottom:16px;
  text-shadow:0 2px 20px rgba(0,0,0,.7);
}
/* CTA phụ ghost đứng cạnh CTA vàng */
.pt-hero-video .pt-hero-cta{gap:12px}
.pt-hero-video .pt-btn-ghost{
  border-color:rgba(212,212,212,.3);
  color:#e9ebee;
  background:rgba(10,10,10,.35);
  backdrop-filter:blur(4px);
}
.pt-hero-video .pt-btn-ghost:hover{border-color:rgba(232,184,75,.55);color:#f5dd9a}
/* Stats bar — dải số liệu tin cậy kiểu Topstep */
.pt-hero-stats{
  display:flex;
  justify-content:center;
  max-width:720px;
  margin:36px auto 0;
  padding-top:24px;
  border-top:1px solid rgba(212,212,212,.14);
}
.pt-stat{flex:1;position:relative;padding:0 18px;text-align:center}
.pt-stat + .pt-stat::before{
  content:"";position:absolute;left:0;top:14%;bottom:14%;width:1px;
  background:rgba(212,212,212,.13);
}
.pt-stat b{
  display:block;
  font-family:"Montserrat",var(--font-display);
  font-size:clamp(21px,2.6vw,30px);
  font-weight:800;
  color:#f5dd9a;
  line-height:1.1;
  text-shadow:0 2px 16px rgba(0,0,0,.6);
}
.pt-stat span{
  display:block;margin-top:4px;
  color:#9a9da3;font-size:10.5px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
}
/* Slogan tiết chế */
.pt-hero-video .pt-hero-slogan{
  margin-top:20px;color:rgba(216,220,226,.5);
  font-size:12.5px;font-style:italic;letter-spacing:.02em;
}
@media(max-width:640px){
  .pt-hero-video .pt-badge{font-size:9.5px;letter-spacing:.18em;padding:7px 13px}
  .pt-hero-hello{font-size:.4em;letter-spacing:.24em;text-indent:.24em;margin-bottom:10px}
  .pt-hero-video .pt-hero-cta{flex-direction:column;align-items:center;gap:9px}
  .pt-hero-video .pt-hero-cta .pt-btn{width:min(100%,320px)}
  .pt-hero-stats{flex-wrap:wrap;max-width:340px;margin-top:26px;padding-top:18px;row-gap:14px}
  .pt-stat{flex:1 1 50%;padding:0 10px}
  .pt-stat + .pt-stat::before{display:none}
  .pt-stat:nth-child(2)::before,.pt-stat:nth-child(4)::before{display:block}
  .pt-hero-video .pt-hero-slogan{margin-top:16px;font-size:11.5px}
}

/* Video nền hero (thay canvas 2026-07-21) — tự render, 271KB, loop 12s */
.pt-hero-vid{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:center 62%;
  display:block;
  filter:saturate(1.05);
}

/* HERO COMPACT (2026-07-21) — bỏ badge, kéo nội dung lên, siết khoảng trống */
.pt-hero-video{min-height:min(74vh,720px);padding:96px 0 44px}
.pt-hero-hello{margin-bottom:10px}
.pt-title-arena{margin:0 0 12px}
.pt-hero-video .pt-hero-sub{margin-bottom:20px}
.pt-hero-video .pt-hero-cta{padding-top:0;margin-bottom:0}
.pt-hero-stats{margin-top:24px;padding-top:16px}
.pt-hero-video .pt-hero-slogan{margin-top:13px}
@media(max-width:640px){
  .pt-hero-video{min-height:58vh;padding:80px 0 30px}
  .pt-hero-hello{margin-bottom:7px}
  .pt-hero-video .pt-hero-sub{margin-bottom:16px}
  .pt-hero-stats{margin-top:18px;padding-top:14px;row-gap:10px}
  .pt-hero-video .pt-hero-slogan{margin-top:10px}
}

/* ============================================================
   HERO FULLSCREEN (2026-07-21) — "Chào Mừng Đến Với" to ngang
   dòng dưới (trắng nổi bật), hero phủ vừa khung hình mọi màn.
   Lưu ý: desktop có html{zoom:0.75} nên min-height phải bù 1/0.75.
   ============================================================ */
.pt-hero-hello{
  font-size:.7em;
  color:#fff;
  font-weight:900;
  letter-spacing:.01em;
  text-transform:none;
  text-indent:0;
  line-height:1.06;
  margin-bottom:6px;
  text-shadow:0 4px 34px rgba(0,0,0,.8), 0 0 26px rgba(233,235,238,.18);
}
.pt-hero-video{
  min-height:100vh;
  min-height:100svh;
  padding:88px 0 40px;
}
/* Desktop đang zoom 0.75 → bù để phủ đúng 100% màn hình thật */
@media(min-width:901px){
  .pt-hero-video{min-height:calc(100vh / var(--pgz, .75))}
}
@media(max-width:640px){
  .pt-hero-hello{font-size:.45em;margin-bottom:5px}
  .pt-hero-video{min-height:100svh;padding:76px 0 30px}
}

/* MOBILE HERO FIX (2026-07-21) — hết "hở" khoảng trống lớn trên đầu:
   ghim nội dung lên gần nav thay vì căn giữa màn 100svh */
@media(max-width:640px){
  .pt-hero-video{
    min-height:88svh;
    align-items:flex-start;
    padding:92px 0 34px;
  }
}

/* ============================================================
   SPOTLIGHT CARDS (2026-07-21) — card TRONG SUỐT + viền glow
   chạy theo con trỏ (port từ spotlight-card React sang vanilla).
   JS set --spx/--spy (px viewport, đã bù zoom) trên :root;
   background-attachment:fixed để mọi card cùng 1 hệ toạ độ.
   ============================================================ */
:root{--spx:50vw;--spy:38vh}
/* 1) Trong suốt hoá card */
.pt-glass{
  background:rgba(12,12,12,.34)!important;
  border-color:rgba(212,212,212,.12)!important;
}
.panel{background:rgba(12,12,12,.32)}
.reg-step-card{background:rgba(12,12,12,.36)}
.faq{background:rgba(12,12,12,.28)}
.pt-broker-item{background:rgba(255,255,255,.02)}
/* 2) Viền spotlight: ring sáng vàng quanh vị trí con trỏ + nền viền bạc mờ mặc định */
.pt-glass,.panel,.reg-step-card,.faq{position:relative}
.pt-glass::after,.panel::after,.reg-step-card::after,.faq::after{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1.5px;
  background:
    radial-gradient(300px 300px at var(--spx) var(--spy), rgba(255,222,130,1), rgba(242,205,110,.3) 55%, transparent 78%) fixed,
    linear-gradient(rgba(212,212,212,.1), rgba(212,212,212,.1));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
          mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          mask-composite:exclude;
  z-index:1;
}
/* 3) Vệt sáng mờ bên trong card quanh con trỏ */
.pt-glass::before,.panel::before,.reg-step-card::before,.faq::before{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(360px 360px at var(--spx) var(--spy), rgba(242,205,110,.1), transparent 72%) fixed;
  z-index:0;
}
/* Mobile / cảm ứng: không có con trỏ → tắt lớp glow động, giữ viền tĩnh */
@media(pointer:coarse){
  .pt-glass::after,.panel::after,.reg-step-card::after,.faq::after{
    background:linear-gradient(rgba(212,212,212,.13), rgba(212,212,212,.13));
  }
  .pt-glass::before,.panel::before,.reg-step-card::before,.faq::before{display:none}
}

/* ============================================================
   PODIUM AURA (2026-07-21) — Top 1/2/3 hào quang rực rỡ:
   VÀNG / BẠC / ĐỒNG. Viền kim loại sáng + quầng glow đa lớp
   + nhịp thở phát sáng (tôn trọng prefers-reduced-motion).
   ============================================================ */
/* ---- TOP 1 · VÀNG ---- */
.pt-prize-card.pt-prize-top1{
  border-color:rgba(255,216,84,.85)!important;
  box-shadow:
    0 0 0 1px rgba(255,216,84,.6),
    0 0 26px rgba(255,200,60,.5),
    0 0 80px -8px rgba(255,190,40,.6),
    0 22px 80px -18px rgba(255,190,40,.55);
}
.pt-prize-card.pt-prize-top1::after{
  padding:2px;
  background:linear-gradient(135deg,#ffe9a8 0%,#f2ca50 28%,#b8860b 52%,#f2ca50 76%,#fff3c4 100%)!important;
}
.pt-prize-card.pt-prize-top1::before{
  background:radial-gradient(75% 60% at 50% 0%, rgba(255,216,84,.14), transparent 70%)!important;
}
/* ---- TOP 2 · BẠC ---- */
.pt-prize-card.pt-prize-2{
  border-color:rgba(226,232,240,.8)!important;
  box-shadow:
    0 0 0 1px rgba(226,232,240,.5),
    0 0 22px rgba(214,222,232,.42),
    0 0 64px -10px rgba(214,222,232,.5),
    0 18px 64px -18px rgba(214,222,232,.42);
}
.pt-prize-card.pt-prize-2::after{
  padding:2px;
  background:linear-gradient(135deg,#ffffff 0%,#d7dde6 30%,#8e98a6 52%,#d7dde6 74%,#ffffff 100%)!important;
}
.pt-prize-card.pt-prize-2::before{
  background:radial-gradient(75% 60% at 50% 0%, rgba(226,232,240,.12), transparent 70%)!important;
}
/* ---- TOP 3 · ĐỒNG ---- */
.pt-prize-card.pt-prize-3{
  border-color:rgba(224,138,74,.8)!important;
  box-shadow:
    0 0 0 1px rgba(224,138,74,.5),
    0 0 22px rgba(205,127,50,.45),
    0 0 64px -10px rgba(205,127,50,.52),
    0 18px 64px -18px rgba(205,127,50,.45);
}
.pt-prize-card.pt-prize-3::after{
  padding:2px;
  background:linear-gradient(135deg,#ffd2a8 0%,#e08a4a 30%,#8c4f1f 52%,#e08a4a 74%,#ffd2a8 100%)!important;
}
.pt-prize-card.pt-prize-3::before{
  background:radial-gradient(75% 60% at 50% 0%, rgba(224,138,74,.12), transparent 70%)!important;
}
/* ---- Nhịp thở hào quang (chỉ khi không reduced-motion) ---- */
@media (prefers-reduced-motion: no-preference){
  .pt-prize-card.pt-prize-top1{animation:ptAuraGold 2.6s ease-in-out infinite alternate}
  .pt-prize-card.pt-prize-2{animation:ptAuraSilver 3s ease-in-out infinite alternate}
  .pt-prize-card.pt-prize-3{animation:ptAuraBronze 3.2s ease-in-out infinite alternate}
  @keyframes ptAuraGold{
    from{box-shadow:0 0 0 1px rgba(255,216,84,.5),0 0 20px rgba(255,200,60,.4),0 0 60px -8px rgba(255,190,40,.45),0 22px 70px -18px rgba(255,190,40,.4)}
    to{box-shadow:0 0 0 1px rgba(255,216,84,.75),0 0 36px rgba(255,200,60,.65),0 0 110px -6px rgba(255,190,40,.8),0 22px 90px -14px rgba(255,190,40,.7)}
  }
  @keyframes ptAuraSilver{
    from{box-shadow:0 0 0 1px rgba(226,232,240,.4),0 0 16px rgba(214,222,232,.34),0 0 48px -10px rgba(214,222,232,.4),0 18px 56px -18px rgba(214,222,232,.34)}
    to{box-shadow:0 0 0 1px rgba(226,232,240,.65),0 0 30px rgba(214,222,232,.55),0 0 88px -8px rgba(214,222,232,.66),0 18px 76px -14px rgba(214,222,232,.55)}
  }
  @keyframes ptAuraBronze{
    from{box-shadow:0 0 0 1px rgba(224,138,74,.4),0 0 16px rgba(205,127,50,.36),0 0 48px -10px rgba(205,127,50,.42),0 18px 56px -18px rgba(205,127,50,.36)}
    to{box-shadow:0 0 0 1px rgba(224,138,74,.66),0 0 30px rgba(205,127,50,.6),0 0 88px -8px rgba(205,127,50,.7),0 18px 76px -14px rgba(205,127,50,.6)}
  }
}
/* Mobile: quầng gọn hơn chút cho nhẹ máy */
@media(max-width:640px){
  .pt-prize-card.pt-prize-top1{box-shadow:0 0 0 1px rgba(255,216,84,.55),0 0 18px rgba(255,200,60,.45),0 0 52px -8px rgba(255,190,40,.55)}
  .pt-prize-card.pt-prize-2{box-shadow:0 0 0 1px rgba(226,232,240,.45),0 0 15px rgba(214,222,232,.38),0 0 44px -8px rgba(214,222,232,.46)}
  .pt-prize-card.pt-prize-3{box-shadow:0 0 0 1px rgba(224,138,74,.45),0 0 15px rgba(205,127,50,.4),0 0 44px -8px rgba(205,127,50,.48)}
}

/* HERO CHIPS (2026-07-21) — "con nhộng" tích hợp vào hero, tinh tế
   như stats bar: kính trong mờ, viền bạc mảnh, chữ dịu */
.pt-hero-chips-hero{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:8px;max-width:820px;margin:20px auto 0;
}
.pt-hero-chips-hero .pt-chip{
  background:rgba(10,10,10,.34);
  border:1px solid rgba(212,212,212,.16);
  color:#cfd4da;
  font-size:11.5px;font-weight:700;letter-spacing:.02em;
  padding:7px 14px;border-radius:999px;
  backdrop-filter:blur(6px);
  transition:border-color .25s ease,color .25s ease;
}
.pt-hero-chips-hero .pt-chip:hover{border-color:rgba(232,184,75,.45);color:#f5dd9a}
@media(max-width:640px){
  .pt-hero-chips-hero{gap:6px;margin-top:14px;max-width:340px}
  .pt-hero-chips-hero .pt-chip{font-size:10px;padding:6px 10px}
}



/* ============================================================
   SITE-WIDE OBSIDIAN (2026-07-21) — phủ hiệu ứng cho TẤT CẢ trang
   (Thể lệ, Phần thưởng, Rules, System, Winners…):
   1) Card trong suốt  2) Viền spotlight theo con trỏ
   3) Tiêu đề gradient kim loại VÀNG→BẠC như trang home
   ============================================================ */
/* 1) Trong suốt hoá card mọi trang */
.card,.tier,.step,.feat,.rule,.cta-box,.tele-box,.mr-card,.win-row,
.wp-sec,.wp-card,.wp-toc,.wp-doc,.rules-warning{
  background:rgba(12,12,12,.34)!important;
  border-color:rgba(212,212,212,.12)!important;
}
/* 2) Spotlight viền + vệt sáng trong (same hệ toạ độ --spx/--spy) */
.card,.tier,.step,.feat,.rule,.cta-box,.tele-box,.mr-card,.wp-sec,.wp-card,.wp-toc{position:relative}
.card::after,.tier::after,.step::after,.feat::after,.rule::after,
.cta-box::after,.tele-box::after,.mr-card::after,
.wp-sec::after,.wp-card::after,.wp-toc::after{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1.5px;
  background:
    radial-gradient(300px 300px at var(--spx) var(--spy), rgba(255,222,130,1), rgba(242,205,110,.3) 55%, transparent 78%) fixed,
    linear-gradient(rgba(212,212,212,.1), rgba(212,212,212,.1));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
          mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          mask-composite:exclude;
  z-index:1;
}
.card::before,.tier::before,.step::before,.feat::before,.rule::before,
.cta-box::before,.tele-box::before,.mr-card::before,
.wp-sec::before,.wp-card::before,.wp-toc::before{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(360px 360px at var(--spx) var(--spy), rgba(242,205,110,.1), transparent 72%) fixed;
  z-index:0;
}
@media(pointer:coarse){
  .card::after,.tier::after,.step::after,.feat::after,.rule::after,
  .cta-box::after,.tele-box::after,.mr-card::after,
  .wp-sec::after,.wp-card::after,.wp-toc::after{
    background:linear-gradient(rgba(212,212,212,.13), rgba(212,212,212,.13));
  }
  .card::before,.tier::before,.step::before,.feat::before,.rule::before,
  .cta-box::before,.tele-box::before,.mr-card::before,
  .wp-sec::before,.wp-card::before,.wp-toc::before{display:none}
}
/* 3) Tiêu đề mọi trang: gradient kim loại VÀNG→BẠC đồng bộ hero */
.sec-head h2,.wp-sec h3{
  background:linear-gradient(90deg,#f6d165 0%,#ecc255 18%,#e8b84b 32%,#d8cba4 50%,#c6cbd2 68%,#d8dce2 84%,#f3f5f8 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important;
}

/* BXH HOÀ TAN (2026-07-21) — bảng xếp hạng ở home không đóng khung card:
   block SITE-WIDE ở trên vô tình bọc .panel thành card → gỡ riêng cho BXH */
.leaderboard-panel{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
.leaderboard-panel::before,
.leaderboard-panel::after{display:none!important}

/* ============================================================
   HOME FULLPAGE SECTIONS (2026-07-21) — mỗi section home chiếm
   trọn 1 màn hình, nội dung căn giữa dọc; tiêu đề phóng to.
   (Desktop bù zoom 0.75 → 100vh/.75; mobile dùng 100svh)
   ============================================================ */
[data-view="home"] .pt-sec{
  display:flex;
  align-items:center;
  min-height:100vh;
  min-height:100svh;
}
[data-view="home"] .pt-sec > .pt-wrap{width:100%}
@media(min-width:901px){
  [data-view="home"] .pt-sec{min-height:calc(100vh / var(--pgz, .75))}
}
/* Tiêu đề section to hơn cho xứng khung full màn */
[data-view="home"] .pt-h2{font-size:clamp(26px,4.2vw,44px)}
[data-view="home"] .pt-h2-bar{width:150px;margin:18px auto 38px}
@media(max-width:640px){
  [data-view="home"] .pt-h2{font-size:22px}
  [data-view="home"] .pt-h2-bar{width:100px;margin:12px auto 24px}
}

/* BXH GLASS (2026-07-21) — bảng xếp hạng kính trong suốt, viền BẠC */
.lb-ftmo-table{
  background:rgba(12,12,12,.3)!important;
  border:1px solid rgba(214,220,228,.28)!important;
  border-radius:14px!important;
  backdrop-filter:blur(10px);
  box-shadow:0 0 0 1px rgba(214,220,228,.06), 0 22px 60px -34px rgba(0,0,0,.8);
}
.lb-ftmo-table thead tr{background:rgba(214,220,228,.05)!important;color:#c9cdd4!important}
.lb-ftmo-table th{border-bottom:1px solid rgba(214,220,228,.2)!important}
.lb-ftmo-table td{border-bottom:1px solid rgba(214,220,228,.08)!important}
.lb-ftmo-table tbody tr:hover{background:rgba(214,220,228,.05)!important}
/* card từng dòng/ngày nếu render dạng card */
.lb-ftmo-card{
  background:rgba(12,12,12,.3)!important;
  border:1px solid rgba(214,220,228,.24)!important;
  backdrop-filter:blur(10px);
}
/* ô tra cứu + chip lọc đồng bộ kính bạc */
.lb-rank-search input{
  background:rgba(12,12,12,.4)!important;
  border:1px solid rgba(214,220,228,.26)!important;
  border-radius:10px!important;
  backdrop-filter:blur(6px);
}
#home-board .chips .chip{
  background:rgba(12,12,12,.34);
  border-color:rgba(214,220,228,.24);
}

/* ============================================================
   HOME CONTENT SCALE-UP (2026-07-21) — phóng to nội dung cho
   vừa khung fullpage (desktop ≥901px), gỡ bản thu 76% cũ.
   ============================================================ */
@media(min-width:901px){
  [data-view="home"] .pt-sec .pt-wrap{max-width:1340px}
  /* — GIẢI THƯỞNG: gỡ thu nhỏ 76%, phóng to podium — */
  .pt-hero-prizes .pt-prize-card{padding:30px 24px 26px}
  .pt-hero-prizes .pt-prize-top1{padding-top:38px}
  .pt-hero-prizes .pt-prize-medal{height:60px;margin-bottom:12px}
  .pt-hero-prizes .pt-prize-crown{height:66px}
  .pt-hero-prizes .pt-prize-rank{font-size:24px}
  .pt-hero-prizes .pt-prize-top1 .pt-prize-rank{font-size:30px}
  .pt-hero-prizes .pt-prize-val{font-size:16px;margin-bottom:14px}
  .pt-hero-prizes .pt-prize-top1 .pt-prize-val{font-size:19px}
  .pt-hero-prizes .pt-prize-img{max-height:130px;margin-bottom:14px}
  .pt-hero-prizes .pt-prize-img-top1{max-height:190px}
  .pt-hero-prizes .pt-prize-perks li{font-size:14px}
  .pt-hero-prizes .pt-lower-title{font-size:18px}
  .pt-hero-prizes .pt-lower-txt p{font-size:14.5px}
  .pt-hero-prizes .pt-lower-val{font-size:26px}
  .pt-hero-prizes .pt-lower-card{padding:22px 26px}
  /* — ĐIỀU KIỆN: 3 card to — */
  .pt-cond-grid{gap:28px}
  .pt-cond-card{padding:40px 32px}
  .pt-cond-ic{font-size:46px;margin-bottom:14px}
  .pt-cond-card>b{font-size:21px;margin-bottom:12px}
  .pt-cond-card p{font-size:16px;line-height:1.7}
  .pt-broker-item{font-size:15px;padding:11px 18px;gap:10px}
  .pt-broker-item img{width:26px;height:26px}
  /* — LUẬT CHƠI: 4 card to — */
  .pt-fair-grid{gap:26px}
  .pt-fair-card{padding:32px 30px;border-radius:22px;gap:20px}
  .pt-fair-ic{flex:0 0 64px;height:64px;font-size:30px;border-radius:18px}
  .pt-fair-txt > b{font-size:20px;margin-bottom:8px}
  .pt-fair-txt p{font-size:15.5px;line-height:1.68}
  /* — QUY TRÌNH: 4 step to — */
  .pt-steps-grid{gap:22px}
  .pt-step-card{padding:30px 24px}
  /* badge số bước GIỮ NHỎ gọn trong viên tròn (30px từng làm số tràn đè icon — fix 22/07) */
  .pt-step-num{font-size:12px;width:30px;height:30px}
  .pt-step-ic{font-size:34px}
  .pt-step-body b{font-size:20px}
  .pt-step-body p{font-size:15px}
  .pt-step-tag{font-size:13.5px}
  .pt-step-more{font-size:13px}
  /* — FAQ rộng + chữ to — */
  .pt-faq .pt-wrap-narrow{max-width:1120px}
  .faq summary{font-size:17.5px;padding:21px 52px 21px 24px}
  .faq p{font-size:15.5px;line-height:1.7}
  /* — BXH rộng hơn — */
  #home-board .leaderboard-panel{max-width:1240px}
  .pt-bxh-note{font-size:14px}
}

/* HOME SCALE-UP v2 (2026-07-21) — card cao theo % màn hình để nội dung
   lấp gần đầy khung fullpage (desktop, đã bù zoom .75) */
@media(min-width:901px){
  .pt-cond-card{
    min-height:calc(48vh / var(--pgz, .75));
    display:flex;flex-direction:column;justify-content:center;align-items:center;
  }
  .pt-cond-ic{font-size:54px;margin-bottom:18px}
  .pt-cond-card>b{font-size:23px;margin-bottom:14px}
  .pt-cond-card p{font-size:17px;max-width:340px}
  .pt-fair-card{min-height:calc(23vh / var(--pgz, .75))}
  .pt-fair-ic{flex:0 0 72px;height:72px;font-size:34px}
  .pt-fair-txt > b{font-size:21px}
  .pt-fair-txt p{font-size:16px}
  .pt-step-card{min-height:calc(36vh / var(--pgz, .75));justify-content:center}
  .pt-step-body b{font-size:21px}
  .pt-step-body p{font-size:15.5px}
  .pt-hero-prizes .pt-prize-img{max-height:150px}
  .pt-hero-prizes .pt-prize-img-top1{max-height:225px}
}

/* HOME SCALE-UP v3 — nâng chiều cao card lấp ~85% khung màn */
@media(min-width:901px){
  .pt-cond-card{min-height:calc(60vh / var(--pgz, .75))}
  .pt-fair-card{min-height:calc(28vh / var(--pgz, .75))}
  .pt-step-card{min-height:calc(50vh / var(--pgz, .75))}
}

/* HERO SCALE-UP (2026-07-21) — phóng to toàn bộ nội dung hero desktop */
@media(min-width:901px){
  .pt-title-arena{font-size:clamp(60px,7vw,112px)!important}
  .pt-hero-video .pt-wrap{max-width:1560px}
  .pt-hero-video .pt-hero-sub{font-size:clamp(18px,1.9vw,25px);max-width:920px;margin-bottom:28px}
  .pt-hero-video .pt-hero-cta{gap:16px}
  .pt-hero-video .pt-btn-xl{font-size:18px;padding:19px 46px;border-radius:14px}
  .pt-hero-stats{max-width:920px;margin-top:36px;padding-top:24px}
  .pt-stat b{font-size:clamp(32px,3.2vw,44px)}
  .pt-stat span{font-size:12.5px;margin-top:6px}
  .pt-hero-video .pt-hero-slogan{font-size:15px;margin-top:18px}
  .pt-hero-chips-hero{max-width:1040px;gap:10px;margin-top:24px}
  .pt-hero-chips-hero .pt-chip{font-size:13.5px;padding:9px 18px}
}

/* ============================================================
   NAV PILL (2026-07-21) — gom cả thanh top thành CON NHỘNG nổi:
   kính trong suốt, viền bạc nhẹ, spotlight + phóng to khi hover
   (hover scale do cursor-fx.js v4 xử lý — .nav .wrap trong REACT_SEL)
   ============================================================ */
@media(min-width:881px){
  .nav{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding:12px 0!important;
  }
  .nav .wrap{
    background:rgba(10,10,10,.44)!important;
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    border:1px solid rgba(214,220,228,.24)!important;
    border-radius:999px!important;
    padding:8px 12px 8px 22px!important;
    max-width:1220px;
    box-shadow:0 16px 44px -24px rgba(0,0,0,.85);
    position:relative;
  }
  /* spotlight ring theo con trỏ trên viền nhộng (cùng hệ --spx/--spy) */
  .nav .wrap::after{
    content:"";
    pointer-events:none;
    position:absolute;
    inset:0;
    border-radius:999px;
    padding:1.5px;
    background:
      radial-gradient(280px 280px at var(--spx) var(--spy), rgba(255,222,130,.95), rgba(242,205,110,.25) 55%, transparent 76%) fixed,
      linear-gradient(rgba(214,220,228,.12), rgba(214,220,228,.12));
    -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
            mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
            mask-composite:exclude;
    z-index:1;
  }
  .nav .links a{border-radius:999px;transition:background .2s ease,color .2s ease}
  .nav .links a:hover{background:rgba(214,220,228,.09)}
  .nav-timebar{border-radius:999px!important}
}

/* ============================================================
   MOBILE TOUCH FX (2026-07-21) — bản cảm ứng của hiệu ứng con trỏ:
   chạm → viền loé vàng tại điểm chạm (class kn-touch-glow ~0.75s),
   nhấn giữ → phóng to + phát sáng như hover desktop.
   ============================================================ */
@media(pointer:coarse){
  /* Loé viền vàng tại điểm chạm (JS set --spx/--spy + kn-touch-glow) */
  html.kn-touch-glow .pt-glass::after,
  html.kn-touch-glow .card::after,
  html.kn-touch-glow .tier::after,
  html.kn-touch-glow .step::after,
  html.kn-touch-glow .feat::after,
  html.kn-touch-glow .rule::after,
  html.kn-touch-glow .cta-box::after,
  html.kn-touch-glow .tele-box::after,
  html.kn-touch-glow .mr-card::after,
  html.kn-touch-glow .wp-sec::after,
  html.kn-touch-glow .wp-card::after,
  html.kn-touch-glow .wp-toc::after,
  html.kn-touch-glow .faq::after,
  html.kn-touch-glow .reg-step-card::after{
    background:
      radial-gradient(240px 240px at var(--spx) var(--spy), rgba(255,222,130,.95), rgba(242,205,110,.28) 55%, transparent 76%) fixed,
      linear-gradient(rgba(212,212,212,.13), rgba(212,212,212,.13));
    transition:background .2s ease;
  }
  /* Nhấn = phóng to + phát sáng (feedback tức thì) */
  .pt-btn,.btn,.pt-portal-btn,.pt-chip,.pt-broker-item,
  .pt-glass,.card,.wp-sec,.wp-card,.wp-toc,.rule,.faq,.reg-step-card,
  .mr-card,.win-row,.tier,.step,.feat,.lb-ftmo-card{
    transition:transform .16s ease, box-shadow .22s ease;
  }
  .pt-btn:active,.btn:active,.pt-portal-btn:active,
  .pt-chip:active,.pt-broker-item:active{
    transform:scale(1.06);
    box-shadow:0 0 26px -2px rgba(232,184,75,.55), 0 0 0 1px rgba(214,220,228,.35);
  }
  .pt-glass:active,.card:active,.wp-sec:active,.wp-card:active,.wp-toc:active,
  .rule:active,.faq:active,.reg-step-card:active,.mr-card:active,.win-row:active,
  .tier:active,.step:active,.feat:active,.lb-ftmo-card:active{
    transform:scale(1.025);
    box-shadow:0 0 34px -4px rgba(232,184,75,.5), 0 0 70px -20px rgba(232,184,75,.45), 0 0 0 1px rgba(214,220,228,.32);
  }
}

/* ============================================================
   BXH HOVER FX (2026-07-21) — 3 card Top + 7 hàng dưới phát sáng
   & phản ứng con trỏ (block BXH GLASS trước đó lỡ đè mất hover)
   ============================================================ */
/* 3 card Top 1-3 */
.lb-ftmo-card{overflow:visible!important}
.lb-ftmo-card:hover{
  border-color:rgba(255,222,130,.65)!important;
  box-shadow:
    0 0 0 1px rgba(255,222,130,.4),
    0 0 30px -4px rgba(232,184,75,.55),
    0 0 74px -16px rgba(232,184,75,.5),
    0 24px 70px -36px rgba(0,0,0,.8)!important;
  transform:translateY(-5px) scale(1.03);
}
/* 7 hàng #4-10 trong bảng */
.lb-ftmo-table tbody tr{
  transition:background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.lb-ftmo-table tbody tr:hover{
  background:rgba(232,184,75,.08)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,222,130,.38),
    inset 0 0 30px -10px rgba(232,184,75,.42);
  transform:scale(1.006);
}
.lb-ftmo-table tbody tr:hover td{color:#fff}
/* Mobile: chạm cũng phản ứng */
@media(pointer:coarse){
  .lb-ftmo-card:active{
    transform:scale(1.025);
    border-color:rgba(255,222,130,.6)!important;
    box-shadow:0 0 30px -4px rgba(232,184,75,.5), 0 0 0 1px rgba(255,222,130,.35)!important;
  }
  .lb-ftmo-table tbody tr:active{
    background:rgba(232,184,75,.1)!important;
    box-shadow:inset 0 0 0 1px rgba(255,222,130,.4);
  }
}

/* ============================================================
   PODIUM STAGE (2026-07-21) — sân khấu vinh danh 3 giải:
   cột sáng rọi + đế sàn phản quang + viền thở + Top1 tôn cao
   ============================================================ */
/* chip CHAMPION không bị cắt + thành huy hiệu nổi */
.pt-prize-card{overflow:visible!important}
.pt-champ-chip{
  top:-17px;
  z-index:6;
  font-size:13px;
  padding:7px 24px;
  border:1px solid #fff3c4;
  box-shadow:0 8px 24px -8px rgba(255,195,50,.8), 0 0 0 3px rgba(255,216,84,.18);
}
/* Top1 tôn cao khỏi 2 bên (margin để không đụng transform của cursor-fx) */
@media(min-width:901px){
  .pt-prize-top1{margin-top:-18px}
  .pt-hero-prizes .pt-prize-crown{height:78px}
}
/* Cột sáng rọi từ trên + đế sàn phản quang (đè ::before của PODIUM AURA) */
.pt-prize-card.pt-prize-top1::before{
  background:
    radial-gradient(72% 52% at 50% 0%, rgba(255,216,84,.17), transparent 70%),
    radial-gradient(58% 15% at 50% 101%, rgba(255,205,80,.42), transparent 80%)!important;
}
.pt-prize-card.pt-prize-2::before{
  background:
    radial-gradient(72% 52% at 50% 0%, rgba(226,232,240,.13), transparent 70%),
    radial-gradient(58% 15% at 50% 101%, rgba(214,222,232,.36), transparent 80%)!important;
}
.pt-prize-card.pt-prize-3::before{
  background:
    radial-gradient(72% 52% at 50% 0%, rgba(224,138,74,.14), transparent 70%),
    radial-gradient(58% 15% at 50% 101%, rgba(205,127,50,.38), transparent 80%)!important;
}
/* Cúp / vương miện phát quang đúng màu hạng */
.pt-prize-top1 .pt-prize-medal{filter:drop-shadow(0 0 22px rgba(255,205,80,.65)) drop-shadow(0 6px 14px rgba(0,0,0,.5))}
.pt-prize-2 .pt-prize-medal{filter:drop-shadow(0 0 18px rgba(214,222,232,.55)) drop-shadow(0 6px 14px rgba(0,0,0,.5))}
.pt-prize-3 .pt-prize-medal{filter:drop-shadow(0 0 18px rgba(224,138,74,.6)) drop-shadow(0 6px 14px rgba(0,0,0,.5))}
/* Ảnh giải thưởng nổi khối */
.pt-prize-img{filter:drop-shadow(0 14px 30px rgba(0,0,0,.55))}
/* Viền kim loại THỞ sáng (ring ::after của PODIUM AURA) */
@media (prefers-reduced-motion: no-preference){
  .pt-prize-card.pt-prize-top1::after{animation:ptRingBreath 2.6s ease-in-out infinite alternate}
  .pt-prize-card.pt-prize-2::after{animation:ptRingBreath 3s ease-in-out infinite alternate}
  .pt-prize-card.pt-prize-3::after{animation:ptRingBreath 3.4s ease-in-out infinite alternate}
  @keyframes ptRingBreath{
    from{filter:brightness(.85)}
    to{filter:brightness(1.6) saturate(1.15)}
  }
  /* vương miện Top1 lơ lửng nhẹ */
  .pt-prize-crown{animation:ptCrownFloat 3.4s ease-in-out infinite alternate}
  @keyframes ptCrownFloat{
    from{transform:translateY(0)}
    to{transform:translateY(-7px)}
  }
}
@media(max-width:640px){
  .pt-champ-chip{top:-13px;font-size:11px;padding:5px 16px}
}

/* STEPS WIDER (2026-07-21) — card Quy Trình rộng ra, thấp bớt, cân đối */
@media(min-width:901px){
  [data-view="home"] .pt-steps .pt-wrap{max-width:1600px}
  .pt-step-card{min-height:calc(36vh / var(--pgz, .75));padding:34px 30px 28px}
  .pt-steps-grid{gap:18px}
  .pt-step-arrow{flex:0 0 auto;padding:0 4px}
  /* dồn nội dung cân giữa, bớt khoảng ruột trống */
  .pt-step-body{justify-content:center;gap:12px}
  .pt-step-body p{max-width:280px}
}

/* HIDDEN FIX (2026-07-21) — .btn có display:inline-flex đè mất thuộc tính
   [hidden] (bài học modal cũ) → nút "Gửi đăng ký" lộ ở mọi bước wizard.
   Ép mọi phần tử [hidden] thật sự ẩn. */
[hidden]{display:none!important}

/* SUPPORT POPUP ACTIONS (2026-07-21) — 2 nút chính sau khi gửi form:
   Vào Group cuộc thi (xanh Telegram) + Nhắn nhân viên phụ trách (vàng) */
.support-popup-actions{
  display:grid;
  gap:10px;
  margin:0 0 14px;
}
.support-popup-btn{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:50px;
  padding:13px 18px;
  border-radius:14px;
  font-size:15px;
  font-weight:900;
  text-decoration:none;
  transition:transform .16s ease, box-shadow .2s ease, filter .2s ease;
}
.support-popup-btn:hover{transform:translateY(-2px) scale(1.02)}
.support-popup-btn-group{
  color:#fff;
  background:linear-gradient(135deg,#2AABEE,#1d8fd1);
  border:1px solid rgba(140,210,255,.5);
  box-shadow:0 12px 30px -14px rgba(42,171,238,.7);
}
.support-popup-btn-group:hover{box-shadow:0 16px 38px -14px rgba(42,171,238,.9)}
.support-popup-btn-staff{
  color:#241a00;
  background:linear-gradient(135deg,#f5dd9a,#e8b84b 55%,#c9962e);
  border:1px solid rgba(255,240,200,.6);
  box-shadow:0 12px 30px -14px rgba(232,184,75,.7);
}
.support-popup-btn-staff:hover{box-shadow:0 16px 38px -14px rgba(232,184,75,.9)}

/* PERK BADGES (2026-07-21) — 2 đặc quyền Top 1 thành huy hiệu vàng */
.pt-prize-perks{
  display:grid;
  gap:8px;
  margin:2px 0 16px;
  line-height:1.4;
}
.pt-prize-perks li{
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 14px;
  border-radius:999px;
  border:1px solid rgba(242,202,80,.32);
  background:linear-gradient(90deg, rgba(242,202,80,.1), rgba(242,202,80,.03) 60%, transparent);
  color:#e9dfc4;
  font-size:13px;
  font-weight:600;
  text-align:left;
  box-shadow:inset 0 1px 0 rgba(255,240,200,.08);
  transition:border-color .2s ease, box-shadow .2s ease;
}
.pt-prize-perks li:hover{
  border-color:rgba(255,222,130,.6);
  box-shadow:inset 0 1px 0 rgba(255,240,200,.12), 0 0 18px -6px rgba(232,184,75,.45);
}
.pt-prize-perks li b{
  background:linear-gradient(90deg,#ffe9a8,#f2ca50 55%,#e8b84b);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-weight:900;
}
.pt-perk-ic{
  flex:0 0 26px;
  height:26px;
  display:grid;place-items:center;
  border-radius:50%;
  background:rgba(242,202,80,.14);
  border:1px solid rgba(242,202,80,.38);
  font-size:13px;
  filter:drop-shadow(0 0 6px rgba(232,184,75,.5));
}
@media(max-width:640px){
  .pt-prize-perks{gap:6px;margin-bottom:12px}
  .pt-prize-perks li{padding:7px 11px;font-size:11.5px;gap:8px}
  .pt-perk-ic{flex-basis:22px;height:22px;font-size:11px}
}

/* WP FLAT FIX (2026-07-21) — trang Thể lệ: .wp-sec/.wp-doc là VĂN BẢN phẳng,
   không phải card. Block SITE-WIDE lỡ đóng hộp tất cả → trả về phẳng.
   (.wp-toc mục lục + .wp-card giữ dạng card vì gốc vốn là card) */
.wp-sec,.wp-doc{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.wp-sec{border-bottom:1px solid rgba(214,220,228,.1)!important;padding:0 0 30px!important}
.wp-sec:last-child{border-bottom:0!important}
.wp-sec::before,.wp-sec::after,
.wp-doc::before,.wp-doc::after{display:none!important;content:none!important}

/* WP SCALE +10% (2026-07-21) — phóng to nội dung trang Thể lệ */
.wp-doc{max-width:910px}
.wp-sec h3{font-size:clamp(22px,3.3vw,29px)!important}
.wp-sec p{font-size:17px!important;line-height:1.78!important}
.wp-list,.wp-rules{font-size:16.5px!important;line-height:1.75!important}
.wp-toc{padding:26px 30px}
.wp-toc a{font-size:16px}
.wp-note{font-size:15px}
.wp-card p,.wp-card li{font-size:16px}
@media(max-width:640px){
  .wp-sec h3{font-size:20px!important}
  .wp-sec p{font-size:15px!important}
  .wp-list,.wp-rules{font-size:14.5px!important}
}

/* ============================================================
   MOBILE FINAL POLISH (2026-07-21)
   1) Đồng hồ "Thời gian đăng ký còn lại" xếp 2 tầng gọn trên topbar
   2) PERF: tắt backdrop-blur ở card/chip trên mobile (GPU yếu) —
      giữ blur cho nav/drawer; cuộn mượt hơn hẳn
   ============================================================ */
@media(max-width:880px){
  #nav-timebar{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    gap:1px!important;
    padding:5px 11px!important;
    width:auto!important;
  }
  #nav-timebar span{
    display:block!important;
    font-size:8.5px!important;
    letter-spacing:.05em;
    text-transform:uppercase;
    white-space:nowrap;
    opacity:.85;
    line-height:1.1;
  }
  #nav-timebar b{
    font-size:12.5px!important;
    line-height:1.1;
    white-space:nowrap;
  }
}
@media(max-width:640px){
  .pt-glass,.panel,.card,.reg-step-card,.faq,.wp-toc,.wp-card,
  .pt-chip,.pt-broker-item,.lb-ftmo-table,.lb-ftmo-card,
  .pt-lower-card,.pt-cond-card,.pt-fair-card,.pt-step-card{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}

/* ============================================================
   COND RICH CARDS (2026-07-21) — card Điều Kiện kiểu Kahoot:
   badge + icon + tiêu đề + checklist + CTA + visual lấp đáy.
   Huỷ min-height 60vh căn giữa rỗng của scale-up cũ.
   ============================================================ */
.pt-sec-sub{
  margin:-16px auto 34px;
  text-align:center;
  color:#9a9da3;
  font-size:15.5px;
  max-width:640px;
  line-height:1.6;
}
.pt-cond-card{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  text-align:left;
  min-height:0!important;
  justify-content:flex-start!important;
  padding:26px 24px 22px!important;
}
.pt-cond-badge{
  position:absolute;
  top:16px;right:16px;
  padding:5px 13px;
  border-radius:999px;
  font-size:10.5px;font-weight:900;letter-spacing:.09em;
  background:rgba(232,184,75,.13);
  border:1px solid rgba(232,184,75,.45);
  color:#f5dd9a;
}
.pt-cond-card .pt-cond-ic{font-size:40px!important;margin-bottom:12px!important;text-align:left}
.pt-cond-card>b{font-size:20px!important;text-align:left;margin-bottom:8px!important}
.pt-cond-card p{font-size:14.5px!important;max-width:none!important;text-align:left;margin-bottom:0}
.pt-cond-card .hl-brand{color:var(--gold);font-weight:800}
.pt-cond-list{
  list-style:none;
  margin:14px 0 0;padding:0;
  display:grid;gap:9px;
}
.pt-cond-list li{
  display:flex;gap:10px;align-items:flex-start;
  color:#c9cdd4;font-size:13.5px;line-height:1.5;
}
.pt-cond-list li::before{
  content:"✓";
  flex:0 0 auto;
  color:#f2ca50;font-weight:900;
  text-shadow:0 0 8px rgba(242,202,80,.5);
}
.pt-cond-price{
  font-family:"Montserrat",var(--font-display);
  font-size:46px;font-weight:900;line-height:1;
  margin:4px 0 10px;
  background:linear-gradient(90deg,#ffe9a8,#f2ca50 55%,#e8b84b);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.pt-cond-price small{font-size:20px;font-weight:800}
.pt-cond-cta{margin-top:18px;width:100%;justify-content:center}
.pt-cond-visual{
  margin-top:16px;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(214,220,228,.14);
  background:rgba(255,255,255,.02);
}
.pt-cond-visual img{display:block;width:100%;height:150px;object-fit:cover;object-position:center 62%;opacity:.92}
.pt-cond-visual-cash img{object-fit:contain;padding:8px;height:150px}
.pt-cond-brokers{
  margin-top:16px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:8px;
  justify-content:stretch;
}
.pt-cond-brokers .pt-broker-item{justify-content:center}
@media(min-width:901px){
  .pt-cond-card{min-height:0!important}
}
@media(max-width:640px){
  .pt-sec-sub{font-size:13px;margin:-8px auto 22px}
  .pt-cond-card{padding:20px 16px 16px!important}
  .pt-cond-card .pt-cond-ic{font-size:32px!important}
  .pt-cond-card>b{font-size:17px!important}
  .pt-cond-price{font-size:36px}
  .pt-cond-visual img{height:120px}
}

/* STEP CARDS FILL (2026-07-21) — lấp ruột trống card Quy Trình */
.pt-step-list{
  list-style:none;
  margin:12px 0;
  padding:0;
  display:grid;
  gap:8px;
  text-align:left;
  width:100%;
}
.pt-step-list li{
  display:flex;gap:9px;align-items:flex-start;
  color:#c9cdd4;font-size:13px;line-height:1.5;
}
.pt-step-list li::before{
  content:"✓";flex:0 0 auto;
  color:#f2ca50;font-weight:900;
  text-shadow:0 0 8px rgba(242,202,80,.5);
}
@media(min-width:901px){
  .pt-step-card{min-height:calc(42vh / var(--pgz, .75))}
  .pt-step-list li{font-size:13.5px}
}
@media(max-width:640px){
  .pt-step-list{gap:6px;margin:9px 0}
  .pt-step-list li{font-size:12px}
}

/* ============================================================
   HORIZON GLOW (2026-07-21) — chuyển section kiểu FTMO:
   đường chân trời sáng + quầng glow mềm lan xuống, luân phiên
   VÀNG (lớp lẻ) ↔ BẠC (lớp chẵn) đúng chủ đề Obsidian.
   (Nâng cấp ::before divider cũ — cùng selector, đứng sau thắng)
   ============================================================ */
[data-view="home"] .pt-sec::before{
  content:"";
  position:absolute;
  top:0;left:50%;transform:translateX(-50%);
  width:min(1500px,100%);
  height:150px;
  pointer-events:none;
  background:
    radial-gradient(48% 120px at 50% 0, rgba(232,184,75,.14), rgba(232,184,75,.04) 55%, transparent 75%),
    linear-gradient(90deg, transparent, rgba(255,222,130,.65) 38%, #ffe9a8 50%, rgba(255,222,130,.65) 62%, transparent);
  background-repeat:no-repeat;
  background-size:100% 100%, min(1160px,88%) 1px;
  background-position:center top, center top;
}
[data-view="home"] .pt-sec:nth-of-type(even)::before{
  background:
    radial-gradient(48% 120px at 50% 0, rgba(214,220,228,.13), rgba(214,220,228,.04) 55%, transparent 75%),
    linear-gradient(90deg, transparent, rgba(226,232,240,.6) 38%, #f2f4f7 50%, rgba(226,232,240,.6) 62%, transparent);
  background-repeat:no-repeat;
  background-size:100% 100%, min(1160px,88%) 1px;
  background-position:center top, center top;
}
/* Chân trời VÀNG trên footer (như FTMO) */
footer{position:relative}
footer::before{
  content:"";
  position:absolute;
  top:0;left:50%;transform:translateX(-50%);
  width:min(1500px,100%);
  height:120px;
  pointer-events:none;
  background:
    radial-gradient(46% 100px at 50% 0, rgba(232,184,75,.15), transparent 72%),
    linear-gradient(90deg, transparent, rgba(255,222,130,.6) 40%, #ffe9a8 50%, rgba(255,222,130,.6) 60%, transparent);
  background-repeat:no-repeat;
  background-size:100% 100%, min(1160px,88%) 1px;
  background-position:center top, center top;
}
@media(max-width:640px){
  [data-view="home"] .pt-sec::before,
  [data-view="home"] .pt-sec:nth-of-type(even)::before{height:90px}
  footer::before{height:70px}
}

/* ===== PODIUM VANG / BAC / DONG — Top 1/2/3 kim loai sang thuong truc (2026-07-21) =====
   Yeu cau anh: card top 1-2-3 nhu mau phan thuong, sang mac dinh, khong can hover. */
.lb-ftmo-card.lb-ftmo-rank-1{
  border:1px solid rgba(240,205,95,.85)!important;
  background:
    linear-gradient(150deg, rgba(240,205,95,.22), rgba(150,106,30,.14) 42%, rgba(26,21,10,.95) 80%),
    radial-gradient(circle at 82% 0, rgba(255,220,120,.32), transparent 46%) !important;
  box-shadow:
    0 0 34px -4px rgba(240,205,95,.55),
    inset 0 1px 0 rgba(255,232,160,.45),
    inset 0 -18px 34px -26px rgba(240,205,95,.5),
    0 18px 40px -30px rgba(0,0,0,.9);
}
.lb-ftmo-card.lb-ftmo-rank-2{
  border:1px solid rgba(214,220,228,.7)!important;
  background:
    linear-gradient(150deg, rgba(214,220,228,.16), rgba(120,128,140,.12) 42%, rgba(18,20,24,.95) 80%),
    radial-gradient(circle at 82% 0, rgba(230,236,244,.22), transparent 46%) !important;
  box-shadow:
    0 0 28px -6px rgba(214,220,228,.45),
    inset 0 1px 0 rgba(240,244,250,.4),
    inset 0 -18px 34px -26px rgba(214,220,228,.35),
    0 18px 40px -30px rgba(0,0,0,.9);
}
.lb-ftmo-card.lb-ftmo-rank-3{
  border:1px solid rgba(205,138,74,.75)!important;
  background:
    linear-gradient(150deg, rgba(205,138,74,.18), rgba(120,72,32,.14) 42%, rgba(22,15,9,.95) 80%),
    radial-gradient(circle at 82% 0, rgba(224,155,94,.26), transparent 46%) !important;
  box-shadow:
    0 0 28px -6px rgba(205,138,74,.5),
    inset 0 1px 0 rgba(236,178,120,.4),
    inset 0 -18px 34px -26px rgba(205,138,74,.4),
    0 18px 40px -30px rgba(0,0,0,.9);
}
/* Nhan "Top N" + so hang nhuom mau kim loai tuong ung */
.lb-ftmo-rank-1 .lb-ftmo-top-label,.lb-ftmo-rank-1 .lb-ftmo-rank{color:#f2ca50;text-shadow:0 0 14px rgba(242,202,80,.55)}
.lb-ftmo-rank-2 .lb-ftmo-top-label,.lb-ftmo-rank-2 .lb-ftmo-rank{color:#dde3ea;text-shadow:0 0 12px rgba(221,227,234,.5)}
.lb-ftmo-rank-3 .lb-ftmo-top-label,.lb-ftmo-rank-3 .lb-ftmo-rank{color:#e09b5e;text-shadow:0 0 12px rgba(224,155,94,.5)}
/* Hover chi nhac nhe them, mau da sang san */
.lb-ftmo-card.lb-ftmo-rank-1:hover{border-color:rgba(255,224,130,.95)}
.lb-ftmo-card.lb-ftmo-rank-2:hover{border-color:rgba(235,240,246,.9)}
.lb-ftmo-card.lb-ftmo-rank-3:hover{border-color:rgba(226,160,100,.9)}

/* ===== CUP + VUONG MIEN trong card Top 1-3 BXH (2026-07-21, dung bo hinh phan giai thuong) ===== */
.rank-trophy img{width:100%;height:100%;object-fit:contain;display:block}
.lb-ftmo-trophy{width:46px;height:46px;flex:0 0 46px;display:inline-flex;align-items:center;justify-content:center}
.lb-ftmo-rank-1 .lb-ftmo-trophy{width:56px;height:56px;flex-basis:56px;filter:drop-shadow(0 0 12px rgba(242,202,80,.7))}
.lb-ftmo-rank-2 .lb-ftmo-trophy{filter:drop-shadow(0 0 9px rgba(214,220,228,.6))}
.lb-ftmo-rank-3 .lb-ftmo-trophy{filter:drop-shadow(0 0 9px rgba(205,138,74,.6))}
/* icon nho trong tieu de phan thuong (rank-title) cung dung anh */
.rank-title .rank-trophy{width:22px;height:22px;display:inline-flex;vertical-align:middle}

/* ===== MOBILE PASTE (2026-07-21 dem): dam bao moi o nhap deu dan/copy duoc ===== */
input,textarea,select{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}

/* ===== BXH header gon (22/07): bo cum TOP10/tab/ngay — chi con o tra cuu, canh giua, to hon ===== */
.leaderboard-titlebar.lb-search-center{justify-content:center!important}
.lb-rank-search-big{display:flex;gap:8px;width:min(500px,100%)}
.lb-rank-search-big input{flex:1;padding:12px 18px!important;font-size:15px!important;border-radius:999px!important}
.lb-rank-search-big .btn{padding:12px 24px!important;font-size:14px!important;border-radius:999px!important;white-space:nowrap}

/* ===== HIỆU ỨNG "THỞ" — web sống động (2026-07-22, lệnh anh) ===== */
@keyframes knBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.02)}}
@keyframes knGlowGold{0%,100%{box-shadow:0 0 26px -6px rgba(240,205,95,.42), inset 0 1px 0 rgba(255,232,160,.4)}50%{box-shadow:0 0 48px 2px rgba(240,205,95,.72), inset 0 1px 0 rgba(255,240,190,.6)}}
@keyframes knGlowSilver{0%,100%{box-shadow:0 0 22px -8px rgba(214,220,228,.4)}50%{box-shadow:0 0 40px 0 rgba(230,236,244,.6)}}
@keyframes knGlowBronze{0%,100%{box-shadow:0 0 22px -8px rgba(205,138,74,.42)}50%{box-shadow:0 0 40px 0 rgba(224,155,94,.62)}}
@keyframes knFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes knShine{0%{background-position:-160% 0}60%,100%{background-position:260% 0}}

/* 3 thẻ giải thưởng thở + glow, lệch pha nhau cho tự nhiên */
.pt-prize-card{animation:knBreathe 4.2s ease-in-out infinite}
.pt-prize-top1{animation:knBreathe 4s ease-in-out infinite, knGlowGold 3.6s ease-in-out infinite}
.pt-prize-2{animation:knBreathe 4.6s ease-in-out .5s infinite, knGlowSilver 4s ease-in-out .3s infinite}
.pt-prize-3{animation:knBreathe 4.4s ease-in-out .9s infinite, knGlowBronze 4.2s ease-in-out .6s infinite}
/* Cúp + vương miện bồng bềnh */
.pt-prize-medal,.pt-prize-crown{animation:knFloat 3.4s ease-in-out infinite}
.pt-prize-top1 .pt-prize-crown{animation:knFloat 3s ease-in-out .2s infinite}
.pt-prize-3 .pt-prize-medal{animation:knFloat 3.6s ease-in-out .5s infinite}
/* Badge CHAMPION nhấp nháy nhẹ */
.pt-champ-chip{animation:knGlowGold 2.8s ease-in-out infinite}

/* Podium BXH cũng thở nhẹ (giữ nền gradient, chỉ pulse glow) */
.lb-ftmo-rank-1{animation:knGlowGold 3.8s ease-in-out infinite}
.lb-ftmo-rank-2{animation:knGlowSilver 4.2s ease-in-out .3s infinite}
.lb-ftmo-rank-3{animation:knGlowBronze 4s ease-in-out .6s infinite}
.lb-ftmo-rank-1 .lb-ftmo-trophy,.lb-ftmo-rank-2 .lb-ftmo-trophy,.lb-ftmo-rank-3 .lb-ftmo-trophy{animation:knFloat 3.4s ease-in-out infinite}

/* (bỏ guard reduce-motion để hiệu ứng luôn chạy — lệnh anh) */

/* ===== QUY TRÌNH THAM GIA — thẻ màu FTMO + gợn sóng mặt hồ (2026-07-22) ===== */
.pt-steps-grid .pt-step-card{position:relative;isolation:isolate}
.pt-steps-grid .pt-step-card > *{position:relative;z-index:2}
/* aura màu ở đỉnh thẻ (tĩnh — luôn hiện, đỡ trống) */
.pt-steps-grid .pt-step-card::before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(130% 78% at 50% -18%, var(--sa,rgba(240,205,95,.30)), transparent 60%);}
/* lớp GỢN SÓNG ở đáy (động) */
.pt-steps-grid .pt-step-card::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;overflow:hidden;
  background:
    radial-gradient(85% 48% at 24% 122%, var(--sb,rgba(240,205,95,.34)), transparent 60%),
    radial-gradient(80% 46% at 78% 126%, var(--sb,rgba(240,205,95,.30)), transparent 58%),
    linear-gradient(100deg, transparent 32%, rgba(255,255,255,.10) 48%, rgba(255,255,255,.02) 56%, transparent 68%);
  background-size:100% 100%,100% 100%,220% 100%;
  background-repeat:no-repeat;
  animation:knWaveBob 4.6s ease-in-out infinite, knWaveShine 5s linear infinite;transform-origin:50% 100%}
@keyframes knWaveBob{0%,100%{transform:translateY(7%) scaleY(1)}50%{transform:translateY(-6%) scaleY(1.14)}}
@keyframes knWaveShine{0%{background-position:0 0,0 0,-70% 0}100%{background-position:0 0,0 0,180% 0}}
/* 4 màu như FTMO — nền vẫn tối */
.pt-steps-grid .pt-step-card:nth-child(1){--sa:rgba(67,140,255,.32);--sb:rgba(67,140,255,.34);border-color:rgba(67,140,255,.30)!important}
.pt-steps-grid .pt-step-card:nth-child(3){--sa:rgba(52,205,140,.32);--sb:rgba(52,205,140,.34);border-color:rgba(52,205,140,.30)!important}
.pt-steps-grid .pt-step-card:nth-child(5){--sa:rgba(163,115,255,.32);--sb:rgba(163,115,255,.34);border-color:rgba(163,115,255,.30)!important}
.pt-steps-grid .pt-step-card:nth-child(7){--sa:rgba(240,190,70,.34);--sb:rgba(240,190,70,.36);border-color:rgba(240,190,70,.36)!important}
/* icon thành vòng tròn phát sáng theo màu thẻ */
.pt-steps-grid .pt-step-card .pt-step-ic{display:inline-grid;place-content:center;width:54px;height:54px;border-radius:50%;font-size:26px;
  background:radial-gradient(circle at 50% 35%, var(--sa), rgba(12,12,14,.6));border:1px solid var(--sa);
  box-shadow:0 0 26px -6px var(--sa), inset 0 1px 0 rgba(255,255,255,.14)}
.pt-steps-grid .pt-step-card:hover{transform:translateY(-4px)}
.pt-steps-grid .pt-step-card:hover::after{animation-duration:4.5s}

/* ===== QUY TRÌNH: bỏ khoảng trống giữa + thu gọn chiều cao card (2026-07-22) ===== */
.pt-steps-grid .pt-step-card{padding:18px 18px 15px!important}
.pt-steps-grid .pt-step-top{width:64px!important;height:64px!important;margin:0 auto 10px!important}
.pt-steps-grid .pt-step-body{justify-content:flex-start}
.pt-steps-grid .pt-step-body b{margin-bottom:2px}
.pt-steps-grid .pt-step-body p{margin:2px 0 8px}
.pt-steps-grid .pt-step-list{margin:8px 0!important;gap:6px!important}
.pt-steps-grid .pt-step-tag{margin-top:10px!important}   /* KHÔNG còn margin-top:auto đẩy xuống đáy */
.pt-steps-grid .pt-step-more{margin-top:8px}
@media(min-width:901px){.pt-steps-grid .pt-step-card .pt-step-ic{width:48px;height:48px;font-size:23px}}

/* ==== FIX Ô TRA CỨU MOBILE (22/07): rule mobile chung `.btn{width:100%}` đè nút "Tra cứu"
   làm nút phình hết hàng, input teo còn vòng tròn 38px. Ép lại: input giãn, nút ôm chữ. ==== */
.lb-rank-search-big{flex-wrap:nowrap}
.lb-rank-search-big input{flex:1 1 auto!important;min-width:0}
.lb-rank-search-big .btn{width:auto!important;flex:0 0 auto!important}

/* ==== 22/07 (lệnh anh): BỎ GỢN SÓNG + animation khu đăng ký dự thi — về kính trong suốt
   phản ứng con trỏ (cùng hệ spotlight --spx/--spy như card toàn site) ==== */
/* Thẻ "Quy trình tham gia": tắt aura màu FTMO + lớp sóng knWaveBob/knWaveShine */
.pt-steps-grid .pt-step-card{background:rgba(12,12,12,.34)!important;border-color:rgba(212,212,212,.12)!important}
.pt-steps-grid .pt-step-card::before{content:none!important}
.pt-steps-grid .pt-step-card::after{
  content:"";pointer-events:none;position:absolute;inset:0;border-radius:inherit;padding:1.5px;
  background:
    radial-gradient(300px 300px at var(--spx) var(--spy), rgba(255,222,130,1), rgba(242,205,110,.3) 55%, transparent 78%) fixed,
    linear-gradient(rgba(212,212,212,.1), rgba(212,212,212,.1));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
          mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          mask-composite:exclude;
  animation:none!important;transform:none!important;z-index:1;
}
/* Form đăng ký (3 bước): card kính trong suốt + viền spotlight, bỏ animation chuyển bước */
.reg-step{animation:none!important}
.reg-step-card{position:relative;background:rgba(12,12,12,.34)!important;border-color:rgba(212,212,212,.12)!important}
.reg-step-card::after{
  content:"";pointer-events:none;position:absolute;inset:0;border-radius:inherit;padding:1.5px;
  background:
    radial-gradient(300px 300px at var(--spx) var(--spy), rgba(255,222,130,1), rgba(242,205,110,.3) 55%, transparent 78%) fixed,
    linear-gradient(rgba(212,212,212,.1), rgba(212,212,212,.1));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
          mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          mask-composite:exclude;
  z-index:1;
}

/* ==== 22/07 (lệnh anh): tiêu đề 3 card ĐIỀU KIỆN ra GIỮA + nhấn mạnh vàng kim ==== */
.pt-cond-card>b{
  text-align:center;
  background:linear-gradient(180deg,#fff0bd,#e8b84b 80%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  letter-spacing:.03em;text-transform:uppercase;
}
.pt-cond-card>.pt-cond-price{text-align:center}
/* ==== Bảo hiểm DÁN/THẢ cho form đăng ký (mọi thiết bị, kể cả webview) ==== */
.reg-guided input,.reg-guided textarea{
  user-select:text!important;-webkit-user-select:text!important;
  -webkit-touch-callout:default!important;
}

/* ==== 22/07 MOBILE UNIVERSAL FIT (lệnh anh): khớp mọi dòng máy iP/SS/Android ==== */
@media(max-width:900px){
  /* iOS KHÔNG auto-zoom khi chạm ô nhập: mọi input/select/textarea >=16px */
  input,select,textarea{font-size:16px!important}
  /* Vùng bấm chuẩn ngón tay (Apple HIG >=44px) */
  .mobile-bar .btn{min-height:48px}
  .nav-toggle{min-width:44px;min-height:44px}
  .nav .links a{min-height:44px}
  .pt-portal-btn{min-height:44px}
  /* Safe-area iPhone (tai thỏ + thanh home): nút đáy không bị đè, nav không hụt vào notch ngang */
  .mobile-bar{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}
  footer{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
  .nav{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
  /* Chữ dài (điều kiện, ghi chú) không bao giờ tràn ô trên máy hẹp */
  .pt-cond-list li,.wp-list li,.rule-note,.pt-step-tag{overflow-wrap:anywhere}
}
/* (bù specificity cho 2 rule bị style cũ đè) */
@media(max-width:900px){
  html body input,html body select,html body textarea,
  .reg-guided .register-form input,.mt5-account-row input{font-size:16px!important}
  html body .mobile-bar{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}
}

/* ==== 22/07 FIX 2 THANH CUỘN PC: body có overflow-x:hidden (rule cũ) → trình duyệt tự sinh
   overflow-y:auto → body thành vùng cuộn RIÊNG chồng lên thanh cuộn trang. Dùng overflow-x:clip
   (cắt ngang nhưng KHÔNG tạo scroll container) → chỉ còn 1 thanh cuộn của trang. ==== */
html{overflow-x:hidden}
body{overflow:visible!important;overflow-x:clip!important}

/* ==== 22/07: nút "Tham gia cộng đồng" trên nav (kế nút Tham gia thử thách) — tông xanh Telegram ==== */
.nav .links a.cta-tele{
  background:linear-gradient(135deg,#2ba0d8,#0f7ab8)!important;
  color:#fff!important;
  border-color:rgba(85,190,255,.55)!important;
  box-shadow:0 8px 24px -12px rgba(43,160,216,.7);
}
.nav .links a.cta-tele:hover{background:linear-gradient(135deg,#3db2ea,#1489cc)!important}

/* ==== 22/07: NAV RỘNG + SẮP XẾP LẠI (lệnh anh — nút Cộng đồng làm chật pill 1220px) ==== */
@media(min-width:881px){
  .nav .wrap{max-width:1500px!important;gap:18px!important}
  .nav .links{margin-left:auto;display:flex;align-items:center;gap:2px;flex-wrap:nowrap}
  .nav .links a{white-space:nowrap;padding:9px 12px;font-size:13.5px}
  .nav .links a.cta,.nav .links a.cta-tele{padding:9px 16px}
  #nav-timebar{flex:0 1 auto;min-width:0;white-space:nowrap}
  .brand small{white-space:nowrap}
}

/* ==== 22/07: 2 nút CTA nav dịu lại (lệnh anh "đừng tương phản quá") — kính mờ tint màu ==== */
.nav .links a.cta{
  background:rgba(232,184,75,.14)!important;
  color:#ffe8a8!important;
  border:1px solid rgba(232,184,75,.42)!important;
  box-shadow:none!important;
}
.nav .links a.cta:hover{background:rgba(232,184,75,.26)!important}
.nav .links a.cta-tele{
  background:rgba(43,160,216,.13)!important;
  color:#a8dcff!important;
  border:1px solid rgba(85,190,255,.36)!important;
  box-shadow:none!important;
}
.nav .links a.cta-tele:hover{background:rgba(43,160,216,.24)!important}

/* ==== FIX 22/07 (lệnh anh): "bảng top trên iPad với điện thoại vẫn lỗi" ==== */
/* 1) Bục Top 3 xếp dọc: media cũ trỏ nhầm .pt-prize-top1 (class thật là .pt-prize-top)
      -> Top 2 đứng TRÊN Top 1. Card vàng phải dẫn đầu. */
@media(max-width:900px){
  .pt-prize-top{order:-1}
}
/* 2) Điện thoại: bảng BXH 6 cột rộng 463px trong khung ~342px -> cột Lợi nhuận/Phần thưởng
      bị che, khách phải kéo ngang. Nén cột + ẩn cột Sàn cho vừa khung, hết cuộn ngang. */
/* Bảng nằm trong #home-board nên rule ID cũ đè class -> phải !important mới thắng */
@media(max-width:520px){
  .lb-ftmo-table table,
  #lb-table table{min-width:100%!important}
  .lb-ftmo-table th,
  .lb-ftmo-table td{padding:8px 3px!important;font-size:12px!important}
  .lb-ftmo-table .pill{padding:4px 5px!important}
  .lb-ftmo-table th{white-space:normal!important;line-height:1.3!important;font-size:10.5px!important}
  .lb-ftmo-table th:nth-child(3),
  .lb-ftmo-table td:nth-child(3),
  .lb-ftmo-table th:nth-child(4),
  .lb-ftmo-table td:nth-child(4){display:none!important} /* mobile: an ca cot San + Von khoi diem (23/07) */
  .lb-ftmo-name{gap:5px!important}
  .lb-ftmo-name > span{width:22px!important;height:22px!important;flex:0 0 22px!important;font-size:8px!important;box-shadow:0 0 0 2px rgba(255,255,255,.08)!important}
  .lb-ftmo-name b{font-size:11.5px!important;max-width:62px!important}
  .lb-ok-chip,.lb-vio-chip,.lb-stale-chip,.lb-hof-chip{font-size:8.5px!important;padding:1px 5px!important;white-space:normal!important;letter-spacing:0!important}
  .lb-ftmo-name small{font-size:9.5px!important}
  .lb-ftmo-table .pill{padding:4px 6px!important;font-size:10.5px!important;white-space:normal!important}
  .lb-ftmo-table .rank{font-size:13px!important}
  .lb-ftmo-table td:nth-child(5),
  .lb-ftmo-table td:nth-child(6){font-size:11px!important}
}

/* ==== HIỆU ỨNG FOOTER ĐIỆN ẢNH (23/07 lệnh anh: "chỉ lấy hiệu ứng thôi") ====
   Giữ nguyên nội dung footer cũ — chỉ đắp nền: chữ KN INVEST khổng lồ, aurora thở,
   lưới mờ; link cũ khoác pill kính + nam châm (JS trong app.js). */
footer.kcf{position:relative;overflow:hidden;padding:120px 0 42px;background:#050403;border-top:1px solid rgba(240,192,82,.16)}
.kcf-aurora{position:absolute;left:50%;top:58%;width:80vw;height:52vh;transform:translate(-50%,-50%);border-radius:50%;filter:blur(80px);pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(240,192,82,.15) 0%,rgba(0,229,255,.06) 42%,transparent 70%);animation:kcfBreathe 8s ease-in-out infinite alternate}
@keyframes kcfBreathe{from{transform:translate(-50%,-50%) scale(1);opacity:.55}to{transform:translate(-50%,-50%) scale(1.12);opacity:1}}
.kcf-grid{position:absolute;inset:0;pointer-events:none;background-size:60px 60px;background-image:linear-gradient(to right,rgba(240,192,82,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(240,192,82,.05) 1px,transparent 1px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 72%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 72%,transparent)}
.kcf-giant{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);white-space:nowrap;pointer-events:none;user-select:none;font-family:"Montserrat","Geist",sans-serif;font-weight:900;font-size:15vw;line-height:.75;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(240,192,82,.10);background:linear-gradient(180deg,rgba(240,192,82,.12) 0%,transparent 62%);-webkit-background-clip:text;background-clip:text}
.kcf-wrap{position:relative;z-index:3}
footer.kcf .kcf-pill{display:inline-flex;align-items:center;padding:10px 20px;border-radius:999px;font-weight:800;text-decoration:none;border:1px solid rgba(240,192,82,.22);background:linear-gradient(145deg,rgba(240,192,82,.06),rgba(255,255,255,.015));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 30px -12px rgba(0,0,0,.7),inset 0 1px 1px rgba(255,244,214,.09);transition:border-color .35s,background .35s,box-shadow .35s;will-change:transform}
footer.kcf .kcf-pill:hover{border-color:rgba(240,192,82,.55);background:linear-gradient(145deg,rgba(240,192,82,.13),rgba(255,255,255,.03));box-shadow:0 20px 44px -14px rgba(232,184,75,.35),inset 0 1px 1px rgba(255,244,214,.16)}
@media(max-width:640px){footer.kcf{padding:74px 0 30px}.kcf-giant{font-size:22vw;bottom:8px}footer.kcf .kcf-pill{padding:8px 15px}}
@media(prefers-reduced-motion:reduce){.kcf-aurora{animation:none}}

/* ==== KHỐI "ĐIỀU KIỆN THAM GIA & NHẬN THƯỞNG" (23/07 lệnh anh — thay FAQ trang chủ,
   bố cục 2 card kiểu VT Markets; FAQ dời sang trang Thể Lệ) ==== */
.kji-eyebrow{color:#e8b84b;font-size:12px;font-weight:900;letter-spacing:.28em;text-transform:uppercase;margin-bottom:8px}
.kji-4points{display:flex;flex-direction:column;gap:7px;margin:22px 0 0;padding:18px 22px;border-radius:16px}
.kji-4points b{color:#ffe8a8;font-size:12.5px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.kji-4points span{color:#c8d5e8;font-size:13.5px;line-height:1.7}
.kji-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;margin-top:24px;align-items:stretch}
.kji-card{padding:26px 24px;border-radius:18px}
.kji-card h3{margin:0 0 18px;color:#ffe8a8;font-size:13.5px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.kji-check{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.kji-check li{position:relative;padding-left:36px;color:#c8d5e8;font-size:14px;line-height:1.65}
.kji-check li b{color:#eef5ff}
.kji-check li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:6px;border:1px solid rgba(0,229,255,.45);background:rgba(0,229,255,.10);color:#5ed4ff;font-weight:900;font-size:13px;display:grid;place-items:center}
.kji-summary p{margin:0 0 14px;color:#c8d5e8;font-size:14px;line-height:1.7}
.kji-summary p:last-child{margin-bottom:0}
.kji-summary b{color:#ffe8a8}
.kji-prize{padding:14px 16px;border-radius:12px;background:rgba(240,192,82,.07);border:1px solid rgba(240,192,82,.2);line-height:1.9!important}
@media(max-width:900px){.kji-grid{grid-template-columns:1fr}.kji-card{padding:20px 16px}.kji-4points{padding:14px 16px}}

/* Nhãn "Chưa hợp lệ" trên bảng (23/07 lệnh anh — TK nạp thêm vẫn hiện + gắn cờ) */
.lb-vio-chip{display:inline-block;margin:3px 0 2px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:900;letter-spacing:.02em;background:rgba(255,86,86,.14);border:1px solid rgba(255,86,86,.5);color:#ff8a8a;white-space:nowrap}

/* ==== MÀU CHIP SÀN (23/07 lệnh anh): Exness vàng · Vantage xanh lá · GTC xanh biển · VT xanh da trời nhẹ ==== */
.lb-broker-pill.br-exness,.lb-ftmo-broker.br-exness{background:rgba(240,213,143,.14);border-color:rgba(240,213,143,.5);color:#f0d58f}
.lb-broker-pill.br-vantage,.lb-ftmo-broker.br-vantage{background:rgba(52,211,153,.14);border-color:rgba(52,211,153,.5);color:#5fe3ad}
.lb-broker-pill.br-gtc,.lb-ftmo-broker.br-gtc{background:rgba(37,99,235,.18);border-color:rgba(59,130,246,.55);color:#7fb0ff}
.lb-broker-pill.br-vt,.lb-ftmo-broker.br-vt{background:rgba(125,211,252,.13);border-color:rgba(125,211,252,.42);color:#a9ddf7}

/* Nhãn vinh danh / không xét giải (23/07: thinh pro 34k ghim demo) */
.lb-hof-chip{display:inline-block;margin:3px 0 2px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:900;letter-spacing:.02em;background:rgba(240,192,82,.14);border:1px solid rgba(240,192,82,.5);color:#f0d58f;white-space:nowrap}

/* Nhãn "Đang thi" xanh (23/07: phân biệt người thi hợp lệ với TK vi phạm/vinh danh) */
.lb-ok-chip{display:inline-block;margin:3px 0 2px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:900;letter-spacing:.02em;background:rgba(52,211,153,.13);border:1px solid rgba(52,211,153,.42);color:#5fe3ad;white-space:nowrap}

/* Chip cam "nghi doi pass" (23/07 dieu kien 1): TK dung hinh du lieu khi ca he van song */
.lb-stale-chip{display:inline-block;margin:3px 0 2px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:900;letter-spacing:.02em;background:rgba(251,146,60,.13);border:1px solid rgba(251,146,60,.45);color:#fdba74;white-space:nowrap}

/* Chu giai mau nhan tren BXH (23/07 dieu kien 7) */
.lb-legend{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:12px 2px 4px;padding:8px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.02)}
.lb-legend-title{font-size:11px;font-weight:800;color:rgba(255,255,255,.55);letter-spacing:.04em;margin-right:2px}
@media (max-width:640px){.lb-legend{gap:5px;padding:7px 9px}}

/* Dấu ❗ đỏ cạnh tên: chủ TK có tài khoản thứ 5 vượt quota (TK này vẫn hợp lệ) — 23/07 */
.lb-warn-excl{display:inline-block;margin-left:5px;color:#ff5656;font-weight:900;font-size:.95em;cursor:help;text-shadow:0 0 6px rgba(255,86,86,.5)}

/* Chip "Đã cháy" (23/07: cháy xong nạp lại — không tính vi phạm, không tính thành tích) */
.lb-burn-chip{display:inline-block;margin:3px 0 2px;padding:2px 9px;border-radius:999px;font-size:10.5px;font-weight:900;letter-spacing:.02em;background:rgba(148,148,148,.12);border:1px solid rgba(180,140,120,.4);color:#d9a08c;white-space:nowrap}

/* ===== HERO LIVE BAR (24/07): badge nhấp nháy + đếm ngược + số động ===== */
.pt-hero-live{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;margin:0 auto 18px;padding:8px 16px;border-radius:999px;background:rgba(0,0,0,.42);border:1px solid rgba(240,192,82,.28);backdrop-filter:blur(6px)}
.pt-live-badge{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:900;letter-spacing:.06em;color:#ff5656}
.pt-live-badge b{font-weight:900}
.pt-live-dot{width:9px;height:9px;border-radius:50%;background:#ff3b3b;box-shadow:0 0 8px #ff3b3b;animation:knLiveBlink 1.1s ease-in-out infinite}
.pt-live-badge.pending{color:#f0c052}.pt-live-badge.pending .pt-live-dot{background:#f0c052;box-shadow:0 0 8px #f0c052}
.pt-live-badge.ended{color:rgba(255,255,255,.6)}.pt-live-badge.ended .pt-live-dot{background:rgba(255,255,255,.5);box-shadow:none;animation:none}
@keyframes knLiveBlink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}
.pt-live-count{font-size:12.5px;color:rgba(255,255,255,.82)}.pt-live-count b{color:#fff;font-weight:800}
.pt-live-nums{font-size:12.5px;color:rgba(255,255,255,.72)}.pt-live-nums b{color:#f0d58f;font-weight:800}
@media(max-width:560px){.pt-hero-live{gap:6px 10px;padding:7px 12px}.pt-live-badge,.pt-live-count,.pt-live-nums{font-size:11.5px}}
/* video hero mờ dần khi vào (PC); mobile chỉ còn poster */
.pt-hero-vid{transition:opacity .6s ease}

/* ===== FEED DIỄN BIẾN LIVE (24/07) ===== */
.kn-feed-sec{padding:44px 0 56px}
.kn-feed-live{display:inline-flex;align-items:center;font-size:12px;font-weight:900;color:#ff5656;letter-spacing:.09em;vertical-align:middle;margin-left:9px}
.kn-feed-live::before{content:"";width:8px;height:8px;border-radius:50%;background:#ff3b3b;box-shadow:0 0 8px #ff3b3b;margin-right:5px;animation:knFeedBlink 1.1s ease-in-out infinite}
@keyframes knFeedBlink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.75)}}
.kn-feed{max-width:720px;margin:18px auto 0;max-height:430px;overflow-y:auto;display:flex;flex-direction:column;gap:9px;padding:4px 8px}
.kn-feed::-webkit-scrollbar{width:6px}.kn-feed::-webkit-scrollbar-thumb{background:rgba(240,192,82,.3);border-radius:3px}
.kn-feed-row{display:flex;gap:11px;align-items:flex-start;padding:11px 14px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);border-left:3px solid rgba(240,192,82,.5);animation:knFeedIn .4s ease}
@keyframes knFeedIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.kn-feed-row.k-burn{border-left-color:#ff5656}.kn-feed-row.k-swap{border-left-color:#f0c052}
.kn-feed-row.k-pump{border-left-color:#5fe3ad}.kn-feed-row.k-new{border-left-color:#7fb0ff}
.kn-feed-ic{font-size:18px;line-height:1.35;flex:0 0 auto}
.kn-feed-body{flex:1;min-width:0}
.kn-feed-time{font-size:11px;color:rgba(255,255,255,.42);font-family:ui-monospace,monospace;margin-bottom:2px}
.kn-feed-text{font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.86)}
.kn-feed-text b{color:#f0d58f;font-weight:800}
.kn-feed-empty{text-align:center;color:rgba(255,255,255,.4);font-size:13px;padding:26px}
@media(max-width:560px){.kn-feed{max-height:360px}.kn-feed-text{font-size:12.5px}}

/* ===== HERO NỀN CHỮ "KN INVEST" KHỔNG LỒ (24/07: thay video bg bằng hiệu ứng footer, phóng to) ===== */
.pt-hero-kn-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.pt-hero-video .pt-hero-overlay{z-index:1}
.pt-hero-kn-aurora{position:absolute;left:50%;top:44%;width:94vw;height:76vh;transform:translate(-50%,-50%);border-radius:50%;filter:blur(92px);background:radial-gradient(circle at 50% 50%,rgba(240,192,82,.18) 0%,rgba(0,229,255,.05) 45%,transparent 72%);animation:kcfBreathe 8s ease-in-out infinite alternate}
.pt-hero-kn-grid{position:absolute;inset:0;background-size:64px 64px;background-image:linear-gradient(to right,rgba(240,192,82,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(240,192,82,.05) 1px,transparent 1px);-webkit-mask-image:radial-gradient(ellipse 72% 62% at 50% 46%,#000 52%,transparent);mask-image:radial-gradient(ellipse 72% 62% at 50% 46%,#000 52%,transparent)}
.pt-hero-kn-giant{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);white-space:nowrap;user-select:none;font-family:"Montserrat","Geist",sans-serif;font-weight:900;font-size:clamp(84px,23vw,340px);line-height:.78;letter-spacing:-.045em;color:transparent;-webkit-text-stroke:1.5px rgba(240,192,82,.14);background:linear-gradient(180deg,rgba(240,192,82,.17) 0%,rgba(240,192,82,.04) 55%,transparent 80%);-webkit-background-clip:text;background-clip:text}
@media(max-width:640px){.pt-hero-kn-giant{font-size:34vw;letter-spacing:-.03em}.pt-hero-kn-aurora{filter:blur(60px)}}

/* (26/07 lenh anh) CHI doi 2 thu: to ra + can giua khoi tieu de. Khong dung gi khac. */
.pt-hero-kn-giant{
  font-size:clamp(100px,27vw,408px);   /* to hon ~20% */
  top:42%;                             /* nhich len cho om khoi "Chao Mung ... DAU TRUONG TRADING" */
  animation:knTho 7s ease-in-out infinite;   /* (26/07 lenh anh) chi THEM hieu ung tho */
}
/* tho: phong len xep xuong rat nhe + dam nhat theo nhip. Giu nguyen transform can giua. */
@keyframes knTho{
  0%,100%{transform:translate(-50%,-50%) scale(1);opacity:1}
  50%{transform:translate(-50%,-50%) scale(1.022);opacity:.84}
}
@media(max-width:640px){.pt-hero-kn-giant{font-size:40vw;top:40%}}



/* === ky da chot (demo) — 25/07 === */
.payout-closed-note{
  margin:14px 0 0;
  text-align:center;
  font-size:12.5px;
  letter-spacing:.02em;
  color:rgba(232,222,205,.62);
}
.payout-closed-note b{color:var(--gold,#e8cf9a);font-weight:800}
.payout-consolation.is-closed .payout-consolation-list{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
}
.payout-consolation.is-closed .payout-consolation-roi{
  font-size:11px;
  letter-spacing:.04em;
  text-transform:uppercase;
  opacity:.6;
}


/* === 25/07: fix mobile winners + vien sang chay BXH === */
/* (A) mobile: the winner thieu o cho nhan giai + dong gia tri -> bi day ra ngoai khung */
@media(max-width:940px){
  .payout-major-card,
  .payout-major-card.payout-rank-1{
    grid-template-areas:
      "img badge"
      "img name"
      "img label"
      "img prize"
      "img value"
      "img stats" !important;
  }
  .payout-major-card .payout-prize-label{
    grid-area:label;
    justify-self:start;
    text-align:left;
    margin:0;
  }
  .payout-major-card .payout-prize-value{grid-area:value;justify-self:start;margin:2px 0 0}
  .payout-major-card .payout-stats{display:flex;flex-wrap:wrap;gap:8px}
  .payout-major-card .payout-stats span{flex:1 1 auto;min-width:0}
}

/* (B) BXH TRUC TIEP — bo khung cung, khong cat goc khi phong to, vien anh sang chay */
.lb-ftmo-topgrid{overflow:visible}
.lb-ftmo-card{
  overflow:visible!important;
  isolation:isolate;
}
.lb-ftmo-card::before{border-radius:inherit;overflow:hidden}
/* nen mo nhat de vien noi bat, thay cho khung cung */
.lb-ftmo-card{
  box-shadow:0 0 0 1px rgba(255,255,255,.05), 0 18px 40px -34px rgba(0,0,0,.95);
}
.lb-ftmo-card:hover{
  z-index:6;
  box-shadow:0 0 0 1px rgba(240,213,143,.2), 0 24px 70px -36px rgba(240,213,143,.55);
}


/* === 25/07 v2: SAO CHOI CHAY VIEN (SVG runner) === */
.lb-ftmo-card, .payout-major-card, .pt-prize-card{position:relative}
.border-runner{
  position:absolute; inset:0; width:100%; height:100%;
  pointer-events:none; z-index:6; overflow:visible;
}
.border-runner rect{
  x:0.75px; y:0.75px;
  width:calc(100% - 1.5px); height:calc(100% - 1.5px);
  rx:var(--runner-rx,6px);
  fill:none; stroke-linecap:round;
}
/* mau theo hang (mac dinh: vang) */
.border-runner{
  --rc-head:#fff2c8;
  --rc-tail:rgba(246,200,110,.5);
  --rc-glow:rgba(255,202,70,1);
  --rc-glow2:rgba(230,142,22,.95);
  --rc-ring:rgba(240,213,143,.2);
}
/* vien phat quang tinh: TAT (the von co glow san, de sao bang doc quyen anh sang) */
.border-runner .runner-ring{display:none}
/* DUOI SAO BANG 3 LOP — thon + mo dan ve sau (het kieu con ran)
   chu ky 33.333 -> dung 3 sao bang chay CACH DEU quanh vien.
   --dof can chinh de dau moi lop TRUNG voi mui sao bang. */
/* GIOT SAO BANG — qua cau sang + duoi hat nho dan (JS tha theo path vien) */
.border-runner .runner-path{fill:none;stroke:none}
.border-runner .meteor-core{
  fill:#fff;
  animation:headTwinkle 2.1s ease-in-out infinite;
}
.border-runner .meteor-halo{fill:var(--rc-glow);opacity:.34}
.border-runner .meteor-trail{fill:var(--rc-glow)}
.border-runner .meteor{
  filter:drop-shadow(0 0 3px var(--rc-glow)) drop-shadow(0 0 8px var(--rc-glow2));
}
@keyframes headTwinkle{0%,100%{opacity:.75}50%{opacity:1}}
/* BAC — hang 2 */
.lb-ftmo-rank-2 .border-runner, .payout-rank-2 .border-runner, .pt-prize-2 .border-runner{
  --rc-head:#f4f8fd;
  --rc-tail:rgba(206,221,240,.5);
  --rc-glow:rgba(206,228,252,1);
  --rc-glow2:rgba(118,158,212,.95);
  --rc-ring:rgba(214,226,240,.22);
}
/* DONG — hang 3 */
.lb-ftmo-rank-3 .border-runner, .payout-rank-3 .border-runner, .pt-prize-3 .border-runner{
  --rc-head:#ffe0b8;
  --rc-tail:rgba(224,150,88,.5);
  --rc-glow:rgba(244,152,66,1);
  --rc-glow2:rgba(176,88,24,.95);
  --rc-ring:rgba(224,166,110,.22);
}
/* nhip rieng tung loai the */
.lb-ftmo-card{--runner-rx:4px;--runner-t:13s}
.lb-ftmo-rank-1{--runner-t:10s}
.payout-major-card{--runner-rx:10px;--runner-t:14s}
.payout-major-card.payout-rank-1{--runner-t:10s}
.pt-prize-card{--runner-rx:14px;--runner-t:14s}
.pt-prize-top1{--runner-t:10s}
/* hover: giot sao bang ruc hon */
.lb-ftmo-card:hover .meteor,
.payout-major-card:hover .meteor,
.pt-prize-card:hover .meteor{
  filter:drop-shadow(0 0 6px #fff) drop-shadow(0 0 16px var(--rc-glow)) drop-shadow(0 0 28px var(--rc-glow2));
}
/* (25/07) bo gate reduced-motion theo lenh anh — may tat animation Windows van thay */


/* (25/07) tat giot nuoc o bang Giai thuong sieu khung */
.pt-prize-card .border-runner{display:none}

/* (27/07 lenh anh) chu 'bắt buộc' canh dau sao — nho va mo hon nhan chinh */
.register-form label > span .reg-batbuoc{font-style:normal;font-size:11px;font-weight:700;letter-spacing:.02em;color:#f0a5a5;opacity:.9;text-transform:lowercase;margin-left:2px}


/* ============================================================
   TAT-GON-SONG (27/07 lenh anh) — khu DANG KY khong bam theo con tro nua.
   Truoc day .reg-step-card::before (mat the) va ::after (vien) ve gradient toa tron
   tai var(--spx)/var(--spy) — hai bien nay do app.js cap nhat moi lan chuot di chuyen,
   nen re chuot thay vet sang chay qua nhu gon song.
   Nay: bo han lop mat the, vien doi sang TINH. Cac khu khac (.pt-glass .panel .faq)
   van giu hieu ung cu — chi rieng form dang ky la tat.
   ============================================================ */
.reg-step-card::before{ display:none !important; }
.reg-step-card::after{
  background:linear-gradient(rgba(212,212,212,.16), rgba(212,212,212,.10)) !important;
}
html.kn-touch-glow .reg-step-card::after{
  background:linear-gradient(rgba(212,212,212,.16), rgba(212,212,212,.10)) !important;
  transition:none !important;
}


/* ═══════════════════════════════════════════════════════════════════════════
   (27/07) VA THANH NAV — do theo so do that
   Trieu chung: chu "THOI GIAN DANG KY CON LAI ..." de len logo KN Invest.
   Do duoc: mot hang CAN 1318px (logo 163 + dong ho 295 + menu 775 + le/khoang cach 67
   + thanh cuon 15). Duoi nguong do, phan thieu don het vao o dong ho vi chi minh no
   co the co -> bop con 28px roi chu tran ra de len logo.
   KHONG chi iPad: vo tu 881 den ~1320px, gom ca laptop 1280.
   Chua theo 3 bac, ranh gioi lay tu so do o tren.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 881–1180: rong khong du cho ca chu dan -> dong ho xuong hang rieng ── */
@media(min-width:881px) and (max-width:1180px){
  .nav{height:auto}
  .nav .wrap{height:auto;flex-wrap:wrap;row-gap:6px}
  .nav .brand-home{order:1}
  .nav .links{order:2}
  #nav-timebar{
    order:3;
    flex:1 1 100%;
    width:100%;
    min-width:0;
    justify-content:center;
    margin:0;
  }
  /* dung lai bien fixMobileNavPad() da do — thanh cao bao nhieu thi noi dung
     tut xuong bay nhieu, doi co man cung tu tinh lai, khong bi che. */
  body{padding-top:var(--mobilenav-h,140px)}
}

/* ── 881–1010: hep qua, ngay ca MENU cung khong ngoi cung hang voi logo
   (can 163+18+775=956 ma chi co ~955 tro xuong) -> thanh bi day thanh BA hang,
   cao 200px. Bop chu menu lai chut cho menu ve cung hang voi logo -> con hai hang.
   Do duoc o 900px: menu 774 -> 641, cho trong 670 => du 29px. ── */
@media(min-width:881px) and (max-width:1010px){
  .nav .links a{padding:7px 6px;font-size:12px}
  .nav .links a.cta,.nav .links a.cta-tele{padding:8px 11px}
}

/* ── 1181–1359: du cho neu bo chu dan (chi can 1163px) -> giu mot hang ── */
@media(min-width:1181px) and (max-width:1359px){
  #nav-timebar span{display:none}
  /* khong cho bop nua: thieu cho thi day layout, chu khong am tham nghien chu */
  #nav-timebar{flex:0 0 auto;min-width:max-content}
}

/* ============================================================
   MÙA 2 — Chương trình Master Trader (cấp vốn)
   Thêm 17/08/2026 theo thể lệ Mùa 2 T9/2026.
   Scope: chỉ dùng tiền tố .kn-mt- để không đụng style cũ.
   ============================================================ */
.kn-mt-lead{max-width:820px;margin:0 auto 30px;text-align:center;font-size:16px;line-height:1.75;color:#c8d4e2}
.kn-mt-lead b{color:#f2ca50}

.kn-mt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:24px}
.kn-mt-card{padding:22px 20px;text-align:center;display:flex;flex-direction:column;gap:8px}
.kn-mt-tag{font-size:11px;font-weight:800;letter-spacing:.16em;color:#d4af37}
.kn-mt-val{font-family:"JetBrains Mono","Consolas",monospace;font-size:30px;font-weight:800;line-height:1.1;
  background:linear-gradient(135deg,#ffe088 0%,#d4af37 50%,#b4941f 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#f2ca50}
.kn-mt-card p{margin:0;font-size:13.5px;line-height:1.7;color:#a9b6c6}
.kn-mt-card p b{color:#e6edf6}

.kn-mt-how{padding:24px 26px;margin-bottom:30px}
.kn-mt-how h3{margin:0 0 14px;font-size:17px;font-weight:800;color:#eef5ff}
.kn-mt-how ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}
.kn-mt-how li{font-size:14.5px;line-height:1.75;color:#b9c5d4}
.kn-mt-how li b{color:#f2ca50}

.kn-mt-sub{text-align:center;font-size:18px;font-weight:800;color:#eef5ff;margin:0 0 16px}
.kn-mt-scroll{overflow-x:auto;border:1px solid rgba(212,175,55,.22);border-radius:14px;background:rgba(18,33,49,.72)}
.kn-mt-table{width:100%;border-collapse:collapse;font-size:14px;min-width:660px}
.kn-mt-table th{padding:12px 14px;text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  font-weight:800;color:#d4af37;background:rgba(212,175,55,.08);border-bottom:1px solid rgba(212,175,55,.22);white-space:nowrap}
.kn-mt-table td{padding:12px 14px;color:#c2cedd;border-bottom:1px solid rgba(212,175,55,.10)}
.kn-mt-table tbody tr:last-child td{border-bottom:0}
.kn-mt-table tbody tr:hover td{background:rgba(212,175,55,.05)}
.kn-mt-table td b{color:#f2ca50;font-family:"JetBrains Mono","Consolas",monospace}

.kn-mt-note{max-width:900px;margin:14px auto 0;font-size:13px;line-height:1.75;color:#96a3b3;text-align:center}

@media (max-width:640px){
  .kn-mt-card{padding:18px 16px}
  .kn-mt-val{font-size:26px}
  .kn-mt-how{padding:18px 18px}
}

/* Nhãn MÙA 2 — đặt ở hàng badge, KHÔNG để trong <h1>.
   Bài học 17/08: .pt-title-arena có font-size ...!important nên nuốt mọi cỡ chữ
   của thẻ con — nhãn dính liền chữ TRADING và to bằng tiêu đề. */
.pt-mua-badge{
  display:inline-flex; align-items:center;
  /* dung Montserrat nhu tieu de trang, khong dung font may tinh cho dong bo */
  font-family:"Montserrat",var(--font-display),"Be Vietnam Pro",system-ui,sans-serif;
  font-size:clamp(14px,1.7vw,20px); font-weight:800; letter-spacing:.10em;
  color:#1c1a17; padding:7px 22px; border-radius:99px;
  background:linear-gradient(135deg,#ffe9a8 0%,#f2ca50 42%,#d4af37 72%,#b4941f 100%);
  box-shadow:0 3px 18px rgba(212,175,55,.45), inset 0 1px 0 rgba(255,255,255,.5);
  white-space:nowrap;
}
@media (max-width:640px){ .pt-mua-badge{font-size:13px; padding:6px 16px; letter-spacing:.08em} }
.pt-hero-mua2{
  margin:10px auto 0; max-width:620px;
  font-size:14.5px; line-height:1.8; color:#b9c5d4;
  padding:9px 16px; border-radius:99px;
  background:rgba(212,175,55,.09); border:1px solid rgba(212,175,55,.30);
}
.pt-hero-mua2 b{color:#f2ca50}
@media (max-width:640px){ .pt-hero-mua2{font-size:13px; padding:8px 12px} }

/* ══════════════════════════════════════════════════════════════════
   KHÓI CẦU VỒNG cho card giải thưởng — dựng 17/08 theo video anh Lâm gửi
   (IMG_0958.MOV, ô cường hoá +20 trong game).

   Đọc kỹ video rồi mới làm, vì "cầu vồng" ở đây KHÔNG phải viền xoay mượt:
     1. Màu là KHỐI KHÓI LOANG kín trong ô, không phải đường viền chạy.
     2. Màu NHẢY GIẬT từng mảng — dùng steps() chứ không chuyển mượt.
        Mượt là ra kiểu "gradient marketing", giật mới ra chất game.
     3. Giữa ô có VÙNG TỐI ôm lấy món đồ, nếu không thì màu nuốt mất nội dung.
     4. Viền trắng mảnh + tia sáng bắn ra ở cạnh.
     5. Nội dung (ảnh, chữ) ĐỨNG YÊN, chỉ nền động.
   ══════════════════════════════════════════════════════════════════ */

.pt-prize-card{ position:relative; isolation:isolate; overflow:hidden; }

/* ── lớp 1: khói màu loang, nhảy giật ── */
.pt-prize-card::before{
  content:"";
  position:absolute; inset:-30%;
  z-index:0; pointer-events:none;
  background:
    radial-gradient(38% 44% at 22% 26%, #22d3a7 0%, transparent 62%),
    radial-gradient(36% 42% at 78% 22%, #8b5cf6 0%, transparent 62%),
    radial-gradient(42% 40% at 76% 78%, #f43f5e 0%, transparent 62%),
    radial-gradient(40% 46% at 24% 76%, #38bdf8 0%, transparent 62%),
    radial-gradient(34% 38% at 50% 50%, #fbbf24 0%, transparent 58%),
    conic-gradient(from 0deg,
      #22d3a7 0deg, #38bdf8 55deg, #8b5cf6 110deg, #e879f9 165deg,
      #f43f5e 215deg, #fb923c 265deg, #fbbf24 310deg, #22d3a7 360deg);
  filter:blur(16px) saturate(150%);
  opacity:.60;
  animation:knKhoiGiat 2.4s steps(8, end) infinite;
}

/* xoay + đổi sắc theo BƯỚC — mỗi bước là một mảng màu mới, đúng như video */
@keyframes knKhoiGiat{
  0%   { transform:rotate(0deg)   scale(1.05); filter:blur(16px) saturate(150%) hue-rotate(0deg); }
  100% { transform:rotate(360deg) scale(1.05); filter:blur(16px) saturate(150%) hue-rotate(360deg); }
}

/* ── lớp 2: vùng tối giữa ô ──
   🔴 KHONG dung ::after cho card giai thuong — cho do DA CO san hieu ung
   vong sang cu (ptRingBreath). De len la xoa mat hieu ung cu.
   Dung bong DO VAO TRONG (inset) cua chinh card, khoi tranh cho. */
.pt-prize-card{
  box-shadow:
    inset 0 0 62px 30px rgba(8,10,14,.94),
    inset 0 0 120px 10px rgba(8,10,14,.72),
    0 0 0 1px rgba(255,255,255,.12),
    0 0 26px rgba(255,255,255,.16),
    0 10px 34px rgba(0,0,0,.55) !important;
}

/* nội dung nằm trên cùng, không dính hiệu ứng */
.pt-prize-card > *{ position:relative; z-index:2; }

/* ── viền trắng mảnh + quầng sáng quanh khung ── */
.pt-prize-card{ border:1px solid rgba(255,255,255,.42) !important; }

/* TOP 1 nổi hơn: khói đậm, quầng vàng, nhịp giật nhanh hơn một chút */
.pt-prize-card.pt-prize-top1::before{ opacity:.74; animation-duration:2s; }
.pt-prize-card.pt-prize-top1{
  border-color:rgba(255,225,150,.62) !important;
  box-shadow:
    inset 0 0 62px 30px rgba(8,10,14,.92),
    inset 0 0 120px 10px rgba(8,10,14,.70),
    0 0 0 1px rgba(255,225,150,.22),
    0 0 34px rgba(212,175,55,.34),
    0 12px 40px rgba(0,0,0,.6) !important;
}

/* ── tia sáng trắng quét ngang, thưa thôi cho khỏi rối ── */
.pt-prize-card .pt-prize-bar{ position:relative; z-index:2; }
.pt-prize-card.pt-prize-top1::before,
.pt-prize-card::before{ will-change:transform, filter; }

/* (17/08) Card Master Trader: anh Lam yeu cau TRA LAI NHU CU — khong khoi cau vong.
   Khoi mau lam nen roi, ma cac the nay nhieu chu nen doc met mat. */

/* KHONG co block prefers-reduced-motion cho khoi cau vong.
   PC anh Lam bat san che do giam chuyen dong; ke ca chi lam CHAM lai
   (9s/12s) thi card cung gan nhu dung im, nhin nhu hong.
   Hieu ung nay la diem nhan chinh cua trang nen cho chay deu moi may. */


/* ══════════════════════════════════════════════════════════════════
   HAO QUANG CAU VONG — BAN 3 (17/08), dung CHINH hieu ung game cua anh Lam.

   Hai ban truoc tu ve bang CSS deu khong giong: mau bi dan mong, nhoe,
   khong ra chat "o cuong hoa +20". Ban nay lay thang 52 khung hinh tu
   video IMG_0958.MOV (game do CHINH anh Lam lam) -> anh dong WebP 72 KB
   dat o assets/kn-aura.webp. Vay la giong Y CHANG, khong phai phong tac.

   Cach ghep:
     - ::before phu anh dong len the, keo gian 100% de vanh mau bam sat 4 canh.
     - ::after do lop toi o giua -> che mon do trong anh goc + cho chu doc ro,
       dung nhu o game: mau o ria, giua den dac.
     - Khong dat animation: anh WebP tu chay vong, giu nguyen nhip cua game.
   ══════════════════════════════════════════════════════════════════ */
.lb-ftmo-card{ position:relative; isolation:isolate; overflow:hidden; }

.lb-ftmo-card::before{
  content:"";
  position:absolute; inset:0;
  z-index:0; pointer-events:none;
  border-radius:inherit;
  background-image:url("assets/kn-aura.webp");
  background-size:100% 100%;
  background-repeat:no-repeat;
  filter:saturate(210%) brightness(1.18) contrast(1.12);
  opacity:.95;
}

/* lop toi giua: che mon do trong anh goc, giu chu va so doc duoc */
.lb-ftmo-card::after{
  content:"";
  position:absolute; inset:0;
  z-index:1; pointer-events:none;
  border-radius:inherit;
  background:
    radial-gradient(66% 84% at 50% 50%, rgba(8,10,15,.985) 0%, rgba(8,10,15,.965) 38%, rgba(8,10,15,.74) 58%, rgba(8,10,15,.20) 76%, transparent 92%),
    linear-gradient(180deg, rgba(8,10,15,.55) 0%, transparent 20%, transparent 80%, rgba(8,10,15,.62) 100%);
}

.lb-ftmo-card > *{ position:relative; z-index:2; }

.lb-ftmo-card{
  border:1px solid rgba(255,255,255,.50) !important;
  box-shadow:0 0 20px rgba(255,255,255,.12), 0 10px 30px rgba(0,0,0,.55) !important;
}

/* Top 1 ruc nhat, Top 2-3 diu dan — dung logic +19/+20 trong game */
.lb-ftmo-card.lb-ftmo-rank-1::before{ opacity:1; filter:saturate(235%) brightness(1.24) contrast(1.16); }
.lb-ftmo-card.lb-ftmo-rank-1{
  border-color:rgba(255,235,170,.78) !important;
  box-shadow:0 0 28px rgba(255,220,120,.30), 0 10px 32px rgba(0,0,0,.6) !important;
}
.lb-ftmo-card.lb-ftmo-rank-2::before{ opacity:.95; }
.lb-ftmo-card.lb-ftmo-rank-3::before{ opacity:.90; }

/* ghi chú nhỏ trong thẻ giải: "(tùy chọn màu)" — xuống dòng riêng cho gọn */
.pt-prize-note{ display:block; font-size:.62em; font-weight:700; opacity:.86; letter-spacing:.02em; margin:2px 0 1px; }

/* ══════════════════════════════════════════════════════════════════
   BỐ CỤC 3 THẺ GIẢI THƯỞNG TRÊN ĐIỆN THOẠI (anh Lâm chốt 17/08)
   Trước: 3 thẻ xếp dọc, mỗi thẻ cao — phải cuộn mới thấy hết, không
   nắm được toàn cảnh giải.
   Nay: TOP 1 rút gọn nằm trên trọn hàng, TOP 2 và TOP 3 song song bên
   dưới -> một khung hình thấy đủ cả ba phần thưởng.
   ══════════════════════════════════════════════════════════════════ */
@media (max-width:760px){
  .pt-podium{
    grid-template-columns:1fr 1fr;
    gap:11px;
    align-items:stretch;
    margin:6px 0 18px;
  }

  /* TOP 1: trọn hàng trên, thu gọn chiều cao */
  .pt-podium .pt-prize-top1{
    grid-column:1 / -1;
    order:1;
    padding:20px 14px 14px;
  }
  .pt-podium .pt-prize-2{ order:2; }
  .pt-podium .pt-prize-3{ order:3; }

  /* thu nhỏ ruột thẻ TOP 1 cho đỡ chiếm chỗ */
  .pt-podium .pt-prize-top1 .pt-prize-img-top1{ max-width:70%; margin-inline:auto; }
  .pt-podium .pt-prize-top1 .pt-prize-medal{ width:44px; height:auto; }
  .pt-podium .pt-prize-top1 .pt-prize-rank{ font-size:20px; margin:2px 0 4px; }
  .pt-podium .pt-prize-top1 .pt-prize-val{ font-size:14.5px; line-height:1.45; }
  /* 2 dòng đặc quyền xếp ngang cho đỡ cao */
  .pt-podium .pt-prize-top1 .pt-prize-perks{
    display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:8px;
  }
  .pt-podium .pt-prize-top1 .pt-prize-perks li{ font-size:11px; padding:6px 8px; }

  /* TOP 2 / TOP 3: gọn để đứng cạnh nhau vừa màn */
  .pt-podium .pt-prize-2,
  .pt-podium .pt-prize-3{ padding:16px 10px 12px; }
  .pt-podium .pt-prize-2 .pt-prize-rank,
  .pt-podium .pt-prize-3 .pt-prize-rank{ font-size:15px; }
  .pt-podium .pt-prize-2 .pt-prize-val,
  .pt-podium .pt-prize-3 .pt-prize-val{ font-size:12.5px; line-height:1.4; }
  .pt-podium .pt-prize-2 .pt-prize-medal,
  .pt-podium .pt-prize-3 .pt-prize-medal{ width:34px; height:auto; }
  .pt-podium .pt-prize-2 .pt-prize-img,
  .pt-podium .pt-prize-3 .pt-prize-img{ max-width:82%; margin-inline:auto; }
  .pt-podium .pt-prize-bar{ height:5px; }
  .pt-champ-chip{ top:-11px; font-size:10px; padding:3px 12px; }
}

/* máy rất hẹp: cho chữ nhỏ thêm chút nữa, vẫn giữ 2 cột */
@media (max-width:380px){
  .pt-podium{ gap:8px; }
  .pt-podium .pt-prize-2 .pt-prize-val,
  .pt-podium .pt-prize-3 .pt-prize-val{ font-size:11.5px; }
  .pt-podium .pt-prize-top1 .pt-prize-perks{ grid-template-columns:1fr; }
}

/* SVG nhúng thẳng vào trang: cần chặn kích thước như thẻ <img> trước đó */
.pt-prize-svg{ display:block; width:100%; max-width:230px; height:auto; margin:0 auto; }
@media (max-width:760px){ .pt-podium .pt-prize-2 .pt-prize-svg{ max-width:82%; } }

/* Ảnh nhẫn + hộp cao hơn ảnh giải khác (tỉ lệ dọc) nên phải ghì lại,
   không thì nó chiếm hết thẻ Top 2. Chặn theo CHIỀU CAO, giữ đúng tỉ lệ. */
.pt-prize-2 .pt-prize-img{ max-height:104px; max-width:74%; }
@media (max-width:760px){
  .pt-podium .pt-prize-2 .pt-prize-img{ max-height:74px; max-width:70%; }
}
