/* ============================================
   Redbox Geo-Detection Banners
   Country auto-detection + global switch banners
   ============================================ */

/* ========== Geo-Detected Banner ========== */
.rn-geo-banner {
  margin-bottom: 15px;
}

.rn-geo-banner-inner {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #e7f1ff 0%, #d4e4ff 100%);
  border: 1px solid #b6d4fe;
  border-radius: 10px;
  font-size: 13px;
  color: #1a4d8f;
  animation: rnSlideDown 0.4s ease;
}

.rn-geo-banner-inner i.fa-location-dot {
  color: #0d6efd;
  font-size: 16px;
  flex-shrink: 0;
}

.rn-geo-banner-inner strong {
  color: #0a3d7a;
}

.rn-geo-banner-dismiss {
  margin-left: auto;
  color: #6b7280;
  font-size: 14px;
  padding: 4px 8px;
  border-radius: 6px;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.rn-geo-banner-dismiss:hover {
  background: rgba(0, 0, 0, 0.08);
  color: #374151;
}

[dir="RTL"] .rn-geo-banner-dismiss {
  margin-left: 0;
  margin-right: auto;
}

/* ========== Global (Worldwide) Banner ========== */
.rn-global-banner {
  margin-bottom: 15px;
}

.rn-global-banner-inner {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
  border: 1px solid #86efac;
  border-radius: 10px;
  font-size: 13px;
  color: #166534;
  animation: rnSlideDown 0.4s ease;
}

.rn-global-banner-inner i.fa-globe {
  color: #16a34a;
  font-size: 16px;
  flex-shrink: 0;
}

.rn-global-banner-back {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 12px;
  background: #16a34a;
  color: #fff;
  border-radius: 16px;
  font-size: 12px;
  font-weight: 500;
  transition: all 0.2s ease;
  flex-shrink: 0;
  text-decoration: none;
}

.rn-global-banner-back:hover {
  background: #15803d;
  color: #fff;
}

[dir="RTL"] .rn-global-banner-back {
  margin-left: 0;
  margin-right: auto;
}

/* ========== Night Mode ========== */
body.night-mode .rn-geo-banner-inner {
  background: linear-gradient(135deg, #1a2a3a 0%, #162d4a 100%);
  border-color: #1a4a7a;
  color: #8bb8e0;
}

body.night-mode .rn-geo-banner-inner i.fa-location-dot {
  color: #4a9eff;
}

body.night-mode .rn-geo-banner-inner strong {
  color: #a8d4f5;
}

body.night-mode .rn-geo-banner-dismiss:hover {
  background: rgba(255, 255, 255, 0.08);
  color: #ccc;
}

body.night-mode .rn-global-banner-inner {
  background: linear-gradient(135deg, #1a2e1a 0%, #163016 100%);
  border-color: #2a5a2a;
  color: #86efac;
}

body.night-mode .rn-global-banner-inner i.fa-globe {
  color: #4ade80;
}

body.night-mode .rn-global-banner-back {
  background: #16a34a;
}

body.night-mode .rn-global-banner-back:hover {
  background: #22c55e;
}

/* ========== Animation ========== */
@keyframes rnSlideDown {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ========== Mobile Responsive ========== */
@media (max-width: 767px) {
  .rn-geo-banner-inner,
  .rn-global-banner-inner {
    padding: 8px 12px;
    font-size: 12px;
    gap: 8px;
    flex-wrap: wrap;
  }

  .rn-geo-banner-inner i.fa-location-dot,
  .rn-global-banner-inner i.fa-globe {
    font-size: 14px;
  }

  .rn-geo-banner-dismiss {
    position: absolute;
    top: 4px;
    right: 4px;
    padding: 2px 6px;
  }

  [dir="RTL"] .rn-geo-banner-dismiss {
    right: auto;
    left: 4px;
  }

  .rn-geo-banner {
    position: relative;
  }
}
