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

/*---------------------- Reset settings ------------------------*/

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


/*---------------------- General settings ------------------------*/

@font-face {
    font-family: "Mangueira Alt";
    src: url("../fonts/Mangueira-Alt-regular.woff2") format("woff2"),
         url("../fonts/Mangueira-Alt-regular.woff") format("woff");
    font-weight: 400;
    font-display: swap;
}
  
@font-face {
      font-family: "Mangueira Alt Bold";
      src: url("../fonts/Mangueira-Alt-bold.woff2") format("woff2"),
           url("../fonts/Mangueira-Alt-bold.woff") format("woff");
      font-weight: 400;
      font-display: swap;
}
    
body{
    font-family: "Mangueira Alt";
    color: #33324f;
    line-height: 1.3;
    display: flex;
    font-size: 1rem;
}

#container{
    width: 100%;
}

#content{
    width: calc(100% - 325px);
    float: right;
    margin-top: 3rem;
    margin-bottom: 3rem;
}

.black_layout{
    display: none;
    background-color: black;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 90;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: 0.7;
}

input[type='text'], textarea{
    font-family: "Mangueira Alt";
}

.mobile{
    display: none;
}

/*---------------------- Sidebar ------------------------*/

.sidebar{
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 100; /* Behind the navbar */
  padding: 0 2rem;
  box-shadow: 0 -6px 15px -4px #777;
  background-color: #d5eafd;

  /* Transition */
  transition:left .5s;
  -webkit-transition:left .5s;
}

.sidebar.open{
    left:0px;
}

.sidebar.close{
    left:-324px;
}

.sidebar-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 48px; /* Height of navbar */
    height: calc(100vh - 80px);
    padding-top: .5rem;
    overflow-x: hidden;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
}

.sidebar ul{
    text-align: center;
    padding-left: 0;
    width: 260px;
    margin: 0 auto;
}

.sidebar li{
    list-style-type: none;
}

.sidebar .menu_active{
    background-color: #2b6798 !important;
    color: #FFF !important;
}

.sidebar .close{
    display: none;
    background-color: transparent;
    font-size: 3rem;
    color: #33324f;
    font-weight: bolder;
    padding: 0;
    margin-bottom: 0;
    position: relative;
    top: 19px;
    text-decoration: none;
}

.sidebar .close:hover{
    background-color: transparent;
}

.sidebar .link{
    background-color: #FFF;
    margin-bottom: 1.5rem;
    padding: 0.8rem 0.5rem 0.5rem 0.5rem;
    border-radius: 5px;
    display: block;
    text-decoration: none;
    color: #33324f;
    letter-spacing: 1px;
    font-size: .9rem;
    font-weight: bold;
}

.sidebar .link:hover{
    background-color: #2b6798;
    color: #FFF;
}

#logo{
    height: 170px;
    width: 170px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position-y: center;
    background-image: url(../images/CHAPKA_LOGO_COULEUR_03.png);
    margin: 0 auto;
}

/*---------------------- Header ------------------------*/

#header{
    display: flex;
    justify-content: space-between;
    background-color: #2b6798;
    height: 90px;
    align-items: center;
    color: #FFF;
    font-weight: bold;
    font-size: 1.3rem;
    width: calc(100% - 320px);
    float: right;
}

#header a{
    text-decoration: none;
    color: #FFF;
    font-size: 1.7rem;
}

.icon-smiley{
    font-size: 3rem;
}

.logout{
    margin-right: 1.3rem;
}

/*---------------------- Reusable class ------------------------*/

.fixedPosition{
    position: fixed;
}

.flex{
    display: flex;
}

.flexCol{
    flex-direction: column;
}

.flexCenter{
    align-items: center;
    justify-content: center;
}

.flexWrap{
    display: flex;
    flex-wrap: wrap;
}

.padl0{
    padding-left: 0;
}

.padr0{
    padding-right: 0;
}

.pad0{
    padding: 0;
}

.square{
    width: 243px;
    height: 140px;
    background-color: #78c0ff;
    border-radius: 5px;
    text-align: center;
    margin-right: 1rem;
    padding: 1rem;
    margin: 0.3rem;
    font-size: 1.2rem;
}

.yellow{
    background-color: #fdefd5;     
}

.light-yellow{
    background-color: #fdefd563;     
}

.pink{
    background-color: #fde1ee;     
}

.light-pink{
    background-color: #fde1ee63;
}

.purple{
    background-color: #c6c3da;     
}

.light-purple{
    background-color: #c6c3da63;     
}

.green{
    background-color: #bde0da;     
}

.light-green{
    background-color: #bde0da63;     
}

.blue{
    background-color: #d5eafd;
}

.light-blue{
    background-color: #d5eafd63;  
}

.orange{
    background-color: #fde6d5;
}

.light-orange{
    background-color: #fde6d563;
}

.textBold{
    font-family: Mangueira Alt Bold;
}


.small_text{
    font-size: .8rem;
    line-height: 14px;
}


#profil, #stats, #url_list, #revenue, #kit_media, #faq, #contact{
    margin: 0 auto;
    max-width: 850px;
    padding: 0 1rem;
}

.display_none{
    display: none;
}

/*---------------------- Loading ------------------------*/

.loading{
    margin-top: 0.6rem; 
    margin-left: 1rem;
}

/*---------------------- Title ------------------------*/

#stats h2, .revenue_title{
    font-family: "Mangueira Alt Bold";
}

#stats h2{
    margin-bottom: 0.5rem;
}

#stats h3, #revenue h3{
    padding-bottom: 1.5rem;
    font-weight: bold;
    margin: 0;
    font-size: 1.2rem;
}

/*---------------------- Performance ------------------------*/

.select_period{
    display: flex;
    align-items: baseline;
}

.chart-container{
    margin: 1rem 2rem;
    height:35vh;
}

.top_revenue_title{
    padding-bottom: .8rem;
    font-weight: bold;
}

#stats .number, #revenue .number{
    font-family: "Mangueira Alt Bold";
    font-size: 1.8rem;
}

#stats table{
    background-color: #fde6d5;
    border-radius: 5px;
    /* width: -webkit-fill-available; */
    table-layout: fixed;
    width: 100%;
}

#stats th{
    background-color: #ed6d34;
    color: #FFF;
    font-size: .8rem;
    letter-spacing: 1px;
    padding: 0.5rem;
}

.filter{
    display: flex;
    align-items: center;
    gap: 5px;
    justify-content: center;
    cursor: pointer;
}

.icon-arrow_down{
    display:none; 
    font-size: 1.5rem; 
    line-height: 0.5rem !important;
}

#stats td{
    text-align: center;
    font-size: .8rem;
    padding: 0.3rem;
    border-right: #fff solid 2px;
}

#stats td:last-child{
    border-right: none;
}

#stats th:nth-child(1){
    border-radius: 5px 0px 0px 0px;
}

#stats th:last-child{
    border-radius: 0px 5px 0px 0px;
    border-right: none;
}

#revenue .number{
    padding-bottom: 1.2rem;
}

.square.performance{
    width: 230px;
}

#stats .flexWrap.chart{
    justify-content: space-between;
}

.xls_btn{
    display: none;
    text-align: center;
    color: rgb(15, 121, 49);
    font-size: 1.3rem;
    text-decoration: none;
    margin-right: 3rem;
    text-align: center;
}

.xls_btn div{
    font-size: .6rem;
}

#top{
    padding-left: .1rem;
}

#top li{
    display: flex;
    justify-content: center;
    font-size: .83rem;
    line-height: 1.8rem;
    font-family: 'Mangueira Alt Bold';
}

.SumoSelect{
    margin-right: 0.2rem;
}

.read_more{
    cursor:pointer; 
    color: #ed6d34;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}

/*---------------------- Link list ------------------------*/

.url_list_block{
    border: solid 1px #f5f5f5;
    padding: 0rem 1rem 1rem 1rem;
    border-radius: 5px;
    margin-top: 1rem; 
    background-color:#f5f5f5
}

.url_list_title{
    text-align: left;
    padding-left: 1rem;
    text-transform: uppercase;
}

.url_list_element{
    width: 230px;
    height: 50px;
    margin: 0.5rem;
    padding: 1rem 0rem 1rem 1rem;
    text-transform: uppercase;
    font-family: "Mangueira Alt Bold";
    border-radius: 5px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.url_list_image{
    width: 50%;
    height: 100%;
    position: relative;
    top: 1.2rem;
    left: 1rem;
    background-size: contain;
}

.url_list_element_copy{
    margin: 0.4rem 1.4rem;
}

.btn_copy {
    margin-left: .5rem;
}

.btn_copy button{
    border-radius: 5px;
    border: solid 1px #CCC;
    vertical-align: middle;
    padding: 0.1rem;
    cursor: pointer;
}

.btn_copy_url_image, .btn_copy_check_image{
    position: relative;
    top: 1px;
}

/*---------------------- Invoices ------------------------*/

.invoices{
    width: 100%;
    margin: 0 auto;
    padding-left: 0;
    margin-bottom: 0.5rem;
    margin-top: 0.3rem;
}

.invoices table{
    background-color: #fde6d5;
    border-radius: 5px;
    width: -webkit-fill-available;
}

.invoices th{
    background-color: #ed6d34;
    color: #FFF;
    font-size: .8rem;
    letter-spacing: 1px;
    padding: 0.5rem;
}

.invoices td{
    text-align: center;
    font-size: .8rem;
    padding: 0.3rem;
    border-right: #fff solid 2px;
}

.invoices td:last-child{
    border-right: none;
}

.invoices th:nth-child(1){
    border-radius: 5px 0px 0px 0px;
}

.invoices th:last-child{
    border-radius: 0px 5px 0px 0px;
    border-right: none;
}

.invoices .download_btn{
    background-color: #d5c2ba;
    margin: 0 auto;
    padding: 0.3rem 1rem 0.2rem 1rem;
    display: inline-flex;
    border-radius: 5px;
    border: solid 1px #c3b3ae;
    font-family: Mangueira Alt Bold;
    color: #554e4a;
    cursor: pointer;
    text-decoration: none;
}

.invoices .startLine td{
    padding-top: .1rem;
}

.invoices .lineYear{
    padding: 0.4rem 0 0.1rem 0;
    font-size: .9rem;
    letter-spacing: 1px;
    background-color: #ffd8bb;
    color: #3b3b3b;
}

.read_more.invoices_btn{
    color: #ffffff;
    padding: 0.1rem 1rem;
    background-color: #ed6d34;
    border-radius: 5px;
}

/*---------------------- Kit media / Best pratices ------------------------*/

#kit_media a, #best_practices a{
    padding: 1.5rem;
    display: flex;
    justify-content: center;
    color: #33324f;
    text-decoration: none;
    font-weight: bold;
    font-size: 1.2rem;
    border-radius: 5px;
    width: 22rem;
    height: 3rem;
    align-items: center;
    text-align: center;
}

#best_practices{
    margin-top: 7rem;
}

#best_practices .best_practices_el, #kit_media .kit_media_el{
    margin-bottom: 1rem;
}

/*---------------------- Faq ------------------------*/

.faq{
    margin: 0 auto 0.5rem auto;
    font-family: Mangueira Alt;
    border-radius: 5px;
    align-items: center;
    font-size: 1.2rem;
    cursor: pointer;
    width: calc(100% - 25px);
    padding-left: 0;  
}

.faq.facturation{
    margin: inherit;
    width: 100%;
    margin: 0.3rem 0 0 0;
}

.faq_question{
    display: flex;
    align-items: center;
    border-radius: 5px;
    padding: .5rem 1rem;
    justify-content: space-between;
    font-size: 1rem;
}

.faq_answer{
    padding: 1rem;
    font-size: .85rem;
    border-radius: 0 0 5px 5px;
    font-family: "Mangueira Alt";
    text-align: justify;
}

.faq_plus_minus{
    display: flex;
    justify-content: flex-end;
    font-size: 2.5rem;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
    margin-right: 2rem;
    font-family: "Mangueira Alt Bold";
}

/*---------------------- Contact ------------------------*/


#contact li{
    list-style-type: none;
}

.contact_element{
    padding: 1.8rem;
    border-radius: 20px;
    margin: 1rem;
    height: 300px;
    width: 280px;
}

#contact p{
    font-size: .8rem;
    text-align: center;
}

#contact h2{
    text-align: center;
    font-size: 1.1rem;
    font-family: Mangueira Alt Bold;  
}

.contact_info{
    display: block;
    font-size: .8rem;
    font-weight: bold;
    text-align: center;
    font-family: Mangueira Alt Bold;
    padding-left: 0;
}

.contact_info a{
    color: #000;
}

#contact [class*="picto-"]::before{
    content: '';
    position: relative;
    display: inline-flex;
    align-items: center;
    top: -5px;
    left: -10px;
    width: 25px;
    height: 25px;    
}

.picto-phone-contact::before{
    background: url(../images/phone_contact.png);
}

.picto-email-contact::before{
    background: url(../images/laptop_contact.png);
    width: 22px;
    height: 24px;   
}


/*---------------------- Profile ------------------------*/

#profil h2{
    font-size: 1.4rem;
    font-family: Mangueira Alt Bold;  
}

#profil .row{
    display: flex;
    margin-bottom: 0.4rem;
}

#profil .label{
    width: 8rem;
    font-size: .8rem;
    display: flex;
    align-items: center;
}

#profil input[type="text"], textarea{
    background-color: #d5eafd;
    border: none;
    border-radius: 5px;
    font-size: .8rem;
    padding-left: 0.5rem;
}

#profil textarea{
    vertical-align: top;
}

#profil .col1{
    margin-bottom: 1.5rem;
}

.col2 h2{
    margin-top: 1.5rem;
}

#profil .col2 .label{
    width: 4rem;
}

#profil .read_cg{
    text-decoration: none;
    color: #000;
}

#profil .read_cg::before{
    content: "📄";
    font-size: 1.3rem;
}

#commissions .bar{
    background-color: #2b6798;
    padding: 0.5rem;
    color: #FFF;
    font-size: .7rem;
    font-weight: bold;
    letter-spacing: 1px;
    border-radius: 5px;
    margin-bottom: 0.2rem;
}


#commissions .number{
    background-color: #FFF;
    color: #000;
    padding: 0.1rem 0.5rem;
    font-family: Mangueira Alt Bold;
    margin-right: 0.3rem;
    width: 2rem;
    display: inline-block;
    text-align: center;
}

#commissions .product{
    display: flex;
    align-items: center;
}

#commissions .product_name{
    min-width: 13rem;
}

#commissions .product_rate{
    border-right: dashed 2px; 
    width: 10rem;
}

#commissions .product_reduction{
    display: flex;
    width: 50%;
}

#commissions .product_reduction_list{
    margin-bottom: 0; 
    font-weight: initial; 
    width: 100%
}

#commissions .product_reduction_number{
    display:flex; 
    float:right
}


/*---------------------- Calendar ------------------------*/

#date_picker{
    display: flex;
    height: 1.4rem;
    padding: 0.5rem;
    text-align: center;
    margin-top: 0.1rem;
    background-color: #d5eafd;
    border: none;
    border-radius: 5px;
}

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
    background: #2b6798;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    border-color: #2b6798;
}

.flatpickr-day.inRange {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #d5eafd, 5px 0 0 #d5eafd;
    box-shadow: -5px 0 0 #d5eafd, 5px 0 0 #e6e6e6;
}

.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus {
    cursor: pointer;
    outline: 0;
    background: #d5eafd;
    border-color: #d5eafd;
}

.flatpickr-monthDropdown-months, .flatpickr-current-month input.cur-year{
    font-size: 1rem !important;
}  

/*---------------------- Picto ------------------------*/

#kit_media [class*="picto-"]::before, #best_practices [class*="picto-"]::before{
    content: '';
    position: relative;
    display: flex;
    top: -5px;
    left: -5px;
    width: 30px;
    height: 30px;
}

#top [class*="picto-"]::before{
    content: '';
    position: relative;
    display: flex;
    width: 25px;
    height: 25px;  
}

.picto-book::before{
    background: url(../images/book.png);
}

.picto-heart-hand::before{
    background: url(../images/heart.png);
}

.picto-star::before{
    background: url(../images/star.png);
}

.picto-victory::before{
    background: url(../images/victory.png);
}

.picto-purple-heart::before{
    background: url(../images/purple_heart.png);
}

.picto-scroll::before{
    background: url(../images/scroll.png);
}

.picto-medal::before{
    background: url(../images/medal.png);
    width: 35px !important;
    height: 35px !important;
}

.picto-medal-1::before{
    background: url(../images/medal-s-1.png);
}

.picto-medal-2::before{
    background: url(../images/medal-s-2.png);
}

.picto-medal-3::before{
    background: url(../images/medal-s-3.png);
}

.picto-phone::before{
    background: url(../images/phone.png);
    width: 35px !important;
    height: 35px !important;
}

.hbg_menu{
    display: none;
    margin-right: 1.8rem;
}

/*---------------------- Responsive ------------------------*/

/* @media screen and (max-width: 1023px){

} */

@media screen and (max-width: 1233px){

    .block{
        display: block;
    }
    
    .flexWrap{
        justify-content: center;
    }

    .no_center{
        justify-content: inherit;
    }

    .square{
        width: 100%;
        height: inherit;
        padding: 1.3rem 0 0 0;
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 0;
    }

    #stats h3, #revenue h3{
        font-size: 1.1rem;
        padding-bottom: .5rem;
    }

    #stats .number, #revenue .number{
        font-size: 1.5rem;
    }

    .purple.facturation{
        padding-bottom: 1.2rem;
    }

    .square.performance{
        width: 100%;
        padding-bottom: 1.3rem;
    }

    #stats .flexWrap.chart{
        justify-content: center;
    }

        /*---------------------- Logo ------------------------*/

    #logo{
        height: 160px;
    }

    /*---------------------- Menu + close button ------------------------*/

    .hbg_menu, .sidebar .close{
        display: inline-flex;
    }
    /*---------------------- Sidebar ------------------------*/

    .sidebar{
        left: -341px;
        
    }

    /*---------------------- Chart ------------------------*/

    .chart-container{
        margin: inherit;
    }

    #content{
        width: inherit;
        float: inherit;
    }

    #header{
        width: inherit;
        float: inherit;
    }

    .trackingTable h2{
        text-align: center;
        margin-bottom: 0.5rem !important;
    }

    /*---------------------- Faq ------------------------*/

    .faq{
        width: inherit;
    }
}


@media screen and (max-width: 560px){

    h2{
        text-align: center;
        font-size: 1.2rem;
    }

    #stats h2{
        margin-bottom: 0;
    }

    #stats th, #stats td{
        font-size: .6rem;
    }

    .filter{
        gap: 0rem;
    }

    .select_period{
        justify-content: center;
        flex-wrap: wrap;
        padding-bottom: 0.3rem;
    }

    #date_picker{
        font-size: 1rem;
    }

    .SumoSelect{
        margin-right: inherit;
    }

    #header .welcome{
        font-size: 1rem;
    }

    .hbg_menu{
        margin-right: .8rem;
    }

    .icon-smiley{
        font-size: 2rem;
    }

    #kit_media a, #best_practices a{
        font-size: 1rem;
        font-family: inherit;
    }
    
    #profil, #stats, #url_list, #revenue, #kit_media, #faq, #contact{
        padding: 0 .5rem;
    }
}

@media only screen and (max-height: 575.98px) and (orientation: landscape) {
    .chart-container{
        height: 60vh;
    }
}

@media screen and (max-width: 540px){

    #commissions .product{
        justify-content: space-between;
    }

    #commissions .product_rate{
        border-right: inherit;
        width: inherit
    }

    .product_reduction_list{
        padding-left: 15px;
    }

    #commissions .product_reduction_number{
        display: unset;
        float: inherit;
        padding-left: 1rem;
    }

    #profil input[type="text"], textarea{
        width: 30vh;
    }

    .desktop{
        display: none !important;
    }

    .mobile{
        display: flex;
    }

    .mobile.reduction{
        padding-top: 0.3rem;
    }

    .invoices .download_btn{
        padding: 0.3rem;
    }
}

@media screen and (max-width: 438px){

    #kit_media a, #best_practices a{
        width: 19rem;
    }

    #stats .xls_btn{
        margin-right: 0;
        margin-left: 0.5rem;
    }
}