/*=====================================================
                    Tipografia
======================================================*/
@font-face{
    font-family: "RobotoCondensedLight";
    src: url("../webfonts/robotocondensed-light.ttf"), 
    url("../webfonts/robotocondensed-light.eot"), 
    url("../webfonts/robotocondensed-light.woff"), 
    url("../webfonts/robotocondensed-light.woff2"), 
    url("../webfonts/robotocondensed-light.svg");
}

.sale-requires-invoice{background-color:#fff7d6 !important;border-left:4px solid #f59e0b}
.sale-requires-invoice td{vertical-align:middle}
@font-face{
    font-family: "RobotoRegular";
    src: url("../webfonts/roboto-regular.ttf"), 
    url("../webfonts/roboto-regular.eot"), 
    url("../webfonts/roboto-regular.woff"), 
    url("../webfonts/roboto-regular.woff2"), 
    url("../webfonts/roboto-regular.svg");
}
@font-face{
    font-family: "OswaldLight";
    src: url("../webfonts/oswald-light.ttf"), 
    url("../webfonts/oswald-light.eot"), 
    url("../webfonts/oswald-light.woff"), 
    url("../webfonts/oswald-light.woff2"), 
    url("../webfonts/oswald-light.svg");
}

body,html{
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 13px;
    font-family: "RobotoRegular";
    position: relative;
    background-color: #fff;
}

.main-container{
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #000428;
    background: -webkit-linear-gradient(to right, #004e92, #000428);
    background: linear-gradient(to right, #004e92, #000428);
}

.main-container > .login,
.main-container > .hero-body{
    height: auto;
    width: 100%;
    max-width: 400px;
    min-width: 300px;
}

.is-photo{
    max-width: 300px;
    height: auto;
    margin: 0 auto;
}

.text-condensedLight{ font-family: "RobotoCondensedLight"; }
.tittles{ font-family: "OswaldLight"; }
.full-width{
    margin: 0;
    padding: 0;
    width: 100%;
    box-sizing: border-box;
}
.list-unstyle{
    margin: 0;
    padding: 0;
    list-style: none;
    box-sizing: border-box;
}
.img-responsive{
    width: 100%;
    height: auto;
}
.divider-menu-h{
    height: 0 !important;
    border-top: 1px solid #E1E1E1;
    width: 92% !important;
    margin: 0 auto !important;
}

.page-container{
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
    display: flex;
    justify-content: space-between;
}

/*  Scrolls */
.scroll::-webkit-scrollbar{
    width: 8px;
}
.scroll::-webkit-scrollbar-thumb{
    background: rgba(102,107,122,1);
}
.scroll::-webkit-scrollbar-thumb:active,
.scroll::-webkit-scrollbar-thumb:hover{
    background: rgba(102,107,122,1);
} 
.scroll::-webkit-scrollbar-track{
    background: rgba(29, 30, 34, 1);
}
.scroll::-webkit-scrollbar-track:hover, 
.scroll::-webkit-scrollbar-track:active{
    background: rgba(29, 30, 34, 1);
}
/*=============Estilos barra superior*/
.navBar{
    background-color: #3F51B5;
    height: 65px;
    color: #fff;
    position: relative;
    margin-bottom: 30px;
}
.navBar.navBar-admin-general{
    background-color: #111111;
}
.navBar.navBar-admin-sucursal{
    background-color: #e67e22;
}
.navBar-options{
    line-height: 45px;
    height: 65px;
    padding: 0;
    transition: all .3s ease-in-out;
    display: flex;
    justify-content: space-between;
}
.navBar-options .fa-exchange-alt,
.navBar-options-list{
    line-height: 45px;
    height: 45px;
    margin: 0;
    padding: 0;
}
.navBar-options .fa-exchange-alt{
    width: 40px;
    left: 0;
    font-size: 23px;
    cursor: pointer;
    user-select: none;
    text-align: center;
    outline: none;
    margin-left: 9px;
}
.navBar-options-list{
    right: 9px;
}
.navBar-options-list ul{
    height: 65px;
}
.navBar-user-area{
    display:flex !important;
    flex-direction:column;
    align-items:flex-end;
    justify-content:flex-start;
    height:65px !important;
    min-width:145px;
    padding:0 7px !important;
    line-height:1 !important;
}
.navBar-user-main{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:3px;
    height:45px;
}
.navBar-user-role{
    line-height:45px;
}
.navBar-user-photo{
    display:block;
    width:39px;
    height:39px;
}
.navBar-user-branch{
    display:block;
    max-width:145px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:rgba(255,255,255,.95);
    font-size:10px;
    line-height:17px;
    text-align:right;
}
.navBar-branch-switch{
    position:absolute;
    right:7px;
    top:45px;
    z-index:1100;
    margin:0;
    line-height:1;
}
.navBar-branch-switch .select select{
    min-width:150px;
    max-width:190px;
    height:22px;
    padding-top:0;
    padding-bottom:0;
    font-size:10px;
}
.navBar-options-list .noLink{
    cursor: inherit;
}
.navBar-options-list ul{
    height: 45px;
    display: flex;
}
.navBar-options-list ul li{
    height: 45px;
    line-height: 45px;
    cursor: pointer;
    padding: 0 7px;
    font-size: 21px;
    user-select: none;
}
.navBar-options-list ul li{ outline: none; }
.navBar-options-list ul li a,
.navBar-options-list ul li img{
    margin: 0;
    padding: 0;
    padding-top: 0;
    margin-top: 0;
    box-sizing: border-box;
    color: #FFF;
}
.navBar-options-list ul li img{
    border: 1px solid #E1E1E1;
    border-radius: 50%;
    width: 39px;
    height: 39px;
    margin-top: 3px;
    margin-bottom: 0;
}

/*=============Estilos en comun navegacion lateral y contenido pagina*/
.navLateral,
.pageContent,
.navLateral-body{
    height: 100%;
}
.navLateral,
.pageContent{
    overflow-y: auto;
}
/*=============Estilos navegacion lateral*/
.navLateral{
    width: 250px;
    border-right: 1px solid #E1E1E1;
    transition: all .3s ease-in-out;
    position: relative;
}
.navLateral-change{
    pointer-events: none;
    opacity: 0;
    width: 0;
    border-right: none;
}
.navLateral-body{
    background-color: #fff;
    position: relative;
}
.navLateral-admin-general,
.navLateral-admin-general .navLateral-body{
    background-color: #111111;
    border-right-color: #111111;
    color: #fff;
}
.navLateral-admin-general .navLateral-body-logo{
    background-color: #111111;
}
.navLateral-admin-sucursal,
.navLateral-admin-sucursal .navLateral-body{
    background-color: #fff7ed;
    border-right-color: #f3c892;
}
.navLateral-admin-sucursal .navLateral-body-logo{
    background-color: #e67e22;
}
.navLateral-admin-sucursal figure{
    background-color: #fff7ed;
}
.navLateral-admin-general figure{
    background-color: #111111;
}
.navLateral-body-logo{
    height: 55px;
    line-height: 1.1;
    color: #fff;
    width: 100%;
    background-color: #3F51B5;
    padding: 4px 9px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    overflow: hidden;
}
.navLateral-company-name,
.navLateral-branch-name{
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.navLateral-company-name{
    font-size: 16px;
}
.navLateral-branch-name{
    margin-top: 2px;
    color: rgba(255,255,255,.88);
    font-size: 10px;
    font-family: "RobotoCondensedLight";
    letter-spacing: .03em;
}
.navLateral-body-cl,
.navLateral-body-cr{
    box-sizing: border-box;
    height: 77px;
    float: left;
    margin: 0;
    padding: 0;
    position: relative;
}
.navLateral-body-cl{
    width: 30%;
}
.navLateral-body-cl img{
    width: 57px;
    height: 57px;
    margin: 0 auto;
    display: block;
    margin-top: 10px;
}
.navLateral-body-cr{
    width: 70%;
    font-family: "RobotoCondensedLight";
    font-size: 14px;
}
.navLateral-body-tittle-menu{
    height: 70px;
    line-height: 1.2;
    font-size:20px;
    font-weight:600;
    background-color: #F5F5F5;
    text-align: center;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 10px;
    box-sizing:border-box;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.navLateral-branch-menu{
    color:#3F51B5;
    background:#eef0ff;
    border-top:1px solid #dfe3ff;
    border-bottom:1px solid #dfe3ff;
}
.navLateral-admin-general .navLateral-branch-menu{
    color:#fff;
    background:#222;
    border-top-color:#333;
    border-bottom-color:#333;
}
.navLateral-admin-sucursal .navLateral-branch-menu{
    color:#c2410c;
    background:#ffedd5;
    border-top-color:#fed7aa;
    border-bottom-color:#fed7aa;
}
.menu-principal li,
.menu-principal li a{
    display: block;
}
.menu-principal li a{
    height: 42px;
    color: #333;
    position: relative;
    transition: all .3s ease-in-out;
}
.navLateral-admin-general .menu-principal li a{
    color:#f5f5f5;
}
.navLateral-admin-sucursal .menu-principal li a{
    color:#7c2d12;
}
.menu-principal li a:hover{
    color: #3F51B5;
}
.navLateral-admin-general .menu-principal li a:hover{
    color:#fff;
    background:#222;
}
.navLateral-admin-sucursal .menu-principal li a:hover{
    color:#c2410c;
    background:#ffedd5;
}
.menu-principal li a div.navLateral-body-cl,
.menu-principal li a div.navLateral-body-cr{
    height: 42px;
    line-height: 42px;
}
.menu-principal li a div.navLateral-body-cl{
    text-align: center;
    font-size: 18px;
}
.btn-subMenu span.fa-chevron-down{
    position: absolute;
    top: 0;
    right: 7px;
    line-height: 42px;
    height: 42px;
    font-size: 17px;
    transition: all .3s ease-in-out;
}
.btn-subMenu + .sub-menu-options{
    transition: all .3s ease-in-out;
}
.sub-menu-options{
    height: 0;
    background-color: #F5F5F5;
    overflow-y: hidden;
    transition: all .3s ease-in-out;
}
.navLateral-admin-general .sub-menu-options{
    background-color:#1b1b1b;
}
.navLateral-admin-sucursal .sub-menu-options{
    background-color:#fff7ed;
}
.sub-menu-options li a{ border-left: 4px solid transparent; }
.sub-menu-options li a:hover{ border-left: 4px solid #3F51B5; }
.btn-subMenu-show{
    background-color: rgba(0, 0, 0, 0.1);
}
.navLateral-admin-general .btn-subMenu-show,
.navLateral-admin-general .btn-subMenu-show + .sub-menu-options{
    background-color:#222;
}
.navLateral-admin-sucursal .btn-subMenu-show,
.navLateral-admin-sucursal .btn-subMenu-show + .sub-menu-options{
    background-color:#ffedd5;
}
.navLateral-admin-general .divider-menu-h{
    border-top-color:#333;
}
.navLateral-admin-sucursal .divider-menu-h{
    border-top-color:#f3c892;
}
.btn-subMenu-show .navLateral-body-cl,
.btn-subMenu-show .navLateral-body-cr{
    color: #3F51B5;
}
.btn-subMenu-show + .sub-menu-options{
    height: auto;
    overflow-y: auto;
    background-color: rgba(0, 0, 0, 0.1);
}

.btn-subMenu-show span.fa-chevron-down{
    transform: rotate(180deg);
}

/*=============Estilos contenido pagina*/
.pageContent{
    width: calc(100% - 250px);
    background-color: #fff;
    transition: all .3s ease-in-out;
}
.pageContent-change{
    width: 100%;
}

/* Margen interno uniforme para las vistas de trabajo */
.pageContent > .container{
    padding-left: 2rem;
    padding-right: 2rem;
}
/*=============Estilos detalle de venta*/
.sale-details{
    display: flex;
    justify-content: space-between;
    transition: all .3s ease-in-out;
    padding: 5px;
}
.sale-details:hover{
    background-color: rgba(0, 0, 0, 0.07);
}
.nav-transfer-badge{font-size:.68rem;min-width:1.35rem;height:1.35rem;line-height:1.35rem;padding:0 .35rem;margin-left:.35rem;vertical-align:middle}

/*============= Dashboard =============*/
.dashboard-clickable-row{cursor:pointer}.dashboard-clickable-row:hover td{background:#f1f5ff !important}
.pos-session-lock{position:fixed;inset:0;background:rgba(15,23,42,.72);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:99999}.pos-session-lock-card{background:#fff;border-radius:10px;box-shadow:0 1rem 3rem rgba(0,0,0,.3);max-width:380px;width:100%;padding:2rem;text-align:center}.pos-session-lock-card>i{color:#485fc7;font-size:2.5rem;margin-bottom:.75rem}.pos-session-lock-card h2{font-size:1.35rem;font-weight:700;color:#363636;margin-bottom:.5rem}.pos-session-lock-card p{margin-bottom:1rem}.pos-session-lock-card .help{min-height:1.5rem;text-align:left}
.dashboard-alert-link{display:flex;text-decoration:none}.dashboard-alert-link:hover{filter:brightness(.98);color:inherit}.dashboard-donut-item a{color:inherit;text-decoration:underline;text-decoration-color:rgba(63,81,181,.3)}.dashboard-donut-item a:hover{color:#3F51B5}
.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem}.dashboard-eyebrow{color:#3F51B5;font-size:.75rem;font-weight:bold;letter-spacing:.1em;margin-bottom:.35rem}.dashboard-header .title{margin-bottom:.4rem}.dashboard-header .title+.subtitle{margin-top:0}.dashboard-photo{border:4px solid #eef1ff}.dashboard-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin-bottom:1.25rem}.dashboard-metrics{margin-top:0}.dashboard-card{min-height:150px;border-radius:12px;padding:1.2rem;display:flex;justify-content:space-between;align-items:center;color:#fff;box-shadow:0 8px 20px rgba(22,35,70,.13);transition:transform .2s ease,box-shadow .2s ease}.dashboard-card:hover{color:#fff;transform:translateY(-3px);box-shadow:0 12px 26px rgba(22,35,70,.2)}.dashboard-card p{font-size:.72rem;letter-spacing:.06em;font-weight:bold;margin:0 0 .4rem}.dashboard-card strong{font-size:2.25rem;line-height:1;display:block}.dashboard-card span{font-size:.82rem;display:block;margin-top:.45rem}.dashboard-card>i{font-size:2.5rem;opacity:.38}.dashboard-card-sales{background:linear-gradient(135deg,#3F51B5,#6676d8)}.dashboard-card-quotes{background:linear-gradient(135deg,#00838f,#26a6b5)}.dashboard-card-stock{background:linear-gradient(135deg,#ef8c00,#f5b136)}.dashboard-card-empty{background:linear-gradient(135deg,#d6425f,#ec6f86)}.dashboard-panel{border:1px solid #edf0f5;border-radius:12px;padding:1.2rem;background:#fff;box-shadow:0 5px 15px rgba(22,35,70,.06);height:100%}.dashboard-panel-title{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.dashboard-panel-title h2{font-size:1.05rem;font-weight:bold;margin:0}.dashboard-panel-title p{font-size:.8rem;color:#77809a;margin:.2rem 0 0}.dashboard-panel-title a{font-size:.82rem;white-space:nowrap}.dashboard-chart{height:210px;display:flex;align-items:flex-end;justify-content:space-around;gap:.6rem;border-bottom:1px solid #dfe4ee;padding-top:1.3rem}.dashboard-bar-wrap{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:0}.dashboard-bar{width:70%;min-width:14px;background:linear-gradient(#6578e1,#3F51B5);border-radius:7px 7px 0 0;margin-top:.35rem}.dashboard-bar-value{font-size:.68rem;color:#64708a;white-space:nowrap}.dashboard-bar-wrap small{margin:.45rem 0;color:#64708a;font-weight:bold}.payment-chart{display:grid;gap:1rem}.payment-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,5fr) minmax(100px,1fr);gap:.8rem;align-items:center}.payment-label{font-weight:600;color:#3d4660}.payment-track{height:24px;background:#edf0f7;border-radius:5px;overflow:hidden}.payment-bar{height:100%;min-width:0;background:linear-gradient(90deg,#1588bd,#0d76a9);border-radius:5px}.payment-value{text-align:right;font-weight:700;color:#3d4660;white-space:nowrap}.dashboard-alert{display:flex;gap:.8rem;padding:.85rem;border-radius:8px;background:#fff7e7;margin-bottom:.75rem;color:#896000}.dashboard-alert>i{font-size:1.35rem;margin-top:.1rem}.dashboard-alert strong{font-size:.9rem}.dashboard-alert p{font-size:.8rem;margin:.2rem 0 0}.dashboard-alert-danger{background:#fff0f2;color:#b21f3d}.dashboard-table td{vertical-align:middle;border-color:#f0f2f6}.dashboard-list-icon{display:inline-flex;width:32px;height:32px;border-radius:50%;align-items:center;justify-content:center}.dashboard-list-icon.is-sales{background:#eef0ff;color:#3F51B5}.dashboard-list-icon.is-quotes{background:#e5f8f8;color:#00838f}.dashboard-table small{color:#77809a}

.dashboard-donuts{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:.9rem}.dashboard-donut-item{display:flex;align-items:center;gap:.45rem;min-width:0}.dashboard-donut{width:92px;min-width:92px;transform:rotate(-90deg)}.dashboard-donut circle{fill:none;stroke-width:10}.dashboard-donut-track{stroke:#edf0f5}.dashboard-donut-sales{stroke:#3F51B5}.dashboard-donut-quotes{stroke:#00838f}.dashboard-donut-stock{stroke:#26a6b5}.dashboard-donut text{transform:rotate(90deg);transform-origin:50px 50px}.dashboard-donut-number{fill:#333;font-size:16px;font-weight:bold}.dashboard-donut-caption{fill:#77809a;font-size:8px}.dashboard-donut-item strong,.dashboard-donut-item span{display:block;font-size:.75rem;line-height:1.45}.dashboard-donut-item strong{font-size:.82rem;margin-bottom:.2rem}.dashboard-dot-sales{color:#3F51B5;font-size:.55rem}.dashboard-dot-quotes{color:#00838f;font-size:.55rem}.dashboard-dot-stock{color:#26a6b5;font-size:.55rem}.dashboard-dot-low{color:#ef8c00;font-size:.55rem}

.user-schedule-days{display:flex;flex-wrap:wrap;gap:.45rem .7rem;padding-top:.4rem}

/* Diferenciación visual entre ventas y cotizaciones. */
.module-header{border-left:5px solid transparent;padding:1rem 1.2rem .8rem;border-radius:0 10px 10px 0;}
.module-header .title{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-top:0;margin-bottom:.75rem !important;line-height:1.2;}
.module-header .subtitle{margin-top:0 !important;margin-bottom:0;line-height:1.3;}
.module-badge{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;font-size:.65rem;letter-spacing:.08em;font-weight:bold;line-height:1.2;}
.module-header-sales{border-left-color:#087f5b;background:#e8f5ef;}
.module-header-sales .title,.module-page-sales .module-summary h2{color:#087f5b;}
.module-header-sales .module-badge{background:#087f5b;color:#fff;}
.module-header-quotes{border-left-color:#b45309;background:#fff4e5;}
.module-header-quotes .title,.module-page-quotes .module-summary h2{color:#b45309;}
.module-header-quotes .module-badge{background:#b45309;color:#fff;}
.module-header-loans{border-left-color:#2563eb;background:#eff6ff;}
.module-header-loans .title,.module-page-loans .module-summary h2{color:#2563eb;}
.module-header-loans .module-badge{background:#2563eb;color:#fff;}
.module-summary{border-top:4px solid transparent;border-radius:8px;padding:1rem;background:#fff;}
.module-summary-sales{border-top-color:#087f5b;background:#f5fbf8;}
.module-summary-quotes{border-top-color:#b45309;background:#fffbf5;}
.module-summary-loans{border-top-color:#2563eb;background:#f5f9ff;}
.module-primary-button{border:0;}
.module-page-sales .module-primary-button{background:#087f5b;color:#fff;}
.module-page-sales .module-primary-button:hover{background:#066b4d;color:#fff;}
.module-page-quotes .module-primary-button{background:#b45309;color:#fff;}
.module-page-quotes .module-primary-button:hover{background:#933f08;color:#fff;}
.module-page-loans .module-primary-button{background:#2563eb;color:#fff;}
.module-page-loans .module-primary-button:hover{background:#1d4ed8;color:#fff;}
.dashboard-tabs{display:flex;gap:.4rem;flex-wrap:wrap;border-bottom:1px solid #e2e6ef;margin-bottom:1.4rem}.dashboard-tab{border:0;background:transparent;color:#64708a;padding:.75rem 1rem;cursor:pointer;font-family:inherit;font-size:.9rem;border-bottom:3px solid transparent}.dashboard-tab:hover{color:#3F51B5}.dashboard-tab.is-active{color:#3F51B5;border-bottom-color:#3F51B5;font-weight:bold}.dashboard-tab-panel[hidden]{display:none}

@media (min-width: 751px){
    .sale-summary-panel,
    .quote-summary-panel{
        margin-top: -5.5rem;
        align-self: flex-start;
    }
}

/*=====================================================
                    Media  Queries
======================================================*/
@media (max-width: 750px){
    .navLateral{
        pointer-events: none;
        opacity: 0;
        width: 0;
        border-right: none;
    }
    .navLateral-change{
        width: 250px;
        pointer-events: auto;
        opacity: 1;
        border-right: 1px solid #E1E1E1;
    }
    .pageContent{
        width: 100%;
    }
    .pageContent-change{
       width: calc(100% - 250px);
    }
    .pageContent > .container{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .dashboard-donuts{grid-template-columns:1fr;}
    .dashboard-donut-item{justify-content:center;}
    .payment-row{grid-template-columns:1fr auto;gap:.35rem .7rem;}
    .payment-track{grid-column:1/-1;grid-row:2;}
    .payment-value{grid-column:2;grid-row:1;}

    /* La cabecera de productos debe apilarse en pantallas estrechas. */
    .product-list-heading-container{
        margin-bottom: 1rem !important;
    }
    .product-list-header{
        display: block !important;
    }
    .product-list-header > div:first-child{
        margin-bottom: 1rem;
    }
    .product-list-header .title{
        margin-bottom: .35rem;
    }
    .product-list-header .subtitle{
        margin-bottom: 0;
    }
    .product-list-actions{
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: .6rem;
        margin-bottom: 0;
    }
    .product-list-actions .button{
        width: 100%;
        margin: 0 !important;
    }
    .pageContent > .container.product-list-heading-container + .container{
        padding-top: 1rem;
    }
}
