/* sailing-manager: results-public.css */

/* ── Variables ─────────────────────────────────── */
.sm-results {
    --sm-primary: #0073aa;
    --sm-primary-dark: #005a87;
    --sm-success: #46b450;
    --sm-warning: #f0b849;
    --sm-danger: #dc3232;
    --sm-border: #ddd;
    --sm-bg-alt: #f9f9f9;
    --sm-text: #333;
    --sm-text-muted: #999;
    --sm-font-size: 13px;
    --sm-cell-padding: 6px 8px;
}

/* ── Contenedor ────────────────────────────────── */
.sm-results {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;
    font-size: var(--sm-font-size);
    color: var(--sm-text);
    margin: 1em 0;
}

.sm-results__table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.sm-results__loading,
.sm-results__not-published {
    padding: 2em;
    text-align: center;
    color: var(--sm-text-muted);
}

.sm-error {
    color: var(--sm-danger);
    padding: 1em;
    background: #fef1f1;
    border-left: 4px solid var(--sm-danger);
}

/* ── Tabla ──────────────────────────────────────── */
.sm-results__table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    background: #fff;
}

.sm-results__table th,
.sm-results__table td {
    padding: var(--sm-cell-padding);
    border: 1px solid var(--sm-border);
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
}

.sm-results__table th {
    background: var(--sm-primary);
    color: #fff;
    font-weight: 600;
    position: sticky;
    top: 0;
    z-index: 2;
}

.sm-results__table th.sm-results__header--race {
    min-width: 50px;
}

/* ── Columnas fijas ────────────────────────────── */
.sm-results__table .sm-results__cell--rank,
.sm-results__table .sm-results__header--rank {
    position: sticky;
    left: 0;
    z-index: 3;
    background: var(--sm-primary);
    min-width: 40px;
}

.sm-results__table td.sm-results__cell--rank {
    background: #fff;
    font-weight: 700;
}

.sm-results__table .sm-results__cell--sail,
.sm-results__table .sm-results__header--sail {
    position: sticky;
    left: 40px;
    z-index: 3;
    text-align: left;
}

.sm-results__table td.sm-results__cell--sail {
    background: #fff;
    font-weight: 600;
}

/* ── Filas alternas ────────────────────────────── */
.sm-results__table tbody tr:nth-child(even) td {
    background-color: var(--sm-bg-alt);
}

.sm-results__table tbody tr:nth-child(even) td.sm-results__cell--rank,
.sm-results__table tbody tr:nth-child(even) td.sm-results__cell--sail {
    background-color: var(--sm-bg-alt);
}

.sm-results__table tbody tr:hover td {
    background-color: #eaf3fa;
}

/* ── Celdas de carrera ─────────────────────────── */
.sm-results__cell--code {
    font-weight: 700;
    color: var(--sm-danger);
}

.sm-results__cell--discard {
    text-decoration: line-through;
    color: var(--sm-text-muted);
}

.sm-results__cell--discard.sm-results__cell--code {
    color: var(--sm-text-muted);
}

/* ── Totales ───────────────────────────────────── */
.sm-results__cell--total {
    font-weight: 600;
    background-color: #f5f5f5 !important;
}

.sm-results__cell--net {
    font-weight: 700;
    color: var(--sm-primary-dark);
    background-color: #eaf3fa !important;
}

/* ── Podio ─────────────────────────────────────── */
.sm-results__table tbody tr:nth-child(1) td.sm-results__cell--rank { color: #c9a600; }
.sm-results__table tbody tr:nth-child(2) td.sm-results__cell--rank { color: #8a8a8a; }
.sm-results__table tbody tr:nth-child(3) td.sm-results__cell--rank { color: #cd7f32; }

/* ── Responsive ────────────────────────────────── */
@media (max-width: 768px) {
    .sm-results {
        --sm-font-size: 11px;
        --sm-cell-padding: 4px 5px;
    }
}
