.app {
  position: relative;
  isolation: isolate;
  min-height: 100svh;
  display: flex;
  justify-content: center;
  overflow-x: hidden;
  padding: env(safe-area-inset-top) 0 calc(104px + env(safe-area-inset-bottom));
}
.app::before,
.app::after {
  content: "";
  position: fixed;
  z-index: -1;
  border-radius: 999px;
  filter: blur(30px);
  pointer-events: none;
}
.app::before { width: 190px; height: 190px; top: 8%; left: -90px; background: rgba(37, 99, 235, .18); }
.app::after { width: 220px; height: 220px; right: -120px; top: 34%; background: rgba(124, 58, 237, .16); }
.loading-screen {
  width: min(100%, 430px);
  min-height: 100svh;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 10px;
  padding: 24px;
  text-align: center;
}
.loader {
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  border-radius: 28px;
  font-size: 42px;
  background: linear-gradient(145deg, rgba(59,130,246,.95), rgba(124,58,237,.92));
  box-shadow: 0 0 0 8px rgba(59,130,246,.08), 0 24px 60px rgba(37,99,235,.36);
  animation: igLoader 1.6s ease-in-out infinite;
}
.loading-screen h2 { margin: 14px 0 0; font-size: 30px; letter-spacing: -.03em; }
.loading-screen p { margin: 0; color: var(--ig-muted); }
@keyframes igLoader { 0%,100%{transform:translateY(0) rotate(-3deg)} 50%{transform:translateY(-10px) rotate(3deg)} }
.neo-home{min-height:100vh;padding:18px 16px 120px;color:#f8fafc;background:radial-gradient(circle at 80% -10%,#27335f 0,transparent 34%),radial-gradient(circle at 0 30%,#122b44 0,transparent 30%),#070b14}.player-hero{padding:20px;border:1px solid #263552;border-radius:28px;background:linear-gradient(145deg,#121a2d,#0b1120);box-shadow:0 25px 70px #0007}.player-top{display:flex;align-items:center;gap:14px}.avatar{width:58px;height:58px;border-radius:19px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);font-size:24px;font-weight:900}.avatar img{width:100%;height:100%;object-fit:cover}.overline{font-size:10px;letter-spacing:.16em;color:#60a5fa}.player-hero h1{font-size:23px;margin:4px 0 0}.player-hero p{margin:3px 0;color:#94a3b8}.daily{margin-left:auto;border:1px solid #755c22;border-radius:14px;background:linear-gradient(135deg,#3b2b09,#1e293b);color:#fde68a;padding:10px 12px}.xpbar{height:8px;margin:18px 0;background:#ffffff12;border-radius:99px;overflow:hidden}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#8b5cf6)}.wallets{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.wallets article{padding:12px;border-radius:16px;background:#ffffff08;border:1px solid #ffffff0d}.wallets small{display:block;font-size:9px;color:#7f8ba8}.wallets b{display:block;margin-top:5px;font-size:14px}.home-message{margin:12px 0;padding:11px;border-radius:14px;background:#123027;color:#86efac}.bp-hero{margin-top:14px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.quick{min-height:120px;border:1px solid #263552;border-radius:22px;padding:18px;text-align:left;color:#fff;background:#101827;display:flex;gap:13px;align-items:flex-end}.quick.large{grid-column:1/-1;min-height:145px;background:linear-gradient(135deg,#422006,#161d2e)}.quick.partners{background:linear-gradient(145deg,#0d2730,#111827)}.quick.raffle{background:linear-gradient(145deg,#2b1648,#111827)}.quick>span{font-size:34px}.quick b{font-size:18px;display:block}.quick small{color:#aab4c8}.winner-card{margin-top:14px;padding:18px;border:1px solid #273451;border-radius:22px;background:#0e1628;display:flex;align-items:center;gap:15px}.trophy{font-size:38px}.winner-card small{font-size:9px;letter-spacing:.12em;color:#fbbf24}.winner-card h3{margin:5px 0}.winner-card p{margin:0;color:#8995ad}@media(max-width:380px){.wallets{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr}.quick.large{grid-column:auto}}
.random-game-premium{position:relative;width:100%;min-height:174px;margin-top:16px;padding:22px;border:1px solid rgba(96,165,250,.42);border-radius:28px;overflow:hidden;display:flex;align-items:center;gap:17px;text-align:left;color:#fff;background:radial-gradient(circle at 85% 10%,rgba(168,85,247,.4),transparent 36%),linear-gradient(135deg,#11284f 0%,#15152e 48%,#321554 100%);box-shadow:0 24px 70px rgba(14,93,255,.24),inset 0 1px rgba(255,255,255,.12);isolation:isolate}.random-game-premium:active{transform:scale(.985)}.random-game-premium:disabled{opacity:.65}.random-glow{position:absolute;inset:auto -45px -85px auto;width:210px;height:210px;border-radius:50%;background:#22d3ee;filter:blur(75px);opacity:.25;z-index:-1}.random-symbol{width:72px;height:72px;flex:0 0 72px;border-radius:24px;display:grid;place-items:center;font-size:34px;background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.18);box-shadow:0 14px 35px rgba(0,0,0,.3)}.random-copy{min-width:0}.random-copy small{font-size:9px;letter-spacing:.16em;color:#67e8f9}.random-copy h2{margin:7px 0 5px;font-size:25px;line-height:1.05}.random-copy p{margin:0;color:#b9c7df;font-size:13px;line-height:1.4}.random-arrow{margin-left:auto;width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:#fff;color:#0b1020;font-size:21px;font-weight:900}.random-result{margin-top:12px;padding:18px;border-radius:22px;border:1px solid rgba(251,191,36,.35);background:linear-gradient(145deg,#2a2009,#111827);box-shadow:0 18px 45px rgba(0,0,0,.28)}.random-result small{font-size:9px;letter-spacing:.15em;color:#fbbf24}.random-result h3{margin:7px 0 3px;font-size:20px}.random-result p{margin:0 0 12px;color:#aab4c8}.random-result code{display:block;padding:12px;border-radius:13px;background:#050914;color:#fef3c7;overflow-wrap:anywhere}.random-result button{margin-top:10px;border:0;border-radius:12px;padding:10px 13px;background:#fbbf24;color:#111827;font-weight:800}

.winner-card{display:flex;align-items:center;gap:14px;cursor:default;user-select:none}.winner-avatar{width:62px;height:62px;flex:0 0 62px;border-radius:20px;padding:2px;background:linear-gradient(135deg,#ffd76a,#7c5cff);box-shadow:0 10px 28px rgba(124,92,255,.24)}.winner-avatar img,.winner-avatar span{width:100%;height:100%;display:grid;place-items:center;border-radius:18px;object-fit:cover;background:#111827;color:#fff;font-size:24px;font-weight:900}.winner-copy{min-width:0}.winner-copy small{letter-spacing:.12em}.winner-copy h3{margin:5px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.winner-copy p{margin:0;opacity:.68}.winner-card a{pointer-events:none;text-decoration:none;color:inherit}
.neo-home.has-active-season{background-size:cover;background-position:center;background-attachment:fixed}.neo-home.has-active-season .player-hero{border-color:color-mix(in srgb,var(--season-accent) 28%,rgba(255,255,255,.08))}.neo-home.has-active-season .xpbar i{background:linear-gradient(90deg,var(--season-accent),#31d7ff)}
.content-modal{position:fixed;inset:0;z-index:2100;display:flex;align-items:flex-end;justify-content:center}.content-modal-backdrop{position:absolute;inset:0;background:rgba(32,40,70,.45);backdrop-filter:blur(12px)}.content-sheet{position:relative;width:min(100%,480px);max-height:88vh;overflow:auto;padding:20px 18px calc(24px + env(safe-area-inset-bottom));border-radius:30px 30px 0 0;background:linear-gradient(180deg,#f7f8ff,#eef1ff);box-shadow:0 -25px 70px rgba(53,63,108,.3);color:#27304f}.content-sheet header{display:flex;align-items:center;justify-content:space-between}.content-sheet header small{color:#6d72d8;font-weight:900;letter-spacing:.14em}.content-sheet h2{margin:5px 0 0}.content-sheet header button{width:42px;height:42px;border:0;border-radius:14px;background:#e4e7fa;color:#4a5277;font-size:26px}.promo-box{display:flex;gap:8px;margin:18px 0}.promo-box input{min-width:0;flex:1;padding:13px;border:1px solid #d7dcf4;border-radius:14px;background:white}.promo-box button,.content-list article button{border:0;border-radius:13px;padding:12px 14px;background:linear-gradient(135deg,#6c72e8,#8c68da);color:white;font-weight:800}.content-list{display:flex;flex-direction:column;gap:11px;margin-top:17px}.content-list article{display:flex;gap:13px;padding:14px;border:1px solid #dde1f4;border-radius:20px;background:rgba(255,255,255,.82)}.content-icon{width:54px;height:54px;display:grid;place-items:center;flex:0 0 auto;border-radius:17px;background:#eceeff;font-size:27px;overflow:hidden}.content-icon img,.raffle-art img{width:100%;height:100%;object-fit:cover}.content-list h3{margin:0;font-size:15px}.content-list p{margin:5px 0;color:#747d9f;font-size:11px}.content-list b{display:block;color:#5b61c9;font-size:10px}.content-list a{display:inline-block;margin-top:8px;color:#5b61c9;font-size:11px}.content-list article button{margin-top:9px;padding:8px 13px}.raffle-detail{text-align:center;padding:18px 3px}.raffle-art{width:110px;height:110px;margin:auto;display:grid;place-items:center;border-radius:30px;background:linear-gradient(145deg,#fff1b8,#dcd9ff);font-size:50px;overflow:hidden}.raffle-detail h3{font-size:21px}.raffle-detail p{color:#747d9f}.raffle-prize{margin:15px 0;padding:14px;border-radius:17px;background:white;color:#585fc4;font-weight:900}.content-message,.reward-popup{margin-top:14px;padding:13px;border-radius:16px;background:#e5e8ff;text-align:center;font-size:12px}.reward-popup{background:#e0f7eb;color:#247153}
.bp-hero{width:100%;min-height:210px;border:1px solid color-mix(in srgb,var(--bp-accent),transparent 45%);border-radius:28px;padding:24px;text-align:left;color:#fff;background:linear-gradient(135deg,#171a3d,#0a1020);background-size:cover;background-position:center;box-shadow:0 24px 70px #0008,inset 0 0 50px color-mix(in srgb,var(--bp-accent),transparent 82%);display:flex;justify-content:space-between;align-items:flex-end}.bp-hero h2{font-size:30px;margin:8px 0}.bp-hero p{color:#c7d2fe;max-width:420px}.eyebrow{font-size:11px;letter-spacing:.18em;color:#a5b4fc}.bp-progress{height:8px;background:#ffffff18;border-radius:99px;overflow:hidden;margin:18px 0 8px}.bp-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--bp-accent),#56d8ff)}.bp-page{min-height:100vh;padding:22px 18px 120px;background:#070b14;color:#fff}.bp-page header{display:flex;gap:14px;align-items:center}.bp-page header h1{margin:2px 0}.bp-page button{border:0;border-radius:14px;padding:11px 14px;background:#1a2340;color:#fff}.premium-buy{margin-left:auto!important;background:linear-gradient(135deg,#7c3aed,#d946ef)!important}.bp-summary{margin:22px 0;padding:18px;border:1px solid #293452;border-radius:20px;background:#10172a;display:flex;justify-content:space-between}.bp-track{display:grid;gap:14px}.bp-level{display:grid;grid-template-columns:52px 1fr 1fr 65px;gap:10px;align-items:stretch}.level-no{display:grid;place-items:center;border-radius:18px;background:#121b31;font-size:22px;font-weight:900}.reward{padding:14px;border-radius:18px;border:1px solid #283653;background:#10182b;display:grid;gap:9px}.reward.premium{background:linear-gradient(145deg,#241747,#131a31);border-color:#7048b5}.reward small{font-size:10px;letter-spacing:.12em;color:#a5b4fc}.reward button:disabled{opacity:.38}.bp-level em{display:grid;place-items:center;color:#7f8ba8;font-size:11px}.bp-message{padding:12px;border-radius:14px;background:#1e293b;margin-bottom:14px}@media(max-width:600px){.bp-level{grid-template-columns:42px 1fr}.bp-level em{display:none}.reward{grid-column:2}}
.bp-entry-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;margin:18px 0;padding:22px;border:1px solid color-mix(in srgb,var(--bp-accent) 48%,transparent);border-radius:26px;background:linear-gradient(135deg,#17102e,#0b1730);background-size:cover;background-position:center;color:var(--bp-text);box-shadow:0 18px 48px rgba(0,0,0,.3),0 0 calc(14px + var(--bp-glow)) color-mix(in srgb,var(--bp-accent) 24%,transparent);text-align:left}.bp-entry-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--bp-accent) 18%,transparent),transparent 48%,color-mix(in srgb,var(--bp-secondary) 15%,transparent));pointer-events:none}.bp-entry-shine{position:absolute;width:180px;height:180px;right:-48px;top:-70px;border-radius:50%;background:var(--bp-secondary);filter:blur(85px);opacity:.2}.bp-entry-main,.bp-entry-side{position:relative;z-index:1}.bp-entry-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--bp-accent) 28%,transparent);border:1px solid color-mix(in srgb,var(--bp-accent) 58%,transparent);font-size:10px;font-weight:900;letter-spacing:.14em}.bp-entry-main h2{margin:12px 0 5px;font-size:27px;line-height:1}.bp-entry-main p{margin:0;max-width:440px;color:color-mix(in srgb,var(--bp-text) 72%,transparent);font-size:13px}.bp-entry-progress{height:7px;margin-top:18px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}.bp-entry-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--bp-accent),var(--bp-secondary));box-shadow:0 0 18px var(--bp-accent)}.bp-entry-meta{display:flex;gap:10px;align-items:center;margin-top:9px;font-size:11px;color:color-mix(in srgb,var(--bp-text) 74%,transparent)}.bp-entry-meta b{padding:4px 7px;border-radius:8px;background:linear-gradient(90deg,#ffd76a,#ff9f43);color:#251500}.bp-entry-side{min-width:190px;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}.bp-entry-side>small{font-size:9px;letter-spacing:.16em;opacity:.7}.bp-countdown{display:flex;gap:5px;margin:8px 0 14px}.bp-countdown span{min-width:39px;padding:8px 5px;border-radius:11px;background:rgba(3,6,18,.55);border:1px solid rgba(255,255,255,.1);text-align:center}.bp-countdown b{display:block;font-size:16px}.bp-countdown i{display:block;font-style:normal;font-size:8px;opacity:.65}.bp-entry-side button{border:0;border-radius:13px;padding:12px 15px;background:var(--bp-button);color:#08101d;font-weight:900}.bp-entry-side button em{font-style:normal;margin-left:8px}.bp-theme-gold{--bp-accent:#f8c65c;--bp-secondary:#ff8c42}.bp-theme-dark{filter:saturate(.65)}.bp-theme-minimal{box-shadow:0 15px 35px rgba(0,0,0,.3)}
.bp-page{min-height:100vh;padding:16px 16px 110px;background-color:#070b16;background-size:cover;background-position:center;color:#fff}.bp-page-hero{position:relative;min-height:250px;padding:22px;border-radius:27px;background:linear-gradient(135deg,#17102e,#0c1a35);background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 24px 65px rgba(0,0,0,.35)}.bp-page-hero h1{font-size:34px;margin:5px 0}.bp-page-hero p{max-width:560px;color:rgba(255,255,255,.74)}.bp-back{position:absolute;left:18px;top:18px;z-index:2;border:1px solid rgba(255,255,255,.14);background:rgba(5,8,18,.55);color:#fff;border-radius:13px;padding:10px 13px}.bp-page-clock{position:absolute;right:18px;top:18px;text-align:right}.bp-page-clock small{display:block;font-size:9px;letter-spacing:.16em;opacity:.65}.bp-page-clock strong{font-size:17px}.premium-buy{align-self:flex-start;margin-top:13px;border:0;border-radius:13px;padding:12px 17px;background:linear-gradient(90deg,#ffd76a,#ff9f43);font-weight:900}.bp-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.bp-summary>div{padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.045)}.bp-summary small{display:block;font-size:8px;letter-spacing:.13em;opacity:.6}.bp-summary strong{display:block;margin-top:5px}.bp-info{padding:18px;border-radius:20px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.bp-info h2{margin:0 0 12px;font-size:17px}.bp-info div{display:flex;flex-wrap:wrap;gap:8px}.bp-info span{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.055);font-size:12px}.bp-level{border-color:rgba(255,255,255,.08)}.bp-level.unlocked{box-shadow:inset 3px 0 0 var(--bp-accent)}.bp-level.locked{opacity:.58}
@media(max-width:620px){.bp-entry-card{grid-template-columns:1fr;padding:18px}.bp-entry-side{min-width:0;align-items:stretch}.bp-entry-side>small{margin-top:2px}.bp-countdown{justify-content:flex-start}.bp-entry-side button{width:100%}.bp-page-hero{min-height:280px}.bp-page-clock{top:20px;right:16px}.bp-summary{grid-template-columns:1fr}.bp-page-hero h1{font-size:29px}}
.games-page {
    width:100%;
    max-width:680px;
    min-height:100vh;
    margin:0 auto;
    padding:
        calc(22px + env(safe-area-inset-top))
        16px
        calc(120px + env(safe-area-inset-bottom));
}


.games-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:22px;
}


.games-eyebrow {
    display:block;
    margin-bottom:7px;
    color:#fbbf24;
    font-size:10px;
    font-weight:900;
    letter-spacing:.18em;
}


.games-header h1 {
    margin:0;
    color:#fff;
    font-size:31px;
    line-height:1;
}


.games-header p {
    max-width:330px;
    margin:9px 0 0;
    color:#94a3b8;
    font-size:13px;
    line-height:1.45;
}


.games-header-icon {
    width:58px;
    height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:20px;
    background:
        linear-gradient(
            145deg,
            rgba(99,102,241,.24),
            rgba(59,130,246,.12)
        );
    border:1px solid rgba(129,140,248,.2);
    font-size:29px;
}


.games-featured {
    position:relative;
    min-height:310px;
    padding:24px;
    overflow:hidden;
    border-radius:30px;
    background:
        radial-gradient(
            circle at 85% 35%,
            rgba(250,204,21,.27),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            #312e81,
            #172554 55%,
            #0f172a
        );
    border:1px solid rgba(255,255,255,.11);
    box-shadow:
        0 24px 65px rgba(0,0,0,.35);
}


.featured-glow {
    position:absolute;
    width:220px;
    height:220px;
    right:-55px;
    top:-55px;
    border-radius:50%;
    background:rgba(250,204,21,.11);
    filter:blur(8px);
}


.featured-info {
    position:relative;
    z-index:2;
    width:59%;
}


.game-status {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 10px;
    border-radius:999px;
    font-size:9px;
    font-weight:900;
    letter-spacing:.11em;
}


.game-status.available {
    color:#86efac;
    background:rgba(34,197,94,.15);
    border:1px solid rgba(34,197,94,.24);
}


.game-status.soon {
    color:#c4b5fd;
    background:rgba(139,92,246,.15);
    border:1px solid rgba(139,92,246,.23);
}


.featured-info h2 {
    margin:17px 0 8px;
    color:#fff;
    font-size:36px;
    line-height:1;
}


.featured-info > p {
    margin:0;
    color:#cbd5e1;
    font-size:13px;
    line-height:1.55;
}


.featured-tags {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:17px;
}


.featured-tags span {
    padding:7px 9px;
    border-radius:12px;
    background:rgba(255,255,255,.07);
    color:#e2e8f0;
    font-size:10px;
    font-weight:700;
}


.play-igtap-button {
    height:49px;
    min-width:145px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    margin-top:22px;
    padding:0 18px;
    border:none;
    border-radius:16px;
    color:#111827;
    background:
        linear-gradient(
            135deg,
            #fde047,
            #f59e0b
        );
    font-size:14px;
    font-weight:900;
    cursor:pointer;
    box-shadow:
        0 14px 34px rgba(245,158,11,.25);
}


.play-igtap-button:active {
    transform:scale(.96);
}


.featured-coin {
    position:absolute;
    z-index:1;
    right:-35px;
    bottom:-19px;
    width:245px;
    height:245px;
    display:flex;
    align-items:center;
    justify-content:center;
}


.featured-coin::before {
    content:"";
    position:absolute;
    width:155px;
    height:155px;
    border-radius:50%;
    background:rgba(250,204,21,.36);
    filter:blur(34px);
}


.featured-coin img {
    position:relative;
    width:100%;
    height:100%;
    object-fit:contain;
    filter:
        drop-shadow(
            0 20px 28px
            rgba(0,0,0,.4)
        );
    transform:rotate(-10deg);
}


.games-section-title {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:14px;
    margin:30px 2px 15px;
}


.games-section-title span {
    color:#818cf8;
    font-size:10px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}


.games-section-title h2 {
    margin:5px 0 0;
    color:#fff;
    font-size:20px;
}


.games-count {
    padding:7px 9px;
    border-radius:12px;
    background:rgba(255,255,255,.06);
    color:#94a3b8 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}


.future-games-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
}


.future-game-card {
    position:relative;
    min-height:235px;
    padding:17px;
    overflow:hidden;
    border-radius:24px;
    background:
        linear-gradient(
            145deg,
            rgba(30,41,59,.94),
            rgba(15,23,42,.97)
        );
    border:1px solid rgba(255,255,255,.08);
}


.future-game-card::after {
    content:"";
    position:absolute;
    width:100px;
    height:100px;
    right:-35px;
    bottom:-35px;
    border-radius:50%;
    filter:blur(20px);
    opacity:.18;
}


.battle-game::after {
    background:#ef4444;
}


.match3-game::after {
    background:#8b5cf6;
}


.future-game-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}


.future-game-icon {
    width:49px;
    height:49px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:rgba(255,255,255,.07);
    font-size:25px;
}


.future-game-card h3 {
    margin:16px 0 8px;
    color:#fff;
    font-size:19px;
}


.future-game-card > p {
    margin:0;
    color:#cbd5e1;
    font-size:12px;
    line-height:1.45;
}


.future-game-card > small {
    display:block;
    margin-top:10px;
    color:#64748b;
    font-size:10px;
    line-height:1.45;
}


.future-game-lock {
    position:absolute;
    left:17px;
    bottom:16px;
    color:#94a3b8;
    font-size:10px;
    font-weight:800;
}


.games-roadmap {
    display:flex;
    align-items:center;
    gap:13px;
    margin-top:16px;
    padding:15px;
    border-radius:20px;
    background:rgba(99,102,241,.09);
    border:1px solid rgba(129,140,248,.12);
}


.roadmap-icon {
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:14px;
    background:rgba(99,102,241,.16);
}


.games-roadmap strong {
    display:block;
    color:#e2e8f0;
    font-size:12px;
}


.games-roadmap p {
    margin:4px 0 0;
    color:#64748b;
    font-size:10px;
}


@media (max-width:480px) {

    .games-featured {
        min-height:325px;
        padding:21px;
    }


    .featured-info {
        width:67%;
    }


    .featured-info h2 {
        font-size:31px;
    }


    .featured-coin {
        right:-54px;
        width:225px;
        height:225px;
    }


    .future-games-grid {
        grid-template-columns:1fr;
    }


    .future-game-card {
        min-height:215px;
    }

}


@media (max-width:370px) {

    .featured-info {
        width:72%;
    }


    .featured-coin {
        right:-72px;
        opacity:.77;
    }

}
.upgrade-modal-overlay {
    position:fixed;
    z-index:1000;
    inset:0;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    padding-top:
        calc(20px + env(safe-area-inset-top));
    background:rgba(2,6,23,.76);
    backdrop-filter:blur(12px);
}


.upgrade-modal {
    width:100%;
    max-width:620px;
    max-height:92vh;
    padding:
        18px
        16px
        calc(22px + env(safe-area-inset-bottom));
    overflow-y:auto;
    border-radius:30px 30px 0 0;
    background:
        linear-gradient(
            180deg,
            #172033,
            #090f1d
        );
    border:
        1px solid
        rgba(255,255,255,.09);
    box-shadow:
        0 -24px 70px
        rgba(0,0,0,.5);
    animation:
        upgradeModalOpen
        .25s ease;
}


@keyframes upgradeModalOpen {

    from {
        opacity:0;
        transform:translateY(45px);
    }

    to {
        opacity:1;
        transform:translateY(0);
    }

}


.upgrade-modal-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}


.upgrade-modal-header span {
    color:#fbbf24;
    font-size:9px;
    font-weight:900;
    letter-spacing:.15em;
}


.upgrade-modal-header h2 {
    margin:4px 0 0;
    color:#fff;
    font-size:25px;
}


.upgrade-modal-header button {
    width:43px;
    height:43px;
    flex-shrink:0;
    border:none;
    border-radius:15px;
    color:#cbd5e1;
    background:rgba(255,255,255,.07);
    font-size:27px;
    line-height:1;
    cursor:pointer;
}


.upgrade-wallet {
    display:grid;
    grid-template-columns:
        repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:17px;
}


.upgrade-wallet > div {
    padding:13px;
    border-radius:17px;
    background:rgba(99,102,241,.09);
    border:
        1px solid
        rgba(129,140,248,.12);
}


.upgrade-wallet span {
    display:block;
    color:#64748b;
    font-size:9px;
}


.upgrade-wallet strong {
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:12px;
}


.upgrade-message {
    margin-top:12px;
    padding:11px 13px;
    border-radius:15px;
    font-size:11px;
    font-weight:700;
}


.upgrade-message.success {
    color:#86efac;
    background:rgba(34,197,94,.11);
    border:1px solid rgba(34,197,94,.18);
}


.upgrade-message.error {
    color:#fca5a5;
    background:rgba(239,68,68,.1);
    border:1px solid rgba(239,68,68,.17);
}


.upgrade-list {
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:14px;
}


.upgrade-card {
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px;
    border-radius:21px;
    background:rgba(30,41,59,.63);
    border:
        1px solid
        rgba(255,255,255,.07);
}


.upgrade-card.completed {
    opacity:.68;
}


.upgrade-card-icon {
    width:47px;
    height:47px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:15px;
    background:rgba(255,255,255,.07);
    font-size:24px;
}


.upgrade-card-info {
    min-width:0;
    flex:1;
}


.upgrade-card-title {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}


.upgrade-card-title h3 {
    margin:0;
    color:#f8fafc;
    font-size:13px;
}


.upgrade-card-title span {
    flex-shrink:0;
    color:#a5b4fc;
    font-size:9px;
    font-weight:800;
}


.upgrade-card-info p {
    margin:6px 0 10px;
    color:#64748b;
    font-size:10px;
    line-height:1.45;
}


.upgrade-card-info button {
    width:100%;
    min-height:39px;
    padding:8px 12px;
    border:none;
    border-radius:13px;
    color:#94a3b8;
    background:rgba(255,255,255,.06);
    font-size:10px;
    font-weight:900;
    cursor:pointer;
}


.upgrade-card-info button.can-afford {
    color:#111827;
    background:
        linear-gradient(
            135deg,
            #fde047,
            #f59e0b
        );
    box-shadow:
        0 9px 22px
        rgba(245,158,11,.18);
}


.upgrade-card-info button:disabled {
    cursor:not-allowed;
}


.upgrade-modal-footer {
    margin-top:15px;
    padding:12px;
    text-align:center;
    border-radius:16px;
    color:#64748b;
    background:rgba(255,255,255,.035);
    font-size:9px;
}


@media (min-width:621px) {

    .upgrade-modal-overlay {
        align-items:center;
        padding:20px;
    }


    .upgrade-modal {
        border-radius:30px;
    }

}
.leaderboard-overlay {
    position:fixed;
    z-index:1000;
    inset:0;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    padding-top:
        calc(20px + env(safe-area-inset-top));
    background:rgba(2,6,23,.78);
    backdrop-filter:blur(12px);
}


.leaderboard-modal {
    width:100%;
    max-width:620px;
    max-height:92vh;
    padding:
        18px
        16px
        calc(22px + env(safe-area-inset-bottom));
    overflow-y:auto;
    border-radius:30px 30px 0 0;
    background:
        linear-gradient(
            180deg,
            #172033,
            #090f1d
        );
    border:1px solid rgba(255,255,255,.09);
    box-shadow:
        0 -24px 70px rgba(0,0,0,.5);
}


.leaderboard-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}


.leaderboard-header span {
    color:#fbbf24;
    font-size:9px;
    font-weight:900;
    letter-spacing:.15em;
}


.leaderboard-header h2 {
    margin:4px 0 0;
    color:#fff;
    font-size:24px;
}


.leaderboard-header button {
    width:43px;
    height:43px;
    border:none;
    border-radius:15px;
    color:#cbd5e1;
    background:rgba(255,255,255,.07);
    font-size:27px;
}


.leaderboard-summary {
    display:flex;
    justify-content:space-between;
    margin-top:16px;
    padding:12px 14px;
    border-radius:16px;
    background:rgba(99,102,241,.09);
    color:#94a3b8;
    font-size:11px;
}


.leaderboard-summary strong {
    color:#fff;
}


.leaderboard-list {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:12px;
}


.leaderboard-player {
    display:flex;
    align-items:center;
    gap:10px;
    padding:11px;
    border-radius:17px;
    background:rgba(30,41,59,.62);
    border:1px solid rgba(255,255,255,.06);
}


.leaderboard-player.current {
    background:rgba(99,102,241,.15);
    border-color:rgba(129,140,248,.25);
}


.leaderboard-rank {
    width:33px;
    flex-shrink:0;
    text-align:center;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
}


.leaderboard-avatar {
    width:41px;
    height:41px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    overflow:hidden;
    border-radius:14px;
    background:rgba(255,255,255,.07);
}


.leaderboard-avatar img {
    width:100%;
    height:100%;
    object-fit:cover;
}


.leaderboard-player-info {
    min-width:0;
    flex:1;
}


.leaderboard-player-info strong {
    display:block;
    overflow:hidden;
    color:#fff;
    font-size:11px;
    text-overflow:ellipsis;
    white-space:nowrap;
}


.leaderboard-player-info span {
    display:block;
    margin-top:3px;
    color:#818cf8;
    font-size:9px;
}


.leaderboard-balance {
    text-align:right;
}


.leaderboard-balance strong {
    display:block;
    color:#f8fafc;
    font-size:11px;
}


.leaderboard-balance span {
    display:block;
    margin-top:3px;
    color:#fbbf24;
    font-size:8px;
}


.current-rank-card {
    margin-top:15px;
    padding:15px;
    border-radius:21px;
    background:
        linear-gradient(
            135deg,
            rgba(99,102,241,.18),
            rgba(168,85,247,.1)
        );
    border:1px solid rgba(129,140,248,.2);
}


.current-rank-title,
.current-rank-main {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}


.current-rank-title span {
    color:#a5b4fc;
    font-size:10px;
}


.current-rank-title strong {
    color:#fff;
    font-size:18px;
}


.current-rank-main {
    margin-top:12px;
}


.current-rank-main > div:last-child {
    text-align:right;
}


.current-rank-main strong {
    display:block;
    color:#fff;
    font-size:12px;
}


.current-rank-main span {
    display:block;
    margin-top:3px;
    color:#94a3b8;
    font-size:9px;
}


.next-rank-hint {
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:13px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.08);
    color:#94a3b8;
    font-size:9px;
}


.next-rank-hint strong {
    color:#fbbf24;
}


.next-rank-hint.first {
    display:block;
    text-align:center;
    color:#fde047;
}


.leaderboard-refresh {
    width:100%;
    height:44px;
    margin-top:13px;
    border:none;
    border-radius:15px;
    color:#111827;
    background:
        linear-gradient(
            135deg,
            #fde047,
            #f59e0b
        );
    font-size:11px;
    font-weight:900;
}


.leaderboard-state {
    min-height:220px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    text-align:center;
}


.leaderboard-state > div {
    font-size:38px;
}


.leaderboard-state strong {
    color:#fff;
    font-size:13px;
}


.leaderboard-state button {
    min-width:125px;
    height:41px;
    border:none;
    border-radius:14px;
    color:#111827;
    background:#fbbf24;
    font-weight:900;
}


@media (min-width:621px) {

    .leaderboard-overlay {
        align-items:center;
        padding:20px;
    }


    .leaderboard-modal {
        border-radius:30px;
    }

}

.leaderboard-live-dot {
    color:#22c55e;
    font-size:10px;
    vertical-align:middle;
    animation:leaderboardLivePulse 1s ease-in-out infinite;
}

@keyframes leaderboardLivePulse {
    50% { opacity:.3; }
}
.rewards-overlay {
    position:fixed;
    z-index:1000;
    inset:0;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    padding-top:calc(20px + env(safe-area-inset-top));
    background:rgba(2,6,23,.78);
    backdrop-filter:blur(12px);
}

.rewards-modal {
    width:100%;
    max-width:620px;
    max-height:92vh;
    padding:18px 16px calc(22px + env(safe-area-inset-bottom));
    overflow-y:auto;
    border-radius:30px 30px 0 0;
    background:linear-gradient(180deg,#172033,#090f1d);
    border:1px solid rgba(255,255,255,.09);
    box-shadow:0 -24px 70px rgba(0,0,0,.5);
    animation:rewardsOpen .25s ease;
}

@keyframes rewardsOpen {
    from { opacity:0; transform:translateY(45px); }
    to { opacity:1; transform:translateY(0); }
}

.rewards-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.rewards-header span {
    color:#fbbf24;
    font-size:9px;
    font-weight:900;
    letter-spacing:.15em;
}

.rewards-header h2 {
    margin:4px 0 0;
    color:#fff;
    font-size:24px;
}

.rewards-header button {
    width:43px;
    height:43px;
    border:none;
    border-radius:15px;
    color:#cbd5e1;
    background:rgba(255,255,255,.07);
    font-size:27px;
}

.rewards-progress-card {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:16px;
}

.rewards-progress-card > div {
    padding:13px;
    border-radius:17px;
    background:rgba(99,102,241,.09);
    border:1px solid rgba(129,140,248,.12);
}

.rewards-progress-card span,
.next-reward-card span {
    display:block;
    color:#64748b;
    font-size:9px;
}

.rewards-progress-card strong {
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:13px;
}

.next-reward-card {
    margin-top:12px;
    padding:14px;
    border-radius:18px;
    background:linear-gradient(135deg,rgba(245,158,11,.15),rgba(250,204,21,.07));
    border:1px solid rgba(251,191,36,.17);
}

.next-reward-card.completed {
    background:linear-gradient(135deg,rgba(34,197,94,.14),rgba(16,185,129,.07));
    border-color:rgba(34,197,94,.18);
}

.next-reward-card strong {
    display:block;
    margin-top:6px;
    color:#fff;
    font-size:12px;
}

.next-reward-card p {
    margin:5px 0 0;
    color:#94a3b8;
    font-size:9px;
}

.rewards-list {
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:14px;
}

.reward-card {
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px;
    border-radius:20px;
    background:rgba(30,41,59,.63);
    border:1px solid rgba(255,255,255,.07);
}

.reward-card.unlocked {
    background:linear-gradient(135deg,rgba(34,197,94,.11),rgba(30,41,59,.66));
    border-color:rgba(34,197,94,.18);
}

.reward-card.locked {
    opacity:.68;
}

.reward-icon {
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:16px;
    background:rgba(255,255,255,.07);
    font-size:24px;
}

.reward-info {
    min-width:0;
    flex:1;
}

.reward-title-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}

.reward-title-row h3 {
    margin:0;
    color:#f8fafc;
    font-size:13px;
}

.reward-title-row span {
    flex-shrink:0;
    color:#a5b4fc;
    font-size:9px;
    font-weight:800;
}

.reward-info p {
    margin:6px 0 9px;
    color:#64748b;
    font-size:10px;
    line-height:1.45;
}

.reward-info > strong {
    color:#94a3b8;
    font-size:9px;
}

.reward-card.unlocked .reward-info > strong {
    color:#86efac;
}

@media (min-width:621px) {
    .rewards-overlay {
        align-items:center;
        padding:20px;
    }

    .rewards-modal {
        border-radius:30px;
    }
}
.igtap-page {
    width:100%;
    max-width:620px;
    min-height:100vh;
    margin:0 auto;
    padding:
        calc(18px + env(safe-area-inset-top))
        16px
        calc(110px + env(safe-area-inset-bottom));
    overflow:hidden;
}


.igtap-header {
    display:flex;
    align-items:center;
    gap:13px;
}


.igtap-back {
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border:none;
    border-radius:15px;
    color:#fff;
    background:rgba(255,255,255,.07);
    font-size:22px;
    cursor:pointer;
}


.igtap-header > div:nth-child(2) {
    flex:1;
}


.igtap-header span {
    color:#fbbf24;
    font-size:9px;
    font-weight:900;
    letter-spacing:.16em;
}


.igtap-header h1 {
    margin:3px 0 0;
    color:#fff;
    font-size:25px;
}


.igtap-level {
    padding:9px 11px;
    border-radius:13px;
    background:rgba(99,102,241,.13);
    color:#a5b4fc;
    font-size:11px;
    font-weight:900;
}


.igtap-balance-card {
    margin-top:24px;
    text-align:center;
}


.igtap-balance-card > span {
    display:block;
    color:#64748b;
    font-size:11px;
    font-weight:700;
}


.igtap-balance-card strong {
    display:block;
    margin-top:5px;
    color:#fff;
    font-size:43px;
    line-height:1;
}


.igtap-balance-card small {
    display:block;
    margin-top:5px;
    color:#fbbf24;
    font-size:11px;
    font-weight:900;
}


.tap-zone {
    position:relative;
    min-height:292px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}


.tap-light {
    position:absolute;
    width:205px;
    height:205px;
    border-radius:50%;
    background:
        radial-gradient(
            circle,
            rgba(250,204,21,.3),
            rgba(245,158,11,.08) 48%,
            transparent 72%
        );
    filter:blur(6px);
    animation:
        tapGlow 2.4s ease-in-out infinite;
}


@keyframes tapGlow {

    0%,
    100% {
        transform:scale(.92);
        opacity:.68;
    }

    50% {
        transform:scale(1.08);
        opacity:1;
    }

}


.tap-coin-button {
    position:relative;
    z-index:2;
    width:clamp(205px,58vw,245px);
    height:clamp(205px,58vw,245px);
    padding:0;
    border:none;
    border-radius:50%;
    background:transparent;
    cursor:pointer;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
    user-select:none;
}


.tap-coin-button img {
    width:100%;
    height:100%;
    object-fit:contain;
    pointer-events:none;
    user-select:none;
    filter:
        drop-shadow(
            0 24px 30px
            rgba(0,0,0,.4)
        );
    transition:transform .08s ease;
}


.tap-coin-button:active img {
    transform:scale(.92);
}


.tap-number {
    position:absolute;
    z-index:4;
    pointer-events:none;
    color:#fff7ae;
    font-size:25px;
    font-weight:1000;
    text-shadow:
        0 2px 10px
        rgba(245,158,11,.7);
    transform:translate(-50%,-50%);
    animation:
        tapNumberFly .7s ease forwards;
}


@keyframes tapNumberFly {

    from {
        opacity:1;
        transform:
            translate(-50%,-50%)
            scale(.82);
    }

    to {
        opacity:0;
        transform:
            translate(-50%,-130px)
            scale(1.2);
    }

}


.tap-zone > p {
    position:relative;
    z-index:2;
    margin:0;
    color:#94a3b8;
    font-size:12px;
    font-weight:700;
}


.energy-card {
    padding:15px;
    border-radius:20px;
    background:rgba(30,41,59,.68);
    border:1px solid rgba(255,255,255,.07);
}


.energy-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#cbd5e1;
    font-size:11px;
}


.energy-header strong {
    color:#fbbf24;
}


.energy-progress {
    height:8px;
    margin-top:11px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.07);
}


.energy-progress div {
    width:100%;
    height:100%;
    border-radius:inherit;
    background:
        linear-gradient(
            90deg,
            #fbbf24,
            #f97316
        );
}


.igtap-preview-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
    margin-top:12px;
}


.igtap-preview-grid article {
    display:flex;
    align-items:center;
    gap:11px;
    padding:14px;
    border-radius:19px;
    background:rgba(30,41,59,.59);
    border:1px solid rgba(255,255,255,.06);
}


.igtap-preview-grid article > span {
    font-size:25px;
}


.igtap-preview-grid small {
    display:block;
    color:#64748b;
    font-size:9px;
}


.igtap-preview-grid strong {
    display:block;
    margin-top:3px;
    color:#e2e8f0;
    font-size:11px;
}


.igtap-coming {
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:12px;
    padding:15px;
    border-radius:19px;
    background:rgba(99,102,241,.08);
    border:1px solid rgba(129,140,248,.11);
}


.igtap-coming > div:first-child {
    width:41px;
    height:41px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:13px;
    background:rgba(99,102,241,.13);
}


.igtap-coming strong {
    color:#e2e8f0;
    font-size:11px;
}


.igtap-coming p {
    margin:4px 0 0;
    color:#64748b;
    font-size:9px;
    line-height:1.4;
}


@media (max-width:390px) {

    .tap-zone {
        min-height:320px;
    }


    .tap-coin-button {
        width:245px;
        height:245px;
    }


    .igtap-balance-card strong {
        font-size:38px;
    }

}


.igtap-state-card {
    min-height:260px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    margin-top:28px;
    padding:25px;
    text-align:center;
    border-radius:26px;
    background:rgba(30,41,59,.7);
    border:1px solid rgba(255,255,255,.07);
}


.igtap-state-icon {
    margin-bottom:14px;
    font-size:40px;
}


.igtap-state-card strong {
    color:#fff;
    font-size:16px;
}


.igtap-state-card p {
    margin:8px 0 0;
    color:#94a3b8;
    font-size:12px;
}


.igtap-state-card button {
    min-width:130px;
    height:43px;
    margin-top:18px;
    border:none;
    border-radius:14px;
    color:#111827;
    background:linear-gradient(
        135deg,
        #fde047,
        #f59e0b
    );
    font-weight:900;
}


.igtap-state-card.error {
    border-color:rgba(239,68,68,.2);
}


.igtap-income-notice {
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:18px;
    padding:13px 15px;
    border-radius:18px;
    background:rgba(34,197,94,.09);
    border:1px solid rgba(34,197,94,.16);
}


.igtap-income-notice > span {
    font-size:25px;
}


.igtap-income-notice strong {
    display:block;
    color:#dcfce7;
    font-size:11px;
}


.igtap-income-notice p {
    margin:4px 0 0;
    color:#86efac;
    font-size:10px;
}


.igtap-game-progress {
    margin-top:18px;
    padding:14px 15px;
    border-radius:19px;
    background:rgba(99,102,241,.08);
    border:1px solid rgba(129,140,248,.12);
}


.igtap-progress-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#cbd5e1;
    font-size:11px;
}


.igtap-progress-header strong {
    color:#a5b4fc;
}


.igtap-progress-line {
    height:7px;
    margin-top:10px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.07);
}


.igtap-progress-line div {
    height:100%;
    border-radius:inherit;
    background:linear-gradient(
        90deg,
        #6366f1,
        #a855f7
    );
    transition:width .3s ease;
}


.igtap-game-progress small {
    display:block;
    margin-top:8px;
    color:#64748b;
    font-size:9px;
}


.energy-footer {
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:8px;
    color:#64748b;
    font-size:9px;
}


.igtap-upgrades-button {
    width:100%;
    display:flex;
    align-items:center;
    gap:13px;
    margin-top:12px;
    padding:15px;
    border:none;
    border-radius:20px;
    color:inherit;
    text-align:left;
    background:
        linear-gradient(
            135deg,
            rgba(99,102,241,.16),
            rgba(168,85,247,.09)
        );
    border:
        1px solid
        rgba(129,140,248,.18);
    cursor:pointer;
    box-shadow:
        0 12px 32px
        rgba(0,0,0,.13);
    -webkit-tap-highlight-color:transparent;
}


.igtap-upgrades-button:active {
    transform:scale(.98);
}


.igtap-upgrades-icon {
    width:45px;
    height:45px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:15px;
    background:rgba(99,102,241,.18);
    font-size:23px;
}


.igtap-upgrades-info {
    min-width:0;
    flex:1;
}


.igtap-upgrades-info strong {
    display:block;
    color:#f8fafc;
    font-size:13px;
}


.igtap-upgrades-info p {
    margin:5px 0 0;
    color:#94a3b8;
    font-size:10px;
    line-height:1.4;
}


.igtap-upgrades-arrow {
    flex-shrink:0;
    color:#a5b4fc;
    font-size:21px;
    font-weight:800;
}


.igtap-actions-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px;
    margin-top:12px;
}


.igtap-action-button {
    min-height:76px;
    display:flex;
    align-items:center;
    gap:11px;
    padding:13px;
    border:none;
    border-radius:19px;
    color:inherit;
    text-align:left;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
}


.igtap-action-button:active {
    transform:scale(.97);
}


.igtap-action-button.leaderboard {
    background:linear-gradient(
        135deg,
        rgba(245,158,11,.16),
        rgba(234,179,8,.07)
    );
    border:1px solid rgba(250,204,21,.17);
}


.igtap-action-button.upgrades {
    background:linear-gradient(
        135deg,
        rgba(99,102,241,.16),
        rgba(168,85,247,.09)
    );
    border:1px solid rgba(129,140,248,.18);
}


.igtap-action-button > span {
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:13px;
    background:rgba(255,255,255,.07);
    font-size:21px;
}


.igtap-action-button div {
    min-width:0;
}


.igtap-action-button strong {
    display:block;
    color:#f8fafc;
    font-size:12px;
}


.igtap-action-button small {
    display:block;
    margin-top:4px;
    color:#94a3b8;
    font-size:9px;
}


@media (max-width:360px) {
    .igtap-actions-grid {
        grid-template-columns:1fr;
    }
}

.igtap-rewards-button {
    width:100%;
    display:flex;
    align-items:center;
    gap:13px;
    margin-top:12px;
    padding:15px;
    border:none;
    border-radius:20px;
    color:inherit;
    text-align:left;
    background:linear-gradient(135deg,rgba(245,158,11,.15),rgba(250,204,21,.07));
    border:1px solid rgba(251,191,36,.16);
    cursor:pointer;
    box-shadow:0 12px 32px rgba(0,0,0,.13);
    -webkit-tap-highlight-color:transparent;
}

.igtap-rewards-button:active {
    transform:scale(.98);
}

.igtap-rewards-icon {
    width:45px;
    height:45px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    border-radius:15px;
    background:rgba(245,158,11,.15);
    font-size:23px;
}

.igtap-rewards-info {
    min-width:0;
    flex:1;
}

.igtap-rewards-info strong {
    display:block;
    color:#f8fafc;
    font-size:13px;
}

.igtap-rewards-info p {
    margin:5px 0 0;
    color:#94a3b8;
    font-size:10px;
    line-height:1.4;
}

.igtap-rewards-arrow {
    flex-shrink:0;
    color:#fbbf24;
    font-size:21px;
    font-weight:800;
}

/* InviteGame v2: live UI */
.igtap-header-status {
    display:flex;
    align-items:center;
    gap:8px;
}

.igtap-header-status > i {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#22c55e;
    box-shadow:0 0 12px rgba(34,197,94,.8);
    animation:igtapSyncPulse .9s ease-in-out infinite;
}

@keyframes igtapSyncPulse {
    50% { opacity:.35; transform:scale(.72); }
}

.igtap-balance-card strong,
.energy-header strong,
.igtap-progress-header strong {
    font-variant-numeric:tabular-nums;
    transition:color .2s ease, transform .2s ease;
}

.energy-progress div {
    transition:width .45s cubic-bezier(.22,1,.36,1);
}

.igtap-effects-layer {
    position:absolute;
    z-index:6;
    inset:0;
    pointer-events:none;
    overflow:visible;
}

.autoclick-effect {
    position:absolute;
    left:50%;
    top:54px;
    color:#fde68a;
    font-size:18px;
    font-weight:1000;
    white-space:nowrap;
    text-shadow:0 3px 16px rgba(245,158,11,.85);
    transform:translateX(-50%);
    animation:autoclickFloat 1.1s cubic-bezier(.22,1,.36,1) forwards;
}

@keyframes autoclickFloat {
    0% { opacity:0; transform:translate(-50%,18px) scale(.75); }
    18% { opacity:1; }
    100% { opacity:0; transform:translate(-50%,-42px) scale(1.12); }
}

.igtap-floating-error {
    position:fixed;
    z-index:950;
    top:calc(12px + env(safe-area-inset-top));
    left:50%;
    max-width:calc(100vw - 32px);
    padding:10px 14px;
    border:1px solid rgba(239,68,68,.22);
    border-radius:14px;
    color:#fecaca;
    background:rgba(127,29,29,.92);
    box-shadow:0 12px 34px rgba(0,0,0,.3);
    font-size:10px;
    font-weight:800;
    transform:translateX(-50%);
    pointer-events:none;
}

.igtap-rare-toast {
    position:fixed;
    z-index:1200;
    left:50%;
    bottom:calc(92px + env(safe-area-inset-bottom));
    min-width:210px;
    display:grid;
    grid-template-columns:38px 1fr;
    grid-template-rows:auto auto;
    column-gap:10px;
    padding:12px 16px;
    border:1px solid rgba(250,204,21,.28);
    border-radius:18px;
    color:#fff;
    background:rgba(15,23,42,.95);
    box-shadow:0 20px 55px rgba(0,0,0,.45);
    transform:translateX(-50%);
    animation:rareToastIn .25s ease;
}

.igtap-rare-toast > span {
    grid-row:1 / 3;
    align-self:center;
    font-size:28px;
}

.igtap-rare-toast strong { font-size:11px; text-align:left; }
.igtap-rare-toast small { color:#fbbf24; font-size:10px; text-align:left; }

@keyframes rareToastIn {
    from { opacity:0; transform:translate(-50%,18px) scale(.94); }
    to { opacity:1; transform:translate(-50%,0) scale(1); }
}

.tap-coin-button,
.igtap-action-button,
.igtap-rewards-button,
.igtap-back {
    transition:transform .14s ease, filter .14s ease, background .2s ease;
}

.tap-coin-button:active,
.igtap-action-button:active,
.igtap-rewards-button:active,
.igtap-back:active {
    transform:scale(.97);
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration:.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.01ms !important;
    }
}
.friends-page{width:min(100%,430px);padding:22px 18px 34px;animation:igPageIn .45s ease}.friends-header{display:flex;align-items:center;gap:14px;margin:4px 2px 22px}.friends-logo{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:20px;background:linear-gradient(145deg,#0ea5e9,#7c3aed);font-size:29px;box-shadow:0 16px 40px rgba(14,165,233,.3)}.friends-header h1{margin:0;font-size:29px;letter-spacing:-.04em}.friends-header p{margin:6px 0 0;color:var(--ig-muted);font-size:12px}.invite-card{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid var(--ig-border);border-radius:27px;background:linear-gradient(135deg,rgba(14,165,233,.15),rgba(124,58,237,.16)),rgba(15,23,42,.72);box-shadow:var(--ig-shadow);backdrop-filter:blur(18px)}.invite-icon{width:56px;height:56px;display:grid;place-items:center;flex:0 0 auto;border-radius:19px;background:rgba(255,255,255,.08);font-size:27px}.invite-card h2{margin:0;font-size:17px}.invite-card p{margin:7px 0 0;color:#cbd5e1;font-size:12px;line-height:1.55}.create-link{width:100%;height:54px;margin-top:13px;border:0;border-radius:18px;background:linear-gradient(135deg,#0284c7,#4f46e5);color:#fff;font-size:13px;font-weight:900;cursor:pointer;box-shadow:0 16px 34px rgba(37,99,235,.27);transition:transform .18s ease}.create-link:active{transform:scale(.98)}.link-result{margin-top:13px;padding:18px;border:1px solid rgba(52,211,153,.18);border-radius:25px;background:linear-gradient(145deg,rgba(6,78,59,.24),rgba(30,64,175,.18)),rgba(15,23,42,.75);box-shadow:var(--ig-shadow)}.link-result h3{margin:0;font-size:17px}.link-result p{margin:6px 0;color:var(--ig-muted);font-size:11px}.link-box{margin:13px 0;padding:13px;border-radius:15px;background:rgba(2,6,23,.42);color:#67e8f9;font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}.link-result button{width:100%;height:43px;margin-top:8px;border:0;border-radius:14px;background:rgba(255,255,255,.09);color:white;font-size:12px;font-weight:800}.link-result button:last-child{background:linear-gradient(135deg,#2563eb,#7c3aed)}.friends-stats{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}.friends-stats>div{padding:19px 14px;border:1px solid var(--ig-border);border-radius:22px;background:rgba(15,23,42,.72);box-shadow:var(--ig-shadow);text-align:center}.friends-stats span{display:block;font-size:25px}.friends-stats b{display:block;margin-top:7px;font-size:25px;color:#67e8f9}.friends-stats small{display:block;margin-top:3px;color:var(--ig-muted);font-size:10px}
.profile-page{width:min(100%,430px);padding:22px 18px 34px;animation:igPageIn .45s ease}.profile-header{display:flex;align-items:center;gap:14px;margin:4px 2px 22px}.profile-header-icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border-radius:20px;background:linear-gradient(145deg,#2563eb,#8b5cf6);font-size:29px;box-shadow:0 16px 40px rgba(99,102,241,.3)}.profile-header h1{margin:0;font-size:29px;letter-spacing:-.04em}.profile-header p{margin:6px 0 0;color:var(--ig-muted);font-size:12px}.player-profile-card,.profile-progress-card,.profile-wallet-card,.profile-details,.profile-coming-soon{border:1px solid var(--ig-border);box-shadow:var(--ig-shadow);backdrop-filter:blur(18px)}.player-profile-card{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;padding:18px;border-radius:28px;background:linear-gradient(135deg,rgba(37,99,235,.25),rgba(124,58,237,.2)),rgba(15,23,42,.76)}.player-profile-glow{position:absolute;width:180px;height:180px;right:-75px;top:-100px;border-radius:50%;background:radial-gradient(circle,rgba(34,211,238,.28),transparent 68%)}.profile-avatar{position:relative;z-index:1;width:72px;height:72px;display:grid;place-items:center;flex:0 0 auto;border-radius:23px;background:rgba(255,255,255,.08);font-size:38px;border:1px solid rgba(255,255,255,.13)}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:22px}.online-indicator{position:absolute;right:-2px;bottom:-2px;width:17px;height:17px;border:4px solid #111827;border-radius:50%;background:#34d399}.profile-main-info{position:relative;z-index:1;min-width:0;flex:1}.profile-label{color:#a5b4fc;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.profile-main-info h2{margin:6px 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:21px}.profile-main-info p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ig-muted);font-size:11px}.profile-level-badge{position:relative;z-index:1;padding:7px 9px;flex:0 0 auto;border-radius:999px;background:rgba(34,211,238,.11);color:#67e8f9;font-size:10px;font-weight:900}.profile-progress-card{margin-top:13px;padding:17px;border-radius:23px;background:rgba(15,23,42,.72)}.profile-progress-top{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.profile-progress-top span{display:block;color:var(--ig-muted);font-size:10px}.profile-progress-top strong{display:block;margin-top:4px;font-size:16px}.profile-progress-top b{font-size:11px;color:#bfdbfe}.profile-xp-line{height:9px;margin-top:13px;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.12)}.profile-xp-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ig-cyan),var(--ig-blue),var(--ig-violet));box-shadow:0 0 18px rgba(34,211,238,.36);transition:width .65s cubic-bezier(.22,1,.36,1)}.profile-progress-card small{display:block;margin-top:9px;color:#64748b;font-size:10px}.profile-wallet-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:13px}.profile-wallet-card{padding:16px;border-radius:22px;background:rgba(15,23,42,.72)}.profile-wallet-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:10px;border-radius:14px;background:rgba(255,255,255,.07);font-size:22px}.profile-wallet-card span{display:block;color:var(--ig-muted);font-size:10px}.profile-wallet-card strong{display:block;margin:4px 0 2px;font-size:25px;letter-spacing:-.04em}.profile-wallet-card.coins strong{color:#fde68a}.profile-wallet-card.tickets strong{color:#c4b5fd}.profile-wallet-card small{color:#64748b;font-size:9px}.profile-details{margin-top:13px;padding:18px;border-radius:24px;background:rgba(15,23,42,.72)}.profile-details h3{margin:0 0 11px;font-size:15px}.profile-detail-row{display:flex;align-items:center;gap:12px;padding:12px 0}.profile-detail-row+.profile-detail-row{border-top:1px solid rgba(148,163,184,.09)}.profile-detail-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;background:rgba(255,255,255,.06);font-size:18px}.profile-detail-row>div:last-child{min-width:0}.profile-detail-row span{display:block;color:#64748b;font-size:9px}.profile-detail-row strong{display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;color:#e2e8f0;font-size:12px}.profile-status{color:#6ee7b7!important}.profile-coming-soon{display:flex;align-items:center;gap:12px;margin-top:13px;padding:16px;border-radius:22px;background:linear-gradient(135deg,rgba(245,158,11,.1),rgba(124,58,237,.12)),rgba(15,23,42,.7)}.profile-coming-icon{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:15px;background:rgba(255,255,255,.07);font-size:22px}.profile-coming-soon>div:nth-child(2){min-width:0;flex:1}.profile-coming-soon h3{margin:0;font-size:14px}.profile-coming-soon p{margin:5px 0 0;color:var(--ig-muted);font-size:10px;line-height:1.4}.profile-coming-soon>span{padding:6px 8px;border-radius:999px;background:rgba(251,191,36,.1);color:#fbbf24;font-size:9px;font-weight:900;text-transform:uppercase}

.profile-statistics-button{width:100%;margin-top:18px;padding:18px 20px;border:1px solid rgba(99,102,241,.26);border-radius:20px;background:linear-gradient(135deg,rgba(99,102,241,.18),rgba(14,165,233,.1));color:#fff;font-size:15px;font-weight:900;display:flex;justify-content:space-between}.profile-back{width:44px;height:44px;border:0;border-radius:14px;background:rgba(255,255,255,.08);color:#fff;font-size:20px}.leader-tabs{display:flex;gap:7px;overflow:auto;margin:12px 0}.leader-tabs button{border:0;border-radius:12px;padding:9px 11px;background:rgba(255,255,255,.06);color:#94a3b8;font-weight:800}.leader-tabs button.active{background:#6366f1;color:#fff}
.bottom-nav{position:fixed;z-index:100;left:50%;bottom:12px;transform:translateX(-50%);width:min(520px,calc(100% - 24px));padding:8px;display:grid;grid-template-columns:repeat(5,1fr);gap:5px;border:1px solid #2a3858;border-radius:23px;background:#0a1020e8;backdrop-filter:blur(18px);box-shadow:0 16px 50px #000a}.nav-item{border:0;border-radius:16px;padding:8px 4px;background:transparent;color:#77839b;display:grid;gap:3px;place-items:center}.nav-item span{font-size:20px}.nav-item small{font-size:9px}.nav-item.active{color:#fff;background:linear-gradient(145deg,#23335a,#17213d);box-shadow:inset 0 0 20px #4ea1ff1c}.nav-item.active span{transform:translateY(-2px)}:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #f8fafc;
  background: #050816;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  --ig-bg: #050816;
  --ig-surface: rgba(15, 23, 42, .72);
  --ig-surface-strong: rgba(17, 24, 39, .92);
  --ig-border: rgba(148, 163, 184, .14);
  --ig-text: #f8fafc;
  --ig-muted: #94a3b8;
  --ig-cyan: #22d3ee;
  --ig-blue: #3b82f6;
  --ig-violet: #8b5cf6;
  --ig-gold: #fbbf24;
  --ig-green: #34d399;
  --ig-danger: #fb7185;
  --ig-shadow: 0 24px 70px rgba(2, 6, 23, .46);
}

* { box-sizing: border-box; }
html, body, #root { width: 100%; min-height: 100%; margin: 0; }
html { background: var(--ig-bg); }
body {
  min-width: 320px;
  overflow-x: hidden;
  color: var(--ig-text);
  background:
    radial-gradient(circle at 15% -10%, rgba(59, 130, 246, .32), transparent 36%),
    radial-gradient(circle at 95% 12%, rgba(139, 92, 246, .22), transparent 32%),
    linear-gradient(180deg, #080d20 0%, #050816 52%, #03050d 100%);
  -webkit-font-smoothing: antialiased;
}
button, input, textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }
img { max-width: 100%; }
::selection { background: rgba(34, 211, 238, .28); color: white; }
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f8fafc;background:#070b14;font-synthesis:none;--bg:#070b14;--panel:#101827;--line:#263552;--blue:#4ea1ff;--violet:#8b5cf6;--gold:#f6c453}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#070b14}button,input,textarea,select{font:inherit}button{cursor:pointer}/* InviteGame v4 uses component-scoped Neo Gaming styles. Legacy light overrides removed. */