/* Daily find (daily-card.js): the golden moth and its card reveal. */
.daily-moth{position:fixed;left:0;top:0;z-index:60;width:58px;height:44px;padding:0;border:0;background:none;cursor:pointer;filter:drop-shadow(0 0 8px #f4c95daa) drop-shadow(0 2px 3px #0008);-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.daily-moth svg{position:relative;z-index:1;width:100%;height:100%;overflow:visible}
.daily-moth::before{content:"";position:absolute;inset:-14px;border-radius:50%}
.dm-glow{position:absolute;inset:-6px;border-radius:50%;background:radial-gradient(circle,#fff3c455,transparent 65%)}
.dm-wing{transform-box:fill-box;animation:dm-flap .22s ease-in-out infinite alternate}
.dm-left{transform-origin:100% 50%}.dm-right{transform-origin:0 50%}
@keyframes dm-flap{to{transform:scaleX(.35)}}
.daily-moth.resting .dm-wing{animation:dm-flap 1.6s ease-in-out infinite alternate}
.daily-moth.caught{pointer-events:none;transition:opacity .4s,scale .4s;opacity:0;scale:1.6}
html[data-motion=gentle] .dm-wing{animation:none}
.dm-spark{position:fixed;left:0;top:0;z-index:61;width:7px;height:7px;margin:-3px;border-radius:50%;background:#fff3c4;box-shadow:0 0 8px #f4c95d;pointer-events:none}
.daily-card-dialog{max-width:min(560px,94vw);max-height:94vh;overflow:auto;padding:clamp(14px,3vh,26px) clamp(16px,3vw,30px);border:2px solid #c9a865;border-radius:22px;background:radial-gradient(ellipse at 50% 0,#4a3478,#21173a 70%);color:#f6ecd7;text-align:center;box-shadow:0 18px 50px #000a}
.daily-card-dialog::backdrop{background:#0b0716b3}
.daily-card-dialog small{letter-spacing:.2em;color:#e7c77f;font:700 11px "Trebuchet MS",system-ui,sans-serif}
.daily-card-dialog h2{margin:4px 0 12px;font:700 clamp(18px,3.4vh,26px) Georgia,serif}
.dc-cards{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;perspective:600px;overflow:clip;padding:18px 12px;margin:-8px -8px 0}
.dc-pop{width:6px;height:6px;margin:-3px}
.dc-card{display:flex;flex-direction:column;align-items:center;gap:4px;width:min(200px,60vw);padding:10px 12px 12px;border-radius:16px;border:2px solid var(--item-color);background:linear-gradient(#2e2349,#1b1430);box-shadow:0 0 22px color-mix(in srgb,var(--item-color) 35%,transparent);box-sizing:border-box}
.dc-rarity{font:700 10px "Trebuchet MS",system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--item-color)}
.dc-art{display:block;width:120px;height:90px}.dc-art svg,.dc-art img,.dc-art canvas{width:100%;height:100%;border:0!important;outline:0!important;box-shadow:none!important;background:none!important}
.dc-card strong{font:700 16px Georgia,serif}
.dc-count{color:#9ff3e4;font:800 14px "Trebuchet MS",system-ui,sans-serif}
.dc-bar{width:100%;height:7px;border-radius:9px;background:#0006;overflow:hidden}.dc-bar i{display:block;height:100%;background:linear-gradient(90deg,#c9a865,#f4dc9a)}
.dc-note{font:600 12px "Trebuchet MS",system-ui,sans-serif;color:#d9cdee}
.daily-card-dialog p{margin:12px 0 8px;font-size:12px;color:#cdbfe4}
.dc-done{padding:10px 30px;border-radius:14px;border:2px solid #f2dc9d;background:linear-gradient(#f6e2a6,#d7b469);color:#3a2a14;font:800 15px "Trebuchet MS",system-ui,sans-serif;cursor:pointer}
@media (max-height:430px){.daily-moth{width:44px;height:34px}.dc-art{width:90px;height:66px}.daily-card-dialog h2{margin-bottom:6px}.daily-card-dialog p{margin:6px 0}}

/* Glitter falling from the moth with each chime. */
.dm-dust-layer{position:fixed;inset:0;z-index:59;pointer-events:none;contain:strict}
.dm-dust{position:fixed;left:0;top:0;z-index:59;width:4px;height:4px;margin:-2px;border-radius:50%;background:#fff1b8;box-shadow:0 0 6px #f4c95d,0 0 2px #fff;pointer-events:none}
.dm-dust.star{width:7px;height:7px;margin:-3.5px;border-radius:0;background:#fff6d6;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
/* Card reveal: face down with the moth's seal, flips over on tap. */
.dc-flip{position:relative;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;perspective:900px;-webkit-tap-highlight-color:transparent}
.dc-flip.open{cursor:default}
.dc-inner{position:relative;display:block;transform-style:preserve-3d}
.dc-flip.open .dc-inner{transform:rotateY(180deg)}
.dc-back,.dc-front{backface-visibility:hidden;-webkit-backface-visibility:hidden}
.dc-front{transform:rotateY(180deg)}
.dc-back{position:absolute;inset:0;display:grid;place-items:center;border-radius:16px;border:2px solid #e9cf86;background:radial-gradient(circle at 50% 42%,#6a4aa8,#2a1c4a 70%);box-shadow:0 0 26px #f4c95d66,inset 0 0 0 6px #ffffff0d,inset 0 0 0 7px #e9cf8644;overflow:hidden}
.dc-back::after{content:"";position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 40%,#fff5 50%,transparent 60%);animation:dc-shine 2.4s ease-in-out infinite}
.dc-seal{width:58%;filter:drop-shadow(0 0 10px #f4c95d)}.dc-seal svg{width:100%;height:auto;display:block}
.dc-seal .dm-wing{animation:dm-flap .9s ease-in-out infinite alternate}
.dc-q{position:absolute;bottom:12%;font:700 22px Georgia,serif;color:#f6e2a6;text-shadow:0 0 8px #f4c95d}
.dc-flip:not(.open) .dc-inner{animation:dc-wobble 1.4s ease-in-out infinite}
.dc-flip:not(.open):hover .dc-inner,.dc-flip:not(.open):focus-visible .dc-inner{animation-duration:.5s}
.dc-rays{position:absolute;left:50%;top:50%;width:170%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--item-color) 55%,transparent) 0 8deg,transparent 8deg 22deg);mask:radial-gradient(circle,#000 18%,transparent 66%);-webkit-mask:radial-gradient(circle,#000 18%,transparent 66%);opacity:0;scale:.5;transition:opacity .5s .25s,scale .7s .25s cubic-bezier(.2,.8,.2,1.2);pointer-events:none;animation:dc-spin 12s linear infinite}
.dc-flip.open .dc-rays{opacity:.8;scale:1}
.dc-bar.full{box-shadow:0 0 10px #f4dc9a}.dc-bar.full i{background:linear-gradient(90deg,#f4dc9a,#fff6d6,#f4dc9a)}
.daily-card-dialog .dc-done{transition:opacity .3s,translate .3s}
.daily-card-dialog:not(.revealed) .dc-done{opacity:0;translate:0 8px;pointer-events:none}
@keyframes dc-wobble{0%,100%{rotate:-2deg;translate:0 0}50%{rotate:2deg;translate:0 -4px}}
@keyframes dc-spin{to{rotate:360deg}}
@keyframes dc-shine{0%,40%{translate:-60% 0}80%,100%{translate:60% 0}}
html[data-motion=gentle] .dc-rays,html[data-motion=gentle] .dc-back::after,html[data-motion=gentle] .dc-flip .dc-inner{animation:none}
.dc-layer{position:fixed;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:none;overflow:visible;pointer-events:none;color:inherit}
/* Better bundles: the frame takes the bundle's rarity colour; Epic and Legendary also glow. */
.daily-card-dialog.dc-uncommon{border-color:#9ee8ac}
.daily-card-dialog.dc-rare{border-color:#80caff}
.daily-card-dialog.dc-epic{border-color:#ce9cff;box-shadow:0 0 34px #a76df077,0 18px 50px #000a}
.daily-card-dialog.dc-legendary{border-color:#ffcf73;box-shadow:0 0 44px #f4c95d99,0 18px 50px #000a;background:radial-gradient(ellipse at 50% 0,#6a4a2a,#2a1b3c 70%)}
.daily-card-dialog.dc-bonus small{color:#fff1bd}
/* Main menu only: never over a match, even for the moment before the script sends it away. */
body:not(.in-menu) :is(.daily-moth,.dm-dust-layer){display:none}
