*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:#02030a;color:#e8fbff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;touch-action:none}canvas{position:fixed;inset:0;width:100vw;height:100vh;display:block}.hud{position:fixed;inset:0;pointer-events:none;z-index:5}.topbar{pointer-events:auto;position:absolute;top:calc(env(safe-area-inset-top) + 10px);left:12px;right:12px;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid rgba(25,247,255,.32);background:linear-gradient(135deg,rgba(0,12,24,.78),rgba(0,0,0,.64));backdrop-filter:blur(18px);box-shadow:0 0 30px rgba(25,247,255,.16);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px))}.brand{font-size:15px;line-height:1.05;letter-spacing:.22em;font-weight:950;color:#19f7ff;text-shadow:0 0 12px #19f7ff}.sub{margin-top:4px;color:rgba(232,251,255,.68);font-size:10px;letter-spacing:.18em}.stats{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:168px}.stat{padding:6px 7px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);font-size:11px;font-weight:850;white-space:nowrap}.clanBtn,.adsBtn{position:absolute;pointer-events:auto;top:calc(env(safe-area-inset-top) + 108px);right:12px;width:auto;min-height:34px;padding:8px 12px;border:1px solid rgba(255,216,74,.45);background:linear-gradient(180deg,rgba(255,216,74,.18),rgba(255,216,74,.05));color:white;font-weight:900;z-index:9}.adsBtn{right:92px;border-color:rgba(25,247,255,.42);background:rgba(25,247,255,.1)}.panel{pointer-events:auto;position:absolute;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 10px);border:1px solid rgba(25,247,255,.32);background:linear-gradient(180deg,rgba(0,14,25,.82),rgba(0,0,0,.70));backdrop-filter:blur(20px);box-shadow:0 0 34px rgba(25,247,255,.14);padding:12px;max-height:47vh;overflow:hidden;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}.panelHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.title{color:#19f7ff;font-weight:950;letter-spacing:.18em;font-size:15px;text-shadow:0 0 12px rgba(25,247,255,.6)}.desc{color:rgba(232,251,255,.74);font-size:12px;line-height:1.35;margin-top:4px}.badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.badge{border:1px solid rgba(25,247,255,.25);background:rgba(25,247,255,.07);padding:5px 7px;font-size:11px;font-weight:900;color:rgba(232,251,255,.88)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}button,select,input{min-height:42px;color:#e8fbff;background:linear-gradient(180deg,rgba(25,247,255,.16),rgba(25,247,255,.05));border:1px solid rgba(25,247,255,.42);font-weight:900;letter-spacing:.04em;border-radius:0;width:100%;padding:10px}button.gold{border-color:rgba(255,216,74,.48);background:linear-gradient(180deg,rgba(255,216,74,.18),rgba(255,216,74,.05))}button.pink{border-color:rgba(255,43,214,.5);background:linear-gradient(180deg,rgba(255,43,214,.17),rgba(255,43,214,.05))}.toast{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom) + 49vh);padding:9px 13px;border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.75);backdrop-filter:blur(12px);font-size:12px;opacity:0;transition:.25s;white-space:nowrap;pointer-events:none}.toast.show{opacity:1}.modal{position:fixed;inset:0;z-index:30;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.72);backdrop-filter:blur(10px);pointer-events:auto}.modal.show{display:flex}.modalCard{width:min(540px,100%);max-height:84vh;overflow:auto;border:1px solid rgba(25,247,255,.35);background:linear-gradient(180deg,rgba(0,14,25,.96),rgba(0,0,0,.9));box-shadow:0 0 40px rgba(25,247,255,.16);padding:16px}.modalTitle{color:#19f7ff;font-size:18px;font-weight:950;letter-spacing:.18em;margin-bottom:8px}.tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin:10px 0}.tab.active{background:rgba(25,247,255,.24)}.clanItem,.chatMsg{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);padding:10px;margin-top:8px}.clanName{font-weight:950;color:#fff;letter-spacing:.08em}.clanMeta{color:rgba(232,251,255,.65);font-size:12px;margin-top:4px;line-height:1.35}.adSlot{pointer-events:auto;position:absolute;left:12px;right:12px;top:calc(env(safe-area-inset-top) + 150px);border:1px solid rgba(255,216,74,.28);background:linear-gradient(90deg,rgba(255,216,74,.12),rgba(25,247,255,.06));backdrop-filter:blur(10px);padding:8px 10px;font-size:11px;z-index:7}@media(min-width:900px){.topbar{left:24px;right:24px}.panel{left:24px;width:430px;right:auto}.stats{grid-template-columns:1fr 1fr 1fr;min-width:260px}.brand{font-size:20px}.clanBtn{right:24px;top:120px}.adsBtn{right:110px;top:120px}.adSlot{left:auto;right:24px;top:170px;width:320px}}


/* Alpha 3.1 monetization: responsive ads */
.mobileInterstitial{
  position:fixed;
  inset:0;
  z-index:80;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(10px);
  pointer-events:auto;
}
.mobileInterstitial.show{display:flex}
.mobileInterstitialCard{
  position:relative;
  width:min(420px,94vw);
  min-height:360px;
  border:1px solid rgba(255,216,74,.42);
  background:
    radial-gradient(circle at top,rgba(255,216,74,.20),transparent 34%),
    linear-gradient(180deg,rgba(0,14,25,.98),rgba(0,0,0,.94));
  box-shadow:0 0 44px rgba(255,216,74,.18), inset 0 0 24px rgba(25,247,255,.05);
  padding:18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));
}
.mobileInterstitialLabel{
  font-size:10px;
  letter-spacing:.18em;
  color:rgba(232,251,255,.58);
  text-transform:uppercase;
}
.mobileInterstitialTitle{
  margin-top:20px;
  color:#ffd84a;
  font-size:26px;
  line-height:1.05;
  font-weight:950;
  letter-spacing:.12em;
  text-shadow:0 0 18px rgba(255,216,74,.55);
}
.mobileInterstitialText{
  margin-top:12px;
  color:rgba(232,251,255,.78);
  font-size:14px;
  line-height:1.45;
}
.mobileInterstitialCta{
  margin-top:18px;
  border-color:rgba(255,216,74,.56);
  background:linear-gradient(180deg,rgba(255,216,74,.22),rgba(255,216,74,.06));
}
.mobileInterstitialClose{
  position:absolute;
  right:10px;
  top:10px;
  width:42px;
  min-height:34px;
  padding:0;
  border-radius:0;
  background:rgba(0,0,0,.42);
}
.mobileInterstitialClose.locked{
  opacity:.55;
  pointer-events:none;
}
.mobileInterstitialCountdown{
  position:absolute;
  right:58px;
  top:17px;
  color:rgba(232,251,255,.66);
  font-size:11px;
}
.desktopAdRail{
  display:none;
}
@media(min-width:740px){
  .mobileInterstitial{display:none!important}
  .desktopAdRail{
    pointer-events:auto;
    display:block;
    position:absolute;
    right:24px;
    top:220px;
    width:320px;
    border:1px solid rgba(255,216,74,.28);
    background:linear-gradient(180deg,rgba(255,216,74,.10),rgba(25,247,255,.05));
    backdrop-filter:blur(12px);
    padding:12px;
    font-size:12px;
    z-index:8;
  }
  .desktopAdRail b{color:#ffd84a}
}
@media(max-width:739px){
  .adSlot{display:none}
}

/* QRX Generals music player */
.musicPanel{
  position:absolute;
  pointer-events:auto;
  left:12px;
  top:calc(env(safe-area-inset-top) + 198px);
  width:min(320px,calc(100vw - 24px));
  z-index:10;
  border:1px solid rgba(25,247,255,.30);
  background:linear-gradient(180deg,rgba(0,14,25,.84),rgba(0,0,0,.70));
  backdrop-filter:blur(16px);
  box-shadow:0 0 28px rgba(25,247,255,.10);
  padding:10px;
}
.musicTop{display:flex;align-items:center;justify-content:space-between;gap:8px}
.musicTop b{display:block;color:#19f7ff;font-size:13px;letter-spacing:.08em}
.musicTop span{display:block;color:rgba(232,251,255,.62);font-size:11px;margin-top:2px}
.musicMiniBtn{width:36px;min-height:30px;padding:0}
.musicBody{display:block;margin-top:8px}
.musicBody.collapsed{display:none}
.musicControls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.musicControls button{min-height:34px;padding:5px}
.musicToggle{display:flex;gap:6px;align-items:center;font-size:12px;color:rgba(232,251,255,.75);margin:8px 0}
#musicVolume,#musicSelect{width:100%;margin-top:6px}
.musicBody small{display:block;margin-top:6px;color:rgba(232,251,255,.45)}
@media(max-width:739px){
  .musicPanel{top:auto;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 49vh);width:auto}
}
