
/* MamaBetPro loader v7 — logo top + premium ATM */
.mb-loader{
  position:fixed !important; inset:0 !important; z-index:2147483000 !important;
  display:flex !important; flex-direction:column !important; align-items:center !important;
  justify-content:flex-start !important;
  padding: max(18px, env(safe-area-inset-top)) 16px 24px;
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .4s ease, visibility .4s ease;
}
.mb-loader.on, .mb-loader.boot{
  opacity:1 !important; visibility:visible !important; pointer-events:auto !important;
}
.mb-loader-bg{
  position:absolute; inset:0; overflow:hidden; z-index:0;
  background:
    radial-gradient(720px 460px at 50% 78%, rgba(245,197,24,.16), transparent 55%),
    radial-gradient(680px 420px at 50% 70%, rgba(34,197,94,.18), transparent 58%),
    linear-gradient(165deg,#050805,#0b1210 48%,#07140e);
}
#mbAtmCanvas{
  position:absolute; inset:0; width:100%; height:100%; z-index:1; pointer-events:none;
}
.mb-loader-card{
  position:relative; z-index:3; width:min(360px,92vw); text-align:center;
  margin-top: clamp(10px, 4vh, 28px);
  padding: 4px 8px 0;
  pointer-events:none;
}
.mb-loader-mark{
  width:76px; height:76px; margin:0 auto 14px; border-radius:22px;
  display:grid; grid-template-columns:1fr 1fr; overflow:hidden;
  box-shadow:
    0 16px 40px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.1),
    0 0 36px rgba(245,197,24,.28),
    0 0 48px rgba(34,197,94,.18);
  animation:mbPulse 1.55s ease-in-out infinite;
}
.mb-loader-mark span{display:grid;place-items:center;font:800 19px "Space Grotesk",system-ui,sans-serif}
.mb-loader-mark .m{background:#f5c518;color:#1a1400}
.mb-loader-mark .b{background:#0b1210;color:#22c55e}
.mb-loader-title{
  margin:0; font:800 22px "Space Grotesk",system-ui,sans-serif; letter-spacing:.03em; color:#f7faf8;
  text-shadow:0 0 22px rgba(245,197,24,.3), 0 0 18px rgba(34,197,94,.2);
}
.mb-loader-sub{margin:8px 0 14px;color:#b7c8bd;font:500 13px Outfit,system-ui,sans-serif;min-height:36px}
.mb-loader-bar{
  height:4px; border-radius:99px; background:rgba(255,255,255,.08); overflow:hidden;
  max-width:220px; margin:0 auto;
}
.mb-loader-bar i{
  display:block;height:100%;width:42%;border-radius:99px;
  background:linear-gradient(90deg,#f5c518,#fff,#22c55e);
  animation:mbBar 1.15s ease-in-out infinite;
}
.mb-loader-hint{
  margin-top:12px; font-size:10px; letter-spacing:.16em; text-transform:uppercase;
  color:rgba(167,183,173,.8);
}
@keyframes mbBar{0%{transform:translateX(-120%)}100%{transform:translateX(280%)}}
@keyframes mbPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
