/* One synchronized 14-second stroll: arrive, greet, leave, rest. */
@font-face{font-family:"Yeolmae Hand";src:url("/assets/yeolmae/GamjaFlower-donate.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
.float-donate.ge-floating[data-yeolmae]{right:22px;bottom:calc(20px + env(safe-area-inset-bottom));width:116px;height:124px;min-height:0;padding:0!important;gap:0;display:block;background:transparent!important;box-shadow:none!important;border-radius:26px;color:#5b3922;translate:none;transform:none;animation:ym-stroll 14s linear infinite;-webkit-user-select:none;user-select:none}
.ge-floating[data-yeolmae] .yeolmae-figure{width:100%;height:100%;display:block;overflow:visible;pointer-events:none;filter:drop-shadow(0 2px 1px #624a2512);animation:ym-turn 14s ease-in-out infinite}
.ge-floating[data-yeolmae] .yeolmae-bubble{position:absolute;bottom:calc(100% + 3px);left:50%;transform:translate(-50%,5px) scale(.96);transform-origin:50% 100%;display:block;padding:8px 16px 9px;white-space:nowrap;background:#fffdf7;border:1.5px solid #d99537;border-radius:17px;box-shadow:0 3px 12px #66421b12;font:400 22px/1.15 "Yeolmae Hand",cursive;color:#a95b0e;letter-spacing:.01em;opacity:0;visibility:hidden;transition:opacity .18s,transform .22s,visibility .18s;pointer-events:none}
.yeolmae-bubble:after{content:'';position:absolute;bottom:-6px;left:58%;width:10px;height:10px;transform:rotate(45deg);border-right:1.5px solid #d99537;border-bottom:1.5px solid #d99537;background:#fffdf7;border-radius:0 0 3px 0}
.ge-floating[data-yeolmae]:hover .yeolmae-bubble,.ge-floating[data-yeolmae]:focus-visible .yeolmae-bubble{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1)}
.ge-floating[data-yeolmae] .yeolmae-shadow{position:absolute;width:65%;height:6px;bottom:5px;left:17%;border-radius:50%;background:#49361412;filter:blur(2px);pointer-events:none}
.yeolmae-actor{transform-origin:607px 1190px;animation:ym-waddle 14s ease-in-out infinite}
.yeolmae-hand{transform-origin:256px 887px;animation:ym-wave 14s ease-in-out infinite}
.yeolmae-foot-left{transform-origin:475px 1131px;animation:ym-step-left 14s ease-in-out infinite}
.yeolmae-foot-right{transform-origin:699px 1132px;animation:ym-step-right 14s ease-in-out infinite}
.yeolmae-leaves{transform-origin:651px 283px;animation:ym-leaf 14s ease-in-out infinite}
.ge-floating[data-yeolmae]:is(:hover,:focus-visible,.is-paused),.ge-floating[data-yeolmae]:is(:hover,:focus-visible,.is-paused) *{animation-play-state:paused!important}
.ge-floating[data-yeolmae].is-obscured{opacity:0!important;visibility:hidden;pointer-events:none}
.ge-floating[data-yeolmae]:focus-visible{transform:translateX(0)!important;opacity:1!important;outline:2px solid #db870e;outline-offset:4px}
@keyframes ym-stroll{0%{transform:translateX(160px);opacity:0}1%{opacity:1}20%,53%{transform:translateX(0);opacity:1}73%{transform:translateX(160px);opacity:1}74%,100%{transform:translateX(160px);opacity:0}}
@keyframes ym-turn{0%,49%{transform:scaleX(1)}51%,83%{transform:scaleX(-1)}85%,100%{transform:scaleX(1)}}
@keyframes ym-wave{0%,21%,44%,100%{transform:rotate(0)}25%,32%,39%{transform:rotate(13deg)}28.5%,35.5%{transform:rotate(-9deg)}42%{transform:rotate(-3deg)}}
@keyframes ym-leaf{0%,20%,44%,73%,100%{transform:rotate(0)}5%,15%,25%,35%,58%,68%{transform:rotate(-2deg)}10%,30%,40%,63%{transform:rotate(2deg)}}
@keyframes ym-waddle{0%{transform:translateY(0px) rotate(0deg)}1.25%{transform:translateY(-16px) rotate(-2deg)}2.5%{transform:translateY(0px) rotate(0deg)}3.75%{transform:translateY(-16px) rotate(2deg)}5%{transform:translateY(0px) rotate(0deg)}6.25%{transform:translateY(-16px) rotate(-2deg)}7.5%{transform:translateY(0px) rotate(0deg)}8.75%{transform:translateY(-16px) rotate(2deg)}10%{transform:translateY(0px) rotate(0deg)}11.25%{transform:translateY(-16px) rotate(-2deg)}12.5%{transform:translateY(0px) rotate(0deg)}13.75%{transform:translateY(-16px) rotate(2deg)}15%{transform:translateY(0px) rotate(0deg)}16.25%{transform:translateY(-16px) rotate(-2deg)}17.5%{transform:translateY(0px) rotate(0deg)}18.75%{transform:translateY(-16px) rotate(2deg)}20%{transform:translateY(0px) rotate(0deg)}24%{transform:translateY(-5px) rotate(1deg)}28%{transform:translateY(0px) rotate(0deg)}32%{transform:translateY(-5px) rotate(-1deg)}36%{transform:translateY(0px) rotate(0deg)}40%{transform:translateY(-4px) rotate(0.7deg)}44%{transform:translateY(0px) rotate(0deg)}53%{transform:translateY(0px) rotate(0deg)}54.25%{transform:translateY(-16px) rotate(-2deg)}55.5%{transform:translateY(0px) rotate(0deg)}56.75%{transform:translateY(-16px) rotate(2deg)}58%{transform:translateY(0px) rotate(0deg)}59.25%{transform:translateY(-16px) rotate(-2deg)}60.5%{transform:translateY(0px) rotate(0deg)}61.75%{transform:translateY(-16px) rotate(2deg)}63%{transform:translateY(0px) rotate(0deg)}64.25%{transform:translateY(-16px) rotate(-2deg)}65.5%{transform:translateY(0px) rotate(0deg)}66.75%{transform:translateY(-16px) rotate(2deg)}68%{transform:translateY(0px) rotate(0deg)}69.25%{transform:translateY(-16px) rotate(-2deg)}70.5%{transform:translateY(0px) rotate(0deg)}71.75%{transform:translateY(-16px) rotate(2deg)}73%{transform:translateY(0px) rotate(0deg)}100%{transform:translateY(0) rotate(0)}}
@keyframes ym-step-left{0%{transform:translateY(0px) rotate(0deg)}1.25%{transform:translateY(-28px) rotate(7deg)}2.5%{transform:translateY(0px) rotate(0deg)}5%{transform:translateY(0px) rotate(0deg)}6.25%{transform:translateY(-28px) rotate(7deg)}7.5%{transform:translateY(0px) rotate(0deg)}10%{transform:translateY(0px) rotate(0deg)}11.25%{transform:translateY(-28px) rotate(7deg)}12.5%{transform:translateY(0px) rotate(0deg)}15%{transform:translateY(0px) rotate(0deg)}16.25%{transform:translateY(-28px) rotate(7deg)}17.5%{transform:translateY(0px) rotate(0deg)}20%{transform:translateY(0px) rotate(0deg)}53%{transform:translateY(0px) rotate(0deg)}54.25%{transform:translateY(-28px) rotate(7deg)}55.5%{transform:translateY(0px) rotate(0deg)}58%{transform:translateY(0px) rotate(0deg)}59.25%{transform:translateY(-28px) rotate(7deg)}60.5%{transform:translateY(0px) rotate(0deg)}63%{transform:translateY(0px) rotate(0deg)}64.25%{transform:translateY(-28px) rotate(7deg)}65.5%{transform:translateY(0px) rotate(0deg)}68%{transform:translateY(0px) rotate(0deg)}69.25%{transform:translateY(-28px) rotate(7deg)}70.5%{transform:translateY(0px) rotate(0deg)}73%{transform:translateY(0px) rotate(0deg)}100%{transform:translateY(0) rotate(0)}}
@keyframes ym-step-right{0%{transform:translateY(0px) rotate(0deg)}2.5%{transform:translateY(0px) rotate(0deg)}3.75%{transform:translateY(-28px) rotate(-7deg)}5%{transform:translateY(0px) rotate(0deg)}7.5%{transform:translateY(0px) rotate(0deg)}8.75%{transform:translateY(-28px) rotate(-7deg)}10%{transform:translateY(0px) rotate(0deg)}12.5%{transform:translateY(0px) rotate(0deg)}13.75%{transform:translateY(-28px) rotate(-7deg)}15%{transform:translateY(0px) rotate(0deg)}17.5%{transform:translateY(0px) rotate(0deg)}18.75%{transform:translateY(-28px) rotate(-7deg)}20%{transform:translateY(0px) rotate(0deg)}53%{transform:translateY(0px) rotate(0deg)}55.5%{transform:translateY(0px) rotate(0deg)}56.75%{transform:translateY(-28px) rotate(-7deg)}58%{transform:translateY(0px) rotate(0deg)}60.5%{transform:translateY(0px) rotate(0deg)}61.75%{transform:translateY(-28px) rotate(-7deg)}63%{transform:translateY(0px) rotate(0deg)}65.5%{transform:translateY(0px) rotate(0deg)}66.75%{transform:translateY(-28px) rotate(-7deg)}68%{transform:translateY(0px) rotate(0deg)}70.5%{transform:translateY(0px) rotate(0deg)}71.75%{transform:translateY(-28px) rotate(-7deg)}73%{transform:translateY(0px) rotate(0deg)}100%{transform:translateY(0) rotate(0)}}
@media(hover:none),(pointer:coarse){.ge-floating[data-yeolmae] .yeolmae-bubble{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1);font-size:19px;padding:7px 12px}}
@media(max-width:480px){.float-donate.ge-floating[data-yeolmae]{width:88px;height:94px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom))}.ge-floating[data-yeolmae] .yeolmae-bubble{bottom:calc(100% + 1px);font-size:19px;padding:7px 12px}}
@media(prefers-reduced-motion:reduce){.float-donate.ge-floating[data-yeolmae],.ge-floating[data-yeolmae] *{animation:none!important;transition:none!important}.float-donate.ge-floating[data-yeolmae]{opacity:1;transform:none}.ge-floating[data-yeolmae] .yeolmae-bubble{opacity:1;visibility:visible;transform:translate(-50%,0)}}
