:root {
    --black: #2b2b2b;
    --blackRGB: 41, 41, 41;
    --blackHover: #607d8b;
    --blackHoverRGB: 96, 125, 138;
    --gray: #a1abb2;
    --grayRGB: 160, 170, 176;
    --grayHover: #474b52;
    --grayHoverRGB: 71, 75, 82;
    --lightGray: #eceef0;
    --lightGrayRGB: 237, 239, 240;
/*    --corp: #125183;
    --corpRGB: 7, 32, 52;*/
    --corpHover: #0a2d4a;
    --corpHoverRGB: 4, 18, 29;    
    --info: #a1abb2;
    --infoRGB: 160, 170, 176;
    --infoHover: #474b52;
    --infoHoverRGB: 71, 75, 82;
    --success: #00d385;
    --successRGB: 0, 209, 129;
    --successHover: #007360;
    --successHoverRGB: 0, 115, 96;
    --warning: #ff9800;
    --warningRGB: 225, 149, 0;
    --warningHover: #f08400;
    --warningHoverRGB: 240, 132, 0;
    --danger: #f44336;
    --dangerRGB: 242, 68, 56;
    --dangerHover: #b71c1c;
    --dangerHoverRGB: 181, 29, 29;
}
.text-info,
.txt-info,
.lnk-info {
    color: var(--info);
}
.desktop .lnk-info:focus,
.desktop .lnk-info:hover {
    color: var(--infoHover);
}
.text-success,
.txt-success,
.lnk-success {
    color: var(--success);
}
.desktop .lnk-success:focus,
.desktop .lnk-success:hover {
    color: var(--successHover);
}
.text-warning,
.txt-warning,
.lnk-warning {
    color: var(--warning);
}
.desktop .lnk-warning:focus,
.desktop .lnk-warning:hover {
    color: var(--warningHover);
}
.text-danger,
.txt-danger,
.lnk-danger {
    color: var(--danger);
}
.desktop .lnk-danger:focus,
.desktop .lnk-danger:hover {
    color: var(--dangerHover);
}
.overflow-scroll {
    overflow: scroll;
}
.overflowx-scroll {
    overflow-x: scroll;
}
.overflowy-scroll {
    overflow-y: scroll;
}

body {
    background-color: var(--lightGray);
    font-family: 'IBM Plex Sans Condensed', sans-serif;
    font-size: 14px;
}

/* loader */
body.cargando #preload {
     display: flex!important;
}
body.cargando #preload {
    display: flex!important;
    background-color: rgba(255, 255, 255, 0.3)!important;
}

/* textos */
h1, .h1, h2, .h2, h3, .h3 {
    margin-top: 0;
}
h1 {
    margin-bottom: 20px;
    font-size: 22px;
    font-weight: 500;
}
big {
    font-size: 16px;
}
small {
    font-size: 12px;
}
.text-italic    {font-style: italic}
.text-underline {text-decoration: underline}
.text-medium    {font-weight: 500}
.text-semibold  {font-weight: 600}
.text-bold      {font-weight: 700}
.text-nowrap    {white-space: nowrap}


/* links y botones */
body,
a,
.lnk-black {
    color: var(--black);
}
.desktop a:focus,
.desktop a:hover,
.desktop .lnk-black:focus
.desktop .lnk-black:hover {
    color: var(--corp);
}
.desktop a:focus,
.desktop a:hover {
    text-decoration: none;
}
.txt-corp,
.lnk-corp {
    color: var(--corp);
}
.desktop .lnk-corp:focus,
.desktop .lnk-corp:hover {
    color: var(--corpHover);
}
.txt-gray,
.lnk-gray {
    color: var(--gray);
}
.desktop .lnk-gray:focus,
.desktop .lnk-gray:hover {
    color: var(--grayHover);
}

.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus {
    outline: none;
}
.btn,
.ajax-file-upload {
    height: 30px;
    padding: 3px 12px;
    border: 1px solid transparent;
    border-radius: 0;
    box-shadow: none;
    outline: none;
    font-size: 14px;
    font-weight: 500;
    display: -webkit-inline-flex;
    display: inline-flex;
    align-items: center;
    -webkit-align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.btn-xl {
    height: 60px;
    padding: 18px 12px;
}
.btn-lg {
    height: 50px;
    padding: 13px 12px;
}
.btn-md {
    height: 40px;
    padding: 8px 12px;
}
.btn-sm {
    height: 32px;
    padding: 4px 12px;
}
.btn-xs {
    height: 30px;
    padding: 3px 12px;
}
.desktop .btn:focus,
.desktop .btn:hover {
    border-color: transparent;
}
.btn + .btn,
.btn + .btn-group,
.btn-group + .btn {
    margin-left: 4px;
}
.btn-sm,
.ajax-file-upload {
    height: 32px;
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: 14px;
}
.btn-black {
    background-color: var(--black);
    color: white;
}
.desktop .btn-black:focus,
.desktop .btn-black:hover {
    background-color: var(--blackHover);
    color: white;
}
.btn-gray {
    background-color: var(--lightGray);
    color: var(--gray);
}
.desktop .btn-gray:focus,
.desktop .btn-gray:hover {
    background-color: var(--gray);
    color: var(--lightGray);
}
.btn-corp {
    background-color: var(--corp);
    color: white;
}
.desktop .btn-corp:focus,
.desktop .btn-corp:hover {
    background-color: var(--corpHover);
    color: white;
}
.btn-corp-neg {
    border-color: var(--corp);
    background-color: transparent;
    color: var(--corp);
}
.desktop .btn-corp-neg:focus,
.desktop .btn-corp-neg:hover {
    background-color: var(--corp);
    color: white;
}
.btn-info {
    background-color: rgba(var(--infoRGB), 0.2);
    color: var(--info);
}
.desktop .btn-info:focus,
.desktop .btn-info:hover {
    background-color: var(--info);
    color: white;
}
.btn-success {
    background-color: rgba(var(--successRGB), 0.2);
    color: var(--success);
}
.desktop .btn-success:focus,
.desktop .btn-success:hover {
    background-color: var(--success);
    color: white;
}
.btn-warning {
    background-color: rgba(var(--warningRGB), 0.2);
    color: var(--warning);
}
.desktop .btn-warning:focus,
.desktop .btn-warning:hover {
    background-color: var(--warning);
    color: white;
}
.btn-danger {
    background-color: rgba(var(--dangerRGB), 0.2);
    color: var(--danger);
}
.desktop .btn-danger:focus,
.desktop .btn-danger:hover {
    background-color: var(--danger);
    color: white;
}
.btn-square,
.btn-circle {
    width: 30px;
    height: 30px;
    padding: 3px;
}
.btn-square-lg,
.btn-circle-lg {
    width: 40px;
    height: 40px;
    padding: 8px;
}
.btn-circle,
.btn-circle-lg {
    border-radius: 50%;
}
.ajax-file-upload {
    border-color: var(--gray);
    background-color: white;
    color: var(--gray)!important;
}
.desktop .ajax-file-upload:focus,
.desktop .ajax-file-upload:hover {
    border-color: var(--gray);
    background-color: var(--gray);
    color: white!important;
}
.btn .mdi {
    margin-right: 6px;
}
.btn .mdi:last-child {
    margin-right: 0;
}
button.lnk-corp {
    padding: 0;
    box-shadow: none;
    outline: none;
    border: none;
    background-color: transparent;
}

/* avisos */
.alert {
    padding: 10px 15px;
    border: 0;
    border-left: 8px solid;
    border-radius: 4px;
    color: var(--black);
}
.alert .mdi {
    vertical-align: middle;
    display: inline-block;
}
.alert big {
    padding: 8px 0;
    font-size: 18px;
    display: block;
}
.alert big .mdi {
    margin-right: 5px;
    font-size: 28px;
    line-height: 28px;
}
.alert-info {
    background-color: rgba(var(--infoRGB), 0.15);
    border-color: var(--info);
}
.alert-info .mdi {
    color: var(--info);
}
.alert-success {
    background-color: rgba(var(--successRGB), 0.15);
    border-color: var(--success);
}
.alert-success .mdi {
    color: var(--success);
}
.alert-warning {
    background-color: rgba(var(--warningRGB), 0.15);
    border-color: var(--warning);
}
.alert-warning .mdi {
    color: var(--warning);
}
.alert-danger {
    background-color: rgba(var(--dangerRGB), 0.15);
    border-color: var(--danger);
}
.alert-danger .mdi {
    color: var(--danger);
}
.label {
    border-radius: 0;
    font-weight: normal;
}

/* iconos */
.mdi {
    font-size: 22px;
    line-height: 22px;
}
.mdi-10 {
    font-size: 10px;
    line-height: 10px;
}
.mdi-12 {
    font-size: 12px;
    line-height: 12px;
}
.mdi-16 {
    font-size: 16px;
    line-height: 16px;
}
.mdi-18 {
    font-size: 18px;
    line-height: 18px;
}
.mdi-28 {
    font-size: 28px;
    line-height: 28px;
}

/* imagenes */
.img-border {
    border: 1px solid var(--gray);
    border-radius: 4px;
    overflow: hidden;
}

/* modal */
.dcModal {
    background-color: rgba(43, 43, 43, 0.3);
}
.dcModal .modal-dialog {
    min-height: 100vh;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    pointer-events: none;
}
.dcModal .modal-dialog .modal-content {
    width: 100%;
    border: 0;
    border-radius: 4px;
    box-shadow: 0 6px 14px 3px rgba(0, 0, 0, 0.1);
    pointer-events: auto;
}
.dcModal .modal-header,
.dcModal .modal-body,
.dcModal .modal-footer {
    padding: 20px;
    border-color: var(--lightGray);
}
.dcModal .modal-header {
    padding-top: 15px;
    padding-bottom: 15px;
}
.dcModal .modal-title {
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}
.dcModal .close {
    color: transparent;
    font-size: 0;
    opacity: 1;
}
.dcModal .close:after {
    content: '\F0156';
    color: var(--black);
    font-family: 'Material Design Icons';
    font-size: 24px;
}
.desktop .dcModal .close:focus:after,
.desktop .dcModal .close:hover:after {
    color: var(--corp);
}
.dcModal + .modal-backdrop {
    background-color: transparent;
}
.dcModal .modal-buttons {
    padding: 20px 20px 0;
    border-top: 1px solid var(--lightGray);
    margin-left: -20px;
    margin-right: -20px;
    text-align: right;
}
.dcModal .modal-buttons * + * {
    margin-left: 10px;
}
.dcModal .modal-footer .btn {
    width: 140px;
}
.dcModal .modal-footer .btn-primary {
    background-color: var(--corp);
    color: white;
}
.desktop .dcModal .modal-footer .btn-primary:hover {
    background-color: var(--corpHover);
    color: white;
}
.dcModal .modal-footer .btn-default {
    background-color: white;
    color: var(--corp);
}
.desktop .dcModal .modal-footer .btn-default:hover {
    background-color: var(--lightGray);
}
.dcModal .row {
    margin-left: -5px;
    margin-right: -5px;
    display: -webkit-flex;
    display: flex;
    -weebkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.dcModal .row:before,
.dcModal .row:after {
    display: none;
}
.dcModal .row > * {
    padding-left: 5px;
    padding-right: 5px;
}
.dcModal fieldset {
    margin-top: 20px;
}
.dcModal fieldset .fieldset-tit {
    padding-bottom: 10px;
    border-bottom: 1px solid var(--lightGray);
    margin-bottom: 10px;
    color: var(--corp);
    font-size: 16px;
    font-weight: normal;
}
.dcModal fieldset .fieldset-tit small {
    margin-left: 4px;
    color: var(--gray);
}
.dcModal h2 {
    font-size: 14px;
    font-weight: 600;
}
@media (min-width: 960px) {
    .dcModal .modal-dialog {
        width: 824px;
    }
}
@media (min-width: 1280px) {
    .dcModal .modal-lg {
        width: 1224px;
    }
}
@media (min-width: 768px) {
    .dcModal .modal-sm {
        width: 528px;
    }
    .dcModal .modal-dialog {
        padding: 30px 0;
    }
}
@media (max-width: 767px) {
    .dcModal .modal-dialog {
        padding: 10px;
    }
}

/* forms */
.form-control {
    height: 40px;
    border-color: var(--gray);
    box-shadow: none!important;
    border-radius: 0;
    color: var(--black);
    font-weight: 400;
    resize: none;
}
.form-control:focus {
    border-color: var(--gray);
    box-shadow: none;
}
.form-control::-webkit-input-placeholder {
    color: var(--gray);
}
.form-control::-ms-input-placeholder {
    color: var(--gray);
}
.form-control:-ms-input-placeholder {
    color: var(--gray);
}
.form-control::-moz-placeholder {
    color: var(--gray);
}
.form-control:-moz-placeholder {
    color: var(--gray);
}
.form-control::placeholder {
    color: var(--gray);
}
.form-control[disabled],
.form-control[disabled] + .input-group-addon {
    background-color: var(--lightGray);
    border-color: var(--lightGray);
}

.control-label {
    font-size: 12px;
    font-weight: 600;
}

.form-select {
    position: relative;
    z-index: 1;
}
.form-select .form-control {
    padding-right: 32px;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.form-select:before {
    content: '\F35D';
    color: var(--black);
    font-family: 'Material Design Icons';
    font-size: 20px;
    position: absolute;
    z-index: -1;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
}
.form-select .form-control:focus {
    border-color: var(--corp);
}

.form-selectPosicion .form-control {
    height: 30px;
    padding: 3px 17px 3px 6px;
}
.form-selectPosicion:before {
    right: 1px;
}

.select2-container {
    max-width: 100%;
}
.select2-container--default,
.select2-selection--single {
    border-radius: 0!important;
}
.select2-container .select2-selection--single {
    height: 40px;
}
.select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 38px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 38px;
}

.input-group,
.input-group .input-group-addon {
    display: -webkit-flex;
    display: flex;
}
.input-group .input-group-addon,
.input-group .input-group-btn {
    width: auto;
}
.input-group .input-group-addon {
    border-color: var(--gray);
    border-radius: 0;
    background-color: transparent;
    color: var(--gray);
    -webkit-flex: 0 0;
    flex: 0 0;
    -webkit-align-items: center;
    align-items: center;
}
.input-group .form-control {
    width: 0;
    display: block;
    -webkit-flex: 1 1 auto;
    flex: 1 1 auto;
}
.input-group .form-control:nth-child(2) {
    padding-left: 0;
    border-left: 0;
}
.input-group > .form-control:nth-last-child(2) {
    padding-right: 0;
    border-right: 0;
}
.input-group .input-group-btn .btn {
    height: 100%;
}

.help-block {
    font-size: 12px;
}

.has-success .control-label,
.has-success .help-block {
    color: var(--success)!important;
}
.has-success .form-control,
.has-success .input-group-addon {
    border-color: var(--success)!important;
}
.has-error .control-label,
.has-error .help-block {
    color: var(--danger)!important;
}
.has-error .form-control,
.has-error .input-group-addon {
    border-color: var(--danger)!important;
}

/* layout */
.container-fluid {
    padding-left: 20px;
    padding-right: 20px;
}
.flex {
    display: -webkit-flex;
    display: flex;
}
.inline-flex {
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    align-items: center;
}
.flex-aligncenter {
    -webkit-align-items: center;
    align-items: center;
}
.flex-alignbottom {
    -webkit-align-items: flex-end;
    align-items: flex-end;
}
.flex-separeleft {
    margin-left: auto;
}
.flex-wrap {
    -wwebkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex .flex-grow {
    -webkit-flex-grow: 1;
    flex-grow: 1;
}
.flex .flex-shrink {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
}
.margin-left {
    margin-left: 12px;
}
.margin-right {
    margin-right: 12px;
}
.margin-row {
    margin-left: -4px;
    margin-right: -4px;
}
.padding-col {
    padding-left: 4px;
    padding-right: 4px;
    padding-bottom: 4px;
}
.margin-col {
    margin-left: 4px;
    margin-right: 4px;
    margin-bottom: 4px;
}

.table-block {
    margin-top: 10px;
}
.table-block .table {
    margin-bottom: 12px;
    border-bottom: none;
}
.table-block .table tr > * {
    min-width: 100px;
    padding-left: 20px;
    padding-right: 20px;
    border: 0;
    vertical-align: middle;
}
.table-block .table tr > th {
    height: 60px;
    background-color: rgba(var(--corpRGB), 0.15);
    color: var(--corp);
    font-weight: 600;
    white-space: nowrap;
}
.table-block .table tr > th a {
    color: var(--corp);
}
.desktop .table-block .table tr > th a:focus,
.desktop .table-block .table tr > th a:hover {
    color: var(--corpHover);
}
.table-block .table tr > th a > * {
    vertical-align: middle;
}
.table-block .table tr > td {
    padding-top: 12px;
    padding-bottom: 12px;
    position: relative;
}
.desktop .table-block .table tr:focus > td,
.desktop .table-block .table tr:hover > td {
    background-color: rgba(var(--grayRGB), 0.1);
}
.table-block .table tr > td:before,
.table-block .table tr:last-child > td:after {
    content: '';
    width: 100%;
    height: 1px;
    background-color: var(--lightGray);
    position: absolute;
    bottom: 0;
    left: 0;
}
.table-block .table tr:last-child > td:after {
    bottom: -5px;
}
.table-block .table tr > td:first-child:before,
.table-block .table tr > td:last-child:before,
.table-block .table tr:last-child > td:first-child:after,
.table-block .table tr:last-child > td:last-child:after {
    width: calc(100% - 20px);
}
.table-block .table tr > td:first-child:before,
.table-block .table tr:last-child > td:first-child:after {
    left: 20px;
}
.table-block .table img {
    width: 48px;
    height: 48px;
    border: 1px solid var(--gray);
    border-radius: 4px;
}
.table-block .table .form-select {
    min-width: 70px;
}
.table-block .table .input-group {
    min-width: 200px;
}
.modal .table-block {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
}
.modal .table-block .table tr > * {
    padding-left: 10px;
    padding-right: 10px;
}
.modal .table-block .table tr:last-child > td:after {
    display: none;
}
.table-responsive {
    overflow-y: visible;
}
.table .minW-100 {
    min-width: 100px;
}
.table .minW-50 {
    min-width: 50px;
}

.paginador > * {
    border: 1px solid transparent;
    border-radius: 4px;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
}
.paginador > * + * {
    margin-left: 2px;
}
.paginador > span {
    padding-top: 3px;
    background-color: var(--lightGray);
    color: var(--gray);
}
.paginador > a {
    font-size: 12px;
}
.paginador > a.act {
    background-color: var(--corp);
    color: white;
}
.paginador > a:first-child,
.paginador > a:nth-child(2),
.paginador > a:last-child,
.paginador > a:nth-last-child(2) {
    padding-top: 3px;
    border-color: var(--corp);
    color: var(--corp);
}
.desktop .paginador > a:first-child:focus,
.desktop .paginador > a:first-child:hover,
.desktop .paginador > a:nth-child(2):focus,
.desktop .paginador > a:nth-child(2):hover,
.desktop .paginador > a:last-child:focus,
.desktop .paginador > a:last-child:hover,
.desktop .paginador > a:nth-last-child(2):focus,
.desktop .paginador > a:nth-last-child(2):hover {
    background-color: var(--corp);
    color: white;
}
.paginador .mdi {
    font-size: 19px;
}
.pag-items .form-select {
    margin-right: 20px;
}
.pag-items .form-select .form-control {
    height: 32px;
    padding-left: 10px;
    border-color: var(--corp);
    color: var(--gray);
    font-size: 12px;
}

header {
    border-bottom: 1px solid var(--lightGray);
    background-color: white;
    position: relative;
}
header .flex {
    height: 60px;
}
header .flex > * + * {
    margin-left: 20px;
}
header #header-logo {
    max-height: 24px;
    margin-right: auto;
}
header #user-menu {
    padding-top: 21.5px;
    padding-bottom: 21.5px;
    margin-left: 40px;
}
header #user-menu a {
    display: block;
}
header #user-menu big,
header #duacode-menu big {
    margin-right: 20px;
}
header #user-menu img {
    width: 40px;
    border-radius: 4px;
}
header #user-menu .btn-success {
    font-size: 24px;
    font-weight: 700;
}
header .dropdownMenu .dropdownMenu-cont {
    width: 250px;
    box-shadow: 13px 0 rgba(161, 171, 178, 0.05);
}
header .dropdownMenu .dropdownMenu-cont a {
    padding: 10px 15px;
    border-left: 4px solid transparent;
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}
header .dropdownMenu .dropdownMenu-cont a:before {
    content: '';
    width: calc(100% - 30px);
    height: 1px;
    opacity: 0.3;
    position: absolute;
    bottom: 0;
    left: 15px;
}
header .dropdownMenu .dropdownMenu-cont a .mdi {
    margin-right: 10px;
}
header #user-menu,
header #duacode-menu {
    position: static;
}
header #user-menu .dropdownMenu-cont,
header #duacode-menu .dropdownMenu-cont {
    left: auto;
    right: 0;
}
header #user-menu .dropdownMenu-cont {
    border: 1px solid var(--lightGray);
    font-weight: 600;
}
header #user-menu .dropdownMenu-cont a:before {
    background-color: var(--gray);
}
header #user-menu .dropdownMenu-cont a:last-child:before {
    display: none;
}
header #duacode-menu .dropdownMenu-cont a:before {
    background-color: white;
}
header #user-menu .dropdownMenu-cont a:hover {
    border-color: var(--corp);
    background-color: rgba(var(--corpRGB), 0.15);
    color: var(--corp);
}
header #duacode-menu .dropdownMenu-cont a:hover {
    border-color: var(--corp);
    background-color: white;
    color: var(--corp);
}
header #duacode-menu {
    margin-right: -20px;
}
header #duacode-menu .dropdownMenu-toggle {
    width: 60px;
    height: 60px;
    border-radius: 0;
    position: relative;
    z-index: 50;
}
header #duacode-menu .dropdownMenu-toggle .mdi,
header #duacode-menu .dropdownMenu-cont a:first-child .mdi {
    font-size: 40px;
}
header #duacode-menu .dropdownMenu-cont {
    height: 100vh;
    background-color: var(--corp);
    top: 0;
}
header #duacode-menu .dropdownMenu-cont a {
    color: white;
}
header #duacode-menu .dropdownMenu-cont a:first-child {
    height: 60px;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
}
header #duacode-menu .dropdownMenu-cont a:first-child:before {
   width: 100%;
   left: 0;
}

main {
    position: relative;
    min-height: calc(100vh - 61px);
}

main aside {
    width: 250px;
    height: calc(100vh - 61px);
    padding: 20px 20px 0;
    border-right: 1px solid var(--lightGray);
    background-color: white;    
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;    
    -webkit-transition: width 0.2s;
    -moz-transition: width 0.2s;
    transition: width 0.2s;
    overflow: auto;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9;
}
main aside .dropdownMenu .dropdownMenu-cont {
    background-color: transparent;
    position: static;
}
main aside .dropdownMenu .dropdownMenu-cont,
.desktop main aside .dropdownMenu:hover .dropdownMenu-cont {
    display: none;
}    
main aside .dropdownMenu-on .dropdownMenu-cont,
.desktop main aside .dropdownMenu-on:hover .dropdownMenu-cont {
    display: block;
}
main aside nav > div > a,
main aside nav > .n1 .n2 > a {
    padding: 10px 20px 10px 16px;
    border-left: 4px solid transparent;
    border-bottom: 1px solid var(--lightGray);
    margin-left: -20px;
    margin-right: -20px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}
main aside nav > .n1 .n2  {
    margin-left: 20px;
}
main aside nav > .n1 .n2:first-of-type > a {
    border-top: 1px solid var(--lightGray);
}
main aside nav > .n1 .n2:last-of-type > a {
    border-top: none;
}
main aside nav > div > a .mdi {
    color: var(--gray);
    font-size: 24px;
}
main aside nav > .act > a,
.desktop main aside nav > .n1:focus > a,
.desktop main aside nav > .n1:hover > a  {
    color: var(--corp);
    font-weight: 500;
}
main aside nav > .n1.act > a,
.desktop main aside nav > .n1:focus > a,
.desktop main aside nav > .n1:hover > a {
    background-color: rgba(var(--corpRGB), 0.15);
    border-left-color: var(--corp);
}
main aside nav > .n1 .mdi-menu-down {
    margin-left: auto;
}
main aside nav > .dropdownMenu-on .mdi-menu-down{
    transform: rotate(270deg);
}
.desktop main aside nav > .n1 .dropdownMenu-cont:hover .n2 a {
    color: var(--gray);
}
main aside nav > .n1 .dropdownMenu-cont .n2.act > a,
.desktop main aside nav > .n1 .dropdownMenu-cont .n2 > a:focus,
.desktop main aside nav > .n1 .dropdownMenu-cont .n2 > a:hover {
    background-color: rgba(var(--corpRGB), 0.15);
    color: var(--corp);
}
main aside nav > .act > a .mdi,
.desktop main aside nav > .n1:focus > a .mdi,
.desktop main aside nav > .n1:hover > a .mdi,
main aside nav > .n1 .n2.act > a .mdi,
.desktop main aside nav > .n1 .dropdownMenu-cont .n2 > a:focus .mdi,
.desktop main aside nav > .n1 .dropdownMenu-cont .n2 > a:hover .mdi{
    color: var(--corp);
}
main aside nav > .n1 .n2 > a > .mdi-checkbox-blank-circle {
    color: var(--gray);
    font-size: 5px;
}
main aside nav > .n1 > a span,
main aside nav > .n1 .n2 > a span {
    margin-left: 10px;
}
main aside #copyright {
    padding-top: 20px;
    padding-bottom: 20px;
    margin-top: auto;
}
main aside #copyright a > * {
    vertical-align: middle;
}
main aside #copyright img {
    width: 48px;
    margin-left: 5px;
}

main section {
    -webkit-flex-grow: 1;
    flex-grow: 1;
}
main section #section-top {
    padding: 10px 22px;
    border-bottom: 1px solid var(--lightGray);
    background-color: white;
}
main section #section-top #breadcrumb > * {
    vertical-align: middle;
}
main section #section-cont {
    height: calc(100vh - 114px);
    padding: 20px 20px 0;
    overflow: auto;
}
main section #section-cont > .row {
    margin-left: -10px;
    margin-right: -10px;
}
main section #section-cont > .row > * {
    padding-left: 10px;
    padding-right: 10px;
}
.form-flex .flex,
.form-flex .row {
    margin: -5px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
/*    -webkit-align-items: flex-end;
    align-items: flex-end;*/
}
.form-flex .flex > * {
    margin: 5px;
}
.form-flex .flex > * {
    width: 200px;
}
.form-flex .row:before,
.form-flex .row:after {
    display: none;
}
.form-flex .row > * {
    padding: 5px;
}
.form-flex .row .form-group {
    margin: 0;
}
.bloque {
    padding: 20px;
    border-radius: 4px;
    margin-bottom: 20px;
    box-shadow: 0 0 13px 0 rgba(var(--grayRGB), 0.05);
    background-color: white;
}
.bloque-nopadding {
    padding: 0;
}
.bloque h1 {
    margin-bottom: 0;
}
.bloque .flex h1 b {
    font-weight: normal;
}
.bloque-sub {
    padding-bottom: 10px;
    border-bottom: 1px solid var(--lightGray);
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
* + .bloque-sub {
    margin-top: 40px;
}
.bloque-sub h2,
.bloque-sub h3 {
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 600;
}
.bloque-sub .lnk-corp,
.bloque-sub .lnk-gray {
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-align-items: center;
    align-items: center;
}
.bloque-sub + .tabla-perfil,
.bloque-sub + .table-block {
    margin-top: -10px;
}
.bloque-tabs {
    padding: 0;
    font-size: 16px;
    display: -webkit-flex;
    display: flex;
    overflow: auto;
}
.bloque-tabs a {
    padding: 6px 12px;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    text-align: center;
    -webkit-flex: 1 1 180px;
    flex: 1 1 180px;
}
.bloque-tabs a.active {
    border-bottom-color: var(--corp);
}

main #section-cont .bloque .flex-aligncenter,
main #section-cont .bloque.flex-aligncenter{
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
main #section-cont .bloque .flex-aligncenter .flex-separeleft .btn,
main #section-cont .bloque .flex-aligncenter .flex-separeleft .btn-group,
main #section-cont .bloque.flex-aligncenter .flex-separeleft .btn,
main #section-cont .bloque.flex-aligncenter .flex-separeleft .btn-group{
    margin: 4px;
}
main #section-cont .bloque .flex-aligncenter .flex-separeleft .btn-group .btn,
main #section-cont .bloque.flex-aligncenter .flex-separeleft .btn-group .btn{
    margin: 0;
}
.bloque .row,
.tabla-perfil .row {
    margin-left: -5px;
    margin-right: -5px;
}
.bloque .row > *,
.tabla-perfil .row > * {
    padding-left: 5px;
    padding-right: 5px;
}
.tabla-perfil .row {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.tabla-perfil .row:before,
.tabla-perfil .row:after {
    display: none;
}
.tabla-perfil .row > div {
    padding-top: 20px;
}
.tabla-perfil .tabla-perfil-tit {
    color: var(--gray);
    font-size: 12px;
    font-weight: 500;
}
.perfil-imagenes.row > * {
    margin-bottom: 10px;
}
.perfil-imagenes .perfil-imagen {
    margin-bottom: 6px;
    position: relative;
}
.perfil-imagenes .perfil-imagen a {
    display: block;
}
.perfil-imagenes .perfil-imagen .checkbox {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    margin: 0;
    background-color: white;
    position: absolute;
    z-index: 1;
    top: 5px;
    left: 5px;
}
.perfil-imagenes .perfil-imagen .checkbox input[type='checkbox'] {
    margin: 0;
    border-color: var(--gray);
    background-color: white;
    /*opacity: 0.4;*/
}
.perfil-imagenes .perfil-imagen .checkbox input[type='checkbox']:checked {
    opacity: 1;
}
.perfil-imagenes .form-select .form-control {
    height: 32px;
}


#checkImagenesMultimedia {
    display: none;
}
.checkImagenesMultimedia {
    display: none;
}
.checkAdjuntosMultimedia {
    display: none;
}

#scroll-up {
    opacity: 0.5;
    position: fixed;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    display: none;
}
.desktop #scroll-up:focus,
.desktop #scroll-up:hover {
    background-color: var(--corp);
    opacity: 1;
}


#aviso-cookies {
    width: 100%;
    padding: 15px;
    background-color: rgba(255,255,255,0.75);
    font-size: 14px;
    text-align: center;
    position: fixed;
    z-index: 10;
    bottom: 0;
    left: 0;
}
#unlogged {
    min-height: var(--vh);
    background-image: url('../../../images/dc_modulos/admin/unlogged-background.jpg');
    background-size: cover;
    background-position: center;
    background-color: var(--corp);
    background-blend-mode: multiply;
    font-size: 16px;
    line-height: 1.2;
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
#unlogged #unlogged-cont {
    width: 580px;
    max-width: 100%;
    border-radius: 0;
    box-shadow: 0 6px 14px 3px rgba(0, 0, 0, 0.1);
    background-color: white;
}
#unlogged #unlogged-cont #logo {
    margin-bottom: 23px;
    text-align: center;
}
#unlogged #unlogged-cont h1 {
    margin-bottom: 18px;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}
#unlogged #unlogged-cont form .form-control,
#unlogged #unlogged-cont form .input-group-addon {
    border-color: var(--black);
}
#unlogged #unlogged-cont form .form-control {
    height: 50px;
}
#unlogged #unlogged-cont form .input-group-addon {
    text-transform: uppercase;
}
#unlogged #unlogged-cont form .input-group-addon span {
    cursor: pointer;
}
#unlogged #unlogged-cont form .control-label {
    font-size: 14px;
    font-weight: bold;
}
#unlogged #unlogged-cont form .btn {
    height: 50px;
    margin-top: 30px;
    font-size: 16px;
    font-weight: bold;
}
#unlogged #unlogged-cont form .btn,
#unlogged #unlogged-cont form .btn:active,
#unlogged #unlogged-cont form .btn:hover {
    border: 1px solid var(--corp);
    background-color: var(--corp);
    color: white;
}
#unlogged #unlogged-cont form .btn:focus,
.desktop #unlogged #unlogged-cont form .btn:hover {
    background-color: white;
    color: var(--corp);
}
#unlogged #unlogged-cont form .has-error .control-label {
    color:var(--black)!important;
}
#unlogged #unlogged-cont form .error-login-admin,
#unlogged #unlogged-cont form .error-login-admin a {
    color: var(--danger);
}
#unlogged #unlogged-cont form .error-login-admin {
    font-style: italic;
}
#unlogged #unlogged-cont form .error-login-admin a {
    text-decoration: underline;
}


.checkbox {
    color: var(--black);
}
.checkbox label {
    padding-left: 0;
    font-size: 14px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}
.checkbox label a {
    color: var(--black);
    text-decoration: underline;
}
.desktop .checkbox label a:focus,
.desktop .checkbox label a:hover {
    color: var(--black);
}
.checkbox input[type='checkbox'] {
    width: 14px;
    height: 14px;
    border: 1px solid var(--black);
    border-radius: 0;
    margin: 0 6px 0 0;
    background-color: white;
    position: static;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    box-shadow: none;
}
.checkbox input[type='checkbox']:checked {
    /*border-color: var(--corp);*/
    background-image: url('../../../images/iconos/checkbox-black.svg');
    background-size: auto 14px;
    background-repeat: no-repeat;
    background-position: center;
    background-color: white;
}

.captcha .form-control {
    text-transform: uppercase;
}
.captcha .input-group-addon {
    background-color: var(--black);
}
.captcha .input-group-addon a {
    margin-left: 4px;
    color: white;
}
.desktop .captcha .input-group-addon a:focus,
.desktop .captcha .input-group-addon a:hover {
    color: var(--corp);
}




/* vistas generador */
.formEditar .row {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formEditar .row:before,
.formEditar .row:after {
    display: none;
}




@media (min-width: 768px) {
    #unlogged {    
        padding: 15px; 
    }
    #unlogged #unlogged-cont {    
        padding: 40px;
    }
    #unlogged #unlogged-cont form .btn {
        width: 216px;
    }
    #unlogged #unlogged-cont #logo img {
        width: 140px;
        /*height: 45px;*/
    }
    
    header #header-logo {
        max-width: 165px;
    }
    
    main > section {
        padding-left: 250px;
    }  
    .sidebar-collapse main > section {
        padding-left: 60px;
    }
    .sidebar-collapse.mobile main > section {
        padding-left: 0;
    }
    
    .sidebar-collapse main aside {
        width: 60px;
    }
    .sidebar-collapse.desktop main aside:hover {
        width: 250px;
    } 
    .sidebar-collapse.mobile main aside {   
        width: 0;
        padding: 0;
    }
    .sidebar-collapse.mobile main aside > * {
        display: none;
    }  
    
    
    .sidebar-collapse main aside nav > div > a > span,
    .sidebar-collapse main aside #copyright,
    .sidebar-collapse main aside .n1 .mdi-menu-down,
    .sidebar-collapse main aside .n1 .n2 {
        display: none;
    }     
    .sidebar-collapse.desktop main aside:hover nav > div > a > span,
    .sidebar-collapse.desktop main aside:hover #copyright,
    .sidebar-collapse.desktop main aside:hover .n1 .mdi-menu-down,
    .sidebar-collapse.desktop main aside:hover .n1.dropdownMenu-on .n2 {
        display: block;
    }   
    
    .sidebar-collapse main aside nav > div {
        border-bottom-color: transparent;
    }
    .sidebar-collapse main aside nav > div > a {
        padding-left: 16px;
        border-left: 0;
        -webkit-justify-content: center;
        justify-content: center;
    }
    .sidebar-collapse.desktop main aside:hover nav > div > a {        
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
    }
    .sidebar-collapse main aside nav > .n1.act > a {
        background-color: var(--corp);
        color: white;
    }
    .sidebar-collapse main aside nav > .n1.act > a .mdi {
        color: white!important;
    }  
    
    .table-block {    
        margin-left: -20px;
        margin-right: -20px;
    }
    main > section .filtros-btn {
        display: none;
    }
}
@media (max-width: 767px) {
    #unlogged {    
        padding: 30px 0; 
    }
    #unlogged #unlogged-cont {    
        padding: 30px 20px;
    }
    #unlogged #unlogged-cont form .btn {
        width: 100%;
    }
    #unlogged #unlogged-cont #logo img {
        width: 110px;
        /*height: 45px;*/
    }
    
    header #header-logo {
        max-width: 80px;
    }
    header #user-menu {
        margin-left: 20px;
    }   
    .sidebar-collapse-xs main aside {   
        width: 0;
        padding: 0;
    }
    .sidebar-collapse-xs main aside > * {
        display: none;
    }  
    main > section .filtros {
        margin-top: 20px;
        display: none;
    }    
}
@media (min-width: 460px) {
    .flex-aligncenter h1 + .flex-separeleft,
    .bloque-sub h2 + .flex-separeleft {
        text-align: right;
    }
    .bloque .flex-separeleft .btn-group .dropdown-menu {
        left: auto;
        right: 0;
    }
    .paginador > * {
        width: 32px;
        height: 32px;
    }

    .paginador > a.act,
    .paginador > a.lnk-gray {
        line-height: 30px;
    }
}
@media (max-width: 459px) {
    .flex-aligncenter h1 + .flex-separeleft,
    .bloque-sub h2 + .flex-separeleft {
        text-align: center;
    }
    .bloque .flex-separeleft .btn-group .dropdown-menu {
        left: 50%;
        transform: translateX(-50%);
    }
    .paginador > * {
        width: 28px;
        height: 28px;
    }

    .paginador > a.act,
    .paginador > a.lnk-gray {
        line-height: 26px;
    }
}

.mapa {
    height: 400px;
}