/* Bitwolt page-local ambient field — homepage-inspired, non-home pages only */

/* The ambient stage intentionally spans 100vw from inside centered page wrappers.
   Clip only document-level horizontal overflow so decorative viewport width can never
   create a page scrollbar. Nested table/modal scrollers keep their own overflow. */
body.bw-redesign:not(.bw-page-home){
  overflow-x:clip;
  overscroll-behavior-x:none;
}

/* Auth pages use the same viewport-wide decoration without bw-redesign. */
html[data-design="classic"] body.bw-page-auth{overflow-x:clip;overscroll-behavior-x:none}

.bw-page-ambient-host{
  position:relative!important;
  isolation:isolate;
}

.bw-page-ambient{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  min-height:100vh;
  transform:translateX(-50%);
  z-index:-1;
  overflow:hidden;
  pointer-events:none;
}

.bw-page-ambient__particles{
  position:absolute;
  inset:0;
  pointer-events:none;
}

.bw-page-ambient__glow{
  position:absolute;
  width:min(760px,62vw);
  aspect-ratio:1;
  top:-220px;
  right:-8%;
  border-radius:50%;
  pointer-events:none;
  will-change:transform;
}

.bw-page-ambient__particle{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--s);
  height:var(--s);
  border-radius:50%;
  opacity:0;
  pointer-events:none;
}

/* Protected member workspace: reveal the local field without changing data panels/sidebar. */
.member-app-main.bw-page-ambient-host{
  background:transparent!important;
}

/* Future: intentionally mirrors the proven homepage hero values. */
/* Also hide grids from an older cached decoration script. */
.bw-page-ambient__grid{display:none!important}

html[data-design="future"] .bw-page-ambient__glow{
  background:
    radial-gradient(circle at 34% 42%,rgba(5,185,242,.16),transparent 32%),
    radial-gradient(circle at 68% 62%,rgba(185,219,27,.08),transparent 28%);
  filter:blur(12px);
  opacity:.82;
  animation:bwPageAmbientDrift 13s ease-in-out infinite alternate;
}

html[data-design="future"] .bw-page-ambient__particle{
  background:rgba(91,211,247,.76);
  box-shadow:0 0 12px rgba(5,185,242,.34);
  animation:bwPageParticleFloat var(--d) ease-in-out var(--delay) infinite;
}
html[data-design="future"] .bw-page-ambient__particle[data-tone="volt"]{
  background:rgba(196,224,73,.72);
  box-shadow:0 0 10px rgba(185,219,27,.24);
}

/* Classic keeps its soft light and particles. */
html[data-design="classic"] .bw-page-ambient__glow{
  background:
    radial-gradient(circle at 34% 42%,rgba(5,185,242,.17),transparent 34%),
    radial-gradient(circle at 68% 62%,rgba(185,219,27,.075),transparent 30%);
  filter:blur(14px);
  opacity:.90;
  animation:bwPageAmbientDrift 18s ease-in-out infinite alternate;
}

html[data-design="classic"] .bw-page-ambient__particles{opacity:.76}
html[data-design="classic"] .bw-page-ambient__particle{
  background:rgba(5,137,182,.58);
  box-shadow:0 0 10px rgba(5,185,242,.20);
  animation:bwPageParticleFloat var(--d) ease-in-out var(--delay) infinite;
}
html[data-design="classic"] .bw-page-ambient__particle[data-tone="volt"]{
  background:rgba(132,158,0,.52);
  box-shadow:0 0 9px rgba(185,219,27,.18);
}
html[data-design="classic"] .bw-page-ambient__particle:nth-child(n+8){display:none}

@keyframes bwPageAmbientDrift{
  0%{transform:translate3d(-2%,0,0) scale(.96)}
  100%{transform:translate3d(5%,4%,0) scale(1.06)}
}

@keyframes bwPageParticleFloat{
  0%,100%{opacity:.08;transform:translate3d(0,8px,0) scale(.9)}
  50%{opacity:.72;transform:translate3d(10px,-12px,0) scale(1.08)}
}

@media(max-width:720px){
  .bw-page-ambient__glow{width:108vw;top:-150px;right:-34%}
  .bw-page-ambient__particle:nth-child(n+6){display:none!important}
}

@media(prefers-reduced-motion:reduce){
  .bw-page-ambient__glow{animation:none!important;will-change:auto!important}
  .bw-page-ambient__particles{display:none!important}
}
