body,html{margin:0;padding:0;background:#fff;overflow:hidden;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif}canvas{display:block}.press-start-2p-regular{font-family:"Press Start 2P",system-ui;font-weight:400;font-style:normal}#intro{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;z-index:100;opacity:1;transition:opacity .7s ease;overflow:hidden}#intro.hidden{opacity:0;pointer-events:none}#intro img{max-width:40vw;height:auto;z-index:101;display:block}@media (min-width:768px){#intro img{max-width:min(60vw,260px)}}#introSquare{position:absolute;left:50%;top:50%;width:200vmax;height:200vmax;background:#000;border-radius:0;transform:translate(-50%,-50%) scale(0);transition:transform 1.1s ease-out;z-index:100}#intro.expand-square #introSquare{transform:translate(-50%,-50%) scale(1)}#counter{position:fixed;top:40px;left:50%;transform:translateX(-50%);color:#00f;pointer-events:none;opacity:0;transition:opacity .3s;z-index:10;text-align:center;font-family:"Press Start 2P",system-ui;font-size:30px}@media (min-width:768px){#counter{font-size:40px}}#final{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(40px,6vw,60px);color:#00f;pointer-events:auto;opacity:0;transition:opacity .4s;text-align:center;font-family:"Press Start 2P",system-ui;line-height:1.3;z-index:10}.coming{color:#fff}.play-again{display:block;margin-top:24px;font-size:clamp(15px,2.5vw,24px);cursor:pointer;text-decoration:underline}.play-again:hover{color:#fff}#contactLink{position:fixed;right:20px;bottom:30px;color:#00f;text-decoration:underline;z-index:10;font-size:15px;font-family:"Press Start 2P",system-ui}#contactLink:hover{color:#fff}#aboutButton{position:fixed;left:20px;bottom:30px;color:#00f;background:0 0;border:none;text-decoration:underline;z-index:10;cursor:pointer;padding:0;font-size:15px;font-family:"Press Start 2P",system-ui}#aboutButton:hover{color:#fff}@media (min-width:768px){#aboutButton,#contactLink{font-size:25px;bottom:40px}}#aboutModal{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;z-index:200;overflow:hidden}#aboutModal.open{display:flex}.about-content{box-sizing:border-box;z-index:10000;max-width:min(80vw,540px);width:100%;max-height:90vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:3em;background:#000;color:#fff;border:6px solid #00f;text-align:left;position:relative}@media (max-width:767px){.about-content{border:4px solid #00f;padding:24px;max-width:88vw;max-height:90vh}}.about-title{font-family:"Press Start 2P",system-ui;font-size:20px;margin:0 0 16px;color:#00f}.about-tagline{font-family:"Press Start 2P",system-ui;font-size:24px;text-align:left;margin:0 0 1em 0;line-height:1.5;color:#00f}@supports (-webkit-text-stroke:1px #000){.about-tagline{color:transparent!important;-webkit-text-stroke:1px #00f;text-stroke:1px #00f;text-shadow:none!important}}.about-tagline span{margin-right:.5em}.about-text{font-family:DotGothic16,system-ui;font-size:13px;line-height:2;margin:0 0 20px;font-feature-settings:"palt"}.about-close{display:inline-block;margin-top:1em;font-family:"Press Start 2P",system-ui;font-size:14px;color:#00f;background:0 0;border:none;text-decoration:underline;cursor:pointer;padding:0;text-align:center;width:100%}.about-close:hover{color:#fff}@media (min-width:768px){.about-tagline{font-size:36px}.about-text{font-size:15px}.about-close{font-size:20px}}@media (min-width:768px){@supports (-webkit-text-stroke:1px #000){.about-tagline{color:transparent!important;-webkit-text-stroke:2px #00f;text-stroke:2px #00f}}}#tapHint{position:fixed;left:50%;top:58%;transform:translate(-50%,-50%) scale(.7);width:140px;z-index:50;pointer-events:none;opacity:0;transition:opacity .5s ease,transform .35s ease}#aboutModal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;z-index:200;overflow:hidden;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}.about-content{filter:none}#aboutModal{backdrop-filter:blur(6px)}