:root {
  color-scheme: dark;
  --bg: #070914;
  --panel: rgba(9, 13, 31, .88);
  --text: #f5f7ff;
  --muted: #9aa6c4;
  --cyan: #6cf6ff;
  --violet: #aa78ff;
  --red: #ff5577;
}
* { box-sizing: border-box; }
html, body { margin: 0; width: 100%; height: 100%; min-width: 0; overflow: hidden; background: var(--bg); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; user-select: none; }
body { position: fixed; inset: 0; display: block; }
#gameShell { position: fixed; top: 0; left: 50%; transform: translateX(-50%); width: var(--app-w, 100%); max-width: 720px; height: var(--app-h, 100dvh); max-height: none; overflow: hidden; background: #070914; touch-action: none; }
canvas { width: 100%; height: 100%; display: block; touch-action: none; }
.hidden { display: none !important; }
.hud { position: absolute; inset: max(14px, env(safe-area-inset-top)) 16px auto 16px; pointer-events: none; text-shadow: 0 2px 12px #000; }
.hudTop { display: flex; justify-content: space-between; align-items: flex-start; }
.scoreBlock { display: flex; flex-direction: column; gap: 1px; }
.scoreBlock.right { text-align: right; }
.label { font-size: 10px; letter-spacing: .18em; color: var(--muted); }
.scoreBlock strong { font-size: clamp(22px, 5vw, 34px); line-height: 1; }
.energyLabel { margin-top: 9px; font-size: 8px; letter-spacing: .16em; color: var(--muted); text-align: center; opacity: .75; }
.energyWrap { margin-top: 4px; height: 6px; width: 100%; background: rgba(255,255,255,.08); border-radius: 999px; overflow: hidden; box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); }
.energyBar { height: 100%; width: 100%; transform-origin: left center; background: linear-gradient(90deg, var(--violet), var(--cyan)); box-shadow: 0 0 16px rgba(108,246,255,.7); }
.combo { margin-top: 7px; text-align: center; min-height: 20px; font-weight: 800; letter-spacing: .08em; color: #fff; opacity: .95; }
.overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 24px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; background: radial-gradient(circle at 50% 35%, rgba(54,44,125,.22), rgba(4,6,16,.72) 45%, rgba(4,6,16,.93)); backdrop-filter: blur(7px); }
.panel { width: 100%; max-width: 500px; min-width: 0; margin: auto; padding: 28px 24px 24px; border-radius: 28px; overflow: hidden; background: var(--panel); border: 1px solid rgba(255,255,255,.1); box-shadow: 0 22px 80px rgba(0,0,0,.45), inset 0 1px rgba(255,255,255,.04); text-align: center; }
.panel.compact { width: 100%; max-width: 420px; }
.eyebrow { color: var(--cyan); font-size: 11px; font-weight: 800; letter-spacing: .22em; }
h1, h2 { margin: 7px 0 8px; letter-spacing: .08em; }
h1 { font-size: clamp(34px, 9vw, 58px); line-height: 1.05; letter-spacing: .045em; }
.brandRu { margin: -2px 0 12px; font-size: clamp(17px, 4.5vw, 24px); font-weight: 900; letter-spacing: .16em; color: var(--cyan); text-shadow: 0 0 18px rgba(83,232,255,.30); }
h2 { font-size: clamp(30px, 9vw, 48px); }
.lead { margin: 0 auto 22px; max-width: 380px; color: #cdd5ee; font-size: 16px; line-height: 1.45; }
.howto { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 18px 0; }
.howto > div { padding: 16px 8px 13px; border-radius: 18px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.07); display: flex; flex-direction: column; align-items: center; gap: 3px; }
.gesture { font-size: 30px; color: var(--cyan); text-shadow: 0 0 18px currentColor; }
.gesture.hold { color: var(--violet); }
.howto b { font-size: 13px; letter-spacing: .08em; }
.howto small { color: var(--muted); font-size: 11px; }
.warning { color: #ff99aa; font-size: 12px; margin: 0 0 18px; }
button { width: 100%; min-width: 0; border: 0; border-radius: 16px; padding: 15px 18px; font: inherit; font-weight: 900; letter-spacing: .09em; cursor: pointer; touch-action: manipulation; }
button + button { margin-top: 9px; }
.primary { color: #071018; background: linear-gradient(100deg, var(--violet), var(--cyan)); box-shadow: 0 8px 30px rgba(102,196,255,.25); }
.ghost { color: #c9d2ea; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.07); }
.result { display: flex; justify-content: space-between; align-items: baseline; padding: 12px 2px; border-bottom: 1px solid rgba(255,255,255,.07); color: var(--muted); }
.result strong { color: var(--text); font-size: 24px; }
.result:last-of-type { margin-bottom: 18px; }
.hint { position: absolute; left: 50%; bottom: max(26px, env(safe-area-inset-bottom)); transform: translateX(-50%); width: min(88%, 520px); padding: 10px 14px; border-radius: 999px; background: rgba(5,8,20,.72); border: 1px solid rgba(108,246,255,.18); color: #dffcff; text-align: center; font-size: 10px; font-weight: 800; letter-spacing: .08em; pointer-events: none; animation: hintPulse 1.5s ease-in-out infinite; }
@keyframes hintPulse { 50% { transform: translateX(-50%) scale(1.02); opacity: .72; } }
@media (max-height: 650px) { .panel { padding: 18px; } .howto { margin: 10px 0; } .lead { margin-bottom: 10px; } }

.zoneBanner { margin: 2px auto 0; width: max-content; max-width: 92%; min-height: 22px; padding: 4px 10px; border-radius: 999px; color: #e9fbff; background: rgba(7,12,30,.62); border: 1px solid rgba(108,246,255,.13); font-size: 9px; font-weight: 900; letter-spacing: .14em; opacity: 0; transform: translateY(-6px) scale(.96); transition: opacity .18s ease, transform .18s ease; }
.zoneBanner.show { opacity: 1; transform: translateY(0) scale(1); }

.shards { margin: 1px auto 0; width: max-content; min-height: 18px; padding: 2px 8px; border-radius: 999px; color: #ffd978; background: rgba(20,14,5,.32); border: 1px solid rgba(255,213,108,.12); font-size: 9px; font-weight: 900; letter-spacing: .12em; opacity: .9; }

/* Telegram / online foundation v0.6 */
.tgStatus{margin:8px auto 14px;padding:7px 10px;border:1px solid rgba(124,247,255,.16);border-radius:999px;font-size:11px;letter-spacing:.04em;color:#a9b7d5;background:rgba(5,8,20,.38);max-width:94%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tgStatus.ok{color:#9bf8cf;border-color:rgba(109,255,154,.30)}
.tgStatus.warn{color:#ffd891;border-color:rgba(255,213,108,.28)}
.menuGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.saveStatus{min-height:18px;margin:8px 0 2px;font-size:12px;color:#9bf8cf;text-align:center}
.secondaryAction{margin-top:8px}
.modalOverlay{z-index:30;background:rgba(3,5,13,.82);backdrop-filter:blur(8px)}
.onlinePanel{max-height:min(78vh,780px);overflow:hidden;display:flex;flex-direction:column}
.modalHead{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(124,247,255,.12);padding-bottom:10px;margin-bottom:10px}
.modalHead h2{margin:0}
.closeBtn{appearance:none;border:0;background:transparent;color:#fff;font-size:34px;line-height:1;cursor:pointer;padding:0 4px}
.onlineModalBody{overflow:auto;min-height:120px;max-height:58vh;padding-right:2px}
.onlineRow{display:grid;grid-template-columns:42px 1fr auto;gap:8px;align-items:center;padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.07);font-size:13px}
.onlineRow strong{color:#fff}.onlineRow .rank{color:#7cf7ff;font-weight:800}.onlineRow .score{color:#ffd56c;font-weight:800}
.shopCard{border:1px solid rgba(124,247,255,.15);border-radius:14px;padding:12px;margin:10px 0;background:rgba(9,12,30,.68)}
.shopCard h3{margin:0 0 5px;font-size:16px}.shopCard p{margin:0 0 10px;font-size:12px;color:#aeb9d2}.shopCard button{width:100%}
.shopCard.owned{border-color:rgba(109,255,154,.32)}
.shopNotice{font-size:12px;line-height:1.45;color:#ffd891;padding:10px;border:1px solid rgba(255,213,108,.22);border-radius:12px;background:rgba(255,213,108,.05);margin-bottom:10px}


/* v0.6.2: Telegram Android viewport / narrow-screen hardening */
.panel, .panel * { max-width: 100%; }
.lead, .warning, .tgStatus, .shopNotice { overflow-wrap: anywhere; }
@media (max-width: 430px) {
  .overlay { padding: 12px; align-items: flex-start; }
  .panel { margin: max(10px, env(safe-area-inset-top)) auto max(10px, env(safe-area-inset-bottom)); padding: 18px 14px 16px; border-radius: 22px; }
  .panel.compact { max-width: 100%; }
  .eyebrow { font-size: 9px; letter-spacing: .15em; }
  h1 { font-size: clamp(30px, 9vw, 40px); margin-top: 5px; }
  h2 { font-size: clamp(26px, 8vw, 38px); }
  .lead { font-size: 14px; line-height: 1.35; margin-bottom: 12px; }
  .howto { gap: 8px; margin: 12px 0; }
  .howto > div { padding: 12px 6px 10px; }
  .warning { font-size: 11px; line-height: 1.35; margin-bottom: 12px; }
  button { padding: 13px 12px; font-size: 14px; }
  .menuGrid { gap: 8px; }
  .tgStatus { margin: 6px auto 10px; font-size: 10px; }
}
@media (max-width: 350px) {
  .menuGrid { grid-template-columns: 1fr; }
  .howto { grid-template-columns: 1fr 1fr; }
  h1 { font-size: 29px; }
  .brandRu { font-size: 15px; letter-spacing: .11em; margin-bottom: 10px; }
}

/* v0.7.0: Daily Run, challenges and cosmetic controls */
.dailyBtn { color:#071018; background:linear-gradient(100deg,#ffd56c,#6dff9a); box-shadow:0 8px 28px rgba(109,255,154,.16); }
.challengeStatus { margin:8px auto 12px; padding:9px 12px; border-radius:14px; color:#fff1b8; background:rgba(255,213,108,.08); border:1px solid rgba(255,213,108,.28); font-size:12px; font-weight:800; line-height:1.35; }
.dailyHero { padding:14px; border-radius:16px; border:1px solid rgba(109,255,154,.22); background:linear-gradient(145deg,rgba(109,255,154,.07),rgba(124,247,255,.05)); margin-bottom:12px; }
.dailyHero strong { display:block; font-size:28px; color:#dffff0; margin:2px 0 4px; }
.dailyMeta { display:flex; justify-content:space-between; gap:8px; margin-top:8px; color:#aeb9d2; font-size:11px; }
.dailyStart { margin:12px 0 8px; }
.sectionLabel { margin:14px 0 6px; color:#9aa6c4; font-size:10px; font-weight:900; letter-spacing:.14em; text-align:left; }
.cosmeticsGrid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:8px 0 12px; }
.cosmeticSelect { width:100%; border:1px solid rgba(124,247,255,.14); border-radius:12px; padding:10px; background:rgba(255,255,255,.04); color:#eef5ff; font:inherit; }
.founderBadge { display:inline-flex; align-items:center; gap:6px; padding:4px 8px; margin-left:5px; border-radius:999px; color:#1a1200; background:#ffd56c; font-size:9px; font-weight:900; vertical-align:middle; }
.modePill { display:inline-block; padding:4px 9px; border-radius:999px; border:1px solid rgba(109,255,154,.22); color:#a9ffd0; background:rgba(109,255,154,.06); font-size:9px; font-weight:900; letter-spacing:.12em; }
.challengeWin { color:#9bf8cf !important; }
@media (max-width:430px) {
  .challengeStatus { font-size:11px; margin:6px auto 10px; }
  .dailyMeta { flex-direction:column; gap:2px; }
  .cosmeticsGrid { grid-template-columns:1fr; }
}

/* v0.9.0: premium cosmetics, PURE/OPEN and Stars Continue */
.continueBtn{margin-top:12px;color:#081014;background:linear-gradient(100deg,#ffd56c,#ff9d2e);box-shadow:0 10px 30px rgba(255,181,62,.24);animation:continuePulse 1.8s ease-in-out infinite}
.continueBtn:disabled{opacity:.58;animation:none}
@keyframes continuePulse{50%{transform:translateY(-1px);box-shadow:0 12px 36px rgba(255,181,62,.36)}}
.continueTerms{margin:7px 4px 12px;color:#c9b77b;font-size:10px;line-height:1.35}
.founderResult{border-color:rgba(255,213,108,.45)!important;box-shadow:0 22px 80px rgba(0,0,0,.45),0 0 42px rgba(255,213,108,.16),inset 0 1px rgba(255,255,255,.05)!important;background:linear-gradient(160deg,rgba(36,25,7,.95),rgba(12,12,24,.96))!important}
.rankTabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.rankTab{padding:11px 8px;background:rgba(255,255,255,.045);color:#aeb9d2;border:1px solid rgba(255,255,255,.07)}
.rankTab.active{color:#061017;background:linear-gradient(100deg,#7cf7ff,#b17aff);border-color:transparent}
.goodNotice{color:#9bf8cf!important;border-color:rgba(109,255,154,.25)!important;background:rgba(109,255,154,.055)!important}
.achievementGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.achievement{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.035);display:grid;grid-template-columns:auto 1fr;gap:2px 7px;text-align:left;opacity:.62}
.achievement span{grid-row:1/3;font-size:16px}.achievement b{font-size:11px}.achievement small{font-size:9px;color:#9aa6c4}.achievement.unlocked{opacity:1;border-color:rgba(109,255,154,.28);background:rgba(109,255,154,.055)}
.fourSelects{grid-template-columns:1fr 1fr}
.fourSelects label{display:flex;flex-direction:column;gap:5px;color:#8f9ab7;font-size:9px;font-weight:900;letter-spacing:.13em;text-align:left}
.termsAccept{margin:10px 0 14px;padding:10px;border-radius:12px;border:1px solid rgba(255,213,108,.18);background:rgba(255,213,108,.04);font-size:10px;line-height:1.35;text-align:left;color:#c8d0e3}
.termsAccept label{display:flex;gap:8px;align-items:flex-start}.termsAccept input{margin-top:2px;accent-color:#7cf7ff}
.textButton{width:auto;padding:5px 0;margin-top:5px!important;background:transparent;color:#7cf7ff;border:0;font-size:9px;letter-spacing:.08em;text-align:left}
.termsText{padding:12px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);font-size:12px;line-height:1.6;text-align:left;color:#d5dced;margin-bottom:12px}
.premiumCard{position:relative;overflow:hidden;padding:12px 12px 14px}
.productHead{display:flex;align-items:center;justify-content:space-between;gap:8px}.productHead h3{margin:0}
.ownedPill{padding:3px 7px;border-radius:999px;background:rgba(109,255,154,.12);border:1px solid rgba(109,255,154,.25);color:#9bf8cf;font-size:8px;font-weight:900;letter-spacing:.08em}
.shopPreview{height:92px;position:relative;overflow:hidden;border-radius:12px;margin:-2px 0 11px;background:radial-gradient(circle at 50% 50%,rgba(124,247,255,.10),rgba(4,6,16,.55) 56%,rgba(4,6,16,.9));border:1px solid rgba(255,255,255,.06)}
.previewOrb{position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px;border-radius:50%;z-index:3;box-shadow:0 0 24px currentColor;animation:previewFloat 1.7s ease-in-out infinite}
.previewTrail{position:absolute;left:14%;top:50%;width:42%;height:10px;transform:translateY(-50%);border-radius:999px;filter:blur(2px);opacity:.55}
.previewImpact{position:absolute;left:50%;top:50%;width:55px;height:55px;margin:-27.5px;border:2px solid currentColor;border-radius:50%;opacity:.1;animation:previewImpact 1.65s ease-out infinite}
@keyframes previewFloat{50%{transform:translateY(-7px) scale(1.04)}}
@keyframes previewImpact{0%{transform:scale(.35);opacity:.6}80%,100%{transform:scale(1.45);opacity:0}}
.preview-plasma .previewOrb{color:#79f7ff;background:radial-gradient(circle at 30% 25%,#fff 0 12%,#6ff5ff 28%,#d453ff 68%,#6535ff 100%);animation:previewFloat 1.3s ease-in-out infinite,plasmaHue 2.2s linear infinite}.preview-plasma .previewTrail{background:linear-gradient(90deg,transparent,#7cf7ff,#d86cff)}.preview-plasma .previewImpact{color:#d86cff}
@keyframes plasmaHue{50%{filter:hue-rotate(55deg)}}
.preview-comet .previewOrb{color:#cfffff;background:radial-gradient(circle at 30% 25%,#fff,#78f4ff 45%,#4a9aff)}.preview-comet .previewTrail{width:56%;background:linear-gradient(90deg,transparent,rgba(124,247,255,.2),#7cf7ff);box-shadow:0 0 18px #7cf7ff}
.preview-cyber{background:repeating-linear-gradient(0deg,rgba(217,93,255,.04) 0 1px,transparent 1px 8px),linear-gradient(135deg,#07051a,#061a1d)}.preview-cyber:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49%,rgba(92,247,255,.18) 50%,transparent 51%),linear-gradient(0deg,transparent 49%,rgba(216,93,255,.12) 50%,transparent 51%);background-size:22px 22px;animation:gridMove 2s linear infinite}.preview-cyber .previewOrb{color:#72f7ff;background:#0d1b2b;border:2px solid #72f7ff}.preview-cyber .previewTrail{background:linear-gradient(90deg,transparent,#d85dff)}
@keyframes gridMove{to{background-position:22px 22px}}
.preview-blackhole .previewOrb{color:#8e62ff;background:radial-gradient(circle,#000 0 42%,#3d206d 50%,#9e5dff 66%,transparent 72%);box-shadow:0 0 30px #8e62ff}.preview-blackhole .previewOrb:after{content:"";position:absolute;inset:-9px;border:2px solid #dc80ff;border-radius:50%;transform:scaleY(.36) rotate(18deg);animation:blackRing 1.5s linear infinite}.preview-blackhole .previewTrail{background:linear-gradient(90deg,transparent,#2b1649,#8e62ff)}.preview-blackhole .previewImpact{color:#8e62ff}
@keyframes blackRing{to{transform:scaleY(.36) rotate(378deg)}}
.preview-founder{background:radial-gradient(circle at 50% 55%,rgba(255,213,108,.14),rgba(7,7,14,.88))}.preview-founder .previewOrb{color:#ffd56c;background:radial-gradient(circle at 30% 25%,#fff,#fff0a6 28%,#ffc247 70%,#ff922e);box-shadow:0 0 30px #ffd56c}.preview-founder .previewTrail{background:linear-gradient(90deg,transparent,#ffd56c,#fff4b2)}.preview-founder .previewImpact{color:#ffd56c;border-width:3px}

@media(max-width:430px){.achievementGrid{grid-template-columns:1fr 1fr}.fourSelects{grid-template-columns:1fr}.shopPreview{height:82px}.continueTerms{font-size:9px}}

/* v0.9.1: STORE LIVE — clearer value, live Stars, stronger premium previews */
.liveNotice{color:#fff3b0!important;border-color:rgba(255,213,108,.32)!important;background:linear-gradient(135deg,rgba(255,213,108,.08),rgba(177,122,255,.06))!important;line-height:1.5!important}
.liveNotice b{color:#ffd56c;letter-spacing:.08em}
.premiumCard{padding:13px 13px 15px;border-color:rgba(255,255,255,.10);background:linear-gradient(160deg,rgba(13,17,38,.90),rgba(7,9,22,.92))}
.premiumCard.owned{border-color:rgba(109,255,154,.34);box-shadow:inset 0 0 24px rgba(109,255,154,.035)}
.productHead{align-items:flex-start;margin-bottom:4px}
.productHead>div:first-child{min-width:0;text-align:left}
.productHead h3{font-size:17px;margin:4px 0 0!important;letter-spacing:.025em}
.productBadge{display:inline-block;padding:3px 7px;border-radius:999px;background:rgba(124,247,255,.08);border:1px solid rgba(124,247,255,.18);color:#9ff8ff;font-size:8px;font-weight:900;letter-spacing:.12em}
.productLead{font-size:12px!important;line-height:1.46!important;color:#d4dbef!important;margin:8px 0 11px!important;text-align:left}
.productBlock{margin:9px 0;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.028);border:1px solid rgba(255,255,255,.06);text-align:left}
.productBlock>b{display:block;margin-bottom:6px;color:#8f9ab7;font-size:8px;letter-spacing:.14em}
.productBlock p{margin:0!important;color:#bac5df!important;font-size:10px!important;line-height:1.45!important}
.includeChips{display:flex;flex-wrap:wrap;gap:5px}
.includeChip{display:inline-flex;padding:4px 7px;border-radius:999px;background:rgba(109,255,154,.065);border:1px solid rgba(109,255,154,.16);color:#baffda;font-size:9px;font-weight:800}
.fairPlay{margin:10px 0 12px;padding:9px 10px;border-radius:11px;background:rgba(255,213,108,.045);border:1px solid rgba(255,213,108,.16);color:#d9cfa8;font-size:9px;line-height:1.45;text-align:left}
.fairPlay b{color:#ffd56c}
.shopBuy,.shopEquip{margin-top:4px!important}
.shopBuy:disabled,.shopEquip:disabled{opacity:.55;cursor:default}
.product-blackhole{border-color:rgba(142,98,255,.28);box-shadow:0 0 28px rgba(142,98,255,.045)}
.product-founder{border-color:rgba(255,213,108,.30);box-shadow:0 0 30px rgba(255,213,108,.05)}
.product-founder .productBadge{color:#2a1900;background:#ffd56c;border-color:#ffd56c}
.shopPreview{height:128px;margin:-2px 0 12px;background:radial-gradient(circle at 50% 55%,rgba(124,247,255,.11),rgba(4,6,16,.58) 55%,rgba(4,6,16,.96));}
.previewScan{position:absolute;inset:0;opacity:0;pointer-events:none}
.previewDust{position:absolute;left:12%;top:50%;width:5px;height:5px;border-radius:50%;opacity:0;z-index:2}
.preview-blackhole .previewOrb{width:42px;height:42px;margin:-21px;color:#8e62ff;background:radial-gradient(circle,#000 0 39%,#0b0612 46%,#4d2587 55%,#bc6dff 68%,transparent 73%);box-shadow:0 0 36px #8e62ff,0 0 70px rgba(142,98,255,.28)}
.preview-blackhole .previewOrb:before{content:"";position:absolute;inset:-18px;border:4px solid rgba(238,145,255,.72);border-left-color:rgba(100,56,212,.30);border-right-color:#ffd0ff;border-radius:50%;transform:scaleY(.29) rotate(-22deg);filter:blur(.3px);animation:blackRingBack 2.1s linear infinite}
.preview-blackhole .previewOrb:after{inset:-13px;border-width:2px;box-shadow:0 0 13px #c474ff;animation:blackRing 1.45s linear infinite}
.preview-blackhole .previewTrail{height:15px;width:60%;left:4%;background:linear-gradient(90deg,transparent,rgba(47,18,80,.2),#4a247b,#a25bff);filter:blur(4px);box-shadow:0 0 18px rgba(142,98,255,.65)}
.preview-blackhole .previewImpact{width:76px;height:76px;margin:-38px;color:#c17aff;border-color:#c17aff;animation:previewImpact 1.45s ease-out infinite}
.preview-blackhole .previewDust{opacity:.9;background:#da8cff;box-shadow:0 0 9px #8e62ff;animation:dustSuck 1.8s ease-in infinite}
.preview-blackhole .dust-b{top:28%;left:88%;width:3px;height:3px;animation-delay:-.55s}.preview-blackhole .dust-c{top:73%;left:80%;width:4px;height:4px;animation-delay:-1.05s}
@keyframes dustSuck{0%{transform:translate(0,0) scale(1);opacity:0}15%{opacity:.9}85%{opacity:.8}100%{transform:translate(255px,0) scale(.25);opacity:0}}
@keyframes blackRingBack{to{transform:scaleY(.29) rotate(338deg)}}
.preview-plasma .previewOrb{width:40px;height:40px;margin:-20px;box-shadow:0 0 34px #71f7ff,0 0 65px rgba(213,83,255,.25)}
.preview-plasma .previewOrb:before{content:"";position:absolute;inset:5px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);border-top-color:#d86cff;border-left-color:#7cf7ff;animation:plasmaSpin .8s linear infinite}
.preview-plasma .previewImpact{width:68px;height:68px;margin:-34px}
@keyframes plasmaSpin{to{transform:rotate(360deg)}}
.preview-comet .previewTrail{height:15px;filter:blur(3px);box-shadow:0 0 22px #7cf7ff}
.preview-cyber .previewScan{opacity:.20;background:linear-gradient(180deg,transparent,rgba(114,247,255,.75),transparent);height:24px;animation:cyberScan 1.7s linear infinite}
@keyframes cyberScan{from{transform:translateY(-30px)}to{transform:translateY(150px)}}
.preview-founder .previewOrb{width:40px;height:40px;margin:-20px;box-shadow:0 0 36px #ffd56c,0 0 70px rgba(255,213,108,.24)}
.preview-founder .previewOrb:before{content:"👑";position:absolute;left:50%;top:-29px;transform:translateX(-50%);font-size:18px;filter:drop-shadow(0 0 6px #ffd56c);animation:founderCrown 1.5s ease-in-out infinite}
@keyframes founderCrown{50%{transform:translateX(-50%) translateY(-3px) rotate(3deg)}}
.blackholeResult{border-color:rgba(142,98,255,.45)!important;background:radial-gradient(circle at 50% 22%,rgba(88,45,150,.18),rgba(7,7,16,.97) 48%)!important;box-shadow:0 22px 80px rgba(0,0,0,.52),0 0 48px rgba(142,98,255,.14),inset 0 1px rgba(255,255,255,.05)!important}
.plasmaResult{border-color:rgba(116,247,255,.38)!important;background:linear-gradient(160deg,rgba(16,35,54,.94),rgba(23,9,42,.96))!important;box-shadow:0 22px 80px rgba(0,0,0,.48),0 0 42px rgba(116,247,255,.11)!important}
.cyberResult{border-color:rgba(216,93,255,.34)!important;background:repeating-linear-gradient(0deg,rgba(216,93,255,.025) 0 1px,transparent 1px 8px),linear-gradient(155deg,rgba(7,23,31,.96),rgba(17,7,30,.96))!important}
@media(max-width:430px){.shopPreview{height:108px}.productBlock{padding:8px}.includeChip{font-size:8px}.productLead{font-size:11px!important}.fairPlay{font-size:8.5px}}

/* v0.9.3 AdsGram rewarded continue */
.adContinueBtn{margin-top:8px;background:linear-gradient(100deg,#51f0b7,#62c6ff);color:#04120f;border:0;font-weight:950;letter-spacing:.045em;box-shadow:0 10px 32px rgba(81,240,183,.16)}
.adContinueBtn:disabled{opacity:.55;filter:saturate(.5)}
.adContinueBtn.moderation{background:linear-gradient(100deg,#243e43,#284a58);color:#bdeee6;border:1px dashed rgba(115,239,215,.42);box-shadow:none}
.adContinueBtn.moderation::after{content:'  •  НА МОДЕРАЦИИ';font-size:.72em;opacity:.8;white-space:nowrap}

/* Language controls – kept inside the scrollable menu and readable on mobile. */
.languageSettings { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 12px; margin:8px 0; border:1px solid rgba(127,175,255,.22); border-radius:14px; background:rgba(13,22,49,.72); color:#cbd9f6; font-size:11px; font-weight:700; letter-spacing:.06em; }
.languageSettings>div { display:flex; gap:3px; border-radius:11px; padding:3px; background:rgba(4,10,30,.9) }
.languageSettings .langChoice { min-width:47px; width:auto; min-height:35px; padding:5px 10px; margin:0; border:0; border-radius:8px; background:transparent; color:#aeb8d5; font-weight:900; font-size:13px; cursor:pointer; }
.languageSettings .langChoice.active { color:#061124; background:linear-gradient(120deg,#88eeff,#b88cff); }
@media(max-width:375px){.languageSettings {font-size:10px; padding:7px}.languageSettings .langChoice { min-width:40px; }}
