html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
}



.flash{
    position:   absolute;
    top:        0;
    left:       0;
    width:      100%;
    height:     100%; 
    box-sizing: border-box;  /* include any borders/padding if added */
    overflow: hidden;        /* hide 1px rounding artefacts */
    line-height: 0;          /* remove baseline gap from inline embeds */
}


#game-wrap {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    overflow: hidden;
    background: #e9e9e9;
}




#game {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
}

#loader {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      font-family: Arial, sans-serif;
      background: #ececec;
      color: #1d43d6;
      z-index: 1;
}

#game > * {
      width: 100%;
      height: 100%;
      display: block;
      position: relative;
      z-index: 2;
}