* {
font-family: Raleway, sans-serif;
line-height: 25px;
}

/*nuevo diseño pagina archivos area privada clientela*/

/* Estilos para file uploads */
.file-upload-row {
    margin-bottom: 20px;
}

.file-label {
    display: block;
    font-weight: 600;
    color: #555;
    margin-bottom: 8px;
    font-size: 14px;
}

.file-label i {
    color: #F75100;
    margin-right: 6px;
	font-size: 20px !important;
}

.file-input-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.file-input-original {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.btn-browse {
    display: inline-block;
    padding: 8px 16px;
    background-color: #f8f9fa;
    border: 1px solid #ddd;
    border-radius: 4px;
    cursor: pointer;
    font-size: 13px;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.btn-browse:hover {
    background-color: #e9ecef;
    border-color: #bbb;
}

.btn-browse i {
    margin-right: 5px;
    color: #666;
}

.file-display {
    color: #888;
    font-size: 13px;
    font-style: italic;
    flex: 1;
    min-width: 150px;
    word-break: break-word;
}

.file-display.has-file {
    color: #28a745;
    font-style: normal;
    font-weight: 500;
}

.upload-section {
    text-align: center;
    margin-top: 10px;
}

.btn-upload-styled {
    background-color: #F75100 !important;
    border: 1px solid #F75100 !important;
    color: #fff !important;
    font-size: 15px;
    font-weight: 600;
    padding: 12px 30px;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 200px;
}

.btn-upload-styled:hover {
    background-color: #d64400 !important;
    border-color: #d64400 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(247, 81, 0, 0.3);
}

.loader-icon {
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
}

.oculto {
    display: none !important;
}

/* Responsive */
@media (max-width: 768px) {
    .file-input-wrapper {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .btn-browse {
        width: 100%;
        text-align: center;
    }
    
    .file-display {
        width: 100%;
        margin-top: 5px;
        text-align: center;
    }
    
    .btn-upload-styled {
        width: 100%;
        min-width: auto;
    }
}

@media (max-width: 576px) {
    .file-label {
        font-size: 13px;
    }
    
    .btn-browse {
        font-size: 12px;
        padding: 6px 12px;
    }
    
    .btn-upload-styled {
        font-size: 14px;
        padding: 10px 20px;
    }
}

/* Item individual de archivo */
.archivo-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 12px 15px;
    margin-bottom: 10px;
    transition: all 0.3s ease;
}

.archivo-item:hover {
    border-color: #F75100;
    box-shadow: 0 2px 8px rgba(247, 81, 0, 0.1);
}

/* Sección de información del archivo */
.archivo-info {
    display: flex;
    align-items: center;
    flex: 1;
    gap: 12px;
    min-width: 0;
}

.archivo-icono {
    flex-shrink: 0;
    font-size: 24px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    border-radius: 4px;
}

.archivo-icon-default {
    color: #F75100 !important;
}

.archivo-detalles {
    flex: 1;
    min-width: 0;
}

.archivo-nombre {
    font-weight: 600;
    color: #333;
    font-size: 14px;
    margin-bottom: 4px;
    word-break: break-word;
}

.archivo-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 12px;
    color: #666;
}

.badge-ref {
    background-color: #6c757d;
    color: #fff;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 600;
}

.archivo-tipo {
    color: #888;
    font-style: italic;
}

.archivo-fecha {
    color: #999;
}

.archivo-fecha i {
    font-size: 11px;
    margin-right: 3px;
}

/* Botones de acción */
.archivo-acciones {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

.btn-download,
.btn-delete {
    padding: 6px 10px;
    border-radius: 4px;
    transition: all 0.3s ease;
    border: 1px solid #ddd;
}

.btn-download {
    background-color: #fff;
    color: #28a745;
}

.btn-download:hover {
    background-color: #28a745;
    color: #fff;
    border-color: #28a745;
}

.btn-delete {
    background-color: #fff;
    color: #dc3545;
}

.btn-delete:hover {
    background-color: #dc3545;
    color: #fff;
    border-color: #dc3545;
}

/* Mensaje sin archivos */
.no-archivos {
    text-align: center;
    padding: 40px 20px;
    color: #999;
}

.no-archivos i {
    font-size: 48px;
    color: #ddd;
    margin-bottom: 15px;
}

.no-archivos p {
    font-size: 14px;
    margin: 0;
}

i.glyphicon.glyphicon-file.text-primary{
	color:#F75100;
}

/* Responsive */
@media (max-width: 768px) {
    .archivo-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    
    .archivo-info {
        width: 100%;
    }
    
    .archivo-acciones {
        width: 100%;
        justify-content: flex-end;
    }
    
    .archivo-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}

@media (max-width: 576px) {
    .archivo-icono {
        width: 35px;
        height: 35px;
        font-size: 20px;
    }
    
    .archivo-nombre {
        font-size: 13px;
    }
    
    .archivo-meta {
        font-size: 11px;
    }
    
    .btn-download,
    .btn-delete {
        padding: 5px 8px;
    }
}

/* fin nuevo diseño pagina archivos area privada clientela*/

.ui-widget-content { padding: 20px; text-align: justify;}
#mensaje {border: 1px solid #EEE}
#contenedorAreaPrivada, .ui-widget-content {margin-bottom: 30px; min-height: 100px}

h3 {font: bold 28px/28px Raleway, sans-serif !important;}
.primary_content_wrap .container {background-image: none !important;}

#logout{
    position:absolute;
    top:5px;
    right:5px;
}

.content .container .container_inner {padding: 0px}

#index a, #pswd a, #session a {text-decoration:none; color:#333}
#index, #pswd, #session {    
    padding: .4em 1em; 
    font-weight:bold; 
    font-size: 1.1em; 
    border: 1px solid #DDD; 
    /*background: #f6f6f6 url(images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x;*/
}

form label{
    
    float:left;
    display:block;
    font-weight: bold;
    line-height: 2em;
    vertical-align: middle;
}
.center_search{
    width:300px;

}

#gbox_list{
    margin:auto;    
}

h3.section_header{
    cursor: pointer;
    margin-top: 10px !important;
    border-bottom:5px solid #EEE !important;
}
#contenido_mensaje_mostrado{
    border: 1px solid #DDD;
    padding:20px;
}
#centros_formulario{
    padding:0;
}

.ui-jqgrid .ui-jqgrid-pager{
    position:fixed !important;
    bottom:0;
    left:0;
    width: auto !important;
}

#main{
    padding-bottom: 20px;

    margin: 0 auto;
}

.ui-jqgrid .ui-jqgrid-bdiv {

    /**overflow: visible !important;**/
}

.ui-dropdownchecklist-text{
    float:none;
    display: inline;
    width:auto;
    line-height: 1em;
    margin-left: 3px;
}
.ui-dropdownchecklist-item{
    padding:3px;
}

.admin_tipos .ui-jqdialog-content input.FormElement{
    width:200px; 
}

.admin_tipos #editmodlist{
    width:300px !important;
}

.admin_tipos #parent_id_name,.admin_tipos #id{
    border:none;
    background:transparent;
}

.admin_centros .ui-jqdialog-content .CaptionTD {

    width: 50px;
}

.admin_centros .ui-jqdialog-content .DataTD {

    width: 40%;
}

.admin_centros .ui-jqdialog-content input.FormElement,.ui-jqdialog-content textarea.FormElement {
    padding: 0.3em;
    width: 95%;
}

.ui-autocomplete {
    max-height: 200px;
    overflow-y: auto;
    /* prevent horizontal scrollbar */
    overflow-x: hidden;
    /* add padding to account for vertical scrollbar */
    padding-right: 20px;
}
/* IE 6 doesn't support max-height
 * we use height instead, but this forces the menu to always be this tall
*/
* html .ui-autocomplete {
    height: 200px;
}

a.tipos_loading{
    padding-left: 20px;
    background: url("../img/ui-anim_basic_16x16.gif") no-repeat scroll 0 0 transparent;
}
.minis {width:12px;}
.ui-jqgrid-sortable, .ui-state-default {color: #EB8F00 !important;}
.ui-jqgrid-title {color:#FFF;}
#mensaje {background:#FFF !important;}
h3.section_header {border-radius:0 !important; margin-top:0px !important; border:none; color: #333}
.contenedor {width:100%; padding: 10px 20px; margin-bottom:30px;}
.subdv{display:inline-table;}
.leftDatos {width:400px;}
.centerDatos {width:350px; padding-left:30px;}
.rightDatos {width:200px; padding-left:30px;}
.dvRightDocumentos {width: 45%;padding-left: 50px;border-left: 1px solid #DDD;}
.dvLeftDocumentos {width: 40%;}
.dvRightDocumentos input[type="file"]{padding: 10px;border: 1px solid #DDD; max-width:300px;}
.dvRightDocumentos label {width:150px !important;}
/*input[type="button"], .submit_private {background: #F28500 !important;border: none !important;padding: 8px !important;border-radius: 0px;color: #FFF !important; min-width:80px;font-weight: bold;}*/
input[type="button"]:hover, .submit_private:hover {background:#CCC !important;}
.content ul li {list-style-type:none;border-top:none; margin: 0px !important; padding: 0px !important;}
.content ul li:before{background: none;}
.tnum {width:20px; text-align:right;}
.testado {width:20px; text-align:center;}
.tname{min-width:400px;}
.taccion {width:20px;}
tr.trline td {border-bottom:1pt solid #DDD;}
#tcentros, #tforms {display:none; padding-left:50px; min-width:800px; max-width:1200px; margin: 0 auto; width:800px; margin-bottom:30px;}
#mostrarCentros, #mostrarForms {margin: 30px auto; font-weight:bold; width:250px; cursor:pointer; position:relative; left: 40%;}
#guardaEmail {width: 100px;margin-left: 10px;margin-bottom: 40px;}
.asuntoEmail {padding-left:10px; font-size:14px; width:95%;}
.asuntoEmail input {max-width: 500px; font-size: 13px;padding: 5px; width:95%; border: 1px solid #DDD}
.asuntoEmail label {width:200px;}
.asuntoEmail h4 {margin-bottom: 6px;}
#mensaje h4 {margin-bottom: 6px;font-size: 14px;font-weight: bold;text-transform: uppercase;}
.asuntoContent label {width:200px;font-size: 14px;}
.separador {border:none; height: 1px; background:#DDD;}
#envio a.submit {margin: 10px 20px;}
.nop {vertical-align:middle;}
.nopay>.orange {display:none;}
/*#loginBox {max-width:440px; margin: 35px auto; font-size:14px; text-align: right; background: #f2f2f2; border-radius: 8px; padding: 20px}*/

/*#loginBox label {width: 100px;text-align: right;padding-right: 10px;}*/
#loginBox label, #loginBox p {padding-left: 5px}
#loginBox input[type="submit"] .submit_private {margin:10px;padding: 8px;}
#loginBox input[type="submit"] {width: auto;display: block;}
/*#loginBox div {background: #FFF; padding: 25px 30px; border-radius: 8px}*/
#loginBox .pass-olvidada p {font-size: 12px; text-align: left;}
#loginBox .ui-state-error {text-align: center !important; padding: 5px;}
h3.titulos {font-size:16px;}
#dvPanel {width:400px; margin: 0 auto; font-size:14px;}
#dvPanel input[type="text"] {font-size: 12px;padding: 10px; width:200px;}
.submit {border-radius:0px !important;}
#dvPanel .submit {width:300px; margin:0 auto; margin-top:20px; border-radius:0px;}
.espacio {padding: 30px 50px; margin: 0 auto; text-align:center;}
#responsables select {font-size: 11px;padding: 5px 3px;margin-left:0px; width:110px;}
#responsables input[type="submit"] {min-width:10px; padding:6px;}
#showResponsables, .botonAlerta {cursor:pointer; border: 1px solid #DDD; padding:7px; font-weight:bold; margin-top:10px; display:block; width: 115px; margin: 0 auto; /*background:#f6f6f6 url(images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x*/}
.botonAlerta {width:150px; text-align:center;}
#showResponsables:hover, .botonAlerta:hover {background:#FDF5CE; border-color:#FBCB09;}
.oculto,.oculto2 {display:none;}
.showMore {cursor:pointer; font-weight:bold;}
fieldset {border: 1px solid #DDD; padding: 10px !important; margin-bottom: 20px; }
.may {text-transform:capitalize;}
.iconfdp {vertical-align:middle;}
.confirm {text-decoration:none; font-weight:bold;}
.subTablaForms {margin-top:-5px;}
.subTablaForms textarea {width:330px; height:15px; padding-top:5px; padding-left:5px;}
.subTablaForms input[type="text"],.subTablaForms .submit_private {padding:5px;}
.botoncitosForms {width:200px; text-align:right;}
.botoncitosForms a {margin-left:5px;}
#list img{width:14px !important;}
.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl, .ui-corner-right, .ui-corner-tr {border-radius:0px !important}
.ui-widget-header {background:none; background:#F28500;}
.ui-jqgrid .ui-jqgrid-title {padding-left:50%;}
.zoom {vertical-align: middle;margin-left: 10px;}
.new{background-color: #EB8F00 !important}
.button_color span {color:#FFA500;font-size: 13px;}
.button_color {width:420px !important};
#side{float:left;margin-left: 5px;}
/*#login{margin-left: 130px !important;}*/
#forget_password{font-size: 12px}
.modificar{height:32.5px;}
#sidebar{margin-top: 65px; padding-top: 0px; margin-bottom:30px}
.msg_validaition{text-align: center;font-size: 18px;}
/*#page-content h3 {padding: 5px 10px;border-bottom: 2px solid #F28510 !important;border-top: 0px solid #f28500 !important; margin-top:30px !important;}*/
#page-content h3 > a > img {width:20px}
#contenedorAreaPrivada {background: #FFF;padding: 20px;text-align: justify;}
#page-content {margin-top:25px}
.tituloAreaPrivada {font-size: 20px !important; margin-bottom: 20px}
.eliminarBtn {border: 1px solid #999 !important; background: #FFF url(../img/delete-icon.png) no-repeat 5px !important; color: #555 !important; padding: 7px 10px 7px 25px!important; border-radius: 3px !important; margin: 0 auto !important;}
.eliminarBtn:hover {background: #EEE url(../img/delete-icon.png) no-repeat 5px !important; }
.botonAreaPrivada {padding: 10px !important}
.contraseniaDiv {max-width:400px; margin: 30px auto;}
.contraseniaDiv input {max-width: 90%;}
#cambiarContrasenia {padding: 25px; max-width:60%; margin:0 auto;}
.alertaDiv {padding: 20px;background: #F9F9F9;border: 1px solid #DDD;border-radius: 5px;display: inline-table;margin-top: 20px; width:95%;}
.alertaDiv h2 {border-bottom: 2px solid #DDD;padding-bottom: 8px;text-transform: uppercase;letter-spacing: 0.1px; font-size: 16px }
.alertaDiv p {margin-left: 0px; text-align:justify}
.submit_private2 {background: url(../img/most-viewed.png) no-repeat 4px 8px !important;color: #555 !important;padding: 10px 6px 10px 28px !important; float:right; margin-bottom:-10px;}
.submit_private2:hover {background: #EEE url(../img/most-viewed.png) no-repeat 4px 8px !important;}
.cke_bottom {background: #EEE !important;}
.cke_chrome {border: 1px solid #EEE !important}
.cuerpoValidacion {padding:0 10px; width:97%}
.botonValida {height:32px}
.botonPrevia {padding: 0px 10px !important;line-height: 30px;}
#archivosAdjuntos {width: 100%; margin-bottom:20px; }
#archivosAdjuntos p {margin:0; padding: 0;}
#archivosAdjuntos ul {padding-left:0px; margin:0;}
#archivosAdjuntos ul > li {padding: 5px; border: 1px solid #DDD; display:inline-table; margin-left: 20px !important; padding: 10px !important; margin-bottom: 10px;}
#archivosAdjuntos ul > li:first-child {margin-left: 0px !important;}
#listaArchivosAdjuntos {}
.subirDocumentosDiv {padding: 20px 0 5px 20px !important; border: 1px solid #EEE; margin-bottom:30px;}
.subirDocumentosDiv div {display: inline-table; max-width:260px;}
.subirDocumentosDiv input[type="file"] { padding:10px; margin-bottom: 10px; max-width:230px; background:#F9F9F9;}
.subirDocumentosDiv label {width: 140px;}
.cancelarBtn {float: right; margin-right:15px;}
.abrirPaginaContratacion {padding: 10px; margin-bottom:20px; display: inline-block;text-decoration: none; font-weight:bold; background:#FFF; border:1px solid #DDD; color:#555}
.abrirPaginaContratacion img {vertical-align:baseline; margin-left:5px; max-width:12px;}
.abrirPaginaContratacion:hover {background:#EEE;}
.alertaInfo {padding: 10px 20px 10px 55px; border: 1px solid #F2A737; background: #FFE2A5 url(/images/alert-32.png) no-repeat 10px}
.headerAcordion img {margin-top:5px;}

.izqDiv, .derDiv {max-width: 300px; display: inline-table;}
.derDiv {bottom: 10px;position: relative;float: right;}
.noSubir {top: 10px}
.contenedorVistaBotones {margin-top:20px}
.listadoDiv {margin: 45px auto; display:block}
#listadoContenido table td, #listadoContenido table th, #listadoContenido table tr  {border:0px;}
#listadoContenido table td, #listadoContenido table th {padding:5px 20px}
.txCenter {text-align:center; border-left:1px solid #EEE !important; border-right: 1px solid #EEE !important}
#listadoContenido table {border: 1px solid #DDD; background:#FFF;}
#listadoContenido table th {border: 1px solid #F28500}
#listadoContenido table tbody tr:nth-child(odd) {background-color: #F5F5F5;}
#listaCentrosTbl th {text-transform:uppercase}
.validadoMsg {text-align: center !important;margin: 0 auto !important;margin-bottom: 25px !important;}
.botonNewPass {float:right}
.ui-dialog-titlebar{display:none;}
.botonMenuAP {max-width:130px; display:inline-table; font-size:11px; text-align:left; margin-right:55px; margin-bottom:20px}
.botonMenuAP img {max-height: 40px; max-width:40px; margin-bottom:10px}
.alertasbtnAP { max-width: 290px; padding:10px; display:block; margin: 0 auto; margin-bottom:30px; background: url(/images/alertaAP.png) no-repeat; background-position:10px; padding-left:40px; text-align:left; font-size:14px;}
.alertasbtnAP2 { max-width: 155px; padding:10px; display:block; margin: 0 auto; margin-bottom:30px; background: url(/images/alertaAP2.png) no-repeat; background-position:10px; padding-left:40px; text-align:left; font-size:14px;}
.alertasbtnAP2 span {color:#555}
.btnCursoAP {background: url(/images/cursoAP.png) no-repeat; padding-left:35px; background-position: 5px; max-width:110px}
.btnPagoAP {background: url(/images/pagoAP.png) no-repeat; padding-left:35px; background-position: 5px; background-size:28px;}
.btnFinAP {background: url(/images/finAP.png) no-repeat; padding-left:35px; background-position: 5px; max-width:110px; margin-right:0px}
#forget_password {padding:10px; border: 3px solid #999; color:#333;text-decoration:none; background: url(/images/lock.png) no-repeat;background-position: 10px;padding-left: 35px;padding-right: 15px; float:left; font-weight:bold;}
.video-ayuda {float: right !important; max-width:25px}
.video-ayuda img {width: 22px; height:22px; cursor:pointer; border:none;}
.video-alerta {margin-right: 10px;margin-top: -5px;}
.ajustameLink {float:none; display:inline; color: #F28500}
address {margin-bottom:20px !important}

/************************* added by deval ***************/
#previa_div{margin: 5px 5px 5px 0px;display:inline-table}
#validar_div{margin: 5px;display:inline-table}
#modificar_div{margin: 5px;display:inline-table}
#guardar_div{margin:5px 5px 5px -45px;display:inline-table}
#cancelar_div{margin: 5px;display:inline-table}
#documentos_div {margin: 5px;display:inline-table}
.postal_msg{clear: both;float: left; font-weight: bold;}
#docs{margin-top: 35px;}
#side{float: left; width: 30%;}
/*#sidebar img{max-width: 100%;max-height: 100%}*/
.leftsidebar{float: left; width: 35%;}

.innersidebardiv{width: 90%!important;}
.contentwidth{width: 65%;float:right;}

#logout {position: absolute;right: 20px;top: 15px;width: 100%;}     
#session { float: right;margin-right: 5px; }
#pswd{ float: right;margin-right: 5px;}
#content {padding-top: 30px;}
#index{float:right;}



/********************** Outlook mail ****************************/

#header_mail{background-color: #FFE2A5;padding: 10px;border-bottom: 1px solid #F2A737; width: 94.%;}
#main_mail{margin: auto; border: 1.5px solid black;}
.heading_mail{font-weight: bold;float: left;margin: 0 10px;}
.text_heading{width:90%;}
.content_mail{padding:10px 15px; text-align:justify;margin: auto;margin: 3px;}
.line{border:1px solid #cecece;}

/********************** Outlook mail ****************************/


/*********************** bksoft ********************************/
.respuestasBox {margin-top: 30px}
.respuestasBox blockquote {font-size: 14px; font-style: italic}
#page-content h2{margin-bottom: 20px}
#loginBox {background: #EBEBEB; border-radius: 0px; padding: 10px; margin: 30px 0}
#loginBox input[type="email"], #loginBox input[type="password"], #pass {padding: 10px; width: 100%; border: 1px solid #e5e1e1;}
#loginBox input[type="button"], .submit_private {padding: 10px 25px; background: #F28500; border: none; color: #FFF; width: 140px}
#loginBox input[type="email"] {padding-left: 32px; background: url(/images/latusericon2.png) no-repeat #FFF  12px 14px;}
#loginBox input[type="password"], #pass {padding-left: 32px; background: url(/images/lock.png) no-repeat #FFF 12px;}
.separador20{height: 20px}
.centrado {text-align: center !important} 
#page-content .content {margin-top: 0px}
.subirDiv input[type="file"] {border: 1px solid #DDD; padding: 10px; margin: 5px 0px 15px}
#listaArchivosAdjuntos > li {margin-bottom: 10px !important; border-bottom: 1px solid #DDD; padding-bottom: 5px !important;}
.fechaarchivo {font-size: 10px; margin-left: 10px}
.glyphicon-trash {color: red}
#listaArchivosAdjuntos .btn {padding: 2px 7px; margin-right: 5px}
.panel-mods input[type="file"] {border: 1px solid #DDD; padding: 10px}
/*table tr:nth-child(odd) td a {color: #FFF}*/
#html5-watermark {display:none !important}

.btn-warning {background-color:#f75100; border: none}
.btn-warning:hover {background-color: #CCC}

#menu-menu-top-latam > li > a > span, i.qode_icon_font_awesome,
.title_subtitle_holder_inner h1 span, 
.drop_down .second .inner ul li a > span {color: #FFF}

#menu-menu-top-latam > li > a > span:hover, i.qode_icon_font_awesome:hover,
.drop_down .second .inner ul li a > span:hover {color: #f75100}
header.centered_logo.centered_logo_animate .q_logo img, header:not(.centered_logo) .q_logo img {max-height: 66px !important}

header.scrolled #menu-menu-top-latam > li > a > span, header.scrolled i.qode_icon_font_awesome {color: #4e4e56}

.ui-dialog {max-width: 100% !important}

.bold {font-weight: bold !important;}
.fgorange {color: #F75100}
.btnOrange, #contratar {
    position: relative;
    display: inline-block;
    width: auto;
    margin: 0;
    padding: 0 36px !important;
    font-size: 15px;
    height: 45px;
    line-height: 45px;
    color: #fff !important;
    background: #f75100;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    border: 0;
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    -o-border-radius: 3px;
}

#contratar:hover {background: #DDD}
.mayus {text-transform: uppercase}
#opciones {margin-top: 30px}
#opciones a {display: block;
    max-width: 170px;
    margin: 10px auto;}
.avatar {margin-bottom: 30px; max-width: 150px}
.nombreAP {font-weight: bold; display: block}
table tr:nth-child(odd) > td {background: #EFEFEF}
#back_to_top span i {
    font-size: 26px;
    color: #b0b0b0;
    line-height: 45px;
}
#back_to_top span {padding-left: 4px}

.infoFalta {font-style:italic; font-weight: bold; color: red; margin: 15px; display: block}
.glyphicon-save {margin-left: 5px}
.panel-alerta p {text-align: justify}
.listaDocumentos {margin: 15px}
ul.listaDocumentos > li {margin-bottom: 10px !important}
.spacer {margin: 30px auto;}

.subirDiv label {float: none}



@-webkit-keyframes ld {
  0%   { transform: rotate(0deg) scale(1); }
  50%  { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}
@-moz-keyframes ld {
  0%   { transform: rotate(0deg) scale(1); }
  50%  { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}
@-o-keyframes ld {
  0%   { transform: rotate(0deg) scale(1); }
  50%  { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}
@keyframes ld {
  0%   { transform: rotate(0deg) scale(1); }
  50%  { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}

.m-progress {
    position: relative;
    opacity: .8;
    color: transparent !important;
    text-shadow: none !important;
	background: #CCC;
	color: #333;
}

.m-progress:hover,
.m-progress:active,
.m-progress:focus {
    cursor: default;
    color: transparent;
    outline: none !important;
    box-shadow: none;
}

.m-progress:before {
    content: '';
    
    display: inline-block;
    
    position: absolute;
    background: transparent;
    border: 1px solid #fff;
    border-top-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
    
    box-sizing: border-box;
    
    top: 50%;
    left: 50%;
    margin-top: -12px;
    margin-left: -12px;
    
    width: 24px;
    height: 24px;
    
    -webkit-animation: ld 1s ease-in-out infinite;
    -moz-animation:    ld 1s ease-in-out infinite;
    -o-animation:      ld 1s ease-in-out infinite;
    animation:         ld 1s ease-in-out infinite;
}

.btn-default.m-progress:before {
    border-left-color: #333333;
    border-right-color: #333333;
}

.btn-lg.m-progress:before {
    margin-top: -16px;
    margin-left: -16px;
    
    width: 32px;
    height: 32px;
}

.btn-sm.m-progress:before {
    margin-top: -9px;
    margin-left: -9px;
    
    width: 18px;
    height: 18px;
}

.btn-xs.m-progress:before {
    margin-top: -7px;
    margin-left: -7px;
    
    width: 14px;
    height: 14px;
}


#sidebar {text-align:center; border-right: 5px solid #EEE !important;}
.cuerpoValidacion .btn {padding: 5px 7px}

@media only screen and (min-device-width: 768px) and (max-width: 1024px)  {

    th{padding: 10px 10px 10px 10px !important;}
}
@media only screen and (min-device-width: 481px) and (max-width: 768px)  {

}
@media only screen and (max-width: 480px) {
	#listadoContenido table td, #listadoContenido table th {padding:5px}
	#listaCentrosTbl th {text-transform:capitalize}
    .heading_mail{width:20%}  
    .text_heading{width:80%;}
    #cke_description {width: auto !important;}
    /*#side{display:none;}*/
	#side{float: none; width: auto;}
	#sidebar {text-align:center; border-right: none !important;}
	.avatar {margin-top: 30px !important; max-width: 80px}
    .leftsidebar{float: left; width: 100%; clear: both; display: none;}
    .contentwidth{width: 100%;float:left;clear: both;}
    .innersidebardiv{margin: auto!important;  }
    .innersidebardiv img{margin: 30px auto 10px;  }
    #page-content{width:90%; margin: auto;}
    #loginBox {width: 100%;}
    #loginBox label { padding-left: 34px;text-align: left;}
    .private_container{margin: auto!important;width: 100%!important;}
    .button_color{width:100%!important;}
    .button_private {width:100%!important;}
    /*.asuntoContent{width:100%!important;}
    #mensaje{width:100%!important;}*/
    .asuntoEmail input {  font-size: 13px;  padding: 5px;  width: 100%!important}
    .dvLeftDocumentos{width: 100%; margin: auto!important; padding: 0px; float: left;clear: both;}
    .dvRightDocumentos{width: 100%; margin: auto!important; padding: 0px;float: left;clear: both; border: 0px;}
    .dvRightDocumentos input[type="file"]{width: 80%;margin: auto;}
    #modificar_div{float: left;clear: both}
    #previa_div{float: left;clear: both}
    #validar_div{float: left;clear: both}
    #guardar_div{float: left;clear: both}
    #cancelar_div{float: left;clear: both}
    table{margin: auto!important;}
    tbody {display: inline-block;width: 100%;overflow: auto;}



}
@media only screen and (min-width: 321px) and (max-width: 480px) {

    #logout {position: absolute;right: 5px;top: 5px;width: 100%;}     
    #session { float: right; margin-left: 5px;}
    #pswd{ float: right;margin-right: 5px;}
    #content {padding-top: 40px;}
    table{margin: auto;}
    #index{float:right;}

    .heading_mail{width: 15%;}
    .text_heading{width:85%;}

}
@media only screen and (max-width: 320px) {

    #logout {position: absolute;right: 5px;top: 5px;}
    #session{float: right; margin-top: 5px;}
    #pswd{ float: right;margin-right: 5px;}
    #content {padding-top: 75px;}
    #index{float:right;margin-left: 0px;margin-right: 5px;}
	.tagline {display:none;}
	.alertasbtnAP {max-width: 165px;}
	.alertaDiv {margin-left: -20px;}
	#header .header {height:100px}

}

i.fa, i.fa::before { font-family: FontAwesome !important; }
#forget_password { margin-bottom: 25px; }

@media screen and (max-width: 1000px) {
    #loginBox form > div { width: 100%; margin: 5px 0; }
    #forget_password { margin-bottom: 25px; width: 100%; text-align: center; }
}

@media screen and (max-width: 480px) {
	#logo_movil { display: none ; }
    header.centered_logo.centered_logo_animate .q_logo img, header:not(.centered_logo) .q_logo img { max-height: 45px !important; }
    nav.mobile_menu { margin-top: 75px; }
	.ui-dialog-content {min-height: 185px !important}
}
header:not(.centered_logo) .mobile-only .q_logo img.normal{
    opacity: 1 !important;
  display: block !important;
  height: 40px !important;
  margin-left: calc(100vw - 280px) !important;
}
.logo_wrapper.mobile-only{
    left: 0 !important; right: 0 !important;
}
/* ---- Panel subir documentos ---- */
.subirDocumentosDiv {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    overflow: hidden;
    margin: 15px 0;
    box-shadow: 0 2px 6px rgba(0,0,0,0.07);
    background: #fff;
    width: 100%;
    box-sizing: border-box;
}

.upload-panel-header {
    background: #f7f7f7;
    border-bottom: 1px solid #e0e0e0;
    padding: 10px 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    font-size: 13px;
    color: #444;
    width: 100%;
    box-sizing: border-box;
}

.upload-panel-header a {
    color: #999;
    font-size: 12px;
    font-weight: normal;
    text-decoration: none;
    white-space: nowrap;
}

.upload-panel-header a:hover {
    color: #e55;
}

.upload-panel-body {
    padding: 20px 16px 16px;
    width: 100%;
    box-sizing: border-box;
}

/* Fila de los 3 campos en horizontal con flexbox */
.upload-fields-row {
    display: flex;
    flex-direction: row;
    gap: 16px;
    width: 100%;
    box-sizing: border-box;
}

.upload-field {
    flex: 1;
    min-width: 0;
}

.upload-field label {
    display: block;
    font-size: 12px;
    font-weight: bold;
    color: #555;
    margin-bottom: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.file-input-wrapper {
    border: 2px dashed #ddd;
    border-radius: 4px;
    padding: 10px 8px;
    background: #fafafa;
    transition: border-color 0.2s;
    width: 100%;
    box-sizing: border-box;
}

.file-input-wrapper:hover {
    border-color: #F28500;
}

.file-input-wrapper input[type="file"] {
    width: 100%;
    font-size: 12px;
    cursor: pointer;
    max-width: 100%;
}

.upload-panel-footer {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #f0f0f0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.btn-upload {
    background-color: #F28500 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 8px 20px !important;
    font-size: 13px !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
}

.btn-upload:hover {
    background-color: #d97700 !important;
}

.upload-loader {
    height: 20px;
}

/* Responsive: en móvil se apilan */
@media (max-width: 600px) {
    .upload-fields-row {
        flex-direction: column;
    }
}

/* ---- Archivos Adjuntos ---- */
.adjuntos-section {
    margin: 16px 0;
}

.adjuntos-title {
    font-size: 12px;
    font-weight: bold;
    color: #444;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
    padding-bottom: 6px;
    border-bottom: 2px solid #f0f0f0;
}

.adjuntos-list {
    list-style: none;
    padding: 0;
    margin: 0;
    border: 1px solid #e8e8e8;
    border-radius: 5px;
    overflow: hidden;  /* ← clave: contiene los bordes redondeados */
}

/* Cada item comparte borde con el siguiente, sin gap */
.adjunto-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    padding: 9px 12px;
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.15s;
}

/* El último item no tiene borde inferior */
.adjunto-item:last-child {
    border-bottom: none;
}

.adjunto-item:hover {
    background: #fffaf5;
}

.adjunto-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #444 !important;
    text-decoration: none !important;
    font-size: 13px;
    flex: 1;
    overflow: hidden;
}

.adjunto-link span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.adjunto-link:hover {
    color: #F28500 !important;
}

.adjunto-delete {
    color: #ddd !important;
    text-decoration: none !important;
    font-size: 14px;
    padding: 2px 6px;
    border-radius: 3px;
    transition: color 0.2s, background 0.2s;
    flex-shrink: 0;
}

.adjunto-delete:hover {
    color: #d9534f !important;
    background: #fff0f0;
}

.adjuntos-empty {
    color: #aaa;
    font-size: 13px;
    padding: 10px 0;
    margin: 0;
}
.edit-action-buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
}
.btn-guardar {
    background-color: #F28500 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 8px 18px !important;
    font-size: 13px !important;
    font-weight: bold !important;
    letter-spacing: 0.3px !important;
    box-shadow: 0 2px 4px rgba(242,133,0,0.35) !important;
    transition: all 0.2s !important;
}

.btn-guardar:hover {
    background-color: #d97700 !important;
    box-shadow: 0 3px 8px rgba(242,133,0,0.45) !important;
    transform: translateY(-1px) !important;
    color: #fff !important;
}

.btn-guardar:active {
    transform: translateY(0) !important;
    box-shadow: 0 1px 3px rgba(242,133,0,0.3) !important;
}

.btn-cancelar-edit {
    background-color: #fff !important;
    color: #888 !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    padding: 8px 18px !important;
    font-size: 13px !important;
    font-weight: bold !important;
    letter-spacing: 0.3px !important;
    transition: all 0.2s !important;
}

.btn-cancelar-edit:hover {
    background-color: #fff0f0 !important;
    color: #d9534f !important;
    border-color: #d9534f !important;
    box-shadow: 0 2px 4px rgba(217,83,79,0.15) !important;
    transform: translateY(-1px) !important;
}

.btn-cancelar-edit:active {
    transform: translateY(0) !important;
}