:root{--bronze:#c8913a;--gold:#e6cc80;--sand:#f3dca0;--infinite:#7a3cff;--rift:#29e0d0;--bg:#0b0a0d;--text:#f6f6f6;--q-common:#fff;--q-rare:#0070dd;--q-epic:#a335ee;--q-legendary:#ff8000}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);touch-action:none;-webkit-user-select:none;user-select:none;margin:0;font-family:Georgia,Times New Roman,serif;overflow:hidden}button{font:inherit;color:inherit}#game{width:100vw;height:100vh;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}.interactive{pointer-events:auto}.hud{text-shadow:0 2px 5px #000;padding:18px 22px;position:absolute;inset:0 0 auto}.hud-top{grid-template-columns:70px 1fr 70px;align-items:start;width:min(620px,100vw - 44px);margin:auto;display:grid}.timer{color:#ffe6a3;letter-spacing:.08em;background:linear-gradient(#140d20dd,#21152aaa);border:1px solid #d6a64f55;border-radius:0 0 14px 14px;justify-self:center;padding:9px 22px;font:800 28px/1 system-ui,sans-serif;box-shadow:0 8px 22px #0008,inset 0 -1px #ffcf5d44}.level-badge{text-align:center;background:radial-gradient(circle,#59401edd,#140d20ee);border:1px solid #d6a64f99;border-radius:50%;place-content:center;width:56px;height:56px;display:grid;box-shadow:0 0 18px #e2a33344}.level-badge small{color:#d8b96e;letter-spacing:.12em;font:700 8px system-ui}.level-badge span{color:#fff1bf;font:800 21px/1.1 system-ui}.sound-controls{justify-self:end;gap:4px;display:flex;position:relative}.sound-settings{color:#efd38a;cursor:pointer;background:#160f22bb;border:1px solid #d6a64f55;border-radius:50%;width:30px;height:30px;margin-top:4px;padding:0;font-size:15px}.sound-panel{z-index:5;color:#f3e3b5;background:#160f22ee;border:1px solid #d6a64f77;border-radius:10px;gap:8px;width:180px;padding:10px 12px;font:600 13px/1.2 system-ui,sans-serif;display:grid;position:absolute;top:44px;right:0}.sound-panel[hidden]{display:none}.sound-panel label{gap:4px;display:grid}.sound-panel input{accent-color:#e0b04f;width:100%}.sound-panel small{color:#a99a86;font-weight:500}.mute{color:#efd38a;cursor:pointer;background:#160f22bb;border:1px solid #d6a64f77;border-radius:50%;width:38px;height:38px;padding:0}.mute.muted{color:#796f7e}.bars{max-width:620px;margin:auto}.bar{background:linear-gradient(#0e0916dd,#170f20cc);border:1px solid #b49a62aa;height:18px;position:relative;overflow:hidden;box-shadow:0 3px 14px #0009}.bar div{height:100%;transition:width .1s}.hpbar{border-radius:8px 8px 0 0}.hpbar .hp-fill{background:linear-gradient(90deg,#912e35,#e04c52);position:absolute;inset:0 auto 0 0;box-shadow:0 0 12px #ff394c88}.hpbar .hp-lag{background:#ffca5b;position:absolute;inset:0 auto 0 0}.hpbar span{text-align:center;font:700 12px/16px system-ui;position:absolute;inset:0}.xpbar{border-top:0;border-radius:0 0 8px 8px;height:9px}.xpbar div{background:linear-gradient(90deg,#168c9d,#32e2df);box-shadow:0 0 12px #35fff4}.xpbar.flash{animation:.24s ease-out xp-flash}.boss-bar{text-align:center;width:min(520px,100vw - 40px);margin:12px auto 0;animation:.5s ease-out boss-arrive}.boss-bar[hidden]{display:none}.boss-name{color:#e9b8ff;letter-spacing:.22em;text-transform:uppercase;text-shadow:0 0 10px #a335ee,0 2px 4px #000;margin-bottom:4px;font:700 12px system-ui;display:block}.boss-bar.final .boss-name{color:#ffc6f0;text-shadow:0 0 12px #ff3cc8,0 2px 4px #000}.boss-track{background:#120a1ddd;border:1px solid #b184ff99;border-radius:6px;height:12px;position:relative;overflow:hidden;box-shadow:0 0 16px #7a3cff55,0 3px 12px #0009}.boss-track div{position:absolute;inset:0 auto 0 0}.boss-lag{background:#f1d9ff}.boss-fill{background:linear-gradient(90deg,#5b1fb0,#a335ee 60%,#d36bff);box-shadow:0 0 10px #c86bff}.boss-bar.final .boss-fill{background:linear-gradient(90deg,#7a1080,#d62fb2 60%,#ff6be0)}@keyframes boss-arrive{0%{opacity:0;transform:translateY(-10px)scale(.96)}}.kill-panel{color:#d8c89c;background:#110c19a8;border:1px solid #a9854638;border-radius:20px;width:-moz-fit-content;width:fit-content;margin:9px auto 0;padding:5px 12px;font:700 12px system-ui}.kill-panel span{color:#fff0b4;font-size:14px}.kill-panel.tick{animation:.2s ease-out kill-tick}.aspect{color:#d8c89c;cursor:pointer;background:#160f22bb;border:1px solid #d6a64f77;border-radius:20px;padding:8px 12px;font:700 11px system-ui;position:absolute;top:90px;right:22px}.aspect.ready{color:#fff0b4;border-color:var(--gold);animation:.8s infinite alternate aspect-ready;box-shadow:0 0 18px #e6cc8077}@keyframes aspect-ready{to{transform:scale(1.06)}}.chest-panel{min-width:330px;box-shadow:0 0 55px #f4c35077}.shop-items{grid-template-columns:repeat(2,1fr);gap:8px;margin:18px 0;display:grid}.shop-items button small{color:var(--gold);margin-top:4px;display:block}.slots{justify-content:center;gap:16px;margin:24px 0;display:flex}.slots b{color:#ffd56c;background:#100b16;border:1px solid #d6a64f;place-items:center;width:64px;height:76px;font-size:34px;display:grid}.hud-stats{text-align:center;color:var(--gold);letter-spacing:.04em;margin-top:8px;font:700 15px system-ui}.overlay{background:radial-gradient(circle,#19132b99,#050409dd);place-items:center;padding:20px;display:grid;position:absolute;inset:0}.overlay[hidden],.hud[hidden]{display:none}.panel{text-align:center;background:linear-gradient(145deg,#1d1824f2,#0c0a10f4);border:1px solid #a98546aa;border-radius:18px;max-width:1000px;padding:32px;box-shadow:0 20px 80px #000,0 0 35px #c8913a22}.eyebrow{letter-spacing:.32em;color:#bca978;text-transform:uppercase;font:700 11px system-ui}.title-panel h1.title-logo{width:min(560px,70vw,58vh);margin:18px auto 12px;line-height:0;position:relative}.title-logo img{filter:drop-shadow(0 6px 22px #000000a6)drop-shadow(0 0 18px #9650ff40);-webkit-user-drag:none;width:100%;height:auto;display:block}.title-logo-shimmer{pointer-events:none;mix-blend-mode:overlay;opacity:0;background:linear-gradient(105deg,#0000 38%,#fff6d6d9 49%,#ffd68280 52%,#0000 62%) -160% 0/260% 100% no-repeat;position:absolute;inset:0;-webkit-mask:url(./logo-DGga_UXz.webp) 50%/100% 100% no-repeat;mask:url(./logo-DGga_UXz.webp) 50%/100% 100% no-repeat}.start-screen:not(.awaiting-logo) .title-logo img{animation:5.5s ease-in-out infinite title-logo-glow}.start-screen:not(.awaiting-logo) .title-logo-shimmer{opacity:1;animation:7s ease-in-out 1.2s infinite title-logo-shimmer}.start-screen.awaiting-logo .title-logo img{visibility:hidden}.start-screen.entering .title-panel{animation:.7s ease-out .12s both start-panel-in}.start-screen.entering .fan-disclaimer{animation:.7s ease-out .35s both start-panel-in}@keyframes title-logo-glow{50%{filter:drop-shadow(0 6px 22px #000000a6)drop-shadow(0 0 26px #ffbe5a73)}}@keyframes title-logo-shimmer{0%{background-position:-160% 0}35%,to{background-position:260% 0}}@keyframes start-panel-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.start-screen:not(.awaiting-logo) .title-logo img,.start-screen:not(.awaiting-logo) .title-logo-shimmer{animation:none}.title-logo-shimmer{display:none}.start-screen.awaiting-logo .title-logo img{visibility:visible}}.panel h2{color:var(--gold)}.title-panel p{color:#cbc4d2;font-family:system-ui}.panel button{border:1px solid var(--gold);cursor:pointer;background:#6d4b1e66;border-radius:8px;padding:13px 20px}.screen-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px;display:flex}.panel button.secondary{color:#e9d9aa;background:#1a1422cc;border-color:#a98546aa}.panel button.primary{background:linear-gradient(#8a6226aa,#5a3c15aa);box-shadow:0 0 18px #e6cc8033}.panel button:hover:not(:disabled){filter:brightness(1.2)}.record{color:#ffd56c;text-shadow:0 0 10px #ff9c00}.sand-total{font-weight:700;color:var(--gold)!important}.workshop{z-index:5;align-items:start;overflow-y:auto}.workshop-panel{width:min(900px,100%);margin:auto;padding:26px}.workshop-panel h2{margin:6px 0 4px;font-size:36px}.workshop-sand{color:#cbc4d2;margin:0 0 18px;font:600 15px system-ui}.workshop-sand b{color:#ffd56c;text-shadow:0 0 12px #ff9c0088;font-size:22px}.workshop-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:20px;display:grid}.meta-card{min-height:190px;box-shadow:0 0 14px color-mix(in srgb, var(--quality), transparent 75%);flex-direction:column;align-items:center;gap:4px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;border:2px solid color-mix(in srgb, var(--quality), transparent 35%)!important;background:linear-gradient(#292231,#110e15)!important;padding:14px 10px 12px!important}.meta-card:hover:not(:disabled){box-shadow:0 0 22px color-mix(in srgb, var(--quality), transparent 45%);transform:translateY(-4px)}.meta-card:disabled{cursor:default}.meta-card:disabled:not(.maxed){filter:saturate(.4)brightness(.75)}.meta-card .glyph{font-size:32px;line-height:1.1}.meta-card h3{color:var(--gold);margin:2px 0;font-size:16px}.meta-card p{color:#c9c4cc;flex:1;margin:0;font:13px/1.3 system-ui}.pips{gap:4px;display:flex}.pips i{background:#100b16;border:1px solid #d6a64f99;border-radius:50%;width:10px;height:10px}.pips i.on{background:radial-gradient(circle,#fff3c0,#e6a93a);box-shadow:0 0 6px #ffc34d}.meta-card .price{color:#ffd56c;background:#0c0911;border-radius:12px;margin-top:4px;padding:3px 10px;font:700 13px system-ui}.meta-card.maxed .price{color:#8fe3a4}.meta-card.bought{animation:.5s ease-out meta-bought}@keyframes meta-bought{40%{transform:scale(1.07);box-shadow:0 0 36px #ffd56c}}.chest-rewards p{color:var(--quality);opacity:0;margin:6px 0;font:700 16px system-ui;animation:.4s ease-out forwards card-arrive}.chest-rewards small{letter-spacing:.12em;text-transform:uppercase;opacity:.8;font-size:10px}.slots b.revealed{color:var(--quality);border-color:var(--quality);box-shadow:0 0 18px color-mix(in srgb, var(--quality), transparent 50%);animation:.35s ease-out slot-reveal}@keyframes slot-reveal{0%{transform:rotateX(90deg)}}.levelup h2{margin:8px 0 25px;font-size:38px}.upgrade-cards{justify-content:center;gap:18px;display:flex}.upgrade-card{width:220px;min-height:260px;box-shadow:0 0 22px color-mix(in srgb, var(--quality), transparent 58%);opacity:0;transition:transform .15s;animation:.42s cubic-bezier(.2,.8,.25,1.2) forwards card-arrive;position:relative;overflow:hidden;border:2px solid var(--quality)!important;background:linear-gradient(#292231,#110e15)!important;padding:22px!important}.upgrade-card:nth-child(2){animation-delay:80ms}.upgrade-card:nth-child(3){animation-delay:.16s}.upgrade-card:after{content:"";background:linear-gradient(110deg, transparent 38%, color-mix(in srgb, var(--quality), transparent 70%) 49%, transparent 60%);pointer-events:none;animation:2.4s .7s infinite rarity-shine;position:absolute;inset:-50%;transform:translate(-55%)}.upgrade-card:hover{transform:translateY(-7px)}.rarity-0{--quality:var(--q-common)}.rarity-1{--quality:var(--q-rare)}.rarity-2{--quality:var(--q-epic)}.rarity-3{--quality:var(--q-legendary)}.upgrade-card .key{color:#9e96a6;position:absolute;top:8px;right:10px}.glyph{color:var(--quality);font-size:44px;display:block}.upgrade-card small{text-transform:uppercase;color:var(--quality);letter-spacing:.1em;font:700 11px system-ui}.upgrade-card h3{color:var(--gold);font-size:20px}.upgrade-card p,.hint,.death-panel p,.pause p{color:#c9c4cc;font-family:system-ui}.reroll,.ban{margin:8px;font:700 12px system-ui}.ban{position:absolute;bottom:4px;left:4px;padding:4px!important;font-size:10px!important}.results{grid-template-columns:repeat(4,1fr);gap:12px 22px;margin:25px 10px;display:grid}.results div{flex-direction:column;align-items:center;gap:4px;display:flex}.results b{color:var(--gold);font-size:28px}.results span{color:#aaa;font:12px system-ui}.joystick{background:#0c0a1088;border:2px solid #e6cc8066;border-radius:50%;width:104px;height:104px;margin:-52px;display:none;position:fixed}.joystick-knob{background:#e6cc80aa;border-radius:50%;width:40px;height:40px;position:absolute;top:31px;left:31px;box-shadow:0 0 15px #e6cc80}.pause{background:#08060baa}.pause .panel{padding:22px 55px}.damage-layer{position:absolute;inset:0;overflow:hidden}.damage{color:#fff4cf;text-shadow:0 2px 3px #260e00,0 0 9px #ff9c2e;transform-origin:50%;will-change:transform;font:900 17px system-ui;display:none;position:absolute;top:0;left:0}.damage.crit{color:#ffd44f;text-shadow:0 2px 3px #4d1d00,0 0 15px #ff9c00;font-size:28px}.screen-flash{opacity:0;pointer-events:none;background:radial-gradient(circle,#fff6c8bb,#ff9d1622 55%,#0000 72%);position:absolute;inset:0}.screen-flash.active{animation:.55s ease-out level-flash}@keyframes card-arrive{0%{opacity:0;transform:translateY(50px)scale(.88)rotateX(12deg)}to{opacity:1;transform:none}}@keyframes rarity-shine{0%,55%{transform:translate(-55%)}to{transform:translate(55%)}}@keyframes level-flash{0%{opacity:0}18%{opacity:1}to{opacity:0}}@keyframes xp-flash{50%{filter:brightness(2.4);box-shadow:0 0 20px #5ffff7}}@keyframes kill-tick{50%{color:#fff1a1;transform:scale(1.16)}}@media (max-width:720px){.results{grid-template-columns:repeat(2,1fr)}.panel{padding:22px 16px}.overlay{padding:10px}.upgrade-cards{flex-direction:column;gap:8px}.upgrade-card{text-align:left;grid-template-columns:44px 1fr;grid-template-areas:"glyph rarity""glyph title""glyph text";align-items:center;column-gap:10px;width:100%;min-height:0;display:grid;padding:10px 12px 10px 10px!important}.upgrade-card .glyph{text-align:center;grid-area:glyph;font-size:32px}.upgrade-card small{grid-area:rarity}.upgrade-card h3{grid-area:title;margin:0;font-size:17px}.upgrade-card p{grid-area:text;margin:2px 0 0;font-size:13px}.upgrade-card .ban{inset:6px 30px auto auto}.levelup .panel{padding:16px 12px}.workshop-panel{padding:18px 10px}.workshop-grid{grid-template-columns:repeat(2,1fr);gap:8px}.meta-card{min-height:170px}.meta-card h3{font-size:14px}.meta-card p{font-size:12px}.aspect{top:auto;right:14px;bottom:calc(18px + env(safe-area-inset-bottom));padding:14px 16px;font-size:12px;position:fixed}.levelup h2{font-size:26px}.hud{padding:10px}}.overlay.result-stage{background:linear-gradient(90deg,#0000 28%,#050409bb 70%);justify-items:end;padding-right:max(20px,6vw)}.result-stage .death-panel{background:linear-gradient(145deg,#1d1824dd,#0c0a10e6);max-width:min(560px,58vw)}@media (max-aspect-ratio:1){.overlay.result-stage{background:linear-gradient(#0000 30%,#050409bb 62%);place-items:end center;padding-right:10px}.result-stage .death-panel{max-width:100%}}.loot-arrows{pointer-events:none;position:absolute;inset:0;overflow:hidden}.loot-arrow{width:0;height:0;position:absolute;top:0;left:0}.loot-arrow-head{width:44px;height:44px;transform:rotate(var(--angle,0deg));animation:.9s ease-in-out infinite loot-arrow-pulse;position:absolute;top:-22px;left:-22px}.loot-arrow-head:before{content:"";filter:drop-shadow(0 0 6px #ff9c00)drop-shadow(0 0 2px #fff3c4);border-top:13px solid #0000;border-bottom:13px solid #0000;border-left:22px solid #ffb13b;position:absolute;top:50%;right:-6px;transform:translateY(-50%)}.loot-arrow-icon{color:#ffe1a0;background:radial-gradient(circle,#6b3a0e 0%,#2a1206 75%);border:2px solid #ffb13b;border-radius:50%;place-items:center;width:34px;height:34px;font:900 18px system-ui;display:grid;position:absolute;top:-17px;left:-17px;box-shadow:0 0 12px #ff9c00}.loot-arrow.big .loot-arrow-icon{color:#fff8dc;border-color:#fff0b0;transform:scale(1.25);box-shadow:0 0 18px #ffd24a,0 0 4px #fff}.loot-arrow.big .loot-arrow-head:before{border-left-color:#ffe27a}@keyframes loot-arrow-pulse{0%,to{scale:1}50%{scale:1.18}}.start-screen{flex-direction:column;justify-content:safe center;align-items:center;gap:16px;display:flex;overflow-y:auto}.fan-disclaimer{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#d8d2c4;text-align:center;cursor:default;background:#0c0910b8;border:1px solid #e6cc8040;border-radius:10px;flex:none;width:min(760px,100%);padding:10px 14px;font:12px/1.45 system-ui,sans-serif}.fan-disclaimer p{margin:0 0 4px}.fan-disclaimer p:last-child{margin-bottom:0}.fan-disclaimer strong{color:var(--gold)}.fan-disclaimer a{color:var(--gold);text-decoration:underline}.legal-links{opacity:.75;font-size:.95em}.legal-links a{color:inherit;text-decoration:underline}.legal-links-mini{color:#a89f8e;text-align:center;margin:10px 0 0;font:11px/1.4 system-ui,sans-serif}@media (max-width:520px),(max-height:700px){.fan-disclaimer{padding:8px 10px;font-size:10.5px}.start-screen .title-panel h1.title-logo{margin:10px auto 8px}}.update-toast{top:max(14px, env(safe-area-inset-top));z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#e9d9aa;white-space:nowrap;background:#140f1ce6;border:1px solid #a98546aa;border-radius:999px;align-items:center;gap:10px;padding:8px 8px 8px 16px;font:13px system-ui,sans-serif;animation:.35s ease-out pwa-slide-down;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #000a}.update-toast[hidden]{display:none}.update-toast button{border:1px solid var(--gold);color:var(--sand);cursor:pointer;background:linear-gradient(#8a6226aa,#5a3c15aa);border-radius:999px;padding:5px 12px}.update-toast .update-close{color:#a89f8e;background:0 0;border-color:#0000;padding:2px 8px;font-size:16px}@keyframes pwa-slide-down{0%{opacity:0;translate:0 -12px}}.install-popup{left:50%;bottom:max(18px, env(safe-area-inset-bottom));z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:left;cursor:default;background:linear-gradient(145deg,#1d1824f0,#0c0a10f5);border:1px solid #a98546aa;border-radius:16px;align-items:center;gap:16px;width:min(460px,100% - 32px);padding:16px 18px;animation:.4s ease-out pwa-slide-up;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 18px 60px #000c,0 0 30px #c8913a2a}.install-popup[hidden]{display:none}.install-icon{filter:drop-shadow(0 0 10px #7a3cff55);border-radius:14px;flex:none;width:64px;height:64px}.install-body{min-width:0}.install-popup h2{color:var(--gold);letter-spacing:.02em;margin:0 0 4px;font-size:19px}.install-popup p{color:#cbc4d2;margin:0;font:13.5px/1.45 system-ui,sans-serif}.install-popup .install-ios{color:#e9d9aa;margin-top:8px}.install-ios b{color:var(--sand);font-weight:600}.share-glyph{vertical-align:-3px;color:#6fb4ff;margin:0 2px;display:inline-block}.install-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.install-actions button{border:1px solid var(--gold);cursor:pointer;border-radius:8px;padding:8px 16px}.install-actions button.primary{color:#fff4d6;background:linear-gradient(#8a6226cc,#5a3c15cc);box-shadow:0 0 14px #e6cc8033}.install-actions button.secondary{color:#e9d9aa;background:#1a1422cc;border-color:#a98546aa}.install-actions button:hover{filter:brightness(1.2)}@keyframes pwa-slide-up{0%{opacity:0;translate:0 16px}}@media (max-width:520px){.install-popup{gap:12px;padding:14px}.install-icon{width:52px;height:52px}}
