.login-body.layout-dark {
    background-image: url("/gym-project/javax.faces.resource/images/back-img.jpg.xhtml");
    background-repeat: no-repeat;
    background-size: cover;
}

.gym-responsive-image {
    width: 5vw;
}

.gym-wait-hide-border{
    border:none !important;
}

/* Hover highlight reset */
.layout-sidebar .layout-menu-container .layout-menu li > a:hover {
    transition: background .5s;
    border-radius: 0;
}

/*search menu box*/
.layout-sidebar .gym-search-input {
    padding: 14px;
    position: relative; 
}
.layout-sidebar .gym-search-input i {
    position: absolute;
    color: #738183;
    top: 23px;
    left: 18px;
    font-size: 16px; 
}
.gym-search-input input {
    color: #738183;
    padding: 8px 0 8px 24px;
    width: 100%;
    border-radius: 2px;
    font-size: 14px;
    background-color: #ffffff;
    border: solid 1px #cfd4d5;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -moz-transition: border-color 0.3s;
    -o-transition: border-color 0.3s;
    -webkit-transition: border-color 0.3s;
    transition: border-color 0.3s; }
.gym-search-input input:focus {
    border-color: #1b82d7;
    outline: 0 none; 
}
/*End: search menu box*/

.layout-menu-light .layout-sidebar .layout-menu > li.active-menuitem > a,
.layout-menu-dark .layout-sidebar .layout-menu > li.active-menuitem > a {
    background-color: transparent;
    border-radius: 0;
    box-shadow: 0 .25rem .3rem 0rem rgba(0,0,0,.2)}

/* Hover highlight reset */
.layout-sidebar .layout-menu-container .layout-menu li > a:hover {
    transition: background .5s;
    border-radius: 0;}

/* TOP sidebar bg overlay on hover */
.layout-menu-dark .layout-sidebar .layout-menu > li > a:focus-visible,
.layout-menu-dark .layout-sidebar .layout-menu > li > a:hover {
    background-color: rgba(0,0,0,.1);}

.layout-sidebar .layout-menu-container .layout-menu > li > ul::before {
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background-color: var(--surface-a);
    opacity: 0.6;}

.layout-sidebar .layout-menu-container .layout-menu > li > ul {
    margin: 0 .3rem .3rem .3rem;
    background-color: transparent;
    position: relative;
    box-shadow: .1rem .2rem .3rem 0 rgba(0,0,0,.3);
    border-radius: 0 0 .25rem .25rem !important;}

.layout-sidebar .layout-menu-container .layout-menu > li { /* fixes bottom displaying white */
    overflow-y: hidden;}
.layout-menu-container {
    scrollbar-width: thin;}

.layout-sidebar .layout-menu-container .layout-menu > li:not(.menu-l1) > a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: .25rem;
    z-index: -1;}

.layout-sidebar .layout-menu-container .layout-menu > li:not(.active-menuitem.menu-l1) > a:focus-visible::before {
    background-color: var(--primary-color);
    opacity: .25;}
.layout-sidebar .layout-menu-container .layout-menu > li.active-menuitem:not(.menu-l1) > a::before {
    background-color: var(--primary-color);
    opacity: 1;}

.layout-sidebar .layout-menu-container .layout-menu li {
    padding: 0;}

/* force to draw the text of the active group ABOVE the background of ::before */
li .menu-l1.active-menuitem > a > span {
    z-index: 1;}
li .menu-l1.active-menuitem > a::before { /* menu selected item highlight */
    content: "";
    background-color: var(--surface-a);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: 0.9;}

/* Keep the ul[role=menu]::before inside the container */
.menu-l1.active-menuitem ul[role=menu] {
    position: relative;}

li .menu-l1 ul[role=menu]::before { /* subtree */
    content: "";
    background-color: var(--surface-a);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: 0.6;}

.layout-sidebar .layout-menu-container .layout-menu li ul li {
    padding: 0;}

/* fix the icon position caused by the margin of the first ul[role=menu] */
.layout-sidebar .layout-menu-container .layout-menu > li > ul > li {
    margin-right: -.3rem;}

/* sidebar ICONS fix color */
.layout-menu-dark {
    --icon-color: #334;}

.layout-sidebar .layout-menu-container .layout-menu > li > ul li a i,
.layout-sidebar .layout-menu-container .layout-menu > li > ul li.active-menuitem > a i,
.layout-sidebar .layout-menu-container .layout-menu > li.active-menuitem > a i,
.layout-sidebar .layout-menu-container .layout-menu > li > a i {
    color: var(--icon-color);}





.layout-sidebar .layout-menu-container .layout-menu > li > ul li a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-left: solid 0 var(--icon-color);}

.layout-sidebar .layout-menu-container .layout-menu > li > ul li.active-menuitem:not(.menu-l1) > a::before  {
    border-left-width: .5rem;
    opacity: .8;}

/* Sidebar accessibility TAB */
.layout-sidebar .layout-menu-container .layout-menu li.active-menuitem:not(.menu-l1) > a:focus-visible::before {
    opacity: .4;}
.layout-sidebar .layout-menu-container .layout-menu li a:focus-visible::before { /* sidebar focus-visible (tab) subtree */
    border-left-width: .5rem;
    opacity: .4;}

.layout-sidebar .layout-menu-container .layout-menu li.menu-l1 > a:focus-visible::before { /* folder in group in subtree */
    opacity: .7;}

.layout-sidebar .layout-menu-container .layout-menu > li > ul li a * { /* force menu text & icons to go above the ::before */
    z-index: 5;}

.layout-sidebar .layout-menu-container .layout-menu > li > ul li a:hover { /* sidebar hover subtree */
    background-color: transparent;}


/*LEFT MENU, keep margin around menu icons*/
.menuitem-text {
    margin-right: 20px;
}
.menu-l1 .menuitem-text {
    margin-right: 43px;
}

.layout-sidebar .layout-menu-container .layout-menu > li > ul li.active-menuitem > a .menuitem-text {
    color: var(--icon-color);
    font-weight: bold;
    letter-spacing: -.005rem;}
.layout-sidebar .layout-menu-container .layout-menu > li > ul li.active-menuitem:not(.menu-l1) > a .menuitem-text {
    color: var(--icon-color);
    font-weight: bold;
    letter-spacing: -.005rem;}

.layout-sidebar .layout-menu-container .layout-menu > li.menu-l1 > a span.menuitem-text {
    color: #334;
}

/* MODIFY TOP BAR */
@media (min-width: 992px) {
    /*remove fixed height if full screen*/
    .layout-main { 
        padding-top: 0px !important;
    }
    /*make relative height in full screen, to allow full screen utilization*/
    .layout-topbar-wrapper{
        height: 100% !important; 
    }              
}
/*  -- MODULAR CLASSES --  */

/* disable selection support: IE 10+ */
.gym-pointer-none {
    pointer-events: none;
}

.gym-v-top {
    vertical-align: top;
}
.gym-v-btm {
    vertical-align: bottom;
}
.gym-v-mid {
    vertical-align: middle;
}

.gym-maxw46 {
    max-width: 736px;
    max-width: 46rem;
}

/* General CSS for quick styling */
/* display type */
.gym-db {
    display: block;
}
.gym-dib {
    display: inline-block;
}
.gym-flex {
    display: flex;
}

.gym-relative {
    position: relative;
}
.gym-absolute {
    position: absolute;
}

.gym-minw35 {
    min-width: 560px;
    min-width: 35rem;
}

.gym-tl {
    text-align: left;
}
.gym-tc {
    text-align: center;
}
.gym-tr {
    text-align: right;
}

.gym-fl {
    float: left;
}
.gym-fr {
    float: right;
}

/* font-size */
.gym-f1 {
    font-size: 44px;
    font-size: 2.50rem;
}
.gym-f2 {
    font-size: 32px;
    font-size: 2.00rem;
}
.gym-f3 {
    font-size: 24px;
    font-size: 1.5rem;
}
.gym-f4 {
    font-size: 32px;
    font-size: 1.25rem;
}
.gym-f5 {
    font-size: 16px;
    font-size: 1rem;
}

/* padding all, left, right, top, bottom, vertical */
.gym-pa1 {
    padding: 16px;
    padding: 1rem;
}
.gym-pa2 {
    padding: 32px;
    padding: 2rem;
}

.gym-pl0 {
    padding-left: 0;
}
.gym-pl1 {
    padding-left: 16px;
    padding-left: 1rem;
}
.gym-pl2 {
    padding-left: 32px;
    padding-left: 2rem;
}
.gym-pr0 {
    padding-right: 0;
}
.gym-pr1 {
    padding-right: 16px;
    padding-right: 1rem;
}
.gym-pr2 {
    padding-right: 32px;
    padding-right: 2rem;
}

.gym-pt1 {
    padding-top: 16px;
    padding-top: 1rem;
}
.gym-pt2 {
    padding-top: 32px;
    padding-top: 2rem;
}
.gym-pb1 {
    padding-bottom: 16px;
    padding-bottom: 1rem;
}
.gym-pb2 {
    padding-bottom: 32px;
    padding-bottom: 2rem;
}
.gym-pv1 {
    padding-top: 16px;
    padding-top: 1rem;
    padding-bottom: 15px;
    padding-bottom: 1rem;
}
.gym-pv2 {
    padding-top: 32px;
    padding-top: 2rem;
    padding-bottom: 32px;
    padding-bottom: 2rem;
}

/* margin all, left, right, top, bottom, vertical */
.gym-ma1 {
    margin: 16px;
    margin: 1rem;
}
.gym-ma2 {
    margin: 32px;
    margin: 2rem;
}

.gym-ml1 {
    margin-left: 16px;
    margin-left: 1rem;
}
.gym-ml2 {
    margin-left: 32px;
    margin-left: 2rem;
}
.gym-mr1 {
    margin-right: 16px;
    margin-right: 1rem;
}
.gym-mr2 {
    margin-right: 32px;
    margin-right: 2rem;
}

.gym-mt1 {
    margin-top: 16px;
    margin-top: 1rem;
}
.gym-mt2 {
    margin-top: 32px;
    margin-top: 2rem;
}
.gym-mb1 {
    margin-bottom: 16px;
    margin-bottom: 1rem;
}
.gym-mb2 {
    margin-bottom: 32px;
    margin-bottom: 2rem;
}
.gym-mv1 {
    margin-top: 16px;
    margin-top: 1rem;
    margin-bottom: 16px;
    margin-bottom: 1rem;
}
.gym-mv2 {
    margin-top: 32px;
    margin-top: 2rem;
    margin-bottom: 32px;
    margin-bottom: 2rem;
}

/* width and height */
.gym-w-100 {
    width: 100%;
}
.gym-h-100 {
    height: 100%;
}

.gym-w1 {
    width: 16px;
    width: 1rem;
}
.gym-w2 {
    width: 32px;
    width: 2rem;
}
.gym-w3 {
    width: 64px;
    width: 4rem;
}
.gym-w4 {
    width: 96px;
    width: 6rem;
}
.gym-w5 {
    width: 128px;
    width: 8rem;
}

.gym-h1 {
    height: 16px;
    height: 1rem;
}
.gym-h2 {
    height: 32px;
    height: 2rem;
}
.gym-h3 {
    height: 64px;
    height: 4rem;
}
.gym-h4 {
    height: 96px;
    height: 6rem;
}
.gym-h5 {
    height: 128px;
    height: 8rem;
}

/* nano scroller display size
   applies for tablets and up */
@media (min-width: 740px) {

    .gym-db-ns {
        display: block;
    }
    .gym-dib-ns {
        display: inline-block;
    }
    .gym-flex-ns {
        display: flex;
    }

    .gym-relative-ns {
        position: relative;
    }
    .gym-absolute-ns {
        position: absolute;
    }

    .gym-minw35-ns {
        min-width: 35rem;
    }

    .gym-tl-ns {
        text-align: left;
    }
    .gym-tc-ns {
        text-align: center;
    }
    .gym-tr-ns {
        text-align: right;
    }

    .gym-fl-ns {
        float: left;
    }
    .gym-fr-ns {
        float: right;
    }

    .gym-f1-ns {
        font-size: 44px;
        font-size: 2.50rem;
    }
    .gym-f2-ns {
        font-size: 32px;
        font-size: 2.00rem;
    }
    .gym-f3-ns {
        font-size: 24px;
        font-size: 1.5rem;
    }
    .gym-f4-ns {
        font-size: 32px;
        font-size: 1.25rem;
    }
    .gym-f5-ns {
        font-size: 16px;
        font-size: 1rem;
    }

    .gym-pa1-ns {
        padding: 1rem;
    }
    .gym-pa2-ns {
        padding: 2rem;
    }
    .gym-pl0-ns {
        padding-left: 0;
    }
    .gym-pl1-ns {
        padding-left: 1rem;
    }
    .gym-pl2-ns {
        padding-left: 2rem;
    }
    .gym-pr0-ns {
        padding-right: 0;
    }
    .gym-pr1-ns {
        padding-right: 1rem;
    }
    .gym-pr2-ns {
        padding-right: 2rem;
    }
    .gym-pt1-ns {
        padding-top: 1rem;
    }
    .gym-pt2-ns {
        padding-top: 2rem;
    }
    .gym-pb1-ns {
        padding-bottom: 1rem;
    }
    .gym-pb2-ns {
        padding-bottom: 2rem;
    }
    .gym-pv1-ns {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    .gym-pv2-ns {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .gym-ma1-ns {
        margin: 1rem;
    }
    .gym-ma2-ns {
        margin: 2rem;
    }
    .gym-ml1-ns {
        margin-left: 1rem;
    }
    .gym-ml2-ns {
        margin-left: 2rem;
    }
    .gym-mr1-ns {
        margin-right: 1rem;
    }
    .gym-mr2-ns {
        margin-right: 2rem;
    }
    .gym-mt1-ns {
        margin-top: 1rem;
    }
    .gym-mt2-ns {
        margin-top: 2rem;
    }
    .gym-mb1-ns {
        margin-bottom: 1rem;
    }
    .gym-mb2-ns {
        margin-bottom: 2rem;
    }
    .gym-mv1-ns {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
    .gym-mv2-ns {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .gym-w-100-ns {
        width: 100%;
    }
    .gym-h-100-ns {
        height: 100%;
    }

    .gym-w1-ns {
        width: 1rem;
    }
    .gym-w2-ns {
        width: 2rem;
    }
    .gym-w3-ns {
        width: 4rem;
    }
    .gym-w4-ns {
        width: 6rem;
    }
    .gym-w5-ns {
        width: 8rem;
    }

    .gym-h1-ns {
        height: 1rem;
    }
    .gym-h2-ns {
        height: 2rem;
    }
    .gym-h3-ns {
        height: 4rem;
    }
    .gym-h4-ns {
        height: 6rem;
    }
    .gym-h5-ns {
        height: 8rem;
    }
}