.utilbox {
    width: 20px;
}

legend {
    border-bottom: 0px;
}

span.valid {
    width: 24px;
    height: 24px;
    background: url(../../images/valid.png) center center no-repeat;
    display: inline-block;
    text-indent: -9999px;
}

.jumbotron {
    background: #999999; /* Old browsers */
    background: -moz-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left bottom, right top, color-stop(0%, #EEFFFF), color-stop(100%, #5F5F40)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* IE10+ */
    background: linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* W3C*/

}

.jumbotron:after {
    background: url(../images/bk_cont_dos_2.png) repeat-x top;
    opacity: .6;
}

span.error {
    font-weight: bold;
    color: red;
    padding: 2px 8px;
    margin-top: 2px;
}

/* To align delete command (form) with buttons*/
#command {
    margin: 0px;
}

.btn-toolbar {
    text-align: left;
}

.split-button .ui-menu, .split-button-fa .ui-menu {
    position: absolute;
}


.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.text-center {
    text-align: center;
}

/* Datepicker Z-index with Openlayers */
.ui-datepicker {
    z-index: 9999 !important;
}

.centrar-en-mapa {
    cursor: pointer;
}

/* OpenLayers bootstrap */

.olMap img {
    line-height: 0px;
}

div.thumbnail.olMap,
div.olMap {
    height: 512px;
}

div.olMap div.thumbnail.olMap {
    margin: 0;
    width: 100%;
    height: 100%;
}

img.olTileImage {
    max-width: none;
}

.olControlAttribution {
    line-height: 12px;
}


/* Sticky footer styles
   -------------------------------------------------- */

html,
body {
    height: 100%;
    /* The html and body elements cannot have any padding or margin. */
    padding-top: 0;
}

/* Wrapper for page content to push down footer */
#wrap > .container,
#wrap > .container-fluid {
    padding-top: 20px;
    margin-right: auto;
    margin-left: auto;
}

#wrap {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    /* Negative indent footer by it's height */
    margin: 0 auto -62px;
}

/* Set the fixed height of the footer here */
/* #push, */
/* #footer { */
/* 	height: 60px; */
/* } */
/* #footer { */
/* 	background-color: #f5f5f5; */
/* 	border: 1px solid #ddd; */
/*  } */

/* #footer > .container >p { */
/* 	margin: 20px 0; */

/*  } */
/*
.container,
.row,
.container-fluid,
.row-fluid { height: inherit; }
*/
/* Lastly, apply responsive CSS fixes as necessary */
@media (max-width: 767px) {
    #footer {
        margin-left: -20px;
        margin-right: -20px;
        padding-left: 20px;
        padding-right: 20px;
    }

    #wrap > .container,
    #wrap > .container-fluid {
        padding-top: 10px;
    }
}

@media (min-width: 768px) and (max-width: 979px) {
    #wrap > .container,
    #wrap > .container-fluid {
        padding-top: 10px;
    }
}


@media (max-width: 979px) {
    .navbar-fixed-top {
        margin-bottom: 10px;
    }
}

.container,
.row,
.container-fluid,
.row-fluid {
    height: inherit;
}


/* Customize tooltips */
.tooltip.right {
    margin-left: 30px;
    padding: 0 5px;
}

/** Custom ngGrid Style */
.gridStyle {
    border: 1px solid rgb(212, 212, 212);
    width: 400px;
    height: 400px;
}


/* Angular Form Validation CSS */
/*.ng-pristine { border:1px solid Gold; }
.ng-dirty.ng-valid { border:1px solid Green; }
.ng-dirty.ng-invalid { border:1px solid Red; }
.ng-dirty.ng-valid ~ span.ok { color:green; display:inline; }
.ng-dirty.ng-invalid ~ span.ko { color:red; display:inline; }
*/
table {
    text-align: left;
}

tbody tr:hover {
    text-decoration: none;
    background-color: #cccccc;
}

tbody tr.no-hover:hover {
    background-color: inherit;
}

tr[ng-click] {
    cursor: pointer;
}

tr.active {
    background-color: #00VFAD;
    cursor: pointer;
}

/* Formato de etiquetas para texto en táboas */
.tag, .table-tag {
    background-color: grey;
    border-radius: 2px;
    color: white;
    padding: 4px 6px;
    font-size: 0.8em;
}

.view-enter, .view-leave {
    position: absolute;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}

.view-enter {
    opacity: 0;
    -webkit-transform: scale3d(0.5, 0.5, 0.5);
    -moz-transform: scale3d(0.5, 0.5, 0.5);
    transform: scale3d(0.5, 0.5, 0.5);
}

.view-enter-active {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    -moz-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
}

.view-leave {
    opacity: 1;
    /*padding-left: 0px;*/
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.view-leave-active {
    opacity: 0;
    /*padding-left: 100px;*/
    -webkit-transform: translate3d(100px, 0, 0);
    -moz-transform: translate3d(100px, 0, 0);
    transform: translate3d(100px, 0, 0);
}

/***** Diagram Module ***/
circle.node {
    cursor: pointer;
    stroke-width: 1px;
}

circle.node.connectivitynode {
    fill: #444;

}

circle.node.conductingequipment {
    fill: #25C8FC;
    stroke: #429CE2;
    stroke-width: 3px;
}

circle.node:hover {
    stroke: #ff7f0e;
    stroke-width: 3px;
}

circle.node.selected {
    stroke: #ff7f0e;
    stroke-width: 6px;
}

line.link {
    fill: none;
    stroke: #9ecae1;
    stroke-width: 3px;
}


line.link.selected {
    stroke: #666;
    stroke-width: 4px;
}

line.drag {
    stroke: #999;
    stroke-width: 5;
    pointer-events: none;
}

line.drag.hidden {
    stroke: #999;
    stroke-width: 0;
    pointer-events: none;
}

.node text {
    pointer-events: none;
    font: 10px sans-serif;

}

.node .selected {
    fill: #70F;
}

path.hull.selected {
    stroke: #666;
    stroke-width: 3px;
}


.cursor {
    fill: none;
    stroke: brown;
    pointer-events: none;
}

/* (20210722) Coméntase este estilo porque é demasiado específico e afecta aos SVG de D3. Pendente de trazar se é necesario. */
/*
rect {
  fill: #fff;
}
*/

#ductRect {
    fill: #FF6000;
}

g a circle { /*referenciando a las imagenes del loyout de los ducts */
    fill: #6E6E6E;
    stroke: #C0C0C0;
    stroke-width: 8;
}

.infobox {
    border: 2px solid steelblue;
    border-radius: 4px;
    box-shadow: #333333 0px 0px 10px;
    /* margin:200px auto;*/
    padding: 5px 10px;
    background: rgba(255, 255, 255, 0.8);
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 10500;
    font-weight: bold;
}


/* TRAZA GINV CSS*/
#loaderDiv, #syncDiv {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1100;
    opacity: .6;
    background-color: #9BB9C7;
}


.ajax-loader {
    opacity: 1.0;
    position: absolute;
    max-width: 120px;
    top: 50%;
    padding: 30px;
    border: 10px solid;
    width: auto;
    margin: auto;

}

/*
#loaderDiv {
   position: fixed;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   z-index: 1100;
   opacity: .6;
   background-color: #9BB9C7;
}

.ajax-loader {
   opacity: 1.0;
   position: absolute;
   left: 50%;
   top: 50%;
   padding: 30px;
   border: 10px solid;
   width:auto;
   margin: auto;
}
*/
.popover {
    max-width: none;
}

.popover-title span {
    display: block;
    float: left;
    /*width: 236px;*/
}

/*
.detail .form-body, .bordered {
	padding: 10px;
	background-color: #FFF9F5;
	border: 1px solid #e1e1e1;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}
*/
.collapse.in {
    /* overflow: visible allow dropdowns not cut */
    overflow: visible
}

.navbar-static-top {
    margin-bottom: 2px;
    position: relative;
    z-index: 900;
}

.detail, .list {
    padding: 4px;
    background-image: -moz-linear-gradient(top, #FFF, #eee);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#FFF), to(#eee));
    background-image: -webkit-linear-gradient(top, #FFF, #eee);
    background-image: -o-linear-gradient(top, #FFF, #eee);
    background-image: linear-gradient(to bottom, #FFF, #eee);
    background-repeat: repeat-x;
    border: 1px solid #ccc;

    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;

    position: relative;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffff', endColorstr='#ffddd', GradientType=0);
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.6), 0 0 20px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.6), 0 0 20px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0 2x 6px rgba(0, 0, 0, 0.6), 0 0 20px rgba(0, 0, 0, 0.1) inset;
    /* overflow: visible allow dropdowns not cut */
    overflow: visible
}

.detail form {
    margin: 0 0 5px;
}

.overflow-visible {
    /* overflow: visible allow dropdowns not cut */
    overflow: visible;
}


.detail fieldset {
    border: 1px solid #e1e1e1 !important;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    margin: 0 0 0px;
    padding: 0.4em 0.4em 0em !important;
    margin: 0 0 1em 0 !important;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.detail fieldset legend {
    color: #999 !important;
    font-size: 1.0em !important;
    font-weight: bold !important;
    text-align: left !important;
    width: auto;
    padding: 0 6px;
    margin: 0;
    border-bottom: none;
    line-height: 14px;
}

.detail fieldset .form {
    border: 1px solid #FFCFB2 !important;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    margin: 0 0 0px;
    padding: 0.4em 0.4em 0em !important;
    margin: 0 0 1em 0 !important;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.detail fieldset .form legend {
    color: #E35500 !important;
    font-size: 1.0em !important;
    font-weight: bold !important;
    text-align: left !important;
    width: auto;
    padding: 0 6px;
    margin: 0;
    border-bottom: none;
    line-height: 14px;
}

.detail fielset .control-group :last-child {
    padding-bottom: 0px;
}

.detail .form-body, .bordered {
    border: 1px solid #e1e1e1;
    padding: 10px;
    background-color: #FFF9F5;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    margin: 0 0 0px;

    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -3px 0 rgba(0, 0, 0, .25), inset 0 -3px 0 rgba(255, 255, 255, .2), 0 1px 0 rgba(0, 0, 0, .1);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -3px 0 rgba(0, 0, 0, .25), inset 0 -3px 0 rgba(255, 255, 255, .2), 0 1px 0 rgba(0, 0, 0, .1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -3px 0 rgba(0, 0, 0, .25), inset 0 -3px 0 rgba(255, 255, 255, .2), 0 1px 0 rgba(0, 0, 0, .1);
}

.detail .form-header legend {
    margin-top: 4px;
    margin-bottom: 6px;
    border-bottom: 0px;
    position: relative;
    line-height: 30px;
    font-size: 18px;
}

.detail .form-header legend .btn-toolbar {
    margin-top: 0px;
    position: absolute;
    right: 5px;
    top: 0px;

}

.subdetail {
    position: relative;
    margin-top: 0px;
    padding: 10px;
    background-color: #FFF;
    /*-webkit-border-radius: 6px;*/
    /*-moz-border-radius: 6px;*/
    /*border-radius: 6px;*/
    border: 1px solid #e1e1e1;
    /* overflow: visible allow dropdowns not cut */
    overflow: visible;
}

.subdetail .form-body {
    border: 1px solid #eaeaea;
    margin: 0px;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    /*
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.5), inset 0 -2px 0 rgba(0,0,0,.25), inset 0 -3px 0 rgba(255,255,255,.2), 0 1px 0 rgba(0,0,0,.1);
    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.5), inset 0 -2px 0 rgba(0,0,0,.25), inset 0 -3px 0 rgba(255,255,255,.2), 0 1px 0 rgba(0,0,0,.1);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.5), inset 0 -2px 0 rgba(0,0,0,.25), inset 0 -3px 0 rgba(255,255,255,.2), 0 1px 0 rgba(0,0,0,.1);
    */
}

.subdetail legend {
    margin-bottom: 4px;
    border-bottom: 0px;
    font-size: 18px;
    color: #555
}

.subdetail .expandClose {
    position: absolute;
    top: 0px;
    right: -1px;
    height: 29px;
    width: 29px;
    background: url('../images/close_expand.png') 0px 0px no-repeat;
    z-index: 500;
    cursor: pointer;
}

.subdetail .expandClose:hover {
    position: absolute;
    top: 0px;
    right: -1px;
    height: 29px;
    width: 29px;
    background: url('../images/close_expand.png') -31px 0px no-repeat;
    z-index: 500;
}

.subdetail .legend-btn-group, .list .legend-btn-group {
    position: absolute;
    top: 10px;
    right: 40px;
}


.inset {
    border-color: #fff;
    box-shadow: inset 0px 0px 6px rgba(0, 0, 0, 0.4);
    border: 2px inset;
    /*border-radius:4px;*/

}

.embossed {
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -2px 0 rgba(0, 0, 0, .25), inset 0 -3px 0 rgba(255, 255, 255, .2), 0 1px 0 rgba(0, 0, 0, .1);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -2px 0 rgba(0, 0, 0, .25), inset 0 -3px 0 rgba(255, 255, 255, .2), 0 1px 0 rgba(0, 0, 0, .1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -2px 0 rgba(0, 0, 0, .25), inset 0 -3px 0 rgba(255, 255, 255, .2), 0 1px 0 rgba(0, 0, 0, .1);
}

.navbar-inverse .navbar-inner {
    background-image: linear-gradient(to bottom, #FF6000, #FF6000);
    background-color: #FF6000;
    border-color: #BD5000;
}

.navbar .nav li.dropdown.open > .dropdown-toggle {
    background-color: rgba(150, 60, 0, 0.40);
}

.navbar .nav > li > a {
    color: #FFF;
}

/* Estilos para entradas de menú deshabilitadas */
.navbar .dropdown-menu li > span.disabled {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 20px;
    color: #999999;
    white-space: nowrap;
}

@media (max-width: 979px) {
    .navbar-collapse {
        position: relative;
        z-index: 3000;
    }

    .navbar-inverse .nav-collapse .nav > li > a,
    .navbar-inverse .nav-collapse .dropdown-menu a {
        color: #FFF;
    }
}


/*  Append -Prepend Bootstrap */
.input-append.input-block-level,
.input-prepend.input-block-level {
    display: table;
}

.input-append.input-block-level .add-on,
.input-prepend.input-block-level .add-on {
    display: table-cell;
    width: 1%; /* remove this if you want default bootstrap button width */
}

.input-append.input-block-level > input,
.input-prepend.input-block-level > input {
    box-sizing: border-box; /* use bootstrap mixin or include vendor variants */
    display: table; /* table-cell is not working well in Chrome for small widths */
    min-height: inherit;
    width: 100%;
}

.input-append.input-block-level > input {
    border-right: 0;
}

.input-prepend.input-block-level > input {
    border-left: 0;
}

.fill {
    min-height: 100%;
    height: 100%;
}


#map-home {
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: block;
}

/*

.effect8, .container .detail,.container .list
{
	position:relative;
    -webkit-box-shadow:0 4px 8px rgba(0, 0, 0, 0.6), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow:0 4px 8px rgba(0, 0, 0, 0.6), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow:0 4x 8px rgba(0, 0, 0, 0.6), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

.effect8:before, .effect8:after, .container .detail:before,.container .detail:after
{
	content:"";
    position:absolute;
    z-index:-1;
    -webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
    -moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
    box-shadow:0 0 20px rgba(0,0,0,0.8);
    top:10px;
    bottom:10px;
    left:0;
    right:0;
    -moz-border-radius:100px / 10px;
    border-radius:100px / 10px;
}
.effect8:after,.container .detail:after
{
	right:10px;
    left:auto;
    -webkit-transform:skew(8deg) rotate(3deg);
       -moz-transform:skew(8deg) rotate(3deg);
        -ms-transform:skew(8deg) rotate(3deg);
         -o-transform:skew(8deg) rotate(3deg);
            transform:skew(8deg) rotate(3deg);
}
*/
/*
angular animation for ng-view. Add ng-animate="'view'" into ng-view DOM element.
*/
[ui-view].ng-enter, [ui-view].ng-leave {
    position: absolute;
    left: 0;
    right: 0;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}

[ui-view].ng-enter {
    opacity: 0;
    -webkit-transform: scale3d(0.5, 0.5, 0.5);
    -moz-transform: scale3d(0.5, 0.5, 0.5);
    transform: scale3d(0.5, 0.5, 0.5);
}

[ui-view].ng-enter-active {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    -moz-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
}

[ui-view].ng-leave {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

[ui-view].ng-leave-active {
    opacity: 0;
    -webkit-transform: translate3d(100px, 0, 0);
    -moz-transform: translate3d(100px, 0, 0);
    transform: translate3d(100px, 0, 0);
}

.z-1010 {
    position: relative;
    z-index: 1010;
}


.z-1020 {
    position: relative;
    z-index: 1020;
}

.z-1030 {
    position: relative;
    z-index: 1030;
}

.z-1040 {
    position: relative;
    z-index: 1040;
}

.z-1050 {
    position: relative;
    z-index: 1050;
}


/** Cortar texto de las labels */
.control-label {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.control-label:hover {
    /* background-color: #444;*/
    white-space: wrap;
    text-overflow: inherit;
    overflow: visible;
}

/*
.input-append .btn {
	padding: 4px 4px;
}

.btn {
	padding: 2px 8px;
}
*/
.dropdown-menu {
    z-index: 10000;
    max-height: 85vh;
    overflow: auto;
}

.dropdown-menu > li > label.checkbox {
    padding: 0 40px;
}

.detail .nav-pills {
    margin: 0px;
}

.fancybox-close {
    display: block;
    background-image: url('../images/fancybox_sprite.png');
}

.fancybox-collapse {
    display: block;
    background-image: url('../images/fancybox_sprite.png');
    background-position: 0 -84px;
}

.fancybox-collapse {
    position: absolute;
    top: -14px;
    right: 10px;
    width: 28px;
    height: 28px;
    cursor: pointer;
    opacity: 0.8;
    z-index: 8040;
}

.fancybox-close {
    position: absolute;
    top: -14px;
    right: -14px;
    width: 28px;
    height: 28px;
    cursor: pointer;
    opacity: 0.9;
    z-index: 8040;
}

.fancybox-close:hover,
.fancybox-collapse:hover {
    opacity: 1.0;
    border: 1px solid #CDCD;
}

/*  Para que funcione angular-snap tiene que tener position relative y 100% */
.snap-container {
    position: relative;
    width: 100%;
    height: 100%;
}

#snap-container {
    background: #999999; /* Old browsers */
    background: -moz-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left bottom, right top, color-stop(0%, #EEFFFF), color-stop(100%, #5F5F40)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* IE10+ */
    background: linear-gradient(120deg, #EEFFFF 0%, #5F5F40 100%); /* W3C*/
}

#snap-container::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: url(../images/bk_cont_dos_2.png) repeat-x top;
    opacity: .6;
}

#snap-content {
    -webkit-box-shadow: -1px 6px 6px 6px rgba(84, 84, 84, 1);
    -moz-box-shadow: -1px 6px 6px 6px rgba(84, 84, 84, 1);
    box-shadow: -1px 6px 6px 6px rgba(84, 84, 84, 1);

}

.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
    color: #337ab7;
    background-color: #fff;
}

.list-group-item > .badge {
    float: right;
}

.list-group-item > .badge + .badge {
    margin-right: 5px;
}


.list-group {
    padding-left: 0;
    margin-bottom: 20px;
}

.list-group-item {
    position: relative;
    display: block;
    padding: 6px 10px;
    margin-bottom: -1px;
    background-color: #fff;
    border: 1px solid #ddd;
}

.list-group-item:first-child {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
}

a.list-group-item {
    color: #555;
    cursor: pointer;
}

a.list-group-item .list-group-item-heading {
    color: #333;
}

a.list-group-item:hover,
a.list-group-item:focus {
    color: #555;
    text-decoration: none;
    background-color: #f5f5f5;
}

.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
    color: #777;
    cursor: not-allowed;
    background-color: #eee;
}

.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
    color: inherit;
}

.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
    color: #777;
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
    z-index: 2;
    color: #fff;
    background-color: #1D0B00;
    border-color: #FF6000;
}

.list-group-item.active a {
    font-weight: bold;
    color: #fff;
}

.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
    color: inherit;
}

.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
    color: #c7ddef;
}

.list-group-item-success {
    color: #3c763d;
    background-color: #dff0d8;
}

a.list-group-item-success {
    color: #3c763d;
}

a.list-group-item-success .list-group-item-heading {
    color: inherit;
}

a.list-group-item-success:hover,
a.list-group-item-success:focus {
    color: #3c763d;
    background-color: #d0e9c6;
}

a.list-group-item-success.active,
a.list-group-item-success.active:hover,
a.list-group-item-success.active:focus {
    color: #fff;
    background-color: #3c763d;
    border-color: #3c763d;
}

.list-group-item-info {
    color: #31708f;
    background-color: #d9edf7;
}

a.list-group-item-info {
    color: #31708f;
}

a.list-group-item-info .list-group-item-heading {
    color: inherit;
}

a.list-group-item-info:hover,
a.list-group-item-info:focus {
    color: #31708f;
    background-color: #c4e3f3;
}

a.list-group-item-info.active,
a.list-group-item-info.active:hover,
a.list-group-item-info.active:focus {
    color: #fff;
    background-color: #31708f;
    border-color: #31708f;
}

.list-group-item-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
}

a.list-group-item-warning {
    color: #8a6d3b;
}

a.list-group-item-warning .list-group-item-heading {
    color: inherit;
}

a.list-group-item-warning:hover,
a.list-group-item-warning:focus {
    color: #8a6d3b;
    background-color: #faf2cc;
}

a.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #8a6d3b;
    border-color: #8a6d3b;
}

.list-group-item-danger {
    color: #a94442;
    background-color: #f2dede;
}

a.list-group-item-danger {
    color: #a94442;
}

a.list-group-item-danger .list-group-item-heading {
    color: inherit;
}

a.list-group-item-danger:hover,
a.list-group-item-danger:focus {
    color: #a94442;
    background-color: #ebcccc;
}

a.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #a94442;
    border-color: #a94442;
}

.list-group-item-heading {
    margin-top: 0;
    margin-bottom: 4px;
}

.list-group-item-text {
    margin-bottom: 0;
    line-height: 1.2;
}

.panel {
    margin-bottom: 20px;
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}

.panel-body {
    padding: 15px;
}

.panel-heading {
    padding: 10px 15px;
    border-bottom: 1px solid transparent;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.panel-heading > .dropdown .dropdown-toggle {
    color: inherit;
}

.panel-title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 16px;
    color: inherit;
}

.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
    color: inherit;
}

.panel-footer {
    padding: 10px 15px;
    background-color: #f5f5f5;
    border-top: 1px solid #ddd;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

.panel > .list-group,
.panel > .panel-collapse > .list-group {
    margin-bottom: 0;
}

.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
    border-width: 1px 0;
    border-radius: 0;
}

.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

.panel-heading + .list-group .list-group-item:first-child {
    border-top-width: 0;
}

.list-group + .panel-footer {
    border-top-width: 0;
}

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
    margin-bottom: 0;
}

.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
    padding-right: 15px;
    padding-left: 15px;
}

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
    border-top-left-radius: 3px;
}

.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
    border-top-right-radius: 3px;
}

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
    border-bottom-left-radius: 3px;
}

.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
    border-bottom-right-radius: 3px;
}

.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
    border-top: 1px solid #ddd;
}

.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
    border-top: 0;
}

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
    border: 0;
}

.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
}

.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
}

.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
    border-bottom: 0;
}

.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
    border-bottom: 0;
}

.panel > .table-responsive {
    margin-bottom: 0;
    border: 0;
}

.panel-group {
    margin-bottom: 20px;
}

.panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px;
}

.panel-group .panel + .panel {
    margin-top: 5px;
}

.panel-group .panel-heading {
    border-bottom: 0;
}

.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
    border-top: 1px solid #ddd;
}

.panel-group .panel-footer {
    border-top: 0;
}

.panel-group .panel-footer + .panel-collapse .panel-body {
    border-bottom: 1px solid #ddd;
}

.panel-default {
    border-color: #ddd;
}

.panel-default > .panel-heading {
    color: #333;
    background-color: #f5f5f5;
    border-color: #ddd;
}

.panel-default > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: #ddd;
}

.panel-default > .panel-heading .badge {
    color: #f5f5f5;
    background-color: #333;
}

.panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ddd;
}

.panel-primary {
    border-color: #337ab7;
}

.panel-primary > .panel-heading {
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7;
}

.panel-primary > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: #337ab7;
}

.panel-primary > .panel-heading .badge {
    color: #337ab7;
    background-color: #fff;
}

.panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #337ab7;
}

.panel-success {
    border-color: #d6e9c6;
}

.panel-success > .panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
}

.panel-success > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: #d6e9c6;
}

.panel-success > .panel-heading .badge {
    color: #dff0d8;
    background-color: #3c763d;
}

.panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d6e9c6;
}

.panel-info {
    border-color: #bce8f1;
}

.panel-info > .panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1;
}

.panel-info > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: #bce8f1;
}

.panel-info > .panel-heading .badge {
    color: #d9edf7;
    background-color: #31708f;
}

.panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #bce8f1;
}

.panel-warning {
    border-color: #faebcc;
}

.panel-warning > .panel-heading {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc;
}

.panel-warning > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: #faebcc;
}

.panel-warning > .panel-heading .badge {
    color: #fcf8e3;
    background-color: #8a6d3b;
}

.panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #faebcc;
}

.panel-danger {
    border-color: #ebccd1;
}

.panel-danger > .panel-heading {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1;
}

.panel-danger > .panel-heading + .panel-collapse > .panel-body {
    border-top-color: #ebccd1;
}

.panel-danger > .panel-heading .badge {
    color: #f2dede;
    background-color: #a94442;
}

.panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ebccd1;
}

.list-group.panel > .list-group-item {
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px
}

.list-group-submenu {
    margin-left: 8px;
}

.list-group-submenu > ul {
    margin: 0 0 4px 10px;
}

/** GIS: popups ----------------------------------------------------------------------------------------------------- */

/* Popup dun único elemento */

.popup-container > .dl-horizontal > dt {
    text-align: left;
    width: auto;
}

#popupdl dt {
    text-align: left;
    font-weight: bold;
    width: 100px;
}

#popupdl dt:after {
    content: ":";
}

#popupdl dd {
    margin-left: 0px;
}

/* Popup cando se fai click en múltiples elementos */

.ol-popup-content ul.multiple-features {
    margin: 0 0 0px 15px;
}

.ol-popup-content ul.multiple-features li {
    margin-bottom: 4px;
}


/* body { */
/* Falla el puntero del mapa si se utilza zoom */
/* 	zoom: 0.8;  */
/* } */


/* Estilo da fiestra modal  */

body .modal {
    /* Ancho relativo por defecto */
    width: 80%;
    margin: 0 auto;
}

@media (min-width: 979px) {
    body .modal {
        /* new custom width */
        width: 900px;
        /* must be half of the width, minus scrollbar on the left (30px) */
        margin-left: -420px;
    }
}

@media (max-width: 979px) {
    body .modal {
        position: fixed;
        right: 20px;
        left: 20px;
    }
}

legend + .control-group {
    margin-top: auto;
    -webkit-margin-top-collapse: separate;
}

.modal .detail {
    padding: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

/*Formulario Recloser info, ExtSubstation*/
.topCheckBox {
    padding-top: 25px;
}

textarea {
    resize: vertical;
}

/*Inicio selección distribuidora*/
.titulo_selectDis {
    padding-left: 13px;
}

.cuerpo_selectDis {
    font-size: initial;
}

.error_login {
    color: red;
    text-shadow: none;
}

.container_menusuperior {
    width: auto;
    position: relative;
    z-index: 1000;
}

/*Formularios de listados de usuarios y distribuidoras*/
.filtroEnable {
    padding-left: 33px;
    display: initial;
}

/* Visor -------------------------------------------------------------------- */

.ol-mouse-position {

    width: 250px;

    position: absolute;
    top: auto;
    bottom: 8px;
    right: 50%;

    background: rgba(0, 60, 136, 0.6);
    border-radius: 4px;
    color: #eee;

    font-size: 12px;
    text-align: center;
    will-change: contents;

}
/* Mayor opacidad en el color de los elementos del mapa ("+/-" zoom, nivel de zoom(m), "i"*/

.ol-scale-line-inner {
    border: 1px solid #eee;
    border-top: none;
    background: rgba(0, 60, 136, 0.6);
    font-size: 10px;
    text-align: center;
    margin: 1px;
    will-change: contents, width
}

.ol-zoom {
    top: 0.5em;
    left: 0.5em;
    background: rgba(0, 60, 136, 0.6);
}

.ol-attribution {
    text-align: right;
    bottom: 0.5em;
    right: 0.5em;
    max-width: calc(100% - 1.3em);
    background: rgba(0, 60, 136, 0.6);
}
/* Estilos para los iconos de la leyenda */

.layer-legend {
    position: absolute;
    overflow: auto;
    top: 0;
    left: 0px;
    height: 100%;
    width: 300px;
    opacity: 0.8;
    font-size: 0.9em;
}

@media screen and (max-width: 600px) {
    .layer-legend {
        margin-top: 80px;
    }
}

.layer-secondary-legend {
    position: absolute;
    overflow: auto;
    top: 6%;
    right: 0;
    height: 100%;
    width: 210px;
    opacity: 0.9;
    font-size: 1em;
}

.scrollable-list {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #ddd;
    padding: 5px;
}

.layer-filter-legend {
    position: absolute;
    overflow: auto;
    top: 35%;
    right: 0;
    height: 100%;
    width: 165px;
    opacity: 0.9;
    font-size: 1em;
}

.layer-type {
    box-sizing: border-box;
    display: inline-block;
    float: right;
}

.layer-type-linestring {
    width: 35px;
    height: 4px;
    margin-top: 8px;
}

.layer-type-point {
    border-radius: 20px;
    width: 15px;
    height: 15px;
    margin-top: 4px;
    border: 3px solid black;
}

.layer-type-polygon {
    width: 35px;
    height: 15px;
    margin-top: 4px;
    border: 3px solid black;
}

/* Growl -------------------------------------------------------------------- */

.growl-container .alert .close {
    right: 0px;
}

.width_cimdatatype {
    width: 225px !important;
}

/*Resistance */
.sinMarginLeft {
    margin-left: 0px !important;
}

.margLeft10 {
    margin-left: 10px !important;
}

.btnCorregir {
    float: right;
    margin-right: 10px;
}

input[type="radio"] {
    margin-left: 5px;
}

.margLeft20 {
    margin-left: 20px !important;
}

.growl-container.growl-fixed {
    position: fixed;
    float: right;
    width: 400px;
    z-index: 20000000;
}

/* Status =================================================================== */

status-change {
    float: left;
    position: relative;
    top: 10px;
}

status-change a {
    color: #ffffff;
}

/* Search =================================================================== */

search-ctrl a {
    color: #ffffff;
}

/* Read qr directive =================================================================== */

read-qr-directive {
    float: left;
    position: relative;
    top: 10px;
    padding-left: 10px;
}

read-qr-directive a {
    color: #FFFFFF;
}

/* Dual list ================================================================ */

.dual-list-container {
    display: flex;
}

.dual-list-controls {
    display: flex;
    flex-direction: column;
    padding: 0 6px;
}

.dual-list-list {
    flex: 1;
    border: 1px solid #cccccc;
    background-color: white;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    padding: 4px 6px;

    display: flex;
    flex-direction: column;
    min-height: 140px;
    max-height: 140px;
}

.dual-list-list label {
    padding: 2px 4px;
}

.dual-list-list-filter input {
    box-sizing: border-box;
    width: 100%;
    padding: 2px;
    margin: 0;
    height: 24px;
    margin-bottom: 5px;
}

.dual-list-list-items input {
    margin: 0;
    margin-right: 5px;
}

.dual-list-list-items .hidden {
    display: none;
}

.dual-list-list-controls {
    display: flex;
}

.dual-list-list-controls button {
    flex: 1;
}

.dual-list-list-items {
    text-align: left;
    overflow-y: auto;
}

/* Específicos ============================================================== */

.ot_prioridad_alta .tag {
    background-color: red;
    color: white;
}

.ot_prioridad_baja .tag {
    background-color: green;
    color: white;
}

/* Header ----------------------------------------------------------------------------------------------------------- */

/* Máximo z-index para que os menús vaian por enriba dos detail */
#header {
    position: relative;
    z-index: 20000000;
}

/* Estilos básicos do texto para que corte o texto se non ten espazo suficiente */
.category-text {
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}

/*
Responsive dos tamaño dos textos das entradas de menú
Na resolución mínima está o menú despregable (hamburguesa).
Nos diferentes puntos de responsive revísase tanto o padding que engade Bootstrap como o tamaño máximo do texto.
 */

@media (max-width: 1740px) {
    /* Estilos herdados de bootstrap */
    .navbar .nav > li > a {
        float: none;
        padding: 10px 10px 10px;
    }
}

@media (max-width: 1560px) {
    /* Estilos herdados de bootstrap */
    .navbar .nav > li > a {
        float: none;
        padding: 10px 8px 10px;
    }
}

@media (max-width: 1500px) {
    .navbar .nav > li > a {
        float: none;
        padding: 10px 5px 10px;
    }
}

/* Anchos dos textos nos diferentes tamaños. Compre ter en conta que en <980px está o menú despregable. */

@media (min-width: 980px) and (max-width: 1600px) {
    .category-text {
        max-width: 80px;
    }
}

@media (min-width: 980px) and (max-width: 1415px) {
    .category-text {
        max-width: 80px;
    }
}

@media (min-width: 980px) and (max-width: 1390px) {
    .category-text {
        max-width: 60px;
    }
}


@media (min-width: 980px) and (max-width: 1200px) {
    .category-text {
        max-width: 45px;
    }
}

@media (min-width: 980px) and (max-width: 1080px) {
    .category-text {
        max-width: 35px;
    }
}

/* Estilos geolocalización. */

.geolocation-button {
    display: inline-block;
}

.geolocation-label {
    display: flex;
    cursor: pointer;
}

.toggle-on,
.toggle-off {
    height: 30px;
    width: 100%;
    padding-top: 5%;
}

.toggle-on {
    display: none;
}

#toggle-checkbox:checked + .geolocation-label .toggle-on {
    display: inline;
}

#toggle-checkbox:checked + .geolocation-label .toggle-off {
    display: none;
}

#toggle-checkbox-main:checked + .geolocation-label .toggle-on {
    display: inline;
}

#toggle-checkbox-main:checked + .geolocation-label .toggle-off {
    display: none;
}

.custom-slider {
    width: 800px;
    height: 600px;
}

.canvas {
    width: 800px;
    height: 600px;
    margin: 0 auto;
}

.custom-slider img {
    width: max-content;
    height: 600px;
}

.deshabilitada {
    opacity: 0.5;
    pointer-events: none;
}

.pre-scrollable::-webkit-scrollbar {
    width: 10px;
    overflow: auto;
}

.pre-scrollable::-webkit-scrollbar-track {
    background-color: #f1f1f1;
}

.pre-scrollable::-webkit-scrollbar-thumb {
    background-color: rgba(250, 113, 0, 0.71);
    border-radius: 5px;
}

.pre-scrollable::-webkit-scrollbar-thumb:hover {
    background-color: #e35500;
}

.firma-canvas {
    border: 2px solid #ccc;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    width: 100%;
    height: 200px;
    background-color: #f9f9f9;
    cursor: crosshair;
    display: block;
}

.firma-container {
    position: relative;
    margin-bottom: 20px;
}

.firma-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #fa7100;
    color: white;
    width: 97%;
    padding: 10px;
    border-radius: 5px 5px 0 0;
    font-size: 16px;
}

.firma-actions {
    display: flex;
    gap: 10px;
}

.firma-actions button {
    background-color: #fa7100;
    color: white;
    border: none;
    padding: 8px 12px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
}

.firma-actions button:hover {
    background-color: rgba(250, 113, 0, 0.71);
}

.firma-actions button:disabled {
    background-color: #ddd;
    cursor: not-allowed;
}

/* Estilos para las columnas */
.firma-column {
    display: flex;
    flex-direction: column;
    width: 50%;
    margin: 0 10px;
}

.firma-row {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
}

.firma-container-wrapper {
    display: flex;
    justify-content: space-between;
    margin: 20px 0;
    gap: 20px;
}

.disabled-canvas {
    pointer-events: none;
    opacity: 0.5;
}

/* Filtro en las tablas */
.filter-section {
    border: 2px solid rgba(204, 204, 204, 0.56);
    padding: 15px;
    border-radius: 5px;
    background-color: #FFF9F5;
}

.filter-section legend {
    font-size: 16px;
    font-weight: normal;
    color: #333333;
}

.filter-content {
    margin-top: -30px;
}

.custom-growl {
    top: 100px
}

/* Desactiva el botón de cerrar */
.custom-growl .growl-close {
    display: none;
}

/* Ocultar listas colapsadas */
.collapsed ul {
    display: none;
}

/* Tabla ensayos/herrajes salvador */

.orange-header {
    background-color: #FF6000;
    color: white;
}

.table-bordered {
    border: 2px solid #000000;
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 10px;
}

.table-bordered th, .table-bordered td {
    border: 1px solid #000000;
    padding: 5px;
    text-align: center;
}


@media screen and (max-width: 600px) {
    .hide-on-mobile {
        display: none !important;
    }
}
@media (max-height: 1000px) {
    .modal {
        max-height: 100vh;
        overflow-y: auto;
    }
}

.map-toolbar-container {
    position: relative;
    width: 100%;
}

.base-layer-selector {
    position: absolute;
    top: 8px;
    right: 5px;
}

.tools-center {
    position: absolute;
    top: 8px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0.5em;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5em;
}

@media screen and (max-width: 600px) {
    .map-toolbar-container {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }

    .toolbar-row {
        width: 100% !important;
        display: flex !important;
        box-sizing: border-box !important;
        justify-content: flex-end !important;
    }

    .base-layer-selector {
        position: static !important;
        width: max-content !important;
    }

    .tools-center {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 0.5em !important;
        width: 100% !important;
        margin-top: 1.5em !important;
    }
}