.site-header .age-badge{position:static;flex:none;display:block;width:52px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none}
.site-header .age-badge img{display:block;width:100%;height:auto;filter:none}
.site-header .age-badge:hover{box-shadow:none;transform:translateY(-1px)}
.refined-hero .refined-hero-inner{padding-top:0}
.age-dialog{width:840px;overflow:hidden}
.age-dialog-heading{padding-block:26px 24px}
.age-dialog .dialog-close{z-index:2}
.age-dialog-content{max-height:calc(88svh - 92px);overflow-y:auto;overscroll-behavior:contain;padding:29px 47px 36px;scrollbar-color:#91ab94 #edf2e8;scrollbar-width:thin}
.age-intro{font-size:16px;line-height:1.95;color:#425d4b;margin:0 0 23px}
.age-dialog-content:focus-visible{outline:2px solid #91ab94;outline-offset:-4px}
.reservation-counter{width:27%;max-width:455px;bottom:14%}
.reservation-counter output{font-size:clamp(40px,4.1vw,78px);letter-spacing:0}
.reservation-counter-heading{font-size:18px;letter-spacing:1.2px}
.world-motion{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:0;transition:opacity .5s}
.world-motion.is-ready{opacity:1}
.social-account>img[src$="social-bilibili.svg"]{width:83px;max-width:100%;height:36px;object-fit:contain}
.social-account>img[src$="social-douyin.svg"]{max-width:41px;height:36px}
@media(min-width:1200px) and (max-width:1400px){.reservation-counter{right:3%;width:23%}.reservation-counter output{font-size:42px}.reservation-counter-heading{font-size:16px}}
@media(min-width:1001px) and (max-width:1280px){.social-band{gap:15px}.social-account{padding-inline:6px}.social-account>img{max-width:68px}.social-mascot{width:120px;height:120px}.social-account>img[src$="social-bilibili.svg"]{max-width:68px}}
@media(max-width:1199px){.reservation-counter{width:auto;max-width:92%;bottom:150px}.reservation-counter output{font-size:48px}.reservation-counter-heading{font-size:15px}}
@media(max-width:780px){
 .site-header .age-badge{width:39px}.header-actions{gap:11px}.age-dialog-heading{padding:25px 48px 21px}.age-dialog-heading h2{font-size:22px;letter-spacing:0}.age-dialog-content{padding:23px 24px 28px;max-height:calc(88svh - 78px)}.age-intro{font-size:14px}.reservation-counter{bottom:149px}.reservation-counter output{font-size:43px}.reservation-counter-heading{font-size:14px}
 .social-account>img[src$="social-bilibili.svg"]{height:28px}.social-account>img[src$="social-douyin.svg"]{height:30px}
}
@media(prefers-reduced-motion:reduce){.world-motion{display:none}.site-header .age-badge:hover{transform:none}}
.music-toggle{display:grid;place-items:center;flex:none;width:40px;height:40px;background:transparent;color:inherit;border:0;border-radius:50%;opacity:.78;transition:opacity .2s,background .2s}
.music-toggle:hover,.music-toggle:focus-visible{opacity:1;background:#ffffff24}
.music-toggle:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.music-bars{display:flex;align-items:center;gap:3px;height:23px}
.music-bars i{width:3px;height:10px;border-radius:4px;background:currentColor;transform:scaleY(.35);transition:transform .25s}
.music-bars i:nth-child(2),.music-bars i:nth-child(4){height:17px}
.music-bars i:nth-child(3){height:23px}
.music-toggle.is-playing{opacity:1;color:var(--nav-accent)}
.music-toggle.is-playing i{animation:music-breathe .9s ease-in-out infinite alternate;transform:scaleY(1)}
.music-toggle.is-playing i:nth-child(2){animation-delay:-.3s}.music-toggle.is-playing i:nth-child(3){animation-delay:-.6s}.music-toggle.is-playing i:nth-child(4){animation-delay:-.2s}.music-toggle.is-playing i:nth-child(5){animation-delay:-.45s}
.music-credit{margin-top:14px;font-size:12px;line-height:1.8;color:inherit;opacity:.75}.music-credit a{text-decoration:underline;text-underline-offset:3px}
@keyframes music-breathe{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@media(max-width:780px){.music-toggle{width:30px;height:36px}.music-bars{gap:2px}.music-bars i{width:2px}.header-actions .account-button{display:none}}
@media(prefers-reduced-motion:reduce){.music-toggle.is-playing i{animation:none}}

/* Keep the PV entry beside the music control in the fixed navigation. */
.header-pv-button{display:grid;place-items:center;flex:none;width:56px;height:66px;padding:0;border:0;border-radius:14px;background:transparent;cursor:pointer}
.header-pv-button .pv-emblem{display:block;line-height:0}
.header-pv-button .pv-frame{display:block;width:48px;height:55px}
.header-pv-button .pv-frame path:last-child{fill:#75d6f7}
.header-pv-button:hover{background:#ffffff18}
.header-pv-button:focus-visible{outline:2px solid var(--nav-accent);outline-offset:3px}
@media(min-width:781px) and (max-width:1100px){.site-header .site-nav a{padding-inline:9px}.header-actions{gap:10px}.header-pv-button{width:46px}}
@media(max-width:780px){.header-pv-button{width:36px;height:48px}.header-pv-button .pv-frame{width:34px;height:39px}.header-actions{gap:8px}.site-header,.game .site-header:not(.scrolled){padding-inline:3%;gap:10px}.site-brand img{width:68px}.nav-reserve{padding-inline:12px}}
@media(max-width:360px){.header-actions{gap:6px}.site-brand img{width:58px}.nav-reserve{padding-inline:9px;font-size:13px}.site-header .age-badge{width:34px}}

/* Place the desktop reservation group closer to the bottom, above the scroll cue. */
@media(min-width:1200px) and (min-height:650px){.static-hero .hero-reservation{bottom:max(76px,8%)}}
