html, body {
    margin: 0;
}

/* CSS Document */
@charset "utf-8";
.bg-transparent{
background: transparent !important;
}
.mt--1{
    margin-top: -1px !important;
}
.grab-cursor{
cursor: pointer;
}
.overflow-h{
    overflow: hidden;
}

.user-avatar{
border-radius: 50%;
height: 100px;
margin-top: 5px;
margin-right: 10px;
margin-bottom: -47px;
vertical-align: top !important;
}
/* Mobile Menu */
.header-mobile{
display: none;
margin: 0;
left: 0;
top: 0;
z-index: 99;
width: 100%;
overflow: hidden;
height: 50px;
position: fixed;
background: #c8211f;
background-color: #c8211f;
}
.header-mobile .left {
float: left;
margin: 5px 0 0 10px;
}
.header-mobile .right {
float: right;
margin: 0 5px 0 0;
}
.header-mobile .left img.logo {
height: 35px;
}
.header-mobile .right i{
height: 49px;
width: 50px;
background-repeat: no-repeat;
background-position: center !important;
background-size: 50px !important;
}
/* error ---------------------------------*/
.not-found-page{
padding: 150px 0;
text-align: center;
display: block;
position: relative;
}
.not-found-page h1{
    font-size: 60px;
    line-height: initial;
    text-transform: uppercase;
}
.not-found-page p{
 font-size: 26px;
    line-height: initial;   
}

/* login ---------------------------------*/
.bg-login{
background: url(../img/fondo.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.page-login main > .cols{
min-height: 100vh;
}
.page-login:not(.place-web-public) main > .cols > .col-2:not(.bg-login),
.place-web-public main > .cols > .col-1{
display: flex;
align-items: center;
justify-content: center;
}
.page-login:not(.place-web-public) main > .cols > .col-2:not(.bg-login){
min-height: 100vh;
box-sizing: border-box;
}
.bg-login .height-space{
min-height: 100vh;
}
.box-login{
box-shadow: 0 25px 50px -12px rgba(0,0,0,.25)!important;
width: 340px;
padding: 40px;
text-align: center;
background: #fff;
    margin: 0 auto;
}
.logo-center{
display: block;
margin: 0 auto 30px auto;
}
.logo-center img{
max-width: 100%;
height: auto;
}

/* HACKS ------------------------------------------------------------*/
#highlight-background, .inner-highlight-background{    
        background-color: rgba(0, 0, 0, .2);
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: none;
    cursor: inherit;
}
#highlight-background {
    z-index: 130;
        background-color: rgba(12, 0, 0, 0.5);
}
.highlight-active {
    position: relative;
}
.highlight-active {
    z-index: 140!important;
}

.jconfirm.jconfirm-light .jconfirm-box{
    width: 340px !important;
}
.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-title,
.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content{
    font-weight: 300 !important;
}
.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-title{
    font-size: 18px !important;
    font-weight: 400 !important;
}
.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content{
    overflow: inherit !important;
    font-size: 15px;
    padding: 0 8px;
}
.pos-relative{
    position: relative;
}
.inv{ display:none; }
.clear{
clear:both;
height:0px;
}
a{
text-decoration: none;
}
html,body{
color: #3c3b6a;
margin:0;width:100%;height:100%;background-color: #eeeff6;
font-family: 'Poppins', sans-serif;
}
.f_pop, .f_pop *{
font-family: 'Poppins', sans-serif;
}
.place-panel {
overflow: hidden;
overflow-y: auto;
}
.body-place{
width: 100%;
position: relative;
}
.ease{
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.trans, .trans *{
-webkit-transition: all .3s;
-moz-transition: all .3s;
-ms-transition: all .3s;
-o-transition: all .3s;
transition: all .3s;
}
.trans:hover, .trans:hover *{
-webkit-transition: all .3s;
-moz-transition: all .3s;
-ms-transition: all .3s;
-o-transition: all .3s;
transition: all .3s;
}
/* icons */
.ico-inline{margin: 0;padding: 0;display: inline-block;vertical-align: middle;}
.ico-user-log{background: url(../img/user.png);}
.ico-pass-log{background: url(../img/pass.png);}
.ico-calendar{background: url(../img/calendar.png);}
.ico-menu{background: url(../img/menu.png);}
.ico-search{background: url(../img/search.png);}
.ico-home{background: url(../img/home-white.png);}
.ico-user{background: url(../img/users-white.png);}
.ico-admin{background: url(../img/users-blue.png);}
.ico-default{background: url(../img/default-user.png);}
.ico-customer{background: url(../img/clients-white.png);}
.ico-list{background: url(../img/myproducts-white.png);}
.ico-notif{background: url(../img/notification.png);}
.ico-upload{background: url(../img/upload.png);}
.ico-arrow-ddl{background: url(../img/arrow-ddl.png);}
.ico-export-cloud{background: url(../img/download.png);}
.ico-filter-ui{background: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='18'%20height='18'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23ffffff'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M4%205h16'/%3E%3Cpath%20d='M7%2012h10'/%3E%3Cpath%20d='M10%2019h4'/%3E%3C/svg%3E");}
.ico-customer-blue{background: url(../img/clients-blue.png);}
.ico-product{background: url(../img/myproducts-white.png);}
.ico-contact{background: url(../img/contact-white.png);}
.ico-replacement{background: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23fff'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M14.7%206.3a4.4%204.4%200%200%200-5.6%205.6L3%2018l3%203%206.1-6.1a4.4%204.4%200%200%200%205.6-5.6l-2.8%202.8-3-3%202.8-2.8z'/%3E%3C/svg%3E");}
.ico-setting{background: url(../img/setting-white.png);}
.ico-nut{background: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23fff'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2016V8l-7-4-7%204v8l7%204%207-4z'/%3E%3Ccircle%20cx='14'%20cy='12'%20r='3'/%3E%3C/svg%3E");}
.ico-product-blue{background: url(../img/myproducts-blue.png);}
.ico-contact-blue{background: url(../img/contact-blue.png);}
.ico-download-blue{background: url(../img/download.png);}
.ico-file-down{background: url(../img/file-ico.png);}
.ico-eye-show{
    background: url(../img/eye-show.png);background-repeat: no-repeat;
}
.ico-eye-hide{
    background: url(../img/eye-hide.png);background-repeat: no-repeat;
}

.ico-products{
background: url(../img/myproducts-white.png);
}
.ico-notification{
background: url(../img/notification.png);
}
.ico-download{
background: url(../img/download.png);
}
.ico-edit{
background: url(../img/edit.png);
}
.ico-delete{
background: url(../img/delete.png);
}
.ico-close{    
background: url(../img/close.png);
}
.ico-logout{background: url(../img/exit.png);}
.ico-plus{
background: url(../img/more.png);
}
.size-1{
    height: 24px;width: 24px;
    background-repeat: no-repeat !important;
    background-position: center !important;background-size: 24px !important;
}
.size-2{
    height: 24px;width: 24px;
    background-repeat: no-repeat !important;
    background-position: center !important;background-size: 24px !important;
}
.size-3{
    height: 32px;
    width: 32px;   
    background-position: center !important;background-size: 32px !important;
}
.size-4{height: 17px;width: 17px;background-position: center !important;background-size: 17px !important;}
.size-5{
        height: 20px;
    width: 20px;
    background-position: center !important;
    background-size: 20px !important;
}

.size-6{
        height: 16px;
    width: 16px;
    background-position: center !important;
    background-size: 16px !important;
}
.size-7{
    height: 10px;
    width: 10px;
    background-position: center !important;
    background-size: 10px !important;
}
.size-8{
    height: 85px;
    width: 85px;
    background-position: center !important;
    background-size: 85px !important;
}

/* effect opacity */
.opacity_effect_part{
    opacity: 1;
    visibility: visible;
    -webkit-transition: all .5s !important;
    transition: all .5s !important;
}
.opacity_effect_active{
    opacity: 0 !important;
    visibility: hidden !important;
    -webkit-transition: all .5s !important;
    transition: all .5s !important;
}
.paragraph{
line-height: 22px;
    display: block;
    font-size: 16px;
}

/* alignments */
.align_left {
    float: left !important;
}
.align_right {
    float: right !important;
}
.hide_control {
display: none !important;
}

/* sidebar */
.space-notifiy{
height: 45px;
width: 35px;
float: right;
text-align: center;
}
.notif-qty{
background: #c8211f;
color: #fff;
border-radius: 50%;
height: 20px;
width: 20px;
font-size: 12px;
line-height: 20px;
text-align: center;
position: absolute;
bottom: 0;
right: 0;
}

.sidebar-left{
z-index: 1001;
position: relative;
}
.nav-bar{
position: fixed;

width: 220px;

left: 0;

top: 0;

margin: 0;

height: 100%;

height: calc(100% - 20px);

height: -moz-calc(100%);

background-color: #fff;

z-index: 999;

overflow-y: auto;

will-change: transform;

backface-visibility: hidden;

transform: translateX(0px);

transition: width .25s ease;

background: #c8211f;

background-color: #c8211f;

margin: 10px 10px 10px 10px;

border-radius: 12px;

color: #fff;

display: flex;

flex-direction: column;

box-sizing: border-box;

overflow: hidden;
}
.sidebar-toggle{
position: fixed;
left: 218px;
top: 26px;
z-index: 1002;
width: 32px;
height: 32px;
border: 0;
border-radius: 8px;
background: #fff;
box-shadow: 0 10px 24px rgba(60,59,106,.18);
color: #c8211f;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 11px;
font-weight: 600;
line-height: 1;
letter-spacing: -1px;
padding: 0;
transition: left .25s ease, transform .25s ease, background .25s ease;
}
.sidebar-toggle:before{
content: "<";
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
}
.sidebar-toggle:hover{
background: #f7f7fb;
}
.sidebar-collapsed .nav-bar{
width: 72px;
}
.sidebar-collapsed .sidebar-toggle{
left: 70px;
background: #fff;
box-shadow: 0 10px 24px rgba(60,59,106,.18);
}
.sidebar-collapsed .sidebar-toggle:before{
content: ">";
}
.info-dash{

position: relative;

text-align: center;

display: block;

padding: 28px 18px 28px 18px;
}
.info-dash .logo{

display: inline-block;

margin: -8px auto 5px auto;

width: 178px;

height: auto;
}
.sidebar-collapsed .info-dash{
padding: 24px 12px 20px 12px;
}
.sidebar-collapsed .info-dash .logo{
width: 38px;
height: 38px;
object-fit: cover;
object-position: left center;
margin: 0 auto;
}
.sidebar-collapsed .info-dash .text,
.sidebar-collapsed .info-dash .text-2{
display: none;
}
.info-dash .logo:hover{
    opacity: 0.8;
}
.info-dash .text{

font-size: 13px;

font-weight: 200;

margin-bottom: 4px;
}
.info-dash .text-2{

font-size: 15px;

font-weight: 300;

line-height: 18px;
}
.sidebar-left .menu-list {

position: relative;

display: block;

list-style: none;

width: 100%;

padding: 0;
}
.sidebar-left .nav-bar nav{
flex: 1 1 auto;
overflow-y: auto;
padding: 8px 0 18px 0;
}
.menu-list li{

display: block;

width: 100%;
}
.menu-list li a{

display: flex;

align-items: center;

padding: 8px 24px;

text-decoration: none;

border-radius: 8px;

margin: 2px 10px;
}
.sidebar-collapsed .menu-list li a{
justify-content: center;
padding: 10px 0;
margin: 3px 12px;
}
.menu-list a.active, .menu-list a:hover {
background: rgba(255,255,255,.16);
}
.menu-list a.opt-home.active .ico-home,
.menu-list a.opt-home:hover .ico-home{background: url(../img/home-white.png);}
.menu-list a.opt-contact.active .ico-contact,
.menu-list a.opt-contact:hover .ico-contact{background: url(../img/contact-white.png);}
.menu-list a.opt-home.active .ico-home,
.menu-list a.opt-home:hover .ico-home{background: url(../img/home-white.png);}
.menu-list a.opt-user.active .ico-user,
.menu-list a.opt-user:hover .ico-user{background: url(../img/users-white.png);}
.menu-list a.opt-customer.active .ico-customer,
.menu-list a.opt-customer:hover .ico-customer{background: url(../img/clients-white.png);}
.menu-list a.opt-list.active .ico-list,
.menu-list a.opt-list:hover .ico-list{background: url(../img/myproducts-white.png);}
.menu-list a.opt-product.active .ico-product,
.menu-list a.opt-product:hover .ico-product{background: url(../img/myproducts-white.png);}
.menu-list a.opt-replacement.active .ico-replacement,
.menu-list a.opt-replacement:hover .ico-replacement{background: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23fff'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M14.7%206.3a4.4%204.4%200%200%200-5.6%205.6L3%2018l3%203%206.1-6.1a4.4%204.4%200%200%200%205.6-5.6l-2.8%202.8-3-3%202.8-2.8z'/%3E%3C/svg%3E");}
.menu-list a.opt-setting.active .ico-setting,
.menu-list a.opt-setting:hover .ico-setting{background: url(../img/setting-white.png);}
.menu-list a.opt-setting.active .ico-nut,
.menu-list a.opt-setting:hover .ico-nut{background: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23fff'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2016V8l-7-4-7%204v8l7%204%207-4z'/%3E%3Ccircle%20cx='14'%20cy='12'%20r='3'/%3E%3C/svg%3E");}
.menu-list a.opt-notif.active .ico-setting,
.menu-list a.opt-notif:hover .ico-setting{background: url(../img/setting-white.png);}


.menu-list a.active span,
.menu-list a:hover span{
    color: #fff;
    font-weight: 400;
}

.menu-list li i{
    
margin-right: 18px;
}
.sidebar-collapsed .menu-list li i{
margin-right: 0;
}
.sidebar-collapsed .menu-list li span{
display: none;
}
.menu-list li i,
.menu-list li span{

display: inline-block;

vertical-align: middle;

color: #fff;

font-size: 15px;

font-weight: 200;
}
.sidebar-left .menu-footer{
position: relative;

width: 100%;

text-align: center;

display: block;

padding: 16px 14px 22px 14px;

box-sizing: border-box;

margin-top: auto;
}
.menu-footer #close-session{

display: flex;

align-items: center;

justify-content: center;

color: #fff;

padding: 12px 20px;

font-size: 15px;

border-radius: 8px;

font-weight: 200;

letter-spacing: 1px;

text-decoration: none;

background: rgba(255,255,255,.12);
}
.sidebar-collapsed .sidebar-left .menu-footer{
padding: 14px 12px 22px 12px;
}
.sidebar-collapsed .menu-footer #close-session{
padding: 12px 0;
}
.sidebar-collapsed .menu-footer #close-session i{
margin-right: 0;
}
.sidebar-collapsed .menu-footer #close-session span{
display: none;
}
.menu-footer #close-session:hover{
    background: rgba(255,255,255,.2);
}
.menu-footer #close-session i{
    margin-right: 10px;
}
.menu-footer a *{
display: inline-block;
vertical-align: middle;
}

/* body content */
#content{

flex: 1 0 auto;

padding-left: 280px;

margin-top: -8px;

position: relative;

transition: padding-left .25s ease;
}
.wrapper-top{z-index: 3;position: fixed;left: 280px;width: calc(100% - 280px);top: 0;padding: 15px 32px;background: #eeeff6;box-sizing: border-box;transition: left .25s ease, width .25s ease;}
.sidebar-collapsed #content{
padding-left: 112px;
}
.sidebar-collapsed .wrapper-top{
left: 112px;
width: calc(100% - 112px);
padding-left: 32px;
}
.wrapper-top .finder-content {
    
position: relative;
    
width: min(860px, 100%);

margin: 0 auto;
}
.wrapper-top .btn-search{
    position: absolute;
    left: 0;
    top: 0;
    z-index: 999;
    margin-top: 13px;
    margin-left: 20px;
}
.wrapper-top .btn-search:hover{
    opacity: 0.6;
}
.wrapper-top .ico-notif{
margin-top: auto;
}
.wrapper-top .input-fullwidth{

font-size: 14px;

font-weight: 400;

color: #3c3b6a;

text-align: left;

border-radius: 15px;

border-width: 1px;

border-style: solid;

border-color: rgb(117 117 117 / 0.1);

background-color: #fff;

padding: 0 0 0 50px;

display: inline-block;

min-height: 45px;

width: calc(100% - 42px);

line-height: 1.8;

vertical-align: middle;

-webkit-transition: all .3s ease;

-moz-transition: all .3s ease;

-ms-transition: all .3s ease;

-o-transition: all .3s ease;

transition: all .3s ease;
}
.fullwidth{
    width: 100%;
}
.wrapper-top .input-fullwidth::-webkit-input-placeholder {
color: rgb(60 59 106 / 55%);
}
.wrapper-top .input-fullwidth::placeholder {
color: rgb(60 59 106 / 55%);
}
.wrapper-title{
position: relative;
}
.wrapper-title * {
    display: inline-block;
    vertical-align: middle;
}


.title-page{
    color: #c8211f;
    font-size: 24px;
    font-weight: 400;    
}
.title-page-welcome{
    color: #111;
    line-height: 32px;
}
.title-page-welcome .welcome-label,
.title-page-welcome b{
    display: block;
    color: #111;
}
.btn-add{
        margin-left: 25px;
    margin-top: -2px;
}
.btn-add:hover{
opacity: 0.6;
}

.wrapper-list{

padding-top: 80px;

position: relative;
}
.content-white{
background: #fff;
background-color: #fff;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
padding: 20px;
}
.mb-20{
margin-bottom: 20px;    
}
.pdb-20{
padding-bottom: 20px;
}
.pdb-30{
padding-bottom: 30px;
}
.pdr-20{
padding-right: 20px;
}
.pdr-40{
padding-right: 40px;
}
.content-wrap{
overflow: hidden;
background: #fff;

border-radius: 20px;

margin: 0 20px 0 0;

height: 448px;
}
.wrap-padding{
    position: relative;
    padding: 20px;
    display: block;
    height: calc(100% - 40px);
}
.title-col{text-align: center;font-weight: 500;font-size: 26px;margin: 20px 20px 20px 0;}
.page-list-user .wrapper-body{
padding-top: 8px;
padding-right: 24px;
box-sizing: border-box;
}
.user-management-title{
display: flex;
align-items: center;
gap: 18px;
}
.user-management-title .title-page{
color: #111;
font-weight: 500;
}
.page-listing-listing .title-page{
color: #111;
}
.page-replacement-maintenance .title-page{
color: #111;
}
.page-replacement-list .title-page{
color: #c8211f;
font-weight: 500;
}
.page-replacement-list .wrapper-body{
padding-right: 24px;
box-sizing: border-box;
}
.replacement-client-card{
width: 100%;
max-width: 930px;
background: #fff;
border-radius: 14px;
padding: 16px 20px 18px 20px;
box-sizing: border-box;
box-shadow: 0 2px 10px rgba(37,36,95,.08);
}
.replacement-client-row{
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 18px;
padding: 12px 0;
border-bottom: 1px solid #d8dbe5;
}
.replacement-client-row:first-child{
padding-top: 0;
}
.replacement-client-row:last-child{
border-bottom: 0;
padding-bottom: 0;
}
.replacement-client-info{
min-width: 0;
color: #25245f;
}
.replacement-client-label{
display: block;
font-size: 12px;
line-height: 1.2;
color: #7b7d92;
margin-bottom: 5px;
}
.replacement-client-info h2{
font-size: 15px;
font-weight: 600;
line-height: 1.25;
color: #25245f;
margin: 0;
word-break: break-word;
}
.replacement-download-button{
display: inline-flex;
align-items: center;
justify-content: center;
gap: 6px;
height: 34px;
min-width: 112px;
padding: 0 14px;
border-radius: 17px;
background: #c8211f;
color: #fff;
font-size: 13px;
font-weight: 700;
line-height: 34px;
text-decoration: none;
flex: 0 0 auto;
box-sizing: border-box;
}
.replacement-download-button .ico-inline{
filter: brightness(0) invert(1);
}
.replacement-download-button:hover{
opacity: .9;
}
.replacement-empty{
font-size: 15px;
font-weight: 500;
color: #25245f;
padding: 12px 0;
}
.page-setting-maintenance .title-page{
color: #111;
}
.page-setting-maintenance .wrapper-body{
padding-right: 24px;
box-sizing: border-box;
}
.page-setting-maintenance .setting-layout{
display: flex;
justify-content: flex-start;
}
.page-setting-maintenance .setting-card{
width: 860px;
max-width: 100%;
height: auto;
margin: 0;
padding: 24px;
box-sizing: border-box;
}
.page-setting-maintenance .setting-photo-row{
display: flex;
align-items: center;
gap: 22px;
padding-bottom: 22px;
margin-bottom: 20px;
border-bottom: 1px solid #d8dbe5;
}
.page-setting-maintenance .setting-photo-preview{
width: 110px;
height: 110px;
object-fit: cover;
border-radius: 12px;
background: #e9ebf3;
}
.page-setting-maintenance .setting-photo-detail{
display: flex;
flex-direction: column;
gap: 8px;
min-width: 0;
}
.page-setting-maintenance .setting-photo-name{
color: #7b7d92;
font-size: 15px;
line-height: 1.3;
word-break: break-word;
}
.page-setting-maintenance .setting-photo-actions{
display: flex;
align-items: center;
gap: 12px;
flex-wrap: nowrap;
}
.page-setting-maintenance .setting-photo-upload,
.page-setting-maintenance .setting-photo-clear{
display: inline-flex;
align-items: center;
justify-content: center;
height: 38px;
min-width: 132px;
border-radius: 20px;
border: 0 !important;
font-size: 15px;
font-weight: 700;
line-height: 38px;
padding: 0 24px;
margin: 0;
cursor: pointer;
box-sizing: border-box;
text-transform: none;
letter-spacing: 0;
white-space: nowrap;
}
.page-setting-maintenance .setting-photo-upload{
position: relative;
overflow: hidden;
color: #fff;
background: #c8211f;
flex: 0 0 240px;
}
.page-setting-maintenance .setting-photo-upload input[type="file"]{
position: absolute;
inset: 0;
opacity: 0;
cursor: pointer;
}
.page-setting-maintenance .setting-photo-clear{
color: #000 !important;
background: #fff;
border: 2px solid #000 !important;
flex: 0 0 132px;
}
.page-setting-maintenance textarea{
height: 110px !important;
line-height: 1.45 !important;
padding-top: 12px !important;
resize: vertical;
}
.page-setting-maintenance .setting-notification-copies{
padding-top: 8px;
margin-top: 4px;
border-top: 1px solid #d8dbe5;
}
.page-setting-maintenance .notification-copy-row{
display: grid;
grid-template-columns: minmax(0, 1fr) 190px;
gap: 10px;
align-items: center;
width: 100%;
max-width: 100%;
box-sizing: border-box;
}
.page-setting-maintenance .notification-copy-actions{
display: flex;
align-items: center;
justify-content: flex-end;
gap: 10px;
width: 190px;
height: 34px;
box-sizing: border-box;
}
.page-setting-maintenance .notification-copy-row input,
.page-setting-maintenance .notification-copy-row select{
margin-bottom: 5px;
}
.page-setting-maintenance .style-form.module_import .notification-copy-action{
display: inline-flex !important;
align-items: center;
justify-content: center;
flex: 0 0 34px;
width: 34px !important;
min-width: 34px;
height: 34px !important;
margin: 0 0 5px !important;
padding: 0 !important;
border: 2px solid #000 !important;
border-radius: 50% !important;
background: #fff !important;
color: #000 !important;
font-size: 24px !important;
line-height: 30px !important;
font-weight: 700;
cursor: pointer;
}
.page-setting-maintenance .style-form.module_import .notification-copy-action:hover{
background: #111 !important;
color: #fff !important;
}
.page-setting-maintenance .notification-copy-email,
.page-setting-maintenance .notification-copy-type{
min-width: 0;
box-sizing: border-box;
}
.page-setting-maintenance .style-form.module_import .notification-copy-email{
width: 100% !important;
}
.page-setting-maintenance .style-form.module_import .notification-copy-type{
flex: 1 1 auto;
width: 142px !important;
}
.page-setting-maintenance .setting-field-help{
display: block;
margin: 3px 0 14px;
color: #77798b;
font-size: 13px;
}
.page-setting-maintenance .notification-copy-warning{
grid-column: 1 / -1;
margin: -5px 0 7px;
}
.page-list-informes .title-page{
color: #111;
}
.page-contact-message .title-page{
color: #25245f;
font-weight: 400;
}
.page-contact-message .wrapper-body{
display: grid;
grid-template-columns: minmax(280px, 430px) minmax(0, 1fr);
gap: 24px;
align-items: start;
padding-right: 24px;
box-sizing: border-box;
}
.contact-card,
.contact-panels{
width: 100%;
max-width: none;
margin: 0;
box-sizing: border-box;
}
.contact-card{
background: #fff;
border-radius: 14px;
padding: 28px 24px;
box-shadow: 0 3px 12px rgba(37,36,95,.12);
text-align: center;
}
.contact-actions{
width: 100%;
max-width: 430px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr;
gap: 14px;
}
.contact-action{
height: 54px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
gap: 14px;
font-size: 15px;
font-weight: 500;
font-family: Arial, Helvetica, sans-serif;
line-height: 1.1;
text-decoration: none;
box-sizing: border-box;
}
.contact-action img{
width: 20px;
height: 20px;
object-fit: contain;
}
.contact-action-whatsapp{
background: #32846f;
color: #fff;
}
.contact-action-linkedin{
background: #3a6d93;
color: #fff;
}
.contact-action-neutral{
background: #eef2fb;
color: #234c85;
border: 1px solid #d7ddea;
}
.contact-action-symbol{
width: 20px;
height: 20px;
display: inline-block;
background-repeat: no-repeat;
background-position: center;
background-size: 20px 20px;
flex: 0 0 20px;
}
.contact-action-phone{
background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='22'%20height='22'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23234c85'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6A19.79%2019.79%200%200%201%202.12%204.18%202%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72c.12.9.33%201.77.62%202.61a2%202%200%200%201-.45%202.11L8.09%209.91a16%2016%200%200%200%206%206l1.47-1.19a2%202%200%200%201%202.11-.45c.84.29%201.71.5%202.61.62A2%202%200%200%201%2022%2016.92z'/%3E%3C/svg%3E");
}
.contact-action-web{
background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='22'%20height='22'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23234c85'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='12'%20r='10'/%3E%3Cpath%20d='M2%2012h20'/%3E%3Cpath%20d='M12%202a15.3%2015.3%200%200%201%204%2010%2015.3%2015.3%200%200%201-4%2010%2015.3%2015.3%200%200%201-4-10%2015.3%2015.3%200%200%201%204-10z'/%3E%3C/svg%3E");
}
.contact-actions-split{
display: grid;
grid-template-columns: 1fr;
gap: 12px;
}
.contact-action-small{
height: 54px;
font-size: 15px;
font-weight: 500;
font-family: Arial, Helvetica, sans-serif;
}
.contact-action-small img{
width: 20px;
height: 20px;
}
.contact-panels{
background: #fff;
border-radius: 14px;
box-shadow: 0 3px 12px rgba(37,36,95,.12);
overflow: hidden;
}
.contact-panel{
border-bottom: 1px solid #d8dbe5;
}
.contact-panel:last-child{
border-bottom: 0;
}
.contact-panel summary{
display: flex;
align-items: center;
justify-content: space-between;
min-height: 52px;
padding: 0 26px;
font-size: 17px;
font-weight: 500;
line-height: 1.2;
color: #25245f;
cursor: pointer;
list-style: none;
box-sizing: border-box;
}
.contact-panel summary::-webkit-details-marker{
display: none;
}
.contact-panel summary::after{
content: "+";
font-size: 20px;
font-weight: 900;
color: #25245f;
line-height: 1;
}
.contact-panel[open] summary::after{
content: "-";
color: #c8211f;
}
.contact-panel-content{
padding: 20px 26px 28px 26px;
border-top: 1px solid #d8dbe5;
}
.contact-panel-content h3{
font-size: 22px;
font-weight: 900;
line-height: 1.2;
color: #c8211f;
margin: 0 0 18px 0;
}
.contact-proposal-links{
display: grid;
gap: 9px;
margin: 0;
padding-left: 20px;
font-family: Arial, Helvetica, sans-serif;
font-size: 15px;
font-weight: 500;
line-height: 1.35;
color: #3c3b6a;
}
.contact-proposal-links a{
color: #3c3b6a;
text-decoration: none;
}
.contact-proposal-links a:hover{
color: #c8211f;
}
.contact-proposal-text{
font-family: Arial, Helvetica, sans-serif;
font-size: 15px;
font-weight: 500;
line-height: 1.45;
color: #3c3b6a;
margin-top: 18px;
}
.contact-proposal-main{
margin-top: 0;
}
.contact-video-wrap{
width: 100%;
max-width: 680px;
aspect-ratio: 16 / 9;
margin: 0 auto;
background: #000;
border-radius: 10px;
overflow: hidden;
}
.contact-video-wrap iframe{
width: 100%;
height: 100%;
display: block;
}
.user-management-title .btn-add{
display: inline-flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
margin: 0;
border-radius: 50%;
background: #c8211f;
}
.user-role-grid{
display: flex;
flex-wrap: nowrap;
gap: 28px;
align-items: flex-start;
}
.user-role-grid .user-role-column{
flex: 0 0 calc((100% - 56px) / 3);
max-width: calc((100% - 56px) / 3);
width: calc((100% - 56px) / 3);
}
.user-role-grid .title-col{
margin: 18px 0 18px 0;
font-size: 24px;
font-weight: 500;
color: #25245f;
}
.user-role-card{
height: 448px;
margin: 0;
border-radius: 16px;
box-shadow: none;
}
.user-role-card .wrap-padding{
padding: 20px;
height: calc(100% - 40px);
}
.user-role-card table.dataTable{
border-collapse: separate;
border-spacing: 0 6px;
}
.user-role-card .wrap-padding tr[role="row"]{
height: 52px;
}
.user-role-card .text-manager{
font-weight: 400;
color: #25245f;
}
.user-role-card .btn-group{
display: flex;
justify-content: flex-end;
align-items: center;
gap: 8px;
}
.user-role-card .btn-group a:nth-child(1){
margin-right: 0;
}

.customer-management-title{
display: flex;
flex-direction: column;
align-items: stretch;
justify-content: flex-start;
position: relative;
width: auto;
min-height: 62px;
margin: 0 0 12px 0;
}
.customer-title-actions{
display: flex !important;
align-items: center;
gap: 18px;
text-align: left;
/* La barra superior fija (.wrapper-top) se solapaba ~3px sobre esta fila y tapaba
   el borde SUPERIOR del boton "+ Cliente". Este margen baja la fila para que el
   boton quede por debajo de la barra y su borde de arriba se vea completo. */
margin-top: 12px;
}
/* Mismo estilo que .customer-export-button (el boton "Exportar" de al lado):
   blanco con borde. Asi los botones de la barra quedan uniformes. */
.btn-add-pill{
height: 32px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 0 16px;
margin: 0;
border: 1px solid #d0d5dd;
border-radius: 16px;
background: #fff;
color: #374151;
font-family: 'Poppins', sans-serif;
font-size: 13px;
font-weight: 500;
line-height: 32px;
text-decoration: none;
cursor: pointer;
-webkit-appearance: none;
appearance: none;
box-shadow: none;
outline: none;
vertical-align: middle;
transition: background .15s;
}
.btn-add-pill:hover{ background: #f3f4f6; color: #374151; }
.btn-add-pill i{ font-size: 14px; }
.customer-management-title .title-page{
display: block;
color: #111;
font-weight: 500;
line-height: 32px;
margin: 0;
}
.customer-count{
display: block;
width: min(760px, 100%);
font-size: 17px;
line-height: 22px;
color: rgba(37,36,95,.72);
margin-top: 4px;
align-self: center;
text-align: center;
}
.customer-export{
position: relative;
right: auto;
top: auto;
transform: none;
z-index: 4;
}
.customer-export.is-search-dimmed{
filter: brightness(.45);
pointer-events: none;
}
.customer-export-button{
height: 32px;
/* Borde 1px sobre el fondo lavanda: con #d0d5dd/#b6bdca el lado SUPERIOR no se
   notaba (la sombra solo define el borde inferior). #9aa3b2 se lee en los 4 lados. */
border: 1px solid #9aa3b2;
border-radius: 16px;
background: #fff;
color: #374151;
box-shadow: 0 1px 2px rgba(16,24,40,.10);
cursor: pointer;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
font-size: 13px;
font-weight: 500;
line-height: 32px;
padding: 0 14px;
}
.customer-export-button:hover{
background: #f3f4f6;
opacity: 1;
}
.customer-export-button .ico-inline{
filter: brightness(0) opacity(.6);
}
.customer-export-popover{
display: none;
position: absolute;
left: 0;
top: 48px;
width: 230px;
background: #fff;
border-radius: 10px;
box-shadow: 0 18px 42px rgba(0,0,0,.18);
overflow: hidden;
text-align: left;
}
.customer-export.open .customer-export-popover{
display: block;
}
.customer-export-title{
padding: 14px 16px 10px 16px;
font-size: 13px;
font-weight: 600;
color: #25245f;
}
.customer-export-option{
display: block;
width: 100%;
border: 0;
background: #f3f4fa;
color: #25245f;
font-size: 13px;
text-align: left;
padding: 11px 16px;
cursor: pointer;
}
.customer-export-option:hover{
background: #c8211f;
color: #fff;
}
.customer-list-layout{
justify-content: center;
}
.customer-list-column{
width: min(760px, 100%);
max-width: min(760px, 100%);
flex: 0 0 min(760px, 100%);
padding-right: 0;
}
.customer-list-card{
height: 760px;
margin: 10px auto 0 auto;
border-radius: 16px;
}
.customer-list-card .wrap-padding{
padding: 16px 22px 58px 22px;
height: 100%;
box-sizing: border-box;
}
.customer-list-card .wrap-padding tr[role="row"]{
height: 43px;
}
.customer-list-card .user-row{
width: 34px;
height: 34px;
line-height: 34px;
}
.customer-list-card .user-row.resize-avatar{
background-size: auto 34px !important;
}
.customer-list-card .text-manager{
font-size: 14px;
font-weight: 400;
}
.customer-list-card .btn-row{
display: inline-flex;
align-items: center;
justify-content: center;
height: 24px;
line-height: 24px;
min-width: 44px;
padding: 0 10px;
box-sizing: border-box;
}
.customer-list-card .dataTables_paginate.paging_full_numbers{
bottom: 22px;
}


.user-row{
    border-radius: 5px;
    background: #eeeff6;
    height: 40px;
    width: 40px;
    display: inline-block;
    text-align: center;
    line-height: 40px;
}
.user-row.resize-avatar{    
    background-size: auto 40px !important;
}

.wrap-padding tr[role="row"]{

padding: 0px;

height: 55px;
}
.wrap-padding tr[role="row"] .text-manager{

font-size: 15px;

font-weight: 300;
}
.wrap-padding tr[role="row"] .action-edit:hover{
opacity: 0.6;
}
.wrap-padding tr[role="row"] .action-delete:hover{
opacity: 0.6;
}

.btn-group a:nth-child(1){
    margin-right: 5px;
}

.dataTables_info,
.dataTables_filter,
.dataTable.hide-head thead,
.dataTable tfoot{
display: none !important;
}
.dataTables_processing{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
text-indent: -9999em;
background: url(../img/loading.gif) no-repeat center;
background-size: 150px;
}

.dataTables_paginate.paging_full_numbers{
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 0;
    height: 30px;
    
    text-align: center;
}
.dataTables_paginate .paginate_button{
    width: 22px !important;
    display: inline-block;
    font-weight: 600;
    font-size: 18px;
    cursor: pointer;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}
.dataTables_paginate .paginate_button.current,
.dataTables_paginate .paginate_button:hover{
    color: #c8211f !important;
}
.dataTables_paginate .paginate_button.first,
.dataTables_paginate .paginate_button.previous,
.dataTables_paginate .paginate_button.last{
    display: none;
}
.dataTables_paginate .paginate_button.next{
background: url(../img/arrow-right.png);
    height: 18px;
    width: 22px;
    display: inline-block;
    text-indent: -9999999rem;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 22px !important;
}

/* forms */
.style-form {
height: 100%;
position: relative;
}
.style-form *{
box-sizing: border-box;
}
.cols,
.style-form .cols {
display: flex;
flex-wrap: wrap;
margin-right: 0px;
margin-left: 0px;
}
.style-form .cols > div {
padding-right: 5px;
padding-left: 5px;
position: relative;
}
.col-4,
.style-form .col-4 {
flex: 0 0 25%;
max-width: 25%;
}
.col-5,
.style-form .col-5 {
flex: 0 0 20%;
max-width: 20%;
}
.col-3,
.style-form .col-3 {
flex: 0 0 33.33%;
max-width: 33.33%;
}
.col-2,
.style-form .col-2 {
flex: 0 0 50%;
max-width: 50%;
}
.col-2_3,
.style-form .col-2_3 {
flex: 0 0 38%;
max-width: 38%;
}
.col-1,
.style-form .col-1 {
flex: 0 0 100%;
max-width: 100%;
}
.fix-col-1{
width: calc(100% - 48px);
width: 92%;
float: left;
}
.btn-fix-col-1{
outline: none;
float: right;
width: 34px;
padding: 0 !important;
height: 34px;
margin: 4px 0 0 0 !important;
line-height: 30px !important;
font-size: 28px !important;
text-align: center;
border-radius: 50% !important;
}
/* Boton "+" para insertar una fila de foto al costado del "-" (Galeria de fotos), mismo estilo que el "-" */
.stylelineadd{
display: inline-block;
vertical-align: middle;
margin-top: -12px;
}

.generated-product-document{
display: flex;
align-items: center;
gap: 8px;
width: 100%;
clear: both;
}
.generated-product-document .documentfile{
float: none !important;
flex: 1 1 auto;
width: auto !important;
}
.generated-product-document .product-generated-document-link{
display: block;
width: 100% !important;
}
.generated-product-document .product-generated-document-open{
width: 48px !important;
height: 32px !important;
min-width: 48px !important;
margin: 0 !important;
padding: 0 !important;
line-height: 28px !important;
font-size: 14px !important;
font-weight: 600;
border-radius: 8px !important;
border: 2px solid #c8211f !important;
color: #c8211f !important;
background: #fff !important;
text-decoration: none !important;
box-sizing: border-box;
float: none !important;
flex: 0 0 48px;
}
.generated-product-document .product-generated-document-open:hover{
color: #fff !important;
background: #c8211f !important;
}

.style-form form {
height: 100%;
position: relative;
}
.style-form input[type="checkbox"] {
padding: 0px !important;
float: left;
margin-right: 10px;
}
.style-form .right {
float: right;
}
.style-form.module_import .control-field-content{
position: relative;
}
.style-form.module_import .control-field-content .icon-right{
    position: absolute;
    left: 0;
    padding: 0;
    height: 38px;
    width: 38px;
    background: #cecece;
}
.style-form.module_import .control-field-content .icon-right i{
    margin-top: 9px;
}
.style-form.module_import .control-field-select{
    cursor: pointer;
}
.style-form.module_import .control-field-upload{    
    position: relative;
}
.style-form.module_import .control-field-upload label{
    cursor: pointer;
    z-index: 9;
}
.style-form.module_import .control-field-upload .text{
    display: block;
    color: #3c3b6a;
    line-height: 32px;
    overflow: hidden;
    height: 32px;
}
.style-form.module_import .control-field-select .icon-right,
.style-form.module_import .control-field-upload .icon-right{
    position: absolute;
    right: 0;
    width: auto;
    z-index: 2;
}
.style-form.module_import .control-field-select .icon-right{
    right: 6px;
    top: 6px;
}
.style-form.module_import .control-field-upload label,
.style-form.module_import .control-field-upload input[type="file"]{    
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;    
    position: absolute;
}
.style-form.module_import .control-field-content input{
    max-width: 100%;
    width: 100% !important;
    display: block !important;
    height: 38px !important;
    font-size: 13px !important;
    margin: 0 !important;
    letter-spacing: 0.3px !important;
    padding: 0 0 0 50px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #eeeff6 !important;
    background-color: #eeeff6 !important;
}
.style-form.module_import .control-field-content input::-webkit-input-placeholder{
    color: #848484 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
}
.style-form.module_import .control-field-content input::placeholder{
    color: #848484 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
}
.style-form.module_import .control-field-select select{
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.style-form.module_import .control-field-upload input[type="file"]{
    opacity: 0;
}
.style-form.module_import .control-field-upload,
.style-form.module_import select,
.style-form.module_import textarea,
.style-form.module_import input[type="text"],
.style-form.module_import input[type="password"],
.style-form.module_import input[type="email"] {
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 15px;
    font-weight: 300;
    color: #3c3b6a;
    text-align: left;
    border-radius: 8px;
    border-width: 1px 1px 1px 1px;
    border-style: solid;
    border-color: #fff;
    background-color: #ffffff;
    padding: 0px 15px 0px 15px;
    display: inline-block;
    height: 34px;
    width: 100%;
    line-height: 1.8;
    vertical-align: middle;
    outline: none;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.content-white .control-field-upload,
.content-white select,
.content-white textarea,
.content-white input[type="text"],
.content-white input[type="password"],
.content-white input[type="email"],
.content-white textarea {
    background: #cbcbcb;
    background-color: #cbcbcb !important;
}
.content-white .control-field-select .icon-right{
    right: 12px !important;
    top: 9px !important;
}
.content-white .control-field-upload .icon-right{
    right: 5px !important;
    top: 2px !important;
}

.bg-input-gray .control-field-upload,
.bg-input-gray select,
.bg-input-gray textarea,
.bg-input-gray input[type="text"],
.bg-input-gray input[type="password"],
.bg-input-gray input[type="email"],
.bg-input-gray textarea {
    background: #eeeff6;
    background-color: #eeeff6 !important;
}

.control-field-content input{
    height: 40px;
    margin: 0;
    padding: 0 0 0 55px;
    border: 0;
}

.style-form.module_import input[type="submit"],
.style-form.module_import button,
.style-form.module_import a.btn-type {
    font-size: 17px;font-weight: 500;text-transform: uppercase;line-height: 40px;letter-spacing: 0px;padding: 0px 25px 0px 25px;color: #ffffff;background-color: #000000;border-radius: 30px 30px 30px 30px;display: block;margin: 10px auto 0 auto;border:0;letter-spacing: 0.5px;
    border: 2px solid #000;
    cursor: pointer;
}

.btn-small{
    cursor: pointer;
    border-radius: 6px;
    color: #000;
    background: #00BCD4;
    display: inline-block;
    vertical-align: middle;
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
    text-align: center;
    border: 0px;
    padding: 1px 10px;
    margin: 10px 0px -15px 0px;  
}

.style-form.module_import .btn-type-2 {
    position: relative;
    line-height: initial !important;
    color: #ffffff !important;
    padding: 0px !important;
    background: #c8211f;
    background-color: #c8211f !important;
    width: 100%;
    height: 38px;
    font-weight: 500;
    margin: 0 !important;
    border-color: #c8211f !important;
}

.style-form.module_import .btn-type-2:hover {
    color: #c8211f !important;
    background: #fff !important;
    background-color: #fff !important;
}

.style-form.module_import .control-field-upload.sucess-val .text{
    color: green !important;
}
.style-form.module_import button {
border: 0px;
color: #000;
background: #fff;
background-color: #fff;
border: 2px solid #000;
}
.style-form.module_import input[type="submit"]:hover,
.style-form.module_import a.btn-type:hover {
color: #000;
background: #fff;
background-color: #fff;
border: 2px solid #000;
}
.style-form.module_import button:hover {
color: #ffffff;
background-color: #000;
}

.style-form.module_import input[type="password"]::-webkit-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="password"]:-ms-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="password"]::placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="text"]::-webkit-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="text"]:-ms-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="text"]::placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="email"]::-webkit-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="email"]:-ms-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import input[type="email"]::placeholder {
color: #3c3b6a;
}
.style-form.module_import textarea::-webkit-input-placeholder {
color: #3c3b6a !important;
}
.style-form.module_import textarea:-ms-input-placeholder {
color: #3c3b6a !important;
}
.style-form.module_import textarea::placeholder {
color: #3c3b6a !important;
}
.style-form.module_import textarea::-webkit-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import textarea:-ms-input-placeholder {
color: #3c3b6a;
}
.style-form.module_import textarea::placeholder {
color: #3c3b6a;
}

.style-form textarea {
padding-top: 15px !important;
height: 200px;
}
.style-form label {
color: #333333;
display: inline-block;
float: left;
width: 90%;
font-size: 13px;
font-weight: 500;
line-height: 1.5em;
margin-bottom: 10px;
}
.style-form input[type="checkbox"] {
display: inline-block;
vertical-align: top;
margin: 4px 10px 0 0;
}

.ext-form-poll {
height: 100%;
position: relative;
}
.box-shadow{
-webkit-box-shadow: 0px 0px 50px rgba(5,5,5,.08);
-moz-box-shadow: 0px 0px 50px rgba(5,5,5,.08);
box-shadow: 0px 0px 50px rgba(5,5,5,.08);
}

.lnk-recovery{
color: #a5a5a5;
font-size: 12px;
margin-top: 8px;
display: block;
}
.lnk-recovery:hover{
color: #000;
text-decoration: underline;
}

.warning,
span.wpcf7-not-valid-tip{
font-size: 11px;
line-height: initial;
color: #c8211f;
margin-top: -5px;
padding-bottom: 10px;
display: block;
background: rgb(255 255 255 / 85%);
border-radius: 5px;
padding: 1px 10px;
}

.box-login .warning, .box-login span.wpcf7-not-valid-tip{
margin-top: 0px;
background: transparent;
}

.indicator-model, .indicator-model .wrap-padding{
    height: auto;
}
.indicator-model{
    margin-bottom: 30px;
}
.indicator-model .icon-box{
    display: inline-block;
    width: 32%;
    vertical-align: middle;
    text-align: center;
}
.indicator-model .icon-description{
    width: 66%;
    display: inline-block;
    vertical-align: middle;
}
.indicator-model .icon-title{
    font-size: 16px;
    margin: 0 0 10px 0;
}
.indicator-model .icon-mount{
    font-size: 50px;
    line-height: 40px;
    margin-top: 0px;
    height: auto;
}


.form-class span.wpcf7-list-item{
width: 100%;
margin: 2px 0 2px 0;
}
.form-class .wpcf7-form-control-wrap{
margin-bottom: 20px;
}
.btn-row{
color: #fff;
height: 20px;
font-size: 14px;
line-height: 20px;
padding: 0px 18px;
background: #c8211f;
display: inline-block;
border: 2px solid #c8211f;
-webkit-border-radius: 25px;
-moz-border-radius: 25px;
border-radius: 25px;
}
.btn-row:hover{
color: #c8211f;
background: #fff;
border: 2px solid #c8211f;
}
.btn-send{
display: block;
width: 100%;
border-color: #1e205f;
background: #1e205f;
color: #fff;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 1.5px;
}

.btn-group-right{
    position: absolute;
    right: 0;
    margin-top: 20px;
    margin-right: 20px;
}

a.btn-primary{
    color: #fff;
    height: 22px;
    font-size: 15px;
    line-height: 22px;
    padding: 0px 25px;
    background: #c8211f;
    display: inline-block;
    border: 2px solid #c8211f;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
}
a.btn-primary:hover{
color: #c8211f;
background: #fff;
border: 2px solid #c8211f;
}

.btn-secondary{
    border-color: #c8211f !important;
    background: #c8211f !important;
    background-color: #c8211f !important;
}
.btn-secondary:hover{
    color: #fff !important;
    border-color: #000 !important;
    background: #000 !important;
    background-color: #000 !important;
}

.style-form.module_import select:disabled,
.style-form.module_import textarea:disabled,
.style-form.module_import input[type="text"]:disabled,
.style-form.module_import input[type="password"]:disabled,
.style-form.module_import input[type="email"]:disabled,
.style-form.module_import input[type="submit"]:disabled,
.style-form.module_import .control-field-upload.disabled, 
.style-form.module_import .control-field-upload.disabled *{
    opacity: 0.7 !important;
    cursor: no-drop !important;
    transition: all 0.3s ease-out;
}
.style-form.module_import .control-field-upload.disabled input[type="file"]{
    opacity: 0 !important;
}
.style-form.module_import .control-field-upload .warning{
    margin-top: 5px;
    padding-left: 0;
    margin-left: -7px;
    font-weight: 400;
    letter-spacing: 0.1px;
}

.form-button-right{
    margin: 0 !important;
    float: right;
    font-size: 16px !important;
    height: 34px;
    line-height: 29px !important;
    margin-top: 5px !important;
    margin-bottom: 10px !important;
}

/* loader */
@-webkit-keyframes rotate {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes rotate {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 150, 200;
        stroke-dashoffset: -35;
    }
    to {
        stroke-dasharray: 150, 200;
        stroke-dashoffset: -200;
    }
}
@keyframes dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 150, 200;
        stroke-dashoffset: -35;
    }
    to {
        stroke-dasharray: 150, 200;
        stroke-dashoffset: -200;
    }
}



.loader {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.5);
    display: none;
    overflow: hidden;
}
.loader .spinner-loader {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.preload-loader path,
.spinner-loader path {
    fill: none;
    stroke-width: 6;
}
.preload-loader .preload-loader-circlebg,
.spinner-loader .spinner-loader-circlebg {
    stroke: #b5b5b5;
}
.preload-loader #preload-loader-circle {
    -webkit-transition: stroke-dashoffset 0.2s;
    transition: stroke-dashoffset 0.2s;
    stroke: #c8211f;
    stroke-dasharray: 200;
    stroke-dashoffset: 200;
}
.spinner-loader {
    -webkit-animation: rotate 2.2s linear infinite;
    animation: rotate 2.2s linear infinite;
}
.spinner-loader #spinner-loader-circle {
    -webkit-transition: stroke-dashoffset 0.2s;
    transition: stroke-dashoffset 0.2s;
    stroke: #c8211f;
    stroke-dasharray: 200;
    stroke-dashoffset: 200;
    -webkit-animation: dash 2s ease-in-out infinite;
    animation: dash 2s ease-in-out infinite;
}
.preload-loader path, .spinner-loader path {
    fill: none;
    stroke-width: 6;
}

.product-add-to-cart .loader{
    display: block;
    width: 30px;
    height: 30px;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: 0 0;
    position: absolute;
}
.product-add-to-cart .loader .spinner-loader {
    width: 100%;
    height: 100%;
}

.preload-loader .preload-loader-circlebg, .spinner-loader .spinner-loader-circlebg {
    stroke: #b5b5b5;
}
.product-add-to-cart .loader .spinner-loader .spinner-loader-circlebg {
    stroke: #fff;
    stroke-width: 4;
}
.spinner-loader #spinner-loader-circle {
    -webkit-transition: stroke-dashoffset .2s;
    transition: stroke-dashoffset .2s;
    stroke: #000;
    stroke-dasharray: 200;
    stroke-dashoffset: 200;
    -webkit-animation: dash 2s ease-in-out infinite;
    animation: dash 2s ease-in-out infinite;
}

.label-download i{
    margin-top: -1px;
}

.act_list_more{
    position: relative;
    height: 100px;
}
.act_list_more .spinner-loader #spinner-loader-circle{
    stroke: #00b4dc;
}

/* modal popup */
.modal-style.is-visible {
    display: block;
}
.modal-style {
    display: none;
    overflow-x: hidden;
    overflow-y: auto;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
}
.owp-qv-container {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    text-align: center;
    padding: 0px;
}
.owp-qv-container:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}
.is-visible .owp-qv-content-wrap {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}
.owp-qv-content-wrap {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    max-width: 100%;
    z-index: 1045;
    opacity: 0;
    -webkit-transform: translateY(-30px);
    -moz-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    -o-transform: translateY(-30px);
    transform: translateY(-30px);
    -webkit-transition: transform .5s, opacity .3s;
    -moz-transition: transform .5s, opacity .3s;
    transition: transform .5s, opacity .3s;
}
.owp-qv-content-inner {
    position: relative;
    padding: 30px 30px;
    background: #c8211f;
    background-color: #c8211f;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    max-width: 875px;
    margin: 0 auto;
    z-index: 1000;
    -webkit-box-shadow: 3px 3px 20px 0 rgba(0,0,0,0.15);
    -moz-box-shadow: 3px 3px 20px 0 rgba(0,0,0,0.15);
    box-shadow: 3px 3px 20px 0 rgba(0,0,0,0.15);
}
.modal-style .owp-qv-content-inner .owp-qv-close-inter {
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    opacity: 1.0;
    font-size: 55px;
    width: 40px;
    height: 40px;
    margin: 8px 8px 0 0;
    font-weight: 200;
    line-height: 40px;
    text-align: center;
    z-index: 1001;
}
.modal-style .owp-qv-content-inner .owp-qv-close-inter:hover {
    color: #000;
}
.modal-style .body-modal.single-product .container-slider {
    width: auto !important;
    max-width: initial !important;
}
.container-slider {
    height: 100%;
    width: 1168px;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
}
.owp-qv-overlay {
    background-color: rgba(0,0,0,0.5);
    cursor: pointer;
}
.modal-style .owp-qv-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    background-color: rgba(0,0,0,0.5);
    cursor: pointer;
}

.customer-selector-input,
.service-selector-input{
    cursor: pointer;
}
/* Boton "editar producto" superpuesto a la derecha del campo Codigo de servicio.
   Alta especificidad + !important para ganarle a .style-form.module_import button. */
.service-code-field{
    position: relative;
    display: inline-block;
    width: 100%;
    margin: 5px 0 10px;
}
.service-code-field > input{
    display: block;
    width: 100% !important;
    margin: 0 !important;
    padding-right: 46px !important;
}
.service-code-field button.btn-edit-product,
.service-code-field button.btn-edit-vehiculo{
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    z-index: 2;
    margin: 0 !important;
    width: 32px;
    height: 28px;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: #c8211f !important;
    background-color: #c8211f !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 6px !important;
    line-height: 1 !important;
    cursor: pointer;
}
.service-code-field button.btn-edit-product:disabled,
.service-code-field button.btn-edit-vehiculo:disabled{
    background: #c9cad2 !important;
    background-color: #c9cad2 !important;
    cursor: not-allowed;
}
.service-code-field button.btn-edit-product svg,
.service-code-field button.btn-edit-vehiculo svg{
    display: block;
}
/* Boton "ojo" para previsualizar la imagen de una fila de la galeria de fotos. */
/* Mismo span que el "+" (.stylelineadd) para alinear igual con los botones - y +. */
.stylelineview{
    display: inline-block;
    vertical-align: middle;
    margin-top: -12px;
}
/* El boton conserva la caja de .btn-fix-col-1 (34x34, margen y line-height) y solo
   cambia color y forma; asi queda a la misma altura que - y +. */
.style-form.module_import button.gallery-preview-btn{
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #2f6fdb !important;
    background-color: #2f6fdb !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 8px !important;
    cursor: pointer;
}
.style-form.module_import button.gallery-preview-btn svg{
    display: block;
}
/* Lightbox de previsualizacion (se agrega al body por JS). */
.gallery-lightbox{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100000;
    background: rgba(0, 0, 0, 0.82);
    align-items: center;
    justify-content: center;
    padding: 30px;
    box-sizing: border-box;
    cursor: zoom-out;
}
.gallery-lightbox.is-open{
    display: flex;
}
.gallery-lightbox img{
    max-width: 92%;
    max-height: 92%;
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 12px 44px rgba(0, 0, 0, 0.5);
}
.gallery-lightbox-close{
    position: absolute;
    top: 16px;
    right: 26px;
    color: #ffffff;
    font-size: 40px;
    line-height: 1;
    cursor: pointer;
}
/* Campos de solo lectura del informe (datos que vienen del producto/servicio):
   se sombrean para dar a entender que no son editables. Se excluyen los
   selectores de cliente y codigo de servicio, que SI son clicables (abren su modal). */
.report-step-panel input[readonly]:not(.customer-selector-input):not(.service-selector-input),
.report-step-panel textarea[readonly]{
    background: #d7d9e2 !important;
    background-color: #d7d9e2 !important;
    color: #71717c;
    border-color: #c3c5cf;
    cursor: not-allowed;
}
.customer-selector-modal .owp-qv-content-wrap{
    width: 680px;
}
.customer-selector-modal .owp-qv-content-inner{
    width: 100%;
    padding: 28px;
    background: #eeeff2;
    background-color: #eeeff2;
}
.customer-selector-modal .container-slider{
    overflow: visible;
}
.customer-selector-modal .form-title{
    color: #272727;
    font-size: 17px;
    font-weight: 500;
    margin-bottom: 12px;
}
.customer-selector-modal .owp-qv-content-inner .owp-qv-close-inter{
    color: #272727;
}
.customer-selector-modal .owp-qv-content-inner .owp-qv-close-inter:hover{
    color: #c8211f;
}
.customer-selector-modal #customer-selector-search,
.customer-selector-modal #service-selector-search{
    margin-bottom: 15px;
    border-color: #d8d9de;
}
.customer-selector-list{
    max-height: 420px;
    overflow: auto;
    padding: 0;
    background: transparent;
}
.customer-selector-modal .style-form.module_import button.customer-selector-option{
    width: 100%;
    height: auto;
    min-height: 32px;
    margin: 0;
    padding: 6px 8px;
    color: #3c3b6a;
    font-size: 12px;
    font-weight: 300;
    line-height: 19px;
    letter-spacing: 0;
    text-align: left;
    text-transform: none;
    border: 0;
    border-bottom: 1px solid #d8d9de;
    border-radius: 0;
    background: transparent;
}
.customer-selector-modal .style-form.module_import button.customer-selector-option:hover,
.customer-selector-modal .style-form.module_import button.customer-selector-option.is-selected{
    color: #3c3b6a;
    border: 0;
    border-bottom: 1px solid #d8d9de;
    border-radius: 0;
    background: #fff;
}
.customer-selector-empty{
    display: none;
    padding: 24px 15px;
    color: #666;
    text-align: center;
}

#form-informes{
    width: 80%;
    margin-right: auto;
    margin-left: auto;
}
#form-informes .content-wrap{
    margin-right: 0;
}
.report-step-tabs{
    display: flex;
    gap: 0;
    margin: 0 0 16px;
    padding: 0 14px 0 0;
    overflow-x: auto;
    overflow-y: hidden;
}
.report-step-tabs .report-step-tab{
    position: relative;
    flex: 1 0 150px;
    min-height: 42px;
    margin: 0;
    padding: 9px 24px 9px 32px;
    color: #555;
    font-size: 13px;
    font-weight: 500;
    line-height: 18px;
    border: 1px solid #d8d9de;
    border-right: 0;
    border-radius: 0;
    background: #eeeff2;
}
.report-step-tabs .report-step-tab:nth-child(1){ z-index: 6; }
.report-step-tabs .report-step-tab:nth-child(2){ z-index: 5; }
.report-step-tabs .report-step-tab:nth-child(3){ z-index: 4; }
.report-step-tabs .report-step-tab:nth-child(4){ z-index: 3; }
.report-step-tabs .report-step-tab:nth-child(5){ z-index: 2; }
.report-step-tabs .report-step-tab:nth-child(6){ z-index: 1; }
.report-step-tabs .report-step-tab:first-child{
    padding-left: 18px;
    border-radius: 4px 0 0 4px;
}
.report-step-tabs .report-step-tab:last-child{
    border-right: 1px solid #d8d9de;
    border-radius: 0 4px 4px 0;
}
.report-step-tabs .report-step-tab:not(:last-child)::before,
.report-step-tabs .report-step-tab:not(:last-child)::after{
    content: "";
    position: absolute;
    top: 50%;
    width: 0;
    height: 0;
    border-top: 21px solid transparent;
    border-bottom: 21px solid transparent;
    transform: translateY(-50%);
}
.report-step-tabs .report-step-tab:not(:last-child)::before{
    z-index: 2;
    right: -16px;
    border-left: 16px solid #d8d9de;
}
.report-step-tabs .report-step-tab:not(:last-child)::after{
    z-index: 3;
    right: -14px;
    border-left: 15px solid #eeeff2;
}
.report-step-tabs .report-step-tab:hover{
    color: #c8211f;
    border-color: #c8211f;
}
.report-step-tabs .report-step-tab:hover::before{
    border-left-color: #c8211f;
}
.report-step-tabs .report-step-tab.is-active{
    color: #fff;
    border-color: #c8211f;
    background: #c8211f;
}
.report-step-tabs .report-step-tab.is-active::before,
.report-step-tabs .report-step-tab.is-active::after{
    border-left-color: #c8211f;
}
.report-step-panel{
    display: none;
    width: 100%;
}
.report-step-panel.is-active{
    display: flow-root;
}
#report-main-step-content .report-step-panel.is-active{
    display: flex;
    flex-wrap: wrap;
}
/* Espacio entre columnas en Datos generales, igual que el grid del certificado (22px).
   Se reduce el ancho de cada .col-2 para que el par entre en la fila con el gap. */
#report-main-step-content .report-step-panel[data-step="2"].is-active{
    column-gap: 22px;
}
#report-main-step-content .report-step-panel[data-step="2"].is-active > .col-2{
    flex: 0 0 calc(50% - 11px);
    max-width: calc(50% - 11px);
}
/* Los titulos de seccion (col-1) ocupan la fila completa para cortar bien las
   filas; el orden visual sigue el orden del DOM (izq->der, luego siguiente fila). */
#report-main-step-content .report-step-panel[data-step="2"].is-active > .col-1{
    flex: 0 0 100%;
    max-width: 100%;
}
#report-main-step-content.is-hidden{
    display: none;
}
.report-step-actions{
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 18px;
    padding: 16px 0 4px;
}
#form-informes .report-step-actions .report-step-button{
    width: auto;
    min-width: 120px;
    height: 40px;
    margin: 0;
    padding: 8px 20px;
    font-size: 13px;
    font-weight: 500;
    line-height: 20px;
    text-transform: none;
    border-radius: 4px;
}
#form-informes .report-step-actions .report-step-button-gray{
    color: #444;
    border: 1px solid #c9cbd1;
    background: #dfe1e5;
}
#form-informes .report-step-actions .report-step-button-gray:hover{
    color: #222;
    border-color: #b6b8be;
    background: #d3d5da;
}
#form-informes .report-step-actions .report-step-button-red{
    color: #fff;
    border: 1px solid #c8211f;
    background: #c8211f;
}
#form-informes .report-step-actions .report-step-button-red:hover{
    border-color: #a91816;
    background: #a91816;
}
#form-informes .report-step-actions #btn-step-prev:disabled{
    color: #999;
    border-color: #ddd;
    background: #eee;
    cursor: default;
}

.certificate-panel{
    height: auto;
    padding: 26px;
}
.certificate-required,
.certificate-test-result{
    display: flex;
    align-items: center;
    gap: 18px;
    color: #20202b;
}
.certificate-required > span,
.certificate-test-result > span{
    font-weight: 600;
}
.certificate-required label,
.certificate-test-result label,
.certificate-check-group label{
    width: auto;
    float: none;
}
#certificate-fields.is-disabled{
    opacity: .55;
}
.certificate-section{
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid #dddfe5;
}
.certificate-section h3{
    margin: 0 0 18px;
    color: #20202b;
    font-size: 18px;
    font-weight: 600;
}
.certificate-grid{
    display: grid;
    gap: 15px 22px;
}
.certificate-grid-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.certificate-grid-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.certificate-grid label{
    display: block;
    width: auto;
    float: none;
    color: #20202b;
}
.certificate-grid input[type="text"],
.certificate-section textarea{
    width: 100%;
    margin-top: 7px;
}
.certificate-section textarea{
    min-height: 105px;
    padding: 12px;
    resize: vertical;
}
.certificate-check-group{
    padding: 16px;
    border-radius: 6px;
    background: #f2f3f6;
}
.certificate-check-group h4{
    margin: 0 0 12px;
    color: #20202b;
    font-size: 14px;
}
.certificate-check-group label{
    display: block;
    margin: 9px 0;
    color: #3b3b47;
}
.certificate-extinguishers{
    display: grid;
    grid-template-columns: minmax(0, 680px);
    gap: 10px;
    margin-top: 20px;
}
.certificate-extinguishers > div{
    display: grid;
    grid-template-columns: 130px repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    background: #f2f3f6;
}
.certificate-extinguishers strong{
    font-size: 13px;
    white-space: nowrap;
}
.certificate-extinguishers label{
    display: flex;
    align-items: center;
    gap: 6px;
    width: auto;
    height: 34px;
    margin: 0 !important;
    float: none;
    white-space: nowrap;
}
.certificate-extinguishers input{
    width: 100% !important;
    min-width: 0;
    margin: 0 !important;
}
/* Dropdown custom del codigo de extintor. Reemplaza al <select> nativo (imposible
   de tematizar la lista abierta y de centrar bien la flecha). El <select> real
   queda oculto como control del formulario. */
.certificate-extinguishers .ext-dropdown{
    position: relative;
    width: 100%;
    min-width: 0;
}
.certificate-extinguishers .ext-dropdown select.certificate-ext-code{
    display: none !important;
}
/* Alta especificidad (con button.) para ganarle a .style-form.module_import button,
   que pinta todos los botones como submit negro con border-radius 30px. */
.certificate-extinguishers .ext-dropdown button.ext-dropdown-toggle{
    width: 100% !important;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: 0 !important;
    padding: 0 12px !important;
    background: #eeeff6 !important;
    background-color: #eeeff6 !important;
    border: 1px solid #e2e3ec !important;
    border-radius: 8px !important;
    color: #3c3b6a !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
    text-align: left;
    text-transform: none !important;
    letter-spacing: 0;
    cursor: pointer;
}
.certificate-extinguishers .ext-dropdown-value{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.certificate-extinguishers .ext-dropdown-caret{
    flex: 0 0 auto;
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #3c3b6a;
    transition: transform 0.15s ease;
}
.certificate-extinguishers .ext-dropdown.is-open .ext-dropdown-caret{
    transform: rotate(180deg);
}
.certificate-extinguishers .ext-dropdown-menu{
    position: absolute;
    z-index: 40;
    top: calc(100% + 4px);
    left: 0;
    min-width: 100%;
    margin: 0;
    padding: 4px;
    list-style: none;
    background: #ffffff;
    border: 1px solid #d7d9e2;
    border-radius: 8px;
    box-shadow: 0 10px 26px rgba(20, 20, 40, 0.16);
    max-height: 240px;
    overflow: auto;
    white-space: nowrap;
}
.certificate-extinguishers .ext-dropdown:not(.is-open) .ext-dropdown-menu{
    display: none;
}
.certificate-extinguishers .ext-dropdown-option{
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    color: #3b3b47;
    cursor: pointer;
}
.certificate-extinguishers .ext-dropdown-option:hover{
    background: #eef0f7;
}
.certificate-extinguishers .ext-dropdown-option.is-selected{
    background: #c8211f;
    color: #ffffff;
}
/* Combo de campos del certificado (unidad de control, voltaje, etc.): input de
   texto libre + boton de flecha que abre una lista de valores estandar. Mismo
   look que el dropdown de extintores. */
.certificate-section .cert-combo{
    position: relative;
    display: block;
}
.certificate-section .cert-combo input{
    width: 100%;
    padding-right: 36px !important;
}
.certificate-section .cert-combo button.cert-combo-toggle{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    border-radius: 0 8px 8px 0 !important;
    cursor: pointer;
}
.certificate-section .cert-combo-caret{
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #3c3b6a;
    transition: transform 0.15s ease;
}
.certificate-section .cert-combo.is-open .cert-combo-caret{
    transform: rotate(180deg);
}
.certificate-section .cert-combo-menu{
    position: absolute;
    z-index: 40;
    top: calc(100% + 4px);
    left: 0;
    min-width: 100%;
    margin: 0;
    padding: 4px;
    list-style: none;
    background: #ffffff;
    border: 1px solid #d7d9e2;
    border-radius: 8px;
    box-shadow: 0 10px 26px rgba(20, 20, 40, 0.16);
    max-height: 240px;
    overflow: auto;
    white-space: nowrap;
}
.certificate-section .cert-combo:not(.is-open) .cert-combo-menu{
    display: none;
}
.certificate-section .cert-combo-option{
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    color: #3b3b47;
    cursor: pointer;
}
.certificate-section .cert-combo-option:hover{
    background: #eef0f7;
}
.certificate-section .cert-combo-option.is-selected{
    background: #c8211f;
    color: #ffffff;
}
.certificate-test-result{
    margin-top: 14px;
}
@media (max-width: 900px){
    .certificate-grid-2,
    .certificate-grid-3,
    .certificate-extinguishers{
        grid-template-columns: 1fr;
    }
    .certificate-extinguishers > div{
        grid-template-columns: 1fr 1fr;
    }
    .certificate-extinguishers input{
        width: 100% !important;
    }
}

.content-float-form {
    position: relative;
}
.form-title{
    color: #fff;
    font-size: 24px;
    font-weight: 200;
    display: block;
    margin: 0 auto 15px auto;
    line-height: initial;
}


.style-table-2 thead{
background: #c8211f;
color: #fff;
}
.style-table-2 thead tr th{
font-size: 12px;
font-weight: 300;
padding: 18px 2px;
text-align: center;
letter-spacing: -0.3px;
}
.style-table-2 thead tr th.sorting,
.style-table-2 thead tr th.sorting_asc{
cursor: pointer;
}
.style-table-2 thead tr th.sorting:hover,
.style-table-2 thead tr th.sorting_asc:hover{
background-color: #c8211f; 
cursor: pointer;
}
.style-table-2 tbody tr td{
font-size: 12px;
font-weight: 300;
padding: 10px 2px;
text-align: center;
}
.style-table-2 tr[role="row"] .text-manager{    
color: #3c3b6a;
font-size: 12px;
font-weight: 400;
display: block;
width: 100%;
height: 15px;
margin: 0 auto;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
position: relative;
}
.style-table-2 tr[role="row"] a .text-manager:hover{
color: #000;
}
.sorting_asc{
background: #c8211f;    
}
.product-list-header{
position: relative;
display: flex;
align-items: center;
justify-content: center;
margin: 0 0 18px 0;
}
.product-list-header .title-col{
margin: 18px 0;
}
.product-actions{
position: absolute;
right: 20px;
top: 50%;
transform: translateY(-50%);
display: flex;
align-items: center;
gap: 8px;
z-index: 6;
}
.product-action{
position: relative;
}
.product-action-button{
height: 32px;
border: 0;
border-radius: 16px;
background: #c8211f;
color: #fff;
font-size: 13px;
font-weight: 600;
line-height: 32px;
padding: 0 14px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
cursor: pointer;
box-shadow: 0 10px 24px rgba(200,33,31,.16);
}
.product-action-button .ico-inline{
filter: brightness(0) invert(1);
}
.product-action-button:hover{
opacity: .9;
}
.product-action-popover{
display: none;
position: absolute;
right: 0;
top: 42px;
background: #fff;
border-radius: 10px;
box-shadow: 0 18px 42px rgba(0,0,0,.18);
z-index: 10;
}
.product-action.open .product-action-popover{
display: block;
}
.product-export-popover{
width: 150px;
overflow: hidden;
}
.product-popover-option{
display: block;
width: 100%;
border: 0;
background: #f3f4fa;
color: #25245f;
font-size: 13px;
font-weight: 500;
text-align: left;
padding: 11px 16px;
cursor: pointer;
}
.product-popover-option:hover{
background: #c8211f;
color: #fff;
}
.product-filter-popover{
width: 220px;
min-height: 462px;
/* height:auto vence al .style-form{height:100%} que le daba altura fija: con altura
   fija y overflow visible, el contenido (campos + botones) se desbordaba y los
   botones Limpiar/Filtrar quedaban fuera de la caja. Con auto, la caja crece y los
   contiene. */
height: auto !important;
padding: 12px 12px 22px 12px;
text-align: left;
box-sizing: border-box;
background: #fff !important;
background-color: #fff !important;
border-radius: 10px;
overflow: visible;
}
.product-filter-title{
display: block;
font-size: 13px;
font-weight: 700;
line-height: 18px;
color: #25245f;
margin-bottom: 10px;
}
.product-filter-fields{
display: block !important;
height: auto !important;
min-height: 0 !important;
margin: 0 !important;
padding: 0 !important;
border-radius: 0 !important;
box-shadow: none !important;
background: transparent !important;
background-color: transparent !important;
overflow: visible !important;
}
.product-filter-fields .cols{
display: grid !important;
grid-template-columns: 1fr;
gap: 7px;
background: transparent !important;
background-color: transparent !important;
}
.product-filter-fields .col-5,
.product-filter-fields .col-4{
display: block !important;
width: 100% !important;
max-width: 100% !important;
flex: none !important;
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
background-color: transparent !important;
}
.product-filter-fields input,
.product-filter-fields select{
width: 100% !important;
max-width: 100% !important;
height: 28px !important;
line-height: 28px !important;
font-size: 11px !important;
border-radius: 6px !important;
background-color: #eeeff6 !important;
padding: 0 12px !important;
box-sizing: border-box !important;
margin: 0 !important;
}
.product-filter-fields .control-field-select{
height: 28px;
}
.product-filter-fields .control-field-select label.icon-right{
height: 28px;
line-height: 28px;
width: 26px;
padding: 0 !important;
display: flex !important;
align-items: center;
justify-content: center;
}
.product-filter-fields .control-field-select label.icon-right .ico-calendar{
width: 14px !important;
height: 14px !important;
background-size: 14px !important;
}
.product-filter-actions{
display: grid;
grid-template-columns: 1fr 1fr;
gap: 8px;
margin-top: 10px;
background: transparent;
}
.product-filter-clear,
.product-filter-apply{
height: 28px;
border: 0 !important;
border-radius: 15px;
font-size: 11px !important;
font-weight: 700;
line-height: 28px !important;
text-align: center !important;
padding: 0;
cursor: pointer;
box-sizing: border-box;
display: inline-flex !important;
align-items: center;
justify-content: center;
width: 100%;
margin: 0 !important;
text-transform: none !important;
letter-spacing: 0 !important;
}
.product-filter-clear{
background: #eeeff6 !important;
background-color: #eeeff6 !important;
color: #25245f !important;
}
.product-filter-apply{
background: #c8211f !important;
background-color: #c8211f !important;
color: #fff !important;
}
.page-list-informes .informes-list-header{
margin-bottom: 18px;
}
.informes-filter-popover{
width: 240px;
min-height: 244px;
padding-bottom: 14px;
}
.informes-filter-popover .product-filter-fields .cols{
gap: 8px;
}
.informes-filter-popover .product-filter-actions{
margin-top: 12px;
}
.notification-filter-popover{
width: 220px;
min-height: 462px;
}
#list-informes.content-wrap{
height: auto !important;
min-height: 448px;
margin-bottom: 30px;
overflow: auto;
}
#grvInformes_wrapper{
position: relative;
padding-bottom: 54px;
}
#list-informes #grvInformes_paginate{
bottom: 12px;
}
#grvProduct thead tr th:nth-child(1){
padding: 18px 1px;
width: 100px !important;
}
#grvProduct thead tr th:nth-child(2),
#grvProduct thead tr th:nth-child(3),
#grvProduct thead tr th:nth-child(4),
#grvProduct thead tr th:nth-child(5),
#grvProduct thead tr th:nth-child(6) {
width: 185px !important;
}
#grvProduct thead tr th:nth-child(7) {
width: 190px !important;
}
#grvProduct thead tr th:nth-child(8),
#grvProduct thead tr th:nth-child(9),
#grvProduct thead tr th:nth-child(10) {
width: 205px !important;
}
#grvProduct thead tr th:nth-child(11),
#grvProduct thead tr th:nth-child(12),
#grvProduct thead tr th:nth-child(13),
#grvProduct thead tr th:nth-child(14),
#grvProduct thead tr th:nth-child(15) {
width: 205px !important;
}
#grvProduct thead tr th:nth-child(16) {
width: 120px !important;
}
#grvProduct {
width: 2100px !important;
}
#list-product #grvProduct_paginate{
bottom: -15px;
}
#list-product.content-wrap{
overflow: auto;
}
#list-customer,
#list-product{
height: auto !important;
margin-bottom: 30px;
min-height: 448px;
}

/** customization */

#modal-add-user .body-modal.single-product,
#modal-edit-user .body-modal.single-product {
    width: 300px !important;
}

#modal-add-listing .body-modal.single-product,
#modal-edit-listing .body-modal.single-product {
    width: 300px !important;
}

#modal-add-listing.has-kit-fields .body-modal.single-product,
#modal-edit-listing.has-kit-fields .body-modal.single-product {
    width: 370px !important;
    max-width: 100% !important;
}

.listing-modal.has-kit-fields .owp-qv-content-inner {
    max-height: 92vh;
    overflow-y: auto;
}

.listing-modal .kit-info-fields {
    display: none;
    margin-top: 18px;
}

.listing-modal .kit-info-title {
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    margin: 0 5px 16px;
    text-align: center;
}

.listing-modal .kit-info-grid {
    display: block;
    max-height: 340px;
    overflow-y: auto;
    padding: 12px;
    border: 0;
}

.listing-modal .kit-info-grid > .col-2 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0;
    padding-left: 0;
}

.listing-modal .kit-info-grid input[type="text"] {
    margin-top: 0;
    margin-bottom: 10px;
}

.listing-modal .kit-info-grid > .col-2:last-child input[type="text"] {
    margin-bottom: 0;
}

.listing-modal.has-kit-fields input[type="submit"] {
    margin-top: 12px;
}

#modal-add-product .body-modal.single-product,
#modal-edit-product .body-modal.single-product,
#modal-view-product .body-modal.single-product {
    width: 660px !important;
}
#modal-add-product .product-add-fields{
    padding-top: 4px;
}
#modal-add-product .product-form-section-title{
    color: #30305f;
    font-size: 16px;
    line-height: 20px;
    margin: -2px 4px 4px;
}
#modal-add-product .product-add-fields input,
#modal-add-product .product-add-fields select{
    font-family: inherit;
    font-size: 15px;
}
#modal-add-product .product-form-section-title-spaced{
    margin-top: 8px;
}
#modal-view-product-certificate .body-modal.single-product {
    width: 880px !important;
}
#modal_crop_photo .body-modal.single-product {
    width: 580px !important;
    max-width: 100% !important;
}

#grvAdmin tr td:nth-child(1){width: 68px;}
#grvAdmin tr td:nth-child(2){width: 70%;}
#grvAdmin tr td:nth-child(3){width: 80px;}

#grvUser tr td:nth-child(1){width: 68px;}
#grvUser tr td:nth-child(2){width: 70%;}
#grvUser tr td:nth-child(3){width: 80px;}

#grvTech tr td:nth-child(1){width: 68px;}
#grvTech tr td:nth-child(2){width: 70%;}
#grvTech tr td:nth-child(3){width: 80px;}

#grvCustomer tr td:nth-child(1){width: 68px;}
#grvCustomer tr td:nth-child(2){width: 64%;}
#grvCustomer tr td:nth-child(3){width: 80px;}

#grvKit tr td:nth-child(1){width: 81%;}
#grvKit tr td:nth-child(2){width: 80px;}

#grvDesignation tr td:nth-child(1){width: 81%;}
#grvDesignation tr td:nth-child(2){width: 80px;}

#grvTypeService tr td:nth-child(1){width: 81%;}
#grvTypeService tr td:nth-child(2){width: 80px;}

#grvProxService tr td:nth-child(1){width: 81%;}
#grvProxService tr td:nth-child(2){width: 80px;}

#grvInformes tr th:nth-child(1){width: 50px;}
#grvInformes tr td:nth-child(1){width: 50px;}

#grvInformes tr th:nth-child(2){width: 200px;}
#grvInformes tr td:nth-child(2){width: 200px;}

#grvInformes tr th:nth-child(3){width: 150px;}
#grvInformes tr td:nth-child(3){width: 150px;}

#grvInformes tr th:nth-child(4){width: 150px;}
#grvInformes tr td:nth-child(4){width: 150px;}

#grvInformes tr th:nth-child(5){width: 150px;}
#grvInformes tr td:nth-child(5){width: 150px;}


.alert{
display: block;
    width: 100%;
    position: relative;
    text-align: center;
    line-height: 32px;
    font-size: 14px;
    line-height: 26px;
}
.space-alert{
    display: block;
    width: 100%;
}
.alert-success{
color: #fff;
margin-top: 12px;
    letter-spacing: 0.5px;
    background: #4bde00;
    border: 3px solid #07bb00;
}
.alert-danger{
    color: #fff;  
    margin-top: 12px;  
    letter-spacing: 0.5px;
    background: #c8211f;
    border: 3px solid #c8211f;
}

.dropdown-notice{
    right: 0;
    cursor: auto;
    margin-top: 14px;
    margin-right: 8px;
    position: absolute;
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    min-width: 600px;
    overflow: auto;
    display: none;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}
.dropdown-notice.active{display: block;cursor: auto;-webkit-box-shadow: 3px 3px 20px 0 rgba(0,0,0,0.15);-moz-box-shadow: 3px 3px 20px 0 rgba(0,0,0,0.15);}
.dropdown-notice ul{

margin: 0;

padding: 0;

list-style: none;

width: 100%;

display: block;

position: relative;

max-height: 300px;
}
.dropdown-notice ul li{
    
position: relative;
    
display: block;
    
font-size: 15px;
    
line-height: 22px;
    
color: #363565;
}
.dropdown-notice ul li.header{
cursor: auto;
padding: 0 0 5px 0px;
}
.dropdown-notice .col-head,
.dropdown-notice .col-head *{
cursor: auto;
}
.dropdown-notice ul li.header b{

display: block;

padding: 0px 25px 5px 10px;

letter-spacing: 0.5px;
}
.dropdown-notice ul li:nth-child(2){

border-top: 1px solid #363565;
}
.dropdown-notice ul li.item{

border-top: 1px solid #d7d9e0;
}
.dropdown-notice ul li.item .option{
font-size: 13px;
color: #363565;
display: block;
cursor: pointer;
padding: 5px 30px 5px 10px;
}
.dropdown-notice ul li.item .option:hover{
background: #eeeff6;
}
.dropdown-notice ul li.item .option .status{
    position: absolute;
    right: 0;
    top: 0;
    width: 10px;
    height: 10px;
    margin-right: 0px;
    margin-top: 4px;
    border-radius: 50%;
}
.text-normal{
    font-size: 15px !important;
    font-weight: 400 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}



.option.custom-menu{
    font-size: 13px;
    color: #363565;
    display: block;
    cursor: pointer;
    overflow: hidden;
    padding: 5px 10px 5px 10px !important;
}
.option.custom-menu .colspan {
    float: left;
    overflow: hidden;
    height: 22px;
    position: relative;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: pre;
}
.option.custom-menu .col1{
    width: 48%;
    text-align: left;
}
.option.custom-menu .col2{
    width: 9%;
    text-align: right;
}
.option.custom-menu .col3{
    width: 37%;
    text-align: left;
    padding-left: 10px;
}
.option.custom-menu .col4{
    width: 4%;
}

.al-red{
background-color: #c8211f;
background: #c8211f;
}
.al-orange{
background-color: #ff5a26;
background: #ff5a26;
}
.al-yellow{
background-color: #ffc107;
background: #ffc107;
}


.inline-social{

position: relative;

text-align: left;
}
.inline-social .link{
    float: left;
    margin: 5px 20px 5px 20px;
}
.inline-social .link img{

width: 50px;

display: inline-block;

vertical-align: middle;
}
.inline-social .link span{

display: inline-block;

vertical-align: middle;

margin-left: 5px;

color: #363565;

font-size: 15px;

font-weight: 600;
}


.scroller-active{

}
.mt-10{
margin-top: 10px;
}
.mt-20{
margin-top: 20px;
}
.mb-10{
margin-top: 10px;
}
.ml-20{
margin-left: 20px;
}
.m-0{
margin: 0 !important;
}
.link-btn-plain{
color: #363565;
    display: block;
    border: 2px solid #bab9d8;
    overflow: hidden;
    padding: 6px 10px 5px 10px;
    background: #eeeff6;
    border-radius: 5px;
}
.link-btn-plain:hover{
    border: 2px solid #363565;
}
.zone-documents:after{
    content: ' ';
    clear: both;
    display: block;
}
/* Fila de certificado que ademas del "-" lleva el "+" para agregar otra: el campo
   cede el ancho de los dos botones para que ninguno se envuelva. */
.zone-documents .row.has-two-actions > .documentfile.fix-col-1{
    width: calc(100% - 80px);
}
.page-replacement-maintenance .content-white{
width: min(860px, calc(100vw - 260px));
max-width: 860px;
margin-left: auto;
margin-right: auto;
overflow: visible;
}
.page-replacement-maintenance .wrapper-body{
display: flex;
justify-content: center;
}
.page-replacement-maintenance .wrap-res{
width: min(900px, 100%);
max-width: 900px;
}
.page-replacement-maintenance .wrap-res > .col-1{
padding-right: 0;
}
.page-replacement-maintenance .text-normal,
.page-replacement-maintenance #zone-documents{
display: block;
width: 100%;
max-width: 760px;
margin-left: auto;
margin-right: auto;
}
#zone-documents .replacement-document-row{
display: grid;
grid-template-columns: minmax(0, 358px) 390px;
align-items: center;
gap: 12px;
width: 100%;
box-sizing: border-box;
margin-bottom: 12px;
justify-content: center;
}
#zone-documents .replacement-document-title,
#zone-documents .replacement-document-title-input{
width: 100% !important;
height: 34px !important;
min-height: 34px !important;
border: 0 !important;
border-radius: 6px !important;
background: #eeeff6 !important;
background-color: #eeeff6 !important;
font-size: 15px;
font-weight: 500;
line-height: 34px;
color: #25245f;
text-align: left !important;
padding: 0 14px !important;
box-sizing: border-box;
margin: 0 !important;
}
#zone-documents .replacement-document-title{
display: block;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
#zone-documents .replacement-document-upload{
width: 336px;
flex: 0 0 336px;
}
#zone-documents .replacement-document-actions{
display: flex;
align-items: center;
justify-content: flex-end;
gap: 10px;
justify-self: end;
width: 390px;
height: 34px;
}
#zone-documents .replacement-document-upload .control-field-upload{
height: 34px;
border-radius: 6px;
background: #eeeff6 !important;
background-color: #eeeff6 !important;
}
#zone-documents .replacement-document-upload .control-field-upload .text{
height: 34px;
line-height: 34px;
font-size: 13px;
font-weight: 500;
text-align: left;
color: #008000 !important;
padding: 0 34px 0 14px;
box-sizing: border-box;
}
#zone-documents .replacement-document-upload .control-field-upload .icon-right{
right: 10px;
top: 5px;
filter: none;
}
#zone-documents .replacement-document-actions .btn-fix-col-1{
width: 34px !important;
height: 34px !important;
min-width: 34px !important;
min-height: 34px !important;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0 !important;
margin: 0 !important;
line-height: 1 !important;
font-size: 24px !important;
box-sizing: border-box;
}
.url-link{
width: 40px !important;
    height: 34px;
    color: #c8211f;
    border: 2px solid #c8211f;
    padding: 0px 2px;
    margin-top: 5px;
    border-radius: 7px;
    font-size: 15px;
    line-height: 30px;
    margin-left: 5px;
    text-align: center;
    float: right;
}
#content-documents{
    max-height: 315px;
    overflow: auto;
}


.product-doc-empty{
    width: 100%;
    padding: 18px 20px;
    color: #363565;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
}

.item-d{
text-align: center;
    margin: 4px 4px 15px 4px;
}
#content-documents .item-d{
    display: inline-block;
    width: 150px;
    vertical-align: top;
}
#content-documents .item-d .name{
    overflow-wrap: anywhere;
    word-break: break-word;
}

.item-doc{
    overflow: hidden;
    position: relative;
    display: inline-block;
    float: initial;
    text-align: center;
    max-width: 123px;
    width: 123px;
    height: 133px;
}
.bor-light{
    border: 1px solid #b7b7b7;
}
.item-doc .file{
    height: 130px;
    width: 120px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 99%;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
}
.item-d .name{
    color: #363565;
    font-weight: 400;
    font-size: 12px;
    display: block;
    max-width: 123px;
}
.item-d:hover .name{
    text-decoration: underline;
}

.item-doc .text{
    opacity: 0;
    color: #fff;
    width: 100%;
    z-index: 10;
    font-weight: 300 !important;
    letter-spacing: 0.5px;
    font-size: 15px;
    text-align: center;
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    cursor: pointer;
    transform: translate(-50%, -50%);
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.item-doc:hover .text{
    opacity: 1;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.item-doc .overlay{
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
    background: transparent;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.item-doc:hover .overlay{
    background: rgb(0 0 0 / 61%);
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
}
.item-doc embed{
    margin-top: -57px;
    margin-right: -23px;
    margin-left: -6px;
}
/* Miniaturas de imagen. Los margenes negativos de "embed" existian para tapar
   la barra de herramientas del visor de PDF del navegador; una <img> no la
   tiene, asi que se encuadra con object-fit y sin margenes. */
.item-doc img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.slot1-left{
    width: calc(46%);
    max-width: 100%;
    position: relative;
    display: inline-block;
    vertical-align: top;
    overflow: hidden;
    background: #fff;
    margin-right: 4%;
    border-radius: 20px;
    margin-top: 15px;
}
.slot1-left iframe{
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
    padding: 20px;
    border-radius: 20px;
    overflow: hidden;
}


table.dataTable thead .sorting {
    background-image: url(../img/sort_both.png);
}
table.dataTable thead .sorting_desc {
    background-image: url(../img/sort_desc.png);
}
table.dataTable thead .sorting_asc {
    background-image: url(../img/sort_asc.png);
}

table.dataTable thead .sorting, table.dataTable thead .sorting_asc, table.dataTable thead .sorting_desc, table.dataTable thead .sorting_asc_disabled, table.dataTable thead .sorting_desc_disabled {
    cursor: pointer;
    *cursor: hand;
    background-repeat: no-repeat;
    background-position: center right;
}

.re-builds{
    position: relative;
}
.re-builds .item-d,
.re-builds .item-doc,
.re-builds .item-doc embed,
.re-builds .item-doc img{
    width: 100%;
    max-width: 100%;
    height: 455px;
}
.re-builds .item-d{
    margin-bottom: 55px;
}
.re-builds .item-doc embed{
    margin-left: -24px;
    margin-top: 0;
}
.re-builds .item-doc img{
    margin: 0;
}
.re-builds .item-d .name{
    text-align: center;
    margin: 0 auto;
    font-size: 15px;
    width: 100%;
    max-width: 100%;
}


.coline-1{
display: inline-block;
vertical-align: middle;
width: 32px;
}
.coline-2{
display: inline-block;
vertical-align: middle;
width: 380px;
max-width: 100%;
}
.stylelinedel{
display: inline-block;
vertical-align: middle;
margin-top: -12px;      
}

.left-button-right{
width: 34px !important;
display: inline-block !important;
float: initial !important;
margin-top: -6px !important;
margin-left: 10px !important;
}
.btn-inline-opt a{
color: #000;
margin-left: 10px;
font-weight: 500;
}

.center-buttons{
    text-align: center;
    width: 600px;
    max-width: 100%;
    margin: 0 auto;
    display: block;
}

.btn-link:hover{
    color: blue;
    text-decoration: underline;
}

.size-9 {
    height: 16px;
    width: 16px;
    background-position: center !important;
    background-size: 100% !important;
}


.cropper-zone{
    width: 100%;
    height: 400px;
}

@media (max-width: 768px){
    .page-replacement-list .wrapper-body{
        padding-right: 12px;
    }
    .replacement-client-card{
        max-width: 100%;
        padding: 14px 16px 16px 16px;
    }
    .replacement-client-row{
        flex-direction: column;
        gap: 10px;
        padding: 13px 0;
    }
    .replacement-download-button{
        height: 32px;
        min-width: 104px;
        font-size: 12px;
        align-self: flex-start;
    }
    .page-contact-message .wrapper-body{
        grid-template-columns: 1fr;
        gap: 18px;
        padding-right: 12px;
    }
    .contact-card,
    .contact-panels{
        max-width: 100%;
        margin-bottom: 18px;
    }
    .contact-card{
        padding: 22px 18px 24px 18px;
    }
    .contact-actions{
        gap: 12px;
    }
    .contact-action{
        height: 52px;
        font-size: 14px;
        font-weight: 500;
        padding: 0 14px;
    }
    .contact-action img{
        width: 22px;
        height: 22px;
    }
    .contact-actions-split{
        gap: 10px;
    }
    .contact-action-small{
        height: 52px;
        font-size: 14px;
    }
    .contact-panel summary{
        min-height: 48px;
        padding: 0 18px;
        font-size: 16px;
    }
    .contact-panel summary::after{
        font-size: 20px;
    }
    .contact-panel-content{
        padding: 20px 18px 26px 18px;
    }
    .contact-panel-content h3{
        font-size: 18px;
        margin-bottom: 18px;
    }
    .contact-proposal-links{
        font-size: 14px;
    }
    .contact-proposal-text{
        font-size: 14px;
    }
    .page-setting-maintenance .wrapper-body{
        padding-right: 12px;
    }
    .page-setting-maintenance .setting-card{
        width: 100%;
        padding: 18px;
    }
    .page-setting-maintenance .setting-photo-row{
        align-items: flex-start;
        gap: 14px;
    }
    .page-setting-maintenance .setting-photo-preview{
        width: 86px;
        height: 86px;
    }
    .page-setting-maintenance .setting-photo-actions{
        flex-wrap: nowrap;
    }
    .page-setting-maintenance .setting-photo-upload,
    .page-setting-maintenance .setting-photo-clear{
        min-width: 120px;
        height: 34px;
        font-size: 14px;
    }
    .page-setting-maintenance .setting-photo-upload{
        flex-basis: 170px;
    }
    .page-setting-maintenance .setting-photo-clear{
        flex-basis: 120px;
    }
    .page-setting-maintenance .notification-copy-row{
        grid-template-columns: minmax(0, 1fr) 145px;
        gap: 7px;
    }
    .page-setting-maintenance .notification-copy-actions{
        width: 145px;
        height: 34px;
        gap: 7px;
    }
    .page-setting-maintenance .style-form.module_import .notification-copy-type{
        width: 104px !important;
    }
    .page-setting-maintenance .style-form.module_import .notification-copy-action{
        flex-basis: 34px;
        width: 34px !important;
        min-width: 34px;
        height: 34px !important;
        line-height: 30px !important;
    }
}


/* ==========================================================================
   Bloqueo de pantalla durante procesos largos (guardar informe + generar PDFs)
   Reutiliza los keyframes 'rotate' y 'dash' ya definidos arriba.
   z-index 99999: por encima de los modales (1045) y por debajo del toast
   (9999999), para que el mensaje de exito/error siga siendo visible.
   ========================================================================== */
.page-blocker {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    background-color: rgba(28, 32, 43, 0.55);
    cursor: wait;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.page-blocker.is-visible {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.page-blocker .page-blocker-card {
    background: #fff;
    border-radius: 8px;
    padding: 32px 40px;
    text-align: center;
    min-width: 260px;
    max-width: 90%;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.28);
}
.page-blocker .page-blocker-spinner {
    width: 54px;
    height: 54px;
    margin: 0 auto 18px auto;
    display: block;
    -webkit-animation: rotate 2.2s linear infinite;
    animation: rotate 2.2s linear infinite;
}
.page-blocker .page-blocker-spinner .page-blocker-track {
    fill: none;
    stroke: #e4e4e4;
    stroke-width: 6;
}
.page-blocker .page-blocker-bar {
    fill: none;
    stroke: #c8211f;
    stroke-width: 6;
    stroke-linecap: round;
    stroke-dasharray: 200;
    stroke-dashoffset: 200;
    -webkit-animation: dash 2s ease-in-out infinite;
    animation: dash 2s ease-in-out infinite;
}
.page-blocker .page-blocker-title {
    font-size: 15px;
    font-weight: 700;
    color: #2b2b2b;
    margin: 0;
    letter-spacing: 0.2px;
}
.page-blocker .page-blocker-note {
    font-size: 13px;
    font-weight: 400;
    color: #777;
    margin: 6px 0 0 0;
}

/* ===== Selector de vehiculo compartido (productos, informes, notificaciones) ===== */
.servicio-veh-ro { background: #f3f4f6 !important; color: #4b5563 !important; cursor: default; }
.ui-autocomplete.ui-menu {
    z-index: 100000 !important; max-height: 260px; overflow-y: auto; overflow-x: hidden;
    background: #fff; border: 1px solid #d0d5dd; border-radius: 8px;
    box-shadow: 0 12px 30px rgba(0,0,0,.15); padding: 4px; list-style: none;
}
.ui-autocomplete .ui-menu-item-wrapper { display: block; padding: 8px 10px; font-size: 13px; color: #374151; border-radius: 6px; cursor: pointer; }
.ui-autocomplete .ui-menu-item-wrapper.ui-state-active { background: #2563eb; color: #fff; border: none; margin: 0; }

/* ===== Estado Activo/Inactivo del modal de vehiculo (global: productos + informes) ===== */
.equipment-estado { display: flex; align-items: center; gap: 22px; padding: 12px 4px 4px; }
.equipment-estado-label { font-size: 13px; color: #6b7280; font-weight: 600; line-height: 1; }
.equipment-radio { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; color: #374151; cursor: pointer; line-height: 1; margin: 0; }
.equipment-radio input[type="radio"] { margin: 0; width: 16px; height: 16px; accent-color: #2563eb; flex: 0 0 auto; }

/* ===== Llaves de API (api-key/maintenance) ===== */
.page-list-apikey .apikey-intro { font-size: 13px; color: #6b7280; line-height: 1.6; margin: 0 0 18px; max-width: 780px; }
.page-list-apikey table { border-collapse: collapse; }
.page-list-apikey th { text-align: left; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: #6b7280; padding: 10px 12px; border-bottom: 1px solid #e5e7eb; }
.page-list-apikey td { font-size: 13px; color: #374151; padding: 12px; border-bottom: 1px solid #f1f2f4; vertical-align: middle; }
.page-list-apikey code { font-family: Menlo, Consolas, monospace; font-size: 12px; background: #f3f4f6; padding: 2px 6px; border-radius: 4px; }
.apikey-status { display: inline-block; font-size: 12px; font-weight: 600; padding: 3px 10px; border-radius: 999px; line-height: 1.6; }
.apikey-status-active { background: #dcfce7; color: #166534; }
.apikey-status-revoked { background: #f3f4f6; color: #6b7280; }
.apikey-status-expired { background: #fef3c7; color: #92400e; }
.apikey-form-help { display: block; font-size: 12px; color: #6b7280; line-height: 1.6; padding: 4px 0 8px; }
.apikey-reveal-warning { font-size: 13px; color: #92400e; background: #fef3c7; border-radius: 6px; padding: 12px 14px; line-height: 1.6; margin: 0 0 6px; }
.apikey-plain-value { width: 100%; font-family: Menlo, Consolas, monospace; font-size: 12px; color: #111827; background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 6px; padding: 10px 12px; resize: none; word-break: break-all; }
