*{box-sizing:border-box}
:root{--gold:#ffd166;--cyan:#7bdff2;--pink:#ff8fab;--violet:#c792ea}
body{margin:0;font-family:system-ui,-apple-system,Arial,sans-serif;color:#eef2ff;background:radial-gradient(1200px 600px at 80% -10%,#2b1b69 0%,transparent 55%),radial-gradient(900px 500px at 0% 0%,#0e3a5c 0%,transparent 50%),#070b22;min-height:100vh}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes glowPulse{0%,100%{box-shadow:0 0 18px rgba(255,209,102,.25)}50%{box-shadow:0 0 34px rgba(255,209,102,.55)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes shimmer{from{background-position:-200% 0}to{background-position:200% 0}}
header{padding:22px 18px 14px;background:linear-gradient(135deg,rgba(19,26,58,.95),rgba(43,27,105,.85));border-bottom:1px solid #2a356e}
h1{margin:0;font-size:34px;letter-spacing:2px;animation:fadeUp .5s ease}
h1 span{background:linear-gradient(90deg,var(--gold),var(--pink),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.tag{color:#cdd5ff;max-width:900px}
nav{display:flex;gap:8px;padding:12px;background:rgba(10,14,40,.9);flex-wrap:wrap;position:sticky;top:0;z-index:5;backdrop-filter:blur(8px)}
button{background:linear-gradient(135deg,#ffd166,#ff9e5e);border:0;padding:10px 16px;border-radius:999px;font-weight:800;cursor:pointer;color:#1a1200;transition:transform .15s,box-shadow .15s}
button:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(255,209,102,.35)}
button.ghost{background:transparent;color:#fff;border:1px solid #556}
button.active{background:linear-gradient(135deg,#7bdff2,#c792ea);color:#0b1026}
.tab{display:none;padding:18px;animation:fadeUp .35s ease}.tab.active{display:block}
canvas{background:#050814;border:1px solid #334;width:100%;max-width:820px;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.5)}
.towers{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid #2a356e;border-radius:16px;padding:14px;margin:12px 0;animation:fadeUp .4s ease}
.card:hover{border-color:#7bdff2}
input,select{padding:9px;border-radius:8px;border:1px solid #445;background:#0b1026;color:#fff}
label{display:block;margin:8px 0}.hint{color:#b8c0e8}
.wallet{margin-top:12px}#walletInfo{margin-top:8px;word-break:break-all;color:#d6dbff}
.heroGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.heroCard{border-radius:18px;padding:14px;background:linear-gradient(160deg,#1b2352,#0d1233);border:1px solid #334;animation:floaty 5s ease-in-out infinite;transition:transform .2s}
.heroCard:hover{transform:translateY(-4px) scale(1.02);border-color:var(--gold)}
.heroCard svg{width:100%;height:150px;display:block;border-radius:12px;background:radial-gradient(circle at 50% 35%,#2b3a8f,#070b22)}
.heroImg{width:100%;height:190px;object-fit:cover;object-position:top center;display:block;border-radius:12px;background:#1a2038}
.heroBanner{width:100%;height:150px;object-fit:cover;display:block;border-radius:12px;margin-bottom:10px}
.towerBtn{display:inline-flex;align-items:center;gap:8px}
.towerBtn img{width:34px;height:34px;object-fit:contain}
.towerBtn span{white-space:nowrap}
.rarity{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}
.statbar{height:8px;background:#222a55;border-radius:99px;overflow:hidden;margin:4px 0}
.statbar i{display:block;height:100%;background:linear-gradient(90deg,#7bdff2,#ffd166)}
.podium{display:flex;gap:10px;align-items:end;margin:12px 0}.podium div{flex:1;text-align:center;padding:14px;border-radius:14px;background:#151c44}
.podium div:first-child{animation:glowPulse 2.5s infinite}
.feeBox{background:linear-gradient(90deg,rgba(255,209,102,.18),rgba(123,223,242,.12));border:1px solid var(--gold);border-radius:12px;padding:12px}
.shine{background:linear-gradient(90deg,#ffd166 20%,#fff 40%,#ffd166 60%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 3s linear infinite}
