/* БАЗОВЫЕ СТИЛИ КАРКАСА. НЕ МЕНЯТЬ. Оформление игры — в css/style.css. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { width: 100%; height: 100%; overflow: hidden; }
body {
  position: fixed; inset: 0;
  user-select: none; -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  overscroll-behavior: none;
}
#app { position: fixed; left: 0; top: 0; overflow: hidden; transform-origin: 0 0; }
.screen { position: absolute; inset: 0; display: none; overflow: hidden; }
.screen.active { display: flex; }
.overlay { position: absolute; inset: 0; display: none; align-items: center; justify-content: center; z-index: 50; }
.overlay.show { display: flex; }
#menuIn, .fitwrap { position: absolute; left: 0; top: 0; overflow: hidden; }

.scroller { overflow-y: auto; scrollbar-width: none; }
.scroller::-webkit-scrollbar { display: none; }
.scroller.x { overflow-x: auto; overflow-y: hidden; white-space: nowrap; }

#lb-list { max-height: 320px; display: flex; flex-direction: column; gap: 6px; }
.lb-row { display: flex; align-items: center; gap: 10px; padding: 8px 10px; }
.lb-medal { width: 30px; text-align: center; flex-shrink: 0; }
.lb-avatar { position: relative; width: 34px; height: 34px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center; overflow: hidden; }
.lb-avatar img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lb-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lb-score { flex-shrink: 0; }
.lb-empty { text-align: center; padding: 20px; }

/* Окна, тост, игровой HUD — только каркас, без оформления */
.panel { position: relative; display: flex; flex-direction: column; gap: 10px; max-width: none; transform-origin: 50% 50%; }
#toast { position: absolute; left: 50%; transform: translateX(-50%); z-index: 90; max-width: 86%; text-align: center;
  opacity: 0; pointer-events: none; transition: opacity .2s; }
#toast.show { opacity: 1; }
