/* === BizPartners PC-only Revolving World Mesh Background ===
   Real DOM layer instead of body pseudo-elements so other CSS cannot cancel it.
   Mobile stays static/hidden for speed. */
html{background:#030915!important;}
body.app-body{
  isolation:isolate!important;
  overflow-x:hidden!important;
  min-height:100vh;
  background:
    radial-gradient(circle at 18% 0%,rgba(68,164,255,.20),transparent 28rem),
    radial-gradient(circle at 86% 4%,rgba(247,190,82,.14),transparent 28rem),
    linear-gradient(180deg,#071b36 0%,#061225 48%,#030815 100%)!important;
}

/* Kill older pseudo mesh attempts. The real globe below is harder for app CSS to override. */
body.app-body:before,
body.app-body:after{
  content:""!important;
  position:fixed!important;
  pointer-events:none!important;
  z-index:0!important;
  display:none!important;
  opacity:0!important;
  animation:none!important;
  transform:none!important;
}

.bp-world-mesh-stage{
  display:none;
}
.site-header,.pro-site-header,main.app-shell,.app-shell,.site-footer{
  position:relative!important;
  z-index:3!important;
}

@media (min-width:992px){
  body.app-body{
    background:
      radial-gradient(circle at 14% -4%,rgba(56,189,248,.22),transparent 30rem),
      radial-gradient(circle at 88% 0%,rgba(250,204,21,.15),transparent 26rem),
      radial-gradient(circle at 50% 38%,rgba(37,99,235,.10),transparent 44rem),
      linear-gradient(180deg,#071f3d 0%,#06162d 46%,#030914 100%)!important;
  }

  .bp-world-mesh-stage{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:0!important;
    pointer-events:none!important;
    overflow:hidden!important;
    contain:layout paint!important;
    transform:translateZ(0)!important;
  }

  .bp-world-mesh-stage:before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.48;
    background:
      radial-gradient(circle at 15% 22%,rgba(125,211,252,.50) 0 2px,transparent 2.8px),
      radial-gradient(circle at 31% 12%,rgba(250,204,21,.42) 0 2px,transparent 2.8px),
      radial-gradient(circle at 46% 27%,rgba(125,211,252,.38) 0 2px,transparent 2.8px),
      radial-gradient(circle at 67% 15%,rgba(56,189,248,.40) 0 2px,transparent 2.8px),
      radial-gradient(circle at 83% 31%,rgba(250,204,21,.36) 0 2px,transparent 2.8px),
      linear-gradient(115deg,transparent 0 14%,rgba(125,211,252,.11) 14.2% 14.45%,transparent 14.7% 30%,rgba(250,204,21,.09) 30.2% 30.42%,transparent 30.7% 48%,rgba(125,211,252,.10) 48.2% 48.45%,transparent 48.7%),
      linear-gradient(25deg,transparent 0 20%,rgba(125,211,252,.09) 20.2% 20.45%,transparent 20.7% 56%,rgba(250,204,21,.07) 56.2% 56.4%,transparent 56.7%),
      linear-gradient(to top,rgba(3,9,20,.92),rgba(3,9,20,.28) 20%,transparent 56%);
    background-size:420px 310px,520px 390px,460px 340px,570px 420px,500px 360px,780px 520px,900px 620px,100% 100%;
    background-position:0 0,90px 20px,180px 80px,-60px 130px,240px 190px,0 0,120px 60px,center bottom;
    animation:bpWorldNodeDrift 34s linear infinite!important;
  }

  .bp-world-mesh-orbit{
    position:absolute!important;
    right:-13vw!important;
    bottom:-16vw!important;
    width:min(78vw,980px)!important;
    height:min(78vw,980px)!important;
    border-radius:50%!important;
    opacity:.92!important;
    filter:drop-shadow(0 0 48px rgba(56,189,248,.22));
    transform:translateZ(0)!important;
    will-change:transform!important;
    animation:bpWorldMeshIdleTilt 11s ease-in-out infinite alternate!important;
  }

  .bp-world-mesh-globe,
  .bp-world-mesh-globe-glow{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    border-radius:50%!important;
    pointer-events:none!important;
  }

  .bp-world-mesh-globe{
    opacity:.86!important;
    overflow:hidden!important;
    background:
      radial-gradient(circle at 36% 26%,rgba(250,204,21,.34),transparent 8.5rem),
      radial-gradient(circle at 51% 49%,rgba(56,189,248,.30),transparent 24rem),
      repeating-radial-gradient(ellipse at 50% 50%,transparent 0 43px,rgba(125,211,252,.20) 44px 46px,transparent 47px 88px),
      repeating-linear-gradient(90deg,transparent 0 52px,rgba(125,211,252,.20) 53px 55px,transparent 56px 104px),
      repeating-linear-gradient(0deg,transparent 0 68px,rgba(125,211,252,.16) 69px 70px,transparent 71px 136px),
      radial-gradient(circle at 50% 50%,rgba(125,211,252,.40) 0 2px,transparent 3px),
      radial-gradient(circle,rgba(37,99,235,.28),rgba(3,9,20,.06) 63%,transparent 73%);
    background-size:100% 100%,100% 100%,100% 100%,190px 100%,100% 150px,78px 78px,100% 100%;
    background-position:center,center,center,0 0,0 0,0 0,center;
    box-shadow:0 0 90px rgba(56,189,248,.18),inset 0 0 125px rgba(37,99,235,.20),inset -76px -22px 115px rgba(0,0,0,.38);
    -webkit-mask-image:radial-gradient(circle,rgba(0,0,0,1) 0 60%,rgba(0,0,0,.80) 66%,rgba(0,0,0,.32) 72%,transparent 79%);
    mask-image:radial-gradient(circle,rgba(0,0,0,1) 0 60%,rgba(0,0,0,.80) 66%,rgba(0,0,0,.32) 72%,transparent 79%);
    animation:bpWorldMeshRevolve 17s linear infinite!important;
    will-change:background-position,filter!important;
  }

  .bp-world-mesh-globe:before{
    content:"";
    position:absolute;
    inset:8%;
    border-radius:50%;
    opacity:.44;
    background:
      conic-gradient(from 0deg at 50% 50%,transparent 0deg 7deg,rgba(125,211,252,.24) 8deg 9deg,transparent 10deg 22deg),
      radial-gradient(circle at 36% 32%,rgba(255,255,255,.18),transparent 22%),
      linear-gradient(90deg,rgba(3,9,20,.34),transparent 28%,transparent 63%,rgba(3,9,20,.52));
    animation:bpWorldMeshSpin 29s linear infinite!important;
  }

  .bp-world-mesh-globe:after{
    content:"";
    position:absolute;
    inset:-2%;
    border-radius:50%;
    opacity:.34;
    background:linear-gradient(100deg,rgba(3,9,20,.68) 0%,transparent 35%,rgba(255,255,255,.10) 48%,transparent 62%,rgba(3,9,20,.76) 100%);
    mix-blend-mode:screen;
    animation:bpWorldLightSweep 8.5s ease-in-out infinite!important;
  }

  .bp-world-mesh-globe-glow{
    opacity:.58!important;
    background:radial-gradient(circle at 48% 46%,transparent 0 49%,rgba(56,189,248,.30) 58%,transparent 72%);
    filter:blur(6px);
    animation:bpWorldGlowPulse 5.8s ease-in-out infinite!important;
  }

  /* Header uses the same world-mesh language without making text hard to read */
  .pro-site-header{
    overflow:hidden!important;
    isolation:isolate!important;
    background:
      radial-gradient(circle at 11% 0%,rgba(56,189,248,.20),transparent 23rem),
      radial-gradient(circle at 88% 0%,rgba(250,204,21,.13),transparent 21rem),
      linear-gradient(180deg,rgba(5,24,48,.985),rgba(4,12,27,.985))!important;
    animation:none!important;
  }
  .pro-site-header:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    pointer-events:none!important;
    opacity:.50!important;
    background:
      radial-gradient(circle at 18% 50%,rgba(125,211,252,.32) 0 1.5px,transparent 2.2px),
      radial-gradient(circle at 68% 44%,rgba(250,204,21,.24) 0 1.5px,transparent 2.2px),
      repeating-linear-gradient(90deg,rgba(125,211,252,.07) 0 1px,transparent 1px 76px),
      repeating-linear-gradient(0deg,rgba(125,211,252,.045) 0 1px,transparent 1px 54px),
      linear-gradient(105deg,transparent 0%,rgba(255,255,255,.055) 18%,transparent 36%);
    background-size:180px 72px,220px 90px,100% 100%,100% 100%,260% 100%;
    background-position:0 0,60px 8px,center,center,-120% 0;
    animation:bpHeaderMeshMove 18s linear infinite!important;
  }
  .pro-header-container,.pro-site-navbar,.full-header-proof-ticker{
    position:relative!important;
    z-index:1!important;
  }
  .pro-site-navbar{
    background:
      linear-gradient(135deg,rgba(255,255,255,.090),rgba(255,255,255,.028)),
      linear-gradient(180deg,rgba(8,29,58,.88),rgba(4,14,30,.92))!important;
    border-color:rgba(125,211,252,.16)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 22px 58px rgba(0,0,0,.28),0 0 0 1px rgba(250,204,21,.030)!important;
  }
  .full-header-proof-ticker{
    background:
      linear-gradient(90deg,rgba(125,211,252,.12),rgba(250,204,21,.080),rgba(37,99,235,.12)),
      rgba(4,16,32,.90)!important;
    border-color:rgba(125,211,252,.18)!important;
  }

  .page-panel,.wrapper,.wrapper2,.wrapper3,.home-card,.account-content-card,.dashboard-card,.wallet-card,.launch-card{
    backdrop-filter:blur(9px)!important;
    -webkit-backdrop-filter:blur(9px)!important;
  }
}

@media (max-width:991.98px){
  body.app-body{
    background:linear-gradient(180deg,#071a33 0%,#061327 46%,#030914 100%)!important;
  }
  .bp-world-mesh-stage,
  body.app-body:before,
  body.app-body:after,
  .pro-site-header:before{
    display:none!important;
    opacity:0!important;
    animation:none!important;
  }
  .pro-site-header{
    animation:none!important;
    background:linear-gradient(180deg,rgba(5,14,27,.99),rgba(5,13,25,.98))!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .bp-world-mesh-stage:before,
  .bp-world-mesh-orbit,
  .bp-world-mesh-globe,
  .bp-world-mesh-globe:before,
  .bp-world-mesh-globe:after,
  .bp-world-mesh-globe-glow,
  .pro-site-header:before{
    animation-duration:80s!important;
  }
}

@keyframes bpWorldMeshRevolve{
  0%{
    background-position:center,center,center,0 0,0 0,0 0,center;
    filter:saturate(1.05) brightness(1);
  }
  50%{
    background-position:center,center,center,-570px 0,0 -150px,-234px 0,center;
    filter:saturate(1.22) brightness(1.05);
  }
  100%{
    background-position:center,center,center,-1140px 0,0 -300px,-468px 0,center;
    filter:saturate(1.05) brightness(1);
  }
}
@keyframes bpWorldMeshSpin{
  0%{transform:rotate(0deg) scale(1.02);}
  100%{transform:rotate(360deg) scale(1.02);}
}
@keyframes bpWorldMeshIdleTilt{
  0%{transform:translate3d(0,0,0) rotate(-2deg) scale(1);}
  100%{transform:translate3d(-1.2vw,-.7vw,0) rotate(2deg) scale(1.015);}
}
@keyframes bpWorldLightSweep{
  0%,100%{transform:translateX(-5%) rotate(0deg);opacity:.24;}
  50%{transform:translateX(6%) rotate(8deg);opacity:.42;}
}
@keyframes bpWorldGlowPulse{
  0%,100%{opacity:.40;transform:scale(.985);}
  50%{opacity:.66;transform:scale(1.02);}
}
@keyframes bpWorldNodeDrift{
  0%{background-position:0 0,90px 20px,180px 80px,-60px 130px,240px 190px,0 0,120px 60px,center bottom;}
  100%{background-position:420px 0,610px 20px,640px 80px,510px 130px,740px 190px,780px 0,1020px 60px,center bottom;}
}
@keyframes bpHeaderMeshMove{
  0%{background-position:0 0,60px 8px,center,center,-120% 0;}
  100%{background-position:180px 0,280px 8px,center,center,120% 0;}
}
