*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#100f0c;color:#cbb78b;font-family:Georgia,"Songti SC","SimSun",serif}body{height:100dvh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 35%,#29241a,#100f0c 75%)}main{width:min(100%,1920px,calc((100dvh - 176px)*1672/940 + 56px));padding:24px 28px}header{display:flex;align-items:center;gap:16px;margin-bottom:20px}h1{font-size:23px;font-weight:400;letter-spacing:.3em;margin:0}.seal{border:1px solid #9a7446;padding:4px 6px;color:#d4af6b}#stage{width:100%;aspect-ratio:1672/940;position:relative;overflow:hidden;background:#151410;box-shadow:0 15px 65px #0008;outline:1px solid #c9aa6533}#stage img,#stage canvas{position:absolute;width:100%;height:100%;display:block;inset:0}#scene{opacity:0}#scene.ready{opacity:1}footer{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:20px;font-size:14px}.names{letter-spacing:.22em}.names i{font-style:normal;padding:0 14px;color:#79694c}button{font:inherit;color:#d4c5a4;background:#ffffff05;border:1px solid #a68a543d;padding:9px 16px;cursor:pointer;min-height:40px}button:hover{background:#bda26418}button:focus-visible{outline:2px solid #edcc82;outline-offset:4px}#status{min-height:1em;color:#998b72;font-size:13px;margin:12px 0 0}@media(max-width:640px){main{padding:16px 10px}header{margin-bottom:16px}h1{font-size:20px}footer{flex-direction:column;gap:18px}.names i{padding:0 10px}#status{text-align:center}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
#music-toggle{margin-left:auto;position:relative;flex-shrink:0;width:36px;height:36px;min-height:36px;padding:0;border:0;background:#161c22;transition:background .3s;border-radius:50%;display:grid;place-items:center}#music-toggle img{display:block;width:16px;height:16px;object-fit:contain;animation:music-spin 8s linear infinite;animation-play-state:paused}#music-toggle[aria-pressed="false"]::after{content:"";position:absolute;top:50%;left:7px;width:22px;height:2px;background:#d94f43;border-radius:2px;transform:translateY(-50%) rotate(45deg);pointer-events:none}@media(max-width:640px){header{gap:10px}header #music-toggle{margin-left:auto}}

#music-toggle.is-playing img{animation-play-state:running}@keyframes music-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#music-toggle img{animation:none}}

#status:empty{display:none}#music-toggle:hover{background:#d4af371a}
