/*
 * Tablas y estatus compartidos por todos los sistemas.
 * Se carga desde public/main.php después del CSS de cada módulo, así que gana sobre él.
 * - Tablas: mismo diseño que Certificados > Resultados.
 * - Estatus (filtros y píldoras): mismo diseño que Padrón > Resultados.
 * El padding y el ancho de columnas se quedan en el CSS de cada módulo.
 */

/* ===== Tablas ===== */
:is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) {
    --bs-table-bg: #fff;
    --bs-table-color: #402b65;
    --bs-table-striped-bg: transparent;
    --bs-table-striped-color: #402b65;
    --bs-table-hover-bg: #f0eaf9;
    --bs-table-hover-color: #402b65;
    --bs-table-border-color: #ebe6f4;
    border: 1px solid #5a58e8;
}

:is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) > thead {
    background: none;
}

:is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) > thead > tr > th {
    background: #bdc1f5;
    color: #30365f;
    border: 1px solid #c7b4e9;
    font-size: 15px;
    font-weight: 700;
}

:is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) > tbody > tr > td {
    background: #fff;
    border: 1px solid #ebe6f4;
    color: #402b65;
    font-size: 14px;
    vertical-align: middle;
}

:is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) > tbody > tr:nth-child(even) > td {
    background: #f5f1fb;
}

@media (max-width: 1280px) {
    :is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) > thead > tr > th,
    :is(.resultados-table, .isbn-list__table, .catalogo-tabla, .usuarios-tabla, .usuarios-table, .catalogos-table-scroll .table, #tablaUsuarios) > tbody > tr > td {
        font-size: 13px;
    }
}

/* ===== Colores de estatus (botones de filtro y píldoras de la tabla) ===== */
.estatus-todos         { --estatus-bg: #ffffff; --estatus-fg: #222222; --estatus-border: #4f5bd5; }
.estatus-vigente       { --estatus-bg: #7cf5c8; --estatus-fg: #1f3a33; --estatus-border: #7cf5c8; }
.estatus-revision      { --estatus-bg: #fdefb2; --estatus-fg: #4a4220; --estatus-border: #fdefb2; }
.estatus-proximo       { --estatus-bg: #f9b38a; --estatus-fg: #4a2a17; --estatus-border: #f9b38a; }
.estatus-vencido       { --estatus-bg: #f27a8c; --estatus-fg: #3d1018; --estatus-border: #f27a8c; }
.estatus-renovar       { --estatus-bg: #8e2a5d; --estatus-fg: #ffffff; --estatus-border: #8e2a5d; }
.estatus-tramite-nuevo { --estatus-bg: #c98fd3; --estatus-fg: #ffffff; --estatus-border: #c98fd3; }
.estatus-no-se-renueva { --estatus-bg: #d6d6d6; --estatus-fg: #333333; --estatus-border: #d6d6d6; }
.estatus-otro          { --estatus-bg: #eef0fb; --estatus-fg: #333333; --estatus-border: #c9cdf2; }

/* Certificados e ISBN */
.estatus-solicitado,
.badge-estatus-solicitado { --estatus-bg: #f9b38a; --estatus-fg: #4a2a17; --estatus-border: #f9b38a; }
.estatus-en-proceso,
.badge-estatus-en-proceso { --estatus-bg: #fdefb2; --estatus-fg: #4a4220; --estatus-border: #fdefb2; }
.estatus-disponible,
.badge-estatus-certificado { --estatus-bg: #7cf5c8; --estatus-fg: #1f3a33; --estatus-border: #7cf5c8; }

/* ===== Filtro por estatus ===== */
.resultados-estatus-filtro {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin: 0 0 10px;
    padding: 10px 14px;
}

.resultados-estatus-titulo {
    font-size: 18px;
    font-weight: 700;
    color: #4f5bd5;
}

.resultados-estatus-opciones {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.resultados-estatus-btn {
    min-width: 116px;
    padding: 5px 14px;
    border: 1.5px solid var(--estatus-border);
    border-radius: 10px;
    background: var(--estatus-bg);
    color: var(--estatus-fg);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: transform .12s ease, box-shadow .12s ease, opacity .12s ease;
}

.resultados-estatus-btn:hover {
    color: var(--estatus-fg);
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
}

/* Al elegir un estatus, los demás se atenúan */
.resultados-estatus-opciones.has-selection .resultados-estatus-btn:not(.is-active) {
    opacity: .5;
}

.resultados-estatus-btn.is-active {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--estatus-border);
    opacity: 1;
}

/* ===== Píldoras de estatus dentro de la tabla ===== */
.estatus-pill,
.badge-estatus {
    display: inline-block;
    min-width: 116px;
    padding: 4px 12px;
    border: 0;
    border-radius: 10px;
    background: var(--estatus-bg);
    color: var(--estatus-fg);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: center;
    white-space: nowrap;
}

/* En la tabla, "Tramite Nuevo" va contorneado como en el diseño */
.estatus-pill.estatus-tramite-nuevo {
    background: #ffffff;
    color: #c98fd3;
    border: 1.5px solid #c98fd3;
}
