/* Erfolgsmeldung nach dem Absenden (beide Formulare): Haken zeichnet sich, kleine Konfetti-Explosion, ruhiges Glas-Overlay */
.yay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:rgba(2,20,48,.46);-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2);animation:yay-fade .35s ease both}
.yay[hidden]{display:none}
.yay-card{position:relative;width:min(440px,100%);background:var(--card,#fff);color:var(--fg,#252525);border-radius:28px;padding:40px 30px 30px;text-align:center;box-shadow:0 40px 90px -30px rgba(2,47,101,.55);animation:yay-pop .6s cubic-bezier(.2,1.4,.4,1) both;overflow:hidden}
.yay-check{width:104px;height:104px;margin:0 auto 18px;display:block}
.yay-check circle{fill:none;stroke:#00D686;stroke-width:6;stroke-linecap:round;stroke-dasharray:302;stroke-dashoffset:302;transform:rotate(-90deg);transform-origin:50% 50%;animation:yay-draw .7s .15s cubic-bezier(.65,0,.35,1) forwards}
.yay-check .fill{fill:#00D686;stroke:none;opacity:0;transform:scale(.6);transform-origin:50% 50%;animation:yay-fill .45s .75s cubic-bezier(.2,1.4,.4,1) forwards}
.yay-check path{fill:none;stroke:#fff;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60;animation:yay-draw .4s 1s cubic-bezier(.65,0,.35,1) forwards}
.yay-title{font-size:30px;line-height:1.1;font-weight:750;letter-spacing:-.02em;margin:0 0 10px;color:var(--ink,#022F65)}
.yay-text{font-size:16px;line-height:1.5;color:var(--fg-2,#5b6472);margin:0 0 6px}
.yay-files{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.yay-files li{font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px;background:color-mix(in srgb,#00D686 16%,transparent);color:var(--fg,#252525);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:0;animation:yay-up .4s forwards}
.yay-files li::before{content:"✓ ";color:#0E5353}
.yay-next{margin:20px 0 0;font-size:14px;color:var(--fg-2,#5b6472)}
.yay-close{margin-top:22px;border:0;border-radius:999px;padding:13px 28px;font:inherit;font-weight:650;font-size:16px;background:#0066FF;color:#fff;cursor:pointer}
.yay-close:focus-visible{outline:3px solid #00D686;outline-offset:3px}
.yay-confetti{position:absolute;left:50%;top:92px;width:0;height:0;pointer-events:none}
.yay-confetti i{position:absolute;width:8px;height:12px;border-radius:2px;opacity:0;animation:yay-burst 1.1s 1.05s cubic-bezier(.15,.7,.3,1) forwards}
@keyframes yay-fade{from{opacity:0}}
@keyframes yay-pop{from{opacity:0;transform:translateY(24px) scale(.92)}}
@keyframes yay-draw{to{stroke-dashoffset:0}}
@keyframes yay-fill{to{opacity:1;transform:scale(1)}}
@keyframes yay-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes yay-burst{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r))}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .yay-title{color:#fff}}
@media (prefers-reduced-motion:reduce){
  .yay,.yay-card,.yay-files li{animation:none;opacity:1}
  .yay-check circle,.yay-check path{animation:none;stroke-dashoffset:0}
  .yay-check .fill{animation:none;opacity:1;transform:none}
  .yay-confetti{display:none}
}
