/*+clearfix {*/
form#login:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    font-size: 0;
}

form#login {
    display: block;
    *height: 1px;
}

/*+}*/
* {
    margin: 0;
    padding: 0;
    /*color: #555555;*/
}

body.ganaderos #contenido {
    font-size: 0.75rem;
    margin-top: 50px;
    overflow-x: auto;
}

body.ganaderos #contenido h2 {
    font-family: Play, Helvetica, sans-serif;
    font-size: 1.5rem;
    color: #000;
    float: none;
    margin-bottom: 0;
    width: auto;
    display: inline-block;
}

body#login_ganadero.ganaderos h2 {
    text-align: center;
    display: block;
}

#vacas_ganadero #contenido h2, #acoplamiento #contenido h2 {
    margin-bottom: 20px;
}

.minicabecera + p {
    margin-bottom: 20px;
}

.ganaderos .botonera_usuario {
    float: right;
}

.ganaderos .botonera_usuario a {
    background-color: #656668;
    color: #FFF;
    padding: 2px 30px;
    /*margin-left: 20px;*/
    cursor: pointer;
    border: none;
}

a {
    text-decoration: none;
}

button, .btn {
    background-color: #656668;
    color: #FFF;
    padding: 2px 30px;
    margin-left: 20px;
    cursor: pointer;
    border: none;
}

button[disabled] {
    opacity: 0.5;
}

:focus, :active {
    outline: 0;
}

button::-moz-focus-inner {
    border-color: transparent;
}

button:active, .boton:active {
    outline: 1px solid #B3B4B3;
}

select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #555;
}

/* Para el dropdown de los select del ff */
select.ff_dropdown {
    -moz-appearance: none;
    padding-right: 17px;
}

span.ff_dropdown {
    margin-left: -30px;
    font-size: 10px;
    pointer-events: none;
    vertical-align: middle;
    margin-right: 20px;
}

input {
    border: 1px solid #C9C9C9;
    padding: 5px;
}

select {
    border: 1px solid #C9C9C9;
    font-size: 12px;
}

select:focus, input:focus {
    outline: none;
    box-shadow: 0px 0px 2px #BD1B14;
    border-color: #BD1B14;
}

/* MENSAJES AL USUARIO */
.mensaje {
    color: #4D9604;
    background-color: #EAFFD5;
    border: 1px solid #6C0;
    padding: 8px 0;
    text-align: center;
    width: 90%;
    margin: 20px auto;
}

.mensaje.error {
    background-color: #FFD5D5;
    border: 1px solid #C00;
    color: #7F0505;
}

/* LOGIN */
/*[clearfix]*/
form#login {
    margin: 0 auto;
    width: 350px;
    line-height: 1.5;
}

form#login label {
    display: block;
    margin: 15px 0;
}

form#login input {
    float: right;
}

form#login label > span {
    display: inline-block;
    /*padding: 5px 0;*/
    vertical-align: top;
}

form#login > div:last-of-type {
    float: right;
}

form#login #acceso a {
    font-size: 85%;
    opacity: 0.7;
}

form#login button {
    background-color: #656668;
    color: #FFF;
    padding: 2px 30px;
    margin-left: 20px;
}

#login_ganadero .idiomas {
    text-align: right;
    margin: 0 20px;
    font-size: 0.75rem;
}

/**/
form#nuevo_ganadero {
    margin: 60px auto;
    width: 350px;
    line-height: 1.5;
}

form#nuevo_ganadero label {
    display: block;
    margin: 15px 0;
}

form#nuevo_ganadero label > span {
    display: inline-block;
    /*padding: 5px 0;*/
    vertical-align: top;
}

form#nuevo_ganadero input:not([type=checkbox]) {
    float: right;
}

form#nuevo_ganadero input[type=checkbox] {
    margin-top: 20px;
}

form#nuevo_ganadero button {
    background-color: #656668;
    color: #FFF;
    padding: 2px 30px;
    margin: 0 auto;
    display: block;
}

form#nuevo_ganadero a {
    text-decoration: underline;
}

form#nuevo_ganadero h3 {
    text-align: center;
}

/**/
.ganaderos table {
    border-collapse: collapse;
    background: #F3F3F3;
    width: 100%;
}

#cont_tabla {
    overflow: auto;
    max-height: 500px;
    margin: 30px 0;
}

#preseleccion_toros #cont_tabla {
    width: 100%;
    overflow: auto;
    max-height: 500px;
}

#preseleccion_toros table {
    width: 100%;
}

.ganaderos .tablesorter thead th:not(.sorter-false) {
    cursor: pointer;
}

#vacas_ganadero table {
    width: 100%;
}

.ganaderos thead tr > * {
    color: #FFF;
    background: var(--color-primario);
    text-align: center;
    white-space: nowrap;
    padding: 0 10px;
}

.ganaderos tbody td {
    text-align: center;
    color: #555555;
    white-space: nowrap;
    padding: 0 10px;
}

.ganaderos table {
    overflow: auto;
    height: 100px;
}

.ganaderos thead th {
    position: sticky;
    top: 0;
    /*Idea estupenda para dejar fija la cabecera*/
    /*de https://stackoverflow.com/questions/47723996/table-with-fixed-thead-and-scrollable-tbody*/
}

#preseleccion_vacas td:first-child, #preseleccion_toros td:first-child {
    width: 20px;
}

.ganaderos tbody tr:nth-child(2n) td {
    background: #FFFFFF;
}

.ganaderos tbody td a {
    text-decoration: underline;
}

.ganaderos #pie {
    margin-top: 30px;
}

:not(.sorter-false).tablesorter-headerDesc div:after {
    content: "▼";
    /*float: right;*/
    /*margin-right: 10px;*/
    /*margin: 0 10px;*/
    font-size: 0.5rem;
    line-height: 1rem;
    width: 10px;
}

:not(.sorter-false).tablesorter-headerAsc div:after {
    content: "▲";
    /*float: right;*/
    /*margin-right: 10px;*/
    /*margin: 0 10px;*/
    font-size: 0.5rem;
    line-height: 1rem;
    width: 10px;
}

:not(.sorter-false).tablesorter-headerUnSorted div:after {
    content: "▲▼";
    content: "◀▶";
    display: inline-block;
    transform: rotate(90deg);
    /*float: right;*/
    /*margin-right: 10px;*/
    /*margin: 0 10px;*/
    font-size: 0.4rem;
    line-height: 1rem;
    width: 10px;
    vertical-align: text-bottom;
}

/*PRESELECCION PRUEBAS*/
#preseleccion_pruebas label {
    display: block;
}

#preseleccion_pruebas form {
    margin-left: 50px;
}

#preseleccion_pruebas button, .ganaderos table + button {
    margin-top: 20px;
    padding: 7px 30px;
}

/*#preseleccion_vacas button, #preseleccion_toros button {
  position: fixed;
  bottom: 170px;
  margin-left: 50px;
  box-shadow: 1px 5px 23px 1px #000;
  (*left: 50%;*)
  (*margin-left: -450px;*)
  background: var(--color-primario);
  padding: 10px 30px;
  text-transform: uppercase;
  font-size: 1rem;
}*/
#preseleccion_vacas .f_vacas button, #preseleccion_toros button {
    background: var(--color-primario);
    padding: 10px 30px;
    text-transform: uppercase;
    font-size: 1rem;
    margin: 30px 0 0;
}

#preseleccion_vacas .filtro .edad input {
    width: 65px;
    text-align: center;
}

.filtro {
    margin: 0 0 30px 0;
    display: flex;
    align-items: flex-end;
}

.filtro label .tit {
    display: block;
    line-height: 1;
    margin-bottom: 5px;
}

.filtro label {
    display: inline-block;
    vertical-align: top;
}

.filtro select {
    padding: 7px 5px;
    border-radius: 5px;
}

.filtro .parametros {
    margin: 0 20px 0 30px;
    display: inline-block;
}

.filtro .parametros select {
    display: none;
}

.filtro button {
    padding: 7px 30px;
}

.filtro .select2-container {
    min-width: 400px;
}

.filtro .select2-selection--multiple:before {
    content: "";
    position: absolute;
    right: 10px;
    top: 42%;
    border-top: 5px solid #888;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
}

.filtro .select2-selection--multiple {
    height: 30px;
}

.select2-results__option {
    font-size: 0.75rem;
}

.filtro .select2-container--default .select2-selection--multiple .select2-selection__choice {
    font-size: 0.75rem;
    line-height: 1.3rem;
    margin: 5px 5px 5px 0;
}

/*Grafica de dispersion*/
#grafica_dispersion .filtro .select2-container {
    min-width: 340px;
    margin-right: 20px;
}

#grafica_dispersion .filtro {
    justify-content: center;
}

#grafica_dispersion button {
    padding: 5px 30px;
}

#grafica_dispersion .botonera {
    margin: 50px;
    text-align: center;
}

#grafica_dispersion #logo {
    position: relative;
}

#grafica_dispersion #logo::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(../../imagenes/genex-logo_imprimir.png) no-repeat #FFF;
    background-size: contain;
    opacity: 0;
}

@media print {
    #grafica_dispersion .botonera {
        display: none;
    }
    
    #grafica_dispersion .filtro button {
        display: none;
    }
    
    #grafica_dispersion #piemenu {
        display: none;
    }
    
    #grafica_dispersion #redes {
        display: none;
    }
    
    #grafica_dispersion #pieabajo {
        background: none;
        color: #000;
        padding-top: 20px;
    }
    
    #grafica_dispersion #pieabajo a {
        background: none;
        color: #000;
    }
    
    #grafica_dispersion .filtro .select2-selection__arrow {
        display: none;
    }
    
    #grafica_dispersion p {
        opacity: 0;
        height: 0;
    }
    
    #grafica_dispersion .botonera_usuario {
        display: none;
    }
    
    #grafica_dispersion #menu {
        display: none;
    }
    
    #grafica_dispersion #idiomas {
        display: none;
    }
    
    #grafica_dispersion canvas {
        margin-bottom: 40px;
    }
    
    #grafica_dispersion #logo {
        background-image: none;
        color: #FFF;
        -webkit-print-color-adjust: exact;
        color-adjust:exact !important;
    }
    
    #grafica_dispersion #logo::before {
        opacity: 1;
    }
    
    #grafica_dispersion #contenido {
        margin-top: 0;
    }
}

/*Custom checkbox*/
label.check {
    display: inline-block;
    text-align: left;
    margin: 0 20px 10px 0;
    --ancho-radio: 16px;
}

label.check input {
    display: none;
}

label.check span {
    cursor: pointer;
    position: relative;
    display: inline-block;
    padding-left: calc(var(--ancho-radio) + 8px);
    vertical-align: text-bottom;
}

label.check input:disabled + span {
    display: none;
}

label.check span:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width:var(--ancho-radio);
    height:var(--ancho-radio);
    vertical-align: middle;
    box-shadow: 0px 4px 6px -3px #CCC;
    border-radius: 2px;
    border: 1px solid #CCC;
    color: #000;
    font-size: 1.2rem;
}

label.check input:checked + span:before {
    /*content: "✗";*/
    content: "✓";
}

/**/
#vacas_ganadero #contenido > .btn {
    margin: 0 0 20px 0;
    padding: 7px 30px;
}

#vacas_ganadero .filtro {
    margin: 20px 0;
}

#vacas_ganadero .filtro label {
    margin-right: 20px;
}

#vacas_ganadero .filtro header {
    line-height: 1.6;
}

#vacas_ganadero .filtro select {
    padding: 4px 5px;
    min-width: 100px;
}

#vacas_ganadero .filtro .select2-container {
    min-width: auto;
}

#vacas_ganadero .botonera > * {
    margin-right: 10px;
    margin: 0 10px 10px 0;
}

#vacas_ganadero .botonera .btn {
    display: inline-block;
    line-height: 1.6;
}

#acoplamiento .ficha_descencientes {
    text-decoration: underline;
}

#acoplamiento table {
    width: 100%;
    margin-bottom: 30px;
}

.btn.excel {
    margin: 0;
    background: url(../icono_excel.png) 20px 50% / 20px no-repeat #656668;
    display: inline-block;
    padding-left: 50px;
}

#preseleccion_vacas .btn.excel {
    padding: 4px 30px 4px 50px;
    display: inline-block;
    margin: 30px 0 0;
    vertical-align: top;
    border-right: 1px solid black;
}

#preseleccion_vacas .botonera .btn {
    /*vertical-align: middle;*/
}

#ppublii {
    margin: 20px 0 40px;
}
