/* Scoped styles (prefix: tg-) to avoid collisions */

.tg-torus-glass {
  position: relative;
  width: 100%;
  /* Force black background always */
  background: #000;
  /* Default height; shortcode also injects dvh/vh inline as a guard */
  min-height: 100vh;
  min-height: 100dvh;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}

.tg-torus-glass__canvas {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.tg-torus-glass__fallback {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(22px, 6vw, 64px);
  text-align: center;
  pointer-events: none;
  z-index: 1;
}

/* Mobile: fix height to prevent scroll/address-bar induced layout break */
@media (max-width: 768px) {
  .tg-torus-glass {
    min-height: 600px !important;
    height: 600px !important;
  }
}

