.ls-bx-admin-profile-dashboard-item{
    width: 510px;
    display: flex;
    margin: 0.3rem;
    border: solid 1px rgba(0,0,0,.1);
    cursor: pointer;
}

.ls-center-content {
    display: flex;
    justify-content: center;
}

.ls-center-content > div {
    width: 80%;
}

.ls-bx-admin-profile-dashboard-wrapper{
    display: flex;
    flex-wrap: wrap;
}

@media (max-width: 767px) {
    .ls-center-content > div {
        width: 95%;
    }

    .ls-bx-admin-profile-dashboard-wrapper{
        justify-content: center;
    }

    .ls-bx-admin-profile-resa-resume-wrapper{
        flex-direction: column;
    }

    .ls-bx-user-empru-item{
        flex-direction: column;
    }
}

@media (max-width: 992px) {
    .ls-user-list-empru .ls-bx-item-container{
        --item-height: auto;
    }
}

.ls-bx-admin-profile-dashboard-item .ls-profile-admin-dashboard-item-description{
    border-left: solid var(--ls-cl-grey50) 0.3rem;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    color: var(--ls-cl-grey50);
}

.ls-profile-admin-dashboard-item-title{
    font-size: 1.5rem;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
}


.ls-bx-admin-profile-dashboard-item .ls-profile-admin-dashboard-item-title,.ls-bx-admin-profile-dashboard-item .ls-profile-admin-dashboard-item-icon-wrapper{
    color: #65686a;
}

.ls-box-scrollable-y {
    overflow-y: auto;
}
.ls-box-scrollable-x {
    overflow-x: auto;
}

.ls-bx-no-min-width {
    min-width: unset;
}

.ls-bx-no-min-height {
    min-height: unset;
}


.ls-box-puce {
    height: 4vw;
    width: 4vw;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.ls-box-variable-round-puce {
    height: var(--puce-size);
    width: var(--puce-size);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.ls-box-puce * {
}

.ls-bx-tag {
    background-color: var(--lsOpac-tags-bg);
    color: var(--lsOpac-tags-color);
    padding: 0.25rem 0.5rem;
    border-radius: var(--lsOpac-button-radius);
    width: fit-content;
}

.ls-box-puce {
    height: 6rem;
    width: 6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.ls-bx-width-fit-content {
    width: fit-content;
}

.ls-bx-ribbon {
    filter: drop-shadow(0.1rem 0.15rem 0.1rem rgba(black, 0.5));
    background-color: var(--lsOpac-tags-bg);
    color: var(--lsOpac-tags-color);
    font-size: 1.25rem;
    text-align: center;
    padding: 0.5rem 0.1rem 0.8rem;
    width: 2rem;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 0.5rem), 50% 100%, 0 calc(100% - 0.5rem));
}

/* Image */

.ls-bx-image-fit-contain {
    object-fit: contain;
}

.ls-bx-image-fit-cover {
    object-fit: cover;
}

.ls-bx-banner{
    margin: unset;
}
.ls-bx-banner img{
    object-fit: cover;
    height: 100%;
}

.ls-bx-item-container{
    --item-height: 20rem;
    background-color: var(--lsOpac-block-content-bg);
    color: var(--lsOpac-block-content-color);
    height: var(--item-height);
    border-style: var(--lsOpac-block-content-border);
    border-width: var(--lsOpac-block-border-width);
    border-color: var(--lsOpac-block-content-border-color);
    border-radius: var(--lsOpac-other-content-border-radius);
    filter: var(--lsOpac-other-shadow);
}

.ls-box-warning {
    padding: 1rem 1rem 1rem 4rem;
    word-wrap: break-word;
    background-color: var(--lsOpac-not-ok-color);
    color: white;
    overflow-wrap: break-word;
    text-align: justify;
}

.ls-box-warning::before {
    content: '\e99f';
    position: absolute;
    left: 2rem;
    height: 2rem;
    width: 2rem;
    font-size: 2rem;

    /* police des icon */
    font-family: 'ls_opac_icon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.ls-box-info {
    border: solid;
    border-width: 1px 1px 1px 10px;
    border-color: var(--ls-cl-orange);
    border-left-color: var(--ls-cl-orange);
    background: url(./images/info.svg) no-repeat 1rem center;
    padding: 1rem 1rem 1rem 4rem;
    word-wrap: break-word;
    background-color: var(--ls-cl-orange-light);
    overflow-wrap: break-word;
    background-size: 2rem;
}

.ls-box-info-light {
    background: url(./images/info.svg) no-repeat 1rem center;
    padding: 0.5rem 0.5rem 0.5rem 3.5rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    background-size: 1.5rem;
    text-align: justify;
    font-size: 0.8rem;
}

.ls-bx-min-fit-content {
    min-height: fit-content;
}

/*
 *
 * LS BOX SYSTEMES 
 *
 */
.ls-box-container {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.ls-box-1 {
    width: 8.33%;
}
.ls-box-2 {
    width: 16.66%;
}
.ls-box-3 {
    width: 24.99%;
}
.ls-box-4 {
    width: 33.33%;
}
.ls-box-5 {
    width: 41.66%;
}
.ls-box-6 {
    width: 49.99%;
}
.ls-box-7 {
    width: 58.33%;
}
.ls-box-8 {
    width: 66.66%;
}
.ls-box-9 {
    width: 74.99%;
}
.ls-box-10 {
    width: 83.33%;
}
.ls-box-11 {
    width: 91.66%;
}
.ls-box-12 {
    width: 100%;
}

.ls-hbox-1 {
    height: 8.33%;
}
.ls-hbox-2 {
    height: 16.66%;
}
.ls-hbox-3 {
    height: 24.99%;
}
.ls-hbox-4 {
    height: 33.33%;
}
.ls-hbox-5 {
    height: 41.66%;
}
.ls-hbox-6 {
    height: 49.99%;
}
.ls-hbox-7 {
    height: 58.33%;
}
.ls-hbox-8 {
    height: 66.66%;
}
.ls-hbox-9 {
    height: 74.99%;
}
.ls-hbox-10 {
    height: 83.33%;
}
.ls-hbox-11 {
    height: 91.66%;
}
.ls-hbox-12 {
    height: 100%;
}

.ls-flexbox-1 {
    flex: 0 0 8.33%;
}
.ls-flexbox-2 {
    flex: 0 0 16.66%;
}
.ls-flexbox-3 {
    flex: 0 0 24.99%;
}
.ls-flexbox-4 {
    flex: 0 0 33.33%;
}
.ls-flexbox-5 {
    flex: 0 0 41.66%;
}
.ls-flexbox-6 {
    flex: 0 0 49.99%;
}
.ls-flexbox-7 {
    flex: 0 0 58.33%;
}
.ls-flexbox-8 {
    flex: 0 0 66.66%;
}
.ls-flexbox-9 {
    flex: 0 0 74.99%;
}
.ls-flexbox-10 {
    flex: 0 0 83.33%;
}
.ls-flexbox-11 {
    flex: 0 0 91.66%;
}
.ls-flexbox-12 {
    flex: 0 0 100%;
}

@media (max-width: 576px) {

    /*
    *
    * LS BOX SYSTEMES
    *
    */
    .ls-xs-box-1 {
        width: 8.33%;
    }
    .ls-xs-box-2 {
        width: 16.66%;
    }
    .ls-xs-box-3 {
        width: 24.99%;
    }
    .ls-xs-box-4 {
        width: 33.33%;
    }
    .ls-xs-box-5 {
        width: 41.66%;
    }
    .ls-xs-box-6 {
        width: 49.99%;
    }
    .ls-xs-box-7 {
        width: 58.33%;
    }
    .ls-xs-box-8 {
        width: 66.66%;
    }
    .ls-xs-box-9 {
        width: 74.99%;
    }
    .ls-xs-box-10 {
        width: 83.33%;
    }
    .ls-xs-box-11 {
        width: 91.66%;
    }
    .ls-xs-box-12 {
        width: 100%;
    }

    .ls-xs-hbox-1 {
        height: 8.33%;
    }
    .ls-xs-hbox-2 {
        height: 16.66%;
    }
    .ls-xs-hbox-3 {
        height: 24.99%;
    }
    .ls-xs-hbox-4 {
        height: 33.33%;
    }
    .ls-xs-hbox-5 {
        height: 41.66%;
    }
    .ls-xs-hbox-6 {
        height: 49.99%;
    }
    .ls-xs-hbox-7 {
        height: 58.33%;
    }
    .ls-xs-hbox-8 {
        height: 66.66%;
    }
    .ls-xs-hbox-9 {
        height: 74.99%;
    }
    .ls-xs-hbox-10 {
        height: 83.33%;
    }
    .ls-xs-hbox-11 {
        height: 91.66%;
    }
    .ls-xs-hbox-12 {
        height: 100%;
    }

    .ls-xs-flexbox-1 {
        flex: 0 0 8.33%;
    }
    .ls-xs-flexbox-2 {
        flex: 0 0 16.66%;
    }
    .ls-xs-flexbox-3 {
        flex: 0 0 24.99%;
    }
    .ls-xs-flexbox-4 {
        flex: 0 0 33.33%;
    }
    .ls-xs-flexbox-5 {
        flex: 0 0 41.66%;
    }
    .ls-xs-flexbox-6 {
        flex: 0 0 49.99%;
    }
    .ls-xs-flexbox-7 {
        flex: 0 0 58.33%;
    }
    .ls-xs-flexbox-8 {
        flex: 0 0 66.66%;
    }
    .ls-xs-flexbox-9 {
        flex: 0 0 74.99%;
    }
    .ls-xs-flexbox-10 {
        flex: 0 0 83.33%;
    }
    .ls-xs-flexbox-11 {
        flex: 0 0 91.66%;
    }
    .ls-xs-flexbox-12 {
        flex: 0 0 100%;
    }
}





 @media (min-width: 576px) {

    /*
    *
    * LS BOX SYSTEMES 
    *
    */
    .ls-sm-box-1 {
        width: 8.33%;
    }
    .ls-sm-box-2 {
        width: 16.66%;
    }
    .ls-sm-box-3 {
        width: 24.99%;
    }
    .ls-sm-box-4 {
        width: 33.33%;
    }
    .ls-sm-box-5 {
        width: 41.66%;
    }
    .ls-sm-box-6 {
        width: 49.99%;
    }
    .ls-sm-box-7 {
        width: 58.33%;
    }
    .ls-sm-box-8 {
        width: 66.66%;
    }
    .ls-sm-box-9 {
        width: 74.99%;
    }
    .ls-sm-box-10 {
        width: 83.33%;
    }
    .ls-sm-box-11 {
        width: 91.66%;
    }
    .ls-sm-box-12 {
        width: 100%;
    }

    .ls-sm-hbox-1 {
        height: 8.33%;
    }
    .ls-sm-hbox-2 {
        height: 16.66%;
    }
    .ls-sm-hbox-3 {
        height: 24.99%;
    }
    .ls-sm-hbox-4 {
        height: 33.33%;
    }
    .ls-sm-hbox-5 {
        height: 41.66%;
    }
    .ls-sm-hbox-6 {
        height: 49.99%;
    }
    .ls-sm-hbox-7 {
        height: 58.33%;
    }
    .ls-sm-hbox-8 {
        height: 66.66%;
    }
    .ls-sm-hbox-9 {
        height: 74.99%;
    }
    .ls-sm-hbox-10 {
        height: 83.33%;
    }
    .ls-sm-hbox-11 {
        height: 91.66%;
    }
    .ls-sm-hbox-12 {
        height: 100%;
    }

    .ls-sm-flexbox-1 {
        flex: 0 0 8.33%;
    }
    .ls-sm-flexbox-2 {
        flex: 0 0 16.66%;
    }
    .ls-sm-flexbox-3 {
        flex: 0 0 24.99%;
    }
    .ls-sm-flexbox-4 {
        flex: 0 0 33.33%;
    }
    .ls-sm-flexbox-5 {
        flex: 0 0 41.66%;
    }
    .ls-sm-flexbox-6 {
        flex: 0 0 49.99%;
    }
    .ls-sm-flexbox-7 {
        flex: 0 0 58.33%;
    }
    .ls-sm-flexbox-8 {
        flex: 0 0 66.66%;
    }
    .ls-sm-flexbox-9 {
        flex: 0 0 74.99%;
    }
    .ls-sm-flexbox-10 {
        flex: 0 0 83.33%;
    }
    .ls-sm-flexbox-11 {
        flex: 0 0 91.66%;
    }
    .ls-sm-flexbox-12 {
        flex: 0 0 100%;
    }
}

@media (min-width: 768px) {

    .ls-bx-admin-profile-dashboard-item{
        display: flex;
        width: calc(50% - 0.6rem );
        padding: 0.5%;
    }
    
    .ls-bx-admin-profile-dashboard-wrapper{
        display: flex;
        flex-wrap: wrap;
        padding: 2rem;
    }
    
    .ls-img-admin-dashboard-wrapper{
        flex: 1;
        border: solid;
    }

    /*
    *
    * LS BOX SYSTEMES 
    *
    */

    .ls-md-box-1 {
        width: 8.33%;
    }
    .ls-md-box-2 {
        width: 16.66%;
    }
    .ls-md-box-3 {
        width: 24.99%;
    }
    .ls-md-box-4 {
        width: 33.33%;
    }
    .ls-md-box-5 {
        width: 41.66%;
    }
    .ls-md-box-6 {
        width: 49.99%;
    }
    .ls-md-box-7 {
        width: 58.33%;
    }
    .ls-md-box-8 {
        width: 66.66%;
    }
    .ls-md-box-9 {
        width: 74.99%;
    }
    .ls-md-box-10 {
        width: 83.33%;
    }
    .ls-md-box-11 {
        width: 91.66%;
    }
    .ls-md-box-12 {
        width: 100%;
    }

    .ls-md-hbox-1 {
        height: 8.33%;
    }
    .ls-md-hbox-2 {
        height: 16.66%;
    }
    .ls-md-hbox-3 {
        height: 24.99%;
    }
    .ls-md-hbox-4 {
        height: 33.33%;
    }
    .ls-md-hbox-5 {
        height: 41.66%;
    }
    .ls-md-hbox-6 {
        height: 49.99%;
    }
    .ls-md-hbox-7 {
        height: 58.33%;
    }
    .ls-md-hbox-8 {
        height: 66.66%;
    }
    .ls-md-hbox-9 {
        height: 74.99%;
    }
    .ls-md-hbox-10 {
        height: 83.33%;
    }
    .ls-md-hbox-11 {
        height: 91.66%;
    }
    .ls-md-hbox-12 {
        height: 100%;
    }

    .ls-md-flexbox-1 {
        flex: 0 0 8.33%;
    }
    .ls-md-flexbox-2 {
        flex: 0 0 16.66%;
    }
    .ls-md-flexbox-3 {
        flex: 0 0 24.99%;
    }
    .ls-md-flexbox-4 {
        flex: 0 0 33.33%;
    }
    .ls-md-flexbox-5 {
        flex: 0 0 41.66%;
    }
    .ls-md-flexbox-6 {
        flex: 0 0 49.99%;
    }
    .ls-md-flexbox-7 {
        flex: 0 0 58.33%;
    }
    .ls-md-flexbox-8 {
        flex: 0 0 66.66%;
    }
    .ls-md-flexbox-9 {
        flex: 0 0 74.99%;
    }
    .ls-md-flexbox-10 {
        flex: 0 0 83.33%;
    }
    .ls-md-flexbox-11 {
        flex: 0 0 91.66%;
    }
    .ls-md-flexbox-12 {
        flex: 0 0 100%;
    }
}

@media (min-width: 992px) {

    .ls-bx-admin-profile-dashboard-item{
        width: calc(33% - 0.6rem );
        padding: 1%;
    }

    /*
    *
    * LS BOX SYSTEMES 
    *
    */
    .ls-lg-box-1 {
        width: 8.33%;
    }
    .ls-lg-box-2 {
        width: 16.66%;
    }
    .ls-lg-box-3 {
        width: 24.99%;
    }
    .ls-lg-box-4 {
        width: 33.33%;
    }
    .ls-lg-box-5 {
        width: 41.66%;
    }
    .ls-lg-box-6 {
        width: 49.99%;
    }
    .ls-lg-box-7 {
        width: 58.33%;
    }
    .ls-lg-box-8 {
        width: 66.66%;
    }
    .ls-lg-box-9 {
        width: 74.99%;
    }
    .ls-lg-box-10 {
        width: 83.33%;
    }
    .ls-lg-box-11 {
        width: 91.66%;
    }
    .ls-lg-box-12 {
        width: 100%;
    }

    .ls-lg-hbox-1 {
        height: 8.33%;
    }
    .ls-lg-hbox-2 {
        height: 16.66%;
    }
    .ls-lg-hbox-3 {
        height: 24.99%;
    }
    .ls-lg-hbox-4 {
        height: 33.33%;
    }
    .ls-lg-hbox-5 {
        height: 41.66%;
    }
    .ls-lg-hbox-6 {
        height: 49.99%;
    }
    .ls-lg-hbox-7 {
        height: 58.33%;
    }
    .ls-lg-hbox-8 {
        height: 66.66%;
    }
    .ls-lg-hbox-9 {
        height: 74.99%;
    }
    .ls-lg-hbox-10 {
        height: 83.33%;
    }
    .ls-lg-hbox-11 {
        height: 91.66%;
    }
    .ls-lg-hbox-12 {
        height: 100%;
    }

    .ls-lg-flexbox-1 {
        flex: 0 0 8.33%;
    }
    .ls-lg-flexbox-2 {
        flex: 0 0 16.66%;
    }
    .ls-lg-flexbox-3 {
        flex: 0 0 24.99%;
    }
    .ls-lg-flexbox-4 {
        flex: 0 0 33.33%;
    }
    .ls-lg-flexbox-5 {
        flex: 0 0 41.66%;
    }
    .ls-lg-flexbox-6 {
        flex: 0 0 49.99%;
    }
    .ls-lg-flexbox-7 {
        flex: 0 0 58.33%;
    }
    .ls-lg-flexbox-8 {
        flex: 0 0 66.66%;
    }
    .ls-lg-flexbox-9 {
        flex: 0 0 74.99%;
    }
    .ls-lg-flexbox-10 {
        flex: 0 0 83.33%;
    }
    .ls-lg-flexbox-11 {
        flex: 0 0 91.66%;
    }
    .ls-lg-flexbox-12 {
        flex: 0 0 100%;
    }
}

@media (min-width: 1200px) {

    /*
    *
    * LS BOX SYSTEMES 
    *
    */
    .ls-xl-box-1 {
        width: 8.33%;
    }
    .ls-xl-box-2 {
        width: 16.66%;
    }
    .ls-xl-box-3 {
        width: 24.99%;
    }
    .ls-xl-box-4 {
        width: 33.33%;
    }
    .ls-xl-box-5 {
        width: 41.66%;
    }
    .ls-xl-box-6 {
        width: 49.99%;
    }
    .ls-xl-box-7 {
        width: 58.33%;
    }
    .ls-xl-box-8 {
        width: 66.66%;
    }
    .ls-xl-box-9 {
        width: 74.99%;
    }
    .ls-xl-box-10 {
        width: 83.33%;
    }
    .ls-xl-box-11 {
        width: 91.66%;
    }
    .ls-xl-box-12 {
        width: 100%;
    }

    .ls-xl-hbox-1 {
        height: 8.33%;
    }
    .ls-xl-hbox-2 {
        height: 16.66%;
    }
    .ls-xl-hbox-3 {
        height: 24.99%;
    }
    .ls-xl-hbox-4 {
        height: 33.33%;
    }
    .ls-xl-hbox-5 {
        height: 41.66%;
    }
    .ls-xl-hbox-6 {
        height: 49.99%;
    }
    .ls-xl-hbox-7 {
        height: 58.33%;
    }
    .ls-xl-hbox-8 {
        height: 66.66%;
    }
    .ls-xl-hbox-9 {
        height: 74.99%;
    }
    .ls-xl-hbox-10 {
        height: 83.33%;
    }
    .ls-xl-hbox-11 {
        height: 91.66%;
    }
    .ls-xl-hbox-12 {
        height: 100%;
    }

    .ls-xl-flexbox-1 {
        flex: 0 0 8.33%;
    }
    .ls-xl-flexbox-2 {
        flex: 0 0 16.66%;
    }
    .ls-xl-flexbox-3 {
        flex: 0 0 24.99%;
    }
    .ls-xl-flexbox-4 {
        flex: 0 0 33.33%;
    }
    .ls-xl-flexbox-5 {
        flex: 0 0 41.66%;
    }
    .ls-xl-flexbox-6 {
        flex: 0 0 49.99%;
    }
    .ls-xl-flexbox-7 {
        flex: 0 0 58.33%;
    }
    .ls-xl-flexbox-8 {
        flex: 0 0 66.66%;
    }
    .ls-xl-flexbox-9 {
        flex: 0 0 74.99%;
    }
    .ls-xl-flexbox-10 {
        flex: 0 0 83.33%;
    }
    .ls-xl-flexbox-11 {
        flex: 0 0 91.66%;
    }
    .ls-xl-flexbox-12 {
        flex: 0 0 100%;
    }
}


/*
 *
 *  LS adaptive height systemes
 *
 */

.ls-max-height-25{
    max-height: 25%;
}

.ls-max-height-33{
    max-height: 33%;
}

.ls-max-height-50{
    max-height: 50%;
}

.ls-max-height-66{
    max-height: 66%;
}

.ls-max-height-75{
    max-height: 75%;
}

.ls-max-height-100{
    max-height: 100%;
}


.ls-max-width-25{
    max-width: 25%;
}

.ls-max-width-33{
    max-width: 33%;
}

.ls-max-width-50{
    max-width: 50%;
}

.ls-max-width-66{
    max-width: 66%;
}

.ls-max-width-75{
    max-width: 75%;
}

.ls-max-width-100{
    max-width: 100%;
}

.ls-bx-front-heart-wrapper{
    border: solid var(--lsOpac-block-content-border-color) var(--lsOpac-block-content-border-width);
    border-radius: var(--lsOpac-other-content-border-radius);
}

.ls-bx-archive-buffer {
    font-size: 5rem;
    transform: rotate(-45deg);
    border: red dashed;
    color: red;
    padding: 0.5rem;
    background: white;
    opacity: 0.5;
}

/* tableau horaires */
.ls-bx-tab-horaires{
    display: grid;
    grid-template-columns: 10ch 13ch auto;
    overflow: hidden;
    min-height: 4rem;


    margin: 0.25rem;
}


.ls-bx-tab-horaires-morning, .ls-bx-tab-horaires-afternoon{
    border-style: solid;
    border-color: var(--ls-low-contrast-block-body);
    border-width: 1px;
    border-right-width: 0;
}

.ls-bx-tab-comment{
    border-style: solid;
    border-color: var(--ls-low-contrast-block-body);
    border-width: 1px;
    border-left-width: 0;
}

.ls-bx-tab-comment.ls-bx-tab-comment-afternoon, .ls-bx-tab-horaires-afternoon{
    border-top-width: 0;
}

.ls-bx-tab-horaires > .ls-bx-tab-horaires-day {
   border: solid 1px var(--md-primary-color);
    color: var(--md-primary-color);
}

.ls-bx-tab-horaires-day {
    grid-row: span 2;
}

.ls-bx-tab-horaires-cell {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    overflow-wrap: break-word;
    box-sizing: border-box;
}

.ls-bx-tab-horaires-cell.ls-text-one-line {
    display: flex;
}

.ls-bx-tab-horaires-cell.ls-bx-tab-comment {
    justify-content: start;
}
.ls-bx-tab-horaires > .ls-bx-tab-horaires-day.ls-bx-tab-horaires-today {
    background-color: var(--lsOpac-block-header-bg);
    color: var(--lsOpac-block-header-color);
}

.modal-lg.ls-classic-modal, .modal-lg.ls-header-left-modal{
    width:80%;
    max-width: 100%;
}

@media (max-width: 992px) {
    .ls-bx-search-bar-advanced-options{
        width: 100vw;
    }
}

/* media query pour autocomplete*/
@media (max-width: 768px) {

    ul.search-api-autocomplete-search{
        width: 100vw!important;
        left: 0!important;
    }
}

@media (min-width: 576px) {

    .ls-bx-autocomplete-notice-infos{
        flex: 1;
    }
}

@media (max-width: 576px) {
    .modal-lg.ls-classic-modal{
        width: auto;
    }
}


/* User Login interface */

.ls-user-login-box-container {
    display: flex;
    align-items: center;
    justify-content: center;
    
}

@media (max-width: 768px) {

    .ls-user-login-box-container {
        min-width: 100%;
    }
}

/* sidebar */

.ls-bx-sidebar-right {
    --ls-bx-sidebar-right-width: 33vw;
    position: fixed;
    z-index: 1001;
    right: calc(0rem - var(--ls-bx-sidebar-right-width));
    top: 0;
    padding-left: 1rem;
    padding-right: 1rem;
    width: var(--ls-bx-sidebar-right-width);
    height: 100%;

    background-color: var(--lsOpac-block-content-bg);
    color: var(--lsOpac-block-content-color);

    box-shadow: 0px 2px 16px rgb(0 0 0 / 50%);
}

.ls-bx-shadow {
    box-shadow: 0px 0.2rem 1rem rgb(0 0 0 / 50%);
}

.ls-bx-sidebar-right:not(.ls-active) {
    visibility: hidden;
    opacity: 0;
    right: 0;
    transition: visibility 0.5s, opacity 0.5s linear;
    animation: slideOutRight 0.5s forwards;
}

.ls-bx-sidebar-right.ls-active {
    visibility: visible;
    opacity: 1;
    animation: slideInRight 0.5s forwards;
}

.ls-bx-sidebar-right.ls-bx-sidebar-form {
    --ls-bx-sidebar-right-width: 70%;
    display: flex;
    padding: 0;
    box-shadow: unset;
    background-color: unset;
}

@keyframes slideInRight {
    100% { right: 0; }
}
@keyframes slideOutRight {
    100% { right: calc(0rem - var(--ls-bx-sidebar-right-width));}
}
@media (max-width: 768px) {

    .ls-bx-sidebar-right, .ls-bx-sidebar-right.ls-bx-sidebar-form {
        --ls-bx-sidebar-right-width: 100%;
    }
}

/* black screen */

.ls-bx-black-screen {
    position: fixed;
    width: 100%;
    height: 100%;
    top:0;
    left:0;

    background-color: var(--ls-high-contrast-page);
    opacity: 0.5;
    z-index: 1000;
    cursor: pointer;
}

.ls-bx-black-screen:not(.ls-active) {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 0.5s linear;
}

.ls-bx-black-screen.ls-active{
    visibility: visible;
    transition: visibility 0.5s, opacity 0.5s linear;
}

/* erreur connexion */
#errorLoginMessage {
    padding: 1rem;
    color: var(--lsOpac-not-ok-color);
    padding: 1rem;
    border: solid var(--lsOpac-not-ok-color);
    background-color: var(--lsOpac-not-ok-background-color);
}

#errorLoginMessage a {
    text-decoration: underline;
    color: #000000;
}
#errorLoginMessage a:hover {
    color: var(--ls-cl-grey50);
}

/* Breadcrumb */

.ls-breadcrumb {
    --ls-breadcrumb-border-radius: 0.3rem;
    --ls-breadcrumb-font-size: 1rem;
    --ls-breadcrumb-height: 1.6rem;
    --ls-breadcrumb-bg-button: var(--md-button-primary-color);
    --ls-breadcrumb-color-button: var(--md-button-primary-text-color);
    --ls-breadcrumb-bg-button-active: var(--md-button-primary-darker);
    --ls-breadcrumb-color-button-active: var(--md-button-primary-text-color);
    --ls-breadcrumb-color-border-color: var(--lsOpac-button-border-color);
    --ls-breadcrumb-color-border-width: var(--lsOpac-button-border-width);
    /*centering*/
	display: inline-block;
	box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.35);
	overflow: hidden;
	border-radius: var(--ls-breadcrumb-border-radius);
	/*Lets add the numbers for each link using CSS counters. flag is the name of the counter. to be defined using counter-reset in the parent element of the links*/
	counter-reset: flag;
}

.ls-breadcrumb a {
	text-decoration: none;
	outline: none;
	display: flex;
    align-items: center;
	float: left;
	font-size: var(--ls-breadcrumb-font-size);
	line-height: var(--ls-breadcrumb-height);
	color: var(--ls-breadcrumb-bg-button);
	/*need more margin on the left of links to accomodate the numbers*/
	padding: 0 calc(calc(var(--ls-breadcrumb-height)/2) + 0.6rem) 0 calc(calc(0.6*var(--ls-breadcrumb-height)) + calc(calc(var(--ls-breadcrumb-height)/2) + 1rem) + 0.6rem);
	background: linear-gradient(#666, #333);
	position: relative;

    background: var(--ls-breadcrumb-bg-button);
	color: var(--ls-breadcrumb-color-button);
	transition: all 0.5s;
}
/*since the first link does not have a triangle before it we can reduce the left padding to make it look consistent with other links*/
.ls-breadcrumb a:first-child {
	padding-left: calc(calc(0.6*var(--ls-breadcrumb-height)) + 1.6rem);
	border-radius: var(--ls-breadcrumb-border-radius) 0 0 var(--ls-breadcrumb-border-radius); /*to match with the parent's radius*/
}
.ls-breadcrumb a:first-child:before {
	left: 1rem;
}
.ls-breadcrumb a:last-child {
	border-radius: 0 var(--ls-breadcrumb-border-radius) var(--ls-breadcrumb-border-radius) 0; /*this was to prevent glitches on hover*/
	padding-right: 1.5rem;
}

/*hover/active styles*/
.ls-breadcrumb a.ls-active, .ls-breadcrumb a:hover, .ls-breadcrumb a.ls-active:after, .ls-breadcrumb a:hover:after {
	background: var(--ls-breadcrumb-bg-button-active);
    color: var(--ls-breadcrumb-color-button-active);
}

.ls-breadcrumb a.ls-active,  .ls-breadcrumb a.ls-active:after {
    pointer-events: none;
}

/*adding the arrows for the breadcrumbs using rotated pseudo elements*/
.ls-breadcrumb a:after {
	content: '';
	position: absolute;
	top: 0; 
	right: calc(0rem - calc(var(--ls-breadcrumb-height)/2)); /*half of square's length*/
	/*same dimension as the line-height of .ls-breadcrumb a */
	width: var(--ls-breadcrumb-height); 
	height: var(--ls-breadcrumb-height);
	/*as you see the rotated square takes a larger height. which makes it tough to position it properly. So we are going to scale it down so that the diagonals become equal to the line-height of the link. We scale it to 70.7% because if square's: 
	length = 1; diagonal = (1^2 + 1^2)^0.5 = 1.414 (pythagoras theorem)
	if diagonal required = 1; length = 1/1.414 = 0.707*/
	transform: scale(0.707) rotate(45deg);
	/*we need to prevent the arrows from getting buried under the next link*/
	z-index: 1;
	/*background same as links but the gradient will be rotated to compensate with the transform applied*/
	background: linear-gradient(135deg, #666, #333);
	/*stylish arrow design using box shadow*/
	box-shadow: 
		0.15rem -0.15rem 0 0.15rem rgba(0, 0, 0, 0.4), 
		0.2rem -0.2rem 0 0.15rem rgba(255, 255, 255, 0.1);
	/*
		5px - for rounded arrows and
		50px - to prevent hover glitches on the border created using shadows*/
	border-radius: 0 var(--ls-breadcrumb-border-radius) 0 4rem;
  	background: var(--md-button-primary-lighter);
	color: var(--md-button-primary-text-color);
	transition: all 0.5s;
}
/*we dont need an arrow after the last link*/
.ls-breadcrumb a:last-child:after {
	content: none;
}
/*we will use the :before element to show numbers*/
.ls-breadcrumb a:before {
	content: counter(flag);
	counter-increment: flag;
	/*some styles now*/
	border-radius: 100%;
	width: calc(0.6*var(--ls-breadcrumb-height));
	height: calc(0.6*var(--ls-breadcrumb-height));
	line-height: calc(0.6*var(--ls-breadcrumb-height));
	position: absolute;
	left: calc(calc(var(--ls-breadcrumb-height)/2) + 1rem);
	font-weight: bold;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--md-button-primary-lighter);
    color: var(--md-button-primary-text-color);
    border: solid var(--ls-breadcrumb-color-border-width) var(--ls-breadcrumb-color-border-color);
    box-sizing: content-box;
}

/* searchBar */

.ls-bx-search-bar-wrapper {
    --ls-bx-search-bar-height: 2.5rem;
    display: flex;
    align-items: center;
    position: relative;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 0.1rem 0.3rem;
    border-radius: 0.3rem;
    background-color: #fff;
    color: #000000;
    min-width: 50%
}

.ls-bx-search-bar-wrapper .ls-bx-search-bar-input {
    height: var(--ls-bx-search-bar-height);
    background-color: unset;
    padding-left: 0.5rem;
    flex:1;
}

.ls-bx-search-bar-button{
    height: var(--ls-bx-search-bar-height);
    display: flex;
    align-items: center;
    padding: 1rem;
    background-color: var(--md-button-primary-color);
    color: var(--md-button-primary-text-color);
    border-top-right-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}

.ls-bx-search-bar-button:hover{
  color: var(--md-button-primary-text-color);
}

.ls-bx-search-bar-wrapper input.form-autocomplete.ls-bx-search-bar-input {
    background-image: none;
    border: none;
}

.ls-bx-search-bar-wrapper .ls-custom-select {
    height: var(--ls-bx-search-bar-height);
    border-right: solid 0.1rem #ccc;
}

.ls-bx-search-bar-wrapper .ls-custom-select:not(:focus) input:checked + label {
    background-color: unset;
}

.ls-bx-search-bar-wrapper .ls-custom-select label, .ls-bx-search-bar-wrapper .ls-select-link  {
    min-height: var(--ls-bx-search-bar-height);
}

.ls-bx-search-bar-wrapper .ls-custom-select:not(:focus){
    padding: 0 1.75rem 0 0.5rem;
}

.ls-bx-search-bar-wrapper .ls-select-link:not(.ls-custom-select .ls-select-link){
    padding: 0 1rem;
    border-top-left-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem;
}
    
/*
.ls-bx-search-bar-wrapper .ls-custom-select:not(:focus)::after{
    content: '\e995';
    font-size: 1rem;
    position: absolute;
    right: 0.5rem;
    font-family: 'ls_opac_icon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
*/

.ls-bx-search-bar-wrapper .ls-icon-container {
	padding-right: 0.5rem;
}

/* Barre d'administration */

.ls-bx-admin-bar-wrapper {
    --ls-bx-admin-reduce-width: 4rem;
    height: 100%;
    padding-left: var(--ls-bx-admin-reduce-width);
    position: relative;
}

.ls-bx-admin-bar {
    height: 100%;
    background-color: var(--lsOpac-page-site-info-bgcolor);
    color: var(--lsOpac-page-site-info-text-color);
    position: absolute;
    left: 0;
    z-index: 1001;
    padding: 0.5rem;
    gap: 1rem;
    max-width: var(--ls-bx-admin-reduce-width);
    transition: max-width 1s;
}

.ls-bx-admin-bar:hover{
    max-width: 20rem;
}

.ls-bx-admin-bar-item{
    color: var(--lsOpac-page-site-info-text-color);
    cursor: pointer;
    padding: 0.5rem;
}

.ls-bx-admin-bar-item:hover{
    color: var(--lsOpac-page-site-info-text-color);
    background-color: var(--lsOpac-page-site-info-bgcolor-darker);
    border-radius:0.2rem;
}

.ls-bx-admin-bar-item i {
    font-size: 2rem;
}

.ls-bx-admin-bar-icon-info {
    visibility: hidden;
    width: 0rem;
    overflow: hidden;
    white-space: nowrap;
    transition: width 0.75s;
    transition-delay: 0s;
}

.ls-bx-admin-bar:hover .ls-bx-admin-bar-icon-info{
    visibility: visible;
    width: 15rem;
    transition: width 1.25s;
}

.ls-bx-admin-bar:hover .ls-bx-admin-bar-item {
	gap: 1rem
}

.ls-bx-admin-bar:hover {
	align-items: flex-start;
}

@media (min-width: 768px) {
    .ls-bx-admin-bar-item i {
        font-size: 1.5rem;
    }

    .ls-bx-admin-bar-wrapper {
        --ls-bx-admin-reduce-width: 3rem;
    }

    .ls-bx-admin-bar-wrapper hr {
        --ls-bx-admin-reduce-width: 3rem;
        margin: 0.25rem;
        margin-top: 0.75rem;
        margin-bottom: 0.75rem;
        width: calc(100% - 0.5rem);
    }
}

/* @media (min-width: 1200px) {
    .ls-bx-admin-bar-item i {
        font-size: 1rem;
    }

    .ls-bx-admin-bar-wrapper {
        --ls-bx-admin-reduce-width: 2rem;
    }

    .ls-bx-admin-bar-wrapper hr {
        --ls-bx-admin-reduce-width: 3rem;
        margin: 0.25rem;
        margin-top: 0.5rem;
        margin-bottom: 0.5rem;
        width: calc(100% - 0.5rem);
    }
} */

/* header */

.ls-bx-header-page {
    width: 100%;
    top: 0;
    z-index: 600;
    /*background: linear-gradient(180deg, var(--lsOpac-page-header-bg) 20%, transparent 100%);*/
    background-color: var(--lsOpac-page-header-bg);
    transition: background-color 0.6s;
    position:sticky;
    margin-bottom: calc(0rem - var(--lsOpac-page-header-height));
    padding-right: calc(calc(var(--ls-bx-info-bar-height) * 2) - 2.5rem); /* prendre en compte la taille du header, la taille de la navbar et le padding du header*/
}
.ls-bx-header-page:hover {
    background-color: var(--lsOpac-page-header-bg);
}
#ls-page-wrapper.ls-scrolled .ls-bx-header-page {
    background-color: var(--lsOpac-page-header-bg);
}

.ls-bx-header-space-top {
    padding-top: var(--lsOpac-page-header-height);
}
/* LS MAIN MENU */

.ls-main-menu {
    color: var(--lsOpac-page-header-color);
    background-color: transparent;
    list-style: none;
    display: flex;
    justify-content: center;

    align-items: center;
    padding: 0;
    gap: 1rem;

}

.ls-main-menu a {
    color: var(--lsOpac-page-header-color);
    padding: 0.5rem;
}

.ls-main-menu .ls-active > a:not(.ls-sub-menu a) {
    background-color: var(--md-button-primary-darker);
    color: var(--md-button-primary-text-color);
}
.ls-main-menu a:not(.ls-sub-menu a) {
    border-radius: 0.3rem;

}

.ls-main-menu a:hover {
    background-color: var(--md-button-primary-darker)!important;
    color: var(--md-button-primary-text-color)!important;
}

.ls-main-menu > li {
    display: flex;
    justify-content: center;
    position: relative;
    font-size: 1.1rem;
    font-weight: bold;
}


.ls-main-menu > li > ul {
    visibility: hidden;
    height: 0;
}

.ls-main-menu > li:hover > ul {
    visibility: visible;
    height: unset;
}

.ls-main-menu.ls-sub-menu > li {
   width: 100%;
   display: flex;
}

.ls-main-menu.ls-sub-menu > li > a{
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0.5rem;
    display: flex;
    background-color: var(--lsOpac-page-header-bg);
}

.ls-main-menu.ls-sub-menu > li > a.ls-active {
    background-color: var(--lsOpac-active-button-bg);
    color: var(--lsOpac-active-button-text-color);
}

.ls-main-menu.ls-sub-menu > li:hover {
}

.ls-main-menu.ls-sub-menu > li:hover > ul {
    top: 0;
    left: 100%;
}


.ls-main-menu.ls-sub-menu {
    min-width: 10rem;
    position: absolute;
    display: flex;
    flex-direction: column;
    z-index: 610;
    top: 100%;
    
    gap: 0;
    align-items: flex-start;
    box-shadow: rgb(50 50 93 / 25%) 0rem 0.4rem 0.8rem -0.15rem, rgb(0 0 0 / 30%) 0rem 0.2rem 0.5rem -0.2rem;
}

/* banni�re header */

.ls-bx-hero-banner-header {
    --ls-bx-hero-banner-header-height: 20vh;
    width: 100%;
    height: calc(var(--ls-bx-hero-banner-header-height) + var(--lsOpac-page-header-height));
    position: relative;
    /* background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position-x: center; */


    box-shadow: rgb(0 0 0 / 35%) 0rem -3rem 2rem -1.8rem inset, rgb(0 0 0 / 35%) 0rem 3rem 1rem -1.8rem inset;

    display: flex;
    overflow: hidden;
}

.ls-bx-hero-banner-header-parallax {
    height: calc(var(--ls-bx-hero-banner-header-height) + var(--lsOpac-page-header-height));
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    z-index: 0;
}

.ls-bx-hero-banner-curved {
    border-radius: 0 0 50% 50% / 15%;
}

.ls-bx-hero-banner-diagonal-right {
    clip-path: polygon(0 0, 100% 0, 100% 75%, 0 100%);
}

.ls-bx-hero-banner-diagonal-left {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 75%);
}

.ls-bx-hero-banner-header-text-area {
    padding-top: var(--lsOpac-page-header-height);
    display: flex;
    flex:1;
    flex-direction: column;
    box-shadow: rgb(0 0 0 / 35%) 0rem -3rem 2rem -1.8rem inset, rgb(0 0 0 / 35%) 0rem 3rem 1rem -1.8rem inset;
    z-index: 1;
}

.ls-bx-hero-banner-header-message-wrapper {
    display: flex;
    flex:1;
    justify-content: center;
    text-align: center;
}

.ls-bx-admin-profile-resa-resume-item{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.ls-bx-admin-profile-resa-resume-circle{
    height:4rem;
    width:4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.ls-bx-admin-profile-resa-resume-info{
    display: flex;
    flex-direction: column;
    flex: 1;
    justify-content: space-between;
}

/* Barre d'information */

.ls-bx-info-bar {
    background-color: var(--lsOpac-page-site-info-bgcolor);
    color: var(--lsOpac-page-site-info-text-color);
    padding: 0.25rem;
    display: flex;
    justify-content: space-between;
    height: var(--ls-bx-info-bar-height);
    position: relative;
    gap: 1rem;
}

.ls-bx-info-bar-button {
    color: var(--lsOpac-page-site-info-text-color);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.3rem;
    width: fit-content;
    padding: 0.25rem 0.5rem;
    gap: 0.25rem;
}

.ls-bx-info-bar-button:hover {
    background-color: var(--lsOpac-page-site-info-bgcolor-darker);
    color: var(--lsOpac-page-site-info-text-color);
}

.ls-bx-info-bar-button-special-shape {
    height: calc(2*var(--ls-bx-info-bar-height));
    aspect-ratio: 1/1;
    position: relative;
    margin-top: -0.25rem;
    display: flex;
    padding: 0.25rem;
    margin-left: calc(0.4 * calc(4*var(--ls-bx-info-bar-height)));
    font-size: calc(var(--ls-bx-info-bar-height)/1.5);
}

.ls-bx-info-bar-right-side-wrapper {
    z-index: 700;
}


.ls-bx-info-bar::after{
    content: '';
    mask: url(/modules/custom/opac_manage/images/menu_accessibillity.svg);
    -webkit-mask: url(/modules/custom/opac_manage/images/menu_accessibillity.svg);
    z-index: 699;
    background-color: var(--lsOpac-page-site-info-bgcolor);
    height: 200%;
    aspect-ratio: 2/1;
    right: 0;
    top: 0;
    position: absolute;
}


.ls-bx-custom-icon-container {
    --custom-icon-height: 1rem;
    --custom-icon-width: 1rem;
    --custom-icon-color: var(--lsOpac-tags-color);

    display: flex;
    justify-content: center;
    align-items: center;

    height: var(--custom-icon-height);
    width: var(--custom-icon-width);

    font-size: calc(var(--custom-icon-height)/1.5);
}

.ls-bx-custom-icon-container > svg {
    height: 100%;
    width: 100%;
}

.ls-bx-custom-icon-container > svg * {
    fill: var(--custom-icon-color);
}

/* RDV */
.rdv-day-item{
    width: 14.28%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    flex: 0 0 auto;
    box-sizing: border-box;
    text-align:center;
}

.rdv-day-item.current-active-day{
    background-color: var(--lsOpac-active-button-bg);
    color: var(--lsOpac-active-button-text-color);
}

.slot-wrapper.ls-active{
    border: solid 1px var(--lsOpac-block-header-bg);
    color: var(--lsOpac-page-color);
}

.ls-bx-image-format{
    --image-format : 15/21;
    aspect-ratio : var(--image-format);
}


/* ONGLETS */

.ls-lateral-onglets {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    position: relative;
    align-items: flex-end;
    margin-top: 0.5rem;
}

.ls-lateral-onglet {
    background-color: var(--lsOpac-block-content-bg);
    right: 0;
    box-shadow: -0.5rem 0.2rem 0.5rem rgb(0 0 0 / 50%);
    list-style: none;
    height: 7vh;
    width: 7vh;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 100%;
    cursor: pointer;
    transition: width 0.5s, background-color 0.5s;
    font-size: 3vh;
}

.ls-lateral-onglet:hover {
    width: 8vh;
    background-color: var(--md-button-primary-darker);
    color: var(--md-button-primary-text-color);
}

.ls-lateral-onglet.ls-active {
    z-index: 11;
    width: 10vh;
    background-color: var(--md-button-primary-color);
    color: var(--md-button-primary-text-color);
}

.ls-modal-change-title:not(.ls-active) {
    display: none;
}


/* QR-CODE */
.ls-bx-qr-code {
    --qr-code-height: 5rem;
    height: var(--qr-code-height);
    aspect-ratio: 1/1;
}

.ls-bx-teaser-image-when-no-image{
    --teaser-image-when-no-image-bg-color : var(--ls-low-contrast-page);
    background-color: var(--teaser-image-when-no-image-bg-color);
    filter: blur(2px);
}

.ls-block-content .ls-bx-teaser-image-when-no-image{
    --teaser-image-when-no-image-bg-color : var(--ls-low-contrast-block-body);
}

footer .ls-bx-teaser-image-when-no-image{
    --teaser-image-when-no-image-bg-color : var(--ls-low-contrast-page-footer);
}

/* Resizable box pour gutenberg */
.ls-resizable-absolute-box {
    background: var(--ls-resizable-box-background);
    z-index: 2;
    position: absolute;
    left: var(--ls-resizable-box-left);
    top: var(--ls-resizable-box-top);
    width: var(--ls-resizable-box-width);
    height: var(--ls-resizable-box-height);
    color: var(--ls-resizable-box-color);
}

.ls-resizable-box-draggable-area {
    background: var(--lsOpac-admin-background);
    color: var(--lsOpac-admin-color);
    height: 1.5rem;
    width: 1.5rem;
    position: absolute;
    top: 0px;
    right: 0.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
}

.ls-resizable-box-draggable-area::before {
    content: "\ea12";
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'ls_opac_icon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.ls-resizable-absolute-box:not(:hover) > .ls-resizable-box-draggable-area {
    display: none;
}

.ls-resizable-absolute-box > figure {
    display: flex;
    flex: 1;
}

.ls-resizable-absolute-box > figure img, .ls-resizable-absolute-box > figure video  {
    object-fit: var(--ls-fit-content);
    flex: 1;
}


/* Liste des abonnements (admin) */
.ls-bx-admin-abo-table {
    border-collapse: collapse;
}

.ls-bx-admin-abo-table tr:nth-child(even){
    background-color: var(--ls-cl-grey10);
}

.ls-bx-admin-abo-table td, .ls-bx-admin-abo-table th {
    border: 1px solid var(--ls-cl-grey80);
    padding: 0.5rem;
}

.ls-bx-admin-abo-table th {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    text-align: left;
    background-color: var(--ls-cl-orange);
    color: var(--ls-cl-white);
}

.ls-bx-info{
    color: #0e616e;
    background-color: #d1ecf1;
    padding: 1rem 1rem;
    border: 0 solid #b9e3ea;
    border-radius: 0.25rem;
}

/* User Info Box exemple
 <div class="ls-user-info ls-user-info-fail">
            <div class="icon">
              <i class="fa fa-frown-o" aria-hidden="true"></i>
            </div>
            <h1>Oh! Something went wrong!</h1>
            <p>Go back and refresh the page.</p>
            <p>Contact us if this still apear.</p>

      </div>
 */

.ls-user-info {
    display: flex;
    width: 100%;
    background-color: var(--ls-cl-white);
    border: solid 0.1rem var(--ls-cl-grey20);
    position: relative;
}

.ls-user-info .icon-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    font-size: 2rem;
    color: var(--ls-cl-white);
    min-width: 5rem;
    border-top-right-radius: 50%;
    border-bottom-right-radius: 50%;
}

.ls-user-info-success .icon-wrapper {
    background-color: #d1ecf1;
}

.ls-user-info-fail .icon-wrapper {
    background-color: #ff0000;
}

.ls-user-info .icon i {
    font-size: 3rem;
    color: var(--ls-cl-white);
}

.ls-user-info .info-content-wrapper {
    display: flex;
    flex-direction: column;
    padding: 0.5rem;
    justify-content: center;
}

.ls-user-info h1 {
    font-size: 1rem;
    font-weight: bolder;
    padding-top: 0.2rem;
    padding-bottom: 0.5rem;
    margin: 0px
}

.ls-user-info {
    text-align: justify;
    font-size: 0.8rem;
    padding-top: 0px;
}

.ls-user-info-description{
    font-size: 0.8rem;
}


/***************  user pages tabs  ********************/
.ls-pages-tabs {
    --ls-pagestabs-border-radius: 0.3rem;
    --ls-pagestabs-height: 1.5rem;
    --ls-pagestabs-bg-button: var(--lsOpac-button-bg);
    --ls-pagestabs-color-button: var(--lsOpac-button-text-color);
    --ls-pagestabs-bg-button-active: var(--lsOpac-active-button-bg);
    --ls-pagestabs-color-button-active: var(--lsOpac-active-button-text-color);
    --ls-pagestabs-color-border-color: var(--lsOpac-button-border-color);
    --ls-pagestabs-color-border-width: var(--lsOpac-button-border-width);
    /*centering*/
    display: inline-flex;
    box-shadow: 0 0 1rem 0.1rem rgba(0, 0, 0, 0.35);
    overflow: hidden;
    border-radius: var(--ls-pagestabs-border-radius);
    /*Lets add the numbers for each link using CSS counters. flag is the name of the counter. to be defined using counter-reset in the parent element of the links*/
}

.ls-pages-tabs a {
    text-decoration: none;
    display: flex;
    gap: 0.5rem;
    align-items: center;
    justify-content: center;
    line-height: var(--ls-pagestabs-height);
    /*need more margin on the left of links to accomodate the numbers*/
    padding: 0.5rem;
    background: linear-gradient(#666, #333);

    background: var(--ls-pagestabs-bg-button);
    color: var(--ls-pagestabs-color-button);
    transition: all 0.5s;
}

.ls-pages-tabs a:hover {
    background: var(--ls-pagestabs-bg-button-active);
    color: var(--ls-pagestabs-color-button-active);
}

.ls-pages-tabs a:hover > i:first-of-type {
    background: var(--ls-pagestabs-bg-button);
    color: var(--ls-pagestabs-color-button);
}
.ls-pages-tabs a.ls-late > i:first-of-type, .ls-pages-tabs a.ls-active.ls-late > i:first-of-type{
    background-color: unset;
    color: white;
    z-index: 10;
}

.ls-pages-tabs a.ls-late > i:first-of-type:before {
    content: '\ea3c';
    font-family: 'ls_opac_icon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    position: absolute;
    z-index: -1;
    font-size: 1.5rem;
    margin-top: -0.1rem;
    color: red;
}

.ls-pages-tabs a > i:first-of-type {
    border-radius: 100%;
    width: var(--ls-pagestabs-height);
    height: var(--ls-pagestabs-height);
    line-height: var(--ls-pagestabs-height);
    left: calc(calc(var(--ls-pagestabs-height)/2) + 1rem);
    font-weight: bold;
    font-style: unset;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--ls-pagestabs-bg-button-active);
    border: solid var(--ls-pagestabs-color-border-width) var(--ls-pagestabs-color-border-color);
    box-sizing: content-box;
    color: var(--ls-pagestabs-color-button-active);
}

.ls-pages-tabs a.ls-active {
    background: var(--ls-pagestabs-bg-button-active);
    color: var(--ls-pagestabs-color-button-active);
}

.ls-pages-tabs a.ls-active > i:first-of-type {
    background: var(--ls-pagestabs-bg-button);
    color: var(--ls-pagestabs-color-button);
}



@media (max-width: 768px) {
    .ls-pages-tabs{
        flex-wrap: wrap;
    }

    .ls-pages-tabs a {
        width: 100%;
        justify-content: start;
    }
}

.ls-bx-warning-popover.popover {
    background-color: red;
    color: white;
    border-radius: 0.5rem;
    border: unset;
    filter: drop-shadow(0 0 0.5rem black);
    margin-top: 0.5rem;
    z-index: 900;
}

.ls-bx-warning-popover.popover .arrow::after {
    border-bottom-color: red;
}

.ls-bx-warning-popover.popover .popover-header {
    color: white;
}

.ls-bx-warning-popover.popover .popover-body {
    color: white;
}

.ls-top-right-count {
    position: relative;
}

.ls-top-right-count:before {
    content: attr(data-count);
    font-size: 1rem;
    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    background: var(--lsOpac-tags-bg);
    border: 1px solid var(--lsOpac-tags-color);
    color: var(--lsOpac-tags-color);
    position: absolute;
    top: var(--pos-y,-0.8rem);
    right: var(--pos-x,-0.8rem);
}


.ls-button-active-style .ls-user-panel-button-status-puce {
    border: 0.2rem solid var(--lsOpac-active-button-bg);
    background-color: var(--lsOpac-button-bg);
}

.ls-button-active-style:hover .ls-user-panel-button-status-puce {
    border: 0.2rem solid var(--lsOpac-button-bg);
    background-color: var(--lsOpac-active-button-bg);
}

.ls-user-panel-button-status {
    --puce-size: 3rem;
    position: relative;
    display: flex;
    align-items: center;
    padding-left: calc(var(--puce-size) + 0.5rem);
    flex: 1;
}

.ls-user-panel-button-status-puce {
    position: absolute;
    width: var(--puce-size);
    height: var(--puce-size);
    background: var(--lsOpac-ok-color);
    border: 0.2rem solid var(--lsOpac-button-bg);
    border-radius: 50%;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--lsOpac-active-button-bg);
    font-size: 1.5rem;
}

.ls-user-panel-button-status-puce.ls-ok, .ls-button-style:hover .ls-user-panel-button-status-puce.ls-ok 
.ls-button-active-style .ls-user-panel-button-status-puce.ls-ok, .ls-button-active-style:hover .ls-user-panel-button-status-puce.ls-ok{
    background-color: var(--lsOpac-ok-color);
}

.ls-user-panel-button-status-puce.ls-not-ok, .ls-button-style:hover .ls-user-panel-button-status-puce.ls-not-ok, 
.ls-button-active-style .ls-user-panel-button-status-puce.ls-not-ok, .ls-button-active-style:hover .ls-user-panel-button-status-puce.ls-not-ok{
    background-color: var(--lsOpac-not-ok-color);
}

.ls-button-style:hover .ls-user-panel-button-status-puce {
    border: 0.2rem solid var(--lsOpac-active-button-bg);
    background-color: var(--lsOpac-button-bg);
}


/* mansory template */
.ls-bx-mansory-hover-info-wrapper {
    width: min(25rem, 100%)
}

.ls-bx-resume-links > * {
    display: flex;
    align-items: center;
}
.ls-bx-resume-links > *:not(:last-child):after {
	content: "\ea18";
    padding: 0.3rem;
	font-size: 0.3rem;
	vertical-align: middle;
	font-family: 'ls_opac_icon' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ribbon */
.ribbon {
    width: 10rem;
    height: 10rem;
    overflow: hidden;
    position: absolute;
}
.ribbon span {
    position: absolute;
    display: block;
    width: 15rem;
    padding: 1rem 0;
    background-color: #CC0000;
    box-shadow: 0 5px 10px rgba(0,0,0,.1);
    color: #fff;
    font: 700 1rem/1 'Lato', sans-serif;
    text-shadow: 0 1px 1px rgba(0,0,0,.2);
    text-transform: uppercase;
    text-align: center;
}

/* top left*/
.ribbon-top-left {
    top: -0rem;
    left: -0rem;
}

.ribbon-top-left span {
    right: -1.5rem;
    top: 2rem;
    transform: rotate(-45deg);
}

/* top right*/
.ribbon-top-right {
    top: -0rem;
    right: -0rem;
}

.ribbon-top-right span {
    left: -1.5rem;
    top: 2rem;
    transform: rotate(45deg);
}

/* bottom left*/
.ribbon-bottom-left {
    bottom: -0rem;
    left: -0rem;
}

.ribbon-bottom-left span {
    right: -1.5rem;
    bottom: 2rem;
    transform: rotate(225deg);
}

/* bottom right*/
.ribbon-bottom-right {
    bottom: -0rem;
    right: -0rem;
}
.ribbon-bottom-right span {
    left: -1.5rem;
    bottom: 2rem;
    transform: rotate(-225deg);
}

.ls-bx-light-frame {
    border-top: solid 0.1rem var(--ls-cl-grey20);
    border-bottom: solid 0.1rem var(--ls-cl-grey20);
    border-radius: 1rem;
    padding: 0.5rem
}

.ls-bx-light-frame>child {
    border-top: solid 0.1rem var(--ls-cl-grey20);
    border-bottom: solid 0.1rem var(--ls-cl-grey20);
    border-radius: 1rem;
    padding: 0.5rem
}

.ls-node-visited {
    transition: opacity 1s;
}
.ls-node-visited:not(:hover) {
    opacity: var(--ls-opac-visited-nodes-opacity);
}


/* CSS popover display */

    .ls-display-pop-over-container{
        position: relative;
    }

    .ls-display-pop-over-image {
        height: 100%;
        width: 100%;
        display:flex;
    }

    .ls-display-pop-over-container:hover .{
        align-items: center;
    }

    .ls-popover-display-container-popover {
          width: var(--popover-width, 100px);
          height: var(--popover-height, 100px);
          left: var(--popover-width, 100px);
    }

    #ls-pop-over-on-item {
        --ls-pop-over-transition-duration: 0.5s;
        width: var(--ls-popover-width, 100px);
        height: var(--ls-popover-height, 100px);
        left: var(--ls-popover-pos-x, 100px);
        top: var(--ls-popover-pos-y, 100px);
        position: absolute;
        z-index: 100;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .ls-popover-button-container > * {
        transition: opacity var(--ls-pop-over-transition-duration), transform var(--ls-pop-over-transition-duration);
        opacity: 0;
        transform: scale(0);
    }


    .ls-popover-button-container > *:nth-child(1), .ls-popover-will-close .ls-popover-button-container > *:nth-child(5) {transition-delay: calc(var(--ls-pop-over-transition-duration)/5); }
    .ls-popover-button-container > *:nth-child(2), .ls-popover-will-close .ls-popover-button-container > *:nth-child(4) {transition-delay: calc(2*calc(var(--ls-pop-over-transition-duration)/5)); }
    .ls-popover-button-container > *:nth-child(3), .ls-popover-will-close .ls-popover-button-container > *:nth-child(3) {transition-delay: calc(3*calc(var(--ls-pop-over-transition-duration)/5)); }
    .ls-popover-button-container > *:nth-child(4), .ls-popover-will-close .ls-popover-button-container > *:nth-child(2) {transition-delay: calc(4*calc(var(--ls-pop-over-transition-duration)/5)); }
    .ls-popover-button-container > *:nth-child(5), .ls-popover-will-close .ls-popover-button-container > *:nth-child(1) {transition-delay: calc(5*calc(var(--ls-pop-over-transition-duration)/5)); }

    @keyframes circlePop {
        0% {
            transform: scale(0);
            opacity: 0;
        }
        100% {
            transform: scale(1);
            opacity: 1;
        }
    }

    .ls-popover-card {
        --ls-popOverTransform: 0px;
        position:absolute;
        transform: translateX(var(--ls-popOverTransform, '0px'));
        color: var(--lsOpac-block-content-color);
        display: flex;
        height: var(--ls-popover-height, 100px);
        transition: height var(--ls-pop-over-transition-duration);
        filter: var(--shadow1);
        padding-left: 1.5rem;
    }

        .ls-popover-card-image {
          width: var(--ls-popover-width, 100px);
          height: 100%;
          display: flex;
          transition: width var(--ls-pop-over-transition-duration);
          background-color: var(--lsOpac-block-content-bg);
        }

        .ls-popover-card-description {
            overflow: hidden ;
          position:relative;
          width: 0;
          padding: 0;;
          transition: width var(--ls-pop-over-transition-duration) ease-in-out, padding var(--ls-pop-over-transition-duration) ease-in-out;
          flex: 1;
          background-color: var(--lsOpac-block-content-bg);
        }
        #ls-pop-over-on-item:hover .ls-popover-card {
          height: calc(var(--ls-popover-height, 100px)*1.1);
        }
        #ls-pop-over-on-item:hover .ls-popover-button-container > * {
          opacity: 1;
          transform: scale(1);
        }
        #ls-pop-over-on-item:hover .ls-popover-card-image {
          width: calc(var(--ls-popover-width, 100px) * 1.1);
        }
        #ls-pop-over-on-item:hover .ls-popover-card-description {
          width: calc(var(--ls-popover-width, 100px) * 1.5);
          padding: 1rem 0.5rem;
        }


/* 

ls-flix carousel

*/


.ls-row-carousel-netflixLike-container {
		position: relative;
        background: var(--lsOpac-block-content-bg);
        color: var(--lsOpac-block-content-color);
        border-width: var(--lsOpac-block-border-width);
        border-style: var(--lsOpac-block-content-border);
        border-color: var(--lsOpac-block-content-border-color);
        filter: var(--lsOpac-other-shadow);
        border-radius: var(--lsOpac-other-content-border-radius);
        overflow: hidden;
	}

	.ls-row-carousel-netflixLike-container .owl-dots {
		display: flex;
		align-items: center;
		opacity: 0;
		transition: opacity 0.3s ease-in-out;
	}

	.ls-row-carousel-netflixLike-container:hover .owl-dots {
		opacity: 1;
	}

	.ls-row-carousel-netflixLike-container .owl-dots .owl-dot {
		display: inline-block;
		height: 0.2rem;
		margin-left: 0.1rem;
		width: 1rem;
		opacity: 0.5;
		border: none;
		background-color: var(--lsOpac-block-content-color);
		cursor: pointer;
	}

	.ls-row-carousel-netflixLike-container .owl-dots .owl-dot.active {
		opacity: 1;
		cursor: default;
	}

	.ls-row-carousel-netflixLike-container .owl-dots .owl-dot.active {
		opacity: 1;
		cursor: default;
	}

	.ls-row-carousel-netflixLike-container .owl-item{
		aspect-ratio: 210/297;
		display: flex;
	}

	.ls-row-carousel-netflixLike-container .ls-nav-btn{
		position: absolute;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 4%;
		font-size: 2rem;
		top: 0;
		opacity: 0;
		transition: opacity 0.3s ease-in-out;
	}

	.ls-row-carousel-netflixLike-container .ls-nav-btn:hover {
		opacity: 1;
	}


	.ls-row-carousel-netflixLike-container .owl-prev .ls-nav-btn{
		left: 0;
		background: radial-gradient(ellipse at 0%, var(--lsOpac-block-content-bg), rgba(0,0,0,0));
	}

	.ls-row-carousel-netflixLike-container .owl-next .ls-nav-btn{
		right: 0;
		background: radial-gradient(ellipse at 100%, var(--lsOpac-block-content-bg), rgba(0,0,0,0));

	}

	.ls-row-carousel-netflixLike-container .ls-flix-all-link-icon {
		display: none;
		font-size: 1.5rem;
	}
	.ls-row-carousel-netflixLike-container:hover .ls-flix-all-link-icon {
		
		display: block;
	}
	.ls-row-carousel-netflixLike-container:hover .ls-flix-all-link-icon:before {
		vertical-align: middle;
	}

	.ls-row-carousel-netflixLike-container .ls-flix-all-link {
		display: flex;
		gap: 0.25rem;
		align-items: center;
		
	}

	.ls-row-carousel-netflixLike-container .ls-flix-all-link-text {
	    width: 0%;
		overflow: hidden;
		position: relative;
		font-size: 0rem;
		opacity: 0;
		white-space: nowrap;
		transition: width 0.3s ease-in-out, font-size 0.3s ease-in-out, opacity 0.3s ease-in-out;
	}

	.ls-row-carousel-netflixLike-container .ls-flix-title:hover .ls-flix-all-link-text {
	    width: 100%;
		font-size: 1.25rem;
		opacity: 1;
	}
	.ls-row-carousel-netflixLike-container .ls-flix-title {
		cursor: pointer
	}