/* Home hall perimeter: source Home-DXD30ZSt.css, observed 2026-11-14.
   Keep the decorative layer outside the hit-test and accessibility trees. */
.game-hall {
  position: relative;
  overflow: hidden;
  border-top: 0;
  --hall-flow-accent: #3b82f6;
  --hall-flow-width: clamp(1px, .285714vw, 3px);
}
.game-hall > .hall-flow-line {
  position: absolute;
  inset: 0;
  z-index: 8;
  pointer-events: none;
  padding: var(--hall-flow-width);
  box-sizing: border-box;
  overflow: hidden;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite: exclude;
}
.hall-flow-line::before,
.hall-flow-line::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: max(220%, min(99.0476vw, 1040px));
  height: max(220%, min(99.0476vw, 1040px));
  transform: translate(-50%, -50%);
  animation: hall-flow-rotate 3.8s linear infinite;
  will-change: transform;
  pointer-events: none;
}
.hall-flow-line::before {
  background: conic-gradient(from 0deg, transparent 0deg 248deg,
    color-mix(in srgb, var(--hall-flow-accent) 35%, transparent) 268deg,
    var(--hall-flow-accent) 292deg,
    color-mix(in srgb, var(--hall-flow-accent) 70%, #fff) 308deg,
    color-mix(in srgb, var(--hall-flow-accent) 35%, transparent) 322deg,
    transparent 340deg 360deg);
}
.hall-flow-line::after {
  transform: translate(-50%, -50%) rotate(180deg);
  background: conic-gradient(from 0deg, transparent 0deg 252deg,
    color-mix(in srgb, var(--hall-flow-accent) 25%, transparent) 278deg,
    color-mix(in srgb, var(--hall-flow-accent) 55%, #fff) 298deg,
    transparent 318deg 360deg);
  opacity: .65;
}
@keyframes hall-flow-rotate {
  100% { transform: translate(-50%, -50%) rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  .hall-flow-line::before,
  .hall-flow-line::after { animation: none; will-change: auto; }
  .game-hall > .hall-flow-line {
    background: color-mix(in srgb, var(--hall-flow-accent) 35%, transparent);
  }
}
