/* --- Single Post Banner --- */
.ipo-review-banner {
  margin-bottom: 2em;
}
.ipo-review-banner img {
  width: 100%;
  height: auto;
  display: block;
}

/* --- Archive Page Filters --- */
.irm-filters-container {
  display: flex;
  gap: 15px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.irm-filters-container input,
.irm-filters-container select {
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  min-width: 200px;
}

/* --- Table Styles --- */
.irm-reviews-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px;
}
.irm-reviews-table th,
.irm-reviews-table td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #e0e0e0;
}
.irm-reviews-table th {
  background-color: #f8f8f8;
  font-weight: bold;
}
.irm-reviews-table tbody tr:hover {
  background-color: #f1f1f1;
}

/* --- Recommendation Badges --- */
.recommendation-badge {
  padding: 5px 10px;
  border-radius: 15px;
  font-size: 0.9em;
  font-weight: bold;
  color: #fff;
  white-space: nowrap;
}
.recommendation-strong-buy {
  background-color: #27ae60;
} /* Green */
.recommendation-buy {
  background-color: #2ecc71;
} /* Lighter Green */
.recommendation-neutral {
  background-color: #f39c12;
} /* Orange */
.recommendation-avoid {
  background-color: #e74c3c;
} /* Red */

/* --- Pagination --- */
.irm-pagination .page-numbers {
  padding: 8px 12px;
  margin: 0 2px;
  border: 1px solid #ccc;
  text-decoration: none;
  color: #333;
}
.irm-pagination .page-numbers.current,
.irm-pagination .page-numbers:hover {
  background-color: #333;
  color: #fff;
  border-color: #333;
}

/* --- Responsive Table to Card Layout --- */
@media screen and (max-width: 768px) {
  .irm-reviews-table thead {
    display: none;
  }
  .irm-reviews-table,
  .irm-reviews-table tbody,
  .irm-reviews-table tr,
  .irm-reviews-table td {
    display: block;
    width: 100%;
  }
  .irm-reviews-table tr {
    margin-bottom: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    overflow: hidden;
  }
  .irm-reviews-table td {
    text-align: right;
    padding-left: 50%;
    position: relative;
    border: none;
    border-bottom: 1px solid #f0f0f0;
  }
  .irm-reviews-table td:before {
    content: attr(data-label);
    position: absolute;
    left: 15px;
    width: 45%;
    padding-right: 10px;
    white-space: nowrap;
    text-align: left;
    font-weight: bold;
  }
  .irm-reviews-table td:last-child {
    border-bottom: 0;
  }
}
