/* Clases comunes*/
.box {
    background: #FFFFFF;
    border-radius: 20px;
    color: #000000;
    font-weight: bold;
    font-size: 20px;
    line-height: 24px;
    box-shadow: 0px 3px 10px rgba(3, 9, 20, 0.05);
}

/*OVERRIDES DE BOOTSTRAP*/
.tooltip{
    opacity: 1!important;
    font-family: proxima-nova!important;
}

.tooltip-inner{
    max-width: 500px!important;
    background-color: #3B81FF!important;
}

.tooltip-arrow{
    border-top-color: #3B81FF!important;

}

.tns-ovh {
    overflow-y: visible!important;
}
/****************************/

.pagination {
    display: inline-block;
    padding-left: 0;
    margin: 0px 0;
    border-radius: 50%;
    right: 1em;
    position: absolute;
    font-size: 10pt;
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
}

.pagination li a {    
    color: black;
}

.pagination li:first-child a {
    border-radius: 50% 0% 0% 50%;
}
.pagination li:last-child a {
    border-radius: 0% 50% 50% 0%;
}

.pagination>.active>a,
.pagination>.active>span,
.pagination>.active>a:hover,
.pagination>.active>span:hover,
.pagination>.active>a:focus,
.pagination>.active>span:focus {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #ff6900;
    border-color: #ff6900;
}

.blue-bg {
    background: #3B81FF;
    color: #FFFFFF;
}

.orange-bg {
    background: #FF6900;
    color: #FFFFFF;
}

/* Textos */
.text-fat {
    font-size: 28px;
    font-weight: 800;
}

.text-show {
    font-size: 25px;
    font-weight: 600;
    line-height: 30px;
}

.text-big {
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
}

.text-regular {
    font-size: 15px;
    font-weight: 600;
    line-height: 20px;
}

.text-regular2 {
    font-size: 17px;
    font-weight: 600;
    line-height: 21px;
}

.text-gray {
    font-size: 14px;
    font-weight: 500;
    color: #9597A1;
}

.text-label {
    font-size: 10px;
    font-weight: 700;
    line-height: 20px;
    text-transform: uppercase;
}

.text-center {
    text-align: center;
}

.blue {
    color: #3B81FF;
}

.orange {
    color: #FF6900;
}

.gray {
    color: #8F9BB3;
}

.btn {
    background: #FF6900;
    border-radius: 40px;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
    color: white;
}

.center {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.float-left {
    float: left;
}

.float-right {
    float: right;
}

.no-padding {
    padding: 0 !important;
}

.no-padding-left {
    padding-left: 0 !important;
}

.no-padding-right {
    padding-right: 0 !important;
}

.semibold {
    font-weight: 600 !important;
}

.bold {
    font-weight: 700 !important;
}

.bolder {
    font-weight: 800 !important;
}

/* Tabs en el header */
.pill {
    background: #FFFFFF;
    /* max-width: 400px; */
    height: 124px;
    font-weight: 500;
    box-shadow: 0px 3px 10px rgba(3, 9, 20, 0.05);
    border-radius: 20px;
    display: flex;
    align-items: center;
    position: relative;
    padding: 33px;
    margin-right: 61px;
    float: left;
    cursor: pointer;
}


.pill .pill-rayo {
    width: 57px;
    height: 57px;
    background-image: url('../img/pill-rayo.png');
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 25px;
}

.pill.active .pill-rayo {
    background-image: url('../img/pill-rayo-active.png');
    background-size: cover;
    background-repeat: no-repeat;
}

.pill .pill-llama {
    width: 57px;
    height: 57px;
    background-image: url('../img/pill-llama.png');
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 25px;
}

.pill.active .pill-llama {
    background-image: url('../img/pill-llama-active.png');
    background-size: cover;
    background-repeat: no-repeat;
}

.pill .pill-info {
    width: 17px;
    height: 17px;
    background-image: url('../img/pill-info.png');
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: 16px;
    right: 27px;
}

.pill.active .pill-info {
    background-image: url('../img/pill-info-active.png');
    background-size: cover;
    background-repeat: no-repeat;
}

.pill .text-big {
    font-weight: 500;
}

.pill-subtitle {
    font-size: 13px;
}

.pill-subtext {
    color: #9597A1;
}

.pill.active {
    background: #FF6900;
    color: #FFFFFF;
    /* transition: all 0.5s linear; */
    /* Para poner animaciones hay que cambiar los iconos de info */
}

.pill.active .pill-subtext {
    color: #FFFFFF;
}

/*Bootstrap fixes*/

.row-no-gutters {
    margin-right: 0;
    margin-left: 0;
}

.row-no-padding>[class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.col-center {
    float: none;
    margin: 0 auto;
}

.vcenter {
    display: inline-block;
    vertical-align: middle;
    float: none;
}

/* Row y col para centrar contenido de columnas dentro de bootstrap */
.row-vcenter {
    display: flex;
}

.col-vcenter {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.bootstrap-select .dropdown-toggle .caret {
    width: 7px;
    height: 14px;
    border: none;
    position: initial !important;
    /* Perdón, fix de bootstrap */
    display: initial;
}

.bootstrap-select .dropdown-toggle .caret:before {
    content: url('../img/caret.png');
}

.bootstrap-select .dropdown-menu {
    border: none;
    padding: 0;
    border-radius: 15px;
}

.bootstrap-select .dropdown-menu>.active>a {
    background: linear-gradient(0deg, #FF6900 50%, rgba(255, 255, 255, 0) 239.47%);
}

.bootstrap-select .filter-option {
    font-weight: normal;
}

.borderless td,
.borderless th {
    border: none !important;
}

/*Contenido*/
body {
    background: #FFFFFF;
    font-family: "proxima-nova", "Arial";
}

.main-content {
    background: #F4F6FA;
    border-radius: 70px 0px 0px 70px;
}

.container-pad-left {
    padding-left: 60px;
}

.container-pad-header {
    padding-left: 60px;
    padding-right: 60px;
}

.container-pad {
    padding: 30px 60px;
}

/*Menú*/
.navigation .logo {
    margin-top: 71px;
    width: 13rem;
}

.navigation .menu {
    margin-top: 115px;
}

.menu-item {
    display: block;
    clear: both;
}

.menu-item-container {
    width: 68%;
}

.menu-icon {
    width: 24px;
    height: 24px;
    background-size: contain;
    float: left;
    margin-right: 32px;
    background-repeat: no-repeat;
    margin-bottom: 70px;
    position: relative;
}

.menu-icon.cuenta {
    background-image: url('../img/logo-cuenta.png');
}

.menu-item.active .menu-icon.cuenta {
    background-image: url('../img/logo-cuenta-on.png');
}

.menu-icon.puntos {
    background-image: url('../img/logo-puntos.png');
}

.menu-item.active .menu-icon.puntos {
    background-image: url('../img/logo-puntos-on.png');
}

.menu-icon.docs {
    background-image: url('../img/logo-docs.png');
}

.menu-item.active .menu-icon.docs {
    background-image: url('../img/logo-docs-on.png');
}

.menu-icon.contratacion {
    background-image: url('../img/logo-contratacion.png');
}

.menu-item.active .menu-icon.contratacion {
    background-image: url('../img/logo-contratacion-on.png');
}

.menu-icon.contacto {
    background-image: url('../img/logo-contacto.png');
}

.menu-item.active .menu-icon.contacto {
    background-image: url('../img/logo-contacto-on.png');
}

.menu-icon.incidencias {
    background-image: url('../img/logo-incidencias.png');
}

.menu-item.active .menu-icon.incidencias {
    background-image: url('../img/logo-incidencias-on.png');
}

.menu-text {
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    color: #A6ACBE;
}

.menu-item.active {
    border-right: 2px solid #FF7A00;
    border-radius: 1px;
}

.menu-item.active .menu-text {
    color: #FF6900;
}

.menu-item.notification .menu-icon::after {
    content: url('../img/noti-dot.png');
    position: absolute;
    top: 0;
    right: 0;
}

/*Header común*/

.header {
    background: linear-gradient(180deg, rgba(251, 251, 251, 0.06) 0%, rgba(104, 104, 104, 0.06) 100%);
    /* min-height: 270px; */
    min-height: 6.25rem;
}

.header .row-1 {
    margin-top: 66px;
}

.header .row-2 {
    margin-bottom: 31px;
}

.header .tab-slider-container {
    position: relative;
}

.header .tab-slider-controls {
    position: absolute;
    top: 0;
    z-index: 1;
    width: 100%;
    top: 30%;
}

.header .tab-slider-controls .slider-nav-img {
    width: 44px;
    height: 44px;
}

.header .tab-slider-controls .slider-nav {
    position: absolute;
}

.header .tab-slider-controls .slider-nav[aria-disabled="true"] {
    display: none;
}

.header .tab-slider-controls .prev {
    z-index: 1;
    left: -3%;
}


.header .tab-slider-controls .next {
    right: 0;
    z-index: 1;
    right: 0%;
}

.header .tab-slider .fade {
    opacity: 0.5;
}

.search-container .search {
    height: 47.93px;
    border-radius: 24px;
    border: none;
    font-weight: 500;
    font-size: 16px;
    line-height: 22px;
    padding-left: 52px;
}

.search-container .has-search {
    margin: 0;
}

.search-container .has-search .form-control-feedback {
    left: 23px;
    width: 23px;
    height: 23px;
    top: 12px;
}

.user-info .user-avatar {
    width: 47px;
    height: 47px;
}

.header-right-container {
    /* width: 45%; */
    float: right;
}

.header-right .user-icons {
    width: 23px;
    height: 23px;
}

.header-right .user-info {
    margin-right: 48px;
}

.user-info .user-name {
    font-weight: bold;
    font-size: 16px;
    line-height: 19px;
    text-align: right;
}

.user-info .user-mail {
    font-weight: 500;
    font-size: 12px;
    line-height: 15px;
    text-align: right;
    color: #A6ACBE;
}

.user-info .user-avatar-container {
    margin-top: -4px;
}

.user-info .notifications-container {
    position: relative;
}

.user-info .notifications {
    width: 100%;
    background: #fafafa;
    box-shadow: 0px 3px 10px rgba(3, 9, 20, 0.05);
    border-radius: 20px 0px 20px 20px;
    padding: 16px 19px;
    display: grid;
    grid-row-gap: 11px;
    margin-top: 4%;
    position: absolute;
    z-index: 1;
    left: 25%
}

.archivos-presubida {
    height: 50px;
    overflow-x: hidden;
    overflow-y: auto;
    border-radius: 5px;
    background: #f4f6fa;
    padding: 5px;
}


.archivos-presubida::-webkit-scrollbar {
    width: 7px;
    height: 7px;
}

.archivos-presubida::-webkit-scrollbar-button {
    width: 0px;
    height: 0px;
}

.archivos-presubida::-webkit-scrollbar-thumb {
    background: #9e9e9e;
    border: 0px none #ffffff;
    border-radius: 50px;
}

.archivos-presubida::-webkit-scrollbar-thumb:hover {
    background: #9e9e9e;
}

.archivos-presubida::-webkit-scrollbar-thumb:active {
    background: #9c9c9c;
}

.archivos-presubida::-webkit-scrollbar-track {
    background: #ffffff;
    border: 0px none #ffffff;
    border-radius: 50px;
}

.archivos-presubida::-webkit-scrollbar-track:hover {
    background: #ffffff;
}

.archivos-presubida::-webkit-scrollbar-track:active {
    background: #ffffff;
}

.archivos-presubida::-webkit-scrollbar-corner {
    background: transparent;
}

.user-info .notification {
    height: 32px;
    background: #FFFFFF;
    box-shadow: 0px 7px 64px rgba(0, 0, 0, 0.07);
    border-radius: 5px;
    margin-right: 0;
    margin-left: 0;
    padding: 5px 10px;
}

.user-info .notification .icon-noti {
    width: 22px;
}

.user-info .notification .icon-clock {
    width: 4px;
}

.user-info .notification .noti-title {
    font-size: 9px;
    margin-bottom: 3px;
}

.user-info .notification .noti-time {
    font-size: 7px;
    margin-bottom: 0;
    line-height: 0px;
}

.user-info .notifications .noti-bar {
    width: 64px;
    height: 3px;
}

.user-info-container {
    margin-right: 13px;
    text-align: right;
}

.user-actions .notification-bell {
    margin-right: 25px;
}


.header .title-container {
    margin-top: 0;
    margin-bottom: 10%;
}

.header .title {
    font-weight: 700;
    font-size: 30px;
    line-height: 37px;
    letter-spacing: 0.01em;
    margin: 0;
}

.header .subtitle {
    font-weight: 500;
    font-size: 14px;
    line-height: 17px;
    letter-spacing: 0.01em;
    color: #A6ACBE;
    margin: 0;
}

/* Sección "Mi cuenta" */

.account.grid-container {
    display: grid;
    grid-template-areas: "edit info help"
        ". info help";
    grid-column-gap: 5%;
    grid-auto-columns: 20% 50% 20%;
    grid-row-gap: 2%;
    grid-auto-rows: max-content;
}

.account>div {
    padding: 20px;
}

.account .edit {
    grid-area: edit;
    background: url('../img/edit-bg.png') #FFFFFF;
    background-repeat: no-repeat;
    background-size: contain;
    position: relative;
    display: grid;
}

.account .edit .edit-back {
    left: 20px;
    top: 29.5px;
    position: absolute;
}

.account .edit .edit-back img {
    width: 11.5px;
    height: 10px;
}

.account .edit .edit-more {
    right: 20px;
    top: 32px;
    position: absolute;
}

.account .edit .edit-more img {
    width: 23px;
    height: 5px;
}

.account .edit .avatar {
    width: 113px;
    height: 113px;
    margin-top: 20%;
    margin-bottom: 20px;
}

.account .edit .avatar img {
    width: 100%;
    /* height: 100%; */
}

.account .edit .btn {
    width: 156px;
    margin-top: 23px;
}

.account .info-container {
    grid-area: info;
    max-height: 70vh;
    overflow-y: auto;
    display: grid;
    grid-row-gap: 16px;
    scrollbar-width: thin;
    padding-top: 0;
}

.account .info {
    padding-top: 33px;
}

.account .help {
    grid-area: help;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.account .info .icon-medal {
    width: 77px;
    height: 77px;
}

.account .info .info-1 {
    margin-bottom: 23px;
}

.account .info .info-2 {
    display: grid;
    grid-row-gap: 17px;
}

.account .info .info-3 {
    display: grid;
    grid-row-gap: 12px;
}

.account .help .help-banner {
    width: 95%;
}

.account .help .help1 {
    margin-top: 14%;
    margin-bottom: 10%;
}

.account .help .help2 {
    margin-bottom: 10%;
}

.account .help .help3 {
    margin-bottom: 25%;
}

.account .help .help3 {
    margin-bottom: 25%;
}

.account .help .help4 {
    margin-bottom: 14%;
}

/* Sección "Documentación" */

.docs.grid-container {
    display: grid;
    grid-template-areas: "tabs content upload";
    grid-column-gap: 3%;
    grid-auto-columns: 20% 55% 20%;
    grid-template-rows: 70rem;
}

.docs>div {
    padding: 20px;
}

.docs .tabs {
    grid-area: tabs;
}


.docs .tabs .tabs-select {
    display: none;
}

.docs .tabs a span {
    font-size: 13px;
    font-weight: 500;
    text-align: center;
}

.docs .tabs .folder-icon {
    width: 22px;
    height: 19px;
    background-image: url('../img/icon-folder.png');
    background-size: contain;
    background-repeat: no-repeat;
}

.docs .tabs .active .folder-icon {
    background-image: url('../img/icon-folder-on.png');
}

.docs .tabs .options-icon {
    width: 4px;
    height: 18px;
    background-image: url('../img/icon-options.png');
    background-size: contain;
    background-repeat: no-repeat;
}

.docs .tabs .active .options-icon {
    background-image: url('../img/icon-options-on.png');
}

.docs .tabs .tab {
    height: 53px;
    background: #FFFFFF;
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    color: #030914;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
}

.docs .tabs .active .tab {
    background: #FF6900;
    color: white;
}

.docs .tabs .nav {
    display: grid;
    grid-gap: 30px;
}

.docs .content {
    grid-area: content;
}

.docs .content .search {
    height: 43px;
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
}

.docs .content .dropdown {
    border-radius: 15px;
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
    color: #FFFFFF;
}

.docs .content .dropdown-toggle {
    height: 43px;
    border: none;
    appearance: none;
    background: #FFFFFF;
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
    border-radius: 24px;
    padding: 13px;
    padding-left: 25px;
}

.docs .content .dropdown-toggle:focus {
    outline: none !important;
}

.docs .content .btn {
    color: initial;
}

.docs .content .tab-content {
    margin-top: 20px;
}


.docs .content .table {
    border-collapse: separate;
    border-spacing: 0 22px;
}

.docs .content .table th {
    font-weight: normal;
    font-size: 12px;
    line-height: 15px;
    color: #000000;
    mix-blend-mode: normal;
    opacity: 0.4;
}

.docs .content .table tbody tr {
    /* background: #FFFFFF; */
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    height: 44px;
    line-height: 18px;
}

.docs .content .table tbody td {
    padding: 10px;
    font-size: 1.4rem;
}

.docs .content .table .icon-check {
    width: 16px;
    height: 16px;
    margin-right: 5px;
    margin-left: 3px;
    margin-top: -4px;
}

.docs .upload {
    grid-area: upload;
    /* display: grid; */
    /* grid-row-gap: 10%; */
}

.docs .upload .upload-collapse-toggle {
    display: flex;
}

.docs .upload .icon-upload {
    width: 4.5625rem;
    height: 3.625rem;
    margin-right: 1rem;
}

.docs .upload .row-title {
    display: flex;
    justify-content: center;
    height: 10rem;
}

.docs .upload input[type="file"] {
    display: none;
}

.docs .upload .file-upload {
    background: #FFFFFF;
    border: 2px dashed #3B81FF;
    border-radius: 6px;
    cursor: pointer;
    text-align: center;
    font-size: 15px;
    margin-top: -24px;
    padding: 1em 1.5em;
    font-weight: normal;
}

.docs .upload .row-upload {
    display: flex;
    justify-content: space-evenly;
}

.docs .upload .file-upload-text {
    margin-bottom: 0;
}

.docs .upload .file-upload .upload-plus {
    margin-top: 18px;
}

.docs .upload .datepicker {
    padding: 0;
    margin: 0;
    border: none;
    border-bottom: 1px solid #A6ACBE;
    border-radius: 0;
    height: 24px;
    max-width: 100%;
}

.docs .upload .datepicker::placeholder {
    font-weight: 600;
    font-size: 16px;
    line-height: 15px;
    color: #A6ACBE;
}

.docs .upload .bootstrap-select {
    margin-top: 37px;
    box-shadow: none;
}

.docs .upload .bootstrap-select .dropdown-toggle {
    background: none;
    border: none;
    border-bottom: 1px solid #A6ACBE;
    border-radius: 0;
    padding: 0;
    height: 24px;
    font-weight: 600;
    font-size: 16px;
    line-height: 15px;
    color: #A6ACBE;
}

.docs .files-container .files-uploaded-text {
    font-weight: normal;
    font-size: 11px;
    line-height: 13px;
    color: #A6ACBE;
}

.docs .files-container .icon-dot {
    width: 4px;
}

.docs .files-container .file-tag {
    background: #dedfe0;
    border-radius: 2px;
    font-style: normal;
    font-weight: 500;
    font-size: 10px;
    line-height: 6px;
    padding: 2px 4px;
}

.docs .files-container .file-name {

    font-weight: 500;
    font-size: 12px;
    line-height: 12px;
}


/* Seguridad */
.security.body-container {
    width: 100%;
    height: 100%;
    position: relative;
}

.security-box {
    width: 30%;
    height: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.security-box input {
    width: 100%;
    height: 48px;
    background: #FFFFFF;
    border: 0.587px solid #FFFFFF;
    box-sizing: border-box;
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    padding: 15px 30px;
}

.security-box .logo{
    width: 10rem;
}

.security-box .btn {
    width: 315px;
    height: 47px;
}

.security-box .login {
    display: grid;
    grid-row-gap: 45px;
}

.login .forgot-pw-text {
    margin-top: 10px;
}

/* Contacto */

.contact .add-buttons {
    width: 66%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.contact .btn-add .add-icon {
    font-size: 26px;
    font-weight: 200;
}

.contact .btn-add {
    font-size: 14px;
    padding: 12px 20px;
}

.contact .btn-add span {
    vertical-align: middle;
}

.contact .search-container {
    height: 46px;
    margin-top: 23px;
}

.contact .search-container input {
    position: absolute;
}

.contact .search-container .dropdown {
    width: 180px !important;
    float: right;
    position: absolute;
    right: 0;
}

.contact .search-container .btn {
    width: 100%;
    height: 47.93px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    background: white;
    color: #A6ACBE;
    border: none;
    border-left: 1px solid #EDEFF5;
    padding: 9% 22%;
}


.contact .chat-tabs {
    /* display: grid; */
    grid-row-gap: 30px;
    overflow-y: auto;
    height: 570px;
    /*mask-image: linear-gradient(to bottom, black 70%, transparent 100%);*/
    scrollbar-width: thin;
    /* margin-top: 32px; */
}

.contact .chat-tabs li a {
    /* height: 200px; */
    box-shadow: 0px 3px 10px rgba(3, 9, 20, 0.05);
    border-radius: 20px;
    padding: 27px 40px;
    cursor: pointer;
    margin-bottom: 30px;
}

.contact .chat-tabs li.active a {
    color: #FFFFFF;
    background: #FF6900;
}

.contact .chat-tabs .chat-subject {
    font-weight: bold;
    font-size: 18px;
    line-height: 22px;
}

.contact .chat-tabs .chat-avatar {
    width: 54px;
    height: 54px;
}

.contact .chat-tabs .chat-active-dot {
    width: 10px;
    height: 10px;
    left: 3px;
    top: 3px;
    position: absolute;
}

.contact .chat-tabs .chat-person,
.contact .chat-tabs .chat-time {
    font-weight: 500;
    font-size: 16px;
    line-height: 19px;
    text-align: right;
}

.contact .chat-tabs li.active a .chat-person,
.contact .chat-tabs li.active a .chat-time {
    color: rgba(255, 255, 255, 0.57);
}

.contact .chat-tabs .chat-number {
    background: #FF6900;
    box-shadow: 4px 4px 15px rgba(198, 27, 74, 0.05), 2px 2px 10px rgba(198, 27, 74, 0.1), 1px 1px 50px rgba(198, 27, 74, 0.15);
    color: white;
    border-radius: 28px;
    border-top-left-radius: 28px;
    border-top-right-radius: 28px;
    border-bottom-right-radius: 28px;
    border-bottom-left-radius: 28px;
    padding: 0px;
    width: 20px;
    height: 20px;
    text-align: center;
    font-weight: 500;
    font-size: 13px;
    line-height: 20px;
}

.contact .chat-tabs li.active .chat-number {
    background-color: white;
    color: #FF6900;
}

.contact .chat-tabs .tag {
    border-radius: 20px;
    padding: 11px 16px;
}

.contact .chat-tabs li.active .tag {
    background: white;
}

.contact .chat-tabs .file-tag {
    background: rgba(59, 129, 255, 0.25);
    color: #3B81FF;
}

.contact .chat-tabs .img-tag {
    background: rgba(255, 105, 0, 0.25);
    color: #FF6900;
}

.contact .chat-tabs .tag-icon {
    margin-top: -4px;
    margin-right: 5px;
}

.contact .chat-tabs .icon-file {
    width: 13px;
    height: 16px;
}

.contact .chat-tabs .icon-img {
    width: 15px;
    height: 15px;
}

.contact .chat-content .panel {
    background: #FFFFFF;
    box-shadow: 0px 3px 10px rgba(3, 9, 20, 0.05);
    border-radius: 20px;
    border: none;
}

.contact .chat-content .chat-header {
    padding: 30px 60px;
    border-color: #E4E4E4;
}


.contact .chat-back {
    display: none;
}

.contact .chat-content .panel-body {
    padding: 30px 60px;
    display: grid;
    grid-row-gap: 18px;
    height: 32em;
    overflow-y: auto;
    position: relative;
}

.contact .chat-content .body-chat-content {
    position: absolute;
}

.contact .chat-content .chat-header .chat-avatar {
    width: 54px;
    height: 54px;
}

.contact .chat-content .chat-header .chat-person {
    font-weight: bold;
    font-size: 18px;
    line-height: 22px;
    margin-bottom: 6px;
}

.contact .chat-content .chat-header .chat-status {
    font-weight: 600;
    font-size: 16px;
    line-height: 19px;
    color: #FF6900;
}

.contact .chat-content .chat-header .chat-header-icon {
    width: 52px;
    height: 52px;
    padding: 14px;
    background: white;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0px 5px 11px rgba(0, 0, 0, 0.07);
    margin-left: 20px;
}

/* .contact .chat-body .msg {
} */

.contact .chat-body .msg-avatar {
    width: 41px;
    height: 41px;
}

.contact .chat-body .msg .msg-content {
    border-radius: 0px 10px 10px 10px;
    padding: 14px 22px;
    font-weight: 500;
    font-size: 16px;
    line-height: 26px;
    display: grid;
}

.contact .chat-body .msg.ask .msg-content {
    background: #FF6900;
    color: #FFFFFF;
}

.contact .chat-body .msg.answer .msg-content {
    background: #FFFFFF;
    color: #3D4556;
    box-shadow: 0px 5px 11px rgba(0, 0, 0, 0.07);
}

.contact .chat-body .msg-time {
    font-weight: 500;
    font-size: 14px;
    line-height: 26px;
    color: #A6ACBE;
    text-align: right;
    margin-top: 5px;
}

.contact .chat-body .msg-options {
    width: 24px;
    height: 24px;
}

.contact .chat-body .msg-double-check {
    width: 16px;
    height: 16px;
}

.contact .chat-body .chat-file-size {
    font-weight: 500;
    font-size: 14px;
    line-height: 26px;
    color: rgba(255, 255, 255, 0.7);
}

/* .contact .chat-body .msg-file {
    width: 24px;
    height: 24px;
} */

.contact .chat-body .ask .msg-file {
    width: 40px;
    height: 40px;
    padding: 8px;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 6px;
}

.contact .chat-body .msg-file-answer {
    width: 24px;
    height: 24px;
}

.contact .chat-body .chat-timeline {
    clear: both;
}

.contact .chat-body .chat-timeline .line {
    border-bottom: 1px solid rgba(112, 124, 151, 0.15);
    height: 10px;
}

.contact .chat-body .chat-timeline .line-text {
    font-weight: 500;
    font-size: 14px;
    display: flex;
    align-items: center;
    color: #A6ACBE;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* Nueva maquetación de chat */
/* new_chat_template */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~ */


.contact .chat-body .msg {
    width: 100%;
}

.contact .chat-body .msg .msg-content {
    grid-area: content;
    font-weight: 500;
    font-size: 16px;
    line-height: 26px;
}

.contact .chat-body .msg-check-img {
    width: 16px;
    height: 16px;
}

.contact .chat-body .msg.incoming {
    display: grid;
    grid-template-areas: "avatar content options"". time .";
    /* grid-auto-columns: 41px 90% auto; */
    grid-column-gap: 2%;
    align-items: center;
    justify-self: left;
    justify-content: start;
}

.contact .chat-body .msg.incoming .msg-avatar {
    grid-area: avatar;
}

.contact .chat-body .msg.incoming .msg-content {
    background: #FF6900;
    color: #FFFFFF;
}

.contact .chat-body .msg .msg-options {
    grid-area: options;
}

.contact .chat-body .msg .msg-options-img {
    width: 24px;
    height: 24px;
}

.contact .chat-body .msg .msg-time {
    grid-area: time;
}

.contact .chat-body .msg.incoming .msg-avatar-img {
    width: 41px;
    height: 41px;
}

.contact .chat-body .msg.reply .msg-content {
    background: #FFFFFF;
    box-shadow: 0px 5px 11px rgba(0, 0, 0, 0.07);
    font-weight: 500;
    font-size: 16px;
    line-height: 26px;
    color: #3D4556;
}

.contact .chat-body .msg.reply {
    display: grid;
    grid-template-areas: "options content check"". time .";
    /* grid-auto-columns: 41px 90% auto; */
    grid-column-gap: 2%;
    align-items: center;
    justify-self: right;
    justify-content: end;
}

.contact .chat-body .msg-file-img {
    width: 24px;
    height: 24px;
}

.contact .chat-body .incoming .msg-file-img {
    width: 40px;
    height: 40px;
    padding: 8px;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 6px;
}


.contact .chat-body .incoming .msg-file { /* AAAAAAAAAAAAAAAAAAA */
    justify-self: right;
    background-color: white;
    border-radius: 5px;
    padding-left: 10px;
}

.contact .chat-body .incoming .msg-file-size {
    font-weight: 500;
    font-size: 14px;
    line-height: 26px;
    color: rgba(255, 255, 255, 0.7);
}

.contact .chat-body .chat-timeline {
    display: flex;
    align-items: center;
}

.contact .chat-body .chat-timeline hr {
    border-top: 1px solid #eaebef;
    width: 40%;
}

.contact .chat-body .chat-timeline span {
    font-weight: 500;
    font-size: 14px;
    line-height: 26px;
    color: #A6ACBE;
}

.contact .chat-body .msg.reply .msg-file { /* AAAAAAAAAAAAAAAA */
    justify-self: right;
}

.contact .chat-footer {
    background: none;
    border-top: none;
    padding: 20px 60px;
}

.contact .chat-footer:before {
    content: "";
    height: 2px;
    border-bottom: 1px solid #eaebef;
    border-radius: 2px;
    position: relative;
    width: 100%;
    display: block;
    margin: 0 auto;
}

.contact .chat-footer-container {
    display: grid;
    align-items: center;
    grid-template-areas: "actions input emojis send";
    grid-auto-columns: 40px auto 24px 40px;
    grid-column-gap: 30px;
    margin-top: 18px;
}

.contact .chat-footer .icon-orange {
    background: #FF6900;
    padding: 8px;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    box-sizing: content-box;
}

.contact .chat-footer .icon-white {
    background: white;
    padding: 8px;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    box-sizing: content-box;
    border: 1px solid #FF6900;
}

.contact .chat-footer .chat-actions {
    grid-area: actions;
}

.contact .chat-footer .chat-actions .dropup {
    background: none;
    border: none;
    padding: 0;
}

.contact .chat-footer .chat-actions .dropdown-menu {
    background: none;
    border: none;
    box-shadow: none;
    min-width: auto;
    margin-bottom: 14px;
    padding-bottom: 0;
}

.contact .chat-footer .chat-actions .dropdown-menu li:not(:last-child) {
    margin-bottom: 10px;
}

.contact .chat-footer .chat-actions .dropdown-menu li a {
    padding: 0;
}

.contact .chat-footer .chat-actions .dropdown-menu>li>a:hover,
.dropdown-menu>li>a:focus {
    background: none;
}

.contact .chat-footer .chat-actions .dropdown-menu>li>a:hover img {
    box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.75);
}

.contact .chat-footer .chat-input-container {
    grid-area: input;
}

.contact .chat-footer .chat-input {
    border: none;
    width: 100%;
    height:40px;
    padding: 10px 10px;
}

.chat-input:focus{
    outline:none;
    border: thin solid gray
}

textarea:focus{
    border: thin solid gray
}

.contact .chat-footer .chat-emojis {
    grid-area: emojis;
}

.contact .chat-footer .chat-emojis .icon-smile {
    width: 24px;
    height: 24px;
}

.contact .chat-footer .btn.send {
    grid-area: send;
    border-radius: 50%;
    padding: 10px;
    width: 3em;
    height: 3em;
}

.contact .chat-footer .send .icon-send {
    width: 20px;
    height: 20px;
}

.dataTables_filter {
    display: none !important
}


.puntos.grid-container {
    display: grid;
    grid-template-areas:
        "luz consumo historico historico gasto"
        "luz consumo historico historico ahorro"
        "facturas facturas facturas help ahorro";
    grid-gap: 51px;
}

.puntos .luz {
    display: grid;
    grid-area: luz;
    padding: 25px;
    position: relative;
    grid-row-gap: 12px;
}

.puntos .luz .icon-rayo {
    border-radius: 50%;
    padding: 0;
    width: 7rem;
    height: 7rem;
    box-sizing: content-box;
    margin-right: 17px;
}

.puntos .luz .title {
    font-weight: 600;
    font-size: 35px;
    line-height: 43px;
    color: #030914;
    vertical-align: middle;
}

.puntos .options {
    width: 20px;
    height: 20px;
    float: right;
}

.puntos .luz .text-show {
    margin-bottom: 0px;
}

.puntos .luz .icon-info {
    width: 17px;
    height: 17px;
}

.puntos .luz .col-custom {
    width: 50%;
    float: left;
}

.puntos .consumo {
    grid-area: consumo;
    padding: 25px 28px;
    display: grid;
    grid-row-gap: 16px;
}

.puntos .consumo .title {
    font-weight: bold;
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 0;
}

.consumo-number {
    cursor: pointer;
}

.puntos .consumo .consumo-circle {
    background: #FFE1CC;
    border-radius: 50%;
    width: 169px;
    height: 169px;
    padding: 35px;
}

.puntos .consumo .consumo-circle span {
    font-weight: 500;
    font-size: 40px;
    line-height: 49px;
    text-align: center;
    color: #FF6900;
}

.puntos .consumo .icon-dot-orange {
    width: 9px;
    height: 9px;
}

.puntos .consumo .text-legend {
    font-weight: normal;
    font-size: 14px;
    line-height: 20px;
}

.puntos .historico {
    grid-area: historico;
    padding: 17px 15px;
    display: grid;
}

.puntos .historico .title-container {
    text-align: center;
}

.puntos .gasto {
    grid-area: gasto;
    padding: 30px 16px;
    display: grid;
    grid-row-gap: 12px;
}

.puntos .gasto .graph-line-orange {
    width: 168px;
    height: 28px;
}

.puntos .gasto .number {
    font-weight: 500;
    font-size: 23px;
    line-height: 28px;
}

.puntos .gasto .percentage {
    font-weight: normal;
    font-size: 12px;
    line-height: 15px;
}

.puntos .ahorro {
    grid-area: ahorro;
    padding: 30px 23px;
    display: grid;
    grid-template-rows: 6%;
}

.puntos .ahorro .col-align-center .percent-oval {
    position: absolute;
    width: 66px;
}

.puntos .ahorro .col-align-center {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
}


.puntos .ahorro .progress-ring-container {
    font-weight: 600;
    font-size: 19px;
    text-align: center;
    color: white;
}

.puntos .ahorro .progress-ring-container input {
    background: none;
    border: none;
    line-height: initial;
    text-align: center;
}

.puntos .ahorro .progress-input-container {
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: white;
    position: absolute;
    line-height: 23px;
}

.puntos .ahorro .progress-ring-container .progress-percent {
    position: absolute;
    left: 52%;
    color: white;
    line-height: 24px;
}

.puntos .ahorro .progress-ring-full {
    transition: 0.35s stroke-dashoffset;
    transform: rotate(-45deg);
    transform-origin: 50% 50%;
    transform-box: fill-box;
    /*display: block;*/
}

.progress-ring {
    transition: 0.35s stroke-dashoffset;
    transform: rotate(-45deg);
    transform-origin: 50% 50%;
    transform-box: fill-box;
    /*display: block;*/
}

.puntos .facturas {
    grid-area: facturas;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.puntos .facturas .consulte-facturas {
    width: 270px;
}

.puntos .facturas .subtitle {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
}

.puntos .facturas .btn {
    width: 147px;
    height: 43px;
    filter: drop-shadow(2px 2px 6px rgba(3, 9, 20, 0.1));
    font-weight: bold;
    font-size: 16px;
    line-height: 19px;
    text-align: center;
    letter-spacing: 0.01em;
}

.puntos .help {
    grid-area: help;
    padding: 30px;
    position: relative;
    display: grid;
    grid-row-gap: 5%;
}

.puntos .help .podemos-ayudarte {
    width: 202px;
    height: 139px;
    position: absolute;
    right: 0;
    bottom: 0;
}

.puntos .help .title {
    font-weight: 800;
    font-size: 22px;
    line-height: 20px;
}

.puntos .help .subtitle {
    width: 55%;
    font-weight: 500;
    font-size: 12px;
    line-height: 15px;
}

.puntos .help .btn {
    width: 99px;
    font-weight: bold;
    font-size: 12px;
    line-height: 20px;
}

.incidencias .list-container {
    padding: 37px 35px;
}

.bg-gray{
    background-color: #EEEEEE;
}

.bg-green{
    background-color: #98db7e;
}

.incidencias .title {
    display: flex;
    align-items: center;
}

.incidencias .icon-triangle {
    width: 78px;
    height: 78px;
}

 .incidencias .table {
    border-collapse: separate;
    border-spacing: 0 22px;
    /* height: 500px;
    display: block; */
    overflow-y: auto;
    scrollbar-width: thin;
} 


.incidencias .table-container {
    width: 100%;
    height: 500px;
    position: relative;
    overflow-y: auto;
    scrollbar-width: thin;
}

/* .incidencias .table-container.bottom-fade::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(to bottom,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, 1) 90%);
    width: 100%;
    height: 100px;
} */

.incidencias .table th {
    font-weight: 600;
    font-size: 12px;
    line-height: 15px;
    color: #8F9BB3;
}

.incidencias .table tbody tr {
    box-shadow: 0px 4px 11px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    height: 62px;
    line-height: 18px;
    cursor: pointer;
}

.incidencias .table tbody td {
    font-weight: 600;
    font-size: 13px;
    line-height: 16px;
    color: #030914;
    vertical-align: middle;
}

.incidencias .table th,
.incidencias .table td {
    padding-left: 21px;
}

.incidencias .table td:nth-child(4),
.incidencias .table td:nth-child(5),
.incidencias .table td:nth-child(10) {
    color: #FF6900;
}

.incidencias .btn {
    height: 46px;
    padding: 15px 36px;
    display: flex;
    align-items: center;
}

.incidencias .btn .icon-plus {
    width: 17px;
    height: 17px;
}

.contratos.grid-container {
    display: grid;
    grid-template-areas: "info luz address""descarga luz address";
    grid-auto-columns: 420px 420px 562px;
    grid-column-gap: 38px;
    grid-row-gap: 43px;
}

.contratos .info {
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    grid-area: info;
}

.contratos .info .info-left {
    text-align: center;
}

.contratos .info .avatar {
    width: 60px;
    height: 60px;
    margin-bottom: 16px;
}

.contratos .info .text-big {
    margin-bottom: 6px;
}

.contratos .info .info-left .text-regular {
    margin-bottom: 6px;
    margin-top: 20px;
}

.contratos .descarga {
    grid-area: descarga;
    padding: 39px 35px;
    height: 258px;
    background: url('../img/descarga-contrato.png') #3B81FF;
    background-size: 237px;
    background-repeat: no-repeat;
    background-position: left bottom;
    position: relative;
}

.contratos .descarga .title {
    font-weight: 500;
    font-size: 28px;
    line-height: 127.8%;
    width: 100%;
    display: block;
}

.contratos .descarga .icon-dl {
    width: 22px;
    height: 22px;
}

.contratos .luz {
    grid-area: luz;
    background-image: url('../img/bg-luz.png');
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 211px;
    padding: 25px;
    display: grid;
}

.contratos .luz .icon-light {
    width: 77px;
    height: 77px;
}

.contratos .luz .title {
    font-weight: 600;
    font-size: 35px;
    line-height: 43px;
}

.contratos .luz table td:first-child {
    font-weight: bold;
    font-size: 10px;
    line-height: 20px;
    text-transform: uppercase;
    color: #8F9BB3;
    padding-right: 28px;
}

.contratos .luz table tr td {
    padding-bottom: 14px;
}

.contratos .luz table tr:not(:last-child) td:not(:first-child) {
    font-weight: 600;
    font-size: 22px;
    line-height: 27px;
    color: #FF6900;
}

.contratos .luz table tr:not(:last-child) td:nth-child(2) {
    padding-right: 57px;
}

.contratos .luz table tr:last-child td {
    font-weight: bold;
    font-size: 10px;
    line-height: 20px;
    text-transform: uppercase;
    color: #8F9BB3;
}

.contratos .address {
    grid-area: address;
    /* background-image: url('../img/bg-address.png'); */
    background-size: 100%;
    background-position: bottom right;
    background-repeat: no-repeat;
    background-position-x: 80px;
}

.contratos .address .titular {
    padding: 65px 0px;
    display: flex;
    width: 100%;
    justify-content: center;
    box-shadow: 0px 5px 13px rgba(218, 225, 237, 0.84);
}

.contratos .address .titular .icon-titular {
    width: 77px;
    height: 77px;
    margin-bottom: 10px;
}

.row-custom {
    display: flex;
    align-items: center;
    flex-flow: row;
}

.contratos .address .col-custom-1 {
    padding-right: 35px;
}

.contratos .address .titular p {
    font-weight: 600;
    font-size: 15px;
    line-height: 27px;
    letter-spacing: 0.3px;
    margin: 0;
}

.contratos .other {
    padding: 46px 80px;
    display: grid;
    grid-row-gap: 48px;
    height: 240px;
    overflow-y: scroll;
}

.contratos .other .icon {
    width: 46px;
    height: 44px;
}

.contratos .other p {
    font-weight: 500;
    font-size: 12px;
    line-height: 23px;
    letter-spacing: 0.3px;
    margin: 0;
}

::-webkit-scrollbar {
    -webkit-appearance: none;
}

::-webkit-scrollbar:vertical {
    width: 1rem;
}

::-webkit-scrollbar:horizontal {
    height: 12px;
}

::-webkit-scrollbar-thumb {
    background-color: rgb(255, 136, 0);
    border-radius: 10px;
    border: 2px solid #ffffff;
}

::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #ffffff;
}

.pointer{
    cursor: pointer
}

.border-orange{
    border: thin solid orange;
}

.selectrounded{
    border-radius: 2rem;
}

.chosen-container-single .chosen-single{
    background: white!important;
    height: auto;
    border-radius: 2rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

