:root {
  --color_destacado: #474747;
  --color_destacado_transparente: #e9ad464d;
  --gris_muy_oscuro:#222;
  --gris:#999;
  --gris_claro:#CCC;
  --gris_mas_claro:#EBEBEB;
  --gris_muy_claro: #FBFBFB;
  --c1: #FF871D;
  --c2: #636363;
  --c3: #999;
  --b_radius: 3px;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  color: #444;
}
body {
  padding: 0;
  margin: 0;
  font-size: 14px;
  font-family: Roboto, Arial, sans-serif;
  font-weight: 300;
}
main {
  padding: 20px 30px 60px;
  /*overflow: hidden;*/
  max-width: 1360px;
  margin: 0 auto;
}
a {
  text-decoration: none;
  color: inherit;
}
b, strong {
  font-weight: 500;
  font-size: inherit;
  color: inherit;
}
optgroup > option {
  padding-left: 20px;
}
button {
  border: none;
  cursor: pointer;
  background-color: transparent;
}
:focus, :active {
  outline: 0;
}
button::-moz-focus-inner {
  border-color: transparent;
}
button:active, .boton:active {
  outline: 1px solid #636663;
}
select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #555;
}
fieldset {
  border: 1px solid #CCC;
  margin: 30px 0;
  padding: 15px;
}
fieldset legend {
  padding: 0 10px 0 5px;
  font-weight: bolder;
  letter-spacing: 0.5px;
}
th {
  font-weight: 300;
}
.sombra {
  box-shadow: 3px 1px 4px 0px #DDD, -3px -1px 4px 0px #DDD;
}
form ul {
  margin: 5px 0 15px 15px;
}
.w_info > * {
  margin-bottom: 30px;
  padding: 20px;
}
h1, h2, h3 {
  font-weight: 500;
}
/*pHeader*/
.pHeader {
  margin: 0 auto 30px;
  padding: 20px 30px;
  max-width: 1360px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #CCC;
}
.pHeader figure {
  flex: 1;
  height: 50px;
}
.pHeader img {
  height: 100%;
}
.pHeader a {
  margin: 0 20px;
}
.pHeader a, .pHeader button {
  background: url(../imgs/enterprise.svg) 10px 6px / 25px no-repeat;
  background-color:var(--c1);
  font-weight: 400;
  color: #FFF;
  border-radius:var(--b_radius);
  text-transform: uppercase;
  padding: 12px 15px 12px 45px;
}
.pHeader button {
  background-image: url(../imgs/logout.svg);
  background-size: 18px;
  background-position: 12px 11px;
}
/*Z-INDEX: prioridad cabecera o nav, depende del logo*/
main {
  z-index: 1;
}
#nav_interno {
  z-index: 2;
}
#cabecera {
  z-index: 3;
}
/*form simples*/
input, textarea, select {
  border: 1px solid #EAEAEA;
  padding: 3px;
  /*min-width: 250px;*/
  /*margin-top: 1px;*/
  border-radius:var(--b_radius);
}
input:focus {
  border-bottom: 1px solid #C9C9C9;
}
input.numero {
  text-align: right;
}
select:focus, input:focus {
  /* #TODO colores del outline*/
  /*outline: none;*/
  /*box-shadow: 0px 0px 2px #E40047;*/
  /*border-color: #FF97B7;*/
}
/* MENSAJES AL USUARIO */
.mensaje {
  color: #000000;
  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;
}
.msg {
  display: none;
  color: #000000;
  background-color: #EAFFD5;
  border-left: 2px solid #6C0;
  border-radius:var(--b_radius);
  padding: 8px 20px;
  width: 500px;
  margin: 20px 0;
}
.mensaje.error {
  background-color: #FFD5D5;
  border: 1px solid #C00;
}
/*/ MENSAJES AL USUARIO */
body > footer {
  background-color: #F1F1F1;
  margin-bottom: 40px;
  display: none;
}
body > footer p {
  padding: 22px 20px;
}
#cabecera {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 39px;
  background-color: #000;
  display: flex;
  align-items: center;
}
#cabecera #logo {
  width: 200px;
  background: #000;
  /*background: url(/imgs/logo.svg) 50% / 100% no-repeat;*/
  /* background: #18181A; */
}
#cabecera #logo img {
  width: 100%;
  padding: 10px 30px 5px;
  display: block;
  margin: 0 auto;
  top: 30px;
  position: relative;
  background: #000;
}
#cabecera nav {
  list-style-type: none;
  padding: 0;
}
#cabecera nav ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
#cabecera nav li {
  display: inline-block;
  line-height: 39px;
  padding: 0 20px;
  text-align: center;
  background-image: url('../imgs/separador_navegacion.png');
  background-repeat: no-repeat;
  background-position: right bottom;
}
#cabecera nav li[sel] {
  background-color:var(--color_destacado);
}
#cabecera nav li:last-child {
  background-image: none;
}
#cabecera nav a {
  color: #FFF;
  text-shadow: 0px 1px 1px #5D5D5D;
  display: block;
  font-size: 17px;
}
#cabecera .id {
  flex: 1;
  text-align: right;
  margin-right: 20px;
}
nav a:hover {
  text-shadow: 5px 5px 10px #000;
}
#nav_interno {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 200px;
  padding: 120px 0px 0 10px;
  background: #18181A;
  color: #FFF;
  /*border-right: 1px solid #EEF3EF;*/
}
#nav_interno a {
  display: block;
  text-transform: uppercase;
  font-size: 13px;
  margin-bottom: 10px;
  padding: 10px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
#nav_interno a[sel] {
  background: url(../imgs/marcador.png) 95% 50% no-repeat #474747;
}
main > h2:first-letter {
  text-transform: capitalize;
}
main > h2 {
  color: #636663;
  font-size: 20px;
  margin-bottom: 20px;
  font-weight: 400;
}
#filtro, .filtro {
  text-align: right;
  /*! margin-bottom: 20px; */
}
#filtro input, .filtro input, #usuarios #cambioPass input {
  padding: 4px;
  font-size: 12px;
}
#filtro button, .filtro button, #usuarios #cambioPass button, #contenido_datos_usuario button {
  padding: 4px 19px;
  font-size: 12px;
  color: #FFF;
  border-radius:var(--b_radius);
}
#filtro a {
  display: inline-block;
  color: #FFF;
  font-size: 18px;
  line-height: 40px;
  background-color: #636663;
  min-width: 173px;
  text-align: center;
  padding: 0 10px;
  vertical-align: -20px;
}
#usuarios #cambioPass .cancelar {
  vertical-align: middle;
  margin-left: 10px;
  text-decoration: underline;
  cursor: pointer;
}
#borde_radio {
  position: fixed;
  top: 39px;
  left: 200px;
  height: 15px;
  width: 15px;
  background: #18181A;
  z-index: 1;
}
.tienda #borde_radio {
  background:var(--color_destacado);
}
#borde_radio:after {
  content: "";
  position: fixed;
  top: 39px;
  left: 200px;
  height: 15px;
  width: 15px;
  background: #FFF;
  border-top-left-radius: 14px;
  z-index: 2;
}
/** NUEVO USUARIO */
/* CATEGORIAS */
#filtro {
  margin-bottom: 30px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  max-width: 1300px;
}
#categorias {
  background: #F0F0F0 none repeat scroll 0% 0%;
  float: left;
  width: 400px;
  margin-right: 20px;
}
#categorias a:hover {
  text-decoration: underline;
}
#categorias > ul > li > a::before {
  content: url(../imgs/desplegar.gif);
  margin-right: 5px;
}
#categorias > ul > li.seleccionada > a::before {
  content: url(../imgs/replegar.gif);
}
#categorias h3 {
  color: #FFF;
  background-color: #2B2A29;
  padding: 6px;
  font-size: 12px;
  font-weight: 500;
}
#categorias ul {
  list-style-type: none;
  /*! padding: 0px; */
  /*! overflow: hidden; */
  /*! text-align: left; */
  color: #000;
}
#categorias > ul > li {
  padding: 8px 10px;
  border-bottom: 1px solid #CCC;
  font-weight: bold;
  line-height: 1.7em;
}
#categorias li.seleccionada .subcategoria {
  display: block;
}
#categorias li {
  clear: both;
}
#categorias nav {
  float: right;
}
#categorias nav a, #objetos .botonera a {
  margin-left: 5px;
}
.subcategoria {
  margin-top: 5px;
  display: none;
}
.subcategoria li {
  margin: 0 5px 0 20px;
  background: #FDFDFD;
  /*! line-height: 1.7em; */
  padding: 5px 10px;
}
.orden {
  display: inline-block;
  width: 7px;
  height: 16px;
}
.orden.sube {
  background: url(../imgs/subir.gif) no-repeat 50%;
}
.orden.baja {
  background: url(../imgs/bajar.gif) no-repeat 50%;
}
article:first-of-type .orden.sube, article:last-of-type .orden.baja, #banners article:first-of-type .orden.sube, #banners article:last-of-type .orden.baja, li:first-of-type > nav > .orden.sube, li:last-of-type > nav > .orden.baja, #objetos tr:first-of-type .orden.sube, #objetos tr:last-of-type .orden.baja, .tabla_dinamica tr:first-of-type .orden.sube, .tabla_dinamica tr:last-of-type .orden.baja {
  opacity: 0.2;
  pointer-events: none;
  cursor: default;
}
#modificar_imagenes main {
  max-width: 1000px;
  margin-left: 0;
}
#modificar_imagenes #result td {
  padding: 5px;
}
#modificar_imagenes input[type=text] {
  margin-top: 3px;
  width: 100%;
}
#modificar_imagenes input[type=file] {
  margin-right: 20px;
}
#modificar_imagenes .pies {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 10px 0;
}
#modificar_imagenes .pies label {
  display: block;
  flex: 0 calc(33.3% - 10px);
  margin-bottom: 5px;
}
#modificar_imagenes form input.boton {
  padding: 8px 19px 7px;
  color: #FFF;
  background-color:var(--gris_muy_oscuro);
  border: none;
  border-radius: var(--b_radius);
  vertical-align: middle;
  display: inline-block;
  margin-left: 5px;
  font-size: 0.75rem;
}
.TableImagenes {
  width: 100%;
}
h2.TitImagenes {
  margin: 30px 0 10px;
  font-weight: 400;
}
.TableImagenes tr {
  background:var(--gris_mas_claro);
}
.TableImagenes tr td {
  border-bottom:1px solid var(--gris_claro);
}
.TableImagenes tr td:nth-child(4), .TableImagenes tr td:nth-child(5) {
  width: 110px;
  text-align: center;
}
.TableImagenes tr td:nth-child(4) a, .TableImagenes tr td:nth-child(5) a {
  padding: 4px 19px;
  color: #FFF;
  background-color:var(--gris_muy_oscuro);
  border-radius: var(--b_radius);
  vertical-align: middle;
  display: inline-block;
  margin-left: 5px;
  white-space: nowrap;
  font-size: 0.75rem;
}
.TableImagenes tr td:nth-child(3) {
  width: 40px;
}
.TableImagenes tr td:nth-child(1) {
  width: 160px;
}
.TableImagenes tr:nth-child(odd) {
  background:var(--gris_muy_claro);
}
#dropArea {
  background-color: #EEE;
  border: 3px dashed #444;
  line-height: 150px;
  margin: 10px;
  position: relative;
  text-align: center;
}
.idiomas fieldset {
  display: inline-block;
  padding: 10px;
  margin: 0 15px 15px 0;
  border-radius:var(--b_radius);
  vertical-align: top;
}
.idiomas fieldset legend {
  padding: 0 10px 0 5px;
  font-weight: 400;
  letter-spacing: 0.5px;
  font-size: 0.75rem;
}
.botonera button[type="submit"] {
  min-width: 180px;
}
.botonera button, .btn {
  padding: 10px 15px 10px 45px;
  font-size: 12px;
  color: #FFF;
  border-radius:var(--b_radius);
  min-width: 100px;
  cursor: pointer;
  background-color:var(--c2);
  text-align: center;
}
.socios header button {
  background: url(../imgs/add-user.svg) 12px 6px / 25px no-repeat transparent;
  background-color:var(--c2);
}
.socios button#add_socio {
  background:url(../imgs/add.svg) calc(100% - 12px) 50% / 15px no-repeat var(--c2);
  padding: 5px 42px 5px 10px;
  margin-top: 10px;
  margin-left: auto;
  display: block;
}
.botonera button {
  padding: 10px 15px;
  background-color: #000;
  font-size: 0.9rem;
}
#btn_imprimir {
  background: url(../imgs/printer.svg) 7px 5px / 25px no-repeat #EEE;
  font-size: 0.9rem;
  border:1px solid var(--c3);
  color:var(--c2);
}
.botonera .volver {
  background-color: #818181;
}
.listado_categorias h3 {
  margin: 30px 0 15px;
  font-size: 25px;
}
.listado_categorias li {
  list-style-type: none;
  padding: 7px 10px;
}
.listado_categorias span {
  min-width: 250px;
  display: inline-block;
}
.listado_categorias a.btn {
  min-width: auto;
  color: #FFF;
  background-color: #2B2A29;
  vertical-align: middle;
  display: inline-block;
  margin-top: 0;
}
.listado_categorias a.eliminar {
  text-indent: -10000px;
  background: url(/imgs/papelera.svg) 50% / 15px no-repeat #CCC;
}
/** TEMPORALLL borrar al final**/
#migas {
  /*display: none;*/
}
#filtro form {
  float: left;
}
/*#filtro label {
  display: block;
  text-align: left;
  margin-bottom: 5px;
}*/
#filtro button {
  margin-left: 7px;
}
#filtro .btn_nuevo {
  display: inline-block;
  color: #FFF;
  background-color: #636663;
  border-radius:var(--b_radius);
  text-align: center;
  padding: 3px 20px;
  margin-left: 20px;
}
section.listado {
  max-width: 1000px;
}
section.listado article {
  padding: 15px;
  margin-bottom: 15px;
  position: relative;
  background-color: #FBFBFB;
}
section.listado article:nth-of-type(odd) {
  background-color: #EBEBEB;
}
section.listado article h3 {
  font-weight: 400;
}
section.listado article img {
  float: left;
  margin-right: 10px;
}
section.listado article .botonera {
  text-align: right;
  padding-top: 10px;
}
section.listado article .botonera a {
  padding: 4px 19px;
  color: #FFF;
  background-color: #2B2A29;
  border-radius:var(--b_radius);
}
section.listado article .botonera a.novisible {
  background-color: #028F08;
}
section.listado article .botonera a.visible {
  background-color: #D50000;
}
section.listado article .botonera .orden {
  padding: 4px 6px;
}
section.listado article .botonera .orden.sube {
  margin-right: 4px;
}
.nopublicado {
  background-color: #D2463B !important;
}
#blog_articulo .idiomas {
  overflow: hidden;
  margin-top: 20px;
}
#blog_articulo label {
  display: block;
  margin-bottom: 20px;
}
#blog_articulo input, #blog_articulo select, #blog_articulo textarea {
  box-sizing: border-box;
  width: 250px;
  display: block;
}
#blog_articulo .idiomas input, #blog_articulo .idiomas select, #blog_articulo .idiomas textarea {
  width: 100%;
}
#blog_articulo #fecha {
  display: inline-block;
  width: 90px;
  min-width: 0;
  margin-right: 5px;
  pointer-events: none;
}
#blog_articulo .fecha img {
  vertical-align: -10%;
  cursor: pointer;
}
#contenido_articulo .idiomas {
  overflow: hidden;
  margin-top: 20px;
}
#contenido_articulo .idiomas fieldset:last-of-type {
  margin-right: 0;
}
#contenido_articulo .idiomas fieldset {
  /*display: block;*/
  /*float: left;*/
  /*box-sizing: border-box;*/
  /*width: 49%;*/
  /*margin-right: 1%;*/
  max-width: 800px;
  width: 800px;
}
#contenido_articulo .idiomas fieldset legend {
  display: none;
}
#contenido_articulo label {
  display: block;
  margin-bottom: 20px;
}
#contenido_articulo input, #contenido_articulo select, #contenido_articulo textarea {
  box-sizing: border-box;
  width: 250px;
  padding: 4px;
  display: block;
}
#contenido_articulo .idiomas input, #contenido_articulo .idiomas select, #contenido_articulo .idiomas textarea {
  width: 100%;
}
#contenido_articulo .idiomas textarea {
  height: 200px;
}
#contenido_articulo #fecha {
  display: inline-block;
  width: 90px;
  min-width: 0;
  margin-right: 5px;
}
#contenido_articulo .fecha img {
  vertical-align: -10%;
  cursor: pointer;
}
#contenido_articulo.instalaciones .fecha, #contenido_articulo.servicios .fecha, #contenido_articulo.equipo .fecha, #contenido_articulo.residencia .fecha, #contenido_articulo.residencia .volver {
  display: none;
}
.instalaciones .listado .fecha, .equipo .listado .fecha, .servicios .listado .fecha {
  display: none;
}
/****/
/* Para todos las páginas con menú lateral, 
el padding hace que no se corte la sombra de los inputs  */
#contenidos_web .idiomas fieldset {
  display: block;
  /*float: left;*/
  /*box-sizing: border-box;*/
  /*width: 49%;*/
  /*margin-right: 1%;*/
  max-width: 800px;
}
#contenidos_web .idiomas input {
  width: 350px;
}
#contenidos_web .galeria {
  margin: 20px 10px;
}
#contenidos_web .galeria img {
  margin: 10px 20px;
}
.nota {
  margin-bottom: 10px;
  font-style: italic;
  font-size: 12px;
}
.nota + ul {
  margin: -5px 0 20px 30px;
}
.nota + ul li {
  font-size: 12px;
  font-style: italic;
  line-height: 1.5;
}
.nota::before {
  content: "NOTA: ";
  font-weight: bold;
}
.paginacion {
  text-align: center;
  margin-top: 40px;
}
.paginacion a {
  font-size: 15px;
  font-weight: 400;
  margin: 0 100px;
}
/*listado*/
.listado li:first-child {
  border-top: 1px solid #2B2A29;
  margin-top: 30px;
}
.listado li {
  list-style-type: none;
  border-bottom: 1px solid #C0C0C0;
  padding: 33px 0;
}
.listado header > * {
  line-height: 40px;
  margin-right: 20px;
}
.listado header h3 {
  display: inline;
  font-size: 20px;
  font-weight: 400;
  color: #000;
  margin-right: 30px;
}
.listado .botonera > *:not(.ico) {
  display: inline-block;
  padding: 3px 15px;
  margin-right: 10px;
  color: #FFF;
  background-color: #636663;
  cursor: pointer;
  vertical-align: middle;
  border-radius:var(--b_radius);
  font-size: 12px;
  letter-spacing: 0.4px;
  text-decoration: none;
}
.listado .botonera .borrar {
  color: #AAA;
  background-color: #EFEFEF;
}
.listado .botonera {
  margin-top: 10px;
  background: inherit;
}
.listado .botonera .eliminar {
  text-align: left;
  width: 16px;
  height: 16px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(/imgs/papelera.svg) 50% / 15px no-repeat;
  opacity: 0.6;
  padding: 0;
}
.cke_notification_warning .cke_notification_message {
  color: #FFF;
}
.btn_eliminar {
  background: url(/imgs/papelera.svg) 50% / auto 16px no-repeat;
  width: 16px;
  height: 16px;
  display: inline-block;
}
.btn_imgs {
  background: url(/imgs/imagenes.gif) 50% / auto 16px no-repeat;
  width: 16px;
  height: 16px;
  display: inline-block;
}
.btn_clonar {
  background: url(/imgs/clonar.svg) 50% / auto 16px no-repeat;
  width: 16px;
  height: 16px;
}
.btn_pdf {
  background: url(/imgs/pdf.svg) 50% / auto 18px no-repeat;
  width: 16px;
  height: 18px;
  display: inline-block;
}
.btn_excel {
  background: url(/imgs/excel.png) 50% / auto 100% no-repeat;
  width: 18px;
  height: 18px;
  display: inline-block;
  display: block;
}
.btn_editar {
  text-align: left;
  width: 16px;
  height: 16px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(/imgs/modificar.svg) 50% / 15px no-repeat;
  padding: 0;
  display: inline-block;
  cursor: pointer;
}
.btn_add {
  text-align: left;
  width: 16px;
  height: 16px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(/imgs/add_gris.svg) 50% / 15px no-repeat;
  padding: 0;
  display: inline-block;
  cursor: pointer;
}
.btn_fich {
  text-align: left;
  width: 16px;
  height: 16px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(/imgs/clip.svg) 50% / 16px no-repeat transparent !important;
  padding: 0;
  display: inline-block;
}
.btn_fich.subiendo {
  animation: rotating 1s linear infinite;
}
@keyframes rotating {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.btn_visible_1 {
  text-align: left;
  width: 16px;
  height: 16px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(/imgs/visible.svg) 50% / 15px no-repeat;
  padding: 0;
}
.btn_visible_0 {
  text-align: left;
  width: 16px;
  height: 16px;
  text-indent: -10000px;
  overflow: hidden;
  background: url(/imgs/visible_no.svg) 50% / 15px no-repeat;
  padding: 0;
}
.btn_txt {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
  color: #000 !important;
  min-width: auto !important;
}
/*form basico*/
.form_basico {
  padding-top: 2px;
  /*Para que no se corte la sombra en el primer elemento*/
}
.form_basico input[type=text], .form_basico input[type=date], .form_basico input[type=email], .form_basico textarea, .form_basico select {
  display: block;
  margin: 2px 0 0;
  /*width: 400px;*/
  box-sizing: border-box;
  padding: 6px;
  width: 400px;
  max-width: 100%;
}
/*.form_basico [type=checkbox] {
  display: inline-block;
  vertical-align: sub;
  margin: 0 10px 0 0;
  min-width: auto;
  width: auto;
}*/
.form_basico textarea {
  height: 150px;
  width: 400px;
  padding: 6px;
}
.form_basico label {
  display: block;
  margin-bottom: 20px;
}
.form_basico input.n {
  text-align: right;
}
.form_basico label.fich {
  display: block;
  margin-bottom: 20px;
}
.form_basico label.fich .btn {
  margin-right: 5px;
}
.form_basico label.fich input {
  display: none;
}
.form_basico .g2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.form_basico .g2 > * {
  flex: 0 0 49%;
}
.form_basico .g2 input, .form_basico .g2 textarea, .form_basico .g2 select {
  width: 100%;
}
.form_basico .g3 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.form_basico .g3 > * {
  flex: 0 0 32%;
}
.form_basico .g3 input, .form_basico .g3 textarea, .form_basico .g3 select {
  width: 100%;
}
.form_basico .g {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.form_basico .g > * {
  flex: 1;
  margin-right: 10px;
}
.form_basico .g > *:last-child {
  margin-right: 0;
}
.form_basico .g input, .form_basico .g textarea, .form_basico .g select {
  width: 100%;
}
.form_basico .botonera {
  margin-top: 40px;
}
.form_basico [readonly] {
  background: #EEE;
}
/*Mod producto*/
input.modificado {
  color: #0047A9;
  border-color: rgba(0, 71, 168, 0.5);
}
/*DROP*/
.zona_impacto {
  text-align: center;
  margin: 10px 0 20px;
  background: url(/imgs/ico-add-img.svg) 50% 20px / 30px no-repeat #F0F2F8;
  position: relative;
  border-radius: 5px;
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  --color-borde: #999;
  --ancho-borde: 2px;
  --len-borde: 20px;
  background:linear-gradient(90deg, var(--color-borde) 50%, transparent 0), linear-gradient(90deg, var(--color-borde) 50%, transparent 0), linear-gradient(0deg, var(--color-borde) 50%, transparent 0), linear-gradient(0deg, var(--color-borde) 50%, transparent 0), #F0F2F8;
  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y, repeat;
  background-size:var(--len-borde) var(--ancho-borde), var(--len-borde) var(--ancho-borde), var(--ancho-borde) var(--len-borde), var(--ancho-borde) var(--len-borde);
  background-position: 0 0, 0 100%, 0 0, 100% 0;
}
.zona_impacto .fich {
  opacity: 0.6;
  margin-bottom: 0 !important;
  cursor: pointer;
}
.zona_impacto .fich small {
  display: block;
}
.zona_impacto.sobrevolando {
  --color-borde: #FF2B2B;
}
.zona_impacto.subiendo {
  --color-borde: #2B84FF;
  animation: mueve_borde 0.3s infinite linear;
}
@keyframes mueve_borde {
  100% {
    background-position:var(--len-borde) 0, calc(var(--len-borde) * -1) 100%, 0 calc(var(--len-borde) * -1), 100% var(--len-borde);
  }
}
/*documentos*/
#documentos hr {
  border-top: none;
  border-color: #DDD;
  margin: 20px 0 0;
}
/**/
.form_basico .grupo {
  display: flex;
  margin: 10px -10px 15px 0;
}
.form_basico .grupo > * {
  margin-right: 10px;
}
.form_basico .numero {
  width: 70px;
  min-width: auto;
}
.grupo {
  display: flex;
  margin: 10px -10px 15px 0;
}
.grupo > * {
  margin-right: 10px;
}
/*MAPA*/
#Mapa main {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 60px);
  padding-right: 0;
}
#Mapa .btn {
}
#Mapa #map {
  margin: 10px 0 0 -20px;
  height: 100%;
  width: calc(100% + 20px);
  height: 100%;
}
/*CONF GENERAL*/
#Conf_general input:not([type=checkbox]) {
  min-width: auto;
  width: 100px;
  margin: 3px 0 0;
  text-align: right;
}
#Conf_general h3 {
  font-weight: 500;
  font-size: 1.4rem;
}
#Conf_general section {
  border: 1px solid #CCC;
  padding: 15px 20px 20px;
  margin-bottom: 20px;
  width: 850px;
  border-radius:var(--b_radius);
}
#Conf_general .grupo {
  align-items: center;
}
#Conf_general .paises.listado_checks {
  width: 280px;
}
/*Date range picker*/
.date_range .daterangepicker {
  box-shadow: rgb(68, 68, 68) 1px 3px 10px;
}
.date_range .daterangepicker .ranges li.active {
  background-color: #18181A;
}
.date_range .daterangepicker td.in-range {
  background-color: rgba(24, 24, 26, 0.048);
}
.date_range .daterangepicker td.active, #facturas .daterangepicker td.active:hover {
  background-color: #18181A;
}
.date_range #selector_fechas {
  background: url(/imgs/calendario.gif) 95% 50% no-repeat;
  border: 1px solid #DDD;
  padding: 4px 45px 4px 10px;
  box-sizing: border-box;
  margin-right: 10px;
  color: #666;
}
.date_range .disabled {
  opacity: 0.3;
}
/*MODALES*/
.modal.ver {
  transform: scale(1);
  z-index: 9999;
  pointer-events: auto;
  background: rgba(0, 0, 0, 0.5);
}
.modal {
  position: fixed;
  background: none;
  z-index: -1;
  transform: scale(0);
  pointer-events: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  overflow: auto;
  text-align: center;
  transition: background 0.1s linear;
}
.modal .cont_contenido {
  position: relative;
  transform: scaleX(0);
  /*transition: all 0.3s ease-out;*/
  transform-origin: top center;
  top: 45px;
  width: 600px;
  max-width: calc(100% - 10px);
  border-radius:var(--b_radius);
  font-size: 0.875rem;
  background: #FFF;
  padding: 20px 15px;
  color: #000;
  text-align: left;
  display: inline-block;
}
.modal.ver .cont_contenido {
  transform: scale(1);
  transition: all 0.3s linear;
}
.modal .cerrar {
  position: absolute;
  top: 10px;
  right: 10px;
  font-weight: 700;
  font-size: 2rem;
  cursor: pointer;
  line-height: 0.5;
  color:var(--c5);
  z-index: 999999;
}
body.body_modal .cont_body {
  /*filter: blur(1px);*/
}
body.body_modal {
  overflow: hidden;
  /*padding-right: 17px;*/
}
/*IMPRIMIR*/
.impresion {
  display: none;
}
/**/
.dataTable .botonera > *:not(:last-child) {
  margin-right: 10px;
}
.botonera .ico {
  background: none;
}
/*Custom checkbox*/
label.check {
  display: inline-block;
  text-align: left;
  margin: 0 20px 10px 0;
  --ancho-radio: 14px;
}
label.check input {
  display: none;
}
label.check span {
  cursor: pointer;
  position: relative;
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start;
  white-space: nowrap;
  font-size: 0.8rem;
}
label.check input:disabled + span {
  display: none;
}
label.check span:hover:before {
  box-shadow:0px 0px 2px 0px var(--color_destacado);
}
label.check span:before {
  /*content: "✗";*/
  content: "✓";
  display: inline-flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  width:var(--ancho-radio);
  height:var(--ancho-radio);
  box-shadow: 0px 4px 6px -3px #CCC;
  border-radius:var(--b_radius);
  border:1px solid var(--color_destacado);
  font-size: 1rem;
  color: transparent;
}
label.check input:checked + span:before {
  color:var(--color_destacado);
}
.listado_checks {
  /*height: 300px;*/
  min-width: 230px;
  overflow-y: auto;
  border: 1px solid #CCC;
}
.listado_checks .check {
  display: block;
  padding: 10px;
  width: 100%;
  margin-bottom: 0;
  border-bottom: 1px solid #CCC;
}
.listado_checks .check:nth-child(even) {
  background: #F4F4F4;
}
.listado_checks .check.guardada + .check:not(.guardada) {
  border-top: 2px solid #000;
}
.listado_checks .grp > span {
  font-weight: 500;
  padding: 5px;
  font-size: 0.8rem;
  border-bottom: 1px solid #CCC;
  display: block;
}
.listado_checks .grp .check {
  padding-left: 25px;
}
.listado_checks .grp .check:last-child {
  border-bottom: none;
}
.listado_checks .grp:not(:last-of-type) {
  border-bottom: 1px solid #000;
}
/*TABLA DINAMICA*/
.tabla_dinamica {
  font-size: 0.8rem;
  line-height: 1.3;
  max-width: 1300px;
}
.tabla_dinamica .dataTables_wrapper {
  margin: 0 0 40px 0;
}
.tabla_dinamica .dataTables_length {
  font-size: 12px;
}
.tabla_dinamica .dataTables_length select {
  min-width: auto;
  font-size: 12px;
  padding: 0;
}
.tabla_dinamica .dataTables_filter {
  float: right !important;
  margin-bottom: 15px !important;
}
.tabla_dinamica .dataTables_filter input {
  min-width: auto;
  padding: 2px 5px;
}
.tabla_dinamica .dataTables_info {
  font-size: 80%;
}
.tabla_dinamica .dataTables_paginate .paginate_button {
  font-size: 0.75rem;
}
.tabla_dinamica .botonera {
  width: 0;
  white-space: nowrap;
}
.tabla_dinamica .botonera > * {
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  margin-left: 5px;
}
.tabla_dinamica .botonera > *:not(:empty) {
  padding: 4px 19px;
  color: #FFF;
  background-color: #2B2A29;
  border-radius:var(--b_radius);
  vertical-align: middle;
  display: inline-block;
  margin-left: 5px;
  font-size: 0.75rem;
}
.tabla_dinamica .dataTable th {
  font-weight: 500;
  padding: 6px 19px 6px 10px;
  font-size: 0.8rem;
}
.tabla_dinamica .dataTable th:not(:last-child) {
  border-right: 1px solid #CCC;
}
.tabla_dinamica .dataTables_length {
  margin: 5px 0px;
  display: inline;
}
.tabla_dinamica tfoot {
  margin: 5px 0px;
  display: inline;
}
.tabla_dinamica .dataTables_info {
  font-size: 80%;
}
.tabla_dinamica .dataTables_paginate {
  transform: scale(0.8);
  transform-origin: right;
}
.tabla_dinamica .dataTables_filter {
  /*margin: 5px 0px 5px 50px;*/
}
.tabla_dinamica tbody tr.even {
  background: #F5F5F5;
}
.tabla_dinamica tbody tr.odd {
  background: #FFF;
}
.tabla_dinamica tbody tr:hover {
  background: #F9F1CA;
}
.tabla_dinamica td {
  border-right: 1px solid #DBDBDB;
  border-top: 1px solid #DBDBDB;
  text-align: left;
}
.tabla_dinamica .w0 {
  width: 0;
  white-space: nowrap;
}
.tabla_dinamica .L {
  text-align: left;
}
.tabla_dinamica .R {
  text-align: right;
}
.tabla_dinamica .C {
  text-align: center;
}
.tabla_dinamica .n {
  text-align: right;
  white-space: nowrap;
}
.tabla_dinamica .dataTable {
  border-bottom: 1px solid #111;
  max-width: 100%;
}
.tabla_dinamica .dataTable td:last-child {
  border-right: none;
}
.tabla_dinamica .conimg {
  white-space: nowrap;
  text-align: left;
}
.tabla_dinamica .conimg figure {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px 0 0;
}
.tabla_dinamica .conimg img {
  display: block;
  width: 30px;
  border-radius:var(--b_radius);
  transition: 0.2s;
  transform-origin: left;
}
.tabla_dinamica .conimg figure:hover img {
  transform: rotatez(45deg);
  transform: scale(10);
  position: relative;
  z-index: 9999;
  box-shadow: 0 2px 4.5px rgba(0, 0, 0, 0.2);
}
.dt-button.buttons-excel {
  background: #217346;
  padding: 5px 15px;
  border-radius:var(--b_radius);
  margin-bottom: 10px;
  font-size: 80%;
}
.dt-button.buttons-excel span {
  color: #FFF;
  font-size: 0.8rem;
}
/*Tablas*/
.w_tabla table {
  border-collapse: collapse;
  font-size: 0.75rem;
  width: 100%;
  max-width: 1300px;
}
.w_tabla th {
  background: #BEBEBE;
  padding: 20px;
  font-weight: bolder;
  border: 1px solid #B5B5B6;
}
.w_tabla td {
  padding: 20px;
  border: 1px solid #EDEEEF;
}
.w_tabla td a:hover {
  text-decoration: underline;
}
.w_tabla tr:nth-child(odd) td {
  background: #F2F2F2;
  border: 1px solid #E1E2E3;
}
.w_tabla td.estado {
  font-weight: bolder;
}
.w_tabla td.estado .nueva {
  background: #916ADC;
  padding: 3px 20px;
  color: #FFF;
  border-radius:var(--b_radius);
}
.w_tabla .contenedor {
  margin-top: 5px;
  font-size: 90%;
  color:var(--c2);
  font-weight: 500;
}
.w_tabla td.estado small {
  display: block;
  white-space: nowrap;
  margin-top: 5px;
  background: var(--c2);
  padding: 3px 10px;
  color: #FFF;
  border-radius:var(--b_radius);
}
.w_tabla td.botonera {
  white-space: nowrap;
  width: 1px;
  text-align: right;
}
.w_tabla .L {
  text-align: left;
}
.w_tabla .C {
  text-align: center;
}
.w_tabla .R {
  text-align: right;
}
.w_tabla td.botonera > * {
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  margin: 0 5px;
}
.w_tabla .paginador {
  margin-top: 20px;
}
table.dataTable tbody tr.operacion_reduccion td {
  border-top:1px solid var(--c2);
}
table.dataTable tbody tr.operacion_reduccion td:first-of-type {
  border-top: 1px solid #DBDBDB;
}
/*METAS*/
#metas fieldset {
  width: 500px;
}
#metas label {
  margin-bottom: 20px;
  display: block;
}
#metas input {
  width: 100%;
}
#metas textarea {
  width: 100%;
  height: 100px;
}
/*DESPLEGABLES*/
.desplegable {
  position: relative;
  background: white;
}
.desplegable > .desplegable_titulo {
  position: relative;
  background: url(/imgs/desplegar.svg) 95% 55% / 16px auto no-repeat white;
  padding: 6px 30px 6px 6px;
  cursor: pointer;
  border: 1px solid #CCC;
  border-radius:var(--b_radius);
  display: inline-block;
}
.desplegable.ver > .desplegable_titulo {
  background: url(/imgs/plegar.svg) 95% 50% / 16px auto no-repeat white;
}
.desplegable > .desplegable_cont {
  display: none;
}
.desplegable.ver > .desplegable_cont {
  display: block;
  position: absolute;
  background: #FFF;
  box-shadow: 1px 3px 9px -4px #000;
}
/*ADD SOCIO*/
.mOperacion_mod .fila_maestra .no_en_maestra {
  display: none;
}
.mOperacion_mod .fila_real .no_en_real {
  display: none;
}
/*header interno*/
.sHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 30px 0;
}
.sHeader h1 {
  margin: 0;
}
/*EMPRESA mod*/
.mEmpresa_mod .form_basico {
  width: 800px;
}
.mEmpresa_mod .ficheros [disabled] {
  pointer-events: none;
  opacity: 0.5;
}
/*EMPRESAS*/
.mEmpresas .datos_mas_info {
  position: relative;
  /*background:var(--gris_muy_claro);*/
  margin: -8px -10px;
  padding: 20px 0;
  border-bottom: 3px solid;
  background: #F6F3E1;
  text-align: center;
}
.mEmpresas .datos_mas_info .botonera {
  position: absolute;
  top: 10px;
  right: 10px;
  width: auto;
}
.mEmpresas .datos_mas_info .cebra {
  border: 1px solid #CCC;
}
.mEmpresas ul.cebra {
  display: inline-block;
  min-width: 250px;
}
.mEmpresas ul.cebra a {
  text-decoration: underline #999;
}
.mEmpresas ul.cebra li {
  list-style: none;
  display: flex;
  padding: 8px 10px;
  background: #F9F9F9;
}
.mEmpresas ul.cebra li:nth-child(odd) {
  background: #EEE;
}
.mEmpresas ul.cebra li strong {
  list-style: none;
  margin-right: 10px;
  text-align: left;
  white-space: nowrap;
}
.mEmpresas ul.cebra li span {
  text-align: right;
  width: 100%;
}
.mEmpresas ul.cebra.escrituras {
  vertical-align: top;
  margin-left: 50px;
}
.mEmpresas .w-info {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
  font-size: 0.75rem;
}
.mEmpresas .w-info h2 {
  margin-bottom: 20px;
  height: 10px;
}
.mEmpresas .w-info section {
  flex: 0 0 30%;
}
.mEmpresas .w-info section .cebra {
  width: 100%;
}
.mEmpresas .tabla_dinamica {
  margin-bottom: 60px;
}
.mEmpresas .tabla_dinamica header {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  margin-top: 70px;
  justify-content: space-between;
}
.mEmpresas .tabla_dinamica header h2 {
  margin-right: 20px;
  font-size: 1.2rem;
  padding: 15px 15px 15px 0;
}
.mEmpresas .tabla_dinamica header a {
  padding: 12px 15px 12px 45px;
  background: url(../imgs/note.svg) 11px 7px / 25px no-repeat #333;
  font-size: 0.85rem;
  color: #FFF;
  border-radius:var(--b_radius);
  margin: 5px 0 20px;
}
.mEmpresas .tabla_dinamica header a#btn_nueva_operacion {
}
.mEmpresas .tabla_dinamica header a#btn_nuevo_administrador {
  background-image: url(../imgs/businessman.svg);
}
.mEmpresas .tabla_dinamica header a#btn_nueva_sociedad {
  background-image: url(../imgs/sociedad.svg);
}
.mEmpresas #socios tbody:not(:last-child) tr:last-child td {
  border-bottom: 1px solid #999;
}
.mEmpresas #socios tbody:nth-of-type(even) tr {
  background: #F5F5F5;
}
.mEmpresas #socios:not(.ver_todos) .socio_historico {
  display: none;
}
.mEmpresas #socios:not(.ver_todos) .socio_historico {
  display: none;
}
.mEmpresas #visor_de_socios {
  font-size: 0.7rem;
  vertical-align: middle;
  margin-left: 15px;
  background: #FFF;
}
.mEmpresas .sHeader h1 {
  flex: 1;
}
.mEmpresas .sHeader a {
  background: url(../imgs/excel.svg) 10px 5px / 25px no-repeat #FFF;
  display: inline-block;
  color: #2E7D32;
  padding: 10px 15px 10px 45px;
}
.mEmpresas .sHeader a.btn {
  margin-left: 20px;
  padding: 10px 15px 10px 45px;
  color: #FFF;
  background:url(../imgs/enterprise.svg) 8px 4px / 25px no-repeat var(--c2);
}
.mEmpresas .dataTables_filter {
  display: flex;
  width: 100%;
  position: absolute;
  justify-content: center;
  font-weight: 500;
  font-size: 1rem;
  top: -20px;
}
.mEmpresas .dataTables_filter input {
  padding: 5px;
  width: 400px;
}
.mEmpresas td:not(.botonera) {
  cursor: pointer;
}
/*EMPRESAS: ficheros*/
.mEmpresas .ficheros > :first-child {
  display: flex;
  justify-content: space-between;
}
.mEmpresas .ficheros .ver_todos {
  font-size: 0.65rem;
  font-weight: 300;
}
.mEmpresas .ficheros:not(.ver_completo) li:nth-child(1n+5) {
  display: none;
}
.mEmpresas .ficheros.ver_completo .ver_todos {
  display: none;
}
.mEmpresas .ficheros .acciones {
  display: flex;
}
.mEmpresas .ficheros .acciones .btn_add {
  margin-left: 10px;
}
.mEmpresas .ficheros .acciones .btn_add input {
  display: none;
}
/*EMPRESAS: observaciones*/
.mEmpresas .observaciones {
  line-height: 16px;
  max-height: 48px;
  overflow: hidden;
}
.mEmpresas .observaciones + .ver_mas {
  font-size: 0.65rem;
  font-weight: 300;
  margin-top: 10px;
}
.mEmpresas .observaciones.ver_completo {
  max-height: none;
  overflow: auto;
}
.mEmpresas .observaciones.ver_completo + .ver_mas {
  display: none;
}
/*ADMINISTRADOR mod*/
.mAdministrador_mod .form_basico {
  width: 800px;
}
/*SOCIEDAD PARTICIPADA*/
.mSociedadParticipada_mod .form_basico {
  width: 800px;
}
/*OPERACION  mod*/
.mOperacion_mod .socios .tipo {
  display: none;
}
.bOperacion_mod.tipo_reduccion .tipo--reduccion {
  display: block;
}
.bOperacion_mod.tipo_compraventa .tipo--compraventa {
  display: block;
}
.mOperacion_mod .socios {
  margin-bottom: 100px;
}
.mOperacion_mod .form_basico {
  width: 1000px;
}
.mOperacion_mod .socios header {
  display: flex;
  margin: 50px 0 30px;
  justify-content: space-between;
}
.mOperacion_mod .socios .selector {
  margin: 0 0 30px 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.mOperacion_mod .socios .info {
  text-align: center;
  margin-bottom: 40px;
  font-size: 0.8rem;
  color:var(--c1);
}
.mOperacion_mod .socios .selector button {
  margin-left: 20px;
}
.mOperacion_mod .socios input {
  width: 100%;
}
.mOperacion_mod .socios input.nif {
  width: 120px;
}
.mOperacion_mod .socios input.nombre {
  width: 200px;
}
.mOperacion_mod .socios input.observaciones {
  width: 350px;
}
.mOperacion_mod .socios .desde_hasta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mOperacion_mod .socios .desde_hasta input {
  display: inline-block;
  width: 49%;
}
.mOperacion_mod .socios .btn_editar {
  vertical-align: sub;
  margin-right: 5px;
}
.mOperacion_mod .ficheros input {
  width: 100%;
}
.mOperacion_mod .ficheros [disabled] {
  pointer-events: none;
  opacity: 0.5;
}
/* modal add/mod socio*/
.socio_modal h2 {
  margin-bottom: 30px;
}
.socio_modal .contenido {
  padding: 20px 20px 0 20px;
  width: 90%;
  margin: 0 auto;
}
.socio_modal .contenido label {
  display: block;
  margin-bottom: 20px;
}
.socio_modal .contenido input {
  display: block;
  width: 100%;
  padding: 6px;
  margin-top: 3px;
}
.socio_modal .botonera {
  text-align: center;
  margin: 30px 0 0;
}
