:root {
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  --cyan: #8cff45;
  --pink: #24ffe9;
  --purple: #56c84b;
  --ink: #090b25;
  --body-glow: #183f30;
  --body-deep: #04150f;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: radial-gradient(circle at 50% 25%, var(--body-glow) 0, #0d102e 48%, var(--body-deep) 100%);
  color: #eafbff;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .2;
  background-image: linear-gradient(#47dfff11 1px, transparent 1px), linear-gradient(90deg, #47dfff11 1px, transparent 1px);
  background-size: 35px 35px;
  transform: perspective(400px) rotateX(65deg) scale(1.8) translateY(25%);
}

.game-shell {
  width: min(100vw, 520px);
  height: min(100vh, 920px);
  min-height: 620px;
  padding: 18px 20px 14px;
  display: grid;
  grid-template-rows: auto auto auto 1fr auto auto auto;
  position: relative;
  background: linear-gradient(180deg, #111431cc, #080a21e8);
  box-shadow: 0 0 70px #7027c840, inset 0 0 50px #39ddff0c;
}
.game-shell::after { content:""; position:absolute; inset:0; z-index:-1; opacity:.24; pointer-events:none; background:var(--world-art,radial-gradient(circle at 50% 45%,#7436ff55,transparent 55%)); transition:background 1s,opacity 1s; }
.side-neon{position:absolute;z-index:0;top:72px;bottom:82px;width:7px;overflow:hidden;pointer-events:none;opacity:.5}.side-neon-left{left:3px;border-left:1px solid #43eaff24}.side-neon-right{right:3px;border-right:1px solid #ff3bd824}.side-neon::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,#43eaff0d 30%,#ff3bd80c 70%,transparent);filter:blur(2px)}.side-neon i{position:absolute;left:2px;width:3px;height:66px;border-radius:5px;background:linear-gradient(180deg,transparent,#8bf7ff 42%,#43eaff 55%,transparent);box-shadow:0 0 4px #43eaff,0 0 8px #43eaff77;animation:sideSignal 4.2s linear infinite}.side-neon i:nth-child(2){height:42px;animation-duration:5.6s;animation-delay:-2.1s;background:linear-gradient(180deg,transparent,#ff93e8 42%,#ff3bd8 55%,transparent);box-shadow:0 0 4px #ff3bd8,0 0 8px #ff3bd866}.side-neon i:nth-child(3){height:28px;animation-duration:3.4s;animation-delay:-1.2s;opacity:.55}.side-neon-right i{left:2px;animation-direction:reverse}.side-neon-right i:nth-child(2){animation-direction:normal}.side-neon-right i:nth-child(3){animation-direction:reverse}@keyframes sideSignal{0%{top:-90px;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:100%;opacity:0}}
.game-shell>.top-brand,.game-shell>.hud,.game-shell>.score-row,.game-shell>.board-wrap,.game-shell>.controls,.game-shell>.stage,.game-shell>.app-version{position:relative;z-index:1}
.game-shell[data-world="void"]::after { background:radial-gradient(circle at 28% 28%,#c85cff55 0 2px,transparent 3px),radial-gradient(circle at 70% 38%,#67eaff55 0 1px,transparent 2px),radial-gradient(ellipse at 50% 60%,#572a9444,transparent 58%); background-size:83px 83px,57px 57px,100% 100%; }
.game-shell[data-world="storm"]::after { background:repeating-linear-gradient(115deg,transparent 0 42px,#1bfff019 44px 45px,transparent 47px 90px),radial-gradient(circle at 50% 60%,#00d9c344,transparent 58%); animation:stormMove 7s linear infinite; }
.game-shell[data-world="solar"]::after { background:radial-gradient(circle at 50% 68%,#ffdc5a77 0 3%,#ff4b7a33 15%,transparent 48%),repeating-radial-gradient(circle at 50% 68%,transparent 0 45px,#ff935011 48px 50px); }
@keyframes stormMove{to{background-position:180px 0,0 0}}
.top-brand { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; min-height:50px; margin-bottom:8px; }
.arena-brand{grid-column:2;display:flex;flex-direction:column;align-items:center;gap:5px}.arena-brand .title{font-size:12px;line-height:1}.arena-brand .world-badge{margin:0;padding:4px 12px}.top-actions{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:8px}
.profile-pill,.rank-shortcut,.currency { border:1px solid #55ddff55; background:#121735cc; color:white; border-radius:18px; display:flex; align-items:center; gap:8px; padding:5px 10px; box-shadow:inset 0 0 14px #41e4ff0d; }
.sound-btn{width:34px;height:34px;border:1px solid #55ddff55;border-radius:50%;background:#121735;color:#73efff;font-size:17px;box-shadow:inset 0 0 12px #45eaff22}.sound-btn.off{color:#596181;text-decoration:line-through}
.profile-pill { border:0; padding-left:5px; }
.hud-profile-hidden { display:none; }
.profile-pill > span:nth-child(2) { display:grid; text-align:left; font-size:11px; }
.avatar { width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#37eaff,#713eff);font-size:10px;font-weight:900;box-shadow:0 0 14px #34eaff88; }
.currency { color:#90f6ff; font-size:12px; }.currency span{color:#ff52df;text-shadow:0 0 8px #ff32dc;}.rank-shortcut{color:#ffe66d}.rank-shortcut span{font-size:17px}

.hud, .score-row, .controls { display: flex; align-items: center; justify-content: space-between; }
.hud { gap: 12px; }
.icon-btn { border: 0; background: none; color: var(--cyan); font-size: 22px; font-weight: 900; }
.menu-btn { border:1px solid #5aeaff77; border-radius:9px; padding:7px 9px; background:#131936; color:#8ff5ff; font-size:9px; font-weight:1000; letter-spacing:.09em; box-shadow:inset 0 0 12px #41eaff18; }
.level-block { display: grid; line-height: 1; }
small { color: #8defff; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
strong { font-size: 24px; }
.energy { flex: 1; display: flex; align-items: center; gap: 4px; }
.energy span { display: grid; place-items: center; width: 29px; height: 29px; border: 2px solid #6eeaff; border-radius: 50%; color: #9c6cff; font-weight: 900; box-shadow: 0 0 12px #35dcff88; }
.energy i, .stage i { flex: 1; height: 10px; border: 2px solid #75e9ff; border-radius: 10px; overflow: hidden; padding: 1px; }
.energy b, .stage b { display: block; height: 100%; width: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), #6edaff 70%, var(--pink)); box-shadow: 0 0 12px var(--cyan); transition: width .3s; }
.hearts { color: var(--pink); letter-spacing: 2px; font-size: 18px; text-shadow: 0 0 12px var(--pink); white-space: nowrap; }
.score-row { margin-top: 8px; align-items: center; min-height:78px; }
.world-badge{justify-self:center;margin-top:8px;padding:5px 14px;border:1px solid var(--world-color,#42eaff66);border-radius:12px;background:#090c25aa;display:flex;gap:7px;align-items:center;box-shadow:0 0 12px color-mix(in srgb,var(--world-color,#42eaff) 35%,transparent)}.world-badge small{font-size:7px;color:#7d89aa}.world-badge b{font-size:9px;letter-spacing:.14em;color:var(--world-color,#62efff)}
.score-row > div:not(.brain-reactor) { display: grid; }
.score-row > div:last-child { text-align: right; }
.score-block { justify-items:start; }
.score-gems { display:flex;align-items:center;gap:5px;margin-top:3px;color:#a4f7ff;font-size:11px;line-height:1; }
.score-gems span { color:#ff52df;text-shadow:0 0 8px #ff32dc; }
.score-gems b { font-size:11px;letter-spacing:.04em; }
.title { font-size: 13px; font-weight: 900; letter-spacing: .2em; color: #b3a6ff; }
.title span { color: var(--cyan); }
.brain-reactor{position:relative;width:82px;height:60px;margin-top:18px;align-self:flex-end;display:grid!important;place-items:center;isolation:isolate}.brain-reactor span{position:relative;z-index:2;font-size:34px;line-height:1;transform-origin:50% 68%;filter:drop-shadow(0 0 8px #55eaff88) drop-shadow(0 0 15px #ff3bd855)}.brain-reactor small{position:absolute;z-index:3;bottom:-1px;color:#7ceeff;font-size:6px;letter-spacing:.24em}.brain-reactor::before,.brain-reactor::after{content:"";position:absolute;inset:9px 17px 12px;border:1px solid #56eaff70;border-radius:50%;box-shadow:0 0 14px #43eaff33}.brain-reactor::after{inset:14px 22px 17px;border-color:#ff53d877;transform:rotate(68deg)}.brain-orbit{position:absolute;inset:5px 11px 9px;border:1px solid transparent;border-top-color:#53eaffaa;border-bottom-color:#ff4ed599;border-radius:50%;animation:brainOrbit 5s linear infinite}.brain-orbit::after{content:"";position:absolute;width:5px;height:5px;top:4px;right:7px;border-radius:50%;background:#7ff6ff;box-shadow:0 0 10px #51efff}.brain-orbit.orbit-b{inset:10px 16px 14px;animation-direction:reverse;animation-duration:3.5s;transform:rotate(50deg)}.brain-reactor.hit span{animation:brainHit .48s cubic-bezier(.2,.9,.25,1)}.brain-reactor.hit::before{animation:brainWave .48s ease-out}.brain-reactor.complete span{animation:brainComplete .85s cubic-bezier(.2,.9,.25,1)}.brain-reactor.complete::before,.brain-reactor.complete::after{animation:brainWave .8s ease-out}.brain-reactor.complete .brain-orbit{animation-duration:.6s}@keyframes brainOrbit{to{transform:rotate(360deg)}}@keyframes brainHit{0%{transform:scale(.72) rotate(-7deg)}45%{transform:scale(1.3) rotate(7deg);filter:drop-shadow(0 0 16px #56f4ff) drop-shadow(0 0 25px #ff3bd8)}100%{transform:scale(1) rotate(0)}}@keyframes brainComplete{0%{transform:scale(.7) rotate(-10deg)}35%{transform:scale(1.5) rotate(9deg)}65%{transform:scale(.9) rotate(-4deg)}100%{transform:scale(1)}}@keyframes brainWave{0%{opacity:1;transform:scale(.65)}100%{opacity:0;transform:scale(1.9)}}
.brain-callout{position:absolute;z-index:5;bottom:calc(100% - 13px);left:50%;min-width:128px;text-align:center;transform:translateX(-50%) scale(.7);opacity:0;color:#fff;font-size:11px;font-style:italic;font-weight:1000;letter-spacing:.12em;white-space:nowrap;text-shadow:0 0 7px #fff,0 0 15px #43eaff,0 0 24px #ff3bd8;pointer-events:none}.brain-callout.show{animation:brainCallout .72s cubic-bezier(.17,.84,.34,1)}.brain-callout.master{color:#fff4a4;text-shadow:0 0 7px #fff,0 0 16px #ffd84d,0 0 27px #ff3bd8}@keyframes brainCallout{0%{opacity:0;transform:translate(-50%,9px) scale(.55)}24%{opacity:1;transform:translate(-50%,-3px) scale(1.12)}62%{opacity:1;transform:translate(-50%,-2px) scale(1)}100%{opacity:0;transform:translate(-50%,-11px) scale(.92)}}

.board-wrap { position: relative; min-height: 0; }
#gameCanvas { width: 100%; height: 100%; display: block; touch-action: none; }
.message {
  position: absolute;
  top: 7%; left: 50%; transform: translateX(-50%);
  padding: 8px 15px;
  border: 1px solid #43eaff88;
  border-radius: 20px;
  background: #090c25cc;
  color: var(--cyan);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  box-shadow: 0 0 18px #42e9ff33;
  transition: opacity .25s;
  white-space: nowrap;
}
.combo-badge{position:absolute;right:4%;top:16%;display:grid;text-align:center;opacity:.35;transform:scale(.85);transition:.2s}.combo-badge.hot{opacity:1;transform:scale(1.12);filter:drop-shadow(0 0 12px #ff42db)}.combo-badge small{font-size:8px;color:#ff7fe2}.combo-badge b{font-size:25px;color:white;font-style:italic}.score-pop{position:absolute;left:50%;top:43%;color:#7ff7ff;font-size:22px;font-weight:1000;opacity:0;pointer-events:none;text-shadow:0 0 15px #42eaff}.score-pop.show{animation:scoreFly .55s ease-out}@keyframes scoreFly{0%{opacity:0;transform:translate(-50%,20px) scale(.7)}35%{opacity:1}100%{opacity:0;transform:translate(-50%,-30px) scale(1.2)}}

.controls { min-height: 76px; padding: 0 8px; position:relative; }
.control-btn, .start-btn { border: 0; color: #baf7ff; background: none; font-weight: 900; font-size: 10px; letter-spacing: .05em; }
.control-btn span { display: block; font-size: 34px; color: var(--cyan); text-shadow: 0 0 12px var(--cyan); }
.control-btn small{display:block;margin-top:2px;color:#667397;font-size:6px;letter-spacing:.13em}.control-btn.ad-required{color:#ffd36b}.control-btn.ad-required span{color:#ff61d8;text-shadow:0 0 12px #ff38d2}.control-btn:disabled{opacity:.52}
.start-btn { padding: 13px 22px; border: 2px solid var(--cyan); border-radius: 22px; box-shadow: 0 0 20px #34e9ff55, inset 0 0 16px #34e9ff22; font-size: 12px; }
.play-controls{height:40px;min-width:104px;display:grid;align-items:stretch;padding:3px;border:1px solid #ff58d499;border-radius:20px;background:linear-gradient(135deg,#1a1238ee,#22113aee);box-shadow:0 0 18px #ff35c940,inset 0 0 12px #8d52ff22;overflow:hidden}.play-controls .start-btn{width:100%;min-width:96px;padding:0 10px;border:0;border-radius:16px;background:linear-gradient(105deg,#ff39c6 0%,#b54eff 55%,#735cff 100%);box-shadow:inset 0 1px 0 #ffffff66,0 0 14px #ff38cf60;color:#fff;font-size:8px;letter-spacing:.08em;position:relative;text-shadow:0 1px 5px #421043;transition:.2s}.play-controls .start-btn.running{background:linear-gradient(105deg,#ff7a35,#ff3da8 55%,#8a4dff);box-shadow:inset 0 1px 0 #ffffff66,0 0 16px #ff4d8860}.play-controls .start-btn.resume{background:linear-gradient(105deg,#00a9b7,#2774c8 55%,#6458ff);box-shadow:inset 0 1px 0 #ffffff55,0 0 16px #43eaff55}.play-controls .start-btn:active{transform:scale(.96)}
.mini-map { position:absolute;left:50%;transform:translateX(-50%);display: grid; grid-template-columns: repeat(4, 9px); gap: 3px; padding: 8px; border: 1px solid #6bdfff; box-shadow: 0 0 10px #42e9ff44; }
.mini-map i { width: 9px; height: 9px; background: #34345b; }
.mini-map i.on { background: var(--pink); box-shadow: 0 0 7px var(--pink); }
.stage { display: flex; flex-direction: column; align-items: center; gap: 5px; }
.stage i { width: 55%; flex: none; }
.stage b { width: 33%; }
.stage small { color: white; }
.app-version{padding-top:4px;text-align:center;color:#4c5678;font-size:7px;font-weight:800;letter-spacing:.16em;user-select:none}

.overlay { position:fixed; z-index:10; width:min(100vw,520px); height:min(100vh,920px); min-height:620px; inset:50% auto auto 50%; transform:translate(-50%,-50%); padding:24px 22px; background:radial-gradient(circle at 50% 30%,#262158 0,#0c0f2d 48%,#050619 100%); overflow:auto; transition:opacity .25s, transform .25s; }
.overlay::before { content:""; position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 20%,#4cecff09 50%,transparent 80%); }
.hidden { opacity:0; pointer-events:none; transform:translate(-50%,-46%) scale(.97); }
.settings-card #privacyOptionsBtn.hidden { display:none; }
.settings-card #privacyOptionsBtn { margin:12px 0 2px; padding:12px; font-size:10px; letter-spacing:.08em; }
.home-screen { display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;padding:92px 24px 24px;overflow:auto; }
.home-screen>*{width:min(100%,420px);flex:0 0 auto}
.logo { display:flex;flex-direction:column;align-items:center;font-weight:1000;line-height:.82;margin-bottom:22px;filter:drop-shadow(0 0 18px #2eeaff66); }
.home-screen .logo{margin:0 0 24px}
.home-screen .logo b{font-size:61px}.home-screen .logo span{font-size:22px}.home-screen .logo i{line-height:2.7}
.logo span { font-size:25px;letter-spacing:.62em;margin-left:.62em;color:#72f4ff; }.logo b{font-size:68px;font-style:italic;letter-spacing:-.06em;background:linear-gradient(180deg,#fff,#82e9ff 45%,#9d4cff);background-clip:text;color:transparent}.logo i{font-size:9px;line-height:3;letter-spacing:.3em;color:#ff5edc}
.league-card { width:100%;display:flex;align-items:center;gap:15px;padding:13px 16px;border:1px solid #55eaff66;border-radius:16px;background:linear-gradient(135deg,#1c2145dd,#181338dd);color:white;box-shadow:0 0 25px #34eaff1f,inset 0 0 20px #5333cc1f; }
.league-card h2 { margin:4px 0;font-size:19px; }.league-card p{margin:0;font-size:10px;color:#8994bd}.league-card p b{color:#50eaff;margin-right:6px}
.rank-card-button{cursor:pointer;text-align:left;transition:transform .18s,border-color .18s}.rank-card-button:active{transform:scale(.98)}.league-info{flex:1}.league-info h2>b{color:#5df3ff}.league-info p strong{color:white;margin-left:5px}.rank-arrow{font-size:30px;color:#65efff}
.home-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.home-stats>div{padding:9px 6px;text-align:center;border:1px solid #3f477066;border-radius:10px;background:#121530}.home-stats small,.home-stats b{display:block}.home-stats small{font-size:8px}.home-stats b{margin-top:4px;font-size:13px;color:#7cf3ff}.home-stats .pink{color:#ff65dc}
.league-emblem { width:56px;height:56px;display:grid;place-items:center;position:relative;border:2px solid #5df3ff;transform:rotate(45deg);font-size:38px;color:#5df3ff;box-shadow:0 0 20px #36eaff55,inset 0 0 18px #4aeaff33}.league-emblem span{position:absolute;transform:rotate(-45deg);font-size:11px;font-weight:900;color:white}
.home-screen #playBtn{margin-top:24px;min-height:56px;border-radius:18px;font-size:12px;box-shadow:0 0 28px #3ceaff70}
.home-screen #homeRankBtn{min-height:48px;padding:13px;border-radius:14px}
.home-screen .season{margin-top:8px}
.primary-btn,.secondary-btn { width:100%;border:0;border-radius:16px;padding:17px;color:#061329;font-weight:1000;letter-spacing:.12em;background:linear-gradient(90deg,#48eaff,#6fbbff);box-shadow:0 0 22px #3ceaff66; }.primary-btn span{float:right;font-size:22px;line-height:10px}.secondary-btn{color:#dbeeff;background:#171936;border:1px solid #9d5cff88;box-shadow:0 0 16px #824aff33}
.season{text-align:center;font-size:9px;letter-spacing:.15em;color:#68749d}.season span{color:#ff56db}
.panel-head{display:flex;align-items:center;justify-content:space-between;margin:12px 0 22px}.panel-head h2{margin:2px 0}.back-btn{width:42px;height:42px;border-radius:50%;border:1px solid #54eaff88;background:#151a39;color:#75f3ff;font-size:30px}.trophy{font-size:28px;color:#ffe06a;text-shadow:0 0 15px #ffcf3e}
.tabs{display:flex;background:#11142f;border-radius:12px;padding:4px}.tabs button{flex:1;border:0;border-radius:9px;padding:10px;background:none;color:#60698e;font-weight:900}.tabs .active{background:#26305a;color:#64eeff}.tabs .live-tab{cursor:pointer;color:#7eeec3;border:1px solid #50e3a633}.tabs .live-tab:active{transform:scale(.97)}.tabs .live-tab span{color:#fff}
.podium{height:160px;display:flex;align-items:end;justify-content:center;gap:10px;padding-top:20px}.podium .pod{width:29%;text-align:center}.pod .medal{width:52px;height:52px;margin:auto;display:grid;place-items:center;border-radius:50%;background:#202552;border:2px solid var(--medal);box-shadow:0 0 18px var(--medal);font-weight:1000}.pod b,.pod small{display:block;margin-top:7px}.pod small{font-size:9px}.pod.first{transform:translateY(-22px)}
.ranking-list{display:grid;gap:8px}.rank-row{display:grid;grid-template-columns:35px 1fr auto;align-items:center;padding:12px 14px;border:1px solid #3f477044;border-radius:12px;background:#141731cc}.rank-row.me{border-color:#49eaff;background:#18304b;box-shadow:0 0 14px #3feaff22}.rank-row span{color:#8590b9;font-weight:900}.rank-row strong{font-size:14px;color:#7cefff}.rank-row small{display:block;color:#69759f;font-size:8px}
.your-rank{position:sticky;bottom:0;margin-top:14px;padding:14px;border:1px solid #ff4bd9;border-radius:14px;background:#25143cee;display:grid;grid-template-columns:1fr auto;box-shadow:0 0 20px #ff35d333}.your-rank span{font-size:9px;color:#ff8be6}.your-rank b{grid-row:1/3;grid-column:2;font-size:25px;color:#ff68df}.your-rank strong{font-size:14px}
.round-result{position:absolute;z-index:8;left:18px;right:18px;bottom:20px;padding:20px 22px;border:1px solid var(--result-color,#52f3ff);border-radius:22px;background:linear-gradient(135deg,#182443f5,#11142ff5);text-align:center;box-shadow:0 0 35px color-mix(in srgb,var(--result-color,#52f3ff) 38%,transparent),inset 0 0 25px #4aeaff12;transform:translateY(0);opacity:1;transition:transform .35s cubic-bezier(.2,1.2,.3,1),opacity .25s}.hidden-result{transform:translateY(130%);opacity:0;pointer-events:none}.result-icon{width:48px;height:48px;margin:-44px auto 8px;display:grid;place-items:center;border-radius:50%;background:var(--result-color,#52f3ff);color:#081126;font-size:27px;font-weight:1000;box-shadow:0 0 25px var(--result-color,#52f3ff)}.round-result h2{margin:3px 0;font-size:28px;letter-spacing:.08em}.round-result p{margin:8px 0;color:#8390b7;font-size:9px;letter-spacing:.1em}.round-result p b{color:white}.round-result>i{display:block;height:4px;border-radius:4px;background:#303653;overflow:hidden}.round-result>i>b{display:block;width:100%;height:100%;background:var(--result-color,#52f3ff);transform-origin:left;animation:resultTimer 1.8s linear forwards}@keyframes resultTimer{to{transform:scaleX(0)}}
.profile-card{padding:26px 18px;border:1px solid #53eaff66;border-radius:20px;background:#141836;display:grid;gap:24px}.big-avatar{width:100px;height:100px;margin:auto;display:grid;place-items:center;border-radius:50%;font-size:28px;font-weight:1000;background:linear-gradient(135deg,#43eaff,#8145ff);box-shadow:0 0 30px #42eaff66}.profile-card label{display:grid;gap:8px;font-size:9px;color:#7eefff;font-weight:900}.profile-card input{border:1px solid #55618a;border-radius:10px;padding:13px;background:#090c25;color:white;font-size:16px;text-transform:uppercase;outline:none}.profile-card input:focus{border-color:#49eaff}
.cloud-status{text-align:center;font-size:9px;font-weight:900;letter-spacing:.12em;color:#8993b8}.cloud-status.online{color:#55f0b8;text-shadow:0 0 10px #39eaa5}.danger{border-color:#ff4f8688;color:#ff7da6}.hidden-auth{display:none!important}.auth-card{padding:26px 18px;border:1px solid #53eaff66;border-radius:20px;background:#141836;display:grid;gap:14px;text-align:center}.auth-glow{width:74px;height:74px;margin:auto;display:grid;place-items:center;border-radius:22px;transform:rotate(45deg);background:linear-gradient(135deg,#43eaff,#8145ff);font-size:20px;font-weight:1000;box-shadow:0 0 28px #42eaff66}.auth-card h3{margin:7px 0 0}.auth-card p{margin:0;color:#7f89ad;font-size:11px;line-height:1.5}.auth-card label{display:grid;gap:7px;text-align:left;color:#7eefff;font-size:9px;font-weight:900}.auth-card input{border:1px solid #4b557d;border-radius:11px;padding:13px;background:#090c25;color:white;outline:none}.auth-card input:focus{border-color:#49eaff;box-shadow:0 0 12px #49eaff22}.auth-message{min-height:16px;color:#ff7ea8;font-size:10px}.auth-message.success{color:#62f1bd}.text-btn{border:0;background:none;color:#7884aa;font-size:9px;font-weight:900;letter-spacing:.08em;padding:8px}
.welcome-panel{z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding-inline:24px}.welcome-logo{width:100%;margin:0;text-align:center}.welcome-logo b{font-size:54px}.welcome-card{width:min(100%,410px);margin:0 auto;padding:28px 24px;border:1px solid #54eaff70;border-radius:22px;background:linear-gradient(145deg,#171c3cf2,#100f2df2);display:grid;justify-items:stretch;gap:15px;text-align:center;box-shadow:0 0 35px #42eaff25,inset 0 0 25px #7f42ff16}.welcome-card h2{margin:0;font-size:20px}.welcome-card p{max-width:330px;margin:0 auto;color:#7f89ad;font-size:11px;line-height:1.5}.welcome-card label{width:100%;display:grid;gap:7px;text-align:center;color:#7eefff;font-size:9px;font-weight:900}.welcome-card input{width:100%;border:1px solid #4b557d;border-radius:12px;padding:14px;background:#090c25;color:white;text-align:center;font-size:17px;font-weight:900;text-transform:uppercase;outline:none}.welcome-card input:focus{border-color:#4ceaff;box-shadow:0 0 15px #42eaff33}.auth-divider{width:100%;height:1px;background:#343957;position:relative;margin:6px 0}.auth-divider span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:0 10px;background:#131532;color:#68739a;font-size:8px}.google-btn{width:100%;min-height:52px;padding:11px 18px;border:1px solid #d9dce5;border-radius:14px;background:#fff;color:#252a36;display:flex;align-items:center;justify-content:center;gap:12px;font-size:11px;font-weight:900;letter-spacing:.045em;box-shadow:0 5px 20px #0005;transition:transform .15s,box-shadow .15s}.google-btn:active{transform:scale(.98);box-shadow:0 2px 8px #0005}.google-mark{display:block;flex:0 0 25px;width:25px;height:25px}

@media (max-height: 690px) {
  .game-shell { padding-top: 10px; }
  .controls { min-height: 58px; }
  .control-btn span { font-size: 26px; }
}

/* Main menu — focused glass HUD with ambient neon motion */
.home-screen{isolation:isolate;background:linear-gradient(180deg,#090b27 0%,#07091d 100%);padding-top:78px;gap:11px;overflow:hidden}
.home-screen::before{content:"";position:absolute;z-index:-2;inset:0;opacity:.48;pointer-events:none;background:radial-gradient(circle at 18% 28%,#32eaff44 0 4%,transparent 22%),radial-gradient(circle at 82% 38%,#ff36cd40 0 5%,transparent 24%),radial-gradient(circle at 48% 86%,#754cff40 0 7%,transparent 28%);filter:blur(18px);animation:menuAurora 9s ease-in-out infinite alternate}
.home-screen::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.24;background-image:linear-gradient(115deg,transparent 20%,#48efff33 20.4%,transparent 21%),linear-gradient(65deg,transparent 68%,#ff4fd12b 68.4%,transparent 69%),radial-gradient(ellipse at 50% 110%,transparent 48%,#793dff55 49%,transparent 50%);background-size:180% 180%,170% 170%,100% 100%;animation:menuLines 11s linear infinite}
.home-screen>*{position:relative;z-index:1}
.home-screen .logo{margin-bottom:30px;filter:drop-shadow(0 0 10px #48eaff88)}
.home-screen .logo span{font-size:18px;letter-spacing:.72em;margin-left:.72em}.home-screen .logo b{font-size:58px;line-height:.84}.home-screen .logo i{font-size:8px;letter-spacing:.36em;color:#ff6edc}
.home-screen .league-card{min-height:92px;margin-top:24px;padding:13px 17px;border-color:#64ecff8a;background:linear-gradient(120deg,#17203ccf,#17132fc4);backdrop-filter:blur(14px);box-shadow:0 12px 34px #0005,inset 0 0 24px #4defff0b}
.home-screen .league-card h2{font-size:17px;letter-spacing:.015em}.home-screen .league-card p{margin-top:5px}.home-screen .rank-arrow{width:29px;height:29px;display:grid;place-items:center;border:1px solid #54eaff77;border-radius:50%;font-size:20px}
.home-screen .home-stats{gap:6px}.home-screen .home-stats>div{background:#11162fc7;backdrop-filter:blur(10px);border-color:#58608455;padding:10px 5px}.home-screen .home-stats>div:nth-child(2){border-color:#ff56d455}.home-screen .home-stats>div:nth-child(3){border-color:#785cff55}
.home-screen #playBtn{margin-top:58px;background:linear-gradient(100deg,#48eaff,#70baff 58%,#9b6cff);color:#071126;box-shadow:0 0 18px #46eaff70,0 10px 30px #0005;letter-spacing:.17em}
.home-screen #playBtn::before{content:"▶";margin-right:10px;font-size:10px}.home-screen #homeRankBtn{background:#10142dc7;backdrop-filter:blur(10px);border-color:#8a5cff77}.home-screen .season{color:#7781a6;letter-spacing:.19em}
@keyframes menuAurora{0%{transform:translate3d(-3%,-2%,0) scale(1)}50%{transform:translate3d(4%,3%,0) scale(1.08)}100%{transform:translate3d(-1%,7%,0) scale(.98)}}
@keyframes menuLines{0%{background-position:0 0,0 0,0 0}100%{background-position:120% -80%, -110% 90%,0 0}}
@media (prefers-reduced-motion:reduce){.home-screen::before,.home-screen::after{animation:none}}
@media (max-height:690px){.home-screen{overflow-y:auto;overflow-x:hidden;padding-top:42px}.home-screen .league-card{margin-top:10px}.home-screen #playBtn{margin-top:28px}}
.daily-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.daily-actions button{min-height:58px;border:1px solid #4beaff66;border-radius:14px;background:#111630cc;color:white;display:grid;grid-template-columns:34px 1fr;text-align:left;align-items:center;padding:9px 12px}.daily-actions button:last-child{border-color:#ff53ce66}.daily-actions span{grid-row:1/3;font-size:21px;color:#5af1ff;text-shadow:0 0 12px #4aeaff}.daily-actions button:last-child span{color:#ff68dc;text-shadow:0 0 12px #ff42d1}.daily-actions small{font-size:7px;color:#7884a8}.daily-actions b{font-size:10px;letter-spacing:.07em}.home-screen #playBtn{margin-top:24px}
.reward-hero,.challenge-hero{padding:24px 20px;border:1px solid #55eaff66;border-radius:20px;background:linear-gradient(145deg,#17213dcc,#17112fcc);text-align:center;box-shadow:0 0 28px #43eaff20}.reward-hero b,.reward-hero span{display:block}.reward-hero b{font-size:28px;color:#68f3ff}.reward-hero span{margin-top:6px;color:#8490b4;font-size:10px}.reward-calendar{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.reward-day{padding:13px 5px;border:1px solid #3e466b;border-radius:12px;background:#11152e;text-align:center}.reward-day small,.reward-day b{display:block}.reward-day small{font-size:7px}.reward-day b{margin-top:7px;color:#ff61d8;font-size:11px}.reward-day.active{border-color:#55efff;box-shadow:0 0 15px #42eaff35}.reward-day.claimed{opacity:.48}.panel-note{text-align:center;min-height:20px;color:#76efbe;font-size:10px}.challenge-hero{margin-bottom:16px}.challenge-hero h2{margin:7px 0}.challenge-hero p{color:#8490b4;font-size:11px;line-height:1.5}.challenge-prize{margin-top:18px;padding:12px;border-radius:12px;background:#0c1028;border:1px solid #ff51d966}.challenge-prize span,.challenge-prize b{display:block}.challenge-prize span{font-size:7px;color:#8a94b5}.challenge-prize b{margin-top:4px;color:#ff6bdd}.daily-board-title{margin:24px 0 10px;font-size:10px;letter-spacing:.12em;color:#79efff}
.cup-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.cup-card{padding:14px 8px;border:1px solid #505979;border-radius:15px;background:linear-gradient(145deg,#171b35,#101328);color:white;display:grid;gap:4px;text-align:center;transition:.2s}.cup-card span{font-size:27px;filter:drop-shadow(0 0 8px currentColor)}.cup-card b{font-size:11px;letter-spacing:.1em}.cup-card small{font-size:7px;color:#7f89aa}.cup-card i{font-size:8px;font-style:normal;margin-top:4px}.cup-card.bronze{color:#e49364}.cup-card.silver{color:#cbeaff}.cup-card.gold{color:#ffd85c}.cup-card.diamond{color:#71f5ff}.cup-card.active{transform:translateY(-2px);border-color:currentColor;box-shadow:0 0 20px color-mix(in srgb,currentColor 35%,transparent),inset 0 0 18px color-mix(in srgb,currentColor 10%,transparent)}.selected-cup{margin:13px 0 0;padding:11px 14px;border:1px solid #ff54d566;border-radius:12px;background:#15122c;display:flex;justify-content:space-between;align-items:center}.selected-cup span{font-size:10px;font-weight:900;color:#74efff}.selected-cup b{font-size:9px;color:#ff6ddd}
.cup-badge{margin:-8px auto 0;padding:8px 13px;border:1px solid #74f5ff;border-radius:18px;background:linear-gradient(90deg,#13324a,#302052);color:#c9fbff;font-size:9px;font-weight:1000;letter-spacing:.08em;box-shadow:0 0 18px #69efff55}
.cup-card.locked{opacity:.42;filter:grayscale(.55)}.cup-card.locked::after{content:"LOCKED";font-size:7px;letter-spacing:.12em;color:#ff7ea8}.cup-badge.bronze{border-color:#e49364;color:#ffc09b}.cup-badge.silver{border-color:#cbeaff;color:#edfbff}.cup-badge.gold{border-color:#ffd85c;color:#ffeaa0}.cup-badge.diamond{border-color:#74f5ff;color:#c9fbff}
.decision-modal{position:absolute;z-index:30;inset:0;display:grid;place-items:center;padding:24px;background:#05071bd9;backdrop-filter:blur(10px)}.decision-modal.hidden{display:none}.decision-card{width:min(360px,100%);box-sizing:border-box;padding:28px 22px 22px;border:1px solid #49eaff;border-radius:24px;background:linear-gradient(145deg,#1b2348f5,#0b0d25f8);text-align:center;box-shadow:0 0 45px #43efff38,inset 0 0 30px #ff38db12}.decision-card small{color:#73f4ff;font-size:9px;font-weight:900;letter-spacing:.24em}.decision-card h2{margin:8px 0;color:#f3fbff;font-size:24px;letter-spacing:.04em}.decision-card p{color:#97a3c8;font-size:11px;line-height:1.6}.decision-icon{width:58px;height:58px;margin:-58px auto 14px;display:grid;place-items:center;border-radius:50%;background:#ff3d9f;color:#fff;font-size:29px;box-shadow:0 0 30px #ff3d9f}.update-icon{background:#4cecff;color:#071027;box-shadow:0 0 30px #4cecff}.decision-actions{display:grid;gap:10px;margin-top:18px}.decision-actions button{width:100%}.decision-message{min-height:18px;margin:12px 0 0!important;color:#ff8fcf!important}.update-modal{position:fixed}
.decision-actions .hidden-action{display:none}
.update-version{display:inline-block;margin:0 0 4px;padding:6px 10px;border:1px solid #4cecff66;border-radius:999px;background:#071b30;color:#7bf5ff;font-size:9px;letter-spacing:.12em;box-shadow:0 0 14px #4cecff2d}
.analytics-consent{z-index:45}.analytics-consent .decision-card{border-color:#9d6cff;box-shadow:0 0 45px #744cff42,inset 0 0 30px #43efff12}.analytics-icon{background:linear-gradient(135deg,#49eaff,#9b51ff);color:#071027;box-shadow:0 0 30px #765cff}.analytics-consent a{display:inline-block;margin-top:16px;color:#78efff;font-size:8px;font-weight:900;letter-spacing:.13em;text-decoration:none}.analytics-consent a:hover{text-decoration:underline}
.home-settings-btn{position:absolute!important;z-index:3!important;right:20px;top:20px;width:42px!important;height:42px;border:1px solid #59eaff66;border-radius:50%;background:#121735d9;color:var(--cyan);font-size:20px;box-shadow:0 0 16px color-mix(in srgb,var(--cyan) 28%,transparent),inset 0 0 12px #45eaff16;transition:.2s}.home-settings-btn:active{transform:rotate(35deg) scale(.92)}
.primary-btn,.home-screen #playBtn{background:linear-gradient(100deg,var(--cyan),color-mix(in srgb,var(--cyan) 55%,var(--pink)));box-shadow:0 0 24px color-mix(in srgb,var(--cyan) 48%,transparent)}.home-screen #playBtn{color:#071126}.title span,.score-gems span{color:var(--cyan);text-shadow:0 0 8px color-mix(in srgb,var(--cyan) 70%,transparent)}
.settings-card{padding:22px 18px;border:1px solid #53eaff55;border-radius:22px;background:linear-gradient(145deg,#171c3ee8,#0d102de8);display:grid;gap:18px;box-shadow:inset 0 0 28px #764cff12}.settings-card>label{display:grid;gap:8px;color:#7eefff;font-size:9px;font-weight:900;letter-spacing:.1em}.settings-card input{width:100%;border:1px solid #4b557d;border-radius:12px;padding:14px;background:#090c25;color:#fff;text-align:center;font-size:17px;font-weight:1000;text-transform:uppercase;outline:none}.settings-card input:focus{border-color:var(--cyan);box-shadow:0 0 15px color-mix(in srgb,var(--cyan) 28%,transparent)}.setting-toggle{width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:11px 13px;border:1px solid #48557d;border-radius:14px;background:#101532;color:#fff;text-align:left}.setting-toggle>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--cyan) 18%,#101532);color:var(--cyan);font-size:20px}.setting-toggle>div{display:grid;gap:2px}.setting-toggle small{font-size:7px;color:#7885aa}.setting-toggle b{font-size:12px}.setting-toggle>i{padding:6px 9px;border-radius:12px;background:#45e7a333;color:#66f2b6;font-size:8px;font-style:normal;font-weight:1000}.setting-toggle.off>span{color:#707999;background:#20243b}.setting-toggle.off>i{background:#ff497322;color:#ff7997}.theme-title{display:grid;gap:3px;text-align:center}.theme-title b{font-size:13px;letter-spacing:.12em}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.theme-grid button{min-height:72px;padding:9px 5px;border:1px solid #3f486b;border-radius:13px;background:#0d112b;color:#8d97b8;display:grid;place-items:center;gap:6px;font-size:8px;letter-spacing:.08em}.theme-grid button i{width:40px;height:22px;border-radius:12px;background:linear-gradient(110deg,var(--a),var(--b));box-shadow:0 0 12px color-mix(in srgb,var(--a) 45%,transparent);transform:skewX(-12deg)}.theme-grid button.active{border-color:var(--cyan);color:#fff;background:color-mix(in srgb,var(--cyan) 10%,#0d112b);box-shadow:0 0 16px color-mix(in srgb,var(--cyan) 25%,transparent)}.settings-message{min-height:13px;margin:-4px 0;color:#6ff2bd;text-align:center;font-size:9px;font-weight:900;letter-spacing:.08em}
