/* Mizan add-ons cards v1.1.0
   Equal card heights across rows + bottom-pinned download button. */

/* Desktop / tablet grid */
@media (min-width: 641px) {
  body[data-nav="apps"] .resource-grid {
    align-items: stretch !important;
    grid-auto-rows: 1fr !important;
  }

  body[data-nav="apps"] .resource-grid > .resource-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    height: 100% !important;
    min-height: 320px !important;
    box-sizing: border-box !important;
  }

  /* Keep normal content at the top. */
  body[data-nav="apps"] .resource-grid > .resource-card > .addon-card__badge,
  body[data-nav="apps"] .resource-grid > .resource-card > h3,
  body[data-nav="apps"] .resource-grid > .resource-card > p,
  body[data-nav="apps"] .resource-grid > .resource-card > ul {
    flex: 0 0 auto !important;
  }

  body[data-nav="apps"] .resource-grid > .resource-card > ul {
    margin-bottom: 0 !important;
  }

  /* This is the key rule: the action consumes the remaining space above it. */
  body[data-nav="apps"] .resource-grid > .resource-card > .addon-card__button {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
    align-self: stretch !important;
  }
}

/* Mobile: content-driven height is cleaner when cards are stacked. */
@media (max-width: 640px) {
  body[data-nav="apps"] .resource-grid > .resource-card {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body[data-nav="apps"] .resource-grid > .resource-card > .addon-card__button {
    margin-top: 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}
