.vista-documentos .paneldocumentoscabecera{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
    gap:20px;
    align-items:stretch
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado,
.vista-documentos .paneldocumentoscabecera .panelaspiranteestado{
    background:#ffffff;
    border:1px solid #e7eaf0;
    border-radius:28px;
    padding:28px 30px;
    box-shadow:0 10px 30px rgba(11,29,74,.06)
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado{
    display:grid;
    align-content:center;
    gap:10px
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado .etiqueta{
    margin-top:4px;
    margin-bottom:8px
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado h2{
    margin:0;
    font-size:38px;
    line-height:1.08;
    color:#0b1d4a
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado p{
    margin:0;
    color:#5b6577;
    font-size:18px;
    font-weight:700
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteestado{
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:12px;
    background:#f7f9fd
}

.vista-documentos .paneldocumentoscabecera .panelestadoinsignia{
    display:inline-flex;
    align-self:flex-start;
    padding:8px 14px;
    border-radius:999px;
    background:#771239;
    color:#ffffff;
    font-size:12px;
    font-weight:700
}

.vista-documentos .paneldocumentoscabecera .panelaspiranteestado p{
    margin:0;
    color:#5b6577;
    font-size:15px;
    line-height:1.7
}

.vista-documentos .documentosresumen{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}

.vista-documentos .documentosresumentarjeta{
    background:#ffffff;
    border:1px solid #e7eaf0;
    border-radius:24px;
    padding:22px 24px;
    box-shadow:0 10px 30px rgba(11,29,74,.06);
    display:grid;
    gap:14px
}

.vista-documentos .documentosresumentarjeta h3{
    margin:0;
    color:#0b1d4a;
    font-size:22px
}

.vista-documentos .documentosresumentarjeta p{
    margin:0;
    color:#5b6577;
    font-size:15px;
    line-height:1.6
}

.vista-documentos .documentosresumenlista{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:10px
}

.vista-documentos .documentosresumenlista li{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px;
    border-radius:14px;
    background:#f7f9fd;
    border:1px solid #e7eaf0;
    color:#334155;
    font-size:14px
}

.vista-documentos .documentosresumenlista li strong{
    color:#0b1d4a;
    font-size:16px
}

.vista-documentos .documentosprogreso{
    display:grid;
    gap:10px
}

.vista-documentos .documentosprogresobarra{
    width:100%;
    height:14px;
    border-radius:999px;
    background:#edf1f7;
    overflow:hidden
}

.vista-documentos .documentosprogresobarra span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#771239 0%,#c9a34e 100%)
}

.vista-documentos .documentoscontenedor{
    display:grid;
    gap:20px
}

.vista-documentos .documentosbarra{
    background:#ffffff;
    border:1px solid #e7eaf0;
    border-radius:24px;
    padding:22px 24px;
    box-shadow:0 10px 30px rgba(11,29,74,.06);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap
}

.vista-documentos .documentosbarratexto h3{
    margin:0 0 6px;
    color:#771239;
    font-size:20px
}

.vista-documentos .documentosbarratexto p{
    margin:0;
    color:#5b6577;
    font-size:15px;
    line-height:1.6
}

.vista-documentos .documentosacordeon{
    display:grid;
    gap:16px
}

.vista-documentos .bloquedocumentos{
    background:#ffffff;
    border:1px solid #e7eaf0;
    border-radius:24px;
    box-shadow:0 10px 30px rgba(11,29,74,.06);
    overflow:hidden
}

.vista-documentos .bloquedocumentosresumen{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:22px 24px;
    background:#ffffff
}

.vista-documentos .bloquedocumentosresumen::-webkit-details-marker{
    display:none
}

.vista-documentos .bloquedocumentosencabezado{
    display:grid;
    gap:4px
}

.vista-documentos .bloquedocumentosencabezado h3{
    margin:0;
    color:#0b1d4a;
    font-size:22px
}

.vista-documentos .bloquedocumentosencabezado p{
    margin:0;
    color:#5b6577;
    font-size:14px;
    line-height:1.5
}

.vista-documentos .bloquedocumentosmeta{
    display:grid;
    justify-items:end;
    gap:8px
}

.vista-documentos .bloquemetaestado{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:#f7f9fd;
    border:1px solid #e7eaf0;
    color:#0b1d4a;
    font-size:13px;
    font-weight:700;
    white-space:nowrap
}

.vista-documentos .bloquedocumentosindicador{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 14px;
    border-radius:999px;
    background:#fdf2f8;
    border:1px solid #f3d2de;
    color:#771239;
    font-size:13px;
    font-weight:700;
    white-space:nowrap
}

.vista-documentos .bloquedocumentos[open] .bloquedocumentosresumen{
    border-bottom:1px solid #edf1f7
}

.vista-documentos .bloquedocumentoscontenido{
    padding:18px 24px 24px
}

.vista-documentos .documentoslista{
    display:grid;
    gap:14px
}

.vista-documentos .documentotarjeta{
    background:#fbfcfe;
    border:1px solid #e7eaf0;
    border-radius:20px;
    padding:18px 20px;
    display:grid;
    gap:14px
}

.vista-documentos .documentotarjetacabecera{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px
}

.vista-documentos .documentoinfo{
    display:grid;
    gap:10px
}

.vista-documentos .documentotitulo{
    margin:0;
    color:#0b1d4a;
    font-size:19px;
    line-height:1.35
}

.vista-documentos .documentometadatos{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap
}

.vista-documentos .documentoobligatorio{
    color:#9f1239;
    font-weight:800;
    margin-right:4px
}

.vista-documentos .documentoestado{
    display:inline-flex;
    align-self:flex-start;
    padding:8px 14px;
    border-radius:8px;
    font-size:13px;
    font-weight:700;
    border:1px solid transparent
}

.vista-documentos .documentotipofile{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 12px;
    border-radius:8px;
    background:#eef3ff;
    color:#18316f;
    font-size:12px;
    font-weight:700;
    border:1px solid #dbe6ff
}

.vista-documentos .documentoestadopendiente{
    background:#fff7ed;
    color:#9a3412;
    border-color:#fed7aa
}

.vista-documentos .documentoestadocargado{
    background:#eff6ff;
    color:#1d4ed8;
    border-color:#bfdbfe
}

.vista-documentos .documentoestadovalidado{
    background:#ecfdf3;
    color:#166534;
    border-color:#bbf7d0
}

.vista-documentos .documentoestadoobservado{
    background:#fff1f2;
    color:#9f1239;
    border-color:#fecdd3
}

.vista-documentos .documentoobservacion{
    padding:14px 16px;
    border-radius:16px;
    background:#fff7ed;
    border:1px solid #fed7aa;
    color:#9a3412;
    font-size:14px;
    line-height:1.6
}

.vista-documentos .documentoaccionesarea{
    display:grid;
    gap:12px
}

.vista-documentos .formdocumento{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:end
}

.vista-documentos .documentocampoarchivo{
    display:grid;
    gap:8px
}

.vista-documentos .documentoetiquetaarchivo{
    font-size:14px;
    font-weight:700;
    color:#0b1d4a
}

.vista-documentos .formdocumento input[type="file"]{
    width:100%;
    min-height:50px;
    border:1px solid #d7dce5;
    border-radius:8px;
    padding:10px 12px;
    background:#fff;
    color:#1f2937;
    font-size:14px
}

.vista-documentos .documentobloqueado{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 18px;
    border-radius:8px;
    background:#eef2f7;
    color:#64748b;
    font-size:14px;
    font-weight:700;
    border:1px solid #dbe3ee
}

@media (max-width:1080px){
    .vista-documentos .documentosresumen{
        grid-template-columns:1fr
    }

    .vista-documentos .paneldocumentoscabecera{
        grid-template-columns:1fr
    }
}

@media (max-width:920px){
    .vista-documentos .documentosbarra{
        flex-direction:column;
        align-items:flex-start
    }

    .vista-documentos .bloquedocumentosresumen{
        flex-direction:column;
        align-items:flex-start
    }

    .vista-documentos .bloquedocumentosmeta{
        justify-items:start
    }

    .vista-documentos .documentotarjetacabecera{
        flex-direction:column;
        align-items:flex-start
    }

    .vista-documentos .bloquedocumentoscontenido{
        padding:16px
    }

    .vista-documentos .formdocumento{
        grid-template-columns:1fr
    }

    .vista-documentos .formdocumento .botonprimario{
        width:100%;
        justify-content:center
    }

    .vista-documentos .documentotitulo{
        font-size:18px
    }

    .vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado,
    .vista-documentos .paneldocumentoscabecera .panelaspiranteestado{
        padding:22px
    }

    .vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado h2{
        font-size:30px
    }
}

@media (max-width:640px){
    .vista-documentos .paneldocumentoscabecera{
        gap:16px
    }

    .vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado,
    .vista-documentos .paneldocumentoscabecera .panelaspiranteestado{
        padding:18px
    }

    .vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado h2{
        font-size:26px
    }

    .vista-documentos .paneldocumentoscabecera .panelaspiranteencabezado p,
    .vista-documentos .paneldocumentoscabecera .panelaspiranteestado p{
        font-size:14px;
        line-height:1.55
    }

    .vista-documentos .documentosbarra{
        padding:20px
    }

    .vista-documentos .documentotarjeta{
        padding:18px
    }

    .vista-documentos .documentometadatos{
        gap:8px
    }

    .vista-documentos .documentotitulo{
        font-size:17px
    }

    .vista-documentos .bloquedocumentosresumen{
        padding:20px
    }

    .vista-documentos .documentosresumentarjeta{
        padding:20px
    }

    .vista-documentos .documentosresumenlista li{
        flex-direction:column;
        align-items:flex-start
    }
}
