@font-face{font-family:JFDot-normal;src:url(/assets/JF-Dot-K14-2004-DIxrIL8b.ttf) format("truetype")}@font-face{font-family:JFDot bold;src:url(/assets/JF-Dot-K14B-2004-DQ2AwaBo.ttf) format("truetype")}@font-face{font-family:sburbits;src:url(/assets/sburbits-D8GewKmt.ttf) format("truetype")}@font-face{font-family:"Press Start 2P";src:url(/assets/PressStart2P-Regular-DogiNJoF.ttf) format("truetype");text-rendering:optimizeSpeed}#home img{position:absolute;left:200px;top:8px;width:210px;image-rendering:pixelated;z-index:-1;transition:left .5s steps(12,end),top .5s steps(12,end),width .5s steps(12,end)}#home .menu{position:absolute;width:200px;height:100%;display:flex;justify-content:center;flex-direction:column;left:15px}#home .menu button{margin-bottom:10px;width:fit-content;font-size:1em;transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#home .menu button:nth-child(1){transition-delay:.08s}#home .menu button:nth-child(2){transition-delay:.16s}#home .menu button:nth-child(3){transition-delay:.24s}#home .menu button:nth-child(4){transition-delay:.32s}#home .menu button:nth-child(5){transition-delay:.4s}#home .menu button:nth-child(6){transition-delay:.48s}#home .menu button:nth-child(7){transition-delay:.56s}#home .menu button:nth-child(2){margin-left:8px}#home .menu button:nth-child(3){margin-left:16px}#home .menu button:nth-child(4){margin-left:24px}#home .menu button:nth-child(5){margin-left:32px}#home .menu button:nth-child(6){margin-left:40px}#home .menu button:nth-child(7){margin-left:48px}#home #press-key{position:absolute;bottom:35px;left:50%;transform:translate(-50%);color:#fff;font-size:.5em;white-space:nowrap;opacity:0;transition:opacity .2s steps(12,end);pointer-events:none}#home.intro img{left:60px;top:62px;width:280px}#home.outro img,#home.entering img{left:420px}#home.entering img{transition-delay:0s!important}#home.entering .menu button,#home.intro .menu button{opacity:0;transform:translate(-40px);pointer-events:none;transition-delay:0s!important}#home.outro .menu button{opacity:0;transform:translate(-40px);pointer-events:none}#home.outro .menu button:nth-child(1){transition-delay:0s}#home.outro .menu button:nth-child(2){transition-delay:.06s}#home.outro .menu button:nth-child(3){transition-delay:.12s}#home.outro .menu button:nth-child(4){transition-delay:.18s}#home.outro .menu button:nth-child(5){transition-delay:.24s}#home.outro .menu button:nth-child(6){transition-delay:.3s}#home.intro #press-key{opacity:1;animation:blink 1.2s step-end infinite}@keyframes blink{50%{opacity:0}}#difficulty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px}#difficulty>*{transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#difficulty>*:nth-child(1){transition-delay:.08s}#difficulty>*:nth-child(2){transition-delay:.16s}#difficulty>*:nth-child(3){transition-delay:.24s}#difficulty #difficulty-selector{display:flex;align-items:center;justify-content:center;gap:16px;width:100%}#difficulty #difficulty-selector .arrow{image-rendering:pixelated}#difficulty #difficulty-selector .arrow-left{transform:scaleX(-1)}#difficulty #difficulty-selector #difficulty-display{width:160px;text-align:center}#difficulty #difficulty-selector #difficulty-display #diff-name{transform:translateZ(0);font-size:2em;text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black}#difficulty #difficulty-selector #difficulty-display #diff-name.easy{color:#5b9bd5}#difficulty #difficulty-selector #difficulty-display #diff-name.normal{color:#6abf69}#difficulty #difficulty-selector #difficulty-display #diff-name.hard{color:gold}#difficulty #difficulty-selector #difficulty-display #diff-name.lunatic{color:#f44}#difficulty #diff-counter{font-size:.35em;color:#fff;opacity:.5;letter-spacing:1px}#difficulty #diff-description{font-size:.5em;color:#fff;opacity:.7;text-align:center;padding:0 20px;line-height:1.8;min-height:32px}#difficulty.entering>*,#difficulty.outro>*{opacity:0!important;transform:translateY(20px);pointer-events:none}#difficulty.entering>*{transition-delay:0s!important}#difficulty.outro>*:nth-child(1){transition-delay:0s}#difficulty.outro>*:nth-child(2){transition-delay:.06s}#difficulty.outro>*:nth-child(3){transition-delay:.12s}#characters{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}#characters #char-layout{display:flex;width:100%;height:80%;align-items:center}#characters #char-info{width:50%;height:100%;display:flex;flex-direction:column;justify-content:center;padding-left:16px;gap:12px}#characters #char-info #char-counter{font-size:.5em;color:#fff;opacity:.5}#characters #char-info #char-stats{display:flex;flex-direction:column;gap:10px}#characters #char-info #char-stats .stat-line{display:flex;flex-direction:column;gap:2px}#characters #char-info #char-stats .stat-label{font-size:.5em;color:#fff;letter-spacing:1px}#characters #char-info #char-stats .stat-value{font-size:.5em;color:gold}#characters #char-display{width:50%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 8px}#characters #char-display .arrow{image-rendering:pixelated;opacity:.9;flex-shrink:0}#characters #char-display .arrow-left{transform:scaleX(-1)}#characters #char-display #char-portrait{display:flex;flex-direction:column;align-items:center;gap:4px}#characters #char-display #char-portrait img{height:140px;image-rendering:pixelated}#characters #char-display #char-portrait #char-name{font-size:1em;color:gold;text-align:center;text-shadow:-1px -1px 0 #7a3e00,1px -1px 0 #7a3e00,-1px 1px 0 #7a3e00,1px 1px 0 #7a3e00}#characters #char-display #char-portrait #char-title{font-size:.5em;color:#fff;opacity:.6;text-align:center}#characters #char-display #char-portrait #char-colors{display:flex;gap:4px;justify-content:center;margin-top:8px;image-rendering:pixelated}#characters #char-display #char-portrait #char-colors .color-dot{width:12px;height:12px;image-rendering:pixelated;box-shadow:inset -1px -1px #00000080,inset 1px 1px #fff3,0 0 0 1px #111}#characters #char-display #char-portrait #char-colors .color-dot.selected{outline:2px solid white;outline-offset:1px}#characters #char-info,#characters #char-display{transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#characters #char-info{transition-delay:.08s}#characters #char-display{transition-delay:.16s}#characters.entering #char-info,#characters.outro #char-info{opacity:0;transform:translate(-40px);pointer-events:none}#characters.entering #char-display,#characters.outro #char-display{opacity:0;transform:translate(40px);pointer-events:none}#characters.entering #char-info,#characters.entering #char-display{transition-delay:0s!important}#characters.outro #char-info{transition-delay:0s}#characters.outro #char-display{transition-delay:.06s}#options .menu{position:absolute;width:350px;height:100%;display:flex;justify-content:center;flex-direction:column;left:7px;gap:5px;margin-top:5px}#options .menu .option-line{display:flex;align-items:center;gap:6px}#options .menu .pixel-bar{display:flex;gap:2px;align-items:center}#options .menu .segment{width:4px;height:14px;border:none;background:#fff3;image-rendering:pixelated}#options .menu .segment.filled{background:#fff}#options .menu button.single-btn{width:fit-content;flex-shrink:0;padding:3px 0;text-align:left;white-space:nowrap}#options .menu .option-line.selected button.single-btn{color:gold;text-shadow:-1px -1px 0 #7a3e00,1px -1px 0 #7a3e00,-1px 1px 0 #7a3e00,1px 1px 0 #7a3e00}#options .menu>*{transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#options .menu>*:nth-child(1){margin-left:0;transition-delay:.08s}#options .menu>*:nth-child(2){margin-left:8px;transition-delay:.16s}#options .menu>*:nth-child(3){margin-left:16px;transition-delay:.24s}#options .menu>*:nth-child(4){margin-left:24px;transition-delay:.32s}#options .menu>*:nth-child(5){margin-left:32px;transition-delay:.4s}#options .menu>*:nth-child(6){margin-left:40px;transition-delay:.48s}#options .menu>*:nth-child(7){margin-left:48px;transition-delay:.56s}#options.entering .menu>*,#options.outro .menu>*{opacity:0;transform:translate(-40px);pointer-events:none}#options.entering .menu>*{transition-delay:0s!important}#options.outro .menu>*:nth-child(1){transition-delay:0s}#options.outro .menu>*:nth-child(2){transition-delay:.06s}#options.outro .menu>*:nth-child(3){transition-delay:.12s}#options.outro .menu>*:nth-child(4){transition-delay:.18s}#options.outro .menu>*:nth-child(5){transition-delay:.24s}#options.outro .menu>*:nth-child(6){transition-delay:.3s}#options.outro .menu>*:nth-child(7){transition-delay:.36s}#game{display:flex;align-items:center;justify-content:center;height:100%;width:100%}#game .playfieldcontainer{display:flex;flex-direction:row;height:100%;width:100%;align-items:center}#game .game-overlay-wrapper{position:relative;flex-shrink:0}#game #game-canvas{display:block;image-rendering:pixelated;border:1px solid #333}#game .game-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}#game .game-overlay #boss-health-bar{display:none;position:absolute;top:3px;left:0;right:0;height:4px;background:#140000d9}#game .game-overlay #boss-health-bar .boss-bar-fill{height:100%;background:#f44;box-shadow:0 0 4px red}#game .game-overlay #boss-health-bar .boss-bar-fill.spellcard{background:#84f;box-shadow:0 0 4px #60c}#game .game-overlay #boss-health-bar .boss-bar-sep{position:absolute;top:0;width:1px;height:100%;background:#ffffffb3}#game .game-overlay #boss-timer{display:none;position:absolute;top:10px;left:4px;font-size:.3em;color:gold;text-align:left;font-family:"Press Start 2P",monospace}#game .game-overlay #spell-bonus{display:none;position:absolute;top:20px;right:8px;font-size:.5em;color:#ffe066;text-align:right;white-space:nowrap}#game .game-overlay #spell-bonus.capture-failed{color:#888}#game .game-overlay #spell-card-name{display:none;position:absolute;top:7px;right:4px;font-size:.5em;color:gold;text-align:right;white-space:nowrap}#game .game-overlay #spell-card-name.spellcard-entering{animation:spellcard-title-enter 3s linear forwards;text-align:center}#game .game-overlay #stage-card{display:none;position:absolute;top:0;left:0;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;-webkit-font-smoothing:none;font-smooth:never}#game .game-overlay #stage-card.active{display:flex;animation:stage-card-anim 3s steps(24,end) forwards}#game .game-overlay #stage-card:before{content:"";position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:30%}#game .game-overlay #stage-card #stage-number{font-family:"Press Start 2P",monospace;font-size:.5em;color:#c8a060;margin:0 0 4px;position:relative;letter-spacing:2px}#game .game-overlay #stage-card .stage-separator{width:55%;height:1px;background:#c8a0608c;margin-bottom:5px;position:relative}#game .game-overlay #stage-card #stage-name{font-family:sburbits,monospace;font-size:1em;color:#fff;margin:0 0 4px;position:relative;letter-spacing:1px}#game .game-overlay #stage-card #stage-description{font-family:sburbits,monospace;font-size:.6em;color:#c8c8dccc;margin:0;position:relative}#game #stageclear-overlay{display:none;position:absolute;top:0;left:0;width:100%;height:100%;z-index:20;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px 14px;pointer-events:none}#game #stageclear-overlay.visible{display:flex;pointer-events:auto}#game #stageclear-overlay.leaving{animation:sc-leave .5s ease forwards}#game #stageclear-overlay .sc-title{font-size:1em;color:#60c880;letter-spacing:4px;margin:0;text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black;animation:sc-title-enter .6s ease forwards}#game #stageclear-overlay .sc-card{width:90%;display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#000000d1;border:1px solid rgba(96,200,128,.25);opacity:0;animation:sc-stats-enter .4s ease 1.4s forwards}#game #stageclear-overlay .sc-separator{width:100%;height:1px;background:#60c8804d;margin-bottom:4px}#game #stageclear-overlay .sc-row{display:flex;justify-content:space-between;align-items:center;gap:6px}#game #stageclear-overlay .sc-label{font-size:.5em;color:#c8c8c8a6;flex-shrink:0}#game #stageclear-overlay .sc-value{font-size:.5em;color:#a0f0b8;text-align:right}#game #stage-blackout{display:none;position:absolute;top:0;left:0;width:100%;height:100%;background:#000;z-index:30;pointer-events:none}#game #stage-blackout.fading-in{display:block;animation:blackout-in .5s ease forwards}#game #stage-blackout.fading-out{display:block;animation:blackout-out .6s ease forwards}#game #gameover-menu{display:none;position:absolute;top:0;left:0;width:100%;height:100%;z-index:20;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px 14px;background:#000000e0;pointer-events:none}#game #gameover-menu.visible{display:flex;pointer-events:auto}#game #gameover-menu.entering{animation:gameover-enter .4s steps(12,end) forwards}#game #gameover-menu.leaving{animation:gameover-leave .25s steps(8,end) forwards}#game #gameover-menu .go-title{font-size:1em;color:#c8a060;letter-spacing:3px;margin-bottom:6px}#game #gameover-menu .go-results{width:100%;display:flex;flex-direction:column;gap:6px}#game #gameover-menu .go-row{display:flex;justify-content:space-between;align-items:center;gap:6px}#game #gameover-menu .go-label{font-size:.5em;color:#c8c8c8a6;flex-shrink:0}#game #gameover-menu .go-value{font-size:.5em;color:#fff;text-align:right}#game #gameover-menu .go-separator{width:80%;height:1px;background:#c8a0604d;margin:4px 0}#game #gameover-menu .go-buttons{display:flex;flex-direction:column;align-items:center;gap:8px}#game #gameover-menu .go-btn{background:none;border:none;font-size:.7em;color:#fff;padding:3px 0;text-align:center}#game #gameover-menu .go-btn.selected{color:gold}#game #gameover-menu .go-btn.hidden{display:none}#game #pause-menu{display:none;position:absolute;bottom:10px;left:10px;z-index:10;flex-direction:column;gap:9px;padding:10px 14px 10px 10px;background:#000000c7;border:1px solid rgba(200,160,96,.3);pointer-events:none}#game #pause-menu.visible{display:flex;pointer-events:auto}#game #pause-menu.entering{animation:pause-enter .2s steps(6,end) forwards}#game #pause-menu.leaving{animation:pause-leave .15s steps(4,end) forwards}#game #pause-menu .pause-title{color:#c8a060;font-size:1em;letter-spacing:2px;margin-bottom:2px}#game #pause-menu .pause-btn{background:none;border:none;font-size:.8em;color:#fff;padding:3px 0;text-align:left}#game #pause-menu .pause-btn.selected{color:gold}#game #dialogue-box{display:none;position:absolute;bottom:0;left:0;width:100%;height:76px;background:#000;border-top:1px solid rgba(255,255,255,.55);z-index:15;flex-direction:row;align-items:stretch;pointer-events:none}#game #dialogue-box.visible{display:flex}#game #dialogue-box.speaker-boss .dlg-bar{background:#c00}#game #dialogue-box.speaker-boss .dlg-name{color:#c00}#game #dialogue-box.speaker-player .dlg-bar{background:#ffd000}#game #dialogue-box.speaker-player .dlg-name{color:#ffd000}#game #dialogue-box .dlg-bar{width:2px;flex-shrink:0}#game #dialogue-box .dlg-portrait{width:67px;height:67px;image-rendering:pixelated;margin:4px;border:1px solid rgba(255,255,255,.65);flex-shrink:0;object-fit:cover}#game #dialogue-box .dlg-content{flex:1;display:flex;flex-direction:column;justify-content:flex-start;padding:6px 4px 4px 2px;min-width:0}#game #dialogue-box .dlg-name{font-family:sburbits,monospace;font-size:.75em;margin:0 0 2px;display:block}#game #dialogue-box .dlg-separator{width:100%;height:1px;background:#96b4dc4d;margin-bottom:5px}#game #dialogue-box .dlg-text{font-family:sburbits,monospace;font-size:.5em;color:#fff;margin:0;line-height:1.5}#game #dialogue-box .dlg-arrow{position:absolute;bottom:4px;right:6px;font-size:.5em;color:#fff;display:none;animation:dlg-blink .8s steps(1,end) infinite}#game #dialogue-box .dlg-arrow.visible{display:block}#game .side-hud{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-start;padding:8px 4px;gap:10px;border-left:1px solid #333}#game .side-hud .hud-item{display:flex;flex-direction:column;gap:3px;padding-bottom:8px}#game .side-hud .hud-item:last-child{border-bottom:none}#game .side-hud .label{font-size:.7em;letter-spacing:1px;font-family:sburbits}#game .side-hud .label-hi-score{color:#fff200}#game .side-hud .label-score{color:#b8b8b8}#game .side-hud .label-life{color:#d561ff}#game .side-hud .label-bomb{color:#82ff58}#game .side-hud .label-power{color:#ff3838}#game .side-hud .label-point{color:#4854ff}#game .side-hud .label-graze{color:#b8b8b8}#game .side-hud .value{font-family:"Press Start 2P";font-size:.2em;letter-spacing:1px;color:#fff}#game .side-hud .difficulty-display{align-items:center}#game .side-hud .difficulty-display #hud-difficulty{font-size:1em;text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black}#game .side-hud .difficulty-display #hud-difficulty.easy{color:#5b9bd5}#game .side-hud .difficulty-display #hud-difficulty.normal{color:#6abf69}#game .side-hud .difficulty-display #hud-difficulty.hard{color:gold}#game .side-hud .difficulty-display #hud-difficulty.lunatic{color:#f44}#game .side-hud .score-box{gap:4px}#game .side-hud .score-box .stat-line{display:flex;justify-content:space-between;align-items:center}#game .side-hud .resources{gap:4px}#game .side-hud .resources .resource-row{display:flex;align-items:center;gap:4px}#game .side-hud .resources .resource-row .label{min-width:2.5em}#game .side-hud .resources .resource-row .gems-container{display:flex;flex-wrap:wrap;align-items:center;gap:1px}#game .side-hud .resources .resource-row .gems-container .gem-icon{width:13px;height:13px;image-rendering:pixelated}#game .side-hud .player-stats{gap:4px}#game .side-hud .player-stats .stat-line{display:flex;justify-content:space-between;align-items:center}@keyframes dlg-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes spellcard-title-enter{0%{opacity:0;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);font-size:.55em;white-space:nowrap}16.7%{opacity:1;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);font-size:.55em;white-space:nowrap}66.7%{opacity:1;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);font-size:.55em;white-space:nowrap}to{opacity:1;left:calc(100% - 4px);right:auto;top:10px;transform:translate(-100%);font-size:.3em;white-space:nowrap}}@keyframes gameover-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes gameover-leave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.97)}}@keyframes pause-enter{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes pause-leave{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-10px)}}@keyframes stage-card-anim{0%{opacity:0}16.67%{opacity:1}83.33%{opacity:1}to{opacity:0}}@keyframes sc-title-enter{0%{opacity:0;transform:scale(1.3)}60%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}@keyframes sc-stats-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes sc-leave{0%{opacity:1}to{opacity:0}}@keyframes blackout-in{0%{opacity:0}to{opacity:1}}@keyframes blackout-out{0%{opacity:1}to{opacity:0}}#keyconfig{display:flex;flex-direction:row}#keyconfig>*{transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#keyconfig .keyconfig-keys{transition-delay:.08s}#keyconfig .keyconfig-sidebar{transition-delay:.16s}#keyconfig .keyconfig-keys{flex:1;display:flex;flex-direction:column;justify-content:center;padding:0 8px 0 20px;gap:10px}#keyconfig .key-row{display:flex;align-items:center;gap:6px;height:22px}#keyconfig .key-label,#keyconfig .key-value{color:#fff;font-size:1em}#keyconfig .key-label{width:90px;flex-shrink:0}#keyconfig .key-value{min-width:36px}#keyconfig .key-row.selected .key-label,#keyconfig .key-row.selected .key-value,#keyconfig .key-row.waiting .key-label,#keyconfig .key-row.waiting .key-value{color:gold;text-shadow:-1px -1px 0 #7a3e00,1px -1px 0 #7a3e00,-1px 1px 0 #7a3e00,1px 1px 0 #7a3e00}#keyconfig .key-row.waiting .key-label,#keyconfig .key-row.waiting .key-value{animation:blink .6s infinite}#keyconfig .keyconfig-sidebar{width:120px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:12px 10px 12px 6px;gap:8px;border-left:1px solid rgba(255,255,255,.15)}#keyconfig .hidden{display:none!important}#keyconfig .preset-btn,#keyconfig .exit-btn{font-size:1em;padding:4px 0;text-align:left}#keyconfig .preset-btn:hover,#keyconfig .exit-btn:hover,#keyconfig .preset-btn.selected,#keyconfig .exit-btn.selected{color:gold;text-shadow:-1px -1px 0 #7a3e00,1px -1px 0 #7a3e00,-1px 1px 0 #7a3e00,1px 1px 0 #7a3e00}#keyconfig.entering>*,#keyconfig.outro>*{opacity:0;transform:translate(-40px);pointer-events:none}#keyconfig.entering>*{transition-delay:0s!important}#keyconfig.outro .keyconfig-keys{transition-delay:0s}#keyconfig.outro .keyconfig-sidebar{transition-delay:.06s}@keyframes blink{0%{opacity:1}50%{opacity:0}to{opacity:1}}#leaderboard{background:#000000b3;border:2px solid white;color:#fff;flex-direction:column;align-items:center;overflow:hidden}#leaderboard h1{text-align:center;color:#fff;font-size:1em;letter-spacing:2px;padding:6px 0;border-bottom:1px solid white;width:100%}#lb-tabs{display:flex;width:100%;border-bottom:1px solid rgba(255,255,255,.3)}#lb-tabs .lb-tab{flex:1;background:transparent;border:none;border-right:1px solid rgba(255,255,255,.3);color:#ffffff73;font-size:12px;text-shadow:none;letter-spacing:1px;padding:4px 0}#lb-tabs .lb-tab:last-child{border-right:none}#lb-tabs .lb-tab:hover{color:#fff;background:#ffffff0f}#lb-tabs .lb-tab.selected{color:#fff;background:#ffffff1a;border-bottom:2px solid white}#lb-table-wrapper{width:100%;flex:1;overflow-y:auto;scrollbar-width:none}#lb-table-wrapper::-webkit-scrollbar{display:none}#leaderboard table{width:100%;border-collapse:collapse;table-layout:fixed}#board-head tr{border-bottom:1px solid rgba(255,255,255,.5)}#board-head th{color:#ffffffb3;text-align:center;font-size:8px;padding:5px 4px;font-family:JFDot-normal,monospace;letter-spacing:1px}#board td{text-align:center;padding:6px 4px;font-size:8px;border-bottom:1px solid rgba(255,255,255,.8)}#board tr:last-child td{border-bottom:none}#board tr:first-child{background-color:#48121a!important}#board tr:nth-child(2){background-color:#5a2410!important}#board tr:nth-child(3){background-color:#58450e!important}#board tr:nth-child(2n):not(.lb-invalid){background-color:#0e141bb3}#board tr:nth-child(odd):not(.lb-invalid){background-color:#131c2bb3}#board tr.lb-invalid{background-color:#50000066}#board tr.lb-invalid td{color:#f44}.lb-empty{color:#ffffff59;font-size:5px;padding:20px!important;text-align:center}.lb-no{width:10%;color:#fff9}.lb-name{width:26%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-score{width:28%;letter-spacing:.5px}.lb-date{width:22%;color:#ffffffb3}.lb-slow{width:14%}#save-score{display:none;flex-direction:column;align-items:center;justify-content:center;padding:30px;color:#fff;font-family:sburbits;background:#000000d9;transition:opacity .4s ease}#save-score .ss-heading{font-size:1.6em;color:gold;letter-spacing:4px;margin-bottom:25px}#save-score #ss-content{display:flex;flex-direction:column;gap:8px;min-width:240px}#save-score .ss-row{display:flex;justify-content:space-between;font-size:.7em}#save-score .ss-label{color:#fff9}#save-score .ss-value{color:#fff}#save-score .ss-name-row{margin-top:18px;display:flex;justify-content:space-between;align-items:center;font-size:.8em;border-top:1px solid rgba(200,160,96,.3);border-bottom:1px solid rgba(200,160,96,.3);padding:10px 0}#save-score .ss-name-value{color:gold;letter-spacing:2px;min-height:1em}#save-score .ss-name-value:after{content:"_";animation:ss-caret-blink .8s steps(2,start) infinite}#save-score .ss-hint{margin-top:14px;font-size:.5em;color:#ffffff80;text-align:center;line-height:1.6}#save-score .ss-status{margin-top:8px;font-size:.55em;text-align:center;min-height:1em}#save-score .ss-status.ok{color:#4caf50}#save-score .ss-status.err{color:#ff6b6b}@keyframes ss-caret-blink{50%{opacity:0}}#save-score.entering,#save-score.outro{opacity:0}#practice-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px}#practice-stage>*{transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#practice-stage>*:nth-child(1){transition-delay:.08s}#practice-stage>*:nth-child(2){transition-delay:.16s}#practice-stage>*:nth-child(3){transition-delay:.24s}#practice-stage>*:nth-child(4){transition-delay:.32s}#practice-stage #stage-selector{display:flex;align-items:center;justify-content:center;gap:16px;width:100%}#practice-stage #stage-selector .arrow{image-rendering:pixelated}#practice-stage #stage-selector .arrow-left{transform:scaleX(-1)}#practice-stage #stage-selector #stage-display{width:200px;text-align:center;display:flex;flex-direction:column;gap:6px}#practice-stage #stage-selector #stage-display #ps-number{font-size:.6em;color:#fff;opacity:.6;letter-spacing:2px}#practice-stage #stage-selector #stage-display #ps-name{font-size:1em;color:#ffe8a0;text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black}#practice-stage #ps-counter{font-size:.35em;color:#fff;opacity:.5;letter-spacing:1px}#practice-stage #ps-description{font-size:.45em;color:#fff;opacity:.7;text-align:center;padding:0 20px;line-height:1.8;min-height:24px}#practice-stage.entering>*,#practice-stage.outro>*{opacity:0!important;transform:translateY(20px);pointer-events:none}#practice-stage.entering>*{transition-delay:0s!important}#practice-stage.outro>*:nth-child(1){transition-delay:0s}#practice-stage.outro>*:nth-child(2){transition-delay:.06s}#practice-stage.outro>*:nth-child(3){transition-delay:.12s}#practice-stage.outro>*:nth-child(4){transition-delay:.18s}#spellcard-stage,#spellcard-list{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px}:is(#spellcard-stage,#spellcard-list) .sc-section-title{font-size:.8em;color:#fff;opacity:.5;letter-spacing:3px}:is(#spellcard-stage,#spellcard-list) #sc-list-stage-title{font-size:.6em;color:#ffe8a0;letter-spacing:1px}:is(#spellcard-stage,#spellcard-list) #sc-stage-list,:is(#spellcard-stage,#spellcard-list) #sc-spellcard-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;min-width:240px}:is(#spellcard-stage,#spellcard-list) .sc-list-item{display:flex;flex-direction:column;gap:1px;padding:2px 10px;color:#fff;font-size:.55em}:is(#spellcard-stage,#spellcard-list) .sc-list-item.selected{color:gold}:is(#spellcard-stage,#spellcard-list) .sc-list-item .sc-spell-name{font-size:.9em}:is(#spellcard-stage,#spellcard-list) .sc-list-item .sc-spell-boss{font-size:.6em;opacity:.5}#spellcard-clear-menu{display:none;position:absolute;bottom:10px;left:10px;z-index:10;flex-direction:column;gap:9px;padding:10px 14px 10px 10px;background:#000000d9;border:1px solid rgba(120,200,120,.4);pointer-events:none}#spellcard-clear-menu.visible{display:flex;pointer-events:auto;animation:sc-clear-enter .2s steps(6,end) forwards}#spellcard-clear-menu.leaving{animation:sc-clear-leave .15s steps(4,end) forwards}#spellcard-clear-menu .sc-clear-title{color:#80ff80;font-size:1em;letter-spacing:2px;margin-bottom:2px}#spellcard-clear-menu .sc-clear-btn{background:none;border:none;font-size:.8em;color:#fff;padding:3px 0;text-align:left}#spellcard-clear-menu .sc-clear-btn.selected{color:gold}@keyframes sc-clear-enter{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes sc-clear-leave{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-10px)}}#music-room{background:#000000bf;border:2px solid white;color:#fff;flex-direction:column;align-items:stretch;overflow:hidden}#music-room .mr-heading{text-align:center;font-size:.9em;letter-spacing:3px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.4);flex-shrink:0}#mr-content{display:flex;flex:1;overflow:hidden}#mr-track-list{list-style:none;flex:1;overflow-y:auto;scrollbar-width:none;padding:4px 0}#mr-track-list::-webkit-scrollbar{display:none}.mr-track-item{display:flex;align-items:baseline;gap:7px;padding:4px 10px;font-size:10px;color:#ffffff80;transition:color .05s}.mr-track-item.selected{color:gold}.mr-track-item .mr-item-no{opacity:.45;font-size:.85em;flex-shrink:0}.mr-track-item .mr-item-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#mr-info{width:145px;flex-shrink:0;border-left:1px solid rgba(255,255,255,.25);padding:12px 10px;display:flex;flex-direction:column;justify-content:center;gap:8px}#mr-info #mr-track-no{font-size:.55em;color:#ffffff73;letter-spacing:2px}#mr-info #mr-track-title{font-size:.55em;color:#fff;line-height:1.6}#mr-info #mr-track-label{font-size:.45em;color:#ffc864bf;letter-spacing:1px}#special .menu{position:absolute;width:200px;height:100%;display:flex;justify-content:center;flex-direction:column;left:15px}#special .menu button{margin-bottom:10px;width:fit-content;font-size:1em;transition:opacity .3s steps(12,end),transform .3s steps(12,end)}#special .menu button:nth-child(1){transition-delay:.08s}#special .menu button:nth-child(2){transition-delay:.16s}#special .menu button:nth-child(3){transition-delay:.24s}#special .menu button:nth-child(4){transition-delay:.32s}#special .menu button:nth-child(2){margin-left:8px}#special .menu button:nth-child(3){margin-left:16px}#special .menu button:nth-child(4){margin-left:24px}#special .menu button.inactive{color:#ffffff4d}#special .menu button.inactive.selected{color:#ffd7008c;text-shadow:-1px -1px 0 rgba(122,62,0,.55),1px -1px 0 rgba(122,62,0,.55),-1px 1px 0 rgba(122,62,0,.55),1px 1px 0 rgba(122,62,0,.55)}#special.entering .menu button{opacity:0;transform:translate(-40px);pointer-events:none;transition-delay:0s!important}#special.outro .menu button{opacity:0;transform:translate(-40px);pointer-events:none}#special.outro .menu button:nth-child(1){transition-delay:0s}#special.outro .menu button:nth-child(2){transition-delay:.06s}#special.outro .menu button:nth-child(3){transition-delay:.12s}#special.outro .menu button:nth-child(4){transition-delay:.18s}#credits{background:#000000b3;border:2px solid white;color:#fff;flex-direction:column;align-items:stretch;overflow:hidden}#credits .cr-heading{text-align:center;font-size:1em;letter-spacing:2px;padding:6px 0;border-bottom:1px solid white;width:100%;flex-shrink:0}#cr-content{flex:1;overflow-y:auto;scrollbar-width:none;padding:10px 18px;display:flex;flex-direction:column;gap:14px}#cr-content::-webkit-scrollbar{display:none}.cr-block{display:flex;flex-direction:column;gap:3px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:14px}.cr-block.cr-last{border-bottom:none;align-items:center;padding-top:4px}.cr-role{font-size:.45em;color:#ffc864bf;letter-spacing:2px;margin-bottom:3px}.cr-name{font-size:.6em;color:#fff;letter-spacing:1px}.cr-item{font-size:.5em;color:#ffffff80;padding-left:8px}.cr-last .cr-name{font-size:.5em;color:#fff6;letter-spacing:2px}#ending{background:#000;overflow:hidden;display:flex;justify-content:center;align-items:flex-start;color:#fff;border-left:none;border-right:none;opacity:0;transition:opacity .8s steps(12,end)}#ending.active{opacity:1}#end-inner{position:absolute;left:50%;top:60px;transform:translate(-50%);width:340px;display:flex;flex-direction:column;align-items:center;transition:top 50s linear}#ending.scrolling #end-inner{top:-1400px}.end-logo{width:240px;image-rendering:pixelated;margin-bottom:24px}.end-text{font-size:.55em;letter-spacing:1px;text-align:center;line-height:1.6;margin:4px 0;opacity:0;transition:opacity .6s steps(12,end)}#ending.active .end-demo{opacity:1;transition-delay:1.2s}#ending.active .end-thanks{opacity:1;transition-delay:2.4s}.end-spacer{height:260px}#end-credits{display:flex;flex-direction:column;gap:18px;width:100%;padding:0 20px}.end-block{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.end-block.end-last{padding-top:12px}.end-role{font-size:.45em;color:#ffc864bf;letter-spacing:2px;margin-bottom:4px}.end-name{font-size:.6em;color:#fff;letter-spacing:1px}.end-item{font-size:.5em;color:#ffffff8c}.end-last .end-name{font-size:.5em;color:#fff6;letter-spacing:2px}*{margin:0;padding:0;box-sizing:border-box;font-family:sburbits,system-ui}button{background:none;border:none;font-size:1em;color:#fff}button.selected{color:gold;text-shadow:-1px -1px 0 #7a3e00,1px -1px 0 #7a3e00,-1px 1px 0 #7a3e00,1px 1px 0 #7a3e00}html,body{width:100%;height:100%;background:#000;overflow:hidden}main{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:url(/assets/mainbg-wc_FVSX_.png);background-size:cover;image-rendering:pixelated}#game-window{width:400px;height:300px;position:relative;overflow:hidden;background:#000;image-rendering:pixelated;background-image:url(/assets/menubg-C1O3KnUj.png);background-size:cover;background-position:58% center;transition:background-position .7s steps(12,end);isolation:isolate}section{width:400px;height:300px;position:absolute;top:0;left:0;border-left:2px ridge #c92a2a;border-right:2px ridge #c92a2a}.announcement{display:none;position:absolute;background:#000000e6;width:calc(100% - 4px);color:#fff;font-size:10px;left:2px;top:50px;z-index:1;padding:5px}.announcement .value{display:inline-block;white-space:nowrap;font-family:sburbits}#splash{position:absolute;inset:0;z-index:100;background:#000;opacity:1;transition:opacity .5s steps(12,end)}#splash #splash-disclaimer,#splash #splash-credit,#splash #splash-music{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:opacity .3s steps(12,end)}#splash #splash-credit,#splash #splash-music{opacity:0}#splash img{width:32px;height:32px;image-rendering:pixelated}#splash p{color:#fff;font-size:.5em;letter-spacing:1px;text-align:center;line-height:2}@keyframes slide{0%{transform:translate(130%)}to{transform:translate(-115%)}}
