@charset "utf-8";

/* ELEMENTOS DOM */

body {
    background-color: #f5f5f5;
}

footer {
    padding-left: 15px;
    padding-right: 15px;
    background-color: #fff;
    margin-top: 10px;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0;
    /* la eliminación del margen superior resuelve un problema que origina que los márgenes escapen de la etiqueta div contenedora. El margen inferior restante lo mantendrá separado de los elementos de que le sigan. */
    padding-right: 0px;
    padding-left: 0px;
    /* la adición de relleno a los lados del elemento dentro de las divs, en lugar de en las divs propiamente dichas, elimina todas las matemáticas de modelo de cuadro. Una div anidada con relleno lateral también puede usarse como método alternativo. */
}

h1 {
    font-size: 155%;
    color: #222;
    font-weight: bold;
}

h2 {
    font-size: 140%;
    color: #2b81af;
}

h3 {
    font-size: 130%;
}

h4 {
    color: #111111;
}

hr {
    border-color: #2b81af;
}

.hr-titles {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

.sidebar-offcanvas {
    padding-left: 0px;
    margin-top: 26px;
}


/*
 * Off Canvas
 * --------------------------------------------------
 */

@media screen and (max-width: 768px) {
    .row-offcanvas {
        position: relative;
        -webkit-transition: all 0.25s ease-out;
        -moz-transition: all 0.25s ease-out;
        transition: all 0.25s ease-out;
    }
    .row-offcanvas-left .sidebar-offcanvas {
        left: -33%;
    }
    .row-offcanvas-left.active {
        left: 33%;
    }
    .sidebar-offcanvas {
        position: absolute;
        top: 0;
        width: 33%;
        margin-left: 10px;
    }
}

@media screen and (max-width: 1024px) {
    body {
        font-size: 13px;
    }
    h4 {
        font-size: 120%;
    }
}


/* GENERICOS */

.mt-0 {
    margin-top: 0px;
}

.pad_10 {
    padding: 10px;
}

.pad_10R {
    padding-right: 10px;
}

.pad_5 {
    padding: 5px;
}

.pad_3 {
    padding: 3px;
}

.pad_7 {
    padding: 7px;
}

.pad_bot_5 {
    padding-bottom: 5px;
}

.marg_0 {
    margin: 0px;
}

.marg_top_2 {
    margin-top: 2px;
}

.marg_right_2 {
    margin-right: 2px;
}

.marg_5 {
    margin: 5px;
}

.marg_top_5 {
    margin-top: 5px;
}

.marg_bot_5 {
    margin-bottom: 5px;
}

.marg_right_10 {
    margin-right: 10px;
}

.marg_left_4 {
    margin-left: 4px;
}

.marg_left_10 {
    margin-left: 10px;
}

.marg_bot_10 {
    margin-bottom: 10px;
}

.marg_rig_10 {
    margin-right: 10px;
}

.marg_top_10 {
    margin-top: 10px;
}

.mrg-bt10 {
    margin-bottom: 10px;
    margin-top: 10px;
}

.mrg-0 {
    margin: 0px;
}

.mrg-l-20 {
    margin-left: 20px;
}

.mrgl-5 {
    margin-left: 5px;
}

.pad_id_10 {
    padding-left: 10px;
    padding-right: 10px;
}

.pdl-15 {
    padding-left: 15px;
}

.pdl-30 {
    padding-left: 30px;
}

.pad_top_15 {
    padding-top: 15px;
}

.pad_top_10 {
    padding-top: 10px;
}

.pad_izq_25 {
    padding-left: 25px;
}

.pdr-6 {
    padding-right: 6px;
}

.marg20T {
    margin-top: 20px;
}

.w-100 {
    width: 100%;
}

.oculto {
    display: none;
}

.borde_gris {
    border: 1px solid #999;
}

.borde_gris_top {
    border-top: 1px dashed #999;
}

.borde_gris_bottom {
    border-bottom: 1px dashed #DDDDDD;
}

.borde_punteado {
    border: 1px dashed #2b81af;
}

.borde_azul {
    border: 3px solid #2b81af;
}

.menu_abm {
    margin-top: 16px;
    padding-left: 5px;
    margin-left: 10px;
    border-right: 1px solid #0088cc;
}

.menu_abm li {
    border-left: 1px solid #0088cc;
    padding-left: 10px;
    padding-right: 10px;
}

.menu_abm a {
    color: #ECEFF1;
}

.negrita {
    font-weight: bold;
}

.text-bold {
    font-weight: bold;
}

.bg-white {
    background-color: white !important;
}

.text-white {
    color: #FFFFFF;
}

.text-light {
    color: #999999;
}

.text-red {
    color: red !important;
}

.wrap {
    white-space: unset;
}


/* LOADER */

.loader {
    position: fixed;
    height: 52px;
    width: 100%;
    background-color: #337ab7;
    z-index: 9999;
    display: none;
}

.spinner {
    margin: 10px auto;
    width: 30px;
    height: 30px;
    position: relative;
}

.container1>div,
.container2>div,
.container3>div {
    width: 6px;
    height: 6px;
    background-color: white;
    border-radius: 100%;
    position: absolute;
    -webkit-animation: bouncedelay 1.2s infinite ease-in-out;
    animation: bouncedelay 1.2s infinite ease-in-out;
    /* Prevent first frame from flickering when animation starts */
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.spinner .spinner-container {
    position: absolute;
    width: 100%;
    height: 100%;
}

.container2 {
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}

.container3 {
    -webkit-transform: rotateZ(90deg);
    transform: rotateZ(90deg);
}

.circle1 {
    top: 0;
    left: 0;
}

.circle2 {
    top: 0;
    right: 0;
}

.circle3 {
    right: 0;
    bottom: 0;
}

.circle4 {
    left: 0;
    bottom: 0;
}

.container2 .circle1 {
    -webkit-animation-delay: -1.1s;
    animation-delay: -1.1s;
}

.container3 .circle1 {
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
}

.container1 .circle2 {
    -webkit-animation-delay: -0.9s;
    animation-delay: -0.9s;
}

.container2 .circle2 {
    -webkit-animation-delay: -0.8s;
    animation-delay: -0.8s;
}

.container3 .circle2 {
    -webkit-animation-delay: -0.7s;
    animation-delay: -0.7s;
}

.container1 .circle3 {
    -webkit-animation-delay: -0.6s;
    animation-delay: -0.6s;
}

.container2 .circle3 {
    -webkit-animation-delay: -0.5s;
    animation-delay: -0.5s;
}

.container3 .circle3 {
    -webkit-animation-delay: -0.4s;
    animation-delay: -0.4s;
}

.container1 .circle4 {
    -webkit-animation-delay: -0.3s;
    animation-delay: -0.3s;
}

.container2 .circle4 {
    -webkit-animation-delay: -0.2s;
    animation-delay: -0.2s;
}

.container3 .circle4 {
    -webkit-animation-delay: -0.1s;
    animation-delay: -0.1s;
}

@-webkit-keyframes bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0.0)
    }
    40% {
        -webkit-transform: scale(1.0)
    }
}

@keyframes bouncedelay {
    0%,
    80%,
    100% {
        transform: scale(0.0);
        -webkit-transform: scale(0.0);
    }
    40% {
        transform: scale(1.0);
        -webkit-transform: scale(1.0);
    }
}


/* BOOTSTRAP */

.navbar {
    border-radius: 0px;
    margin-bottom: 0px;
}

.nav-pills>li>a {
    border-radius: 0px;
}

.table-hover tbody tr:hover td,
.table-hover tbody tr:hover th {
    background-color: #ECEFF1;
}

.ui-autocomplete-loading {
    background: url('../images/loader.gif') no-repeat right center
}

.panel-title {
    font-weight: bold;
}

label {
    cursor: pointer;
}

.fsize12 {
    font-size: 12px;
}

.fsize16 {
    font-size: 16px;
}

.fsize18 {
    font-size: 18px;
}

legend {
    margin-bottom: 10px;
}

.color_medio_pago {
    color: #848484;
}

.cant_facturas {
    font-size: 14px;
    float: right;
    padding: 5px;
}

.fa-2x {
    vertical-align: sub;
}

.main {
    padding-top: 10px;
}

.pagination-detail {
    padding-left: 10px;
    padding-right: 10px;
    margin-top: 15px !important;
}

div.pagination {
    padding-left: 10px;
    padding-right: 10px;
    margin-top: 15px !important;
}

.fixed-table-container {
    border-radius: 0px;
    border: 2px solid #337ab7;
    margin-left: -2px;
}

.fixed-table-toolbar .bs-bars,
.fixed-table-toolbar .search,
.fixed-table-toolbar .columns {
    margin-top: 0px;
}

.control-label {
    padding-top: 6px;
}

.boton_listado {
    cursor: pointer;
}

.boton_modal {
    cursor: pointer;
}

.nav-pills>li.active>a:before {
    content: "- ";
}

.toggle-menu {
    position: absolute;
    z-index: 9;
    margin-top: 3px;
}

.toggle-on {
    margin-left: 50px;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    content: '';
}

.toggle-on::before {
    content: '';
}

.toggle-off {
    margin-left: 100%;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.toggle-off::before {
    content: 'Minimizar menú ';
}

.panel-heading {
    border-radius: 0px;
}

.fila_fichero {
    margin-left: 0px;
    margin-right: 0px;
    border-bottom: 1px solid #ddd;
}

.nav-pills>li.active>a,
.nav-pills>li.active>a:focus,
.nav-pills>li.active>a:hover {
    font-weight: bold;
}

#letra_comprobante {
    font-size: 24px;
    text-align: center;
    min-height: 110px;
    font-weight: bold;
}

.font-white {
    color: white;
}

#articulos .table-condensed>tbody>tr>td,
.table-condensed>tbody>tr>th,
.table-condensed>tfoot>tr>td,
.table-condensed>tfoot>tr>th,
.table-condensed>thead>tr>td,
.table-condensed>thead>tr>th {
    padding: 3px;
}

#articulos .table>tbody>tr>td {
    border-top: 0px;
}

#articulos .table>thead>tr {
    background-color: #337ab7;
    color: white;
}

.num_articulo {
    text-align: right;
    margin-top: -6px;
    font-weight: bold;
    border-bottom: 1px solid white;
    margin-bottom: 4px;
}

.sombraGris {
    -webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.35);
    -moz-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.35);
    box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.35);
}

.affix .form-group {
    margin-bottom: 5px;
}

input[autocomplete='off']:read-only {
    background-color: transparent!important;
}

.bootstrap-table .fixed-table-container .table input[type=radio],
.bootstrap-table .fixed-table-container .table input[type=checkbox] {
    margin-right: 4px !important;
}

.input-lg {
    font-size: 22px;
}

.font-400 {
    font-weight: 400;
}

.letter-space-1 {
    letter-spacing: 1px;
}

.redondeado_3 {
    border-radius: 3px;
}

.fixed-table-container thead th .sortable {
    padding-right: 20px;
}

@media screen and (max-width: 1368px) {
    .table-informe {
        width: 1460px;
        max-width: 1460px;
        overflow-x: scroll;
    }
}