#menu #daily-menu{position:absolute;top:850px;left:124px;width:223px;height:64px;border:0;border-radius:18px;display:flex;align-items:center;justify-content:center;gap:8px;padding:5px 10px;color:white;font:700 19px Fredoka;text-shadow:none}
#daily-menu img{width:40px;height:40px;object-fit:contain}#daily-menu span{display:flex;flex-direction:column;gap:2px}#daily-menu small{font-size:12px}#daily-menu:disabled{opacity:.65;cursor:default}
#daily-countdown{position:absolute;top:920px;left:45px;right:45px;margin:0;text-align:center;color:#354271;font-size:12px}
#daily-screen{z-index:36;align-items:center;justify-content:center;background:#171b48bc;padding:16px}
.daily-card{position:relative;width:100%;max-width:390px;padding:26px 20px 15px;border:5px solid #6942e6;border-radius:28px;background:linear-gradient(#f8f5ff,#ded9ee);box-shadow:0 6px 0 #4726a3;text-align:center;color:#454b77}
.daily-card h1{font-size:29px;color:#5d32be;margin:6px 0 12px;line-height:1.1}.daily-card p{font-size:15px;line-height:1.3;margin:10px 0}.daily-card #daily-date{font-size:12px}.daily-calendar{width:68px;height:68px}.daily-reward{display:flex;align-items:center;justify-content:center;gap:8px;font-size:28px;color:#8b591c}.daily-reward img{width:36px;height:40px;object-fit:contain}
#daily-screen #daily-close{position:absolute;right:-10px;top:-14px;width:42px;height:42px;border:0;border-radius:50%;padding:0;color:white;font:700 37px Fredoka;line-height:1}
#daily-screen #daily-action{position:relative;display:flex;align-items:center;justify-content:center;gap:13px;width:230px;height:68px;margin:18px auto 0;border:0;border-radius:20px;font:700 29px Fredoka;color:white;text-shadow:none}
#daily-action:disabled{opacity:.65;cursor:wait}#daily-feedback{min-height:20px;font-size:13px!important}#daily-screen #daily-ad-icon{display:block;width:38px;height:39px;background:url('./assets/victory/reward-double.webp') -14px -14px / 192px 68px no-repeat;border-radius:5px}
@media(max-height:620px){.daily-card{padding-top:15px}.daily-calendar{width:40px;height:40px}.daily-card p{margin:6px 0}}

/* Use the existing image X, centered independently of font baseline metrics. */
#daily-screen #daily-close{display:grid;place-items:center}
#daily-screen #daily-close::after{content:""!important;display:block;width:30px;height:30px;pointer-events:none}

#menu #daily-intro-hand{position:absolute;left:282px;top:882px;width:65px;height:65px;object-fit:contain;z-index:8;pointer-events:none;animation:daily-hand-tap 1.1s ease-in-out infinite;filter:drop-shadow(0 3px 2px #23346788)}
@keyframes daily-hand-tap{0%,100%{transform:translate(6px,8px)}50%{transform:translate(0,0)}}
@media(prefers-reduced-motion:reduce){#menu #daily-intro-hand{animation:none}}

#challenge-intro{z-index:45;background:#19164365;pointer-events:auto;padding:20px}
.challenge-announcement{width:min(100%,340px);text-align:center;transform:scale(.6);transform-origin:center;animation:challenge-pop .25s ease-out}
#challenge-plug{width:min(65vw,240px);height:min(65vw,240px);object-fit:contain;display:block;margin:0 auto -12px;position:relative;z-index:1}
.challenge-announcement h1{background:url('./assets/buttons/ui/settings-purple.webp') center/100% 100% no-repeat;color:white;margin:0;padding:22px 12px 25px;font:700 clamp(30px,9vw,44px) Fredoka;line-height:1.1;text-shadow:0 2px 0 #462173}
@keyframes challenge-pop{from{transform:scale(.51);opacity:0}to{transform:scale(.6);opacity:1}}
@media(prefers-reduced-motion:reduce){.challenge-announcement{animation:none}}

#challenge-intro:not(.hidden) #challenge-plug{animation:challenge-electric .65s ease-in-out infinite}
@keyframes challenge-electric{0%,100%{transform:rotate(0);filter:drop-shadow(0 0 3px #68eaff88)}30%{transform:translate(-2px,0) rotate(-1deg)}45%{transform:translate(2px,-1px) rotate(1deg);filter:drop-shadow(0 0 9px #a9faff)}60%{transform:translate(-1px,1px)}75%{transform:rotate(0);filter:drop-shadow(0 0 4px #68eaff88)}}
@media(prefers-reduced-motion:reduce){#challenge-intro:not(.hidden) #challenge-plug{animation:none}}

.challenge-character{width:min(65vw,240px);height:min(65vw,240px);overflow:hidden;position:relative;margin:0 auto -12px;z-index:1}
#challenge-intro #challenge-plug{width:400%;max-width:none;height:100%;object-fit:fill;margin:0;filter:none;transform:none;animation:none}
#challenge-intro:not(.hidden) #challenge-plug{animation:challenge-laugh .8s steps(4,end) infinite}
@keyframes challenge-laugh{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){#challenge-intro:not(.hidden) #challenge-plug{animation:none}}
