.victory-overlay{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px;background:radial-gradient(ellipse at 50% 35%,#73469cd9,#271448ef 65%,#110e29f5);backdrop-filter:blur(7px);overflow:auto;isolation:isolate;font-family:Arial,sans-serif;animation:victory-backdrop .35s ease-out}
.victory-confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}
.victory-panel{position:relative;width:min(720px,100%);text-align:center;padding:18px 30px 16px;border:3px solid #efc271;border-bottom:7px solid #a36b32;border-radius:30px;background:radial-gradient(ellipse at 50% 32%,#7847a7,#472967 65%,#33234e);box-shadow:inset 0 0 0 4px #402959,0 0 70px #f5c57525,0 25px 90px #0e092c;animation:victory-panel .65s cubic-bezier(.2,.9,.3,1.25);color:#fff2cf;overflow:visible}
.victory-panel:before,.victory-panel:after{content:'✦';position:absolute;top:30%;font-size:45px;color:#f6cd63;text-shadow:0 0 20px #ffedb388}.victory-panel:before{left:-21px}.victory-panel:after{right:-21px}
.victory-crown{position:absolute;top:-35px;left:calc(50% - 36px);width:72px;height:72px;filter:drop-shadow(0 5px 2px #261839);transform:rotate(-8deg);z-index:5}.victory-crown svg,.reward-trophy svg{width:100%;height:100%}
.victory-kicker{display:block;font-size:10px;letter-spacing:3px;font-weight:800;color:#e3c7f2;margin:17px 0 3px}
.victory-panel h1{font-family:Impact,'Arial Black',Arial,sans-serif;font-size:clamp(47px,8vw,83px);letter-spacing:3px;line-height:1.04;margin:0;color:#ffe25a;-webkit-text-stroke:1px #773718;text-shadow:0 3px #f5a626,0 6px #ae4a15,0 9px #592632,0 14px 17px #241531;transform:rotate(-3deg);outline:none;animation:victory-title .7s .12s both cubic-bezier(.15,.8,.2,1.3)}
.victory-banner{position:relative;display:inline-block;padding:6px 23px;margin:13px 0 0;background:linear-gradient(#fff1a0,#edbf43);border:2px solid #a3692f;border-radius:7px;color:#5b3034;box-shadow:0 3px #482443;font-size:12px;font-weight:900;letter-spacing:1px;transform:rotate(-2deg)}
.victory-hero{position:relative;width:270px;height:170px;margin:0 auto;display:flex;align-items:center;justify-content:center;isolation:isolate;animation:hero-reveal .65s .35s both cubic-bezier(.2,.85,.2,1.2)}
.victory-panel .victory-hero .sprite{width:250px;filter:drop-shadow(0 7px 2px #2c1a4577) drop-shadow(0 0 15px #ffea8970);animation:victory-hero-breathe 3s 1s infinite ease-in-out;z-index:2}
.victory-rays{position:absolute;inset:-10px 5px;border-radius:50%;background:repeating-conic-gradient(from 0deg,#ffd27250 0deg 11deg,transparent 11deg 28deg);mask-image:radial-gradient(ellipse,#000 20%,transparent 70%);z-index:-1;animation:victory-rays 24s linear infinite}
.victory-hero:before{content:'';position:absolute;inset:10px 20px;background:radial-gradient(ellipse,#fff1b064,transparent 68%);border-radius:50%;z-index:-1}
.victory-star{position:absolute;color:#fff3a9;text-shadow:0 0 18px #ffda7b;animation:victory-twinkle 2.4s ease-in-out infinite}.star-one{top:33px;left:5px;font-size:24px}.star-two{top:15px;right:22px;font-size:32px;animation-delay:.6s}.star-three{bottom:39px;right:0;font-size:17px;animation-delay:1.2s}
.rescued-seal{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:max-content;z-index:3;padding:5px 14px;border:2px solid #ffdf79;border-radius:20px;background:linear-gradient(#538dad,#315885);color:#fff1a3;font-size:10px;font-weight:900;letter-spacing:.6px;box-shadow:0 3px #291c45}
.victory-panel #victory-story{font-size:12px;line-height:1.35;color:#ead7f1;margin:9px 0 14px}
.victory-rewards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.victory-reward{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:11px 5px 12px;min-width:0;min-height:134px;border:2px solid #ffe4a1;border-bottom:5px solid #a76d38;border-radius:14px;background:linear-gradient(145deg,#813a83,#49215e);box-shadow:inset 0 0 0 2px #e7a15855,0 6px 14px #21143760;animation:reward-reveal .5s var(--reveal-delay) both cubic-bezier(.2,.85,.2,1.25);overflow:hidden}
.victory-reward:after{content:'';position:absolute;top:-50%;bottom:-50%;width:30%;background:linear-gradient(90deg,transparent,#fff8cd45,transparent);transform:translateX(-400%) rotate(25deg);animation:reward-shine 1.2s 1.6s both;pointer-events:none}
.gold-reward{background:radial-gradient(ellipse at 50% 5%,#b0793f,#6d4132 75%)}.hero-reward{background:radial-gradient(ellipse at 50% 5%,#637abc,#42326e 75%)}.chapter-reward{background:radial-gradient(ellipse at 50% 5%,#9b51b0,#502165 75%)}
.victory-coin{display:grid;place-items:center;width:41px;height:41px;border:3px solid #ffe993;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fff6a2,#e5a71c 60%,#b46811);box-shadow:0 3px #9a551a,inset 0 0 0 2px #dba22d;color:#9d530c;font-size:29px;font-weight:900;text-shadow:0 1px #fff2a0}
.reward-paw{display:grid;place-items:center;width:41px;height:41px;border-radius:11px;transform:rotate(-8deg);background:linear-gradient(145deg,#a8eaff,#4476c4);border:2px solid #d4f8ff;box-shadow:0 3px #342558;color:#fff4a7;font-size:32px;text-shadow:0 2px #675da5}.reward-trophy{display:block;width:42px;height:42px;filter:drop-shadow(0 2px 1px #2c164d)}
.reward-category{font-size:8px;letter-spacing:1px;font-weight:800;color:#ecd5ed;margin-top:3px}.victory-reward strong{font-family:'Arial Black',Arial,sans-serif;color:#fff0a6;font-size:17px;font-weight:900;line-height:1.1;text-shadow:0 2px #3a234c}.gold-reward strong{font-size:28px;color:#fff7c2}.victory-reward>b{font-size:8px;letter-spacing:.4px;color:#f3dbed}
.victory-actions{display:flex;align-items:center;flex-direction:column;gap:9px;margin-top:19px}.victory-continue{padding:12px 29px;border:2px solid #ffe593;border-bottom:5px solid #be731c;border-radius:15px;color:#593027;background:linear-gradient(#ffe785,#ffc446);box-shadow:0 5px #28163d,0 0 24px #ffdc6e25;font-size:16px;font-weight:900;min-width:240px;transition:transform .15s,filter .15s}.victory-continue:hover{transform:translateY(-3px);filter:brightness(1.1)}.victory-continue:active{transform:translateY(2px)}.victory-home{background:none;border:0;color:#dac7e5;font-size:11px;padding:3px;text-decoration:underline;text-underline-offset:3px}.victory-note{display:block;color:#bda5ce;font-size:9px;margin-top:11px}.victory-continue:focus-visible,.victory-home:focus-visible{outline:3px solid #b4f2ff;outline-offset:4px}.victory-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes victory-backdrop{from{opacity:0}to{opacity:1}}@keyframes victory-panel{from{opacity:0;transform:scale(.82) translateY(22px)}to{opacity:1;transform:none}}@keyframes victory-title{from{opacity:0;transform:scale(1.25) rotate(-3deg)}to{opacity:1;transform:scale(1) rotate(-3deg)}}@keyframes hero-reveal{from{opacity:0;transform:scale(.6) translateY(15px)}to{opacity:1;transform:none}}@keyframes reward-reveal{from{opacity:0;transform:translateY(15px) scale(.8)}to{opacity:1;transform:none}}@keyframes reward-shine{to{transform:translateX(500%) rotate(25deg)}}@keyframes victory-rays{to{transform:rotate(360deg)}}@keyframes victory-twinkle{0%,100%{transform:scale(.8);opacity:.5}50%{transform:scale(1.12);opacity:1}}@keyframes victory-hero-breathe{50%{transform:translateY(-4px) scale(1.025)}}
@media(max-width:600px){.victory-overlay{padding:35px 12px 12px;align-items:center}.victory-panel{padding:12px 13px 13px;border-radius:24px}.victory-crown{width:56px;height:56px;top:-26px;left:calc(50% - 28px)}.victory-kicker{font-size:8px;letter-spacing:2px;margin-top:14px}.victory-panel h1{font-size:57px;letter-spacing:1px}.victory-banner{font-size:9px;padding:5px 12px;margin-top:10px}.victory-hero{height:155px;width:245px}.victory-panel .victory-hero .sprite{width:220px}.victory-rewards{gap:6px}.victory-reward{padding:9px 3px;min-height:124px;border-radius:11px}.victory-reward strong{font-size:12px}.gold-reward strong{font-size:24px}.reward-category{font-size:6px;letter-spacing:.4px}.victory-reward>b{font-size:6px}.victory-panel #victory-story{font-size:11px;margin-bottom:12px}.victory-continue{font-size:14px;padding:10px 20px;min-width:220px}.victory-panel:before,.victory-panel:after{display:none}.victory-note{font-size:8px}}
@media(max-height:650px) and (min-width:601px){.victory-overlay{padding:30px 12px 10px}.victory-panel{width:640px;padding:10px 25px 12px}.victory-kicker{font-size:8px;margin-top:11px}.victory-panel h1{font-size:55px}.victory-banner{font-size:10px;margin-top:8px;padding:4px 20px}.victory-crown{width:54px;height:54px;top:-25px;left:calc(50% - 27px)}.victory-hero{height:128px;width:235px}.victory-panel .victory-hero .sprite{width:205px}.victory-panel #victory-story{margin:7px 0 9px;font-size:10px}.victory-reward{min-height:111px;padding:7px 4px;gap:3px}.victory-coin,.reward-paw{width:31px;height:31px;font-size:23px}.reward-trophy{height:32px;width:32px}.gold-reward strong{font-size:24px}.victory-reward strong{font-size:15px}.victory-actions{margin-top:12px;gap:6px}.victory-continue{padding:9px 23px;font-size:14px}.victory-note{margin-top:6px;font-size:8px}}
@media(max-height:420px){.victory-overlay{padding:12px;display:block}.victory-panel{margin:18px auto;width:min(680px,100%)}.victory-panel h1{font-size:43px}.victory-hero{height:110px}.victory-panel .victory-hero .sprite{width:180px}}
@media(prefers-reduced-motion:reduce){.victory-overlay,.victory-panel,.victory-panel *,.victory-panel:before,.victory-panel:after{animation:none!important;transition:none!important}.victory-confetti{display:none}}
@media(min-width:601px) and (min-height:651px) and (max-height:800px){.victory-overlay{padding-top:45px}.victory-panel{width:680px;padding:12px 25px}.victory-panel h1{font-size:68px}.victory-hero{height:146px}.victory-reward{min-height:124px;padding:8px 5px}.victory-kicker{margin-top:13px}.victory-actions{margin-top:14px}}
.victory-reward.gold-reward strong{font-size:34px;text-shadow:0 2px #a75b24,0 0 16px #ffe19b55}.rewards-revealed .gold-reward{box-shadow:inset 0 0 0 2px #ffe18c66,0 0 24px #ffd27645,0 6px 14px #21143760}
@media(max-height:650px) and (min-width:601px){.victory-reward.gold-reward strong{font-size:29px}}
@media(max-width:600px){.victory-reward.gold-reward strong{font-size:29px}}
