html, body {
    height: 100%;
    margin: 0;
    background: #1A1E2C;
    overflow: hidden;
    touch-action: none;
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
}
#unity-container { position: fixed !important; inset: 0 !important; background: #1A1E2C; }
#unity-container, #unity-container * { pointer-events: none; }
#unity-canvas {
    display: block; background: #202736; position: fixed; top: 0; left: 50%; transform: translateX(-50%);
    pointer-events: auto;
    box-shadow: 0px 0px 40px rgba(0,0,0,0.7);
}
.mobile #unity-canvas { left: 0; transform: none; }
#unity-loading-overlay{
  position: fixed !important;
  inset: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  z-index: 10;
  pointer-events: none;  
}

.ellipsis{
  --size: clamp(10px, 2.2vw, 18px);
  --gap:  calc(var(--size) * 1.2); 
  --color: rgba(242,242,242,.85);
  display: inline-flex;
  align-items: center;
  gap: var(--gap);
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.35));
}

.ellipsis > span{
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  background: var(--color);
  opacity: .25;
  transform: translateY(0) scale(1);
  animation: dot 1.1s infinite ease-in-out;
}

.ellipsis > span:nth-child(1){ animation-delay: 0s;     }
.ellipsis > span:nth-child(2){ animation-delay: .15s;   }
.ellipsis > span:nth-child(3){ animation-delay: .30s;   }

@keyframes dot{
  0%   { transform: translateY(0)    scale(1);   opacity: .25; }
  30%  { transform: translateY(-20%) scale(1.08); opacity: .9;  }
  60%  { transform: translateY(0)    scale(1);   opacity: .45; }
  100% { transform: translateY(0)    scale(1);   opacity: .25; }
}

@media (prefers-reduced-motion: reduce){
  .ellipsis > span{ animation: none; opacity: .6; }
}
#unity-warning { position: fixed; top: 0; left: 0; right: 0; z-index: 20; pointer-events: none; }
#unity-canvas {
    outline: none;
    border: none;
}
#unity-canvas:focus,
#unity-canvas:focus-visible {
    outline: none;
}