:root {
    --cxf-red: #e60000; 
    --cxf-red-dark: #b30000;
    --cxf-text: #1a1a1a;
}

html, body { height: 100%; margin: 0; padding: 0; }

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: var(--cxf-text);
    padding: 20px;
    background-image: url('fondo.png');
    background-attachment: fixed; 
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.container {
    max-width: 900px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 80%);
    padding: 15px 20px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    border-top: 6px solid var(--cxf-red);
    backdrop-filter: blur(5px);
}

header { text-align: center; margin-bottom: 20px; }
h1 { color: var(--cxf-red); text-transform: uppercase; letter-spacing: 1px; margin: 0; font-size: 1.6rem; }

.section-title { color: var(--cxf-red); text-align: center; margin-top: 40px; font-size: 1.2rem; text-transform: uppercase; }

table { width: 100%; border-collapse: collapse; table-layout: fixed; }
th { background-color: var(--cxf-red); color: white; font-size: 0.75rem; padding: 10px; text-align: left; text-transform: uppercase; }

/* Anchos de columna */
th:nth-child(1) { width: 100px; } 
th:nth-child(3) { width: 70px; }  

td { padding: 8px 10px; border-bottom: 1px solid #eee; font-size: 0.85rem; vertical-align: middle; }
tr:hover { background-color: rgba(230, 0, 0, 0.03); }

.res-badge {
    display: inline-block;
    background: var(--cxf-red);
    color: white;
    padding: 3px 0;
    border-radius: 3px;
    font-weight: normal; /* Texto nítido */
    width: 55px;
    text-align: center;
    font-size: 0.9rem;
}

.fecha { font-weight: bold; color: #1a1a1a; display: block; font-size: 0.75rem; }
.div-tag { font-size: 0.6rem; color: var(--cxf-red); text-transform: uppercase; display: block; font-weight: bold; }
.cxf { font-weight: bold; color: var(--cxf-red-dark); }
.txt-center { text-align: center; }
.txt-right { text-align: right; }

/* Tarjeta del mejor equipo */
.best-card {
    text-align: center;
    background: linear-gradient(135deg, var(--cxf-red), var(--cxf-red-dark));
    color: white;
    padding: 25px;
    border-radius: 12px;
    margin-top: 15px;
}
.best-card h3 { margin: 0; font-size: 1.5rem; }
.percentage-circle {
    display: inline-block;
    background: white;
    color: var(--cxf-red);
    width: 70px;
    height: 70px;
    line-height: 70px;
    border-radius: 50%;
    font-weight: bold;
    font-size: 1.1rem;
    margin-top: 10px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.table-wrapper { overflow-x: auto; }

@media (max-width: 600px) {
    body { padding: 10px; }
    th, td { padding: 6px 4px; font-size: 0.75rem; }
}