/* Proposta approvata 1: Il campo al centro. Solo il calendario di Partite. */
#partite-main #calendario {
  --fixture-muted: #626269;
  --fixture-line: #deded8;
  background: #fff;
  padding: 30px;
  border-top: 5px solid var(--red);
  min-width: 0;
}
#calendario .calendar-intro {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}
#calendario .calendar-eyebrow {font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--fixture-muted);margin-bottom:9px}
#calendario #calendar-heading {font-size:46px;line-height:1}
#calendario #calendar-heading span {color:var(--red)}
#calendario .calendar-season {font-size:10px;text-align:right;letter-spacing:.08em;flex-shrink:0}
#calendario .calendar-season b {display:block;font-size:20px;letter-spacing:0;margin-top:2px}
#calendario .calendar-controls {display:flex;align-items:center;justify-content:space-between;gap:20px;border-block:1px solid var(--fixture-line);padding:16px 0}
#partite-main #calendario .month-navigation {display:flex;gap:10px;align-items:center;margin:0}
#partite-main #calendario .month-navigation>div {min-width:170px}
#partite-main #calendario .month-navigation label {font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--fixture-muted);margin:0}
#partite-main #calendario .month-navigation select {background:transparent;border:0;font-weight:700;font-size:16px;color:var(--ink);max-width:100%;height:30px;padding:0 22px 0 0}
#partite-main #calendario .month-navigation button {background:#f3f3ef;border:1px solid var(--fixture-line);width:44px;height:44px;font-size:23px;color:var(--ink)}
#partite-main #calendario .month-navigation button:disabled {opacity:.35;cursor:default}
#partite-main #calendario .match-filters {background:#f4f4f0;padding:4px;gap:2px;border:0;margin:0}
#partite-main #calendario .match-filters button {padding:11px 17px;min-height:44px;font-size:12px;font-weight:600}
#partite-main #calendario .match-filters button[aria-pressed=true] {background:var(--ink);color:#fff}
#calendario .calendar-period {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 0 12px}
#calendario #calendar-title {font:700 23px/1.2 BarlowCondensed,Impact,sans-serif;text-transform:uppercase;margin:0}
#calendario #calendar-title span {margin-left:5px}
#calendario .calendar-period>span {font-size:9px;color:var(--fixture-muted);letter-spacing:.04em}
#calendario .fixture-line {display:grid;grid-template-columns:160px minmax(0,1fr);border-bottom:1px solid var(--fixture-line);padding:18px 12px;gap:0 22px;min-height:102px}
#calendario .fixture-line:nth-child(even) {background:#fafaf7}
#calendario .fixture-date {grid-row:1 / span 2;display:flex;gap:13px;align-items:center}
#calendario .fixture-date time {min-width:42px;text-align:center;line-height:1.1}
#calendario .fixture-date time b {font-size:30px;font-weight:700;display:block;font-variant-numeric:tabular-nums}
#calendario .fixture-date time>span {font-size:10px;letter-spacing:.12em}
#calendario .fixture-round {font-size:11px;text-transform:uppercase;font-weight:600;color:var(--fixture-muted);line-height:1.7}
#calendario .fixture-round>span {display:block;font-size:10px}
#calendario .fixture-duel {display:grid;grid-template-columns:minmax(0,1fr) 116px minmax(0,1fr);gap:18px;align-items:center}
#calendario .fixture-team {font-size:18px;font-weight:700;display:flex;align-items:center;gap:10px;line-height:1.2;min-width:0}
#calendario .fixture-team>span {min-width:0;overflow-wrap:anywhere}
#calendario .fixture-team img {object-fit:contain;flex:none;width:27px;height:34px}
#calendario .fixture-home {justify-content:flex-end;text-align:right}
#calendario .fixture-away {justify-content:flex-start}
#calendario .fixture-home img {order:1}
#calendario .fixture-outcome {text-align:center}
#calendario .fixture-score {background:var(--yellow);display:flex;align-items:center;justify-content:center;gap:11px;min-height:46px;padding:4px 9px;line-height:1;white-space:nowrap;font-size:29px;font-variant-numeric:tabular-nums;color:var(--ink)}
#calendario .fixture-score>span {font-size:18px;font-weight:400}
#calendario .fixture-outcome small {display:block;font-size:8px;letter-spacing:.1em;margin-top:5px;color:var(--fixture-muted)}
#calendario .fixture-time {background:#edede7;font-size:25px}
#calendario .fixture-footer {grid-column:2;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:5px;min-height:12px}
#calendario .fixture-footer p {font-size:11px;color:var(--fixture-muted)}
#calendario .fixture-footer a {font-size:11px;font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:6px 0}
#calendario .fixture-footer a span {margin-left:7px;color:var(--red)}
#calendario .fixture-footer a:hover {color:var(--red)}
#partite-main #calendario .match-count {font-size:11px;color:var(--fixture-muted);margin-top:16px}
#partite-main #calendario .calendar-note {font-size:11px;color:var(--fixture-muted);margin-top:8px}
#partite-main #calendario .match-empty {padding:40px 20px;text-align:center;border-bottom:1px solid var(--fixture-line)}
#partite-main #calendario #match-reset {border:0;background:var(--yellow);color:var(--ink);padding:13px 18px;font-weight:600;font-size:13px;margin-top:16px;text-decoration:none}
@media(max-width:1000px) {
  #partite-main #calendario {padding:24px}
  #calendario .fixture-line {grid-template-columns:110px minmax(0,1fr);gap:0 12px}
  #calendario .fixture-date {gap:8px}
  #calendario .fixture-duel {gap:10px;grid-template-columns:minmax(0,1fr) 94px minmax(0,1fr)}
  #calendario .fixture-team {font-size:16px}
  #calendario #calendar-heading {font-size:38px}
}
@media(max-width:700px) {
  #partite-main #calendario {padding:19px 14px}
  #calendario .calendar-intro {align-items:flex-start;margin-bottom:20px;gap:9px}
  #calendario #calendar-heading {font-size:33px}
  #calendario #calendar-heading span {display:block}
  #calendario .calendar-eyebrow {font-size:9px;max-width:180px}
  #calendario .calendar-season {font-size:8px}
  #calendario .calendar-season b {font-size:16px}
  #calendario .calendar-controls {flex-direction:column;align-items:stretch;gap:14px;padding-block:14px}
  #partite-main #calendario .month-navigation {justify-content:space-between;gap:8px}
  #partite-main #calendario .month-navigation>div {min-width:0;flex:1}
  #partite-main #calendario .month-navigation label {font-size:8px}
  #partite-main #calendario .month-navigation select {font-size:14px;width:100%;padding-right:0}
  #partite-main #calendario .month-navigation button {flex:none}
  #partite-main #calendario .match-filters {width:100%;gap:0;flex-wrap:nowrap}
  #partite-main #calendario .match-filters button {flex:1;padding:11px 6px;white-space:nowrap;font-size:11px}
  #calendario .calendar-period {gap:8px;align-items:baseline}
  #calendario #calendar-title {font-size:20px}
  #calendario .calendar-period>span {font-size:8px;max-width:100px;text-align:right}
  #calendario .fixture-line {display:block;padding:16px 0;min-height:0}
  #calendario .fixture-date {flex-direction:row;justify-content:space-between;gap:12px;margin-bottom:13px}
  #calendario .fixture-date time {display:flex;align-items:center;gap:5px;text-align:left}
  #calendario .fixture-date time b {font-size:18px}
  #calendario .fixture-date time>span {font-size:10px}
  #calendario .fixture-round {text-align:right;font-size:9px}
  #calendario .fixture-round>span {display:inline;font-size:9px}
  #calendario .fixture-duel {grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr);gap:8px}
  #calendario .fixture-team {font-size:14px;line-height:1.2}
  #calendario .fixture-team img {display:none}
  #calendario .fixture-home {justify-content:flex-start;text-align:left}
  #calendario .fixture-away {justify-content:flex-end;text-align:right}
  #calendario .fixture-score {font-size:24px;gap:5px;min-height:42px;padding:4px}
  #calendario .fixture-time {font-size:20px}
  #calendario .fixture-outcome small {font-size:7px;letter-spacing:0}
  #calendario .fixture-footer {margin-top:8px;gap:10px}
  #calendario .fixture-footer p {font-size:10px}
  #calendario .fixture-footer a {font-size:10px;flex:none;min-height:30px}
  #partite-main #calendario .calendar-note {font-size:10px}
  #partite-main #calendario .match-empty {padding:25px 6px}
}

/* Cup games share the approved monthly layout, with an explicit competition. */
#calendario .fixture-cup .fixture-competition {display:block;color:var(--red);font-weight:700}
#calendario .fixture-cup .fixture-footer {flex-wrap:wrap}
@media(max-width:700px) {
  #calendario .fixture-cup .fixture-footer p {flex-basis:100%}
}
