/* Frameless 5-second Mid-Autumn greeting. */
.ma-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box;background:transparent;opacity:0;visibility:hidden;transition:opacity .3s;overflow:hidden}
.ma-overlay.ma-open{opacity:1;visibility:visible}
.ma-dialog{position:relative;width:min(780px,100vw);height:min(580px,85vh);display:flex;flex-direction:column;align-items:center;justify-content:center;background:none;border:0;border-radius:0;box-shadow:none;outline:none;overflow:visible;color:#fff3d0}
.ma-dialog:before,.ma-dialog:after{content:none}
.ma-stage{position:relative;width:100%;height:calc(100% - 100px);display:flex;align-items:center;justify-content:center;overflow:visible;pointer-events:none}
.ma-art{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 18px #20130dcc)}
.ma-header{position:absolute;top:0;right:20px;z-index:2}
.ma-top-controls,.ma-progress-track{display:none}
.ma-body{position:relative;width:92%;text-align:center;pointer-events:none;padding:0 8px 16px;box-sizing:border-box}
.ma-title{margin:0;color:#ffe0a3;font-family:Georgia,"Songti SC","Noto Serif SC",serif;font-size:clamp(25px,4.5vw,46px);font-weight:600;line-height:1.22;letter-spacing:.055em;text-wrap:balance;text-shadow:0 2px 5px #1e1124,0 0 22px #e7bb7044;animation:ma-greeting .65s ease-out both}
.ma-eyebrow,.ma-subtitle,.ma-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes ma-greeting{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.ma-skip-btn{display:block;background:transparent;border:0;box-shadow:none;border-radius:50%;width:44px;height:44px;padding:0;color:#f6dfa4;font:300 30px/44px system-ui;cursor:pointer;opacity:.65}
.ma-skip-btn:before{content:'×'}
.ma-skip-btn:hover{opacity:1}
.ma-skip-btn:focus-visible{outline:2px solid #f6dfa4;outline-offset:2px}
.ma-skip-text,.ma-countdown-badge{display:none}
.ma-art .ma-rabbit{transform-origin:190px 150px;animation:ma-hop 1.5s ease-in-out infinite}
.ma-art .ma-cloud{animation:ma-cloud 3s ease-in-out infinite alternate}
.ma-art .ma-cloud-back{animation-direction:alternate-reverse;animation-duration:3.8s}
.ma-art .ma-stars{animation:ma-stars 1s ease-in-out infinite alternate}
.ma-art .ma-petals{animation:ma-petals 2.5s linear infinite}
.ma-art>circle:nth-of-type(1),.ma-art>circle:nth-of-type(2){transform-origin:211px 82px;animation:ma-moon 2s ease-in-out infinite alternate}
.ma-paused .ma-art *{animation-play-state:paused!important}
@keyframes ma-hop{0%,100%{transform:translate(-16px,0) rotate(-4deg) scale(1.03,.96)}20%{transform:translate(-6px,-22px) rotate(2deg) scale(.97,1.04)}40%{transform:translate(10px,-3px) rotate(5deg) scale(1.04,.95)}60%{transform:translate(14px,-25px) rotate(-2deg) scale(.98,1.03)}80%{transform:translate(0,0) rotate(-4deg) scale(1.04,.96)}}
@keyframes ma-cloud{from{transform:translateX(-35px)}to{transform:translateX(30px)}}
@keyframes ma-stars{from{opacity:.15;transform:translateY(-3px)}to{opacity:1;transform:translateY(2px)}}
@keyframes ma-petals{0%{transform:translate(24px,-38px) rotate(-10deg);opacity:0}18%{opacity:1}82%{opacity:.9}100%{transform:translate(-28px,28px) rotate(15deg);opacity:0}}
@keyframes ma-moon{from{transform:scale(.9);opacity:.08}to{transform:scale(1.08);opacity:.25}}
@media(max-width:480px){.ma-dialog{width:100vw;height:410px}.ma-art{width:112%;max-width:none;flex-shrink:0}.ma-header{top:-12px;right:14px}}
@media(prefers-reduced-motion:reduce){.ma-overlay{transition:none}.ma-title{animation:none}.ma-art *{animation:none!important}}

/* Preserve the underlying page click/default action; only X is interactive. */
.ma-overlay{pointer-events:none}.ma-skip-btn{pointer-events:auto}
