/* pages.css: estilos específicos por página/vista (login, registro, bandeja, aviso, etc.) */

main#contPrerregistro{
	min-height: calc(100vh - 58px);
}
main#contRegistro{
	min-height: calc(100vh - -190px);
}
/*LOGIN*/
.contLogin{
	position: relative;
	height: calc(100vh - 58px);
}
/* MODAL DOCUMENTOS */
#modalDocumentos.modal{
	background: #000000cc;
}
#modalDocumentos .modal-content{
	width: 95%;
	margin: auto;
	border-radius: 30px;
	padding: 15px;
	background: linear-gradient(#235B4E, #10312B);;
}
#modalDocumentos .modal-head{
	text-align: center;
	border-bottom: 1px solid #ffffff85;
}
#boxInfo{
	position: relative;
	width: 100%;
	height: auto;
	background-image: url("../img/FONDO_IZQ.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	box-shadow: 0 0 5px black;
	padding: 0;
	z-index: 1;
}
#boxCont{
	width: 100%;
}
/* BANDEJA DE ENTRADA */
#bandejaGral{
	z-index: 1;
	height: auto;
	background: #fff;
	box-shadow: 0 0 5px black;
}
#bandejaBody{
	position: relative;
	height: auto;
	padding: 0 20px;
	background: #F5F5F5;
}
#bandejaBody .accordion-item {
	border: transparent;
	background: transparent;
}
#bandejaGral .accordion-button:not(.collapsed) {
	color: #fff;
	background-color: #235B4E;
	box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}
#bandejaGral .accordion-button:not(.collapsed) .icon-msg .cerrado, #bandejaGral .accordion-button:not(.collapsed) .icon-msg .abierto, #bandejaGral .accordion-button:not(.collapsed) .tit-msg.cerrado, #bandejaGral .accordion-button:not(.collapsed) .tit-msg.abierto{
	color: #fff;
}
#bandejaGral .accordion-button:hover{
	background: #DDC9A5D1;
}
/* AVISO DE PRIVACIDAD */
.limitAviso{
	width: 70%;
    margin: 25px auto;
    /*margin: auto;
	padding: 25px;*/
}
.headAviso{
	background: #005046;
	text-align: center;
    border-radius: 25px 25px 0 0;
}
.headAviso img{
	width: 50px;
	margin-bottom: 5px;
}
.bodyAviso{
	background: #fff;
    padding: 40px 50px;
    box-shadow: 0 0 5px black;
    border-radius: 0 0 25px 25px;
}
.bodyAviso p, .bodyAviso ol{
	font-size: 15px;
	font-weight: 500;
	text-align: justify;
	margin-bottom: 15px;
	line-height: 1.2;
}
.bodyAviso ol{
	padding-left: 60px;
}
.bodyAviso label{
    display: block;
	font-size: 18px;
    font-weight: 700;
}
.bodyAviso .subenunbis .subtit {
    font-size: 14px;
    line-height: 1.5;
}
.footerAviso .form-check{
	width: 540px;
	margin: 30px auto;
	margin-bottom: 0;
}
.footerAviso .form-check label{
    font-size: 16px;
    color: #4d4d4d;
}
@media all and (max-width: 992px){
	.limitAviso {
	    width: 90%;
	}
	.bodyAviso {
	    padding: 30px;
	}
}
@media all and (max-width: 768px){
	.limitAviso {
	    width: 95%;
	    margin: 10px auto;
	}
}
@media all and (max-width: 576px){
	.headAviso img {
		position: relative;
	    width: 40px;
	    float: left;
	    left: 25px;
	    margin-bottom: 0px;
	}
	.headAviso p {
	    width: calc(100% - 40px);
	    margin: auto;
	    font-size: 17px;
	}
	.bodyAviso {
	    padding: 15px;
	}
	.titAviso {
	    font-size: 14px;
	    font-weight: 600;
	}
	.bodyAviso p, .bodyAviso ol {
	    font-size: 13px;
	    margin-bottom: 8px;
	}
	.bodyAviso label {
	    font-size: 14px;
	    line-height: 1.2;
	    font-weight: 800;
    	margin-bottom: 10px;
	}
	.bodyAviso ol {
	    padding-left: 35px;
	}
	.footerAviso .form-check label {
	    font-size: 14px;
	    line-height: 1.1;
	    width: 95%;
	}
	.footerAviso .form-check {
	    width: 75%;
	    margin: 20px auto;
	    margin-bottom: 0;
	}
}
@media all and (max-width: 420px){
	.headAviso img {
	    width: 30px;
	    left: 10px;
	}	
	.headAviso p {
		width: 100%;
	    font-size: 15px;
	}
}
#form-prerregistro li.nav-item{
	width: 50%;
}
#form-prerregistro li.nav-item .nav-link{
	background: #fff;
	text-align: center;
	height: 60px;
	font-weight: 500;
	padding: 17px;
}
#form-prerregistro li.nav-item .nav-link.registro{
	border: 2px solid #005046;
	border-radius: 25px 0 0 0;
}
#form-prerregistro li.nav-item .nav-link.registro.active{
	background: #005046;
}
/* NUEVOS */
#form-prerregistro li.nav-item .nav-link.sesion{
	border: 2px solid #9f1f41;
	border-radius: 0 25px 0 0;
	padding: 5px;
}
#form-prerregistro li.nav-item .nav-link.sesion.active{
	background: #9f1f41;
}
#tabla-hijos td.tit{
	text-align: left;
    width: 90px;
    color: #BB965C;
    font-size: 16px;
    font-weight: 600;
    vertical-align: middle;
}
#tabla-hijos .table-responsive{
	width: 70%;
}
#tabla-hijos tr th{
    color: #235B4E;
    border-bottom: 2px solid #235B4E;
}
#form-prerregistro .tab-content{
	padding: 20px;
	background: #fff;
	box-shadow: 0 0 5px black;
	border-radius: 0 0 25px 25px;
}
#form-prerregistro .tab-content-bis{
	padding: 50px;
	background: #fff;
}
.boxConfirma{
    width: 550px;
    margin: auto;
    margin-top: 140px;
    background: #235B4E;
    color: #fff;
    border-radius: 25px;
    padding: 20px;
    text-align: center;
}
@media all and (max-width: 1200px){
	#boxInfo {
	    width: 42%;
	}
	#boxCont {
	    width: 58%;
	}
	.limitForm {
	    width: 90%;
	}
	#form-prerregistro li.nav-item .nav-link {
	    padding: 20px 12px;
	}
	.alertGral{
		min-width: 550px;
	}
}
@media all and (max-width: 992px){
	#boxInfo {
	    width: 35%;
	    float: left;
	}
	#boxCont {
	    width: 65%;
	    float: left;
	}
	#form-prerregistro li.nav-item .nav-link {
	    padding: 10px;
	}
	.label-ghost {
	    display: block;
	}
}
@media all and (max-width: 850px){
	#boxInfo {
	    width: 100%;
	}
	#boxCont {
	    width: 100%;
	}
	.limitForm {
	    width: 90%;
	    margin:auto;
	}
	#form-prerregistro li.nav-item .nav-link {
	    padding: 17px 10px;
	}
	.container, .container-sm {
	    max-width: 100%;
	}
}


#templateDer .admin-usuarios{
  width: min(1100px, 100%);
  margin: 0 auto;
  padding-top: 10px;
}


/* Centro (título + l-div) */

/* Filtro centrado, más compacto */
#templateDer .admin-usuarios .subenun{
  width: min(900px, 100%);
  margin: 12px auto 18px;
}
#templateDer .admin-usuarios #FiltroUsuarioInput{
  height: 42px;
  border-radius: 10px;
  background: #F0F0F0;
  border: 2px solid #d2d1d1;
  padding: 0 16px;
}
#templateDer .admin-usuarios #FiltroUsuarioInput:focus{
  background: #fff;
  border-color: #235B4E;
}

#templateDer .admin-usuarios #bandejaUsu{
  width: min(980px, 100%);
  margin: 0 auto;
}

@media (min-width: 992px){
  #templateDer .admin-usuarios{
    padding-top: 6px;
  }
}



/**nuevo**/


.page-header{
  display: grid;
  grid-template-columns: 1fr auto 1fr; /* izq vacío, centro título, der acciones */
  align-items: center;
  gap: 16px;

  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.page-header .page-title{
  grid-column: 2;
  justify-self: center;
  text-align: center;
}

.page-header .page-actions{
  grid-column: 3;
  justify-self: end;
}

.page-title{ flex: unset; }

