/* OVERALL */
body {
    font-family: sans-serif;
}


/* HEADER */

.navbar{
    width: 100%;
}
.navbar-toggler {
    color: #2F8BE6;
    border-color: #2F8BE6;
    font-size: x-large;
}
.logoText{
    font-size: 23px;
    color: #2F8BE6;
    font-weight: bold;
}
.logoTextLong{
    display: block;
}
.logoTextShort{
    display: none;
}
.offCanvasCloseButton{
    font-size: xx-large;
    color: #2F8BE6;
    background: transparent;
    margin-top: -15px;
    border: none;

}
.offcanvas{
    color: #2F8BE6;
}
.logout{
    color: #2F8BE6;
    font-weight: bold;
    font-size: 16px;
    padding: 0px 40px 0px 20px;
}
.displayName {
    color: #526B99;
    font-size: 16px;
    font-style: normal;
    font-weight: bold;
    line-height: 145%
}
.usernameBlock i, .logout i{
    display: none;
}
#header-large .header-localization{
    margin-left: 50px;
}
.lang{
    color: #AFBCD4;
    padding: 5px;
}
.active-lang{
    color: #2F8BE6;
    font-weight: bold;
}

/* HEADER END */
/* SIDEBAR */
.top-sidebar{
    display: none;
}
.sidebar{
    display: block;
}

.sidebar {
    width: 25% !important;
}
.sidebar div{
    padding: 40px !important;
    color: #6D85B1;
}
.sidebar-header{
    color: #6D85B1;
    font-size: 28px;
    font-weight: 700;
    line-height: 140%; /* 28px */
}
.sidebar div li{
    padding: 10px 0px;
    color: #6D85B1;
    font-size: 18px;
    font-weight: 400;
    line-height: 150%;
}
.sidebar div li span{
    padding: 0px 10px;
}
.sidebar div li i{
    color: #2F8BE6;
    font-size: x-large;
}
.sidebar .active{
    color: #2F8BE6;
    font-size: 20px;
}
/* SIDEBAR END*/

/* HOME PAGE */

#homeBody{
    margin-left: 50px;
}
#homeBody .card{
    padding: 20px 0px;
    margin-top: 20px;
}

/* HOME PAGE END */




/*@media (min-width: 1200px)*/
#main, #footer {
    margin-left: 25% !important;
}

.form-card{
    /*padding: 3% !important;*/
    padding: 30px 20px;
    border-radius: 10px;

}
.form-label{
    margin-top: 1rem;
}
.pagetitle h1{
    color: #3A527E;
    font-size: 30px;
    font-style: normal;
    font-weight: 100;
    line-height: 125%
}
.testing-view-text-info-col{
    padding: 0px 20px 0px 0px !important;
}
.text-info {
    padding: 10px 15px !important;
    color: black !important;
    margin: 30px 0px;
}

.text-info-warn {
    background: linear-gradient(to right, #CB3C3A 1%, pink 1%);
}

.text-info-notify {
    background: linear-gradient(to right, #fccf04 1%, #f6dc9a 1%);
}

.text-info-success {
    background: linear-gradient(to right, #2DA581 1%, #a2e393 1%);
}

form .btn{
    padding: 3% 12%;
}

.card{
    margin-bottom: 0% !important;
}

/*  TESTING VIEW */
.testing-view-card{
    padding: 4%;
}
.testing-view-info{
    display: flex;
    padding: 2%;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    align-self: stretch;
    border-radius: 10px;
    background: #FFF;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.10);
    font-style: normal;
    line-height: 150%;
}
.testing-view-info label{
    color: #8FA2C5;
    font-size: 14px;
    font-weight: 400;
}
.testing-view-info p{
    align-self: stretch;
    color: #000;
    font-size: 20px;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.payment-card{
    display: flex;
    color: #FFF;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    padding: 2%;
    align-items: flex-start;
    gap: 20px;
    align-self: stretch;
    border-radius: 10px;
    background: #2F8BE6;
    /*height: 350px;*/

}
.payment-card-qr{
    border-right: 1px solid;
    border-color: rgba(255, 255, 255, 0.20);
    padding: 0% 4%;
    text-align: center;
}
.payment-card-qr img{
    width: 50%;
}
.payment-card label{
    font-size: 14px;
    font-weight: 400;
    display: block;
}
.payment-card p{
    font-size: 24px;
    font-weight: 800;
}
.timer {
    background: #FFFFFF;
    color: #2F8BE6;
    text-align: center;
    border-radius: 10px;
    padding: 10px;
    font-size: 20px !important;
    margin: auto;
    display:  block;
    width: fit-content;
    font-weight: bold !important;
    list-style: auto;
}

.youRScheduled {
    padding-bottom: 30px;
    color: #2DA581;
}
.timer-finished{
    color: #CB3C3A;
    position: absolute;
    left: 25%;
    bottom: 10px;
}
.payment-card-overdue{
    text-align: left;
}
.payment-card-paid{
    text-align: left;
}

.payment-card-paid ul{
    list-style: auto;
}

.form-action-buttons .btn {
    margin-top: 30px;
    padding: 12px 32px;
}
.downloadPdfButton{
    float: right;
}
.profile-tab-card{
    border-radius: 20px;
    height: 90%;
}
/* TESTINGS LIST */
#testings-large{
    display: block;
}
#testings-small{
    display: none;
}
.localization-large{
    display: block;
}
.localization-small{
    display: none;
}

.main-no-sidebar{
    margin: 60px 0% 0% 0% !important;
    padding: 30px 5%;
}
.main-no-sidebar .section{
    padding: 20px;
}
.list-go-back{
    padding: 5px 30px;
    width: fit-content;
    display: block;
    margin: auto;
    /*color: #000000FF;*/
}

.table-card-header{
    padding: 10px 2%;
    text-align: center;
    border-radius: 10px;
    color: #6D85B1;
}
.table-card-row{
    padding: 8px 2%;
    margin-top: 5px;
    text-align: center;
    border-radius: 10px;
}
.table-card-row  .col-lg-2{
    margin: auto;
}
.table-card-row  .PASSED{
    background: #E3F5DA;
}
/*.table-card-row  .SCHEDULED{*/
/*    background: #988556;*/
/*}*/
.table-card-row  .PENDING, .SCHEDULED{
    background: #DBECFD;
}
.table-card-row .FAILED, .CANCELED, .DID_NOT_COME{
    background: #FEEAD8;
}

.test-status-item{
    width: 193px;
    margin: auto;
    border-radius: 10px;
    padding: 6px 10px;
}
.test-status-item img{
    float: left;
}

.list_payment_status_OVERDUE{
    color: #E38800;
}
.list_payment_status_PENDING{
    color: #0a7bf1;
}
.list_payment_status_PAID{
    color: #0EC541;
}

.list-go-back{

}
.bold{
    font-weight: bold;
}
.grey{
    color: grey ;
}
.blueishgrey{
    color: #88a5e0;
}
.primary{
    color: #0d6efd;
}

/*  Cards with image */
.card-with-lft-image{

}
.text-part{
    display: inline-block;
    width: 80%;
}
.img-part{
    display: inline-block;
    width: 10%;
}
.img-part img{
    margin-top: 20px;
}
/*  Cards with image */

/* INDEX PAGE */
#index-landing{
    width: 100%;
}
#index-header{
    height: 50px;
    background: #FFFFFF;
    padding: 15px 7%;
}
.first-row{
    margin: 0px !important;
    background: #FFFFFF;
}
.index-text-part{
    padding: 7%;
}
.index-text-part h1{
    font-size: 51px;
    font-weight: 900;
    color: black;
}
.index-img-part  img{
    width: 80%;
}

#loginWithEsiButton {
    padding: 1% 5%;
    font-size: 20px;
    font-weight: 500;
}

.howToGetEsi {
    color: #3869BD;
    font-size: 17px;
    font-weight: 500;
}

#index-landing .section {
    width: 90%;
    margin: auto;
    margin-top: 40px;
    list-style: auto;
}
#index-landing .section-title{
    font-size: 34px;
    font-weight: 800;
    color: #000;
    line-height: 130%;
}
#index-landing .section-sub-title-1{
    color: #000;
    font-size: 24px;
    font-style: normal;
    font-weight: 200;
    line-height: 130%;
    margin: 0px 0px 40px 0px;
}
#index-landing .section-sub-title-2{
    color: #000;
    font-size: 24px;
    font-style: normal;
    font-weight: 200;
    line-height: 130%;
    margin: 30px 0px 20px 0px;
}
#index-landing .section li{
    list-style: auto;
    padding: 7px;
}
#index-landing .section .card{
    height: 100%;
    border-radius: 10px;
}

#index-landing .section .card-header{
    font-weight: 600;
    font-size: 16px;
    color: #000;
}
.second-row {
    width: 100%;
}
.second-row .card{
    padding: 20px;
}
.categories {
    margin: auto;
    padding: 10px 0px 40px 0px;
    text-align: center;
}
.categories p{
    display: inline-block;
    width: fit-content;
    background: #3869BD;
    color: white;
    padding: 5px 10px;
    margin: 0px 5px;
    text-align: center;
    font-weight: bold;
    border-radius: 5px;
}
.category-card{
    height: auto !important;
    padding: 20px;
    text-align: center;
    font-weight: bold;
}
.category-card img{
    margin: auto;
    height: 100px;
    width: 130px;
    padding: 20px 0px;
}
.category-card .img-div{
    height: 150px;
    width: 120px;
    margin: auto;
}
.third-row{
    width: 100%;
    margin-bottom: 50px;
}
#index-localization{
    float: left;
}
.callCenter{
    float: right;
    color: #2F8BE6;
}

.card-header-without-line{
    border: none;
}
.blueish{
    color: #2F8BE6;
}

/* ################ FOR MOBILE DEVICES ############################*/
@media screen and (max-width: 800px) {
    #main, #footer {
        margin-left: 0% !important;
        margin-top: 0px;
        padding: 0px 20px 20px 20px;
    }
    .header{
        padding-left: 0px !important;
    }
    #index-landing .section {
        margin-left: 7%;
    }
    .index-text-part h1{
        font-size: 40px;
    }
    .logoTextLong{
        display: none;
    }
    .logoTextShort{
        display: block;
    }
    .offcanvas{
        width: 70% !important;
    }

    .header-nav .d-flex > div{
        display: block;
        width: 100%;
    }
    .d-flex{
        display: flex !important;
        float: left;
        flex-direction: column;
    }
    .header-blocks{
        color: #2F8BE6;
    }
    .displayName{
        font-size: large;
        color: #2F8BE6;
        font-weight: normal;
    }
    .usernameBlock {
        color: #2F8BE6;
        padding:10px 20px;
        font-weight: normal;
        font-size: large ;
    }
    .logout {
        padding:10px 20px;
        font-size: large;
        font-weight: normal;
        color: #2F8BE6 !important;
    }
    .localization-small{
        padding:10px 20px;
        font-size: large;
    }
    .localization-small .lang{
        padding: 0px;
    }
    .logout a{
        color: #2F8BE6 !important;
    }
    .nav-item i{
        padding-right: 10px;
    }
    .usernameBlock i, .logout i{
        display: inline-block;
    }


    .localization-large{
        display: none;
    }
    .localization-small{
        display: block;
    }

    .navbar-brand{
        margin-right: 0px !important;
    }
    #homeBody {
        margin-left: 0px;
    }
    form {
        width: 100% !important;
    }
    .testing-view-card{
        line-height: 200%;
    }
    .payment-card-qr{
        padding: 5% 10%;
        line-height: 150%;
    }
    .payment-card-info{
        padding: 5% 10%;
        line-height: 150%;
    }
    .testing-view-text-info-col {
         padding: 0px !important;
    }
    .form-action-buttons .btn{
        width: 100%;
        margin-top: 15px;
    }
    .timer-finished{
        position: static;
    }
    .main-no-sidebar{
        padding: 0px;
    }

    .index-img-part img{
        width: 100%;
    }

    .second-row .documents-row .col-lg-6{
        margin-bottom: 20px;
    }

    .third-row .col-lg-2{
        width: 50%;
        max-height: 280px;
    }
    .third-row .col-lg-2 .categories{
        width: 110%;
    }
    .third-row .col-lg-2 .categories p{
        width: fit-content;
        margin: auto;
        margin-bottom: 5px;
    }
    .third-row .col-lg-2 img{
        width: 100%;
    }
    .categories{
        padding: 10px 0px 10px 0px;
        height: 50px;
    }
    .category-card {
        height: 260px !important;
        margin-bottom: 10% !important;
    }

    #testings-large{
        display: none;
    }
    #testings-small{
        display: block;
    }

    #testings-small .table-card-row .row{
        padding: 15px 12px;
        text-align: left;
    }
    #testings-small .table-card-row .btn{
        width: 93%;
        margin: auto;
    }
    #testings-small .table-card-row{
        margin-top: 15px;
    }
    #testings-small .table-card-row .row .col{
        margin: auto;
    }

    .main-no-sidebar .section {
        padding: 10px 20px;
    }
    .pagetitle{
        margin-bottom: 0px;
        padding: 20px 20px 0px 20px;
    }
    .test-status-item{
        width: 170px;
    }
    .test-status-item label{
        padding-left: 10px;
    }


    .testing-view-card {
        padding:0% 4%;
    }
    .payment-card {
        width: 95%;
        margin: auto;
        margin-top: 3%;
    }
    .payment-card .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6  {
        margin-bottom: 20px;
        font-weight: 100;
    }
    .payment-card-qr{
        border: none;
    }

    .testing-view-info {
        box-shadow: none;
        padding-top: 15px;
    }
    .text-info{
        margin: 15px 0px;
    }

    /*   SIDEBAR   */
    .sidebar{
        display: block;
    }
    .top-sidebar{
        display: block;
        background: #d6e0f5;
        width: 100%;
        text-align: center;
        margin-top: 61px;
    }

    .top-sidebar .progress-item i {
        padding: 10px;
    }


    /*    PROGRESS BAR   */
    .progress-block {
        display: flex;
        align-items: center;
        background-color: #acd1f5;
        padding: 10px;
        border-radius: 8px;
    }

    .progress-circle {
        position: relative;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background: conic-gradient(
                #007bff calc(var(--progress, 0) * 1%),
                #d6e0f5 0
        );
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0px 20px;
    }

    .progress-circle::before {
        content: '';
        position: absolute;
        width: 80%;
        height: 80%;
        background: #e0f0ff;
        border-radius: 50%;
    }

    .progress-value {
        position: absolute;
        font-weight: bold;
        color: black;
    }

    .progress-text {
        font-size: 1.1em;
        color: #007bff;
    }

    .progress-circle[data-progress="25"] {
        --progress: 25;
    }
    .progress-circle[data-progress="50"] {
        --progress: 50;
    }
    .progress-circle[data-progress="75"] {
        --progress: 75;
    }
    .progress-circle[data-progress="100"] {
        --progress: 100;
    }

}



