/* MiCultura - Documentos de Transparencia */
.mct-transparencia{
    --mct-azul:#005aa7;
    --mct-azul-oscuro:#001321;
    --mct-rojo:#ff0000;
    --mct-gris:#6e6f73;
    --mct-borde:#d9d9d9;
    --mct-fondo:#ffffff;
    --mct-suave:#f6f7f9;
    width:100%;
    font-family:"Montserrat",Arial,sans-serif;
    color:var(--mct-azul-oscuro);
}

.mct-transparencia *,
.mct-transparencia *::before,
.mct-transparencia *::after{
    box-sizing:border-box;
}

.mct-buscador{
    position:relative;
    display:flex;
    align-items:center;
    width:100%;
    margin:0 0 20px;
}

.mct-buscador-icono{
    position:absolute;
    left:17px;
    top:50%;
    z-index:2;
    width:18px;
    height:18px;
    transform:translateY(-50%);
    color:var(--mct-azul);
    pointer-events:none;
}

.mct-buscador-icono svg{
    width:100%;
    height:100%;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
    stroke-linecap:round;
}

.mct-buscador-input{
    width:100% !important;
    height:48px !important;
    margin:0 !important;
    padding:0 48px 0 48px !important;
    color:var(--mct-azul-oscuro) !important;
    background:#fff !important;
    border:1px solid rgba(0,90,167,.2) !important;
    border-radius:14px !important;
    font-family:"Montserrat",Arial,sans-serif !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1 !important;
    box-shadow:0 6px 18px rgba(0,19,33,.04) !important;
    outline:none !important;
    transition:border-color .2s ease, box-shadow .2s ease;
}

.mct-buscador-input:focus{
    border-color:rgba(0,90,167,.52) !important;
    box-shadow:0 0 0 3px rgba(0,90,167,.08) !important;
}

.mct-buscador-input::placeholder{
    color:#7a8792;
    opacity:1;
}

.mct-buscador-limpiar{
    position:absolute !important;
    right:9px;
    top:50%;
    z-index:2;
    width:32px !important;
    min-width:32px !important;
    height:32px !important;
    margin:0 !important;
    padding:0 !important;
    transform:translateY(-50%);
    color:var(--mct-gris) !important;
    background:transparent !important;
    border:0 !important;
    border-radius:50% !important;
    font-family:Arial,sans-serif !important;
    font-size:23px !important;
    font-weight:400 !important;
    line-height:32px !important;
    box-shadow:none !important;
    cursor:pointer;
}

.mct-buscador-limpiar:hover,
.mct-buscador-limpiar:focus{
    color:var(--mct-azul) !important;
    background:rgba(0,90,167,.06) !important;
}

.mct-sin-resultados,
.mct-aviso{
    width:100%;
    padding:18px 20px;
    color:var(--mct-gris);
    background:#fff;
    border:1px solid var(--mct-borde);
    border-radius:14px;
    font-family:"Montserrat",Arial,sans-serif;
    font-size:13px;
}

.mct-articulos{
    display:grid;
    gap:12px;
}

.mct-articulo,
.mct-seccion,
.mct-dependencia{
    display:block;
    width:100%;
    margin:0;
    background:#fff;
}

.mct-articulo{
    border:1px solid rgba(0,90,167,.12);
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 5px 18px rgba(0,19,33,.035);
}

.mct-articulo + .mct-articulo{
    margin-top:0;
}

.mct-seccion{
    border:1px solid rgba(0,90,167,.15);
    border-radius:14px;
    overflow:hidden;
}

.mct-dependencia{
    border:1px solid rgba(0,90,167,.16);
    border-radius:14px;
    overflow:hidden;
}

.mct-articulo-resumen,
.mct-seccion-resumen,
.mct-dependencia-resumen{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    width:100%;
    margin:0;
    cursor:pointer;
    user-select:none;
    list-style:none;
}

.mct-articulo-resumen::-webkit-details-marker,
.mct-seccion-resumen::-webkit-details-marker,
.mct-dependencia-resumen::-webkit-details-marker{
    display:none;
}

.mct-articulo-resumen::marker,
.mct-seccion-resumen::marker,
.mct-dependencia-resumen::marker{
    display:none;
    content:"";
}

.mct-articulo-resumen{
    min-height:70px;
    padding:13px 16px;
}

.mct-seccion-resumen{
    min-height:62px;
    padding:11px 13px;
}

.mct-dependencia-resumen{
    min-height:58px;
    padding:10px 12px;
}

.mct-articulo-resumen:hover,
.mct-seccion-resumen:hover,
.mct-dependencia-resumen:hover{
    background:rgba(0,90,167,.025);
}

.mct-icono{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:none;
}

.mct-icono svg{
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.mct-icono-articulo{
    width:36px;
    height:36px;
    color:#fff;
    background:var(--mct-azul-oscuro);
    border-radius:12px;
}

.mct-icono-seccion{
    width:36px;
    height:36px;
    color:#fff;
    background:var(--mct-azul);
    border-radius:11px;
}

.mct-icono-dependencia{
    width:34px;
    height:34px;
    color:#fff;
    background:var(--mct-azul);
    border-radius:10px;
}

.mct-resumen-textos{
    display:flex;
    flex-direction:column;
    min-width:0;
    line-height:1.2;
}

.mct-articulo-titulo,
.mct-seccion-titulo,
.mct-dependencia-titulo{
    display:block;
    margin:0;
    color:var(--mct-azul);
    font-family:"Montserrat",Arial,sans-serif;
    font-weight:800;
    letter-spacing:0;
}

.mct-articulo-titulo{
    font-size:14px;
}

.mct-seccion-titulo{
    font-size:13px;
}

.mct-dependencia-titulo{
    font-size:12.5px;
}

.mct-cantidad{
    display:block;
    margin-top:4px;
    color:var(--mct-gris);
    font-size:10.5px;
    font-weight:500;
}

.mct-chevron{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    color:var(--mct-azul);
    border-radius:50%;
    transition:transform .2s ease, background-color .2s ease;
}

.mct-chevron svg{
    width:16px;
    height:16px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

details[open] > summary > .mct-chevron{
    transform:rotate(180deg);
}

.mct-articulo-contenido{
    display:grid;
    gap:10px;
    padding:0 12px 12px;
}

.mct-seccion-contenido{
    display:grid;
    gap:9px;
    padding:0 10px 10px;
}

.mct-dependencia-contenido{
    display:block;
    padding:0 12px 12px;
}

/*
 * IMPORTANTE:
 * No se usa height fijo ni overflow:hidden en los contenedores internos.
 * Así, al elegir 2024, 2023, etc., aparecen TODOS los documentos del año.
 */

.mct-anios{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:7px;
    margin:0 0 12px;
    padding:2px 0 3px;
}

.mct-anio-boton{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:58px !important;
    height:32px !important;
    margin:0 !important;
    padding:0 13px !important;
    color:var(--mct-azul) !important;
    background:#fff !important;
    border:1px solid rgba(0,90,167,.2) !important;
    border-radius:999px !important;
    font-family:"Montserrat",Arial,sans-serif !important;
    font-size:10.5px !important;
    font-weight:750 !important;
    line-height:1 !important;
    box-shadow:none !important;
    cursor:pointer;
    transition:background-color .18s ease, color .18s ease, border-color .18s ease;
}

.mct-anio-boton:hover,
.mct-anio-boton:focus{
    color:var(--mct-azul-oscuro) !important;
    background:rgba(0,90,167,.055) !important;
    border-color:rgba(0,90,167,.35) !important;
}

.mct-anio-boton.activo{
    color:#fff !important;
    background:var(--mct-azul) !important;
    border-color:var(--mct-azul) !important;
}

.mct-documentos{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
}

.mct-documento{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    width:100%;
    min-height:64px;
    margin:0 !important;
    padding:10px 12px !important;
    color:var(--mct-azul-oscuro) !important;
    text-decoration:none !important;
    background:var(--mct-suave);
    border:1px solid transparent;
    border-radius:13px;
    box-shadow:none;
    transition:background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.mct-documento:hover,
.mct-documento:focus{
    color:var(--mct-azul-oscuro) !important;
    text-decoration:none !important;
    background:#fff;
    border-color:rgba(0,90,167,.16);
    transform:translateY(-1px);
}

.mct-documento[hidden]{
    display:none !important;
}

.mct-documento-icono{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    color:#fff;
    background:var(--mct-azul);
    border-radius:50%;
    flex:none;
}

.mct-documento-icono svg{
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.mct-documento-info{
    display:flex;
    flex-direction:column;
    min-width:0;
}

.mct-documento-nombre{
    display:block;
    color:var(--mct-azul-oscuro);
    font-size:12.5px;
    font-weight:700;
    line-height:1.35;
    overflow-wrap:anywhere;
}

.mct-documento-meta{
    display:block;
    margin-top:4px;
    color:var(--mct-gris);
    font-size:9.8px;
    font-weight:500;
    line-height:1.25;
}

.mct-documento-flecha{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    color:var(--mct-azul);
    flex:none;
}

.mct-documento-flecha svg{
    width:16px;
    height:16px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.mct-transparencia [hidden]{
    display:none !important;
}

@media (max-width:767px){
    .mct-articulo-resumen{
        min-height:64px;
        padding:11px 12px;
        gap:10px;
    }

    .mct-articulo-contenido{
        padding:0 8px 8px;
    }

    .mct-seccion-contenido{
        padding:0 7px 7px;
    }

    .mct-dependencia-contenido{
        padding:0 9px 9px;
    }

    .mct-articulo-titulo{
        font-size:12.5px;
    }

    .mct-seccion-titulo,
    .mct-dependencia-titulo{
        font-size:11.5px;
    }

    .mct-icono-articulo,
    .mct-icono-seccion{
        width:34px;
        height:34px;
    }

    .mct-documento{
        min-height:60px;
        padding:9px 10px !important;
        gap:10px;
    }

    .mct-documento-icono{
        width:38px;
        height:38px;
    }

    .mct-documento-nombre{
        font-size:11.5px;
    }

    .mct-anio-boton{
        min-width:55px !important;
        padding:0 11px !important;
    }
}
