/* ═══ جشنوارهٔ هاستینگ · تم «شفق زمردی» ═══ */
@font-face{
  font-family:'Vazirmatn';
  src:url('../fonts/Vazirmatn.woff2') format('woff2-variations'),
      url('../fonts/Vazirmatn.woff2') format('woff2');
  font-weight:100 900;font-display:swap;
}
:root{
  /* توکن‌های تم */
  --bg:#02070f; --bg1:#030a14; --bg2:#04101c;
  --surface:#0B1D31; --surface2:#061424;
  --card1:rgba(12,32,54,.80); --card2:rgba(6,18,32,.66);
  --line:rgba(140,225,255,.14); --line2:rgba(140,225,255,.26);
  --ink:#eafff8; --muted:rgba(200,228,240,.68); --muted2:rgba(190,220,235,.56);
  --em:#2ee6a6; --em2:#19e39c; --cy:#5fc9ff; --cy2:#9fdcff;
  --gold:#ffd45e; --gold2:#ffd98a; --red:#ff6482; --violet:#b478ff;
  /* نگاشت برای پنل ادمین و بازی‌ها */
  --blue:#1f7cf0; --amber:#ffd45e; --green:#2ee6a6;
  --r:18px;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --grad:linear-gradient(120deg,#ffd45e,#2ee6a6 55%,#5fc9ff);
  --grad2:linear-gradient(120deg,#2ee6a6,#5fc9ff);
}
*{box-sizing:border-box}
/* اسکرول‌بار نازک سفارشی */
html{overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(46,230,166,.55) rgba(4,14,26,.9)}
::-webkit-scrollbar{width:7px;height:7px}
::-webkit-scrollbar-track{background:rgba(4,14,26,.9)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#2ee6a6,#1f7cf0);border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#4df0b8,#3d90ff)}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;color:var(--ink);
  font-family:'Vazirmatn',Tahoma,sans-serif;font-size:16px;line-height:1.85;
  min-height:100vh;overflow-x:hidden;
  background:
    radial-gradient(1200px 700px at 78% -8%, rgba(24,110,240,.28), transparent 60%),
    radial-gradient(1000px 620px at 12% 12%, rgba(11,190,140,.20), transparent 62%),
    linear-gradient(180deg,#030a14 0%,#04101c 40%,#020a12 100%);
}
a{color:var(--em);text-decoration:none}
a:hover{color:#8ff0d4}
button{font-family:inherit}
::selection{background:rgba(28,214,150,.35)}
[dir=ltr]{direction:ltr;unicode-bidi:isolate}
.hidden{display:none!important}

/* ── انیمیشن‌ها ── */
@keyframes auroraA{0%{transform:translate3d(-6%,-4%,0) scale(1)}50%{transform:translate3d(8%,6%,0) scale(1.18)}100%{transform:translate3d(-6%,-4%,0) scale(1)}}
@keyframes auroraB{0%{transform:translate3d(5%,3%,0) scale(1.1)}50%{transform:translate3d(-7%,-6%,0) scale(1)}100%{transform:translate3d(5%,3%,0) scale(1.1)}}
@keyframes twinkle{0%,100%{opacity:.3}50%{opacity:.95}}
@keyframes glowPulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@keyframes ringSpin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
@keyframes rise{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}
@keyframes blink{0%,92%{opacity:1}96%{opacity:.25}100%{opacity:1}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ── لایه‌های جادویی پس‌زمینه ── */
.aurora{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.aurora i{position:absolute;border-radius:50%;filter:blur(30px);display:block}
.aurora i:nth-child(1){width:60vw;height:60vw;top:-18vw;right:-10vw;background:radial-gradient(circle,rgba(31,120,255,.30),transparent 65%);animation:auroraA 22s ease-in-out infinite}
.aurora i:nth-child(2){width:55vw;height:55vw;bottom:-16vw;left:-12vw;background:radial-gradient(circle,rgba(12,214,153,.26),transparent 65%);animation:auroraB 26s ease-in-out infinite}
.aurora i:nth-child(3){width:38vw;height:38vw;top:40%;left:36%;background:radial-gradient(circle,rgba(255,212,94,.10),transparent 65%);animation:auroraA 30s ease-in-out infinite reverse}
.stars{position:fixed;inset:0;pointer-events:none;z-index:0}
.stars b{position:absolute;width:2px;height:2px;border-radius:50%;background:#cfeaff;animation:twinkle 4s ease-in-out infinite}

/* ── LED ── */
.led{width:8px;height:8px;border-radius:50%;background:var(--em2);box-shadow:0 0 10px var(--em2);display:inline-block;flex:none;animation:glowPulse 2.2s ease-in-out infinite}
.led.red{background:var(--red);box-shadow:0 0 10px var(--red)}

/* ── نوار بالا (فقط برند + کوین) ── */
.topbar{position:sticky;top:0;z-index:50;background:rgba(2,8,16,.66);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{font-weight:800;font-size:1.05rem;display:flex;align-items:center;gap:10px;white-space:nowrap}
.coinchip{display:flex;align-items:center;gap:9px;background:rgba(255,212,94,.08);border:1px solid rgba(255,212,94,.35);border-radius:999px;padding:6px 16px;font-weight:800;color:var(--gold2);font-size:.95rem;box-shadow:0 0 24px -8px rgba(255,212,94,.5)}
.coinchip .led{background:var(--gold);box-shadow:0 0 10px var(--gold);width:7px;height:7px}

.wrap{max-width:1400px;margin:0 auto;padding:0 clamp(16px,4vw,32px);position:relative;z-index:10}

/* ── هیرو تمام‌صفحه ── */
.hero{min-height:88vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:22px;padding:60px 0 40px;position:relative}
.sys{display:inline-flex;align-items:center;gap:10px;padding:8px 18px;border-radius:999px;background:rgba(14,190,140,.10);border:1px solid rgba(20,214,153,.32);font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:#8ef0cb}
.hero h1{margin:0;font-size:clamp(2.3rem,7vw,4.6rem);line-height:1.25;font-weight:900;background:linear-gradient(180deg,#ffffff 30%,#a9e6ff 68%,#7ef0c4 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 0 60px rgba(30,140,255,.22)}
.hero p{margin:0;max-width:40rem;font-size:clamp(1rem,2.2vw,1.18rem);color:var(--muted)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.cta{display:inline-block;padding:15px 34px;border-radius:999px;font-size:1rem;font-weight:800;color:#03130e;border:0;cursor:pointer;
  background:var(--grad);background-size:220% 100%;animation:shimmer 6s linear infinite;
  box-shadow:0 18px 46px -16px rgba(46,230,166,.75),0 0 0 1px rgba(255,255,255,.18) inset;transition:filter .15s,transform .1s}
.cta:hover{filter:brightness(1.07);color:#03130e}
.cta:active{transform:translateY(1px)}
.cta.ghost{background:rgba(255,255,255,.04);color:#dff3ef;font-weight:600;border:1px solid rgba(140,225,255,.24);animation:none;box-shadow:none}
.cta.ghost:hover{border-color:var(--line2);color:#fff}
.stats{display:flex;gap:clamp(20px,4vw,48px);flex-wrap:wrap;justify-content:center;margin-top:30px;padding-top:28px;border-top:1px solid rgba(140,225,255,.10);width:100%;max-width:760px}
.stats div{display:flex;flex-direction:column;gap:4px;min-width:110px}
.stats b{font-family:var(--mono);font-size:1.8rem;font-weight:700}
.stats div:nth-child(1) b{color:#7ef0c4}.stats div:nth-child(2) b{color:#8fd2ff}.stats div:nth-child(3) b{color:var(--gold2)}
.stats span{font-size:.8rem;color:var(--muted2)}
.scrollcue{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:var(--muted2);font-size:1.2rem;animation:rise 1s .8s both, glowPulse 2.5s 2s ease-in-out infinite}

/* ── سرصفحهٔ بخش‌ها ── */
.sec{padding:56px 0 20px}
.sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.sechead .st{display:flex;align-items:center;gap:14px}
.num{font-family:var(--mono);font-size:.75rem;padding:5px 12px;border-radius:9px;border:1px solid var(--line2);color:var(--cy2);letter-spacing:.06em}
.sechead h2{margin:0;font-size:clamp(1.35rem,3vw,1.9rem);font-weight:800}
.sechead .hint{font-size:.84rem;color:var(--muted2)}

/* رک (سازگاری با پنل ادمین و صفحات بازی) */
.rack{display:flex;align-items:center;gap:13px;background:linear-gradient(120deg,var(--card1),var(--card2));border:1px solid var(--line);border-radius:14px;padding:12px 18px;margin:30px 0 18px}
.rack .u{font-family:var(--mono);font-size:.68rem;color:var(--cy2);border:1px solid var(--line2);border-radius:7px;padding:2px 9px;letter-spacing:.08em}
.rack h2{font-size:1.06rem;font-weight:800;margin:0;flex:1}
.rack .hint{font-size:.78rem;color:var(--muted2)}

/* ── کارت‌های کد عمومی ── */
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.pcard{background:linear-gradient(150deg,var(--card1),var(--card2));border:1px solid var(--line);border-radius:24px;padding:24px;
  box-shadow:0 30px 70px -40px rgba(20,120,220,.4);position:relative;overflow:hidden;transition:transform .2s,border-color .2s}
.pcard:hover{transform:translateY(-3px);border-color:var(--line2)}
.pcard::after{content:'';position:absolute;top:0;right:0;width:130px;height:130px;border-radius:50%;
  background:radial-gradient(circle,rgba(46,230,166,.12),transparent 68%);pointer-events:none}
.pcard .svc{color:var(--muted2);font-size:.78rem}
.pcard h3{margin:.2rem 0 .1rem;font-size:1.12rem;font-weight:800}
.pcard .pct{font-family:var(--mono);color:var(--em);font-weight:700;font-size:1.9rem;text-shadow:0 0 26px rgba(46,230,166,.45)}
.pcard .desc{color:var(--muted2);font-size:.82rem;min-height:2.5em;margin:.35rem 0 .85rem}
.codebox{display:flex;gap:9px;align-items:stretch}
.codebox code{flex:1;display:flex;align-items:center;justify-content:center;direction:ltr;
  border:1.5px dashed rgba(46,230,166,.4);border-radius:13px;background:rgba(3,12,22,.5);
  font-family:var(--mono);font-weight:700;letter-spacing:.1em;font-size:.95rem;padding:10px;color:#eafff8}
.copybtn{border:0;border-radius:13px;background:var(--grad2);color:#03130e;font-weight:800;
  padding:10px 20px;cursor:pointer;transition:filter .15s;box-shadow:0 10px 26px -12px rgba(46,230,166,.7)}
.copybtn:hover{filter:brightness(1.08)}
.copybtn:active{transform:translateY(1px)}
.copybtn.done{background:var(--em);color:#03130e}

/* ── گردونه ── */
.wheelpanel{display:grid;gap:38px;grid-template-columns:1fr;align-items:center;
  padding:clamp(17px,4vw,46px);border-radius:34px;
  background:
    radial-gradient(700px 400px at 82% 8%, rgba(122,77,216,.20), transparent 60%),
    radial-gradient(560px 360px at 12% 92%, rgba(46,230,166,.12), transparent 60%),
    linear-gradient(150deg,var(--card1),var(--card2));
  border:1px solid rgba(180,150,255,.22);
  box-shadow:0 50px 120px -50px rgba(20,120,220,.55),0 0 0 1px rgba(255,255,255,.03) inset;overflow:hidden}
@media(min-width:900px){.wheelpanel{grid-template-columns:1.05fr .95fr}}
.wheelzone{position:relative;display:flex;align-items:center;justify-content:center;min-height:min(92vw,500px);width:100%}
.wheelzone .nebula{position:absolute;width:130%;aspect-ratio:1;border-radius:50%;pointer-events:none;
  background:
    radial-gradient(circle at 34% 30%, rgba(180,120,255,.30), transparent 42%),
    radial-gradient(circle at 68% 66%, rgba(46,230,166,.22), transparent 46%),
    radial-gradient(circle at 55% 45%, rgba(31,120,255,.20), transparent 60%);
  filter:blur(22px);animation:glowPulse 7s ease-in-out infinite}
/* حلقهٔ نمادهای اسرارآمیز که آرام می‌چرخد */
.glyphring{position:absolute;width:118%;aspect-ratio:1;border-radius:50%;pointer-events:none;
  animation:ringSpin 90s linear infinite}
.glyphring span{position:absolute;left:50%;top:50%;font-size:15px;color:rgba(255,212,94,.6);
  text-shadow:0 0 12px rgba(255,212,94,.7)}
/* دنباله‌دارهای مداری */
.comet{position:absolute;width:5px;height:5px;border-radius:50%;background:#9fdcff;pointer-events:none;
  box-shadow:0 0 10px 2px rgba(159,220,255,.8), -14px 0 16px -4px rgba(159,220,255,.5);
  offset-path:circle(56% at 50% 50%);animation:cometOrbit 14s linear infinite}
.comet.c2{width:3.5px;height:3.5px;background:#b478ff;box-shadow:0 0 8px 2px rgba(180,120,255,.8), -10px 0 12px -4px rgba(180,120,255,.5);
  offset-path:circle(62% at 50% 50%);animation-duration:23s;animation-delay:-8s}
.comet.c3{width:3px;height:3px;background:#2ee6a6;box-shadow:0 0 8px 2px rgba(46,230,166,.8);
  offset-path:circle(50% at 50% 50%);animation-duration:18s;animation-delay:-4s}
@keyframes cometOrbit{from{offset-distance:0%}to{offset-distance:100%}}
@supports not (offset-path:circle(50%)){.comet{display:none}}
.wheelbox2{position:relative;width:min(84vw,430px);aspect-ratio:1}
/* اشاره‌گر بلوری */
.pointer{position:absolute;top:-26px;left:50%;transform:translateX(-50%);z-index:7;width:26px;height:34px;
  filter:drop-shadow(0 0 14px rgba(255,212,94,.9))}
.pointer i{position:absolute;inset:0;display:block;clip-path:polygon(50% 100%, 0 26%, 50% 0, 100% 26%);
  background:linear-gradient(180deg,#fff6d8,#ffd45e 45%,#c9962a)}
/* حلقهٔ تزئینی طلایی با تیک‌ها */
.ringdeco{position:absolute;inset:-14px;border-radius:50%;pointer-events:none;z-index:1;
  background:
    repeating-conic-gradient(from 0deg, rgba(255,212,94,.85) 0deg .8deg, transparent .8deg 15deg),
    radial-gradient(circle, transparent 63%, rgba(255,212,94,.06) 66%, transparent 72%);
  -webkit-mask:radial-gradient(circle, transparent 68%, #000 69%, #000 76%, transparent 77%);
  mask:radial-gradient(circle, transparent 68%, #000 69%, #000 76%, transparent 77%);
  animation:ringSpin 60s linear infinite reverse}
/* رینگ طلایی دورِ دیسک */
.rim{position:absolute;inset:0;border-radius:50%;padding:11px;z-index:2;
  background:
    conic-gradient(from 120deg, #6b511b, #ffd45e 20%, #8a6a22 40%, #ffe9a8 55%, #6b511b 72%, #ffd45e 90%, #6b511b),
    #6b511b;
  box-shadow:0 34px 80px -26px rgba(0,0,0,.85), 0 0 46px -8px rgba(255,212,94,.35), inset 0 0 10px rgba(0,0,0,.55)}
.disc{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;
  will-change:transform;backface-visibility:hidden;transform:translateZ(0);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.14)}
/* عمق کیهانی روی بخش‌ها: مرکز روشن، لبه تاریک + غبار ستاره‌ای */
.disc::before{content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.14), transparent 34%),
    radial-gradient(circle at 50% 50%, transparent 52%, rgba(2,6,18,.52) 96%),
    radial-gradient(1.4px 1.4px at 24% 30%, rgba(255,255,255,.8), transparent 60%),
    radial-gradient(1.2px 1.2px at 68% 22%, rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1.6px 1.6px at 76% 64%, rgba(255,255,255,.75), transparent 60%),
    radial-gradient(1.2px 1.2px at 38% 74%, rgba(255,255,255,.65), transparent 60%),
    radial-gradient(1.3px 1.3px at 55% 43%, rgba(255,255,255,.6), transparent 60%)}
.wlabel{position:absolute;left:50%;top:50%;text-align:center;width:104px;font-size:.82rem;font-weight:800;line-height:1.45;pointer-events:none}
.wlabel small{display:block;font-size:.68rem;opacity:.85;font-weight:600}
/* گوی بلورین مرکز */
.hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:23%;aspect-ratio:1;border-radius:50%;z-index:6;
  background:
    radial-gradient(circle at 34% 30%, rgba(255,255,255,.5), transparent 34%),
    radial-gradient(circle at 60% 70%, rgba(46,230,166,.55), transparent 60%),
    radial-gradient(circle at 45% 45%, #7a4dd8, #241a5e 75%);
  border:2px solid rgba(255,220,130,.75);
  box-shadow:0 0 44px rgba(180,120,255,.65), 0 0 24px rgba(46,230,166,.4), inset 0 -8px 18px rgba(0,0,0,.5);
  display:flex;align-items:center;justify-content:center;animation:hubPulse 4s ease-in-out infinite}
@keyframes hubPulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.05)}}
.hub .orb{font-size:clamp(18px,4.4vw,26px);color:#fff;text-shadow:0 0 16px #ffd45e, 0 0 34px rgba(255,212,94,.7);
  transition:transform .6s cubic-bezier(.2,.8,.3,1);display:block}
.wheelpanel.spinning .hub .orb{transform:rotate(360deg) scale(1.15)}
.wheelside{display:flex;flex-direction:column;gap:18px;text-align:center}
@media(min-width:900px){.wheelside{text-align:right}}
.wheelside h3{margin:0;font-size:clamp(1.4rem,3vw,2rem);font-weight:800}
.wheelside p{margin:0;color:var(--muted);font-size:.95rem}
.spinbtn{position:relative;align-self:center;padding:18px 46px;border-radius:999px;border:0;cursor:pointer;
  font-size:1.15rem;font-weight:800;color:#03130e;background:var(--grad);background-size:220% 100%;
  box-shadow:0 22px 54px -18px rgba(46,230,166,.8),0 0 0 1px rgba(255,255,255,.25) inset;
  animation:shimmer 6s linear infinite;transition:filter .15s}
@media(min-width:900px){.spinbtn{align-self:flex-start}}
.spinbtn:hover:not(:disabled){filter:brightness(1.07)}
.spinbtn:disabled{opacity:.4;cursor:not-allowed;animation:none;box-shadow:none}
.tickets{color:var(--muted2);font-size:.88rem;margin:0}
.tickets b{color:var(--gold2)}
.nocoins a{font-weight:700}
.wheelfacts{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
@media(min-width:900px){.wheelfacts{justify-content:flex-start}}
.wheelfacts span{font-size:.75rem;color:var(--muted2);border:1px solid var(--line);border-radius:999px;padding:5px 14px;background:rgba(3,12,22,.4)}

/* ── کارت بازی‌ها ── */
.gcard{background:linear-gradient(150deg,var(--card1),var(--card2));border:1px solid var(--line);border-radius:24px;padding:22px;
  display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden;transition:transform .2s,border-color .2s}
.gcard:hover{transform:translateY(-3px);border-color:var(--line2)}
.gcard .thumb{height:96px;border-radius:16px;background:rgba(3,12,22,.55);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;overflow:hidden}
.gcard h3{margin:0;font-size:1.08rem;font-weight:800}
.gcard p{margin:0;color:var(--muted2);font-size:.83rem;flex:1}
.gmeta{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--muted2)}
.gmeta .pct{color:var(--em);font-weight:700}
.gmeta .pct.low{color:var(--gold2)}
.gmeta .pct.zero{color:var(--red)}
.playbtn{display:block;text-align:center;border-radius:999px;background:rgba(255,255,255,.04);
  border:1px solid rgba(140,225,255,.22);color:var(--ink);font-weight:700;padding:11px;transition:.18s;cursor:pointer}
.playbtn:hover{border-color:var(--em);color:var(--em);box-shadow:0 0 30px -10px rgba(46,230,166,.6)}

/* ── بنر تمام‌عرض کوییز ── */
.quizband{position:relative;z-index:10;width:100%;padding:30px 0;margin-top:36px}
.quizband .inner{position:relative;width:100%;padding:clamp(36px,6vw,60px) clamp(16px,4vw,32px);
  background:linear-gradient(110deg,rgba(18,63,176,.35),rgba(10,155,114,.28) 55%,rgba(255,205,90,.14));
  border-top:1px solid rgba(140,225,255,.16);border-bottom:1px solid rgba(140,225,255,.16);overflow:hidden}
.quizband .halo{position:absolute;top:-120px;right:8%;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(46,230,166,.28),transparent 65%);filter:blur(20px);animation:glowPulse 7s ease-in-out infinite}
.quizgrid{position:relative;max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
@media(min-width:900px){.quizgrid{grid-template-columns:1.15fr 1fr}}
.qtag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:7px 16px;border-radius:999px;
  background:rgba(3,12,22,.5);border:1px solid rgba(255,212,94,.4);font-size:.78rem;color:var(--gold2)}
.quizgrid h2{margin:0;font-size:clamp(1.6rem,4vw,2.7rem);font-weight:900;line-height:1.35}
.quizgrid .lead{margin:0;max-width:38rem;font-size:1.02rem;color:rgba(226,244,250,.8)}
.qsteps{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.qstep{padding:20px;border-radius:20px;background:rgba(3,12,22,.45);border:1px solid rgba(140,225,255,.16)}
.qstep .n{font-family:var(--mono);font-size:.78rem;color:var(--cy2);margin-bottom:7px}
.qstep b{font-size:.94rem;display:block}
.qstep span{font-size:.76rem;color:rgba(226,244,250,.6);display:block;margin-top:4px}
.qstep.final{background:linear-gradient(140deg,rgba(46,230,166,.2),rgba(3,12,22,.4));border-color:rgba(46,230,166,.4)}
.qstep.final .n{color:#8ef0cb}

/* ── کیف پول ── */
.wallet-empty{color:var(--muted2);text-align:center;border:1.5px dashed var(--line2);border-radius:22px;padding:32px;background:rgba(3,12,22,.3)}
.wcard{background:linear-gradient(120deg,var(--card1),var(--card2));border:1px solid var(--line);border-radius:22px;padding:20px 24px;
  display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.wcard .info{flex:1;min-width:160px}
.wcard .info b{font-size:1.02rem}
.wcard .info .svc{color:var(--muted2);font-size:.78rem;display:block}
.wcard .ttl{font-size:.78rem;color:var(--gold2)}
.wcard .ttl.exp{color:var(--red)}
.wcard.locked{border-color:rgba(180,120,255,.4)}
.locknote{font-size:.8rem;color:var(--violet)}

/* ── مودال ── */
.modal{position:fixed;inset:0;background:rgba(2,7,15,.82);backdrop-filter:blur(6px);display:none;place-items:center;z-index:100;padding:16px}
.modal.show{display:grid}
.mcard{background:linear-gradient(160deg,#0b1d31,#061424);border:1px solid var(--line2);border-radius:26px;padding:32px 26px;
  width:min(420px,94vw);text-align:center;animation:rise .3s ease;box-shadow:0 60px 120px -40px rgba(0,0,0,.8),0 0 80px -30px rgba(46,230,166,.35)}
.mcard h3{font-size:1.35rem;margin:.2rem 0}
.mcard .big{font-size:2.6rem;font-weight:900}
.mcard .big.win{color:var(--em);text-shadow:0 0 40px rgba(46,230,166,.6)}
.mcard .big.coin{color:var(--gold);text-shadow:0 0 40px rgba(255,212,94,.6)}
.mcard .big.miss{color:var(--muted2)}
.mcard p{color:var(--muted);font-size:.9rem}
.mcard .codebox{margin:16px 0}
.mcard input[type=email]{width:100%;padding:13px;border-radius:13px;border:1px solid var(--line2);
  background:rgba(3,12,22,.6);color:var(--ink);font-family:inherit;direction:ltr;text-align:center;margin:8px 0;font-size:.95rem}
.mbtn{border:0;border-radius:999px;background:var(--grad2);color:#03130e;font-weight:800;padding:13px 30px;cursor:pointer;width:100%;
  box-shadow:0 16px 40px -16px rgba(46,230,166,.7);transition:filter .15s;font-size:1rem}
.mbtn:hover{filter:brightness(1.07)}
.mclose{background:none;border:0;color:var(--muted2);cursor:pointer;margin-top:12px;font-size:.85rem}

/* ── صفحات بازی ── */
.gamepage{max-width:720px;margin:0 auto;padding:16px clamp(14px,3vw,20px);position:relative;z-index:10}
.gamehead{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px}
.gamehead .back{color:var(--muted2);font-size:.85rem}
.gamehead .back:hover{color:var(--em)}
.stage{background:linear-gradient(150deg,var(--card1),var(--card2));border:1px solid var(--line);border-radius:24px;overflow:hidden;position:relative;
  box-shadow:0 40px 90px -46px rgba(20,120,220,.5)}
canvas.game{display:block;width:100%;touch-action:manipulation}
.hud{display:flex;justify-content:space-between;padding:12px 18px;font-size:.85rem;color:var(--muted2);border-top:1px solid var(--line)}
.hud b{color:var(--ink)}
.overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(2,8,16,.86);backdrop-filter:blur(4px);text-align:center;padding:20px;z-index:5}
.overlay h3{margin:.3rem 0;font-size:1.3rem}
.overlay p{color:var(--muted2);font-size:.87rem;margin:.2rem 0 1rem}
.overlay .mbtn{width:auto;padding:13px 38px}
.rewardtag{display:inline-block;border:1px solid rgba(46,230,166,.35);background:rgba(14,190,140,.08);border-radius:999px;padding:4px 16px;
  font-size:.78rem;color:#8ef0cb;margin-bottom:8px}
.resultcoins{font-size:2.2rem;font-weight:900;color:var(--gold);text-shadow:0 0 34px rgba(255,212,94,.55)}

/* ── کوییز استپر ── */
.qprog{display:flex;align-items:center;gap:14px;margin:6px 0 18px}
.qprog .bar{flex:1;height:7px;border-radius:99px;background:rgba(140,225,255,.10);overflow:hidden}
.qprog .fill{height:100%;width:0;border-radius:99px;background:var(--grad2);transition:width .4s ease;box-shadow:0 0 16px rgba(46,230,166,.6)}
.qprog .cnt{font-family:var(--mono);font-size:.8rem;color:var(--cy2);white-space:nowrap}
.quizq{background:linear-gradient(150deg,var(--card1),var(--card2));border:1px solid var(--line);border-radius:24px;padding:clamp(20px,4vw,30px);
  animation:rise .35s ease both}
.quizq h3{margin:0 0 16px;font-size:1.15rem;font-weight:800}
.qopt{display:block;width:100%;text-align:right;border:1px solid var(--line);background:rgba(3,12,22,.45);
  color:var(--ink);border-radius:15px;padding:14px 18px;margin:9px 0;cursor:pointer;font-size:.95rem;transition:.15s}
.qopt:hover{border-color:var(--line2)}
.qopt.sel{border-color:var(--em);background:rgba(46,230,166,.10);color:#9ff5d6;font-weight:700;box-shadow:0 0 30px -12px rgba(46,230,166,.7)}
.qback{background:none;border:0;color:var(--muted2);cursor:pointer;font-size:.83rem;margin-top:12px}
.qback:hover{color:var(--cy2)}
.planbox{background:linear-gradient(135deg,rgba(46,230,166,.16),rgba(31,120,255,.12));
  border:1px solid rgba(46,230,166,.45);border-radius:26px;padding:clamp(24px,5vw,40px);text-align:center;animation:rise .4s ease both;
  box-shadow:0 40px 100px -50px rgba(46,230,166,.5)}
.planbox h3{color:var(--em);font-size:1.55rem;margin:.4rem 0;font-weight:900}

/* ── فوتر ── */
footer{margin:70px 0 34px;text-align:center;color:var(--muted2);font-size:.8rem;position:relative;z-index:10}
footer .sep{display:block;width:120px;height:1px;margin:0 auto 20px;background:linear-gradient(90deg,transparent,var(--line2),transparent)}

/* ── toast و اسکلت ── */
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:rgba(11,29,49,.95);
  border:1px solid var(--line2);border-radius:999px;padding:10px 24px;font-size:.87rem;z-index:200;
  opacity:0;transition:opacity .25s;pointer-events:none;box-shadow:0 20px 50px -20px rgba(0,0,0,.7)}
.toast.show{opacity:1}
.skel{color:var(--muted2);text-align:center;padding:26px}

/* ── ظهور هنگام اسکرول ── */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}

/* دکمهٔ کدهای تخفیف من در نوار بالا */
.topchips{display:flex;align-items:center;gap:10px}
.walletbtn{cursor:pointer;border:1px solid rgba(46,230,166,.4);background:rgba(14,190,140,.08);color:#9ff5d6;
  font-family:inherit;font-size:.85rem;box-shadow:0 0 24px -10px rgba(46,230,166,.6);transition:filter .15s}
.walletbtn:hover{filter:brightness(1.15)}
.walletbtn b{background:rgba(46,230,166,.22);border-radius:999px;padding:1px 9px;font-size:.8rem;color:#c8ffe9}
@media(max-width:520px){.walletbtn{font-size:.74rem;padding:6px 10px}.coinchip{padding:6px 10px;font-size:.82rem}}

/* فوتر تماس */
.contactrow{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.contact-item{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;
  padding:9px 20px;color:var(--muted);font-size:.85rem;background:rgba(3,12,22,.4);transition:.15s}
.contact-item:hover{border-color:var(--line2);color:var(--ink)}

/* دکمهٔ بررسی محصولات کنار کدها */
.linkbtn{display:inline-block;border:1px solid rgba(140,225,255,.3);border-radius:13px;background:rgba(3,12,22,.4);
  color:var(--cy2);font-weight:700;font-size:.82rem;padding:10px 14px;transition:.15s;white-space:nowrap}
.linkbtn:hover{border-color:var(--cy);color:var(--cy)}

/* نوار رکوردها در صفحات بازی */
.recbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.recbar span{flex:1;min-width:150px;display:flex;justify-content:space-between;gap:8px;align-items:center;
  border:1px solid var(--line);border-radius:12px;padding:8px 14px;font-size:.8rem;color:var(--muted2);background:rgba(3,12,22,.4)}
.recbar b{color:var(--gold2);font-family:var(--mono)}
.recbar .mine b{color:#8ef0cb}

/* لوگوی برند در نوار بالا */
.brandlogo{height:32px;max-width:140px;object-fit:contain;border-radius:7px}


/* ── تیتر هیرو دوخطی: کوبش دو گوشه، تایپ نئون خط دوم ── */
.herotitle{display:flex;flex-direction:column;gap:2px;width:100%;max-width:920px;margin:0 auto;font-weight:900;line-height:1.35}
.titleline{display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  font-size:clamp(1.35rem,5vw,2.7rem)}
.titleline .slam{opacity:0;white-space:nowrap;animation:slamIn .55s cubic-bezier(.2,1.5,.3,1) forwards;
  background:linear-gradient(180deg,#ffffff 35%,#a9e6ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.titleline .slam.right{animation-delay:.15s}
.titleline .slam.left{animation-delay:.5s}
@keyframes slamIn{
  0%{opacity:0;transform:scale(3.2) rotate(-3deg);filter:blur(8px)}
  62%{opacity:1;transform:scale(.93) rotate(0);filter:blur(0)}
  80%{transform:scale(1.03)}
  100%{opacity:1;transform:scale(1)}}
.brandtype{text-align:center;white-space:nowrap;min-height:1.35em;font-size:clamp(2rem,8vw,4.6rem)}
.brandtype .caret{display:inline-block;width:4px;height:.85em;background:#2ee6a6;margin-inline-start:6px;
  vertical-align:-6%;border-radius:2px;box-shadow:0 0 10px #2ee6a6;animation:caretBlink .75s steps(1) infinite}
@keyframes caretBlink{50%{opacity:0}}
.brandtype span{color:#eafff8}
.brandtype.neon span{
  background:linear-gradient(115deg,#2ee6a6 20%,#5fc9ff 80%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 12px rgba(46,230,166,.85)) drop-shadow(0 0 30px rgba(95,201,255,.55));
  animation:neonPulse 2.8s ease-in-out infinite}
@keyframes neonPulse{50%{filter:drop-shadow(0 0 20px rgba(46,230,166,1)) drop-shadow(0 0 46px rgba(95,201,255,.8))}}
/* زیرتیتر: مخفی تا پایان تایپ، بعد کوبیده می‌شود */
#heroSub.anim-wait{opacity:0}
#heroSub.slamshow{animation:slamIn .55s cubic-bezier(.2,1.5,.3,1) forwards}
@media (prefers-reduced-motion:reduce){
  .titleline .slam{animation:none;opacity:1}
  #heroSub.anim-wait{opacity:1}
}

/* ── شهاب‌های گاه‌به‌گاه ── */
.meteor{position:fixed;width:150px;height:2px;pointer-events:none;z-index:1;opacity:0;
  background:linear-gradient(90deg,transparent,rgba(207,234,255,.95));border-radius:2px;
  transform:rotate(215deg);animation:meteorFly 1.1s ease-in forwards}
.meteor::after{content:'';position:absolute;left:100%;top:-1.5px;width:5px;height:5px;border-radius:50%;
  background:#fff;box-shadow:0 0 12px 3px rgba(159,220,255,.95)}
@keyframes meteorFly{
  0%{opacity:0;transform:rotate(215deg) translateX(0)}
  12%{opacity:1}
  100%{opacity:0;transform:rotate(215deg) translateX(78vh)}}

/* ── بازی‌ها در موبایل: تمام‌صفحه بدون اسکرول ── */
@media (max-width:768px){
  body.gamebody{height:100dvh;overflow:hidden}
  body.gamebody .gamepage{height:100dvh;display:flex;flex-direction:column;padding:8px 12px}
  body.gamebody .gamehead{margin:2px 0 8px}
  body.gamebody .rack{margin:0 0 8px;padding:8px 12px}
  body.gamebody .rack h2{font-size:.95rem}
  body.gamebody .rack .hint{display:none}
  body.gamebody .recbar{margin:0 0 8px;gap:6px}
  body.gamebody .recbar span{min-width:0;flex:1;padding:6px 9px;font-size:.68rem}
  body.gamebody .stage{flex:1;min-height:0;display:flex;flex-direction:column}
  body.gamebody canvas.game{width:auto;height:auto;max-width:100%;max-height:100%;margin:auto}
  body.gamebody .pingpad{height:auto;flex:1}
  body.gamebody .balwrap{min-height:0;flex:1;padding:12px}
  body.gamebody .hud{padding:8px 12px;font-size:.72rem}
  body.gamebody .overlay{overflow-y:auto}
  body.gamebody .overlay p{font-size:.8rem;margin:.2rem 0 .7rem}
}
