/* ============================================ */
/* Gestión de Usuarios > Sesiones                */
/* (usa Admin_toolbar, Admin_table-card, Admin_chip de css/admin.css) */
/* ============================================ */

.Sesiones_kpi {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 3px 14px rgba(0,0,0,0.06);
    padding: 0.85rem 1rem;
    text-align: center;
}
.Sesiones_kpi-num {
    font-size: 1.6rem;
    font-weight: 700;
    color: #1e4a6b;
    line-height: 1.1;
}
.Sesiones_kpi-label {
    font-size: 0.78rem;
    color: #6c757d;
}
.Sesiones_col-check {
    width: 1%;
}
/* Fila de la sesión propia: tinte celeste Connex sobre el fondo de la tabla (sirve en claro y oscuro) */
.table > tbody > tr.Sesiones_fila-propia > * {
    --bs-table-bg-state: rgba(0, 159, 227, 0.12);
}
.table > tbody > tr.Sesiones_fila-propia > *:first-child {
    box-shadow: inset 3px 0 0 #009fe3, inset 0 0 0 9999px var(--bs-table-bg-state);
}
.Sesiones_badge-propia {
    background: #009fe3;
    color: #fff;
}
.Sesiones_ip-cambio {
    color: #b45309;
}

#Usuario_Sesiones_tabs .nav-link {
    cursor: pointer;
}
#Usuario_Sesiones_detalle_body th {
    width: 1%;
}

[data-bs-theme="dark"] .Sesiones_kpi {
    background-color: #1a1f27;
    box-shadow: 0 3px 14px rgba(0,0,0,0.3);
}
[data-bs-theme="dark"] .Sesiones_kpi-num {
    color: #8cc4ec;
}
[data-bs-theme="dark"] .table > tbody > tr.Sesiones_fila-propia > * {
    --bs-table-bg-state: rgba(0, 159, 227, 0.22);
}
[data-bs-theme="dark"] .Sesiones_badge-propia {
    background: #0b84bd;
}
[data-bs-theme="dark"] .Sesiones_ip-cambio {
    color: #fbbf24;
}
[data-bs-theme="dark"] .Sesiones_kpi-label {
    color: #9aa4af;
}

/* Presencia: cada página en su línea, puede hacer salto de línea (no estira la tabla) */
.Sesiones_col-presencia { min-width: 11rem; }
.Sesiones_presencia-linea { line-height: 1.35; margin-bottom: 2px; }
.Sesiones_presencia-linea .badge { white-space: nowrap; }
/* Botones de acción: en fila y, si no entran, debajo (sin desbordar) */
.Sesiones_acciones { display: inline-flex; flex-wrap: wrap; gap: 4px; justify-content: flex-end; }

@media (max-width: 576px) {
    .Sesiones_kpi-num { font-size: 1.25rem; }
    .Sesiones_kpi-label { font-size: 0.68rem; }
    #Usuario_Sesiones_section .table { font-size: 0.85rem; }
    #Usuario_Sesiones_section .table td, #Usuario_Sesiones_section .table th { padding: 0.4rem 0.35rem; }
    .Sesiones_col-presencia { min-width: 9rem; }
    .Sesiones_acciones { flex-direction: column; }
}
