/* COLORES CORPORATIVOS */
/* Pantone Black 7 C:				#53534D */
/* Pantone Black 7 C (modificado):	rgb(56,55,49) */
/* Pantone 186 C:					#DC002E */

/* COLORES AUXILIARES */
/* Blanco:			#FFF */
/* Negro:			#000 */
/* Azul:			#3e90b8 */
/* Azul oscuro:		#0158A6 */
/* Gris:			#999 */
/* Gris claro:		#DDD */
/* Gris-verde:		#D0D9D9 */
/* Gris-marrón:		#D3CFC6 */
/* Marrón claro:	#E6DCD6 */
/* Tonos de lila:	#60C y #CCF */
/* Tonos de rojo:	#CB5050 y #CB5050 */

/* INICIALIZADORES */
/*:root, */

html,
body {
  font-size: 12.2px;
  line-height: 1.5;
  font-family: "Atkinson Hyperlegible", Verdana, sans-serif;
  letter-spacing: 0.03em;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
* {
  border-color: #999;
  outline-color: #999;
}

/* CLASES (Y SEUDOCLASES) GENÉRICAS */
/* selección */
:target {
  color: inherit !important;
}
/* errores */
.err,
.err * {
  color: #dc002e !important;
  background-color: transparent !important;
}
/* alineación horizontal */
/*.num, */
.euro {
  text-align: right;
}
/* énfasis, importancia */
/*b, em, strong, .em, */
.imp {
  font-weight: bold;
  font-size: 1.4em;
}
.imp,
:not(tr).imp * {
  color: #60c;
}
h1 .imp,
.sec > .header .imp {
  font-size: 1em;
}
table.reg > tbody > tr.imp {
  font-weight: inherit;
  font-size: inherit;
  color: inherit;
}
table.reg > tbody > tr.imp > td,
.mark,
table.reg > tbody > tr.mark > td {
  background-color: #ccf !important;
}
/* dimensiones */
.total {
  width: 100% !important;
}
.noTotal {
  width: auto !important;
}
/* textos auxiliares informativos */
:not(input).obl::after {
  content: " *";
}
:not(input).euro::after {
  content: " \20AC";
}

:not(input).p100::after {
  content: "%";
}
/* acortamiento de texto */
.clip {
  text-overflow: clip ellipsis;
  overflow: hidden;
  white-space: nowrap;
  display: block;
}
/* Texto verde para el "(provisional)" de los contratos*/
.verde {
  color: #198d19;
  font-weight: bold;
}
/* Texto azul para los contratos de extranet */
.azul {
  color: #003f87 !important;
}
.naranja {
  color: #ef7e0f !important;
}
/* MAQUETACIÓN */
html {
  background-color: #3e90b8;
  text-rendering: optimizeLegibility;
}
/*html { background-color:#3e90b8}*/
html.noHeader body {
  padding: 0;
}
/*html.noHeader :-moz-any(#pag, #cont)*/
html.noHeader #pag,
html.noHeader #cont {
  border-radius: 0;
}
html.noHeader #pag {
  width: auto;
  border-style: none;
  box-shadow: none;
}
html.noHeader #header {
  display: none;
}
#header {
  padding: 0;
}
#header h1 {
  text-transform: uppercase;
  letter-spacing: 0.5ex;
  text-align: right;
  line-height: 1;
  padding: 0.5ex;
  margin: 0;
  position: relative;
}
#logo {
  position: absolute;
  top: 0;
  left: 1rem;
  height: 100%;
}
#cont,
#winPopup,
html.noHeader {
  background-color: #e6dcd6;
}
#cont {
  min-height: 40em;
  border-radius: 0 0 1em 1em;
}
/* ventanilla */
#winPopup {
  height: 72ex;
  width: 120ex;
  margin-top: -38ex;
  margin-left: -62ex;
  border-color: #53534d;
}
/* secciones */
.sec > .header > h1 {
  background-color: #d3cfc6;
}
.sec > .header > .toggle a {
  display: inline-block;
  height: 1.4em;
  width: 1.5em;
  background-repeat: no-repeat;
  background-position: top left;
  background-size: cover;
}
.sec > .header > .toggle a:hover {
  background-position: bottom left;
}
.sec > .header > .toggle a.edit {
  background-image: url("../img/edit.gif");
}
.sec > .header > .toggle a.add {
  background-image: url("../img/add.gif");
}
.sec > .header > .toggle a.del {
  background-image: url("../img/del.gif");
}
.sec > .header > .toggle a.print {
  background-image: url("../img/print.png");
  background-position: top left !important;
}
.cont,
.cont .cont .cont,
.menuFila > .sel,
.cont .cont .menuFila > .sel {
  background-color: #d0d9d9;
}
.cont .cont,
.cont .cont .cont .cont,
.cont .menuFila > .sel,
.cont .cont .cont .menuFila > .sel {
  background-color: #e6dcd6;
}
/* contenedores */
/*#cont > :first-child, #contWin > :first-child, .cont > :first-child, .box > :first-child, fieldset > :first-child, fieldset > legend:first-child + *, */
.cont > form:first-child > :first-child,
#winPopup > form:first-child > :first-child,
.menuLateral + div > :first-child,
.notif > :first-child,
td > :first-child {
  margin-top: 0;
}
/*#cont > :last-child, .cont > :last-child, .box > :last-child, fieldset > :last-child, */
.cont > form:last-child > :last-child,
#winPopup > form:last-child > :last-child,
.menuLateral + div > :last-child,
.notif > :last-child,
td > :last-child {
  margin-bottom: 0;
}

/* TÍTULOS */
h1,
h2,
h3,
legend,
caption,
figcaption,
th,
strong,
table.form > * > tr > th {
  font-family: "Atkinson Hyperlegible", Verdana, sans-serif;
}
/*h1, h2, h3, legend, caption, figcaption, th, strong, */
table.form > * > tr > th {
  font-weight: bold;
}
h1,
h2,
h3,
caption {
  text-align: center;
}

/* ENLACES */
a,
.link,
a:visited {
  color: #0158a6 !important;
}
/*.err, .err *, */
a:visited.err {
  color: #dc002e !important;
}
/*a, .link, */
th[class*="sortable"] {
  cursor: pointer;
}
/*a:hover, a:active, .link:hover, .link:active, */
th[class*="sortable"]:hover a {
  text-decoration: underline;
}

/* IMÁGENES */
/*img, */
input.calendar {
  vertical-align: middle;
}
img.mini,
img.flag {
  height: 1.2em;
}
img.mini {
  width: 1.2em;
  vertical-align: bottom;
}
img.flag {
  width: 1.8em;
  border-style: solid;
}

/* TABLAS */
table.noTotal {
  display: inline-table;
  margin-left: 1em;
  margin-right: 1em;
}
caption {
  text-decoration: underline;
}
/* tablas de registros */
table.reg {
  width: 100%;
  border-collapse: separate; /*; text-align:center*/
}
table.reg tbody tr:not(.disabled):hover {
  opacity: 0.95;
  background-color: #fff;
}
table.reg thead.fija {
  border: 1px solid;
  position: sticky !important;
  top: 0;
  z-index: 3;
}
table.reg > thead > tr > th {
  text-align: center;
}
/*table.reg > thead > tr > */
th[class*="sortable"] .arrow {
  float: right;
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 1ex solid transparent;
  border-right: 1ex solid transparent;
  border-top: 0.9em solid;
  margin-top: 0.5ex;
}
th[class*="sortable"].reverseSort .arrow {
  border-top: 0;
  border-bottom: 0.9em solid;
}
th[class*="sortable"]:not(.forwardSort):not(.reverseSort) .arrow {
  display: none;
}
table.reg > * > tr > .sepL {
  border-left-width: medium !important;
}
table.reg > * > tr > .sepR {
  border-right-width: medium !important;
}
/* tablas-formulario */
table.form {
  margin-left: auto;
  margin-right: auto;
}
table.form > * > tr > * > table.form {
  margin: 0;
}
table.form > * > tr > th {
  font-size: 1.1em;
  letter-spacing: 0.1ex;
}
table.form > * > tr > td[inf]::after {
  content: " " attr(inf);
  opacity: 0.5;
  cursor: help;
}
table.form > * > tr > td[inf]:hover::after {
  opacity: 1;
}
table.form.sep {
  border-style: none;
}
/*table.form caption ~ tbody, */
table.form.sep > * > tr > * {
  border-style: solid;
}
table.form.sep > * > tr > th {
  border-right-style: none;
}
table.form.sep > * > tr > td {
  border-left-style: none;
}
/* tabs.-lista */
table.lista {
  margin-left: 0;
  margin-right: 0;
}
table.lista > * > * > * {
  vertical-align: top;
  border-style: none;
}
table.lista > * > * > *:not(:first-child) {
  padding-left: 1ex;
}
table.lista > * > *:not(:first-child) > * {
  padding-top: 1ex;
}

/* FORMULARIOS */
input[type="text"],input[type="email"], input[type="password"], input[type="file"], textarea, select/*, input[type="radio"], input[type="checkbox"]*/, button, input[type="button"], input[type="submit"], input[type="reset"], a.tipVal, #list {
  font-family: "MS Shell Dlg", sans-serif;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="file"],
textarea,
select,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
#list {
  color: #000;
}
input:-webkit-autofill {
  -webkit-text-fill-color: #000;
}
input[type="text"].err,
input[type="email"].err,
input[type="password"].err,
input[type="file"].err,
textarea.err,
select.err {
  border-color: #dc002e;
}
/* campos de texto */
input[type="text"].num,
input[type="number"].num {
  min-width: 6.5ex;
  width: 6.5ex;
}
input[type="text"].num:disabled::-moz-placeholder,
input[type="number"].num:disabled::-moz-placeholder {
  color: inherit;
}
input[type="text"].num:disabled::-webkit-input-placeholder,
input[type="number"].num:disabled::-webkit-input-placeholder {
  color: inherit;
}
/* campos de búsqueda integrada */
input[lst_origen].waiting {
  cursor: wait;
}
/*input[type="text"].set, */
input[lst_origen][cod],
#list > .sel {
  background-color: #eee;
}
input[type="text"].date::-moz-placeholder,
input[type="text"].time::-moz-placeholder {
  font-size: 0.95em;
}
input[type="text"].date::-webkit-input-placeholder {
  font-size: 0.96em;
}
input[type="text"].time::-webkit-input-placeholder {
  font-size: 0.83em;
}
/* desplegables */
/*input[type="text"][readonly], input[type="password"][readonly], input[type="file"][readonly], textarea[readonly], */
select[readonly],
select[readonly] option {
  background-color: #ddd;
}
/*option:checked, */
option[selected] {
  font-weight: bold;
}
/* botones de radio y casillas de verificación */
input[type="radio"] + label + input[type="radio"],
input[type="checkbox"] + label + input[type="checkbox"],
label.for + label.for {
  margin-left: 2ex;
}
label.for > input[type="radio"],
label.for > input[type="checkbox"] {
  vertical-align: text-bottom;
}
/* botones */
table + button,
.sec + button,
.cont + button,
table + input[type="button"],
.sec + input[type="button"],
.cont + input[type="button"],
table + input[type="submit"],
.sec + input[type="submit"],
.cont + input[type="submit"],
table + input[type="reset"],
.sec + input[type="reset"],
.cont + input[type="reset"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
input.save,
input.edit,
input.del,
input.copy,
input.calendar {
  width: 1.5em;
  height: 1.4em;
  color: transparent;
  background-repeat: no-repeat !important;
  border-style: none !important;
  border-radius: 0;
  box-shadow: none !important;
}
input.save {
  background-image: url("../img/save.png") !important;
}
input.edit {
  background-image: url("../img/edit.gif") !important;
}
input.del {
  background-image: url("../img/del.png") !important;
}
input.copy {
  background-image: url("../../img/copiar.png") !important;
  height: 1.6em;
}
/*.ui-datepicker-trigger, */
input.calendar {
  margin-left: 0.3ex;
}
input.calendar {
  background-image: url("../../css/img/calendar.gif") !important;
  background-size: 100% 100% !important;
}
/* enlaces tipo de valor */
a.tipVal {
  display: inline-block;
  width: 1.2em;
  text-decoration: none !important;
}
/*:disabled, .disabled, */
:disabled + a.tipVal,
[readonly] + a.tipVal,
a.tipVal[disabled] {
  opacity: 0.5 /*; filter:alpha(opacity=50); cursor:default !important*/;
  cursor: not-allowed !important;
}
:disabled + a.tipVal,
[readonly] + a.tipVal,
a.tipVal[disabled] {
  color: inherit !important;
  outline-style: none;
}

/* OTROS */
/* menú superior y submenú */
#menuSup/*, #submenu > **/ {
  background: linear-gradient(#cb5050, #cb5050, #882020, #882020, #882020);
}
#menuSup {
  border-top-style: solid;
}
#menuSup > */*, #submenu > **/ {
  color: #fff !important;
}
#menuSup > * {
  line-height: 2;
}
#menuSup > :first-child {
  margin-left: 1em;
}
#menuSup > :nth-child(2) {
  color: yellow;
}
#menuSup > :not(:first-child):not(:nth-child(2)) {
  float: right;
  padding: 0 1em;
  border-left-style: solid;
}
#menuSup > .link {
  text-decoration: none;
}
.box#submenu,
.box#list {
  padding: 0;
  border-radius: 0;
}
/*#submenu { top:auto }*/
#submenu > * {
  display: block;
  background-color: #fff;
  padding: 1ex;
  border-style: solid;
}
/* paneles superiores y menú de navegación */
.panelSup {
  margin-bottom: 1em;
}
ul#nav {
  padding-left: 0;
  margin: 0;
}
ul#nav * {
  display: inline-block;
}
ul#nav li {
  margin: 0;
}
#nav li::before {
  content: "»";
  margin: 0 1ex;
}
#nav > li:first-child::before,
#nav > div:first-child > li::before {
  margin-left: 0;
}
/* menú lateral */
.menuLateral {
  float: left;
  width: 10em;
  border-radius: 1em;
  margin: 0 1em 1em 0;
}
.cont.menuLateral {
  padding: 0;
  border-style: none;
}
.menuLateral > * {
  display: block;
  background-color: #d3cfc6;
  padding: 1ex;
  border-style: solid;
}
.menuLateral > :target {
  background-color: #d3cfc6 !important;
}
.menuLateral > :first-child {
  border-top-left-radius: 1em;
  border-top-right-radius: 1em;
}
.menuLateral > :not(:first-child) {
  border-top-style: none;
}
.menuLateral > :last-child {
  border-bottom-left-radius: 1em;
  border-bottom-right-radius: 1em;
}
.menuLateral > .sel/*, .menuFila > .sel*/ {
  background-color: #fff;
}
.menuLateral > .sel:target {
  background-color: #fff !important;
}
.menuLateral + div {
  margin-left: 11em;
}

/* menú superior (en la ficha del edificio, en contratos) */
.menuSuperior {
  border-radius: 1em;
  margin: 0 1em 1em 0;
  display: flex;
  flex-wrap: wrap;
}
.cont.menuSuperior {
  padding: 1ex;
  border-style: none;
}
.menuSuperior > * {
  display: block;
  background-color: #d3cfc6;
  padding: 1ex;
  border-style: solid;
  border-radius: 1em;
}
.menuSuperior > :target {
  background-color: #d3cfc6 !important;
}
.menuSuperior > .sel/*, .menuFila > .sel*/ {
  background-color: #fff;
}
.menuSuperior > .sel:target {
  background-color: #fff !important;
}

/* menú horizontal */
.menuFila {
  padding-right: 1em;
}
.menuFila > * {
  display: inline-block;
  background-color: #d3cfc6;
  padding: 0.5ex 0.5em;
  border-style: solid;
  border-radius: 1em 1em 0 0;
}
.menuFila > .sel {
  border-bottom-style: none;
  position: relative;
  top: 0.5ex;
}
.menuFila > .new {
  padding-left: 1em;
  padding-right: 1em;
}
.menuFila + .cont {
  margin-top: 0;
  border-top-left-radius: 0;
}
/* notificaciones */
/*#header, #cont, #footer, #contWin, .cont, .box, fieldset, */
.notif {
  padding: 1ex;
}
.notif {
  background-color: #ccf !important;
  border-style: solid;
  margin: 1em 0;
  cursor: help;
}
/* listados de búsqueda (campos de búsq. integr.) */
.box#list {
  border-style: none;
}
.box {
  overflow-y: auto;
  max-height: 60vh;
  /*margin-top: 1em;*/
}

#list.winPopup {
  position: fixed;
}
#list:empty:not(.noRes) {
  display: none;
}
#list > *,
#list.noRes::before {
  background-color: #fff;
  border-style: solid;
}
#list > * {
  white-space: pre;
  cursor: pointer;
}
#list.noRes::before {
  content: "Sin resultados";
  color: #dc002e; /*; border-width:thin*/
}
/* FFERNANDEZ 16/03/2015 */
.st_quitar {
  background-image: url("../img/del.png");
  background-position: 10px center;
  background-repeat: no-repeat;
  height: 30px;

  padding-left: 30px;
  padding-right: 10px;
}

.st_editar {
  background-image: url("../img/edit.png");
  background-position: 10px center;
  background-repeat: no-repeat;
  height: 30px;

  padding-left: 30px;
  padding-right: 10px;
}

.st_guardar {
  background-image: url("../img/save.png");
  background-position: 10px center;
  background-repeat: no-repeat;

  padding-left: 30px;
  padding-right: 10px;
}

/*** DE AQUI PARA ABAJO PARA USAR INTERRUPTOR ***/

/* Formateamos el label que servirá de contenedor */
.switch {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 22px;
}

/* Ocultamos el checkbox html */
.switch input {
  display: none;
}

/* Formateamos la caja del interruptor sobre la cual se deslizará la perilla de control o slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

/* Pintamos la perilla de control o slider usando el selector before */
.slider:before {
  position: absolute;
  content: "";
  height: 14px;
  width: 16px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

/* Cambiamos el color de fondo cuando el checkbox esta activado */
input:checked + .slider {
  background-color: #990000;
}

/* Deslizamos el slider a la derecha cuando el checkbox esta activado */
input:checked + .slider:before {
  -webkit-transform: translateX(16px);
  -ms-transform: translateX(16px);
  transform: translateX(16px);
}

/* Aplicamos efecto de bordes redondeados en slider y en el fondo del slider */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}
/*** FIN DE INTERRUPTOR ***/

@view-transition {
  navigation: auto;
}
