*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0}body{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;color:#fff8e8}.game{position:relative;width:100%;height:100%;min-height:460px;overflow:hidden;background:linear-gradient(#243f4a 0%,#31585a 100%)}.moon{position:absolute;z-index:1;top:11%;right:18%;width:clamp(118px,13vw,210px);aspect-ratio:1;border-radius:50%;background:#cf9e86;pointer-events:none}.game::before{content:"";position:absolute;bottom:-11%;left:-10%;width:120%;height:35%;border-radius:50% 50% 0 0;background:#294b4a;pointer-events:none}.game::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.4;background-image:radial-gradient(circle,#ffedc4 1px,transparent 1.5px),radial-gradient(circle,#ffedc4 1px,transparent 1.5px);background-size:170px 160px,230px 210px;background-position:24px 70px,130px 150px}.hud{position:absolute;inset:0 0 auto;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px clamp(20px,4vw,60px);font-size:13px}.back{color:inherit;text-decoration:none;display:inline-flex;gap:9px;align-items:center;min-height:38px}.back:hover{text-decoration:underline;text-underline-offset:5px}.stats{display:flex;gap:27px}.stats strong{font-size:21px;color:#ffe2a4;font-variant-numeric:tabular-nums}.play-area{position:absolute;inset:70px 0 0;z-index:2}.light-piece{position:absolute;width:50px;height:50px;border:0;background:transparent;color:#fff0b3;display:grid;place-items:center;filter:drop-shadow(0 0 13px #f9da97);cursor:pointer;animation:pulse 1.8s ease-in-out infinite}.light-piece svg{width:38px;height:38px;fill:currentColor}.light-piece:hover{transform:scale(1.2)}.light-piece:focus-visible,.back:focus-visible,button:focus-visible{outline:3px solid #fff3c8;outline-offset:4px}.overlay{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:rgba(26,46,54,.26)}.overlay[hidden]{display:none}.overlay h1,.overlay h2{font-family:'Hiragino Mincho ProN','Yu Mincho',serif;font-weight:500;font-size:clamp(36px,7vw,75px);letter-spacing:-.06em;margin:13px 0}.overlay p{font-size:14px;line-height:2;max-width:490px;margin:0 0 25px}.overlay p strong{font-size:38px;color:#ffe2a4}.overlay button{border:0;background:#fff4d9;color:#263b40;padding:13px 24px;font-size:14px;font-weight:700;cursor:pointer;min-height:52px}.overlay button:hover{background:#ffe2ad}.overlay button span{margin-left:16px}@keyframes pulse{50%{opacity:.57;filter:drop-shadow(0 0 4px #f9da97)}}@media(max-width:540px){.hud{padding:13px 17px;font-size:12px}.stats{gap:14px}.stats strong{font-size:17px}.overlay p{font-size:12px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important}}
