/* Mallow panel with MA-04 “playful” dots adapted from Menu Animation Knowledge. */
.mm-toggle,.mobile-menu-only{display:none}
@media(max-width:760px){
 .mobile-menu-ready header.mm-screen{--motion-duration:var(--ma-duration,550ms);--ease:cubic-bezier(.2,1.15,.45,1);grid-template-columns:1fr auto;column-gap:16px;padding-inline:5%;overflow:visible}
 .mobile-menu-ready header .mm-toggle{grid-column:2;grid-row:1;justify-self:end;display:flex;align-items:center;justify-content:center;width:48px;height:44px;padding:4px;border:2px solid #c6acd6;border-radius:16px 19px 15px 18px;background:#fff8ed;color:var(--ink);position:relative;z-index:2;touch-action:manipulation}
 .mm-glyph{position:relative;display:block;flex:none;width:36px;height:36px}
 .mm-glyph b{position:absolute;display:block;width:8px;height:8px;top:14px;border-radius:50%;box-shadow:0 0 0 1px #7f5b79;transition:transform var(--motion-duration) cubic-bezier(.34,1.7,.4,1),opacity var(--motion-duration),width var(--motion-duration) cubic-bezier(.34,1.7,.4,1),border-radius var(--motion-duration) cubic-bezier(.34,1.7,.4,1)}
 .mm-glyph b:nth-child(1){left:2px;background:#c6acd6}
 .mm-glyph b:nth-child(2){left:14px;background:#ffd4af}
 .mm-glyph b:nth-child(3){left:26px;background:#a9d9c8}
 .is-open .mm-glyph b:nth-child(1){width:32px;height:6px;border-radius:5px;transform:translateY(1px) rotate(45deg)}
 .is-open .mm-glyph b:nth-child(2){transform:scale(0)}
 .is-open .mm-glyph b:nth-child(3){width:32px;height:6px;border-radius:5px;transform:translate(-24px,1px) rotate(-45deg)}
 .mobile-menu-ready header nav.mm-panel{grid-area:auto;justify-self:stretch;position:absolute;top:calc(100% + 8px);left:12px;right:12px;width:auto;max-height:calc(100svh - 84px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:14px;border:2px solid #c6acd6;border-radius:42%;background:#fff8ed;box-shadow:0 6px 0 #4a21411f;font-family:"Pote Pixel Heading","Hiragino Maru Gothic ProN",sans-serif;font-size:20px;line-height:1.5;letter-spacing:.08em;transform:scale(.02);transform-origin:95% 0;opacity:0;visibility:hidden;transition:transform var(--motion-duration) var(--ease),border-radius var(--motion-duration) var(--ease),opacity var(--motion-duration)}
 .mobile-menu-ready header.is-open nav.mm-panel{transform:scale(1);border-radius:24px 28px 23px 26px;opacity:1;visibility:visible}
 .mobile-menu-ready header.is-closing nav.mm-panel{visibility:visible}
 .mobile-menu-ready header nav.mm-panel a{display:flex;align-items:center;justify-content:center;flex:none;min-height:44px;padding:8px 14px;border:0;border-radius:18px;background:#eadff7;text-decoration:none;transform:translateY(8px);opacity:0;transition:transform var(--motion-duration) var(--ease),opacity var(--motion-duration)}
 .mobile-menu-ready header nav.mm-panel a:nth-child(3n+2){background:#e3f3d8}
 .mobile-menu-ready header nav.mm-panel a:nth-child(3n){background:#ffe3c7}
 .mobile-menu-ready header.is-open nav.mm-panel a{transform:none;opacity:1;transition-delay:calc(var(--i) * 25ms)}
 .mobile-menu-ready header nav.mm-panel a:hover{border:0}
 .mobile-menu-ready header nav.mm-panel a:focus-visible{outline-offset:1px}
 .game-corner-sign{scroll-margin-top:4px}
 #special-title,#gallery-title{scroll-margin-top:16px}
}
@media(prefers-reduced-motion:reduce){
 .mobile-menu-ready header.mm-screen *{transition:none!important}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
