/* ==========================================================
   QUINIELA COSTA RICA - TEMA NACIONAL v2.04
   Paleta: azul, rojo, blanco y fondos claros.
   Se carga después de los estilos heredados para unificar todo
   el sitio sin afectar estructura, tamaños ni funcionamiento.
   ========================================================== */

:root{
  --cr-blue:#002b7f;
  --cr-blue-2:#0057b8;
  --cr-blue-dark:#061b46;
  --cr-blue-soft:#eaf2ff;
  --cr-red:#ce1126;
  --cr-red-dark:#9f0d1d;
  --cr-red-soft:#fff0f2;
  --cr-white:#ffffff;
  --cr-ink:#101b33;
  --cr-muted:#60708a;
  --cr-line:#d8e2f0;
  --cr-bg:#f5f8fc;
  --brand:var(--cr-blue)!important;
  --brand-dark:var(--cr-blue-dark)!important;
  --brand-soft:var(--cr-blue-soft)!important;
  --soft:var(--cr-blue-soft)!important;
  --mm-bg:var(--cr-bg)!important;
  --mm-card:#fff!important;
  --mm-ink:var(--cr-ink)!important;
  --mm-muted:var(--cr-muted)!important;
  --mm-line:var(--cr-line)!important;
  --mm-brand:var(--cr-blue)!important;
  --mm-brand-2:var(--cr-red)!important;
  --mm-brand-dark:var(--cr-blue-dark)!important;
  --mm-brand-soft:var(--cr-blue-soft)!important;
}

html,body{
  color:var(--cr-ink)!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(0,87,184,.12),transparent 340px),
    radial-gradient(circle at 96% 10%,rgba(206,17,38,.08),transparent 300px),
    linear-gradient(180deg,#fff 0%,#f4f8fd 28%,#f8fafc 100%)!important;
}

a{color:var(--cr-blue)!important;}
a:hover{color:var(--cr-red)!important;}

/* Encabezado y navegación */
.topbar{
  background:linear-gradient(100deg,#041329 0%,#06245a 62%,#091a3a 100%)!important;
  border-bottom:4px solid var(--cr-red)!important;
  box-shadow:0 12px 30px rgba(3,18,48,.25)!important;
}
.brand,.brand span{color:#fff!important;}
.brand-mark{
  color:#fff!important;
  background:linear-gradient(145deg,var(--cr-red),#ef3340)!important;
  border:2px solid rgba(255,255,255,.92)!important;
  box-shadow:0 9px 22px rgba(206,17,38,.32)!important;
}
.tournament-chip{
  color:var(--cr-blue-dark)!important;
  background:#fff!important;
  border:1px solid #b8cff0!important;
  box-shadow:0 7px 18px rgba(0,43,127,.16)!important;
}
.main-nav .nav-link{color:#f7faff!important;}
.main-nav .nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(255,255,255,.25)!important;
}
.main-nav .nav-admin{
  color:#fff!important;
  background:rgba(0,87,184,.42)!important;
  border-color:#6aa9ed!important;
}
.main-nav .nav-login{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-red),#ee3348)!important;
  border-color:#ff8794!important;
  box-shadow:0 12px 28px rgba(206,17,38,.28)!important;
}
.main-nav .nav-login:hover{background:linear-gradient(135deg,#e01832,var(--cr-red-dark))!important;}
.main-nav .nav-logout{
  color:#fff!important;
  background:rgba(206,17,38,.24)!important;
  border-color:rgba(255,135,148,.55)!important;
}

/* Botón móvil */
.mobile-menu-button{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-red),#ed3146)!important;
  border-color:#ff8794!important;
  box-shadow:0 12px 26px rgba(206,17,38,.25)!important;
}
@media(max-width:760px){
  .topbar{background:linear-gradient(110deg,#041329,#06245a)!important;border-bottom-color:var(--cr-red)!important;}
  .main-nav{background:#fff!important;border-top:3px solid var(--cr-red)!important;}
  .main-nav .nav-link{color:var(--cr-blue-dark)!important;background:#f5f8fc!important;border-color:#dce6f3!important;}
  .main-nav .nav-link:hover{color:var(--cr-red)!important;background:var(--cr-blue-soft)!important;}
  .main-nav .nav-admin{color:#fff!important;background:var(--cr-blue)!important;}
  .main-nav .nav-login{color:#fff!important;background:var(--cr-red)!important;}
}

/* Contenedores, tarjetas y formularios */
.container{color:var(--cr-ink)!important;}
.card,.auth-card,.stats-chart-card,.match-card,.admin-match-card,.podium-card{
  background:#fff!important;
  border-color:var(--cr-line)!important;
  box-shadow:0 18px 46px rgba(6,27,70,.09)!important;
}
.card h1,.card h2,.card h3,h1,h2,h3{color:var(--cr-blue-dark);}
.muted,.small.muted{color:var(--cr-muted)!important;}
input,select,textarea{
  color:var(--cr-ink)!important;
  background:#fff!important;
  border-color:#cbd8ea!important;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--cr-blue-2)!important;
  box-shadow:0 0 0 4px rgba(0,87,184,.15)!important;
}

/* Acciones generales */
.btn,input[type="submit"].btn,button.btn,.home-btn.primary{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-blue-2),var(--cr-blue))!important;
  border-color:var(--cr-blue)!important;
  box-shadow:0 10px 24px rgba(0,43,127,.20)!important;
}
.btn:hover,input[type="submit"].btn:hover,button.btn:hover{color:#fff!important;background:linear-gradient(135deg,#0067d6,var(--cr-blue-dark))!important;}
.btn.secondary,.btn-dark{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-red),var(--cr-red-dark))!important;
}
.btn.light,.btn-light{
  color:var(--cr-blue)!important;
  background:var(--cr-blue-soft)!important;
  border-color:#b8cff0!important;
}
.btn.danger{color:#fff!important;background:linear-gradient(135deg,#b3091d,#780817)!important;}

/* Etiquetas, estados y tablas */
.badge,.winner-summary,.saved-label{
  color:var(--cr-blue)!important;
  background:var(--cr-blue-soft)!important;
  border-color:#b8cff0!important;
}
.table th,table th{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-blue-dark),var(--cr-blue))!important;
  border-color:rgba(255,255,255,.13)!important;
}
.table td,table td{border-color:var(--cr-line)!important;}
.table tbody tr:nth-child(even),table tbody tr:nth-child(even){background:#f7faff;}
.table tbody tr:hover,table tbody tr:hover{background:#edf4ff!important;}

/* Partidos, puntuación, premios y panel */
.match-card{border-left:5px solid var(--cr-blue)!important;}
.match-card.match-saved{border-left-color:var(--cr-red)!important;}
.match-card.match-saved:before{background:var(--cr-blue)!important;color:#fff!important;}
.score-separator,.prize-grid strong,.stat,.admin-player-detail td:nth-child(4){color:var(--cr-blue)!important;}
.match-card .scorebox input[type="submit"].btn,.match-card .scorebox .btn-save-score{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-blue-2),var(--cr-blue))!important;
  box-shadow:0 12px 28px rgba(0,43,127,.22)!important;
}
.rule-score .rule-points,.rule-points{color:#fff!important;background:var(--cr-blue)!important;}
.ticker-card{
  color:#fff!important;
  background:linear-gradient(105deg,var(--cr-blue-dark),var(--cr-blue) 70%,var(--cr-red))!important;
}
.ticker-label{color:#fff!important;border-bottom-color:rgba(255,255,255,.22)!important;}
.admin-match-card{border-left-color:var(--cr-red)!important;}
.winners-panel{background:#f5f8ff!important;border-color:#bfd1ec!important;}
.winner-score{color:var(--cr-blue)!important;}
.live-pill{color:#fff!important;background:var(--cr-red)!important;border-color:#ff9aa4!important;}

/* Mensajes */
.msg.ok{color:#075f35!important;background:#ebfff4!important;border-color:#91ddb7!important;}
.msg.error{color:#8b0a19!important;background:var(--cr-red-soft)!important;border-color:#f1a4ad!important;}
.payment-warning-danger{background:var(--cr-red)!important;border-color:#ffb1ba!important;}

/* Portada */
.home-image-frame{border-color:rgba(206,17,38,.40)!important;box-shadow:0 34px 90px rgba(6,27,70,.27)!important;}
.home-entry-login{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-blue-2),var(--cr-blue))!important;
  border-color:#8fc0ff!important;
}
.home-entry-register{
  color:#fff!important;
  background:linear-gradient(135deg,var(--cr-red),var(--cr-red-dark))!important;
  border-color:#ff9aa4!important;
}

/* Pie */
.footer{color:#536783!important;border-top:1px solid #dbe4f1;padding-top:18px;}

/* Administración de partidos y equipos */
.page-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px;}
.page-heading-row h1,.page-heading-row p{margin-top:0;}
.admin-create-card{max-width:980px;}
.read-only-value{min-height:46px;display:flex;align-items:center;padding:10px 13px;border:1px solid #b8cbea;border-radius:12px;background:#eef5ff;color:var(--cr-blue-dark);font-weight:900;}
.team-admin-list{display:grid;gap:13px;margin-top:16px;}
.team-admin-row{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(240px,1.35fr) 100px auto;gap:12px;align-items:end;padding:16px;border:1px solid #cddbf0;border-left:5px solid var(--cr-blue);border-radius:16px;background:#fff;}
.team-admin-action{padding-bottom:1px;}
@media(max-width:820px){
  .page-heading-row{display:block;}
  .page-heading-row>.actions,.page-heading-row>.btn{margin-top:14px;}
  .team-admin-row{grid-template-columns:1fr;}
}
