﻿.tdefa-modal {
    display:none;
    position:fixed;
    z-index:9999;
    inset:0;
    width:100%;
    height:100%;
    padding:16px;
    background-color:rgba(0,0,0,0.55);
    overflow-y:auto;
}

.tdefa-modal-content {
    margin:auto;
    background:#fff;
    padding:18px 20px;
    border-radius:10px;
    max-width:480px;
    width:100%;
    box-shadow:0 12px 32px rgba(0,0,0,0.25);
    position:relative;
}

.tdefa-modal-content.modal-wide {
    max-width:960px;
}

.tdefa-close {
    position:absolute;
    top:10px;
    right:14px;
    font-size:22px;
    font-weight:bold;
    line-height:1;
    cursor:pointer;
    color:#6b6b6b;
}

.tdefa-close:hover {
    color:#f04444;
}

.lista-torneos {
    list-style:none;
    padding:0;
    margin:0;
}

.lista-torneos li {
    border-bottom:1px solid #e3e3e3;
}

.lista-torneos li a {
    display:block;
    padding:12px 10px;
    text-decoration:none;
    color:#002458;
    font-weight:600;
}

.lista-torneos li a:hover {
    background:#f2f5ff;
}

.table-responsive {
    width:100%;
    overflow-x:auto;
}

.table-responsive table {
    width:100%;
    max-width:100%;
    border-collapse:collapse;
    font-size:0.95rem;
    table-layout:auto;
}

.table-responsive thead th {
    background-color:#002458;
    color:#fff;
    font-weight:600;
    font-size:0.72rem;
    padding:8px 6px;
    text-transform:uppercase;
    letter-spacing:0.04em;
    position:sticky;
    word-break:break-word;
    top:0;
    z-index:2;
    white-space:normal;
}

.table-responsive tbody td {
    border-top:1px solid #d1d6e0;
    padding:8px 6px;
    text-align:center;
    white-space:normal;
    word-break:break-word;
    line-height:1.35;
}

.table-responsive tbody tr:nth-child(even) {
    background-color:#f9fbff;
}

.table-responsive tbody tr:hover {
    background-color:#eef3ff;
}

.tdefa-results-table {
    width:100%;
    table-layout:fixed;
    border-collapse:collapse;
}

.tdefa-results-table th,
.tdefa-results-table td {
    padding:6px 4px;
    font-size:0.88rem;
    word-break:break-word;
    text-align:center;
}

.tdefa-results-table th:first-child,
.tdefa-results-table td:first-child,
.tdefa-results-table th:nth-child(3),
.tdefa-results-table td:nth-child(3) {
    text-align:left;
}

.tdefa-results-table th:nth-child(2),
.tdefa-results-table th:nth-child(4),
.tdefa-results-table th:nth-child(5),
.tdefa-results-table td:nth-child(2),
.tdefa-results-table td:nth-child(4),
.tdefa-results-table td:nth-child(5) {
    width:3.2ch;
    min-width:3.2ch;
    max-width:3.6ch;
    white-space:nowrap;
}
@media (max-width:640px) {
    .tdefa-modal-content {
        padding:14px;
    }

    .tdefa-results-table th,
    .tdefa-results-table td {
        font-size:0.54rem;
        padding:5px 0px;
    }

    .tdefa-results-table th:nth-child(2),
    .tdefa-results-table th:nth-child(4),
    .tdefa-results-table th:nth-child(5),
    .tdefa-results-table td:nth-child(2),
    .tdefa-results-table td:nth-child(4),
    .tdefa-results-table td:nth-child(5) {
        width:2ch;
        min-width:2ch;
        max-width:2.2ch;
    }

    .tdefa-match-modal .tdefa-match-controls {
        flex-direction:column;
        align-items:stretch;
        gap:8px;
        padding:8px;
    }

    .tdefa-match-modal .tdefa-match-select-label {
        font-size:0.74rem;
    }

    .tdefa-match-modal .tdefa-match-select {
        flex:1 1 auto;
        min-width:0;
        font-size:0.74rem;
        padding:6px 8px;
    }

    .tdefa-match-modal .tdefa-match-close {
        align-self:flex-end;
        font-size:0.8rem;
        padding:6px 10px;
    }

    .tdefa-match-modal .table-responsive table {
        font-size:0.7rem;
    }

    .tdefa-match-modal .table-responsive thead th,
    .tdefa-match-modal .table-responsive tbody td {
        padding:5px 4px;
    }
}
.tdefa-standings {
    display:flex;
    flex-direction:column;
    gap:24px;
}

.tdefa-standings-zone {
    background-color:#f7f9ff;
    border:1px solid #d1d6e0;
    border-radius:10px;
    overflow:hidden;
}

.tdefa-zone-title {
    margin:0;
    padding:12px 16px;
    background-color:#002458;
    color:#fff;
    font-size:1.05rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:0.05em;
}

.tdefa-standings-zone .table-responsive {
    border-top:1px solid #d1d6e0;
}

.tdefa-team-link {
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:none;
    border:0;
    padding:0;
    color:#002458;
    font-weight:600;
    cursor:pointer;
    text-decoration:none;
    transition:color 0.2s ease;
}

.tdefa-team-link:hover,
.tdefa-team-link:focus {
    color:#0b4ad0;
    text-decoration:underline;
    outline:none;
}

.tdefa-results-grouped {
    display:flex;
    flex-direction:column;
    gap:28px;
}

.tdefa-results-section {
    display:flex;
    flex-direction:column;
    gap:12px;
}

.tdefa-results-date {
    margin:0;
    font-size:1.1rem;
    font-weight:700;
    color:#002458;
}

.tdefa-results-list {
    display:flex;
    flex-direction:column;
    gap:10px;
}

.tdefa-result-row {
    display:grid;
    grid-template-columns:1fr max-content 1fr auto;
    align-items:center;
    gap:14px;
    padding:12px 18px;
    border:1px solid #d1d6e0;
    border-radius:10px;
    background-color:#f9fbff;
    cursor:pointer;
    transition:background-color 0.2s ease, border-color 0.2s ease;
}

.tdefa-result-row:hover,
.tdefa-result-row:focus {
    background-color:#eef3ff;
    border-color:#b8c4dc;
}

.tdefa-result-team {
    display:flex;
    align-items:center;
}

.tdefa-result-score {
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:700;
    font-size:1.1rem;
    color:#002458;
}

.tdefa-result-score-divider {
    font-size:0.95rem;
    color:#4a5c80;
}

.tdefa-result-meta {
    justify-self:end;
    font-size:0.75rem;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:#4a5c80;
}
@media (max-width:768px) {
    .tdefa-result-row {
        grid-template-columns:1fr 1fr;
        grid-template-rows:auto auto;
        gap:8px 12px;
    }
    .tdefa-result-team--local,
    .tdefa-result-team--visitante {
        justify-self:stretch;
    }
    .tdefa-result-score {
        grid-column:1 / span 2;
        justify-content:center;
    }
    .tdefa-result-meta {
        grid-column:1 / span 2;
        justify-self:center;
    }
}

@media (max-width:540px) {
    .tdefa-zone-title {
        font-size:0.9rem;
        padding:10px 12px;
    }
    .tdefa-results-date {
        font-size:0.95rem;
    }
    .tdefa-result-row {
        padding:10px 12px;
    }
    .tdefa-team-link {
        font-size:0.9rem;
    }
}





