/* Mobile bento showcase — cards + animations fully visible */

@media (max-width: 900px) {
  .bento-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.15rem !important;
  }

  .bento--hero,
  .bento--tall,
  .bento--wide,
  .bento--mid,
  .bento--sm {
    grid-column: 1 / -1 !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 300px !important;
    padding-bottom: 0 !important;
  }

  .bento--hero {
    min-height: 340px !important;
  }

  .bento--tall {
    min-height: 400px !important;
  }

  .bento--wide,
  .bento--mid,
  .bento--sm {
    min-height: 280px !important;
  }

  .bento-label {
    padding: 1rem 1.15rem 0 !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .bento-ui {
    position: relative !important;
    inset: auto !important;
    flex: 1 1 auto !important;
    min-height: 150px !important;
    margin: 0.65rem 1rem 0 !important;
    width: auto !important;
    max-width: none !important;
    overflow: hidden !important;
    border-radius: 12px !important;
  }

  .bento--tall .bento-ui.bento-ml-net {
    inset: auto !important;
    min-height: 210px !important;
    margin: 0.65rem 1rem 0 !important;
    padding: 0.65rem !important;
  }

  .bento-title {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    margin-top: auto !important;
    padding: 1rem 1.15rem 1.2rem !important;
    -webkit-line-clamp: unset !important;
    display: block !important;
  }

  .bento-title p {
    display: block !important;
    -webkit-line-clamp: unset !important;
    overflow: visible !important;
    text-overflow: unset !important;
  }

  .bento-dashboard {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: auto auto !important;
    gap: 0.45rem !important;
    padding: 0.75rem !important;
    width: 100% !important;
    min-height: 150px !important;
    align-content: start !important;
  }

  .bento-metric {
    min-width: 0 !important;
    padding: 0.45rem 0.3rem !important;
    text-align: center !important;
  }

  .bento-metric strong {
    font-size: clamp(0.85rem, 3.5vw, 1rem) !important;
    display: block !important;
  }

  .bento-metric span {
    font-size: 0.52rem !important;
    letter-spacing: 0.04em !important;
    line-height: 1.2 !important;
  }

  .bento-chart-area {
    grid-column: 1 / -1 !important;
    height: 52px !important;
    margin-top: 0.25rem !important;
  }

  .ml-net-svg {
    min-height: 120px !important;
    max-height: none !important;
  }

  .ml-net-hud {
    flex-shrink: 0 !important;
    margin-top: 0.35rem !important;
  }

  .bento-servers {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 0.65rem !important;
    padding: 1rem !important;
    min-height: 120px !important;
  }

  .bento-security {
    min-height: 120px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .bento-lock {
    transform: scale(1) !important;
  }

  .bento-mobile {
    min-height: 120px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .bento-phone {
    width: 72px !important;
    height: 128px !important;
  }

  /* Ensure cards are visible on mobile (reveal IO can miss on fast scroll) */
  .bento-showcase .bento-cell.reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }

  /* Keep inner animations running on touch devices */
  .bento-bar,
  .bento-metric,
  .bento-server span,
  .ml-net-link,
  .ml-net-node,
  .bento-scan,
  .bento-phone-block {
    animation-play-state: running !important;
  }
}

@media (max-width: 380px) {
  .bento-metric strong {
    font-size: 0.8rem !important;
  }

  .bento-metric span {
    font-size: 0.48rem !important;
  }
}
