/*
 * cookie_cnf UI section
 */
.cookie-cnf-btn--lg,
.cookie-cnf-btn--sm{
    background: #202020;
    color:white;
    border:none;
    font-weight:bold;
    cursor: pointer;
    margin:4px 0;
}

.cookie-cnf-btn--lg:hover,
.cookie-cnf-btn--sm:hover,
.cookie-cnf-btn--lg:active,
.cookie-cnf-btn--sm:active,
.cookie-cnf-btn--lg:focus,
.cookie-cnf-btn--sm:focus{
    text-decoration: none;
    outline:none;
}

.cookie-cnf-btn--lg {
    padding: 10px 15px;
}

.cookie-cnf-btn--sm {
    padding: 4px 8px;
    font-size:.85em;
    font-weight: normal;
}

.cookie-cnf-banner {
    box-sizing: border-box;
    position: fixed;
    z-index: 100000;
    padding: 10px 30px;
    background: white;
    width: 100%;
    display: none;
    opacity:0;
    height:auto;
    -webkit-transition: opacity 1s ease;
    -moz-transition: opacity 1s ease;
    -ms-transition: opacity 1s ease;
    -o-transition: opacity 1s ease;
    transition: opacity 1s ease;
}

.cookie-cnf-banner--align-bottom{
    bottom: 0;
}

.cookie-cnf-banner--align-top{
    top: 0;
}

.cookie-cnf-banner.active{
    display:block;
    opacity:1;
}

.cookie-cnf-banner__btn-container{
    text-align: center;
}

.cookie-cnf-banner.cookie-cnf-banner--validated .cookie-cnf-banner__btn-container{
    display:none;
}

.cookie-cnf-banner.disable-trans{
    display:block;
    opacity:0;
}

.cookie-cnf-banner__intro_msg,
.cookie-cnf-banner__thank_you_msg{
    margin:0;
    padding: 5px 0 15px 0;
}

.cookie-cnf-banner__thank_you_msg{
    display: none;
}

.cookie-cnf-banner--validated .cookie-cnf-banner__thank_you_msg {
    display: block;
}

.cookie-cnf-banner--validated .cookie-cnf-banner__intro_msg {
    display: none;
}

.cookie-cnf-banner__thank-you_msg {
    display: none;
}

.cookie-cnf-popin__close-btn{
    border: none;
    position:absolute;
    font-size: 1.5em;
    padding: 0px 6px;
    line-height: 20px;
    color: #808080;
    background: none;
    top:10px;
    right:10px;
    cursor: pointer;
}

.cookie-cnf-popin__wrapper {
    box-sizing: border-box !important;
    position: fixed;
    width: 100%;
    height: 100vh;
    left: 0;
    top: 0;
    z-index: 100001;
    display:none;
    background-color: rgba(0,0,0,0);
    transition: background-color 1s ease;
    padding:20px;
}

.cookie-cnf-popin__wrapper.disable-trans {
    background-color:rgba(0,0,0,0);
    display: block;
}

.cookie-cnf-popin__wrapper.active-trans {
    display: block;
}

.cookie-cnf-popin__wrapper.active {
    background-color:rgba(0,0,0,.5);
    display: block;
}

.cookie-cnf-popin {
    font-size:16px;
    width: 100%;
    height:94vh;
    margin: auto;
    background: white;
    border: 1px solid #e0e0e0;
    position: relative;
    opacity:0;
    transition: opacity 1s ease;
    overflow: hidden;
}

.cookie-cnf-popin__wrapper.disable-trans .cookie-cnf-popin{
    opacity:0;
}

.cookie-cnf-popin__wrapper.active .cookie-cnf-popin{
    opacity:1;
}

.cookie-cnf-popin header.cookie-cnf-popin__header{
    border-bottom: 1px solid #e0e0e0;
    height:60px;
    position: static;
}

.cookie-cnf-popin__logo-wrapper img{
    width:100%;
    padding:10px;
}

.cookie-cnf-popin__logo-wrapper {
    width: 30%;
    text-align: center;
}

.cookie-cnf-popin__title{
    font-size: 1em;
    margin:0;
    font-weight: bold;
    padding: 10px 40px 10px 10px;
    line-height: 1.25;
}

.cookie-cnf-popin footer{
    height:60px;
    width:100%;
    border-top: 1px solid #e0e0e0;
    position:absolute;
    bottom:0;
    background: white;
}

.cookie-cnf-popin__save-btn{
    background:#505050
}

.cookie-cnf-popin__save-btn-wrapper {
     text-align: right;
     padding:10px;
 }

.cookie-cnf-popin__footer-inner{
    display: table;
}

.cookie-cnf-popin__header-inner,
.cookie-cnf-popin__footer-inner{
    height:100%;
}
.cookie-cnf-popin__footer-inner{
    width:100%;
}

.cookie-cnf-popin__header-inner > *,
.cookie-cnf-popin__footer-inner > *{
    display: table-cell;
    vertical-align: middle;
}

.cookie-cnf-popin__group-tab-container {
    width: 100%;
    border-right: 1px solid #e0e0e0;
    float: left;
}

.cookie-cnf-popin__group-tab {
    font-weight: bold;
    color: #808080;
    width: 100%;
    padding: 10px;
    border-bottom: 1px solid #d3d3d3;
    background: #e0e0e0;
    cursor: pointer;
    transition: background 0.5s ease;
}
.cookie-cnf-popin__group-tab.active{
    color: #303030;
    background: white;
    width: 101%;
}

.cookie-cnf-popin__group-container {
    display:none;
    width: 100%;
    height: 0%;
    float: left;
    overflow: auto;
    overflow: hidden;
    transition: height 0.5s ease;
    position: relative;
    margin-top:-1px;
}

.cookie-cnf-popin__group-container.active {
    height: auto;
    display:block;
}

.cookie-cnf-popin__group-container .title{
    font-size: 0.725em;
    font-weight:bold;
    margin:0;
    margin-right: 150px;
    padding:3px 0px 0px 0px;
}

.cookie-cnf_popin__group-desc{
    font-size: 0.875em;
    margin-top: 25px;
    max-height: 200px;
    overflow: auto;
}

.cookie-cnf-popin__group-container-inner {
    padding: 20px;
    margin-bottom: 60px;
}

.cookie-cnf_popin__switch{
    height:20px;
    position: absolute;
    max-width: 160px;
    right: 20px;
    margin-top: 10px;
}


.cookie-cnf_popin__switch .cookie-cnf_popin__switch-btn {
    width:42px;
    height:100%;
    position: relative;
    border-width: 3px;
    border-style: solid;
    border-radius: 100px;
    transition: all 0.5s ease;
    cursor: pointer;
    float:left;
}
.cookie-cnf_popin__switch .cookie-cnf_popin__switch-btn:after{
    content: "";
    width:14px;
    height:14px;
    position: absolute;
    background: #F0F0F0;
    border-radius: 100px;
    transition: all 0.5s ease;
}

.cookie-cnf_popin__switch.on .cookie-cnf_popin__switch-btn{
    background: #48be03;
    border-color: #48be03;
}

.cookie-cnf_popin__switch.lock .cookie-cnf_popin__switch-btn{
    background: #707070;
    border-color: #707070;
}

.cookie-cnf_popin__switch.off .cookie-cnf_popin__switch-btn {
    background: #c40100;
    border-color: #c40100;
}

.cookie-cnf_popin__switch.off .cookie-cnf_popin__switch-btn:after{
    left:0;
}

.cookie-cnf_popin__switch.on .cookie-cnf_popin__switch-btn:after,
.cookie-cnf_popin__switch.lock .cookie-cnf_popin__switch-btn:after{
    left:22px;
}

.cookie-cnf_popin__switch-label--off{
    color:#c40100;
}

.cookie-cnf_popin__switch-label--on{
    color:#48be03;
}

.cookie-cnf_popin__switch-label--lock{
    color:#707070;
}
.cookie-cnf_popin__switch-label--off,
.cookie-cnf_popin__switch-label--on,
.cookie-cnf_popin__switch-label--lock{
    display: none;
    font-weight:bold;
    height:100%;
    padding-left:10px;
}

.cookie-cnf_popin__switch.off .cookie-cnf_popin__switch-label--off,
.cookie-cnf_popin__switch.on .cookie-cnf_popin__switch-label--on,
.cookie-cnf_popin__switch.lock .cookie-cnf_popin__switch-label--lock{
    display: inline-block;
}


/**
 * cookie_cnf UI section
 * tablet breakpoint
 **/
@media screen and (min-width: 800px) {
    .cookie-cnf-popin{
        width: 800px;
        height: 600px;
    }
    .cookie-cnf-popin__title{
        font-size: 1.5em;
        padding: 20px;
    }
    .cookie-cnf-popin__group-tab-container {
        width: 30%;
        height: calc(100% - 200px);
    }
    .cookie-cnf-popin__group-tab {
        padding: 20px;
    }
    .cookie-cnf-popin__group-container {
        width: 70%;
        border-bottom: 1px solid #e0e0e0;
        display:block;
    }
    .cookie-cnf-popin__group-container.active {
        height: calc(100% - 200px + 3px);
    }
    .cookie-cnf-popin header{
        height:100px;
    }
    .cookie-cnf-popin footer {
        height: 100px;
    }
    .cookie-cnf-popin__save-btn-wrapper {
        padding:20px;
    }
    .cookie-cnf-popin__group-container-inner {
        margin-bottom: 0;
    }
    .cookie-cnf_popin__group-desc{
        max-height: 300px;
    }
    .cookie-cnf_popin__switch{
        height:30px;
    }
    .cookie-cnf_popin__switch .cookie-cnf_popin__switch-btn {
        width:52px;
    }
    .cookie-cnf_popin__switch .cookie-cnf_popin__switch-btn:after{
        width:24px;
        height:24px;
    }
    .cookie-cnf_popin__switch-label--off,
    .cookie-cnf_popin__switch-label--on,
    .cookie-cnf_popin__switch-label--lock{
        line-height:30px;
    }


    .cookie-cnf-popin header.cookie-cnf-popin__header{
        height:100px;
    }

}

/**
 * cookie_cnf UI section
 * desktop breakpoint
 **/
@media screen and (min-width: 1200px) {

    .cookie-cnf-banner.active{
        display:table;
        opacity:1;
    }

    .cookie-cnf-banner.disable-trans{
        display:table;
        opacity:0;
    }

    .cookie-cnf-banner.active > *,
    .cookie-cnf-banner.disable-trans > *{
        display:table-cell;
        vertical-align:middle;
        padding: 0 20px;
    }

    .cookie-cnf-banner__btn-container {
        width:30%;
    }

    .cookie-cnf-popin header.cookie-cnf-popin__header{
        height:100px;
    }
}

/*
 * cookie cnf placeholders styles
 */
.cookie-cnf-disabled-placeholder{
    box-sizing: border-box !important;
    display:table !important;
    background: rgba(0, 0, 0, 0.58) !important;
    padding:0 !important;
}

.cookie-cnf-disabled-placeholder > * {
    display: table-cell !important;
    height: 100% !important;
    vertical-align: middle !important;
    text-align: center !important;
    padding:5px !important;
}

.cookie-cnf-disabled-placeholder > *:after{
    content: '' !important;

    /* https://www.flaticon.com/free-icon/cookie_808749 */
    background-image: url('picto_rouages_cookies.svg') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    padding: 10px !important;
    width: 100% !important;
    height: 100% !important;
    display: inline-block !important;
    max-width: 64px !important;
    max-height: 64px !important;
}

/*
 * cookie cnf attribute filtering styles
 */
[data-cookie-cnf-status="blocked"]{
    display:none !important;
}
