/* Mega tiles: header hover + homepage tap sheets, mobile-first. */

.snet-mega__tile,
.snet-mega__all {
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.snet-mega__tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 92px;
  padding: 10px 8px;
  border-radius: 14px;
  text-align: center;
  text-decoration: none !important;
  color: inherit !important;
  background: rgba(8, 24, 42, 0.55);
  border: 1px solid rgba(125, 211, 252, 0.2);
}

.snet-mega__tile:active {
  transform: scale(0.98);
}

.snet-mega__icon {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(0, 180, 255, 0.18);
  color: #7dd3fc;
  font-size: 1.2rem;
}

.snet-mega__name {
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
}

.snet-mega__meta {
  font-size: 0.68rem;
  opacity: 0.72;
  line-height: 1.25;
}

.snet-mega__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 40px;
  padding: 6px 8px;
  border-radius: 10px;
}

.snet-mega__logo img {
  max-height: 28px;
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.snet-mega__all {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 8px 12px;
  border-radius: 12px;
  font-size: 0.82rem;
  font-weight: 700;
  text-decoration: none !important;
  background: rgba(0, 180, 255, 0.16);
  border: 1px solid rgba(125, 211, 252, 0.28);
  color: #e8f4ff !important;
}

.snet-mega__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.snet-mega__panel,
.snet-fly__sheet {
  background: rgba(6, 18, 32, 0.94);
  border: 1px solid rgba(125, 211, 252, 0.28);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.snet-fly {
  display: contents;
}

.snet-fly__sheet {
  display: none;
  gap: 8px;
  padding: 10px;
  border-radius: 18px;
  margin-top: 8px;
}

.snet-fly__sheet[hidden] {
  display: none !important;
}

.snet-fly.is-open > .snet-fly__sheet {
  display: grid !important;
  grid-column: 1 / -1;
  position: relative;
  z-index: 5;
}

.snet-hero-cta .snet-fly {
  display: contents;
}

.snet-hero-cta .snet-fly__sheet {
  flex: 1 1 100%;
  width: 100%;
  order: 20;
  margin-top: 4px;
}

html[data-theme="day"] .snet-mega__tile {
  background: #fff;
  border-color: rgba(16, 92, 137, 0.2);
  color: #16384f !important;
  box-shadow: 0 4px 14px rgba(20, 70, 100, 0.08);
}

html[data-theme="day"] .snet-mega__icon {
  background: rgba(0, 140, 200, 0.12);
  color: #0077b8;
}

html[data-theme="day"] .snet-mega__all {
  background: rgba(0, 140, 200, 0.1);
  border-color: rgba(0, 140, 200, 0.22);
  color: #0b5f8c !important;
}

html[data-theme="day"] .snet-mega__panel,
html[data-theme="day"] .snet-fly__sheet {
  background: rgba(255, 255, 255, 0.92);
  border-color: rgba(16, 92, 137, 0.16);
}

@media (min-width: 992px) {
  .snet-mega__grid {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  }

  #header .nav-menu .snet-mega > ul.snet-mega__panel {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(124px, 1fr));
    gap: 8px;
    min-width: min(560px, 86vw);
    max-width: min(720px, calc(100vw - 24px));
    width: max-content;
    padding: 12px !important;
    border-radius: 18px;
  }

  #header .nav-menu .snet-mega > ul.snet-mega__panel > li {
    min-width: 0 !important;
    display: block;
  }

  #header .nav-menu .snet-mega > ul.snet-mega__panel > li > a {
    padding: 0 !important;
  }

  #header .nav-menu .snet-mega__all {
    grid-column: 1 / -1;
    display: none;
  }

  #header .nav-menu .snet-mega--end > ul {
    left: auto !important;
    right: 0 !important;
  }
}

@media (max-width: 991.98px) {
  .snet-mega__tile {
    min-height: 76px;
  }

  .mobile-nav .snet-mega > ul.snet-mega__panel {
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 8px 4px 12px !important;
    max-height: min(58vh, 420px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .mobile-nav .snet-mega.is-open > ul.snet-mega__panel {
    display: grid !important;
  }

  .mobile-nav .snet-mega__all {
    grid-column: 1 / -1;
  }

  .mobile-nav .snet-mega__all a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    border-radius: 12px;
    background: rgba(0, 180, 255, 0.16);
  }

  .snet-fly__sheet {
    max-height: min(62vh, 460px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  }
}

@media (hover: hover) and (pointer: fine) {
  .snet-mega__tile:hover {
    border-color: rgba(0, 180, 255, 0.5);
    transform: translateY(-2px);
  }
}
