/* =========================================
   MÓDULO USUARIOS
   Solo layout específico del módulo.
   Botones, switches, pills y modales son globales.
========================================= */

/* Tabla: usuario | rol | estado | acciones */
.usuarios-table .ui-div-row,
.ui-div-table-usuarios .ui-div-row {
    grid-template-columns: 2fr 1.4fr 1fr 1fr;
}

/* Modal más estrecho */
.usuarios-modal-backdrop .ui-modal {
    max-width: 640px;
}

/* Select inline de rol — ocupa toda la celda */
.ui-select-inline {
    width: 100%;
    max-width: 160px;
    height: 32px;
    padding: 0 8px;
    font-size: 0.82rem;
    border: 1px solid var(--border);
    border-radius: var(--radius-sm, 6px);
    background: var(--surface-2, var(--surface));
    color: var(--text);
    cursor: pointer;
    transition: border-color 0.15s;
}
.ui-select-inline:focus {
    outline: none;
    border-color: var(--accent);
}

/* Pills de rol */
.ui-status-pill.is-administrador { background: rgba(124,58,237,.12); color: #7c3aed; }
.ui-status-pill.is-asistente     { background: rgba(13,148,136,.12); color: #0d9488; }
.ui-status-pill.is-coordinador   { background: rgba(37,99,235,.12);  color: #2563eb; }
.ui-status-pill.is-red           { background: rgba(100,116,139,.12);color: #64748b; }
.ui-status-pill.is-master        { background: rgba(202,138,4,.12);  color: #ca8a04; }

/* Fila de reset de contraseña en modal edición */
.usuarios-reset-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.usuarios-reset-row .ui-help {
    flex: 1;
    margin: 0;
    color: var(--text-muted);
    font-size: 13px;
}

/* Campo requerido en modal */
.ui-required {
    color: var(--red, #dc2626);
    font-size: 0.75em;
    margin-left: 2px;
}

/* Responsive */
@media (max-width: 1024px) {
    .usuarios-table .ui-div-row,
    .ui-div-table-usuarios .ui-div-row {
        grid-template-columns: 1.6fr 1.2fr 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .usuarios-table .ui-div-row,
    .ui-div-table-usuarios .ui-div-row {
        grid-template-columns: 1fr;
    }
    .ui-select-inline {
        max-width: 100%;
    }
}
