@font-face{font-family:Lilita One;src:url(./LilitaOne-Regular-C8J_njg9.ttf)format("truetype");font-display:swap}*{box-sizing:border-box;-webkit-text-stroke:0 transparent;font-weight:400}html,body{background:#000;width:100%;height:100%;margin:0;padding:0;font-family:Lilita One,cursive;overflow:hidden}body{touch-action:none}#game-shell{background:#000;width:100vw;height:100vh;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}#game-container{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}#game-container canvas{display:block}#scoreboard{z-index:10;aspect-ratio:2048/655;pointer-events:none;filter:drop-shadow(0 5px 6px #0003);width:clamp(280px,34vw,430px);position:absolute;top:-6px;left:50%;transform:translate(-50%)}#scoreboard img{object-fit:contain;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.score{color:#fff;text-shadow:0 2px 3px #0008;font-size:clamp(30px,4vw,54px);font-weight:400;line-height:1;position:absolute;top:34%;transform:translate(-50%,-50%)}.score-left{left:20.5%}.score-right{left:79.5%}.rule{white-space:nowrap;text-align:center;color:#fff;letter-spacing:.08em;text-shadow:0 2px 4px #124;width:21.5%;font-size:clamp(10px,1.05vw,14px);font-weight:400;position:absolute;top:80.1%;left:51.1%;transform:translate(-50%,-50%)}.game-controls{z-index:16;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;gap:15px;padding:8px 4px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.game-controls[hidden]{display:none}.game-controls-left{top:18px;left:18px;transform:none}.game-controls-right{top:18px;right:18px;transform:none}.icon-button{color:#2d2d2d;width:48px;height:42px;font:inherit;box-shadow:none;text-shadow:none;background:#fff;border:2px solid #fff;border-radius:10px;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.icon-button span{display:none}.icon-button:before{content:"";background:50%/contain no-repeat;place-items:center;width:25px;height:25px;margin:0;display:grid}.icon-button i{z-index:3;pointer-events:none;place-items:center;width:25px;height:25px;margin:0;font-style:normal;line-height:1;display:grid;position:relative}.game-controls-left .icon-button{background:linear-gradient(#55c8ed 0%,#2baed8 48%,#159ed0 100%);border:2px solid #fff;border-radius:11px;width:46px;height:46px;box-shadow:0 3px #26343d,0 4px 4px #00000038,inset 0 0 0 3px #fff,inset 0 0 0 5px #43bce5}#soundBtn:before{filter:drop-shadow(1px 0 #1b2930)drop-shadow(-1px 0 #1b2930)drop-shadow(0 1px #1b2930)drop-shadow(0 -1px #1b2930);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M4 9v6h4l5 4V5L8 9H4Zm12.5 3a4.5 4.5 0 0 0-2-3.74v7.48A4.5 4.5 0 0 0 16.5 12Zm0-8.5v2.1A7.5 7.5 0 0 1 20.5 12a7.5 7.5 0 0 1-4 6.4v2.1A9.5 9.5 0 0 0 22.5 12a9.5 9.5 0 0 0-6-8.5Z'/%3E%3C/svg%3E")}#musicBtn:before{filter:drop-shadow(1px 0 #1b2930)drop-shadow(-1px 0 #1b2930)drop-shadow(0 1px #1b2930)drop-shadow(0 -1px #1b2930);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 5v10.15A3.5 3.5 0 1 0 11 18V9.2l8-1.6v5.55A3.5 3.5 0 1 0 21 16V3L9 5Z'/%3E%3C/svg%3E")}#soundBtn:before,#musicBtn:before{filter:drop-shadow(1px 0 #0d6f9c)drop-shadow(-1px 0 #0d6f9c)drop-shadow(0 1px #0d6f9c)drop-shadow(0 -1px #0d6f9c)}#restartBtn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M20 11a8 8 0 1 0-2.3 5.7M20 5v6h-6'/%3E%3C/svg%3E")}#pauseBtn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M6 4h4v16H6V4Zm8 0h4v16h-4V4Z'/%3E%3C/svg%3E")}#pauseBtn.is-paused:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5v14l11-7L8 5Z'/%3E%3C/svg%3E")}#exitBtn:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='m6.7 5.3 5.3 5.3 5.3-5.3 1.4 1.4-5.3 5.3 5.3 5.3-1.4 1.4-5.3-5.3-5.3 5.3-1.4-1.4 5.3-5.3-5.3-5.3 1.4-1.4Z'/%3E%3C/svg%3E")}#soundBtn:before,#musicBtn:before,#restartBtn:before,#pauseBtn:before,#exitBtn:before,.help-button:before{filter:drop-shadow(1px 0 #0d6f9c)drop-shadow(-1px 0 #0d6f9c)drop-shadow(0 1px #0d6f9c)drop-shadow(0 -1px #0d6f9c);color:#fff;background:0 0;place-items:center;width:25px;height:25px;font-family:"Font Awesome 6 Free";font-size:24px;font-weight:900;line-height:1;display:grid}#soundBtn:before{content:""}#musicBtn:before{content:""}#restartBtn:before{content:"";filter:drop-shadow(1px 0 #a3262c)drop-shadow(-1px 0 #a3262c)drop-shadow(0 1px #a3262c)drop-shadow(0 -1px #a3262c)}#pauseBtn:before{content:"";filter:drop-shadow(1px 0 #a3262c)drop-shadow(-1px 0 #a3262c)drop-shadow(0 1px #a3262c)drop-shadow(0 -1px #a3262c)}#pauseBtn.is-paused:before{content:""}#exitBtn:before{content:"";filter:drop-shadow(1px 0 #a3262c)drop-shadow(-1px 0 #a3262c)drop-shadow(0 1px #a3262c)drop-shadow(0 -1px #a3262c);display:none}.game-controls-right #exitBtn i{z-index:3;color:#fff;text-shadow:1px 0 #a3262c,-1px 0 #a3262c,0 1px #a3262c,0 -1px #a3262c;font-family:"Font Awesome 6 Free";font-size:25px;font-weight:900;line-height:1;position:relative}.help-button:before{display:none}.help-button i{z-index:3;color:#fff;text-shadow:1px 0 #0d6f9c,-1px 0 #0d6f9c,0 1px #0d6f9c,0 -1px #0d6f9c;place-items:center;width:25px;height:25px;margin:0;padding:0;font-family:"Font Awesome 6 Free";font-size:25px;font-weight:900;line-height:1;display:grid;position:relative}.game-controls-right .icon-button{background:linear-gradient(#f76569 0%,#ed5157 48%,#dc3d44 100%);border:2px solid #fff;border-radius:11px;width:46px;height:46px;box-shadow:0 3px #26343d,0 4px 4px #00000038,inset 0 0 0 3px #fff,inset 0 0 0 5px #bd3238}.game-controls-left .icon-button:hover{background:linear-gradient(#69d2f2 0%,#38b8df 48%,#20a9d8 100%);outline:none}.game-controls-left .icon-button:focus-visible{background:linear-gradient(#69d2f2 0%,#38b8df 48%,#20a9d8 100%);outline:none}.game-controls-right .icon-button:hover{background:linear-gradient(#ff777b 0%,#f25d63 48%,#e6474e 100%);outline:none}.game-controls-right .icon-button:focus-visible{background:linear-gradient(#ff777b 0%,#f25d63 48%,#e6474e 100%);outline:none}.game-controls-right .icon-button:before{z-index:3;filter:drop-shadow(1px 0 #a3262c)drop-shadow(-1px 0 #a3262c)drop-shadow(0 1px #a3262c)drop-shadow(0 -1px #a3262c);width:25px;height:25px;position:relative}.game-controls-right .icon-button:hover:before{filter:brightness(1.08)drop-shadow(1px 0 #a3262c)drop-shadow(-1px 0 #a3262c)drop-shadow(0 1px #a3262c)drop-shadow(0 -1px #a3262c)}.game-controls .icon-button:before{filter:drop-shadow(1px 0 #26343d)drop-shadow(-1px 0 #26343d)drop-shadow(0 1px #26343d)drop-shadow(0 -1px #26343d)}.game-controls .help-button i,.game-controls-right #exitBtn i{text-shadow:1px 0 #26343d,-1px 0 #26343d,0 1px #26343d,0 -1px #26343d}.icon-button:hover{background:#fff;outline:none}.icon-button:focus-visible{background:#fff;outline:none}.icon-button:active{transform:translateY(2px)}.icon-button.is-off{opacity:1}.icon-button.is-off:after{content:"";z-index:5;pointer-events:none;background:#e32626;border-radius:3px;width:30px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg);box-shadow:1px 0 #8c1717,-1px 0 #8c1717,0 1px #8c1717,0 -1px #8c1717}.icon-button-exit{background:#fff}#pause-overlay{z-index:19;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);color:#fff;background:#080d13bc;place-items:center;padding:18px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.pause-card{text-align:center;background:linear-gradient(160deg,#238fc0f7,#07517dfc);border:3px solid #fff;border-radius:22px;justify-items:center;gap:24px;width:min(420px,90vw);padding:38px 30px 32px;display:grid;box-shadow:0 25px 80px #000d}#pause-overlay strong{letter-spacing:.04em;text-shadow:0 3px #063e61;font-size:clamp(42px,7vw,80px)}#resumeBtn{color:#07517d;background:#fff;border:2px solid #fff;min-width:180px;margin:0;box-shadow:0 4px #063e61}#game-over-modal{z-index:30;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080d13a8;place-items:center;padding:20px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.game-over-card{text-align:center;color:#fff;background:linear-gradient(160deg,#238fc0f7,#07517dfc);border:3px solid #fff;border-radius:22px;width:min(470px,90vw);padding:40px 34px 34px;position:relative;box-shadow:0 25px 80px #000d}.game-over-card h2{letter-spacing:-.045em;text-shadow:0 3px #063e61;margin:0;font-size:clamp(44px,8vw,72px);line-height:1}.game-over-card>strong{color:#fff;letter-spacing:.04em;text-shadow:0 2px #063e61;margin-top:18px;font-size:clamp(23px,4vw,34px);display:block}.game-over-card .modal-close{background:#07517d;border-color:#fff;box-shadow:0 4px #063e61}.game-over-card .modal-restart{color:#07517d;background:#fff;border:2px solid #fff;min-width:210px;margin-top:28px;box-shadow:0 4px #063e61}.modal-close{color:#fff;background:#8e201a;border:2px solid #fff8;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-size:29px;line-height:1;display:grid;position:absolute;top:13px;right:13px;box-shadow:0 4px #3f0906}.help-button{font-size:0;color:#fff!important}.help-button:before{content:none;display:none}#help-modal{z-index:32;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#080d13bc;place-items:center;padding:18px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.help-card{color:#fff;text-align:center;background:linear-gradient(160deg,#238fc0f7,#07517dfc);border:3px solid #fff;border-radius:22px;width:min(620px,92vw);padding:32px 30px 28px;position:relative;box-shadow:0 25px 80px #000d}.help-card .modal-close{color:#fff;background:#07517d;border-color:#fff;box-shadow:0 4px #063e61}.help-card p{color:#d9f7ff;letter-spacing:.2em;margin:0 0 3px;font-size:12px}.help-card h2{margin:0 0 18px;font-size:clamp(32px,6vw,50px);line-height:1}.help-modes{text-align:left;grid-template-columns:1fr 1fr;gap:18px;display:grid}.help-modes section{background:#063e61aa;border:2px solid #fff8;border-radius:14px;padding:15px}.help-modes h3{color:#fff;text-align:center;margin:0 0 12px;font-size:19px}.key-row{align-items:center;gap:6px;min-height:34px;font-size:12px;display:flex}.key-row b{letter-spacing:.03em;margin-left:4px;font-weight:400}.key{color:#1a607e;white-space:nowrap;background:#fff;border:2px solid #26343d;border-radius:6px;place-items:center;min-width:29px;height:29px;padding:0 5px;font-size:13px;display:inline-grid;box-shadow:0 2px #26343d}.key-wide{min-width:88px}.help-modes .key-row{display:none}.tutorial-row{align-items:center;gap:6px;min-height:36px;font-size:12px;display:flex}.tutorial-row b{letter-spacing:.03em;margin-left:4px;font-weight:400}.tutorial-control{align-items:center;gap:10px;min-height:48px;font-size:12px;display:flex}.tutorial-control b{letter-spacing:.03em;font-weight:400}.tutorial-or{text-align:center;color:#d9f7ff;letter-spacing:.18em;margin:5px 0;font-size:11px}.keyboard-layout{justify-content:center;align-items:center;gap:3px;min-width:104px;display:grid}.keyboard-layout.wasd{grid-template-rows:repeat(2,29px);grid-template-columns:repeat(3,29px)}.keyboard-layout.wasd .key:nth-child(2){grid-column:2}.keyboard-layout.wasd .key:nth-child(4){grid-column:1}.keyboard-layout.wasd .key:nth-child(5){grid-column:2}.keyboard-layout.wasd .key:nth-child(6){grid-column:3}.keyboard-layout.arrows{grid-template-columns:repeat(4,29px)}.help-modes section img{object-fit:contain;width:min(150px,85%);height:58px;margin:0 auto 8px;display:block}.modal-restart{min-width:210px}.modal-restart span{vertical-align:-2px;margin-right:7px;font-size:24px;display:inline-block}#custom-match-modal{z-index:31;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#080d13bc;place-items:center;padding:18px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.custom-match-card{color:#fff;background:linear-gradient(160deg,#238fc0f7,#07517dfc);border:3px solid #fff;border-radius:22px;grid-template-columns:1fr 1fr;gap:12px 15px;width:min(520px,92vw);padding:35px 34px 30px;display:grid;position:relative;box-shadow:0 25px 80px #000d}.custom-match-card>p,.custom-match-card>h2,.custom-match-card>.custom-start{grid-column:1/-1}.custom-match-card>p{text-align:center;color:#d9f7ff;letter-spacing:.22em;margin:0;font-size:12px;font-weight:400}.custom-match-card>h2{text-align:center;text-shadow:0 3px #063e61;margin:0 0 8px;font-size:clamp(34px,7vw,52px);line-height:1}.custom-match-card>label{letter-spacing:.1em;align-self:center;font-size:13px;font-weight:400}.custom-match-card select{color:#fff;width:100%;font:inherit;background:#07517d;border:2px solid #fff;border-radius:10px;padding:12px;font-size:15px;font-weight:400}.custom-start{color:#07517d;background:#fff;border:2px solid #fff;margin-top:8px;box-shadow:0 4px #063e61}.custom-match-card .modal-close{background:#07517d;border-color:#fff;box-shadow:0 4px #063e61}#message{z-index:12;text-align:center;color:#fff;pointer-events:none;text-shadow:0 4px 12px #0008;position:absolute;top:31%;left:50%;transform:translate(-50%,-50%)}.message-part-off{display:none!important}#messageTitle{letter-spacing:.03em;font-size:clamp(40px,7vw,82px);font-weight:400}#messageSub{font-size:20px;font-weight:400}#countdown{z-index:18;color:#fff;text-shadow:0 8px #090b0d,0 18px 35px #000b;pointer-events:none;font-size:clamp(100px,18vw,210px);font-weight:400;line-height:1;position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)}#intro-tutorial{z-index:40;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#080d13bc;place-items:center;padding:18px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.intro-tutorial-card{color:#fff;text-align:center;background:linear-gradient(160deg,#238fc0f7,#07517dfc);border:3px solid #fff;border-radius:22px;width:min(620px,94vw);padding:28px 26px 24px;box-shadow:0 25px 80px #000d}.intro-tutorial-card>p:first-child{color:#d9f7ff;letter-spacing:.2em;margin:0 0 3px;font-size:12px}.intro-tutorial-card h2{text-shadow:0 3px #063e61;margin:0 0 18px;font-size:clamp(32px,6vw,50px);line-height:1}.intro-players{grid-template-columns:1fr;gap:16px;display:grid}.intro-players .intro-player:nth-child(2){display:none}.intro-player{background:#063e61aa;border:2px solid #fff8;border-radius:14px;padding:16px}.intro-player img{object-fit:contain;width:min(160px,90%);height:76px;margin:0 auto 8px;display:block}.intro-player h3,.intro-hint{display:none}.intro-player .keyboard-layout{margin:0 auto}.intro-player small{letter-spacing:.05em;margin-top:9px;font-size:10px;display:block}.intro-note{color:#d9f7ff;letter-spacing:.08em;margin:16px 0 0;font-size:11px}.intro-tutorial-card>button{color:#07517d;background:#fff;border:2px solid #fff;min-width:190px;margin-top:22px;box-shadow:0 4px #063e61}.hidden{opacity:0;visibility:hidden}#start-screen{z-index:20;background:#000 url(./menu-D3_RO2sZ.png) 50%/100% 100% no-repeat;place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}#start-screen.off{display:none}.menu-panel{text-align:center;color:#fff;flex-direction:column;align-items:center;width:min(700px,94vw);max-height:100%;padding:18px;display:flex}.menu-panel h1{width:min(620px,92vw);margin:0 auto 14px;line-height:0;text-decoration:none;display:block}.menu-panel h1 img{object-fit:contain;filter:drop-shadow(0 8px 12px #1d0b06aa);width:100%;height:auto;max-height:25vh;display:block}.menu-panel h1 span{letter-spacing:.22em;color:#ffd21a;text-shadow:0 4px #8d3c08,0 8px 16px #1d0b06aa;margin-top:12px;font-size:.47em;display:block}.menu-options{flex-direction:column;align-items:center;gap:7px;width:100%;margin:auto;display:flex}.version-label{color:#fff;letter-spacing:.12em;opacity:.9;-webkit-text-stroke:.45px #111;text-shadow:0 2px 3px #000000bf;margin-top:18px;font-size:13px}.menu-button{color:#fff;width:min(360px,84vw);height:81px;font:inherit;letter-spacing:-.15px;text-shadow:0 1px 1px #00000040;border:2px solid;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-size:27px;font-weight:400;text-decoration:none;display:flex;position:relative;overflow:hidden;box-shadow:0 3px #00000073,0 4px 5px #00000047,inset 0 1px #fffc,inset 0 -2px #00000029}.menu-button:before{content:"";pointer-events:none;background:linear-gradient(#ffffff57 0%,#ffffff21 50%,#fff0 100%);border-radius:8px 8px 45% 45%;height:45%;position:absolute;top:2px;left:5px;right:5px}.menu-button .label{z-index:2;white-space:nowrap;position:relative}.menu-icon{z-index:2;color:#fff;text-shadow:0 1px 1px #0000004d;font-size:31px;line-height:1;position:relative}.menu-button .label,.menu-button .menu-icon{-webkit-text-stroke:.35px #00000080}.menu-button:hover{filter:brightness(1.08);outline-offset:3px;outline:3px solid #fff;transform:translateY(-1px)}.menu-button:focus-visible{filter:brightness(1.08);outline-offset:3px;outline:3px solid #fff;transform:translateY(-1px)}.menu-button:active{transform:translateY(2px);box-shadow:0 1px #00000073,inset 0 2px 5px #0003,inset 0 1px #ffffff80}.menu-button-primary{color:#fff}.menu-button.orange{color:#fff;background:linear-gradient(#ffb52a 0%,#f79a0b 35%,#ed7d00 65%,#d85a00 100%);border-color:#9b4d00}.menu-button.orange .label,.menu-button.orange .menu-icon{z-index:3;color:#fff;text-shadow:0 2px 2px #5a2300b3;position:relative}.menu-button.red{background:linear-gradient(#ef4240 0%,#e62f2e 30%,#de2223 62%,#cd0b0e 100%);border-color:#941417}.menu-button.blue{background:linear-gradient(#2b6fe4 0%,#1c63de 30%,#1254ce 60%,#003aaf 100%);border-color:#07317f}.menu-button.green{background:linear-gradient(#55d889 0%,#25be68 35%,#0c9d4e 65%,#08763d 100%);border-color:#075b32}button{color:#171717;font:inherit;cursor:pointer;background:#ffd21a;border:0;border-radius:14px;padding:14px 34px;font-size:18px;box-shadow:0 6px #b78c00}button:focus-visible{outline:none}button:active{transform:translateY(4px);box-shadow:0 2px #b78c00}@media (max-width:650px){#scoreboard{width:min(320px,82vw);top:-4px}.score{font-size:clamp(26px,8vw,42px)}.rule{font-size:9px;top:80.1%}.game-controls{flex-direction:row;gap:8px;padding:0;top:auto;bottom:16px}.game-controls-left{flex-direction:column;top:12px;bottom:auto;left:12px}.game-controls-right{flex-direction:column;top:12px;bottom:auto;right:12px}.icon-button{width:38px;height:36px;font-size:22px}.game-controls-left .icon-button,.game-controls-right .icon-button{width:46px;height:46px}.icon-button:before{width:21px;height:21px}.icon-button.is-off:after{width:28px;height:4px}.menu-panel{padding:12px}.menu-panel h1{width:min(580px,94vw);margin-bottom:10px}.menu-panel h1 img{max-height:23vh}.menu-options{gap:8px}.menu-button{width:min(360px,88vw);height:72px;padding:0 20px;font-size:22px}.menu-icon{font-size:26px}}@media (max-height:560px) and (min-width:651px){.menu-panel{padding:8px}.menu-panel h1{width:min(480px,72vw);margin-bottom:7px}.menu-panel h1 img{max-height:20vh}.menu-options{gap:5px}.menu-button{width:min(330px,52vw);height:58px;font-size:22px}.menu-icon{font-size:25px}.version-label{margin-top:8px;font-size:11px}}@media (max-width:650px){.help-card{padding:28px 16px 20px}.help-modes{grid-template-columns:1fr;gap:10px}.help-modes section{padding:12px}.help-card .modal-close{top:9px;right:9px}.intro-tutorial-card{padding:22px 14px 20px}.intro-tutorial-card h2{margin-bottom:12px}.intro-players{gap:8px}.intro-player{padding:9px 5px}.intro-player img{height:58px}.intro-player h3{font-size:15px}.intro-player small{font-size:8px}.intro-hint{margin:14px 0 10px;font-size:10px}}
