:root {
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

*, *::before, *::after {
  box-sizing: border-box;
}

img, canvas, button, a, p, span, em, br, input, .noselect {
  margin: 0;

  /**
   * По-умолчанию ничего не разрешено выделять
   */
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
  cursor: default;
}

img, canvas, .noselect {
  touch-action: none;
}

*::selection, .noselect::selection { 
  background: transparent;
}

*::-moz-selection, .noselect::-moz-selection {
  background: transparent;
}

body {
  line-height: 1.5;
  /**
   * Игре нельзя иметь скролл
   */
  overflow: hidden;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

img {
  object-fit: contain;
}

input, button, textarea, select {
  font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

#root, #app {
  display: contents;
  isolation: isolate;
}
