/**********************************************************************
 * VARIABLES
 **********************************************************************/
:root{

    /* Structure */
    --header--height: 90px;
    /*--header__bottom-border--height: 2px;*/

    /* Colors */
    --header-background-dark: #20558a;
    --header-background-light: #dbe8f5;
    /*--header-font-color: #20558a;*/
    --header-caption--font-color: #466692;

    /* Borders */
    --header__border--color: #7a99c9;
    --header__border--height: 2px;

    /* Avatars */
    --user-avatar-header--size: 44px;
    --user-avatar-menu--size: 36px;
    --user-avatar-panel--size: 70px;
    --user-avatar-panel--background-color: var(--header-background-light);

    /* Menu */
    --menu-icon--color: #20558a;

    /* User Panel */
    --panel--background-color: #f5fcfe;
    --panel--border-color: #CCC;
    --panel-item--background-color: #ffffff;
    /*--panel--border-radius: 10px;*/

}




/*body{*/
    /*margin: 0;*/
    /*font-family: Arial, Verdana;*/
/*}*/

/*#wrapper{*/
    /*width: 100%;*/
    /*height: 500px;*/
    /*!*border: solid 1px #F00;*!*/
/*}*/

#header{
    display: flex;

    width: 100%;
    height: var(--header--height);
    background: url('/images/formatting/header-bg.png') repeat-x;

    border-bottom: solid var(--header__border--height) var(--header__border--color);

}

#header-left{
    flex: 70%;
    /*border: solid 1px #F00;*/
}

    /*Affinety logo*/
    #header-left-top{
        height: 28px;
        background: url('/images/general/logo-02_380x55.png') no-repeat;
        background-position: 10px 3px;
        background-size: 138px 20px;

        /*border: solid 1px #00F;*/
    }

    /*Client logo and name*/
    #header-left-bottom{
        /*display: flex;*/
        /*text-align: left;*/
        /*justify-content: center;*/
        /*align-items: center;*/

        /*border: solid 1px #0F0;*/
    }

    #header-dashboard-caption-OLD{
        margin: 15px;
        font-size: 2.5em;
        color: var(--header-caption--font-color);
    }

    /*used if Bootstrap is loaded */
    #header-dashboard-caption{
        margin: 7px;
        font-size: 2.5em;
        color: var(--header-caption--font-color);
    }

    #header-client{
        display: none;
    }

        #header-client-avatar{
            flex: 100px;
            height: 62px;
            width: 100px;
            min-width: 62px;
            /*background: url('/images/logo_150x150.png') no-repeat;*/
            /*background-image: url('https://media.affinety.com/cli/cli-34BujydQH5CxSy/images/logo_150x150.png');*/
            background-position: center center;
            background-repeat: no-repeat;
            background-size: 55px;

            /*border: solid 1px #00F;*/
        }

        #header-client-name-wrapper{
            flex: 100%;
            position: relative;

            font-size: 1.3em;
            color: var(--header-caption--font-color);
            margin: auto 0;

            /*border: solid 1px #00F;*/
        }

        .header-client-name{
            white-space: nowrap;
        }





#header-right{
    flex: 30%;
    /*border: solid 1px #F00;*/
}

    #header-right-top{
        /*display: flex;*/
        /*display: none;*/
        /*!*width: 200px;*!*/
        /*height: 56px;*/
        /*float: right;*/
        /*margin-right: 5px;*/

        /*border: solid 1px #00F;*/
    }

        #header-icons{
            /*display: flex;*/
            display: none;
            /*width: 200px;*/
            height: 56px;
            float: right;
            margin-right: 5px;

            /*border: solid 1px #00F;*/
        }


            /*#header-icons-0{*/
                /*!*flex: 30%;*!*/
            /*}*/

                /*#header-alert{*/
                    /*background-image: url('/images/icons/alert-01_100x100.png');*/
                    /*background-position: -1px -1px;*/
                    /*background-size: 35px;*/

                /*}*/

            #header-icons-1{
                /*flex: 30%;*/
            }

                #header-cart{
                    background-image: url('/images/icons/cart-00_100x100.png');
                    background-position: -1px -1px;
                    background-size: 35px;
                }

            #header-icons-2{
                /*flex: 30%;*/
            }

                #header-bell{
                    background-image: url('/images/icons/bell-00_100x100.png');
                    background-position: -1px -1px;
                    background-size: 35px;
                }

            #header-icons-3{
                /*flex: 40%;*/
            }

                #user-avatar-header{
                    height: var(--user-avatar-header--size);
                    width: var(--user-avatar-header--size);

                    background-color: #dbe8f5;
                    border-radius: 44px;
                    margin: 3px 5px;

                    text-align: center;
                    font-size: 1.3em;
                }

                #user-avatar-header:hover{
                    cursor: pointer;
                }

                #user-avatar-header:before{
                    position: relative;
                    top: 11px;
                    text-align: center;
                    color: #466692;
                }

                @-moz-document url-prefix() {
                    #user-avatar-header:before{
                        top: 10px;
                    }
                }


.header-icon{
    height: 33px;
    width: 33px;

    background-color: #466692;
    border: solid 2px #989fcd;
    border-radius: 20px;
    margin: 8px 5px;

    position: relative;
    line-height: 23px; /* Match the height for vertical centering */
    text-align: center; /* Horizontally center */


}

.header-icon:hover{
    cursor: pointer;
}

.header-icon-count-wrapper{
    position: relative;
    top: -4px;
    right: -6px;
    float: right;
    height: 16px;
    min-width: 16px;

    background-color: #ff0000;
    border-radius: 16px;

    display: flex;
    justify-content: center;    /* horizontally center the child */
    align-items: center;        /* vertically center the child */
    padding: 0 2px;             /* add padding for better text spacing */

    /*padding-top: 3px;*/
    /*line-height: 1.2em;*/
    /*font-size: .6em;*/
    /*color: #ffffff;*/
    /*text-align: center;*/
}

.header-icon-count-value{
    position: relative;
    /*top: 4px;     Remove manual offset */

    font-size: .6em;
    color: #ffffff;
    text-align: center;
}


/* Style for the :before pseudo-element (text avatar) */
.header-icon:before {
    content: ''; /* Default empty, set by PHP */
    display: inline-block;
    vertical-align: middle;
    line-height: 23px; /* Match your working value */
    font-size: 0.8em; /* Adjust based on your design */
}


/**************************************************
 * MENU
 **************************************************/

#header-menu-wrapper{
    /*display: none;*/
    background-color: #e1e1e1;

    color: #000000;
}

#header-menu {
    /*background-color: var(--menubar-background-color);*/
    /*box-shadow: 1px 1px 4px 0 rgba(0,0,0,.2);*/
    /*position: fixed;*/
    position: absolute;
    top: 0;
    width: 100%;

    color: #000;
    z-index: 3;
}

#header-menu a{
    text-decoration: none;
}

#header-menu a:hover{
    text-decoration: none;
}

#header-menu-list {
    margin: 0;
    margin-top: calc(var(--header--height) + var(--header__border--height));
    padding: 0;
    list-style: none;
    overflow: hidden;
    background-color: #f4f4f4;
    /*border: solid 1px #f00;*/

    color: var(--header-background-dark);

    clear: both;
    max-height: 0;
    transition: max-height .2s ease-out;
    font-size: 1.4em;
    /*z-index: 99999;*/
}

#header-menu-list li a {
    display: block;
    /*padding: 20px 20px;*/
    /*padding: 10px 10px;*/
    /*border-right: 1px solid #f4f4f4;*/
    /*text-decoration: none;*/
    /*background-color: var(--menubar-background-color);*/
    /*color: var(--menubar-font-color);*/
}

#header-menu-list li a:hover {
    /*background-color: var(--menubar-background-color-hover);*/
    /*color: var(--menubar-font-color-hover);*/
    /*text-decoration: none;*/
}

/*#menu-btn:hover {*/
/*background-color: #e4e4e4;*/
/*}*/

#header-menu-alert{
    display: none;
    position: relative;
    padding: 10px 0;
    border-bottom: solid 1px var(--panel--border-color);

    /*border: solid 1px #F00;*/
}

#header-menu-alert-icon{
    padding-bottom: 10px;
}
#header-menu-alert-text{
    padding: 0 10px;
    /*line-height: 1.4em;*/
    font-size: .8em;
    /*white-space: nowrap;*/
}

.header-menu-item{
    position: relative;
    padding: 10px;
    /*height: 70px;*/
    /*vertical-align: bottom;*/

    /*border: solid 1px;*/
    /*font-size: 2em;*/
}

.header-menu-item:hover{
    background-color: var(--header-background-light);
    /*text-decoration: underline;*/
}

.header-menu-link{
    position: relative;
    top: 3px;
    margin-left: 10px;
}

#header-menu-icon {
    /*height: 50px;*/
    cursor: pointer;
    display: inline-block;
    float: right;
    /*padding: 28px 20px;*/
    padding: 14px 10px;
    margin-top: 40px;
    position: relative;
    /*top: 10px;*/
    user-select: none;
    /*background-color: var(--menubar-background-color);*/
    /*background-color: var(--header-background-light);*/

    color: var(--header-background-light);

    /*border: solid 1px #fff;*/
}

#header-menu-change-client{
    display: none;
}

.header-navicon {
    background: var(--menu-icon--color);
    display: block;
    position: relative;
    transition: background .2s ease-out;
    height: 7px;
    width: 40px;
    /*font-size: 1.5em;*/
    /*height: 10px;*/
}

.header-navicon:before,
.header-navicon:after {
    background: var(--menu-icon--color);
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
}

.header-navicon:before {
    top: 12px;
}

.header-navicon:after {
    top: -12px;
}

#header-menu-btn {
    display: none;
    /*background-color: var(--menubar-background-color);*/
}

#header-menu-btn:checked ~ #header-menu-list {
    max-height: 600px;
    border-bottom: solid var(--header__border--height) var(--header__border--color);
}

#header-menu-btn:checked ~ #header-menu-icon .header-navicon {
    background: transparent;
}

#header-menu-btn:checked ~ #header-menu-icon .header-navicon:before {
    transform: rotate(-45deg);
}

#header-menu-btn:checked ~ #header-menu-icon .header-navicon:after {
    transform: rotate(45deg);
}

#header-menu-btn:checked ~ #header-menu-icon:not(.steps) .header-navicon:before,
#header-menu-btn:checked ~ #header-menu-icon:not(.steps) .header-navicon:after {
    top: 0;
}

#user-avatar-menu{
    position: relative;
    left: 2px;

    height: var(--user-avatar-menu--size);
    width: var(--user-avatar-menu--size);

    background-color: #dbe8f5;
    border-radius: 36px;
    margin: 3px 5px;

    text-align: center;
    font-size: 1.1em;
}

#user-avatar-link{
    position: relative;
    top: 15px;

}

#user-avatar-menu:before{
    position: relative;
    top: 12px;
    text-align: center;
    color: #466692;
}





/**************************************************
 * PANEL
 **************************************************/

#header-panel{
    display: none;
    position: absolute;
    top: 80px;
    right: 21px;
    /*width: 350px;*/
    min-width: 350px;
    max-width: 500px;
    /*padding: 10px 0px;*/

    background-color: #FFFFFF;
    border: solid 1px #20558a;
    border-radius: 10px 0 10px 10px;
    outline: none;
    z-index: 99999;

    font-size: 1.1em;
    line-height: 1.5em;
    color: var(--header-background-dark);

    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

#header-panel a{
    text-decoration: none;
}

#header-panel a:hover{
    text-decoration: none;
}

#header-panel-alert{
    display: none;
    position: relative;
    padding: 10px;
    border-bottom: solid 1px var(--panel--border-color);
}

#header-panel-alert-icon{
    padding-bottom: 10px;
}
#header-panel-alert-text{
    padding: 0 10px;
    line-height: 1.3em;
    font-size: .8em;
}

#header-panel-email{
    /*padding: 3px 0;*/
    font-size: .75em;
}

.header-panel-icon{
    width: 35px;
    margin-left: 10px;
    vertical-align: middle;
    /*border: solid 1px;*/
}

.header-panel-icon-round{
    border-radius: 35px;
}

.header-panel-item{
    position: relative;
    padding: 10px;
    /*height: 70px;*/
    /*vertical-align: bottom;*/

    /*border: solid 1px;*/
    /*font-size: 2em;*/
}

.header-panel-item:hover{
    background-color: var(--header-background-light);
    /*text-decoration: underline;*/
}

.header-panel-link{
    position: relative;
    top: 3px;
    margin-left: 10px;
}

#header-panel-name{
    margin-bottom: 1px;
    font-size: 1.1em;
    white-space: nowrap;
}

#header-panel-username{
    font-size: 1em;
}

#header-panel-point{
    position: absolute;
    top: -9px;
    right: 3px;
    width: 15px;
    height: 15px;
    /*background-color: #FFFFFF;*/
    background-color: var(--panel--background-color);
    border: solid 1px var(--header-background-dark);
    border-right: none;
    border-bottom: none;

    /*handles div rotation for menu point*/
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);

    /*border: solid 2px #F00;*/
}

#header-panel-top{
    display: flex;
    height: 100px;
    background-color: var(--panel--background-color);
    border-bottom: solid 1px var(--panel--border-color);
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

#header-panel-main{
    padding-bottom: 10px;
    background-color: var(--panel-item--background-color);

    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
}

#header-panel-change-client{
    display: none;
}

#user-avatar-panel{
    height: var(--user-avatar-panel--size);
    width: var(--user-avatar-panel--size);
    /*min-width: var(--user-avatar-panel--size);*/

    background-color: var(--user-avatar-panel--background-color);
    border: solid 1px;
    border-radius: calc(var(--user-avatar-panel--size) / 2);

    text-align: center;
    font-size: 1.7em;
}

#user-avatar-panel:before{
    /*content: 'test';*/
    position: relative;
    top: 24px;
    left: 1px;
    text-align: center;
    color: #466692;
}




/**********************************************************************
 * MISC
 **********************************************************************/

#frm-button-connect-my-account{
    margin-top:10px;
    margin-left:10px;
    padding: 10px;
    font-size: .75em;
    cursor: pointer;
}





/**********************************************************************
 * MEDIA SIZE
 **********************************************************************/
@media (min-width: 500px){

    #header-icons{
        display: flex;
    }

    #header-menu{
        display: none;
    }
}
















