:root { --bg:#0f172a; --card:#111827; --text:#e5e7eb; --muted:#9ca3af; --accent:#22c55e; --table:#1f2937; }
* { box-sizing: border-box; }
body { margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial; background:#0b1220; color:var(--text); }
a { color:#93c5fd; text-decoration:none; }
a:hover { text-decoration:underline; }

.site-header, .site-footer { padding:16px 20px; background:linear-gradient(90deg,#0b1220,#0f172a); border-bottom:1px solid #1f2937; }
.site-footer { border-top:1px solid #1f2937; border-bottom:none; color:var(--muted); }
.site-header h1 { margin:0 0 8px 0; font-size:22px; }
nav a { margin-right:14px; }

.container { max-width:1100px; margin:24px auto; padding:0 16px; }
.card { background:var(--card); border:1px solid #1f2937; border-radius:14px; padding:20px; box-shadow:0 10px 20px rgba(0,0,0,.25); }

.filters { display:flex; gap:12px; align-items:center; margin-bottom:16px; flex-wrap:wrap; }
input[type="date"], input[type="text"], input[type="password"], input[type="number"], select { padding:6px 8px; border-radius:8px; border:1px solid #374151; background:#0b1220; color:var(--text); }
button, .btn-secondary { padding:8px 12px; border-radius:10px; border:1px solid #374151; background:#0b1220; color:var(--text); cursor:pointer; }
.btn-secondary { display:inline-block; }

.table { width:100%; border-collapse:collapse; background:var(--table); border-radius:10px; overflow:hidden; }
.table th, .table td { padding:10px 12px; border-bottom:1px solid #374151; vertical-align:top; }
.table thead th { background:#0f172a; font-weight:600; }
.table .score, .table .num { text-align:right; }
.note { color:var(--muted); margin-top:8px; font-size:14px; }

/* Celle centrate ovunque nella tabella partite */
.table-centered th,
.table-centered td {
  text-align: center;
  vertical-align: middle;
}

/* Blocchi “una riga per nome” dentro le celle */
.list-col {
  display: block;
  line-height: 1.35;
  padding: 2px 0;
}

/* Evidenzia la squadra vincente (tono diverso) */
.team-col.winner {
  background: rgba(34, 197, 94, 0.12); /* verde tenue */
  box-shadow: inset 0 0 0 1px rgba(34,197,94,0.18);
}
/* Spaziatura verticale tra le righe (una “card” per partita) */
.table.table-centered {
  border-collapse: separate;      /* per poter usare border-spacing */
  border-spacing: 0 8px;          /* gap verticale tra le righe */
  background: transparent;        /* evitiamo il fondo unico della tabella */
  overflow: visible;              /* lascia respirare le righe distanziate */
}

/* Celle: bordo sottile ovunque (anche per chi perde) e fondo scuro per ogni “card” */
.table.table-centered th,
.table.table-centered td {
  border: 1px solid #374151;      /* bordo sottile */
  background: var(--table);       /* fondo per ogni cella/“card” */
}

/* Celle centrate e allineate (già definito ma ribadiamo per specificità) */
.table.table-centered th,
.table.table-centered td {
  text-align: center;
  vertical-align: middle;
}

/* Vincente: tonalità diversa ma con bordo visibile */
.table.table-centered .team-col.winner {
  background: rgba(34, 197, 94, 0.12);
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.18);
}

/* Un nome per riga in giocatori/marcatori */
.table.table-centered .list-col {
  display: block;
  line-height: 1.35;
  padding: 2px 0;
}

/*-------------------------------------*/


/* Colonne Gol: più grandi e in grassetto */
.table.table-centered .goal-cell {
  font-size: 1.35rem; /* aumenta a piacere */
  font-weight: 700;
}


/* Tabelle classifiche: celle centrate e bordi sottili */
.table.table-ranking {
  border-collapse: collapse;
  width: 100%;
}
.table.table-ranking th,
.table.table-ranking td {
  text-align: center;
  vertical-align: middle;
  border: 1px solid #374151;  /* bordo sottile */
  background: var(--table);
  padding: 10px 12px;
}

/* Evidenziazione primi 3 classificati (tono + font più grande) */
.table.table-ranking tr.top1 td {
  background: rgba(234, 179, 8, 0.18);   /* oro tenue */
  box-shadow: inset 0 0 0 1px rgba(234,179,8,0.28);
  font-size: 1.2rem;                      /* più grande */
  font-weight: 700;
}
.table.table-ranking tr.top2 td {
  background: rgba(148, 163, 184, 0.18); /* argento tenue */
  box-shadow: inset 0 0 0 1px rgba(148,163,184,0.28);
  font-size: 1.15rem;
  font-weight: 700;
}
.table.table-ranking tr.top3 td {
  background: rgba(205, 127, 50, 0.18);  /* bronzo tenue */
  box-shadow: inset 0 0 0 1px rgba(205,127,50,0.28);
  font-size: 1.12rem;
  font-weight: 700;
}

/* mantieni numeri allineati a destra se preferisci */
/*.table.table-ranking .num { text-align: right; }*/
