/**
 * Ad Banner Styles
 * Responsive banner advertisement styles for DeFiBall.io
 */

/* Banner Container */
.ad-banner-container {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #000000;
  border-bottom: 1px solid rgba(30, 64, 175, 0.3);
  position: fixed;
  top: 64px; /* Right below the fixed navbar */
  left: 0;
  right: 0;
  z-index: 9998; /* Below navbar (9999) */
  overflow: hidden;
}

/* Banner Link */
.ad-banner-link {
  display: block;
  width: 100%;
  text-decoration: none;
  transition: opacity 0.3s ease;
  position: relative;
}

.ad-banner-link:hover {
  opacity: 0.9;
}

.ad-banner-link:active {
  opacity: 0.8;
}

/* Banner Image Container */
.ad-banner-image {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}

/* Banner Image */
.ad-banner-img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  object-fit: cover;
  object-position: center;
}

/* Desktop Styles (1024px and above) */
@media (min-width: 1024px) {
  .ad-banner-container {
    height: 120px;
  }
  
  .ad-banner-img {
    height: 120px;
    object-fit: cover;
  }
  
  /* Adjust body padding to account for navbar + banner */
  /* Use !important to override page-specific CSS that only accounts for navbar */
  body.has-fixed-nav {
    padding-top: calc(64px + 120px + 8px) !important; /* navbar + banner + gap */
  }
}

/* Tablet Styles (768px to 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
  .ad-banner-container {
    height: 100px;
  }
  
  .ad-banner-img {
    height: 100px;
    object-fit: cover;
  }
  
  /* Adjust body padding to account for navbar + banner */
  /* Use !important to override page-specific CSS that only accounts for navbar */
  body.has-fixed-nav {
    padding-top: calc(64px + 100px + 8px) !important; /* navbar + banner + gap */
  }
}

/* Mobile Styles (below 768px) */
@media (max-width: 767px) {
  .ad-banner-container {
    height: 80px;
  }
  
  .ad-banner-img {
    height: 80px;
    object-fit: cover;
  }
  
  /* Adjust body padding to account for navbar + banner */
  /* Use !important to override page-specific CSS that only accounts for navbar */
  body.has-fixed-nav {
    padding-top: calc(64px + 80px + 8px) !important; /* navbar + banner + gap */
  }
}

/* MetaMask In-App Browser - Optional: Hide banner */
/* Uncomment if you want to hide ads in MetaMask browser */
/*
html.metamask-inapp .ad-banner-container {
  display: none;
}
*/

/* Accessibility */
.ad-banner-link:focus {
  outline: 2px solid rgba(30, 64, 175, 0.8);
  outline-offset: -2px;
}

/* Prevent text selection on banner */
.ad-banner-container {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

