:root{--bg1: #0f0b1d;--bg2: #2d1f4e;--ink: #f6f1ff;--muted: #bfb3dd;--card: rgba(230, 220, 255, .08);--card-line: rgba(210, 190, 255, .2);--accent: #ffb347;--accent2: #ffd54a;--gem: #5ee7ff;--danger: #ff6b5a;--banner-h: 0px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:radial-gradient(120% 90% at 50% 0%,var(--bg2),var(--bg1));user-select:none;-webkit-user-select:none;overscroll-behavior:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}#app{height:100%}.screen{display:flex;flex-direction:column;height:100%;max-width:560px;margin:0 auto;padding:calc(var(--safe-area-inset-top, env(safe-area-inset-top)) + 10px) 16px calc(var(--safe-area-inset-bottom, env(safe-area-inset-bottom)) + var(--banner-h) + 10px)}.bar{display:flex;align-items:center;justify-content:space-between;gap:8px}.bar h1{margin:0;font-size:1.2rem;flex:1;text-align:center}.wallet{display:flex;gap:6px}.pill{display:inline-flex;align-items:center;gap:6px;min-width:44px;height:40px;padding:0 12px;border-radius:999px;background:var(--card);border:1px solid var(--card-line);font-size:1.05rem;justify-content:center;font-weight:700}.pill b{font-variant-numeric:tabular-nums}.pill .plus{font-weight:900;color:var(--accent2)}.coin{display:inline-block;flex:none;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b0,#f6b915 55%,#c78100);box-shadow:inset 0 -2px #0003;vertical-align:-3px}.gem{display:inline-block;flex:none;width:16px;height:16px;background:linear-gradient(135deg,#e0fbff,var(--gem) 50%,#1f9fd6);clip-path:polygon(50% 0,100% 40%,50% 100%,0 40%);vertical-align:-2px}.home{gap:12px;overflow-y:auto}.logo{text-align:center;margin:3vh 0 1vh}.logo h1{font-size:3rem;margin:8px 0 0;font-weight:900;letter-spacing:.01em;background:linear-gradient(180deg,#fff3a8,#ffcf4a 50%,#ff7a3d);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 0 #5a1f6e)}.logo p{margin:0;color:var(--muted);font-weight:800;letter-spacing:.25em;text-transform:uppercase;font-size:.8rem}.logo-art{position:relative;width:150px;height:104px;margin:0 auto}.logo-art .mon{position:absolute;left:30px;top:4px;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#a9f0a4,#6fd16a 60%,#2f7d3a);box-shadow:0 0 0 6px #2f7d3a80,0 10px 30px #0006;animation:wobble 2.4s ease-in-out infinite}.logo-art .mon i{position:absolute;background:#fff;border-radius:50%}.logo-art .e1,.logo-art .e2{top:26px;width:20px;height:20px;box-shadow:inset 0 -6px 0 3px #1b1424}.logo-art .e1{left:20px}.logo-art .e2{right:20px}.logo-art .m{left:30px;top:56px;width:32px;height:14px;border-radius:0 0 20px 20px!important;background:#2a0f1c!important}.logo-art .lw{position:absolute;right:-6px;bottom:-6px;width:70px;height:70px;animation:stab 1.2s ease-in-out infinite alternate}@keyframes wobble{50%{transform:rotate(-8deg) scale(1.03)}}@keyframes stab{to{transform:translate(-6px,-6px)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:16px;font-weight:800;font-size:1.05rem;background:linear-gradient(180deg,#ffc566,#ff9a2e);color:#3a1d05;box-shadow:0 4px #b4600f}.btn:active{transform:translateY(2px);box-shadow:0 2px #b4600f}.btn.ghost{background:var(--card);border:1px solid var(--card-line);box-shadow:none;color:var(--ink)}.btn.gold{background:linear-gradient(180deg,#fff09a,#ffd54a);box-shadow:0 4px #b78f10}.btn.play{flex-direction:column;gap:0;min-height:80px;font-size:1.15rem;border-radius:22px;animation:breathe 2.4s ease-in-out infinite}.btn.play b{font-size:1.6rem;line-height:1.1}.btn.play small{font-size:.8rem;opacity:.75}.btn.play.boss{background:linear-gradient(180deg,#ff8a6b,#e0442f);color:#fff;box-shadow:0 4px #8f2416}.btn.play.slim{min-height:56px;flex-direction:row;width:100%;animation:none}@keyframes breathe{50%{transform:scale(1.03)}}.card{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:16px;background:var(--card);border:1px solid var(--card-line);text-align:left}.card small{color:var(--muted)}.card .ti{font-size:1.6rem;flex:none}.card>span:nth-child(2){flex:1}.card.off{opacity:.6}.card.glow{border-color:#ffd54ab3;box-shadow:0 0 18px #ffd54a40}.card.offer{background:linear-gradient(90deg,#ffb34738,#ff5aa02e)}.card .price{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-weight:800;color:var(--accent2);white-space:nowrap}.price.poor{color:var(--muted);opacity:.7}.price.lock{color:var(--muted);font-size:.85rem}.price.big{font-size:1.6rem;justify-content:center}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.card.tile{flex-direction:column;gap:2px;padding:12px 6px;text-align:center}.card.tile>span:nth-child(2){flex:none}.dot{position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--danger);box-shadow:0 0 0 2px var(--bg1)}.btn .dot{position:static;display:inline-block}.foot{margin-top:auto;text-align:center;color:var(--muted);font-size:.8rem}.small{font-size:.85rem;color:var(--muted)}.center{text-align:center}.danger{color:var(--danger)}.chest-ico{--c1: #9a6232;--c2: #6b3f1c;--band: #ffd54a;position:relative;display:inline-block;flex:none;width:30px;height:22px;border-radius:7px 7px 4px 4px;background:linear-gradient(180deg,var(--c1) 0 42%,var(--band) 42% 52%,var(--c2) 52%);box-shadow:inset 0 -3px #00000040;vertical-align:-5px}.chest-ico i{position:absolute;left:50%;top:34%;width:7px;height:9px;margin-left:-3.5px;border-radius:2px;background:var(--band);box-shadow:0 0 0 1px #00000040}.chest-ico.silver{--c1: #b9c4d6;--c2: #7d8aa1;--band: #5ee7ff}.chest-ico.gold{--c1: #ffd54a;--c2: #d39a12;--band: #ff5a8a}.chest-ico.big{width:96px;height:70px;border-radius:20px 20px 10px 10px}.chest-ico.big i{width:20px;height:26px;margin-left:-10px;border-radius:5px}.hud-loot .chest-ico{width:16px;height:12px;border-radius:4px 4px 2px 2px;vertical-align:-1px}.hud-loot .chest-ico i{width:4px;height:5px;margin-left:-2px}.hud-loot .coin,.hud-loot .gem{width:12px;height:12px}.list{gap:10px}.list .scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-bottom:8px}.list h3{margin:8px 0 0;font-size:1rem}.list h3 small{color:var(--muted);font-weight:400;font-size:.75rem}.card.up .up-text{flex:1;display:flex;flex-direction:column;gap:2px}.card.up .eff{color:var(--ink)}.card.up .eff b{color:var(--accent2)}.card.up.ok{border-color:#ffd54a8c}.card.up.locked{opacity:.55}.odds{padding:10px 12px;border-radius:14px;background:#0003;font-size:.85rem}.odds summary{font-weight:700;cursor:pointer}.odds table{width:100%;margin:8px 0;border-collapse:collapse}.odds th,.odds td{padding:4px 2px;text-align:left;border-bottom:1px solid var(--card-line)}.odds .chest-ico{width:16px;height:12px;border-radius:4px 4px 2px 2px;vertical-align:-1px}.odds .chest-ico i{width:4px;height:5px;margin-left:-2px}.list-foot{padding-top:4px}.fight{padding-left:6px;padding-right:6px;gap:6px;position:relative}.hud{display:flex;align-items:center;gap:8px;padding:0 4px}.hud-mid{flex:1;min-width:0}.hud-mid small{color:var(--muted)}.meter{height:8px;margin-top:4px;border-radius:99px;background:#00000059;overflow:hidden}.meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ffb347,#ffd54a);transition:width .3s ease}.meter.bonus i{width:100%;background:linear-gradient(90deg,#ffe36e,#ffc94a);transition:none}.meter.boss i{width:100%;background:linear-gradient(90deg,#ff6b5a,#ff9a6b)}.hud-loot{display:flex;flex-direction:column;align-items:flex-end;font-size:.78rem;line-height:1.25;font-variant-numeric:tabular-nums}.canvas-wrap{flex:1;min-height:0;position:relative}.fight-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;border-radius:14px}.fight-bar{display:flex;align-items:center;gap:10px;padding:0 6px;min-height:44px;font-weight:800}.heart{font-style:normal;font-size:1.35rem;color:#ff4d6d;text-shadow:0 2px 0 rgba(0,0,0,.35);margin-right:2px;transition:transform .2s ease,opacity .2s ease}.heart.lost{opacity:.2;filter:grayscale(1);transform:scale(.8)}.streak{margin-left:auto;color:var(--accent);font-size:.9rem}.streak.hot{color:#ff6b3d;animation:pulse .6s ease-in-out infinite alternate}@keyframes pulse{to{transform:scale(1.08)}}.tip{position:absolute;left:16px;right:16px;top:40%;margin:0;padding:12px 14px;border-radius:14px;background:#0009;text-align:center;font-weight:700;pointer-events:none;animation:fade .4s ease}.modal-bg,.ad-overlay{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:16px;background:#080412b8;animation:fade .2s ease}@keyframes fade{0%{opacity:0}}.modal,.ad-box{position:relative;width:min(400px,100%);max-height:90vh;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:22px 18px 18px;border-radius:24px;background:linear-gradient(180deg,#45306e,#1e1438);border:1px solid var(--card-line);text-align:center;box-shadow:0 20px 60px #00000080;animation:pop .25s cubic-bezier(.3,1.5,.5,1)}@keyframes pop{0%{transform:scale(.85)}}.modal h2{margin:0}.modal h2 small{font-size:.75rem;color:var(--muted);font-weight:400}.modal p{margin:0}.modal a{color:var(--accent2)}.modal .card{cursor:pointer}.col{display:flex;flex-direction:column;gap:8px;margin-top:6px}.row{display:flex;gap:10px;justify-content:center;margin-top:6px}.row .btn{flex:1}.reward{font-size:1.8rem;font-weight:900;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 16px}.reward span{display:inline-flex;align-items:center;gap:6px}.reward .coin{width:28px;height:28px}.reward .gem{width:24px;height:24px}.chest-pop{font-size:4rem;line-height:1;animation:pop .4s cubic-bezier(.3,1.8,.5,1)}.chest-pop.shake{animation:wobble .9s ease-in-out infinite}@keyframes wobble{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-8deg)}80%{transform:rotate(8deg)}90%{transform:rotate(-4deg)}}.skin-found{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px;border-radius:16px;background:#ffd54a1a;border:1px solid rgba(255,213,74,.4)}.skin-big{width:84px;height:84px}.set-done{margin-top:4px!important;color:var(--accent2);font-weight:800}.confetti{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,#ffd54a 3px,transparent 4px) 10% 10% / 60px 60px,radial-gradient(circle,#5ee7ff 3px,transparent 4px) 40% 30% / 70px 50px,radial-gradient(circle,#ff9a6b 3px,transparent 4px) 70% 20% / 50px 80px;opacity:.35;animation:fall 3s linear infinite;border-radius:24px}.modal>:not(.confetti){position:relative}@keyframes fall{to{background-position:10% 120px,40% 130px,70% 140px}}.ad-tag{align-self:center;padding:2px 10px;border-radius:999px;background:#fff;color:#000;font-weight:800;font-size:.75rem}.mock-banner{position:fixed;left:0;right:0;bottom:0;height:50px;display:grid;place-items:center;background:#eee;color:#555;font-size:.8rem;z-index:5}.mock-banner[hidden]{display:none}.toast{position:fixed;left:50%;bottom:calc(var(--banner-h) + 90px);transform:translate(-50%);z-index:20;padding:10px 16px;border-radius:999px;background:#000c;font-weight:700;white-space:nowrap;animation:fade .2s ease}@media (max-height: 600px){.logo{margin:1vh 0 0}.logo-art{display:none}}.gold-t{color:var(--accent2)}.card.weapon{display:flex;align-items:center;gap:10px;text-align:left}.card.weapon.equipped{border-color:var(--accent2);background:#ffd54a1a}.card.weapon.locked{opacity:.55}.wprev{flex:none;width:56px;height:56px}.bars{display:flex;gap:6px;margin-top:4px}.bars i{position:relative;flex:1;font-style:normal;font-size:.6rem;font-weight:800;color:var(--muted);padding-top:7px}.bars i:before,.bars i:after{content:"";position:absolute;left:0;top:0;height:4px;border-radius:9px}.bars i:before{right:0;background:#00000059}.bars i:after{width:calc(min(1,var(--v))*100%);background:var(--accent)}.skins{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.skin{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:14px;background:var(--card);border:1px solid var(--card-line)}.skin.on{border-color:var(--accent2);box-shadow:0 0 0 2px #ffd54a59}.skin.missing{opacity:.5}.sprev{width:52px;height:52px}.skin .q{display:grid;place-items:center;width:52px;height:52px;font-size:1.6rem;font-weight:900;color:var(--muted)}.skin small{font-size:.72rem}.rar{font-style:normal;text-transform:uppercase;font-weight:800;font-size:.65rem;letter-spacing:.08em}.skin .rar{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%}.rar.common{color:#c9d3df;background:currentColor}.rar.rare{color:#5ec8ff;background:currentColor}.rar.epic{color:#d58bff;background:currentColor}small.rar{background:none!important}.card.weapon .up-text{flex:1;display:flex;flex-direction:column;gap:2px}.fight .tip{top:auto;bottom:120px}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;border-radius:10px;background:#00000040;font-size:.7rem;font-weight:800}.day small{font-size:.6rem;color:var(--muted)}.day .coin,.day .gem{width:14px;height:14px}.day .chest-ico{transform:scale(.7)}.day.got{opacity:.4}.day.now{background:#ffd54a33;box-shadow:0 0 0 2px var(--accent2)}.boss-intro{position:absolute;left:0;right:0;top:22%;display:flex;flex-direction:column;align-items:center;pointer-events:none;animation:boss-in 1.8s ease forwards}.boss-intro small{font-weight:900;letter-spacing:.4em;text-transform:uppercase;color:var(--danger)}.boss-intro b{font-size:2.4rem;font-weight:900;text-shadow:0 4px 0 rgba(0,0,0,.5)}@keyframes boss-in{0%{opacity:0;transform:scale(1.6)}15%,70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.quests{display:flex;flex-direction:column;gap:8px;text-align:left}.quest{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#00000040}.quest.claimed{opacity:.5}.quest .qt{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.qbar{height:6px;border-radius:99px;background:#00000059;overflow:hidden}.qbar i{display:block;height:100%;background:linear-gradient(90deg,#ffb347,#ffd54a)}.quest .price.claim{color:var(--accent2)}@media (prefers-reduced-motion: reduce){.boss-intro{animation-duration:.01s;animation-delay:1.2s}}.quests.trophies{max-height:52vh;overflow-y:auto;overscroll-behavior:contain}.quest .ti{font-size:22px;width:28px;text-align:center}
