/* Trusted Betpro — premium splash loader */
.loader-bp{
  position:fixed;inset:0;z-index:999;
  display:flex;align-items:center;justify-content:center;
  margin:0;padding:24px;
  background:
    radial-gradient(520px 280px at 50% 28%, rgba(250,204,21,.18), transparent 58%),
    radial-gradient(640px 360px at 50% 78%, rgba(34,197,94,.28), transparent 62%),
    linear-gradient(165deg, #010403 0%, #062214 42%, #0a3a18 78%, #020805 100%);
  transition:opacity .55s ease, visibility .55s ease;
  font-family:Outfit,system-ui,sans-serif;
  overflow:hidden;
}
.loader-bp::before{
  content:"";position:absolute;inset:-20%;
  background:
    radial-gradient(circle at 20% 30%, rgba(184,255,46,.08), transparent 28%),
    radial-gradient(circle at 80% 20%, rgba(250,204,21,.07), transparent 26%),
    radial-gradient(circle at 70% 80%, rgba(34,197,94,.1), transparent 30%);
  animation:premDrift 7s ease-in-out infinite alternate;
  pointer-events:none;
}
.loader-bp::after{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size:32px 32px;
  mask-image:radial-gradient(circle at 50% 42%, #000 0%, transparent 70%);
  opacity:.45;pointer-events:none;
}
.loader-bp.is-done,
.loader-bp[hidden]{
  opacity:0;visibility:hidden;pointer-events:none;
}
.loader-bp-inner{
  position:relative;z-index:1;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;gap:0;width:min(320px,100%);
  animation:premRise .55s ease both;
}
.loader-bp-ring{
  position:relative;
  width:132px;height:132px;
  display:grid;place-items:center;
  margin:0 auto 18px;
}
.loader-bp-ring::before,
.loader-bp-ring::after{
  content:"";position:absolute;border-radius:50%;
  border:2px solid transparent;
}
.loader-bp-ring::before{
  inset:-4px;
  border-top-color:#facc15;
  border-right-color:rgba(250,204,21,.25);
  box-shadow:0 0 18px rgba(250,204,21,.25);
  animation:bpSpin 1.15s linear infinite;
}
.loader-bp-ring::after{
  inset:8px;
  border-bottom-color:#4ade80;
  border-left-color:rgba(74,222,128,.25);
  animation:bpSpin 1.7s linear infinite reverse;
}
.loader-bp-orbit{
  position:absolute;inset:-14px;border-radius:50%;
  border:1px dashed rgba(250,204,21,.28);
  animation:bpSpin 8s linear infinite;
  pointer-events:none;
}
.loader-bp-orbit i{
  position:absolute;top:-3px;left:50%;width:7px;height:7px;margin-left:-3.5px;
  border-radius:50%;background:#facc15;
  box-shadow:0 0 10px #facc15;
}
.loader-bp-ring img{
  width:92px;height:92px;border-radius:50%;
  object-fit:cover;object-position:center;
  position:relative;z-index:1;
  background:#04140a;
  box-shadow:
    0 0 0 3px rgba(250,204,21,.55),
    0 0 0 8px rgba(34,197,94,.18),
    0 14px 36px rgba(0,0,0,.45);
  animation:bpPulse 2s ease-in-out infinite;
}
.loader-bp-brand{
  margin:0 0 6px;
  font-weight:800;font-size:1.28rem;letter-spacing:.02em;color:#fff;
  text-shadow:0 4px 20px rgba(0,0,0,.35);
}
.loader-bp-brand span{color:#facc15}
.loader-bp-sub{
  margin:0 0 16px;
  color:rgba(230,255,210,.78);
  font-weight:500;font-size:.9rem;
}
.loader-bp-bar{
  width:148px;height:4px;border-radius:999px;overflow:hidden;
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.loader-bp-bar i{
  display:block;height:100%;width:38%;border-radius:inherit;
  background:linear-gradient(90deg,#facc15,#4ade80,#b8ff2e);
  box-shadow:0 0 12px rgba(250,204,21,.45);
  animation:bpSlide 1.2s ease-in-out infinite;
}
.loader-bp-shine{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;
}
.loader-bp-shine::before{
  content:"";position:absolute;top:-20%;left:-40%;width:40%;height:140%;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.08), transparent);
  animation:premShine 2.4s ease-in-out infinite;
}
@keyframes bpSpin{to{transform:rotate(360deg)}}
@keyframes bpPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.045)}
}
@keyframes bpSlide{
  0%{transform:translateX(-130%)}
  100%{transform:translateX(320%)}
}
@keyframes premRise{
  from{opacity:0;transform:translateY(16px) scale(.96)}
  to{opacity:1;transform:none}
}
@keyframes premDrift{
  from{transform:translate3d(0,0,0) scale(1)}
  to{transform:translate3d(0,-18px,0) scale(1.04)}
}
@keyframes premShine{
  0%{transform:translateX(0)}
  100%{transform:translateX(420%)}
}
@media(prefers-reduced-motion:reduce){
  .loader-bp::before,
  .loader-bp-ring::before,
  .loader-bp-ring::after,
  .loader-bp-orbit,
  .loader-bp-ring img,
  .loader-bp-bar i,
  .loader-bp-shine::before{animation:none!important}
  .loader-bp-bar i{width:100%}
}

html.bp-dash-ready #loader.loader-bp.is-done{display:none!important}
