.cal{max-width:680px;margin:24px auto 8px;padding:0 20px}.cal .status{display:none;text-align:center;color:var(--tinta);margin:40px auto;max-width:40ch;line-height:1.6}.cal .status .retry{margin-left:6px;border:1px solid var(--navy);background:transparent;color:var(--navy);border-radius:6px;padding:2px 10px;font:inherit;cursor:pointer}.cal .status .retry:hover{background:var(--navy);color:var(--crema)}.cal[data-state=loading] .status.loading,.cal[data-state=error] .status.error,.cal[data-state=empty] .status.empty{display:block}.cal:not([data-state=ready]) .legend,.cal:not([data-state=ready]) .cal-nav,.cal:not([data-state=ready]) .months{display:none}.cal .legend{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;margin:0 0 24px;padding:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--tinta)}.cal .legend li{display:flex;align-items:center;gap:7px}.cal .dot{width:9px;height:9px;border-radius:50%;background:var(--tinta);flex:0 0 auto}.cal .dot.liga{background:var(--rojo)}.cal .dot.champions{background:var(--navy)}.cal .dot.mundial{background:#0e8388}.cal .dot.copa{background:#d4a017}.cal .dot.amistoso{background:#2e7d4f}.cal .dot.otro{background:#7a6a55}.cal .cal-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 0 18px}.cal .cal-nav .month-label{margin:0;min-width:9.5em;text-align:center;text-transform:capitalize;letter-spacing:.04em;font-size:1.5rem;color:var(--navy)}.cal .navbtn{width:40px;height:40px;flex:0 0 auto;border-radius:50%;border:2px solid var(--navy);background:transparent;color:var(--navy);font-size:1.15rem;font-weight:700;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s,opacity .15s}.cal .navbtn:hover:not(:disabled){background:var(--navy);color:var(--crema)}.cal .navbtn:disabled{opacity:.3;cursor:default}.cal .month{margin:0 0 40px}.cal .grid{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 16px #0b1b3f1a}.cal .weekdays,.cal .days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal .days{grid-auto-rows:46px;align-content:start}.cal .weekdays{background:var(--navy)}.cal .weekdays span{text-align:center;padding:8px 0;color:var(--crema);font-weight:700;font-size:.72rem;letter-spacing:.05em}.cal .cell{position:relative;padding:5px 6px;border-top:1px solid rgba(11,27,63,.08);border-left:1px solid rgba(11,27,63,.08)}.cal .cell:nth-child(7n+1){border-left:none}.cal .cell.empty{background:transparent;border-color:transparent}.cal .cell .n{font-size:.82rem;font-variant-numeric:tabular-nums;color:var(--tinta)}.cal .cell.has{cursor:pointer}.cal .cell.has:hover{background:#ce35240f}.cal .cell.has:focus-visible{outline:2px solid var(--rojo);outline-offset:-2px}.cal .cell.has .n{font-weight:700;color:var(--navy)}.cal .cell.selected{background:#0b1b3f1a;box-shadow:inset 0 0 0 2px var(--navy)}.cal .cell.today{background:#ce352414}.cal .cell.today .n{background:var(--rojo);color:#fff;border-radius:50%;width:1.5em;height:1.5em;display:inline-flex;align-items:center;justify-content:center}.cal .cell .dots{position:absolute;left:6px;bottom:6px;display:flex;flex-wrap:wrap;gap:3px}.cal .agenda{list-style:none;margin:14px 0 0;padding:0}.cal .ev{display:flex;align-items:stretch;gap:12px;padding:10px 4px;border-bottom:1px dashed rgba(11,27,63,.22)}.cal .ev:last-child{border-bottom:none}.cal .agenda.filtered .ev{display:none}.cal .agenda.filtered .ev.sel{display:flex}.cal .agenda.filtered .ev.sel{border-bottom:none}.cal .noev{text-align:center;color:var(--tinta);opacity:.7;margin:18px 0 0;font-size:.95rem}.cal .ev .rail{width:4px;border-radius:4px;background:var(--tinta);flex:0 0 auto}.cal .ev .rail.liga{background:var(--rojo)}.cal .ev .rail.champions{background:var(--navy)}.cal .ev .rail.mundial{background:#0e8388}.cal .ev .rail.copa{background:#d4a017}.cal .ev .rail.amistoso{background:#2e7d4f}.cal .ev .rail.otro{background:#7a6a55}.cal .ev .when{flex:0 0 6.5em;display:flex;flex-direction:column;justify-content:center}.cal .ev .when .d{font-weight:700;font-size:.9rem;text-transform:capitalize;color:var(--navy)}.cal .ev .when .t{font-size:.78rem;color:var(--tinta);font-variant-numeric:tabular-nums}.cal .ev .what{display:flex;flex-direction:column;justify-content:center;min-width:0}.cal .ev .what .title{font-weight:700;font-size:1.02rem;line-height:1.2}.cal .ev .what .sub2{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;opacity:.65}@media(max-width:560px){.cal .days{grid-auto-rows:40px}.cal .cell .n{font-size:.78rem}}
