/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

select::-ms-expand {
    display: none;
}

/*a{text-decoration: none}*/
*{box-sizing: border-box;}
strong{font-weight: bold;}
/*img{max-width: 100%; width: 100%;}*/
/*small{font-size: 80%}*/

a {
  display: block;
}
/*AJUSTES GENERALES*/
.mg-top{margin-top: 20px;}
.mg-bottom{margin-bottom: 20px;}
.pd-top{padding-top: 20px;}
.pd-bottom{padding-bottom: 20px;}
.no-margin-top{margin-top: 0 !important;}
.bg-grey{background-color: #E6EEF0;}
.bg-grey-2{background-color: #EDF3F4;}
.bg-light-grey{background-color: #F2F5F5;}
.bg-green{background-color: #00272C;}
.bg-white{background-color: #ffffff;}
.u-bold{font-weight: bold;}
@media(max-width: 767px){.hide-xs{display: none !important;}}


/*textos*/
.u-color-green{color: #415254;}
.u-dark-green{color: #00272C;}
.u-color-negro{color: #252525;}
.u-color-white{color: #ffffff;}
.u-color-red{color: #C14736 !important; }
.u-medium{font-weight: 500 !important;}

.text-center{text-align: center;}
.title-general{font-family: "Uni Neue", sans-serif; color: #415254; font-weight: 400; font-size: 56px;}
.title-2{font-family: "Uni Neue", sans-serif; color: #00272C; font-weight: 400; font-size: 45px; text-align: left;}
.subtitle{font-family: "Uni Neue", sans-serif; color: #415254; font-weight: 400; font-size: 36px; text-align: left;}
.small-title{font-size: 21px; color: #00272C; font-weight: 500;}
@media(max-width: 767px){.title-general{font-size: 30px;}.title-2{font-size: 25px;}
.subtitle{font-size: 20px;}}
.subtitle-ficha{font-family: "Uni Neue", sans-serif; font-size: 36px; color: #415254;}


/*Botones*/
.btn{
  font-family: "Outfit", sans-serif;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  display: flex; 
  align-items: center;
  justify-content: center;
  cursor: pointer; 
  border-radius: 30px; 
}
.btn-white{
  background-color: #ffffff;
  color: #00272C;
  text-decoration: none;
  height: 52px;
  display: flex;
  gap:8px;
  max-width: 237px;
  padding: 10px;

}
.btn-grey{
  background-color: #E6EEF0;
  color: #00272C;
  text-decoration: none;
  height: 52px;
  display: flex;
  gap:13px;
  max-width: 322px;
  padding: 10px 15px;

}
.btn-submit{
  height:52px; 
  justify-content: flex-end;
  color: #FFF;
  background: #00272C; 
  border: 1px solid #00272C; 
  gap:10px;
  padding: 10px 10px 10px 16px;
}
.btn-w214 {
  width: 214px;
  margin-top: 20px;
}
.btn-w209 {
  width: 209px;
  margin-top: 20px;
}
.btn-w126 {
  width: 126px !important;
  margin-top: 15px;
}


.ico-btn-white{
  width: 10px !important;
}
/*Wrapper principal*/
.wrapper{max-width: 1169px; width: 100%;margin:0 auto;}
.wrapper.full{max-width: 1250px; width: 100%;margin:0 auto;}
@media(max-width: 1024px){
  .wrapper{width: 90%;}
}

body{display: flex; flex-direction: column; min-height: 100vh;font-family: "Outfit", sans-serif; font-weight: normal; line-height: 1.2; color: #00272C;}

/*main{flex-grow: 1}*/


.copy{color: #ffffff;
font-size: 15px;
font-weight: 600;
line-height: normal;}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  font-family: "Outfit", sans-serif; font-weight: normal;
    font-style: normal;
    font-size: 16px;
    line-height: 1.2;color: #687475;opacity: 1
}
::-moz-placeholder { /* Firefox 19+ */
  font-family: "Outfit", sans-serif; font-weight: normal;
    font-style: normal;
    font-size: 16px; 
    line-height: 1.2;color: #687475;opacity: 1
}
:-ms-input-placeholder { /* IE 10+ */
  font-family: "Outfit", sans-serif; font-weight: normal;
    font-style: normal;
    font-size: 16px; 
    line-height: 1.2;color: #687475;opacity: 1
}
:-moz-placeholder { /* Firefox 18- */
  font-family: "Outfit", sans-serif; font-weight: normal;
    font-style: normal;
    font-size: 16px; 
    line-height: 1.2;color: #687475;opacity: 1
}

/*FORM ACCESOS*/

.box{background-color: #F2F5F5; padding: 35px 72px 40px;max-width: 794px; margin: 58px auto; border-radius: 22px;}
@media(max-width: 767px){.box{padding: 20px 35px 30px;}}
.box-mg-bottom{margin-bottom: 100px;}

.logo{margin-top: 10px;}
.fields{display: flex; flex-wrap: wrap;flex-direction: row; justify-content: space-evenly; align-items: center; margin-top: 50px; gap:30px;}
.fields label {
  flex: 0 0 calc(50% - 20px);
  display: flex;
  flex-direction: column;
  margin: 15px 0;
  color: #252525;
}
@media (max-width: 768px) {
  .fields label {
    flex: 0 0 100%;
  }
  .fields .btn-wrap {
    flex: 0 0 100%;
    justify-content: flex-start; 
  }
}


.form-login input[type="text"], 
.form-login input[type="password"],
.form-login input[type="email"]
{
  background-color: #ffffff;
  border: 1px solid #fff;
  width: 100%; 
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  color:#687475;
  font-size:16px;
  outline: none;
  font-family: "Outfit",sans-serif;
}

.info-adicional {display: flex; justify-content: flex-end;}

.btn-wrap{display: flex; justify-content: flex-end;}



/*Nav menu principal*/

.menu{
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

.main-menu {
  position: relative;
}

.main-menu ul{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap:20px;
  margin-right: 16px;
}

.main-menu ul li{
  position: relative; 
}

.main-menu ul li a{
  color: #001114;
  text-decoration: none;
  font-size: 18px;
}

.main-menu ul li select{
  color: #001114;
  font-size: 18px;
  border: none;
  font-family: "Outfit", sans-serif;
  outline: none;  
}

/* Submenu full width */
.submenu-full {
  display: none;
  position: fixed;   
  left: 0;           
  top: 88px;     
  width: 100%;      
  background: #DFE9EC;
  padding: 26px 0;
  z-index: 9999;
  box-shadow: 0 8px 14px 0px rgba(0,0,0,0.2); 
}

.has-submenu.active .submenu-full {
  display: block;
}


.has-submenu.active .submenu-trigger img {
  transform: rotate(180deg);
}
.submenu-content{
  color: #00272C;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap:90px;

}
.row-sub{
  display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 27px;
}
.menu-iconos{
  display: flex;
  flex-direction: row;
  align-items: center;
}

.iconos-nav{
  display: flex;
  flex-direction: row;
  align-items: baseline;
  gap:17px;
}
.notificaciones{
  display: flex;
  flex-direction: row;
  align-items: center;
}

.notificaciones a {
  font-size:18px;
  font-weight: 500;
  color:#001114;
  text-decoration: none;
  display: flex;
  align-items: flex-end;
  gap: 2px;
}

@media(max-width: 767px){
  .menu{flex-direction: column; gap:20px;}
  .main-menu ul li a, .main-menu ul li select {font-size:15px;}
}

/*HOME*/
/*CAJAS PROMO*/

.box-promo{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 60px 0 30px;
  gap:2px;
  justify-content: flex-start;
}
.radius-left{
  border-top-left-radius: 18px;
  border-bottom-left-radius: 18px;
}
.bottom-radius-left:hover{
border-bottom-left-radius: 17px;
}
  
/*.radius-top{
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
}*/
.item-promo{
  border: 1px solid #E4E5E5;
  background-color: #ffffff;
  width: 286px;
  min-height: 357px;
  margin-bottom: 40px;
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
}
.item-promo img {
  width: 100%;
  display: block; 
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
}
.info-promocion{
  padding: 16px 25px;
}
.info-promocion .btn-submit{
  padding: 0;
}
.promo-nombre{
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 8px;
}
.promo-info{
  font-size: 14px;
}
.green-box{
  display: flex;
  flex-direction: column;   
  justify-content: space-between;
  background-color: #00272C;
  padding:10px 17px 30px;
  border-top-right-radius: 18px;
  border-bottom-right-radius: 18px;
  border-top-left-radius: 0 !important;
}
.green-box .title-2{
  margin-bottom: 34px;
}
.green-box p{
  color: #ffffff;
}
.green-box .btn{
  margin-top: auto;
  max-width: 100%;
}
.green-box .btn-white:hover{
  font-weight: 700;
  background-color: #E6EEF0;
}
.info-promocion .btn-submit{
  width: 235px !important;
  margin-top: 20px;
  display: flex;
  justify-content: center !important;
  text-decoration: none;
  height: 0px !important;
  opacity: 0;
  transition: ease all 1s;
}

.info-promocion .btn-submit img{
  width: 0 !important;
  opacity:0;
  height: 0 !important;
  transform: translateX(15px); 
  transition: ease all 1s;
}
.info-promocion:hover .btn-submit {
  opacity: 1;
  height: 52px !important;
}

.info-promocion:hover .btn-submit img {
  width: 40px !important;   
  height: 40px !important;
  opacity: 1;
  transform: translateX(0);
}
.info-promocion:hover{
  background-color: #E6EEF0;

}

@media(max-width: 767px){
  .item-promo{
    width: 100%;
  }
  .box-promo{
    gap:20px;
  }
}

/*INVENTARIO*/
.box-inventario{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap:20px;
}
.item-inventario{
  border: 1px solid #E4E5E5;
  background-color: #ffffff;
  border-radius: 10px;
  width: 277px;
  padding: 20px 0 50px 20px;
  color: #252525;
  text-decoration: none;
}
.item-inventario p{
  font-weight: 500;
  margin-top:10px;
}
.item-inventario:hover{
  background-color: #E4E5E5
}

@media(max-width: 767px){
  .item-inventario{flex-basis: 100%;}
}

.documentacion{
  margin: 60px 0 50px;
}
.documentacion .wrapper {

  display: flex;
  flex-direction: row; 
  align-items: flex-start;
}

.documentacion-info {
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 0 20px;
  flex: 1;
}

.documentacion-img {
  flex: 1;
}

.documentacion-img img {
  width: 100%;
  height: 100%;
}
.text-ico {
  display: inline-flex;
  align-items: center;
  padding-right: 30px; 
  text-decoration: none;
  color: #00272C;
  background: url("../imagenes/icons/arrow-right-grey.svg") no-repeat;
  background-size: 40px 40px;
  background-position: calc(45% - 5px) center;
  height: 52px;
}


.text-ico:hover {
  background-image: url("../imagenes/icons/arrow-black-hover.svg"); 
  font-weight: 700;
}


@media (max-width: 767px) {
  .documentacion .wrapper {
    flex-direction: column;
  }

  .documentacion-info {
    padding: 0;
  }

}
/*MI PERFIL*/
.box-perfil{
  background-color: #ffffff;
  border-radius: 20px;
  margin: 40px auto 70px;
  padding: 10px 30px 25px;
}
.form-perfil input[type="text"], 
.form-perfil input[type="password"],
.form-perfil input[type="email"]{
  background-color: #F2F5F5;
  border: 1px solid #F2F5F5;
  width: 100%; 
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  color:#687475;
  font-size:16px;
  outline: none;
  font-family: "Outfit",sans-serif;
}
.form-perfil .fields label{
  flex: 0 0 calc(33% - 20px);
}
.form-perfil .fields{
  justify-content: flex-start;
}
@media(max-width: 767px){
  .form-perfil .fields{
  flex-direction: column;
}
}
.fields-promo {
  display: flex;
  flex-direction: column; 
  gap: 10px;
}

.field-promo-row {
  display: flex;
  flex-direction: row;
  gap: 10px;
}


/*PISO PÌLOTO*/
.btn-row{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 20px;
  align-items: center;
}
.btn-row .btn-bigger{
  width: 319px;
  margin-top: 20px;
}
.btn-descarga{
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin-bottom: 60px;
  gap:60px;
}
.ico-add{
  width: 11px;
}
.btn-crear{
  padding-left: 0;
  gap:8px;
}
.search-item, .search-item2 {
  display: none;
  width: 100%;
}

.search-item.active, .search-item2.active {
  display: flex;
  position: relative;
}

.search-item input[type="text"], .search-item2 input[type="text"] {
  background-color: #ffffff;
  border: 1px solid #DFE9EC;
  width: 50%;
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  color: #00272C;
  font-size: 16px;
  outline: none;
  font-family: "Outfit", sans-serif;
}



/*TABLAS*/
.tabla-wrapper {
    overflow: auto;
    width: 100%;
    margin: 40px auto 20px;
}
.tabla-margin{
  margin-top: 15px !important;
}
.datatable-general table.dataTable thead th:first-child {
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
    padding-left: 12px !important;
}

.datatable-general table.dataTable thead th:last-child {
    border-top-right-radius: 30px;
    padding-right:12px !important;
    border-bottom-right-radius: 30px;
}
th.fecha-montaje {
    white-space: normal !important;
    line-height: 1.1;
    max-width: 100px !important;
    text-align: center !important;
}


.datatable-general table.dataTable{font-family: 'Outfit', sans-serif; font-weight: normal; font-style: normal; font-size: 16px;}



.datatable-general table.dataTable>tbody>tr>td{padding: 20px 8px; vertical-align: middle;}

.datatable-general table.dataTable>thead>tr>th {font-size: 16px; color: #00272C;  font-weight: 500; font-family: "Outfit", sans-serif; padding:10px 5px;}
.datatable-general.tabla-portales table.dataTable>thead>tr>th {padding:10px 21px;}

.datatable-general table.dataTable > tbody > tr > td:nth-child(1) {font-weight: 600;}
.datatable-general table.dataTable > tbody > tr > td:nth-child(2) {font-weight: 600;}
.datatable-general table.dataTable > tbody > tr > td.bg-color {font-weight: 600;background-color: #F3F7F7;}
.datatable-general table.dataTable td,
.datatable-general table.dataTable th {
    white-space: nowrap;   
}
.datatable-general table.dataTable td.ancho-max {
    white-space: normal; 
    max-width: 200px;      
}

.datatable-general table.dataTable thead th {
    vertical-align: middle !important;
    border-bottom: none !important;
}

.datatable-general table.dataTable thead tr td {
    border-bottom: none !important; 
}
div.dt-container .dt-paging>nav{display: flex;}
div.dt-container div.dt-layout-row div.dt-layout-cell.dt-layout-end{justify-content: center; margin: 0 auto}
div.dt-container .dt-paging .dt-paging-button.disabled, div.dt-container .dt-paging .dt-paging-button.current{
  color:#687475!important;
  display: flex;
  justify-content: center;
  margin-top: 20px;
  cursor:pointer;
  gap: 10px;
      background: transparent;
      border: none;
    border-bottom: 1px solid transparent;
}
div.dt-container .dt-paging .dt-paging-button.current{
  color:#001114!important;
  border-bottom: 1px solid;
}
div.dt-container .dt-paging .dt-paging-button.disabled:hover{
    color:#001114!important;
     border: none;
    border-bottom: 1px solid;

}
div.dt-container .dt-paging .dt-paging-button.current:hover{
  background: transparent;
  border: none;
  border-bottom: 1px solid;
}
div.dt-container .dt-paging .dt-paging-button{border-radius: 0}

/*td.btn-control, td.btn-control-2,*/ td.btn-control>div, td.btn-control-2>div{
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
}


.datatable-general table.dataTable > tbody > tr > td.btn-control {
    background-color: #F3F7F7;
}
.datatable-general table.dataTable > tbody > tr > td.btn-control-2 {
    background: none;
}

/* columnas con borde derecho */
tbody td.seccion {
  border-right: 1px solid #ccc;
}

td.big-gap{
  gap:26px;
}
.tabla-almacen td.btn-control-2>div{
  gap: 30px;
}
/*tablas ficha promo*/
.tabla-ficha-1 {
    margin: 20px 0;
}
.tabla-ficha-1 thead th {
    background-color: #DFE9EC;
    color: #00272C;
    text-align: center;
    font-weight: 500;
    padding: 14px 10px;
    border: none;
}

.tabla-ficha-1 thead th:first-child {
    border-top-left-radius: 16px;
}
.tabla-ficha-1 thead th:last-child {
    border-top-right-radius: 16px;
}
.tabla-ficha-1 tbody td:first-child {
    border-bottom-left-radius: 16px;
}
.tabla-ficha-1 tbody td:last-child {
    border-bottom-right-radius: 16px;
}

.tabla-ficha-1 tbody td {
    background-color: #EDF3F4;
    text-align: center;
    padding: 13px 10px;
    border: none;
    color: #00272C;
}
/*verticales*/
.tabla-ficha-vertical {
    width: 100%;
    border-collapse: separate;
}
.tabla-ficha-vertical tr:first-child th {
    border-top-left-radius: 12px;
}

.tabla-ficha-vertical tr:first-child td {
    border-top-right-radius: 12px;
}

.tabla-ficha-vertical tr:last-child th {
    border-bottom-left-radius: 12px;
}

.tabla-ficha-vertical tr:last-child td {
    border-bottom-right-radius: 12px;
}
.tabla-ficha-vertical tr {
    display: grid;
    grid-template-columns: 194px 1fr;
    align-items: center;
}

.tabla-ficha-vertical th {
    background: #DFE9EC;
    padding: 14px 16px;
    font-weight: 500;
    text-align: left;
    color: #00272C;
}

.tabla-ficha-vertical td {
    background: #EDF3F4;
    padding: 14px 16px;
    border-bottom: 1px solid #fff;
    color: #00272C;
}

.fichas-grid {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    gap: 57px; 
    margin-top: 24px;
}

.columna-izquierda,
.columna-derecha {
    display: flex;
    flex-direction: column;
    gap: 16px; 
}

.tabla-campanas {  
  width: 100%;
}
.tabla-campanas td {
  padding: 12px 6px 12px 9px;
  border-bottom: 1px solid #fff;
  text-align: left;
  background: #EDF3F4;
  color: #00272C;
}

.tabla-campanas .header {
  font-weight: 500;
  background: #EDF3F4;
  border-bottom: none;
}

.tabla-campanas .row-header {
  background: #DFE9EC;
  font-weight: 500;
  text-align: left;
}

.tabla-campanas .empty {
  border-radius: 0;
  background: transparent;
  border: none;
}
.radius-top-l,
.tabla-campanas tr:nth-child(2) .row-header {
  border-top-left-radius: 12px;
}
.radius-top-r{
  border-top-right-radius: 12px;
}
.tabla-campanas tr:last-child .row-header {
  border-bottom-left-radius: 12px;
}
.tabla-campanas tr:last-child td:last-child {
  border-bottom-right-radius: 12px;
}
.td-centrar {
  text-align: center !important;
}

/*CSS PARA TABLAS FIJAS STICKY CUANDO HAY MAS CAMPOS QUE SOBRESALEN*/
.scroll-control {
    overflow-x: auto;   

}
.scroll-control::-webkit-scrollbar {
    display: none;
}
.tabla-fija td.bg-color { background-color: #f5f5f5; }
.tabla-fija tbody, .tabla-fija td { padding: 20px 8px; text-align: left; white-space: nowrap; border-bottom: 1px solid #ddd; }
.tabla-fija thead th{ background: #DFE9EC; padding:  8px;  font-weight: 500!important;}

.tabla-fija .col-der,.tabla-fija tbody td:last-child  {
    position: sticky;
    right: 0;
    background: #E6EEF0;
    z-index: 3; 
    min-width: 80px;
    text-align: center;
    box-shadow: -2px 0 5px rgba(0,0,0,0.1);
}

.tabla-fija thead th:first-child {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.tabla-fija thead th.col-der {
    display: flex;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    justify-content: center;
}
.scroll-arrow-left,
.scroll-arrow-right {
    cursor: pointer;
    font-weight: bold;
    font-size: 18px;
    margin: 0 2px;
    color: #00272C;
    text-decoration: none;
}
.col-der .dt-column-title{
  display: flex;
  flex-direction: row;
  justify-content: center;
}
/*Pagina piso piloto*/
.box-piloto {
  background-color: #F2F5F5;
  border-radius: 20px;
  margin: 40px auto 70px;
  padding: 10px 30px 70px;
}

.form-piloto input[type="text"], 
.form-piloto input[type="password"],
.form-piloto input[type="date"],
.form-piloto input[type="email"],
.form-piloto input[type="tel"]
 {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  width: 100%; 
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  color:#687475;
  font-size:16px;
  outline: none;
  font-family: "Outfit",sans-serif;
}

.form-piloto select {
  background-color: #ffffff !important;
  border: 1px solid #ffffff;
  width: 100%;
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  appearance: none;        
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url(../imagenes/icons/arrow-down.svg) no-repeat right 17px center;
  color: #687475;
  font-size: 16px;
  border: none;
  font-family: "Outfit", sans-serif;
  outline: none;
}

.con-select2 .select2-container {
  min-height: 52px;
  margin: 15px 0;
  appearance: none;        
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: none;
}
.con-select2 .select2-selection.select2-selection--multiple{
  background-color: #ffffff !important;
  border: 1px solid #ffffff;
  width: 100%;
  border-radius: 26px;
  min-height: 52px;
  margin: 0;
  padding-left: 25px;
  appearance: none;        
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url(../imagenes/icons/arrow-down.svg) no-repeat right 17px center;
  color: #687475;
  font-size: 16px;
  border: none;
  font-family: "Outfit", sans-serif;
  outline: none;
  display: flex;
  align-items: center;
}
.con-select2 .select2-container--default .select2-selection--multiple .select2-selection__choice{
  border-radius: 26px
}
.con-select2 .select2-container--default .select2-selection--multiple .select2-selection__clear{
  right: unset;
  left: 5px;
}
.con-select2 .select2-search__field::placeholder {
  color: rgba(104, 116, 117, 0.55);
}
.custom-file {
  position: relative;
  display: flex;
  align-items: center;
  background: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 26px;
  height: 52px;
  padding: 0 15px;
  cursor: pointer;
  margin: 15px 0;
  gap: 10px;
  min-width: 0;
  width: 100%;
}

.custom-file input[type="file"] {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.custom-file .file-btn {
  flex: 0 0 auto;
  padding: 6px 15px;
  background: #ffffff;
  font-size: 14px;
  white-space: nowrap;
  border: 1px solid #ccc;
}

.custom-file .file-name {
  flex: 1 1 auto;
  color: rgba(104, 116, 117, 0.55); 
  font-size: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.custom-file.has-file .file-name {
  color: #687475; 
}

/*Normal 3 por línea*/
.form-piloto .fields label {
  flex: 0 1 calc(33.9% - 20px);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
/*2 por línea*/
.form-piloto .fields label.field-2 {
  flex: 0 1 calc(50% - 12px);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
/*2 por línea, 1 normal + este doble*/
.form-piloto .fields label.field-2-3 {
  flex: 0 1 calc(67% - 12px);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
/*4 por línea*/
.form-piloto .fields label.field-4 {
  flex: 0 1 calc(24.7% - 12px);
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.form-piloto .fields {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 20px;
}
@media (max-width: 767px) {
  .form-piloto .fields label,
  .form-piloto .fields label.field-2,
  .form-piloto .fields label.field-2-3,
  .form-piloto .fields label.field-4 {
    flex: 0 1 100%;
  }
}


/*PAGINA PROMOCIONES*/
.box-piloto {
  background-color: #F2F5F5;
  border-radius: 20px;
  margin: 40px auto 70px;
  padding: 10px 30px 70px;
}
.box-promociones{
  gap:23px;
  margin-top: 40px;
}
.pg-promo{
  width: 275px;
}

.box-promociones .item-promo{
  min-height: auto;
  cursor: pointer;
  border-bottom-left-radius: 18px;
  border-bottom-right-radius: 18px;
}
.box-promociones .item-promo img{
  border-top-right-radius: 18px;
  border-top-left-radius: 18px;
}

.box-promociones a{
  text-decoration: none;
  color: #00272C;
}
.volver{
  text-decoration: none;
  color: #00272C;
}

/*CREAR PROMOCION*/
.box-crear-promo {
  background-color: #F2F5F5;
  border-radius: 20px;
  margin: 40px auto 70px;
  padding: 10px 30px 30px;
}
.form-general input[type="text"], 
.form-general input[type="password"],
.form-general input[type="date"],
.form-general input[type="email"],
.form-general input[type="tel"]
{
  background-color: #ffffff;
  border: 1px solid #fff;
  width: 100%; 
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  color:#687475;
  font-size:16px;
  outline: none;
  font-family: "Outfit",sans-serif;
}
.form-general input[type="date"]{
  color: rgba(104, 116, 117, 0.55);
}
.form-general select {
  background-color: #ffffff !important;
  border: 1px solid #ffffff;
  width: 100%;
  border-radius: 26px;
  height: 52px;
  margin: 15px 0;
  padding-left: 15px;
  appearance: none;        
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url(../imagenes/icons/arrow-down.svg) no-repeat right 17px center;
  color: rgba(104, 116, 117, 0.55);
  font-size: 16px;
  border: none;
  font-family: "Outfit", sans-serif;
  outline: none;
}
.form-general select:valid {
  color: #687475;
}
.form-general input::placeholder, .form-general textarea::placeholder  {
  color: rgba(104, 116, 117, 0.55);
}
.form-general input[type="date"].has-value {
  color: #687475;
}
/* cambia el existente a: */
.form-general input[type="date"]:not(.has-value), .form-general input[type="date"]:disabled {
  color: rgba(104, 116, 117, 0.55);
}


.form-general .fields {
    display: flex;
    gap: 15px;
    align-items: flex-start; 
    justify-content: flex-start;
}


.form-general .fake-label {
    height: 35px; 
    display: block;
}

.form-general .fields > label,
.form-general .fields > div {
    flex: 0 1 calc(33.9% - 20px); 
  
}
.form-general .fields > .big-input {
    flex: 0 1 calc(37.9% - 20px);
}
.form-general .fields > .small-input {
    flex: 0 1 calc(31.9% - 20px);
}
.form-general .fields-3{
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-top:30px;
}
.form-general .fields-3 label{
  flex: 0 0 calc(67% - 20px);
}

.form-general .new-size label{
  flex: 0 0 calc(16% - 20px);
}
.form-general .fields-2{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

/*PÁGINAS ALERTAS*/
.box-alertas{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
  margin: 50px auto 55px;
}
.row-alerta{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.row-div{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap:12px;
  max-width: 1035px;
}
.item-alerta{
  border: 1px solid #E6EEF0;
  border-radius: 35px;
  width: 100%;
  max-width: 100%;
  padding: 21px 27px 21px 18px;
  background-color: #ffffff;
  font-size: 18px;
  font-weight: 300;
}
/*Si son nuevas notificaciones*/
.item-alerta.new-alert{
  background-color: #F2F5F5; 
  font-weight: 400;
  border: none;
}
.item-alerta.new-alert .ico-change{
  filter: invert(17%) sepia(95%) saturate(948%) hue-rotate(135deg) brightness(102%) contrast(105%);
  /*filter: brightness(0) saturate(100%) invert(31%) sepia(67%) saturate(1522%) hue-rotate(150deg) brightness(92%) contrast(99%);*/
}
.link-alert{
  display: inline;
  color: #415254;
  text-decoration: underline;
}
/*PUBLICIDAD EXTERIOR*/
.publicidad-exterior .btn-crear{
  width: 322px;
  margin-top:20px;
}

/*Modal notas*/
.modal__wrapp {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.7);
  z-index: 9999;
  justify-content: center;
  align-items: center;
}

.modal__wrapp.active {
  display: flex;
}

.modal__inner {
  width: 600px;
  max-width: 100%;
}

.modal {
  background: #fff;
  border-radius: 15px;
  position: relative;
  overflow: hidden; 
}

.close {
  position: absolute;
  right: 15px;
  top: 17px;
  cursor: pointer;
  z-index: 2;
}

.body-modal {
  padding-top: 20px; 
}
.body-modal h2, .body-modal p{
  padding: 0px 20px 16px;
}

.body-modal img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover; 
}



/*Pagina herramientas interna*/
.box-herramientas{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 46px;
  margin: 50px 0;
}
.box-herramientas-stretch{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: 46px;
  margin: 50px 0;
}
.item-herramienta{
  background-color: #ffffff;
  flex-basis: 48%;
  padding: 24px;
  border-radius: 15px;
}

.lista-herramientas {
  display: grid;
  grid-template-columns: repeat(2, 1fr); 
  gap: 10px 44px; 
  margin-top: 28px;
  list-style: disc;
  padding-left:17px;
}
.lista-herramientas li {
  min-height: 30px;  
}
.lista-herramientas-2 {
  display: grid;
  grid-template-columns: repeat(1, 1fr); 
  gap: 15px; 
  margin-top: 20px;
  list-style: inside;
  padding-left:10px;
}

.lista-herramientas-2 li::marker, .lista-herramientas li::marker  {
  font-size: 11px;   
       
}
.wrapper-icons{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap:46px 32px;
  margin-top: 28px;
  color: #000000;
}
.item-icons{
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  flex-basis:21%;
  gap:10px;
  max-width: 103px;
  text-align: center;
}
.item-herramienta .title-2{
  font-weight: 500;
}
.item-icons img{max-width:40px;}

.grid-herramientas {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 41px;
  margin-bottom: 65px;
}

.col-izq .servicios{
  margin-top: 50px;
}

/*Pagina crear herramienta*/
.checks-wrapper{
    display: flex;
    flex-wrap: wrap;
    gap: 35px 58px;
    margin: 40px 0;
}
.check-item {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    width: 230px;
}

.check-item input[type="checkbox"] {
    appearance: none;
    width: 24px;
    height: 24px;
    border: 1px solid #00272C; 
    border-radius: 6px;
    background-color: #fff;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
}

.check-item input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 12px;
    border-right: 2px solid #00272C;
    border-bottom: 2px solid #00272C;
    transform: rotate(45deg);
    left: 6px;
    top: 2px;
}

/*Páginas documentación*/
.box-documentacion{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 46px;
    margin: 25px 0 50px;
}

.item-documentacion{
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    padding: 38px 24px;
    border-radius: 25px;
    flex-basis: 48%;
    gap: 20px;
}

.img-text{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.actions-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-left:36px;
}

.edit-delete {
    display: flex;
    gap: 20px;
}

.edit-delete a {
    display: flex;
    align-items: center;
    gap: 5px;
    text-decoration: underline;
    color: #00272C;
    font-size: 18px;
}

.textos-docs {
    flex: 1; 
}
.box-documentacion-col {
    display: flex;
    flex-direction: column;
    gap: 47px;
    margin: 25px 0 50px;
}

.item-documentacion-col {
    display: flex;
    flex-direction: column;
    background: #fff;
    padding: 38px 24px;
    border-radius: 25px;
    width: 100%;
    gap: 20px;
}

.row-wrapper {
    display: flex;
    gap: 40px;
}

.col {
    flex: 1;
}
/*pagina crear oficina*/
.form-ofi .grid-layout {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 20px;
}
.form-ofi .grid-layout label {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.form-ofi .grid-layout .mobiliario {
    grid-row: span 2;
}
.form-ofi .mobiliario textarea  {
    padding: 14px 10px;
    height: 69%;
    margin-top: 17px;
    border-radius: 25px;
    outline: none;
    border: none; 
    resize: none;
    color: #687475;
    font-size: 16px;
}
.form-ofi .mobiliario textarea::placeholder {
  color: rgba(104, 116, 117, 0.55);
}
.form-ofi .grid-layout .notas {
    grid-column: span 2;
}


/*Pagina almacen*/
.row-filtros{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}
.modal_almacen{
  width: 413px !important;
}
.row-filtros .btn-grey{position:relative;}
/*sidebar filtros*/

.overlay-filtros {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5); 
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  z-index: 900; 
}

.overlay-filtros.active {
  opacity: 1;
  visibility: visible;
}

.sidebar-filtros {
  position: fixed;
  top: 0;
  right: -420px; 
  width: 295px;
  height: 100%;
  background: #ffffff;
  box-shadow: 0 0 7px rgba(0,0,0,0.2);
  transition: right 0.3s ease;
  z-index: 1000;
  padding: 94px 25px;
  overflow: auto;
}

.sidebar-filtros.active{
  right: 0;
}
.limpiar-filtros{
  margin-bottom: 15px;
}
.limpiar-filtros .btn-filtros{
  background:none;
  border: 1px solid #017272;
  padding: 15px 16px;
  font-weight: 400;
}

.title-filtro{
  margin: 20px 0 14px;
}
.check{
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.check input[type="checkbox"] {
    appearance: none;
    width: 22px;
    height: 22px;
    border: 1px solid #00272C; 
    background-color: none;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
}

.check input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 12px;
    border-right: 2px solid #00272C;
    border-bottom: 2px solid #00272C;
    transform: rotate(45deg);
    left: 6px;
}
.contenedor-boton .btn-submit{
  width: 190px;
  margin: 43px 0;
  justify-content: center;
  font-weight: 300;
}

.cerrar-sidebar {
  position: absolute;
  top: 60px;
  right: 8px;
  font-size: 2rem;
  color: #333;
  cursor: pointer;
  user-select: none;
  background: none;
  border: none;
  line-height: 3.7;
}

.img-modal img {
  max-width: 100%;
  display: block;
  margin: 0 auto;
}

/*Página crear material*/
.form-material .grid-layout {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 20px;
}
.form-material .grid-layout label {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.form-material .grid-layout .notas {
    grid-row: span 2;
}
.form-material .notas textarea  {
    padding: 14px 10px;
    min-height: 115px;
    margin-top: 17px;
    border-radius: 25px;
    outline: none;
    border: none; 
    resize: none;
    color: #687475;
    font-size: 16px;
}
.form-material .grid-layout .notas {
    grid-column: span 2;
}

/*Página crear columna*/
.form-columna .field-new-column{
  gap:70px;
  align-items: center;
}

/*Página ficha promo*/
.box-ficha{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: 46px;
  margin: 50px 0;
}
.modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  align-items: flex-start;
  padding-top: 220px;
  justify-content: center;
  z-index: 9999;
}
.modal-overlay p{
  font-size: 18px;
  text-align: center;
}
.modal-overlay .row-btn{
  display:flex;
  margin-top: 18px;
  justify-content: center;
  gap: 25px;
}
.btn-white.btn-confirmar{
  border: 1px solid #C14736;
  color:#C14736;
}
.btn-white.btn-cancelar{
  border: 1px solid #00272C;
  color:#00272C;
  background-color: #DFE9EC;
  width: 123px;
}
.modal-overlay.active {
  display: flex;
}
.modal-eliminar {
  background: #fff;
  padding: 30px;
  border-radius: 12px;
  position: relative;
  max-width: 377px;
   box-shadow: 0 8px 14px 0px rgba(0,0,0,0.2); 
}
.modal-estatus{
  padding: 50px 23px 20px;
}
.item-ficha{
  background-color: #ffffff;
  flex-basis: 47%;
  padding: 24px;
  border-radius: 25px;
}

.box-img{
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  border-radius: 18px;
}

.box-white{
  background-color: #ffffff;
  width: 257px;
  padding: 10px 23px;
  border-radius: 15px;
  line-height: 2.3;
}
.texto-ficha{
  margin-top: 30px;
}
.texto-ficha p{
  line-height: 2.7;
}

.box-ficha-full{
  border-radius: 20px;
  color: #ffffff;
  padding: 24px 30px 21px;
  margin-bottom: 40px;
}

.box-ficha-full .row-alerta{
  margin-bottom: 13px;
}
.box-ficha-full .title-box{
  font-size: 20px;
  font-family: "Uni Neue", sans-serif;
  font-weight: 600; 
}
/*Tabs FICHA promo*/
.tabs-horizontal {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 30px;
  margin-bottom: 20px;
}

.tab-btn{
  background: #ffffff;
  border: none;
  padding: 15px;
  cursor: pointer;
  border-radius: 25px;
  font-family: "Outfit", sans-serif;
  display: flex;
  text-decoration: none;
  color: #00272C;
  align-items: center;
  gap:7px;
  font-size: 16px;
}

.tab-btn.active {
  background-color: #00272C;
  color: #fff;
}
.tabs-horizontal a.tab-btn {
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 7px;
}

.content-section {
  display: none;
}

.content-section.active {
  display: block;
  animation: fadeIn 0.35s ease;
}

/*Preguntar a Vicky*/

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.tab-btn img {
  transition: transform 0.3s ease;
}

.tab-btn img.rotated {
  transform: rotate(180deg);
}
.box-ficha-full .flex{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-top:30px;
}
.item-contacto .subtitle-ficha{
  border-bottom: 1px solid #DADADA; 
  margin-bottom: 20px;
  max-width: 510px;
}
.item-contacto{
  flex-basis: 49%;
  color: #00272C;
}
.subtitle-ficha.material, .subtitle-ficha.campanas{
  margin-top: 21px;
}
.wrapper-text{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 2.2;
}
.wrapper-text p{
  flex-basis: 49%;
}

/*desplegable mapa*/
.mapa .lista-map{
  list-style: disc !important;
  color:#00272C;
}
.mapa .lista-map li a{
  color:#00272C;
  margin-top: 17px;
}
.row-map{
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 40px 0;
  gap: 60px;
}

.box-map{
  width: 744px;
  height: 500px;
  background-color: #F2F5F5;
  border-radius: 20px;
}

/*Pagina promo portal*/
.fields .radio{

    flex: 0 0 calc(33% - 20px);
    display: flex;
    flex-direction: row;

}
.lg-field {
  flex: 0 1 calc(33.9% - 20px); 
  display: flex;
  flex-direction: column;
  margin-top: 15px;
}

.radio-group {
  display: flex;
  margin-top: 10px; 
}

.radio-group label {
  display: flex;
  align-items: center;
  font-size: 16px;
  color: #687475;
}
.radio-group input[type="radio"] {
    appearance: none; 
    width: 24px;
    height: 24px;
    border: 1px solid #00272C;
    border-radius: 50%; 
    background-color: #fff;
    cursor: pointer;
    position: relative;
    outline: none;
}

.radio-group input[type="radio"]:checked::after {
    content: "";
    width: 12px;
    height: 12px;
    background-color: #00272C;
    border-radius: 50%;
    position: absolute;
    top: 23%;
    left: 23%;

}


/*FOOTER*/
footer .wrapper{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}
.footer-1{
  border-top-right-radius: 17px;
  border-top-left-radius: 17px;
}
.footer-1 .wrapper{
  padding: 20px 0 30px 0;
}
.redes-sociales{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}
.links-footer p a{
  text-decoration: none;
  color: #00272C;
}
.tira-footer{
  padding:20px 0;
}
.legales{
  display: flex;
  align-items: center;
  gap:18px;
}
.legales a{
  color: #ffffff;
  font-size:15px;
  font-weight:500;
  text-decoration: none;
}

.columnas-wrapper {
    display: flex;
    flex-wrap: wrap;        
    gap: 20px; 
    margin:10px 0 13px 10px;          
}

.columna-footer {
    display: flex;
    flex-direction: column;
}

.columna-footer a {
    color: #687475;
    border-bottom: 1px solid;
    text-decoration: none;
    margin-bottom: 5px;
    font-size: 15px;
    padding: 0 0 5px 10px;
}

@media (max-width: 768px) {
  footer .wrapper {
    flex-direction: column;
    align-items: center;
    gap: 15px;
  }
  footer .wrapper > * {
    text-align: center; 
  }
  .legales {
    justify-content: center; 
  }
  .redes-sociales {
    justify-content: center; 
    gap:10px;
  }
}
