html, body { margin: 0; padding: 0; } 


body {
  background: #fff;
  font-family: "VT323", system-ui;
}

.JP { font-family: "DotGothic16", sans-serif; }

body.english .JP { display: none;  }
body.english .EN { display: block; }

body.japanese .JP { display: block; }
body.japanese .EN { display: none;  }



canvas {
  background: #fff;
  border: solid 10px #ccc;
  height: calc(100vh - 20px);
  width: calc(100vw - 20px);
  margin: 0 auto;
  display: block;
}

canvas.level_1 {
  background: #ABEFDC;
  border: solid 10px #78A79A;
}


canvas.level_1 {
  background: #ABEFDC;
  border: solid 10px #78A79A;
}

canvas.level_2 {
  background: radial-gradient(103.9% 318.18% at 92.2% 80.76%, #F55DA6 0%, #FEED18 100%);
  border: solid 10px #78A79A;
}

canvas.level_3 {
  background: radial-gradient(100% 227.97% at -4.21% 0%, #83FD7F 0%, #F8F007 100%);
  border: solid 10px #78A79A;
}

canvas.level_4 {
  background: radial-gradient(74.05% 94.95% at 21.64% 100%, #FFC75A 0%, #FF899F 100%);
  border: solid 10px #78A79A;
}

canvas.level_5 {
  background: radial-gradient(87.12% 227.57% at 40.75% 43.96%, #FF5A94 0%, #9569DD 100%);
  border: solid 10px #78A79A;
}

canvas.level_6 {
  background: radial-gradient(106.27% 150.51% at 92.2% 9.57%, #05E0FC 0%, #74FF86 100%);
  border: solid 10px #78A79A;
}

canvas.level_7 {
  background: radial-gradient(103.9% 318.18% at 92.2% 80.76%, #F55DA6 0%, #FEED18 100%);
  border: solid 10px #78A79A;
}

canvas.level_8 {
  background: radial-gradient(73.18% 224.13% at 97.04% 16.27%, #83FD7F 0%, #F8F007 100%);
  border: solid 10px #78A79A;
}

canvas.level_9 {
  background: radial-gradient(86.86% 207.45% at 95.96% 5.48%, #FEEE12 0%, #FF899F 100%);
  border: solid 10px #78A79A;
}

canvas.level_10 {
  background: radial-gradient(124.3% 324.7% at 3.57% 9.09%, #FF5A94 0%, #0CDCFB 100%);
  border: solid 10px #78A79A;
}

canvas.level_11 {
  background: radial-gradient(106.27% 150.51% at 92.2% 9.57%, #05E0FC 0%, #74FF86 100%);
  border: solid 10px #78A79A;
}

canvas.level_12 {
  background: radial-gradient(80.42% 151.94% at 45.98% 156.99%, #FEE032 0%, #FF8F9B 100%);
  border: solid 10px #78A79A;
}

canvas.level_13 {
  background: radial-gradient(80.42% 151.94% at 45.98% 156.99%, #FEE032 0%, #FF8F9B 100%);
  border: solid 10px #78A79A;
}



#ui {
    position: absolute;
    left: 50%;
    top: 0;
    width: 100%;
    height: 100%;
    max-width: 860px;
    transform: translateX(-50%);
    z-index: 100;
}
.window {
    background: #737373f5;
    padding: 10px;
    border: 20px solid #E9E9E9;
    max-width: 50%;
    left: calc(20% - 20px);
    top: 50%;
    position: absolute;
    min-width: 60%;
    transform: translateY(-50%);
    z-index: 20;
    opacity: 0;
    transition: opacity 300ms ease-in-out;
}

#start_window  { display: none; }
#loser_window  { display: none; }
#winner_window { display: none; }

#start_window.active  { display: block; padding-bottom: 10px; opacity: 1; }
#loser_window.active  { display: block; opacity: 1; }
#winner_window.active { display: block; opacity: 1; }

.japanese #loser_window h2 { font-size: 6vw; line-height: 6.5vw; }

#start_btn {
    text-align: center;
    line-height: 90px;
    font-size: 50px;
    color: #E9E9E9;
    cursor: pointer;
    width: 100%;
    border-top: 1px solid white;
    border-left: 1px solid white;
    border-right: 2px solid black;
    border-bottom: 2px solid black;
}
.english #start_btn { font-size: 8vw; line-height: 8.5vw; }
.japanese #start_btn { font-size: 35px; }

.window h1 {
    color: white;
    font-size: 8vw;
    font-weight: 100;
    text-align: center;
    text-shadow: 2px 3px #444444;
    text-transform: uppercase;
}
.window p { text-align: center; color: white; font-size: 2.5vw; line-height: 3.5vw; }
.window h2 {
    color: white;
    font-size: 60px;
    text-align: center;
    font-weight: 100;
}

#winner_window p { font-size: 24px; }

.japanese #winner_window p {
    font-size: 2.7vw;
    line-height: 3.8vw;
}

.japanese #winner_window h2 {
    font-size: 5vw;
    line-height: 5.5vw;
}

#info {
    position: absolute;
    left: 10px;
    top: 10px;
    width: auto;
    height: auto;
    background: black;
    text-align: center;
    padding: 20px 50px;
    line-height: 20px;
    font-size: 20px;
}

#score {
    color: white;
    position: absolute;
    right: 10px;
    padding: 10px;
    width: 270px;
    background: #00000014;
    text-align: center;
    top: 10px;
    font-size: 20px;
}
#score .level_icon {
  background-image: url(../eat_logo_off.png);
  background-repeat: no-repeat;
  background-size: contain;
  width:  15px;
  height: 15px;
  display: inline-block;
}
.L_02 #level_01_icon { background-image: url(../eat_logo.png); }

.L_03 #level_01_icon,
.L_03 #level_02_icon { background-image: url(../eat_logo.png); }

.L_04 #level_01_icon,
.L_04 #level_02_icon,
.L_04 #level_03_icon { background-image: url(../eat_logo.png); }

.L_05 #level_01_icon,
.L_05 #level_02_icon,
.L_05 #level_03_icon,
.L_05 #level_04_icon { background-image: url(../eat_logo.png); }

.L_06 #level_01_icon,
.L_06 #level_02_icon,
.L_06 #level_03_icon,
.L_06 #level_04_icon,
.L_06 #level_05_icon { background-image: url(../eat_logo.png); }

.L_07 #level_01_icon,
.L_07 #level_02_icon,
.L_07 #level_03_icon,
.L_07 #level_04_icon,
.L_07 #level_05_icon,
.L_07 #level_06_icon { background-image: url(../eat_logo.png); }

.L_08 #level_01_icon,
.L_08 #level_02_icon,
.L_08 #level_03_icon,
.L_08 #level_04_icon,
.L_08 #level_05_icon,
.L_08 #level_06_icon,
.L_08 #level_07_icon { background-image: url(../eat_logo.png); }

.L_09 #level_01_icon,
.L_09 #level_02_icon,
.L_09 #level_03_icon,
.L_09 #level_04_icon,
.L_09 #level_05_icon,
.L_09 #level_06_icon,
.L_09 #level_07_icon,
.L_09 #level_08_icon { background-image: url(../eat_logo.png); }

.L_10 #level_01_icon,
.L_10 #level_02_icon,
.L_10 #level_03_icon,
.L_10 #level_04_icon,
.L_10 #level_05_icon,
.L_10 #level_06_icon,
.L_10 #level_07_icon,
.L_10 #level_08_icon,
.L_10 #level_09_icon { background-image: url(../eat_logo.png); }

.L_11 #level_01_icon,
.L_11 #level_02_icon,
.L_11 #level_03_icon,
.L_11 #level_04_icon,
.L_11 #level_05_icon,
.L_11 #level_06_icon,
.L_11 #level_07_icon,
.L_11 #level_08_icon,
.L_11 #level_09_icon,
.L_11 #level_10_icon { background-image: url(../eat_logo.png); }

.L_12 #level_01_icon,
.L_12 #level_02_icon,
.L_12 #level_03_icon,
.L_12 #level_04_icon,
.L_12 #level_05_icon,
.L_12 #level_06_icon,
.L_12 #level_07_icon,
.L_12 #level_08_icon,
.L_12 #level_09_icon,
.L_12 #level_10_icon,
.L_12 #level_11_icon { background-image: url(../eat_logo.png); }

.L_13 #level_01_icon,
.L_13 #level_02_icon,
.L_13 #level_03_icon,
.L_13 #level_04_icon,
.L_13 #level_05_icon,
.L_13 #level_06_icon,
.L_13 #level_07_icon,
.L_13 #level_08_icon,
.L_13 #level_09_icon,
.L_13 #level_10_icon,
.L_13 #level_11_icon,
.L_13 #level_12_icon { background-image: url(../eat_logo.png); }

#icon { z-index: -1; position: absolute; top: 0; width: 0px; height: 0px; }


#instruction_area {
    display: grid;
    grid-template-columns: 80% 20%;
    justify-items: center;
    margin-bottom: 10px;
}
.image_area {
    text-align: center;
    padding-top: 10%;
}
.image_area img { width: 70%; }


#instructions {
    font-size: 10px;
    line-height: 21px;
    color: white;
    margin: 40px auto;
    max-width: 500px;
}
p {
    margin: 25px 0;
}
a { color: white; border-bottom: 1px solid white; }



.deactivate { filter: grayscale(1); } 

#version { position: absolute; bottom: 10px; left: 13px; font-size: 15px; }


/* ROTATE SCREEN */

#window-orientation {
    background-color: #000000db;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    text-align: center;
    font-size: 20px;
    line-height: 35px;
    z-index: 2000;
}

@media only screen and (orientation:portrait){
  canvas { width: calc(100% - 20px); }
  #window-orientation { display:block; }
  #controls { display:none; }
}

@media only screen and (orientation:landscape){
  #window-orientation { display:none; }
  #controls { display:block; }

#start_window.active {
    display: block;
    padding-bottom: 10px;
    max-width: 60%;
    transform: translate(0, -50%);
}

}

@media screen and (min-width: 800px) and (min-height: 400px) {
      #window-orientation { display: none; }
      #controls { display:none; }
}

@media screen and (max-width: 700px) {
    .japanese #start_btn {
       font-size: 5vw;
       line-height: 8vw;
    }
    #start_window.active { transform: translate(-4.5%, -50%); }
}



#controls {
    position: absolute;
    top: 0;
    left: 0;
    width: 100dvw;
    height: 100dvh;
    z-index: 10;
}
#arrow_keys_area {
    position: absolute;
    right: 3%;
    bottom: 3%;
    width: 50vh;
    height: 50vh;
    color: #737373f5;
}

.joystick{
    position: absolute;
    width: 30%;
    height: 30%;
    text-align: center;
    border: 2px solid #737373f5;
    font-size: 5vw;
    border-radius: 8px;
    background: #ffffff6b;
}
.joystick.down {
    margin-top: 5px;
    box-shadow: none;
    color: white;
    border: 2px solid white;
}

#arrow_btn_up    { top:   0; left: 33%; transform: rotate(0deg);   box-shadow: 1px 1px 5px #22222236; }
#arrow_btn_right { top: 33%; left: 66%; transform: rotate(90deg);  box-shadow: 1px 1px 5px #22222236; }
#arrow_btn_down  { top: 66%; left: 33%; transform: rotate(180deg); box-shadow: 1px 1px 5px #22222236; }
#arrow_btn_left  { top: 33%; left:  0%; transform: rotate(-90deg); box-shadow: 1px 1px 5px #22222236; }

.rotate-info {
    color: white;
    width: 80%;
    padding: 10%;
    margin-top: 10%;
}

.rotate-info h2 {
    font-size: 30px;
    text-transform: uppercase;
}


.devil_mode canvas { background: linear-gradient(180deg, #F9CC92 0%, #CF91A4 100%) !important; border: 10px solid #FF5E90 !important; }

.devil_mode #version {
    background: url(data:image/jpeg;base64,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);
    background-size: contain;
    background-repeat: no-repeat;
    height: 90px;
    color: #ffffff00;
}

#win_window     { position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: -1; }
#win_window_bg  { position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: -1; }
#win_window.active    { z-index: 200; }
#win_window_bg.active { z-index: 1; }

.hurray { position: absolute; left: 0; top;0; width: 100%; height: 100%; }

#skill_area {
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.skill_btn {
    display: inline-block;
    padding-left: 30px;
    margin-bottom: 20px;
    color: white;
    text-transform: uppercase;
    position: relative;
    line-height: 25px;
    margin-right: 20px;
    cursor: pointer;
}
.skill_btn::before {
    content: "";
    position: absolute;
    background: #9b9b9b;
    width: 20px;
    height: 20px;
    left: 0;
    top: 0;
    border-top: 1px solid black;
    border-left: 1px solid black;
    border-bottom: 1px solid #c2c2c2;
    border-right: 1px solid #c2c2c2;
}
.skill_btn.active::before { background: #72ff8c; }
