
/* ===== HARD CENTERING + BIG VISIBILITY ===== */
.aff44gm-wrap{
  width:100% !important;
  margin:24px 0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
}
.aff44gm-wrap, .aff44gm-wrap *{ box-sizing:border-box; }

/* Bigger card */
.aff44gm-card{
  width:100% !important;
  max-width: 980px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  padding: 16px 14px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,0.78) !important;
  backdrop-filter: blur(6px);
  box-shadow: 0 14px 34px rgba(0,0,0,0.10) !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  overflow:hidden !important;
}

.aff44gm-cta{ width:100% !important; text-align:center !important; }
.aff44gm-cta-title{ font-weight:900 !important; font-size:17px !important; line-height:1.2 !important; }
.aff44gm-cta-sub{ margin-top:4px !important; font-size:13.5px !important; opacity:.88 !important; }

/* Ad area – never constrain width/height */
.aff44gm-ad{
  width:100% !important;
  display:block !important;
  text-align:center !important;
}
.aff44gm-ad > *{ margin-left:auto !important; margin-right:auto !important; }

/* Reserve space but don't shrink creatives */
.aff44gm-reserve{
  display:block !important;
  width:100% !important;
  min-height: 12px !important;
}

/* Catch-all for injected creatives */
.aff44gm-card iframe,
.aff44gm-card img,
.aff44gm-card object,
.aff44gm-card embed,
.aff44gm-ad iframe,
.aff44gm-ad img,
.aff44gm-ad object,
.aff44gm-ad embed{
  display:block !important;
  margin-left:auto !important;
  margin-right:auto !important;
  max-width:100% !important;
  height:auto !important;
}

/* ===== Sticky bottom (BIGGER) ===== */
.aff44gm-sticky-shell{
  position: fixed; left: 0; right: 0; bottom: 0;
  z-index: 99999;
  padding: 10px 10px 12px;
  background: rgba(255,255,255,0.94);
  backdrop-filter: blur(10px);
  box-shadow: 0 -14px 34px rgba(0,0,0,0.18);
  border-top: 1px solid rgba(0,0,0,0.08);
  display:flex;
  justify-content:center;
  text-align:center !important;
}
.aff44gm-sticky-hidden{ display:none; }
.aff44gm-sticky-shell .aff44gm-card{ max-width: 1200px !important; padding: 12px 12px !important; border-radius: 16px !important; }

.aff44gm-sticky-close{
  position:absolute;
  right:12px; top:10px;
  width:36px; height:36px;
  border:0;
  border-radius:999px;
  background: rgba(0,0,0,0.10);
  font-size:22px;
  line-height: 30px;
  cursor:pointer;
}

/* ===== Mobile mid-sticky ===== */
.aff44gm-midsticky-shell{
  position: fixed;
  left: 10px;
  right: 10px;
  bottom: 104px;
  z-index: 99998;
  display:flex;
  justify-content:center;
  text-align:center;
}
.aff44gm-midsticky-shell .aff44gm-card{ max-width: 640px !important; }
.aff44gm-midsticky-close{
  position:absolute;
  right: 10px;
  top: -8px;
  width:34px; height:34px;
  border:0;
  border-radius:999px;
  background: rgba(0,0,0,0.10);
  font-size:22px;
  line-height: 30px;
  cursor:pointer;
}

/* ===== Modal / Exit ===== */
html.aff44gm-modal-open{ overflow:hidden; }
.aff44gm-modal[hidden], .aff44gm-exit[hidden]{ display:none !important; }
.aff44gm-modal, .aff44gm-exit{ position:fixed; inset:0; z-index: 100000; }

.aff44gm-modal-backdrop{
  position:absolute; inset:0;
  background: rgba(0,0,0,0.58);
}

.aff44gm-modal-card{
  position:relative;
  width: min(94vw, 620px);
  margin: 9vh auto 0;
  border-radius: 20px;
  background: rgba(255,255,255,0.96);
  backdrop-filter: blur(12px);
  box-shadow: 0 34px 90px rgba(0,0,0,0.38);
  border: 1px solid rgba(255,255,255,0.35);
  overflow:hidden;
  text-align:center;
}
.aff44gm-modal-body{ padding: 14px; }
.aff44gm-modal-close{
  position:absolute;
  right:10px; top:10px;
  width:40px; height:40px;
  border:0;
  border-radius:999px;
  background: rgba(0,0,0,0.10);
  font-size:22px;
  cursor:pointer;
}

/* Debug */
.aff44gm-debug{
  position:fixed;
  left:10px;
  bottom:90px;
  z-index:110000;
  background:#111;
  color:#fff;
  padding:6px 10px;
  border-radius:8px;
  font-size:12px;
  opacity:0.85;
}
