.injury-report-wrapper {
  width: 100%;
  font-family: system-ui, sans-serif;
}

.injury-report {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 16px 0;
  border: 0;
  table-layout: auto;
}

.injury-report tbody tr {
  display: block;
  margin-bottom: 12px;
  background-color: #f7f9fc;
  border-radius: 6px;
  padding: 8px;
}

.injury-report tbody td {
  display: block;
  text-align: left;
  padding: 4px 0;
  border: 0;
  position: relative;
}

.injury-report tbody td::before {
  content: attr(data-label);
  font-weight: bold;
  display: inline-block;
  width: 120px;
}

.injury-report tbody td[data-label="Player Name"]::before,
.injury-report tbody td[data-label="Player Image"]::before {
  content: none;
}

.team-header {
  display: flex;
  align-items: center;
  font-size: 1.2em;
  font-weight: bold;
  background-color: #0b3954;
  padding: 8px 10px;
  border-radius: 6px;
  margin-bottom: 8px;
  color: #fff;
}

.team-header img {
  width: 30px;
  height: auto;
  margin-right: 10px;
}

.injury-report td:nth-child(4) {
  font-weight: bold;
  font-style: italic;
}

.injury-report img {
  max-width: 60px;
  height: auto;
  display: block;
  margin-bottom: 4px;
}

@media (max-width: 768px) {
  .injury-report tbody tr {
    margin-bottom: 10px;
    padding: 6px;
  }
  .team-header {
    font-size: 1.1em;
    padding: 6px 8px;
  }
  .injury-report img {
    max-width: 50px;
  }
}

@media (max-width: 480px) {
  .injury-report tbody tr {
    margin-bottom: 8px;
    padding: 4px;
  }
  .team-header {
    font-size: 1em;
    padding: 4px 6px;
    flex-wrap: wrap;
  }
  .injury-report img {
    max-width: 45px;
  }
  .injury-report tbody td::before {
    width: 100%;
    display: block;
    margin-bottom: 2px;
  }
}

.nfl-injuries-widget { font-family: system-ui; max-width:700px; margin:0 auto; }
.injury-team { border-bottom:1px solid rgba(0,0,0,0.1); }
.injury-team-toggle { width:100%; padding:12px 14px; background:none; border:0; text-align:left; font-weight:600; cursor:pointer; display:flex; justify-content:space-between; }
.injury-team-body { display:none; padding:10px 14px 14px; }
.injury-item { display:flex; flex-direction:column; gap:6px; padding:8px 0; }
.player-img { width:38px; height:38px; border-radius:50%; margin-right:10px; }
.injury-player { display:flex; align-items:center; }
.player-name { font-weight:700; }
.injury-meta { font-size:0.92rem; color:#374151; }
/* Fix huge gap caused by WP block layout container */
.entry-content.wp-block-post-content,
.entry-content.wp-block-post-content.is-layout-flow,
.wp-block-post-content.is-layout-flow {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    min-height: auto !important;
}
/* === CCI DESKTOP GRID FORCE FIX === */
body .sofa-scale-grid,
body .cci-grid,
body .sofa-scale-week-grid,
body .sofa-cci-wrapper {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 24px !important;

  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 16px !important;
}

/* FORCE CARDS TO BE NORMAL BLOCK ELEMENTS */
body .sofa-cci-card {
  position: relative !important;
  width: 100% !important;
  max-width: 380px !important;
  margin: 0 auto !important;
  left: auto !important;
  right: auto !important;
}