html {
  -ms-touch-action: none;
}

body, canvas, div {
  display: block;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);

  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -khtml-user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* Remove spin of input type number */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

body {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  margin: 0;

  cursor: default;
  color: #888;
  background-color: #333;

  text-align: center;
  font-family: Helvetica, Verdana, Arial, sans-serif;

  display: flex;
  flex-direction: column;
}

canvas {
  background-color: rgba(0, 0, 0, 0);
}

#GameDiv, #Cocos3dGameContainer, #GameCanvas {
  width: 100%;
  height: 100%;
}

:root {
  --safe-top: env(safe-area-inset-top);
  --safe-right: env(safe-area-inset-right);
  --safe-bottom: env(safe-area-inset-bottom);
  --safe-left: env(safe-area-inset-left);
}

/* Tiny Ranger browser safeguards */
html, body {
  width: 100%; height: 100%; overflow: hidden;
  overscroll-behavior: none; touch-action: none;
}
#TinyRangerViewport {
  position: fixed; inset: 0; overflow: hidden;
  overscroll-behavior: none;
}
#GameDiv, #Cocos3dGameContainer, #GameCanvas {
  touch-action: none; overscroll-behavior: none;
  -webkit-touch-callout: none; -webkit-user-drag: none;
  -webkit-user-select: none; user-select: none;
}
.tiny-desktop-viewport #TinyRangerViewport {
  display: flex; justify-content: center; align-items: center;
}
.tiny-desktop-viewport #GameDiv {
  max-width: 200vh !important; max-height: 75vw !important;
  flex: 0 0 auto;
}
@supports (height: 100dvh) {
  .tiny-desktop-viewport #GameDiv {
    max-width: 200dvh !important; max-height: 75dvw !important;
  }
}
