.elementor-10376 .elementor-element.elementor-element-23cb61c9{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-10376 .elementor-element.elementor-element-9916850{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-10376 .elementor-element.elementor-element-d712273{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10376 .elementor-element.elementor-element-d712273.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-10376 .elementor-element.elementor-element-d712273{--width:98.246%;}}/* Start custom CSS for shortcode, class: .elementor-element-bc72c01 *//* Contenedor y Tabla */
.tabla-contenedor { margin: 20px 0; overflow-x: auto; }
.tabla-moderna { width: 100%; border-collapse: collapse; font-family: 'Inter', sans-serif; background: white; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.08); }

.tabla-moderna thead { background: #1a73e8; color: white; }
.tabla-moderna th { padding: 20px; text-align: left; font-weight: 600; text-transform: uppercase; font-size: 12px; }
.tabla-moderna td { padding: 18px; border-bottom: 1px solid #f0f0f0; vertical-align: middle; }

/* Estilos de texto y etiquetas */
.inst-nombre { color: #1a73e8; font-weight: bold; }
.nivel-tag { color: #777; font-size: 11px; }
.area-tag { background: #f1f3f4; padding: 3px 8px; border-radius: 4px; font-size: 11px; color: #5f6368; display: inline-block; margin-top: 5px; }

/* Botones */
.botones-grupo { display: flex; gap: 5px; }
.btn-link { padding: 8px 12px; border-radius: 6px; text-decoration: none; font-size: 12px; font-weight: 600; transition: 0.2s; text-align: center; }
.btn-link.main { background: #1a73e8; color: white !important; }
.btn-link.sub { background: #e8f0fe; color: #1a73e8 !important; }
.btn-link:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0,0,0,0.15); }

/* RESPONSIVE (Móviles) */
@media (max-width: 768px) {
    .tabla-moderna thead { display: none; }
    .tabla-moderna tr { display: block; margin-bottom: 20px; border: 1px solid #eee; border-radius: 12px; padding: 10px; }
    .tabla-moderna td { display: block; text-align: right; padding: 10px 15px; border-bottom: 1px solid #fafafa; }
    .tabla-moderna td::before { content: attr(data-label); float: left; font-weight: bold; color: #1a73e8; text-transform: uppercase; font-size: 10px; }
    .botones-grupo { justify-content: flex-end; margin-top: 10px; }
}

.contenedor-interactivo {
    background: #ffffff;
    padding: 20px;
    border-radius: 15px;
    box-shadow: 0 5px 25px rgba(0,0,0,0.05);
}

.barra-filtros {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
    flex-wrap: wrap;
    align-items: flex-end;
}

.grupo-filtro {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 180px;
}

.grupo-filtro label {
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 5px;
    color: #555;
    text-transform: uppercase;
}

.barra-filtros input, .barra-filtros select {
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 14px;
    outline: none;
}

.btn-limpiar {
    padding: 12px 20px;
    background: #f0f2f5;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
    transition: 0.3s;
}

.btn-limpiar:hover { background: #e4e6e9; }

.tag-disc {
    background: #e7f3ff;
    color: #1877f2;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 11px;
}

/* Estilo de tabla mejorado */
.tabla-moderna { width: 100%; border-collapse: collapse; }
.tabla-moderna th { background: #f8f9fa; color: #333; padding: 15px; border-bottom: 2px solid #eee; text-align: left; }
.tabla-moderna td { padding: 15px; border-bottom: 1px solid #f0f0f0; }
.btn-tabla { background: #1877f2; color: white !important; padding: 8px 15px; border-radius: 6px; text-decoration: none; font-size: 13px; display: inline-block; }/* End custom CSS */