.wdts-root{box-sizing:border-box;width:100%;margin:24px auto;font-family:'Sarabun',system-ui,sans-serif;line-height:1.4}
.wdts-root *,.wdts-root *::before,.wdts-root *::after{box-sizing:border-box}
.wdts-root .wdts-sl{background:#FCF8EE;border:1.5px solid #DCC8A0;border-radius:28px;padding:10px;box-shadow:0 16px 36px rgba(110,80,40,.2)}
.wdts-root .wdts-vp{position:relative;overflow:hidden;border-radius:20px;aspect-ratio:var(--wdts-ratio,297/210);background:#F3E7C8;touch-action:pan-y;outline-offset:3px}
.wdts-root .wdts-tk{display:flex;height:100%;transition:transform .45s cubic-bezier(.2,.9,.3,1)}
.wdts-root .wdts-sd{flex:0 0 100%;height:100%;background:#FCF8EE}
.wdts-root .wdts-sd img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;margin:0;border-radius:0;-webkit-user-drag:none;user-select:none}
.wdts-root button.wdts-ar{appearance:none;position:absolute;top:50%;margin:-19px 0 0;width:38px;height:38px;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#FCF8EE;border:1.5px solid #D9C08A;color:#7A4A21;cursor:pointer;z-index:4;box-shadow:0 3px 8px rgba(150,110,50,.25);transition:transform .2s cubic-bezier(.2,.9,.3,1.4),background .2s}
.wdts-root button.wdts-ar:hover{transform:scale(1.1);background:#FFF8E6}
.wdts-root button.wdts-ar:active{transform:scale(.92)}
.wdts-root button.wdts-ar:focus-visible{outline:2px solid #8A5A2B;outline-offset:2px}
.wdts-root .wdts-prev{left:10px}.wdts-root .wdts-next{right:10px}
.wdts-root .wdts-bar{position:absolute;left:0;bottom:0;height:3px;width:0;background:#E9C36B;z-index:7;animation:wdts-fill var(--wdts-dur,2.5s) linear infinite}
.wdts-root .wdts-vp:hover .wdts-bar,.wdts-root .wdts-vp:focus-within .wdts-bar,.wdts-root .wdts-vp.wdts-wc .wdts-bar,.wdts-root .wdts-vp.wdts-drag .wdts-bar,.wdts-root.wdts-off .wdts-bar{animation-play-state:paused}
@keyframes wdts-fill{from{width:0}to{width:100%}}
.wdts-root .wdts-dots{display:flex;justify-content:center;gap:7px;padding:12px 0 4px}
.wdts-root button.wdts-dot{appearance:none;width:8px;height:8px;min-width:0;padding:0;margin:0;border:0;border-radius:4px;background:#D9C08A;cursor:pointer;transition:width .3s,background .3s}
.wdts-root button.wdts-dot.wdts-on{width:24px;background:#C08A32}
.wdts-root button.wdts-dot:focus-visible{outline:2px solid #8A5A2B;outline-offset:2px}
.wdts-root .wdts-pl{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.wdts-root .wdts-pt{position:absolute;top:0;width:9px;height:13px;border-radius:50% 0 50% 0;opacity:0;animation:wdts-fall 8s linear infinite}
@keyframes wdts-fall{0%{opacity:0;transform:translate(0,-20px) rotate(0)}10%{opacity:.9}50%{transform:translate(16px,130px) rotate(130deg)}90%{opacity:.9}100%{opacity:0;transform:translate(-8px,300px) rotate(260deg)}}
.wdts-root .wdts-wel{position:absolute;inset:0;z-index:5;overflow:hidden;background:#F6E8C6;cursor:pointer;transition:opacity .8s,transform .8s}
.wdts-root .wdts-wel.wdts-hide{opacity:0;transform:scale(1.05);pointer-events:none}
.wdts-root .wdts-wel svg{position:absolute;inset:0;width:100%;height:100%;display:block;max-width:none}
.wdts-root .w-fi{opacity:0;animation:wdts-fin .8s ease-out both}
@keyframes wdts-fin{to{opacity:1}}
.wdts-root .w-ray{transform-box:fill-box;transform-origin:50% 50%;animation:wdts-spin 40s linear infinite}
@keyframes wdts-spin{to{transform:rotate(360deg)}}
.wdts-root .w-cl{animation:wdts-drift 26s linear infinite}
@keyframes wdts-drift{from{transform:translateX(-130px)}to{transform:translateX(520px)}}
.wdts-root .w-pe{transform-box:fill-box;transform-origin:50% 100%;opacity:0;animation:wdts-bloom .7s cubic-bezier(.2,.9,.3,1.3) both}
@keyframes wdts-bloom{from{opacity:0;transform:scale(.1)}to{opacity:1;transform:scale(1)}}
.wdts-root .w-sw{transform-box:fill-box;transform-origin:50% 100%;animation:wdts-sway 3s ease-in-out infinite alternate}
@keyframes wdts-sway{from{transform:rotate(-4deg)}to{transform:rotate(4deg)}}
.wdts-root .w-mk{animation:wdts-pop .9s cubic-bezier(.2,.9,.3,1.3) .6s both}
@keyframes wdts-pop{from{opacity:0;transform:translateY(34px) scale(.6)}to{opacity:1;transform:none}}
.wdts-root .w-bw{transform-box:fill-box;transform-origin:50% 100%;animation:wdts-wai 3.4s ease-in-out 1.6s infinite}
@keyframes wdts-wai{0%,50%,100%{transform:rotate(0)}22%{transform:rotate(10deg)}}
.wdts-root .w-rp{transform-box:fill-box;transform-origin:50% 50%;animation:wdts-rpl 3.2s ease-out infinite}
@keyframes wdts-rpl{0%{opacity:.9;transform:scale(.4)}100%{opacity:0;transform:scale(1.6)}}
.wdts-root .w-ln{animation:wdts-lan 9s ease-in infinite}
@keyframes wdts-lan{0%{opacity:0;transform:translate(0,0)}12%{opacity:1}50%{transform:translate(10px,-90px)}100%{opacity:0;transform:translate(-6px,-200px)}}
.wdts-root .w-sp{transform-box:fill-box;transform-origin:50% 50%;opacity:0;animation:wdts-tw 2.6s ease-in-out infinite}
@keyframes wdts-tw{0%,100%{opacity:0;transform:scale(.3) rotate(0)}50%{opacity:1;transform:scale(1) rotate(45deg)}}
.wdts-root .w-fp{opacity:0;animation:wdts-fall 7s linear infinite}
.wdts-root .w-t1{opacity:0;animation:wdts-rise .8s ease-out 1s both}
.wdts-root .w-t2{opacity:0;animation:wdts-rise .8s ease-out 1.4s both,wdts-tone 3s ease-in-out 2.2s infinite alternate}
@keyframes wdts-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes wdts-tone{from{fill:#7A4A21}to{fill:#C08A32}}
@media (prefers-reduced-motion:reduce){.wdts-root .wdts-pt,.wdts-root .w-sp,.wdts-root .w-fp,.wdts-root .w-ln,.wdts-root .w-rp,.wdts-root .w-cl,.wdts-root .w-ray{display:none}.wdts-root .wdts-bar{animation:none}.wdts-root .wdts-tk{transition:none}}
