td a:hover {
    text-decoration: none;
}
td a {
    cursor: pointer;    
}
#Botones{
    position: sticky;
    top:0;
    padding:10px; 
    z-index:10;
    background-color: #fff;
}
.titulo{
    text-align: center
}
.error i{
    font-size: 1.5em;
}
.error .error-text{
    font-size: 1.5em;
}
@media screen and (min-width: 768px) {
.mt_10 {
  margin-top:10%;
}
}

.rotulo {
    font-weight:bold;
    color:#10418F;
}

button i{
    margin: 3px;
}
.modal {
  text-align: center;
  padding: 0!important;
}

.modal:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -4px;
}

.modal-dialog {
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}


.glyphicon.fast-right-spinner {
    -webkit-animation: glyphicon-spin-r 1s infinite linear;
    animation: glyphicon-spin-r 1s infinite linear;
    font-size: 2em;
    padding: 30px;
}
.msg-wrapper .glyphicon.fast-right-spinner {
    padding: 0;
}  
@-webkit-keyframes glyphicon-spin-r {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

@keyframes glyphicon-spin-r {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}


.instancia input[type="submit"],
.instancia input[type="button"]
{
    white-space: normal;
    margin-bottom:5px;
    min-width: 220px;
}
.instancia{
    text-align: center;
}
.instancia .botonera{
    display: flex;
    justify-content: space-around;    
    flex-wrap: wrap;
}

#borrarFiltro{    
    position: relative;    
    left: -20px;
    top: 2px;
    margin: -6px;
    font-size: 20px;
    cursor: pointer;
    color: #ccc;        
}
/*.tableFixHead{
    max-height:55vh;
    overflow-y:auto;    
}*/
.resultado { height: 60vh; }
.tableFixHead    { overflow-y: auto; height: 60vh; }
.tableFixHead th { position: sticky; top: 0; }

/* Just common table stuff. Really. */
/*table  { border-collapse: collapse; width: 90vw; }*/
th, td { padding: 8px 16px; }
th     { background:#eee; }




.bg-info, .bg-danger, .bg-success{
    padding: 0px 6px;
    border-radius: 4px;
}
.tdup{    
    padding: 5px 3px 0 !important;
    width:10px;
}
.tdbtn{    
    padding: 11px 3px 0 !important;
    width:10px;

}

.tdpeticioncodigo input {    
    width: 90px !important;
    padding: 5px 5px !important;
    height: 22px;
    margin-right: 3px;

}
.tdpeticioncodigo {
    
    padding: 4px !important;
    display: flex;
    flex-wrap: nowrap;
}
@media screen and (max-width: 639px) {
 .tdpeticioncodigo {
    
    padding: 4px !important;
    display: flex;
    flex-wrap: wrap;
}   
}

.tdpeticioncodigo div {
    margin-top: 1px;
}

.tdpeticionnombre  {
    /*width: 50%;*/
}

#Seleccion .icon-item, .nitem{
    width: 10px
}
#Seleccion .cod-item{
    width: 70px;
}
#Seleccion .text-item{
    width: 250px;
}


#opciones .cod-item{
    width: 15%;
    min-width: 25px;
}
#opciones .text-item{
    width: 75%;
}

.icon-item{    
    padding-left: 6px;
    /*border-left: 1px solid #ddd;*/
    margin-left: 5px;
}

#Seleccion .list-group-item{
    display: flex;
    flex-wrap: wrap;

}
#opciones .list-group-item{
    display: flex;
    flex-wrap: wrap;
    
}

/* todo ajustar boton*/
@media screen and (max-width: 768px) {

    #Seleccion .list-group-item{
        display: block;
    }

    #opciones .list-group-item{
        display: block;                
    }   
    #Seleccion .icon-item{
        position: absolute;
        right: 15px;
        top: 12px;
    }
}


.active  {
    background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%) !important;
    background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%) !important;
    filter: progid : DXImageTransform.Microsoft.gradient ( startColorstr = '#ffdff0d8', endColorstr = '#ffd0e9c6', GradientType = 0 ) !important;
    background-repeat: repeat-x !important;
    color: #3c763d !important;
    background-color: #dff0d8 !important;
    border-color: #d6e9c6 !important;
    text-shadow: none !important;
}

#Seleccion .list-group{
    max-height:60vh;
    overflow-y:auto;
}
#opciones .list-group{
    max-height:60vh;
    overflow-y:auto;
}


.list-group-item .nitem{
    padding-right: 6px;
    /*border-right: 1px solid #ddd;*/
    margin-right: 5px;
    font-weight: bold;
}

.list-group-item .cod-item{
    padding-right: 6px;
    /*border-right: 1px solid #ddd;*/
    margin-right: 5px;
    font-weight: bold;
}


.provincias{
    display: flex;
    /*flex-direction: row;*/
    flex-wrap: wrap; 
    justify-content: center;
}

.provincias>div{
        width:100%;
    }
@media screen and (min-width: 768px) {
    .provincias>div{
        width:50%;
    }
}

.provincias>div th{
    text-align: center;
}
/*.provincias>div input{
    width: 50px;
}*/

.anexo{
	border: 1px solid #dddddd; 
    padding:5px;
    margin-bottom: 25px;
}

.col-centered{
    float: none;
    margin: 0 auto;
}

.logo{
    /* https://css-tricks.com/snippets/css/fluid-typography/ 
    font-size: calc([minimum size] + ([maximum size] - [minimum size]) * ((100vw - [minimum viewport width]) / ([maximum viewport width] - [minimum viewport width])));
    */
    height: calc(75px + (90 - 75) * ((100vw - 300px) / (1600 - 300)));    
    float: left;
    margin: 20px 20px 0 5px;
}
.subheader, .header{
    color: white;
    font-family: "ERAS BK BT", sans-serif;
    font-size: calc(14px + (20 - 14) * ((100vw - 300px) / (1600 - 300)));
}
.header{
    font-size: calc(18px + (26 - 18) * ((100vw - 300px) / (1600 - 300)));
    font-weight: bold;
}

.invalid-feedback{
	display:none;
	color:red;
}

.was-validated .form-control:invalid ~.invalid-feedback{
	display:block;

}

.was-validated .form-control:invalid {
    border-color: #dc3545;
}

.was-validated div.label_required {
    border: 1px solid #dc3545;    
    border-radius: 5px;      	
}

/*.required{
    border: 1px solid red;
}*/

.form-group.required label:after{    
    content:" *";
    color:red;
}

.label_required{
	display:inline-block;
	padding:5px;
}
.label_required:before{    
    content:"* ";
    color: red;    
}

.form-group.required .required{
      color: red;
}
@media print {
  /* Contenido del fichero print.css */
  .no-print{
    display:none;
  }
  .item-result{
    page-break-inside: avoid;
  }
}

#seleccion .list-group{
    _max-height:60vh;
    overflow-y:auto;
}
#opciones .list-group{
    _max-height:60vh;
    overflow-y:auto;
}


.list-group-item .nitem{  
    margin-right: 5px;
    font-weight: bold;
}

.list-group-item .cod-item{
    _padding-right: 6px;
    /*border-right: 1px solid #ddd;*/
    _margin-right: 5px;
    font-weight: bold;
}


.textprov {
    width: calc(100% / 8);
    margin: 0 10px 5px 10px;
    margin-bottom: 5px;
    text-align: center;

    border: 1px solid rgb(221, 221, 221);
    width: 100%;
    min-height: 45px;
    border-radius: 5px;
    background-color: #eee;
    opacity: 1;
}

#seleccion .list-group-item{
    display: flex;
    _flex-wrap: wrap;
    justify-content: space-between;    

}
#opciones .list-group-item{
    display: flex;
    _flex-wrap: wrap;
    _flex-grow: 1;
    
}

#seleccion .icon-item{
    width: 35%;
    _border: 1px solid black;
    text-align: center;
}
#seleccion .nitem{
    width: 5%;
    _border: 1px solid black;
}
#seleccion .cod-item{
    width: 10%;
}
#seleccion .text-item{
    width: 70%;
    padding-left: 10px;
}


.provincias input{
    text-align: center;
}



/* tabla de centros */
.columnas{
    _display: flex;
    width: 100%;
    column-count: 2;
    column-fill: balance;
    margin:5px;
}

@media screen and (max-width: 768px){
    .columnas{
        column-count: auto;
    }
    .list-toolbar{
        width: 100%;
        height: auto !important;;
    }
    .filacabecera:last-child{
    display: none;
}
}


.cabecera {
        
    _display: flex;
    _flex-wrap: wrap;
    _flex-direction: column;
    _flex-grow: 1;
    _height: 500px;
    _justify-content: flex-start;
    
}

.filacabecera{

    display: flex;            
    border:none;    
    padding: 5px 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;    
    margin-bottom: 10px;
    background-color:#f9f9f9;
    font-weight: bold;
    
}
.filacabecera>div{
    _width:20%;
    _flex-grow:1;
    _border:1px solid red;
    padding:6px;
}
.fila>div{
    _border:1px solid blue;
}
/*.filacabecera>div.drag-handler{
    width:15px;
}
.filacabecera>div.colN{
    width:35px;
}
.filacabecera>div.colCod{
    flex-grow: 1
}
.filacabecera>div.colText{
    flex-grow: 1
}
.filacabecera>div.colMJ{
    width:35px;
}
*/

div.drag-handler{
    width:15px;
}
div.colN{
    width:25px;    
    text-align: center;
}
.fila>div{
    _margin: 5px 0;
}
div.colCod{
    flex-grow: 1
}
div.colText{
    flex-grow: 5
}
div.colMJ{
    width:45px;
}


@media screen and (max-width: 768px) {
.filacabecera{
        width: 100%;
    }
}

@media screen and (max-width: 768px) {
    
    .fila{
        width: 100%;
    }
    
}
.drag-handler{
      /* display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 15px;
    height: 12px;*/
    width: 3px;
    padding: 2px 14px 0 5px;
    cursor: move;
        float: left;
}
.puntos {
    border: 2px solid grey;
    margin: 2px;
    border-radius: 1px;
}


.fila{
    width: 100%;
    overflow: hidden;
    break-inside: avoid-column;
    -webkit-column-break-inside: avoid;
}

.fila {
  display: flex;          
  align-items: center;
  border: 1px solid #ddd;    
  background-color: white;
  margin: -1px 5px 0 0;
  cursor: pointer;
}


.list-toolbar{
    display:flex;
    justify-content: space-between;
    align-items: center;
    padding:5px;    
    margin-bottom: 5px;
  color: #3c763d;
  background-color: #dff0d8;
  border: 1px solid #d6e9c6;
  font-weight: bold;
  height: 50px;

 
}
.list-toolbar-msg{
    display:flex;
    justify-content: space-between;
    
    padding:5px;    
    margin-bottom: 5px;
  color: #3c763d;
  background-color: #dff0d8;
  border: 1px solid #d6e9c6;
  font-weight: bold;
  /*height: 50px;*/
  flex-flow: column;
}

.lst-toolbar-default{
    justify-content: center;
}

@media screen and (min-width: 438px){
    .toolbarCentros {
        width: 50%;
    }    
}

@media screen and (max-width: 438px){
    .columnas{
        column-count: auto;
    }
    .list-toolbar, {
        width: 100%;
        height:auto;
    }
    .list-toolbar .btn {
        padding: 1px 5px;
        font-size: 12px;
        line-height: 1.5;
        border-radius: 3px;
    }
}
.list-toolbar div, button, span{
    _margin-right: 25px;
}

.list-toolbar .msg-wrapper{
    display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
.list-toolbar  #nListSel{
    text-align:right;
 
}

.msgConfirm{
    text-align: center;
}

.rota45{
    transform-origin: center;
    transform: rotate(45deg);
}
.rota90{
    transform-origin: center;
    transform: rotate(90deg);
}
.rota180{
    transform-origin: center;   
    transform: rotate(180deg);
}

.lstTbody .active{
    border: 2px solid #3e8f3e!important;
    border-radius: 5px;
    margin: 1px 0 !important;    
    /*background-color: #dff0d8 !important;
    background-image: none !important;*/
}

.toolbarsCentros{
    position: sticky;
    top: 53px;
    z-index: 8;
    background: white;
    padding: 3px;
    _height: 50px;    
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    flex-grow: 1;
}

@media screen and (max-width: 560px){
    .toolbarsCentros{
        top:85px;
    }
    .toolbarsCentros>div{
        width:100%;
    }
}



.toolbarsCentros>div{
    
    margin: 0 5px;
    background-color: #fff;
    flex-grow: 1;
    width:33%;
}
@media screen and (max-width: 640px){    
    .toolbarsCentros>div{
        width:100%;
    }
}



/*seleccion de centros*/

.toolbar-right{
    display:flex;
    align-items: center;
    justify-content: flex-end;
}
.toolbar{
    display:flex;
    align-items:baseline;
    flex-wrap: wrap;
    justify-content: space-between;
}
#menuMJ > li > a > i{
    visibility:hidden;
}
#menuMJ > li > a.selected > i{
    visibility:visible;
}

.loading{
    display: block;
    text-align:center;
    font-size:26px;
}

.glyphicon-spin {

    -webkit-transform-origin: 50% 46%;
    transform-origin:50% 46%;
    -ms-transform-origin:50% 46%; /* IE 9 */
    

    -webkit-animation: spin 1000ms infinite linear;
     -moz-animation: spin 1000ms infinite linear;
     -o-animation: spin 1000ms infinite linear;
     animation: spin 1000ms infinite linear;
}
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
/*.cuadro td{
    border: 1px solid red;
}*/

h4.puesto+div {
    padding-left: 45px;
}
@media screen and (max-width: 640px){    
    h4.puesto+div {
        padding-left: 0px;
    }
}

h4.puesto+div table{
    border-bottom:1px solid #ddd;
}

h4.puesto{
 border-bottom:1px solid #ddd;   
}

.is-invalid{
    border-color: #dc3545;
}
div.is-invalid{
    color: #dc3545;
}

#collapseButton:before{
font-family: 'Glyphicons Halflings';  /* essential for enabling glyphicon */
    _content: "\e114 ";    /* adjust as needed, taken from bootstrap.css */
    content:"\e072";
    margin-right: 10px;    
}

#collapseButton:not(.collapsed):before {
    /* symbol for "collapsed" panels */
    _content: "\e080 ";    /* adjust as needed, taken from bootstrap.css */
    content:"\e072";    
    display: inline-block;
    transform-origin: center;
    transform: rotate(90deg);

}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Opera and Firefox */
}