/* Injuries only: follows the Contracts and Rosters navy/gold palette. */
.injuries-page { color: #192d41; line-height: 1.6; }
.injuries-page a:focus-visible { outline: 3px solid #ba7400; outline-offset: 4px; }
.injuries-hero {
    padding: 32px;
    color: #fff;
    background: linear-gradient(120deg, #001c36, #064c79);
    border-top: 4px solid #f4b942;
}
.injuries-eyebrow { margin: 0; font-size: .72rem; font-weight: 800; letter-spacing: .12em; color: #356080; }
.injuries-hero .injuries-eyebrow, .injuries-source-card .injuries-eyebrow { color: #ffd36c; }
.injuries-hero h1 { color: #fff; font-size: clamp(2.4rem, 5vw, 3.8rem); font-weight: 800; line-height: 1.1; margin: 12px 0 16px; }
.injuries-lead { font-size: clamp(1.2rem, 2vw, 1.55rem); line-height: 1.4; margin: 0 0 14px; font-weight: 600; }
.injuries-hero-copy { color: #d4e4f0; max-width: 590px; margin: 0 0 24px; }
.injuries-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.injuries-button { padding: 11px 17px; border-radius: 4px; font-weight: 750; font-size: .9rem; white-space: normal; text-decoration: none; }
.injuries-button-gold { background: #f4b942; color: #102a42; border: 1px solid #f4b942; }
.injuries-button-outline { background: transparent; color: #fff; border: 1px solid #7191ab; }
.injuries-button span { margin-left: 8px; }
.injuries-page .injuries-button:hover { background: #fff !important; color: #002244 !important; }
.injuries-hero-footer { display: flex; flex-wrap: wrap; gap: 12px 26px; border-top: 1px solid #42657f; margin-top: 26px; padding-top: 16px; font-size: .66rem; font-weight: 700; letter-spacing: .08em; color: #d4e4f0; }
.injuries-section { padding: 26px; border-radius: 3px; scroll-margin-top: 20px; }
.injuries-section h2 { font-size: 1.5rem; font-weight: 750; line-height: 1.25; margin: 8px 0 12px; }
.injuries-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.injuries-period { border: 1px solid #e9d5a2; border-radius: 4px; padding: 5px 9px; color: #76500a; background: #fff7e5; font-size: .72rem; font-weight: 700; }
.injuries-period-line { color: #596b7a; font-size: .8rem; margin: 0 0 18px; }
.injuries-muted { color: #596b7a; }
.injuries-notice { display: flex; align-items: flex-start; gap: 16px; padding: 22px; background: #f3f7fa; border-left: 4px solid #f4b942; }
.injuries-notice-mark { flex: 0 0 36px; height: 36px; text-align: center; line-height: 34px; border: 1px solid #c1d1df; border-radius: 50%; color: #44677e; }
.injuries-notice h3 { margin: 0 0 8px; font-size: 1.1rem; font-weight: 750; }
.injuries-notice p { margin: 0 0 12px; font-size: .9rem; color: #435a6c; }
.injuries-text-link { color: #0b4f8a; font-weight: 750; font-size: .88rem; text-underline-offset: 3px; }
.injuries-side-card { border-top: 4px solid #0b4f8a; }
.injuries-resource-list a { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 17px 0; border-bottom: 1px solid #dce3ea; text-decoration: none; color: #153650; }
.injuries-resource-list a:last-child { border-bottom: 0; padding-bottom: 0; }
.injuries-resource-list a:hover strong { text-decoration: underline; }
.injuries-resource-list strong { display: block; font-size: .95rem; }
.injuries-resource-list small { display: block; font-size: .77rem; color: #637083; margin-top: 4px; }
.injuries-source-card { background: #082c47; color: #dcebf5; border-top: 4px solid #f4b942; }
.injuries-source-card h2 { color: #fff; }
.injuries-source-card p { font-size: .9rem; }
.injuries-source-card .injuries-source-note { color: #b9ccdb; font-size: .76rem; margin-bottom: 0; padding-top: 16px; border-top: 1px solid #365970; margin-top: 22px; }
.injuries-conference { display: flex; align-items: center; gap: 10px; font-size: .78rem; font-weight: 700; margin: 26px 0 14px; padding-bottom: 12px; border-bottom: 1px solid #dce3ea; }
.injuries-conference span { color: #fff; background: #002244; padding: 4px 8px; border-radius: 3px; }
.injuries-conference-nfc span { background: #a82c3c; }
.injuries-team-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.injuries-team-link { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 9px; padding: 15px 8px; text-align: center; border: 1px solid #dce3ea; border-radius: 4px; background: #f8fafc; text-decoration: none; color: #153650; }
.injuries-team-link:hover { border-color: #0b4f8a; background: #edf4f9; }
.injuries-team-link strong { font-size: .78rem; line-height: 1.35; }
.injuries-team-link img { object-fit: contain; }
.injuries-logo-fallback { display: grid; place-items: center; height: 48px; font-weight: 700; }
.injuries-team-heading { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 2px solid #dce3ea; font-size: 1.1rem; }
.injuries-section table { font-size: .8rem; min-width: 640px; width: 100%; }
.injuries-section .w3-responsive:focus-visible { outline: 3px solid #ba7400; outline-offset: 2px; }
.injuries-section table td:first-child { min-width: 130px; }
.injuries-section table td:nth-child(2) { max-width: 180px; }
.injuries-section table th { background: #082c47; color: #fff; padding: 12px 10px; }
.injuries-section table td { padding: 12px 10px; vertical-align: top; }
.injuries-section tbody tr:nth-child(even) { background: #f4f7fa; }
.injuries-report-details summary { color: #0b4f8a; cursor: pointer; font-weight: 700; }
.injuries-report-details p { margin: 12px 0 0; }
.injuries-status { display: inline-block; border-radius: 4px; padding: 3px 7px; font-size: .7rem; font-weight: 700; background: #eaf0f5; color: #36536a; white-space: nowrap; }
.injuries-status-out { color: #9c2530; background: #fcebee; }
.injuries-status-doubtful { color: #88430d; background: #fff0e2; }
.injuries-status-questionable { color: #725008; background: #fff5d9; }
.injuries-status-reserve { color: #4e4182; background: #f0ecfa; }
.injuries-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; padding: 18px; background: #f3f7fa; border: 1px solid #dce3ea; border-radius: 4px; }
.injuries-filters label { flex: 1 1 170px; font-size: .78rem; font-weight: 750; }
.injuries-filters select { display: block; width: 100%; min-height: 44px; margin-top: 6px; padding: 8px; border: 1px solid #aebfcc; background: white; color: #192d41; border-radius: 3px; }
.injuries-filters > a { padding: 10px 0; font-size: .8rem; }
.injuries-filters select:focus-visible, .injuries-filters button:focus-visible { outline: 3px solid #ba7400; outline-offset: 2px; }
.injuries-result-count { padding: 12px 0; border-bottom: 1px solid #dce3ea; font-size: .85rem; }
.injuries-result-count span { color: #596b7a; }
.injuries-player-position { display: block; color: #596b7a; font-size: .72rem; margin-top: 3px; }
.injuries-data-note { font-size: .76rem; margin-top: 24px; }
@media (max-width: 600px) {
    .injuries-hero { padding: 24px; }
    .injuries-section { padding: 20px; }
    .injuries-actions { flex-direction: column; }
    .injuries-section-heading { align-items: flex-start; gap: 0; }
    .injuries-period { margin: 0 0 12px; }
    .injuries-notice { padding: 18px; gap: 10px; }
    .injuries-notice-mark { display: none; }
    .injuries-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .injuries-hero-footer { gap: 10px 18px; }
}
