/* Leon AFF News Popup (bootstrap-like, no Bootstrap dependency) */
.lan-modal {
  position: fixed; inset: 0; display: flex; align-items: center; justify-content: center;
  background: rgba(0,0,0,.25); opacity: 0; pointer-events: none; transition: opacity .2s ease;
  z-index: 99999;
}
.lan-modal.is-open { opacity:1; pointer-events:auto; }
.lan-modal .modal-body {
  position: relative;
  width: min(92vw, 520px);
  background: #fff;
  border-radius: 16px;
  padding: 24px 28px;
  text-align: center;
  color: #111;
  box-shadow: 0 12px 30px rgba(0,0,0,.25);
}
.lan-modal .btn-close {
  position: absolute;
  right: 10px; top: 10px;
  width: 32px; height: 32px;
  border: 0; background: #f1f1f1; border-radius: 999px; cursor: pointer; font-weight: 700;
}
.lan-modal .sp-link {
  display: inline-block;
  padding: 6px 14px;
  border-radius: 999px;
  background: #f2f3f5;
  text-decoration: none;
  word-break: break-all;
}
.lan-modal .img-cover img {
  max-width: 100%; height: auto; display:block; margin: 0 auto;
  border-radius: 12px;
}

/* Inline gate (closed message only) */
.lan-inlineGate {
  text-align: center; padding: 14px; max-width: 620px; margin: 16px auto;
  background: #fff; border: 1px dashed #e0e0e0; border-radius: 10px; color:#222;
}
.lan-inlineGate .lan-note { font-size: 15px; }
.lan-strong-red { color: #e53935; font-weight: 700; }