:root{
  --ca9j-red:#c62828;
  --ca9j-dark:#121417;
}
body{background:#f5f7fb;color:#1b1f24;}
.ca9j-navbar{background:linear-gradient(90deg,#111 0%,#1f2329 100%);box-shadow:0 8px 28px rgba(0,0,0,.12)}
.hero{background:linear-gradient(135deg,rgba(198,40,40,.94),rgba(17,17,17,.96));color:#fff;padding:90px 0;}
.hero-card,.soft-card{border:0;border-radius:22px;box-shadow:0 10px 35px rgba(0,0,0,.08)}
.section-title{font-size:2rem;font-weight:800;margin-bottom:10px}
.badge-soft{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.18);padding:.5rem .9rem;border-radius:999px;display:inline-block}
.discipline-card,.news-card,.sponsor-card{background:#fff;border-radius:22px;box-shadow:0 10px 30px rgba(0,0,0,.06);height:100%}
.discipline-card .placeholder-box,.news-thumb,.banner-thumb{height:170px;border-radius:18px;background:linear-gradient(135deg,#ddd,#f3f3f3)}
.ca9j-footer{background:#111;color:#fff}
.footer-link{color:#fff;text-decoration:none}
.page-hero{background:#fff;border-bottom:1px solid #e8edf3;padding:50px 0 35px}
.admin-sidebar{min-height:100vh;background:#15181c;color:#fff}
.admin-sidebar a{color:#cfd6dd;text-decoration:none;display:block;padding:.75rem 1rem;border-radius:12px}
.admin-sidebar a:hover,.admin-sidebar a.active{background:#252a31;color:#fff}
.admin-card{border:0;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.07)}
.table td,.table th{vertical-align:middle}
.form-control,.form-select,.btn{border-radius:14px}
.status-pill{padding:.25rem .6rem;border-radius:999px;font-size:.8rem}
.status-published{background:#d1fae5;color:#065f46}
.status-draft{background:#fef3c7;color:#92400e}
.site-logo-nav{width:28px !important;height:28px !important;max-width:28px !important;max-height:28px !important;object-fit:contain;display:block;filter:drop-shadow(0 2px 8px rgba(0,0,0,.22))}
.hero-logo-wrap{display:flex;align-items:center;justify-content:center}
.hero-club-logo{max-width:150px;width:100%;height:auto;max-height:150px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.22));opacity:.9}
.match-highlight-card{background:linear-gradient(135deg,#ffffff,#f6f7fb);border-radius:24px;box-shadow:0 14px 34px rgba(0,0,0,.08);border:1px solid #eceff5}
.match-vs{font-size:1.35rem;font-weight:800;line-height:1.25}
.score-badge{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:.55rem 1rem;border-radius:999px;background:#121417;color:#fff;font-weight:700}
.match-meta{font-size:.95rem;color:#5d6672}
.table-federal thead th{background:#121417;color:#fff;border:0}
.table-federal td,.table-federal th{padding:.95rem .85rem}
.section-kicker{letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;color:var(--ca9j-red);font-weight:800}
.federal-panel{background:#fff;border-radius:22px;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.admin-help{font-size:.92rem;color:#5d6672}
@media (max-width:991px){.site-logo-nav{width:24px !important;height:24px !important}.hero-club-logo{max-width:110px;max-height:110px}}
.login-logo-admin{width:38px !important;height:38px !important;max-width:38px !important;max-height:38px !important;object-fit:contain;filter:none;opacity:.92}
.live-tag{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .7rem;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.federal-mini-list .list-group-item{border-color:#eef1f5;background:transparent}

/* Scorecards (estilo tipo Google Sports) */
.ca9j-scorecard{display:block;background:#fff;border:1px solid #e6eaf2;border-radius:18px;padding:14px 14px 12px;box-shadow:0 2px 10px rgba(15,23,42,.04);color:#0f172a}
.ca9j-scorecard--link{cursor:pointer;text-decoration:none}
.ca9j-scorecard--link:hover{border-color:#d5dbea;box-shadow:0 10px 26px rgba(15,23,42,.08);transform:translateY(-1px)}
.ca9j-scorecard__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.ca9j-ic{width:14px;height:14px;display:inline-block;flex:0 0 auto}
.ca9j-scorecard__kicker{display:flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#6b7280;font-weight:800}
.ca9j-scorecard__kicker .ca9j-ic{opacity:.9}
.ca9j-scorecard__status{font-size:12px;font-weight:900;white-space:nowrap;padding:.26rem .6rem;border-radius:999px;background:#f3f4f6;color:#111827;border:1px solid #e5e7eb}
.ca9j-scorecard__status.is-live{background:rgba(198,40,40,.10);border-color:rgba(198,40,40,.25);color:var(--ca9j-red)}
.ca9j-scorecard__status.is-live:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ca9j-red);margin-right:6px;box-shadow:0 0 0 3px rgba(198,40,40,.14)}
.ca9j-scorecard__status.is-final{background:rgba(5,150,105,.10);border-color:rgba(5,150,105,.25);color:#065f46}
.ca9j-scorecard__status.is-muted{background:#f9fafb;border-color:#eef2f7;color:#6b7280}
.ca9j-scorecard__status.is-neutral{background:#f9fafb;border-color:#eef2f7;color:#374151}
.ca9j-scorecard__teams{display:flex;flex-direction:column;gap:10px}
.ca9j-scorecard__team{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:center}
.ca9j-scorecard.is-scored .ca9j-scorecard__team{grid-template-columns:26px 1fr auto}
.ca9j-scorecard__logo{width:22px;height:22px;object-fit:contain;display:block}
.ca9j-scorecard__fallback{width:22px;height:22px;border-radius:6px;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900}
.ca9j-scorecard__name{font-size:14px;font-weight:700;line-height:1.1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ca9j-scorecard__score{font-size:16px;font-weight:900;color:#111827;min-width:20px;text-align:right}
.ca9j-scorecard__team.is-winner .ca9j-scorecard__name{font-weight:900}
.ca9j-scorecard__team.is-winner .ca9j-scorecard__score{color:#0f172a}
.ca9j-scorecard__meta{margin-top:12px;padding-top:10px;border-top:1px solid #eef2f7;font-size:12px;color:#6b7280;display:flex;align-items:center;gap:8px}
.ca9j-scorecard__meta .ca9j-ic{opacity:.85}
.ca9j-scorecard--compact{padding:12px 12px 10px;border-radius:16px}
.ca9j-scorecard--compact .ca9j-scorecard__teams{gap:8px}
.ca9j-scorecard--compact .ca9j-scorecard__name{font-size:13px}
.ca9j-scorecard--hero{padding:18px 18px 14px;border-radius:22px}
.ca9j-scorecard--hero .ca9j-scorecard__name{font-size:15px}
