*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Cairo", sans-serif !important;
}
@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@200..1000&display=swap');
:root {
    --main-background-color: #e2e4e9bb;
    --primary-color: #228e98;
    --secondary-color: #6A9AB0;
    --main1-color: #001F3F;
    --main2-color: #e6e6d9;
    --main3-color: #0b5f61;
    --main4-color: #0b4c4d;
    --logo-color: #654e9c;
    --saudi-green: #165e3a;
    --saudi-green-light: #1a7a4a;
    --saudi-green-dark: #0d4026;
    --saudi-gold: #d4af37;
    --saudi-gold-light: #f0d678;
    --saudi-white: #ffffff;
    --text-dark: #1a1a1a;
    --text-gray: #666666;
    --border-light: rgba(22, 94, 58, 0.1);
    --shadow-sm: 0 2px 8px rgba(22, 94, 58, 0.08);
    --shadow-md: 0 4px 16px rgba(22, 94, 58, 0.12);
    --shadow-lg: 0 8px 32px rgba(22, 94, 58, 0.16);
}
.bg-main{
    background-color: var(--main1-color) !important;
}
.bg-main2{
    background-color: var(--main2-color) !important;
}
.text-main{
    color: var(--main1-color) !important;
}
.text-main1{
    color: var(--primary-color) !important;
}
.nav-link{
    color: var(--primary-color) !important;
}
.nav-link1{
    color: black !important;
    text-decoration: none !important;
}
body{
    background: #e2e4e9bb;
}
.dropdown-item-hover{
    transition: all .3s ease-in-out;
}
.dropdown-item-hover:hover{
    background-color: var(--main2-color) !important;
    scale: 1.01;
}

.navbar-home{
    background-color: white !important;
    color: var(--main1-color) !important;
    border-bottom: 2px var(--primary-color) solid;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}
.admin-navbar{
    background-color: white !important;
    color: var(--main1-color) !important;
    border-bottom: 2px var(--primary-color) solid;
}

.logos-container {
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    width: 100%;
    background: #fff;
    padding: 10px 0;
}

.logos-card {
    display: flex;
    align-items: center;
    gap: 20px; /* Adjust spacing between images */
    animation: slideLoop 15s linear infinite;
    width: max-content; /* Ensures the content width adapts dynamically */
}

.partner-logo {
    max-width: 120px; /* Adjust size */
    height: auto;
}

/* Keyframe animation for smooth infinite scrolling */
@keyframes slideLoop {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}




.btn-primary{
    background-color: var(--main4-color) !important;
    border-color: var(--main1-color) !important; 
}
.header-logo{
    color: var(--main3-color) !important;
    font-weight: 900;
    font-size: 2.2rem;
}
.img-logo{
    width: 150px;
    height: 150px;
    /* border-radius: 50%; */
    object-fit: cover;
}
.logo{
    color: var(--main1-color);
    font-weight: bold;
    font-size: 3.2rem;
}
.text-hight-low{
    line-height: .2rem;
}
.form-container{
    /* width: 100%; */
    /* height: calc(80vh - 60px); */
    display: flex;
    justify-content: center;
    align-items: center;
}
.form-container form{
    width: 400px;
    padding: 20px;
    /* background-color: white; */
    border-radius: 5px;
    /* box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); */
}

.box_shadow{
    box-shadow: 0 5px 25px rgba(1 1 1 / 15%);
}
.decoration-none{
    text-decoration: none !important;
}

footer{
    background-color: var(--primary-color) !important;
    color: white;
    padding: 10px;

}
.min-h-100{
    min-height: 100vh !important;
}
.text-bold{
    font-weight: bold;
}

.custom-search-input{
    border: none !important;
    border-radius: 0px !important;
    /* border-bottom: 1px solid #ced4da !important; */
    box-shadow: none !important;
}
.custom-search-input:focus{
    border-bottom: 1px solid #ced4da !important;
    box-shadow: none !important;
}

.custom-search-input::placeholder{
    font-size: 14px;
}

.custom-search-button{
    border: none !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    background-color: var(--main2-color);
    color: var(--main1-color);
}
.custom-search-button:focus{
    border: none !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    background-color: var(--main2-color);
}
.custom-search-button:hover{
    border: none !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    background-color: var(--main2-color);
}

aside{
    background: var(--main-background-color);
    color: var(--primary-color);
    height: 100vh;
    padding: 10px;
    width: 25%;
    position: fixed;
    right: 0;
    top: 0;
    overflow-y: auto;
}
.aside-admin{
    background: var(--main-background-color);
    color: var(--primary-color);
    height: calc(100vh - 60px);
    padding: 10px;
    width: 350px;
}
.question-container{
    color: var(--primary-color);
    height: calc(100vh - 60px);
    padding: 10px;
    width: 75%;
    position: absolute;
    left: 0;
    top: 0;
}
.main-admin{
    color: var(--primary-color);
    height: calc(100vh - 60px);
    padding: 10px;
    width: calc(100% - 300px);
}
.border-bottom1{
    border-bottom: 1px solid var(--main1-color);
}
.border-bottom2{
    border-bottom: 1px solid rgb(189, 189, 189);
}

.main-container{
    width: 100%;
    height: 90vh;
    position: relative;
    /* background: linear-gradient(to right, #0b5f61, #0b4c4d) !important; */

}
.main-container .main-img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    z-index: -1;
}
.main-container .content{
    position: absolute;
    top: 50%;
    left: 30%;
    width: 30%;
    height: 100%;
    padding: 70px 20px 20px 20px;
    transform: translate(-50%,-50%);
    color: white;
    text-align: center;
    background-color: var(--main2-color);
    color: var(--main1-color);
}
h4{
    color: var(--main4-color) !important;
}

.double-arrow-img{
    width: 50px;
    height: 50px;
    object-fit: cover;
    object-position: center;
    border-radius: 50%;
    transform: rotate(270deg);
}
.double-arrow-img:hover{
    cursor: pointer;
    transition: all .5s ease-in-out;
    transform: rotate(270deg) scale(1.5);
}
.double-arrow-up-img{
    width: 30px;
    height: 30px;
    object-fit: cover;
    object-position: center;
    transform: rotate(90deg);
}
.min-height{
    min-height: 70vh;
}
#bbttnn{
    background-color: var(--main2-color);
    z-index: 999;
    position: fixed;
    font-size: 1rem;
    left: 20px;
    bottom: 20px;
    padding: 5px 8px;
    border-radius: 8px;
    cursor: pointer;
    border: none;
    outline: none;
    display: none;
}

.bbttnn:hover{
    cursor: pointer;
    transition: all .5s ease-in-out;
    transform: rotate(90deg) scale(1.5);
}

#bbttnn1{
    background-color: var(--main2-color);
    z-index: 999;
    position: fixed;
    font-size: 1rem;
    left: 20px;
    bottom: 65px;
    padding: 5px 8px;
    border-radius: 8px;
    cursor: pointer;
    border: none;
    outline: none;
    display: none;
}
.q-icons-container{
    width: 100%;
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}
.q-icon{
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border: 1px solid var(--main1-color);
    cursor: pointer;
    text-decoration: none;
    color: var(--main1-color);
}
.q-icon-answered{
    border: 1px solid #10c14e !important;
    background-color: #10c14e !important;
    color: white !important;
}

.q-active {
    border: 1px solid #007bff;
}
.q-answered{
    border: 1px solid #10c14e !important;
}
.q-icon-active{
    border: 1px solid #007bff;
    color: #007bff;
    background-color: #007bff;
    color: white;
}

/* Container for answer options */
.answer-option {
    width: 100%;
    margin-bottom: 15px;
}

/* Label styling */
.answer-label {
    position: relative;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 10px; /* Space between custom radio and text */
}

/* Hide the native radio button */
.answer-radio {
    display: none;
    width: 100%;
}

/* Create custom radio button */
.custom-radio {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-color: #f0f0f0;
    border: 2px solid #ccc;
    border-radius: 50%;
    position: relative;
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

/* The dot inside the custom radio button */
.custom-radio::after {
    content: "";
    position: absolute;
    display: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #007bff;
}

/* Show the custom dot and border when the radio is checked */
.answer-radio:checked + .custom-radio {
    background-color: #007bff;
    border-color: #007bff;
}

/* Show the inner dot when selected */
.answer-radio:checked + .custom-radio::after {
    display: block;
}

/* Add a clear border to the selected option's text */
.answer-radio:checked + .custom-radio + .mx-2 {
    border: 2px solid #007bff;
    padding: 2px 8px;
    border-radius: 4px;
    color: #007bff;
}

.card-header{
    width: 100%;
    height: 25%;
    display: flex;
    flex-wrap: wrap;
}
.card_body{
    width: 100%;
    height: 75%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.card-content{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: wrap;
}
.card-icon{
    width: 65px;
    padding: 5px;
    margin: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;

    color: white;
    /* background-color: var(--main2-color); */
}
.bg-danger{
    background-color: red !important;
}
.res-h1{
    font-size: 3.5rem;
}
.letter-spacing-long{
    letter-spacing: 2px;
}
.d-card{
    width: 100%;
    height: 100px;
    padding: 12px;
    display: flex;
    background-color: white;
    justify-content: center;
    flex-direction: column;
    border-radius: 8px;
    border: 1px solid rgb(156, 156, 156) !important;
}
.border-warning{
    border-right: 5px solid #ffc107 !important;
}
.border-primary{
    border-right: 5px solid #007bff !important;
}
.border-success{
    border-right: 5px solid #28a745 !important;
}
.border-danger{
    border-right: 5px solid #dc3545 !important;
}
.border-top-warning{
    border-top: 5px solid #ffc107 !important;
}
.border-top-primary{
    border-top: 5px solid #007bff !important;
}
.border-top-success{
    border-top: 5px solid #28a745 !important;
}
.border-top-danger{
    border-top: 5px solid #dc3545 !important;
}
.border-info{
    border-right: 5px solid #17a2b8 !important;
}
.line-height{
    line-height: .5 !important;
}
.animated-logo {
    animation: scaleFade 2s ease-in-out infinite alternate;
}

@keyframes scaleFade {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.2); /* Grow slightly bigger */
        opacity: 1; /* Fully visible */
    }
    100% {
        transform: scale(1); /* Shrink back */
        opacity: 1;
    }
}

.sqare{
    width: 10px;
    height: 10px;
    /* border-radius: 5px; */
    margin: 3px;
}
.animate-fade-in-down{
    animation: fade-in-down 1s ease-in-out;
}
.animate-fade-in-up{
    animation: fade-in-up 1s ease-in-out;
}
.animate-fade-in-right{
    animation: fade-in-right 1s ease-in-out;
}
.animate-fade-in-left{
    animation: fade-in-left 1s ease-in-out;
}

/* new style for login form */
.right-side-form{
    background-color: rgb(244, 243, 243);
}
.profile-square{
    width: 100%;
    height: 300px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    overflow: hidden;
}
.profile-square .top{
    width: 100%;
    height: 72%;
    /* border: 1px solid rgb(156, 156, 156); */
    display: flex;
    align-items: center;
    justify-content: center;
}
.profile-square .bottom{
    width: 100%;
    height: 28%;
    border-top: 1px solid rgb(156, 156, 156);
    display: flex;
    align-items: center;
    justify-content: center;
}
.profile-square .circle{
    width: 160px;
    height: 160px;
    border-radius: 50%;
    border: 8px solid #d7936f;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: white;
}
.bg-awareness{
    background-color: #d7936f !important;
    padding: 0 5px;
    border-radius: 8px;
    color: white;
}
.text-awareness{
    color: #d7936f !important;
}
.bg-participation{
    background-color: #6a93a6 !important;
    padding: 0 5px;
    border-radius: 8px;
    color: white;
}
.text-participation{
    color: #6a93a6 !important;
}
.bg-application{
    background-color: #007bff !important;
    padding: 0 5px;
    border-radius: 8px;
    color: white;
}
.text-application{
    color: #007bff !important;
}
.bg-merger{
    background-color: #b371ac !important;
    padding: 0 5px;
    border-radius: 8px;
    color: white;
}
.text-merger{
    color: #b371ac !important;
}

.profile-table-container {
    width: 100%;
    overflow-x: auto;
    /* overflow-y: visible; Ensure sticky elements remain visible */
    position: relative;
}

/* Table Styling */
.profile-table {
    width: 100%; 
    background-color: white;
    border-collapse: separate; 
    border-spacing: 0; 
    border: 1px solid #ddd; 
    border-radius: 8px; 
    overflow: hidden;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

/* General Cell Borders */
.profile-table td, 
.profile-table th {
    border-bottom: 1px solid #ddd; 
    padding: 8px; 
    text-align: center;
}

/* Header Styling */
.profile-table th {
    background-color: #f4f4f4; 
    font-weight: bold;
    border-bottom: 2px solid #ddd; 
}

/* Sticky Header */
.sticky-header {
    position: sticky;
    top: 0;
    z-index: 5; /* Higher than cells but lower than UI overlays */
    background-color: #f4f4f4;
}

/* Sticky First Column */
.sticky-column {
    position: sticky;
    left: 0;
    z-index: 3; /* Higher than cells */
    background-color: #fff;
    font-weight: bold;
}

/* Percentage Span Styling */
.percentage-span {
    width: 90px;
    padding: 5px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

/* Rounded Corners on Table */
.profile-table tr:first-child th:first-child {
    border-top-left-radius: 8px;
}

.profile-table tr:first-child th:last-child {
    border-top-right-radius: 8px;
}

.profile-table tr:last-child td:first-child {
    border-bottom-left-radius: 8px;
}

.profile-table tr:last-child td:last-child {
    border-bottom-right-radius: 8px;
}

.exam-card{
    width: 95%;
    height: 95;
}


.profile-square .circle2{
    width: 160px;
    height: 160px;
    border-radius: 50%;
    border: 8px solid #6a93a6;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: white;
}
.profile-square .circle3{
    width: 160px;
    height: 160px;
    border-radius: 50%;
    border: 8px solid #007bff;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: white;
}
.profile-square .circle4{
    width: 160px;
    height: 160px;
    border-radius: 50%;
    border: 8px solid #b371ac;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: white;
}
.read-msg{
    border: #10c14e solid 3px !important;
    border-radius: 8px;
}

.gest-main-container{
    width: 100%;
    height: 85vh;
    position: relative;
}
/* .gest-main-container .main-img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: absolute;
    z-index: -1;
} */

.guest-btn{
    border: 1px solid var(--main3-color);
    outline: none;
    text-decoration: none;
    background: transparent;
    color: var(--main4-color);
    padding: 5px 20px;
    border-radius: 10px;
    cursor: pointer;
    font-size: 1.2rem;
    transition: all .2s ease-in-out;
}
.guest-btn:hover{
    background: var(--main3-color);
    color: white;
    scale: 1.02;
}
.about-us-img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.logos-container{
    width: 100%;
}
.logos-card{
    background: rgb(255, 255, 255);
    padding: 10px;
    border-radius: 10px;  
}
.logos-card1 img{
    width: 150px;
    height: 150px;
    object-fit: cover;
    object-position: center;
}
.logos-container img{
    width: 100px;
    height: 100px;
    object-fit: cover;
    object-position: center;
}
.lang-dropdown{
    margin-right: 10px;
}
.mr-3{
    margin-right: 10px !important;
}
.ml-3{
    margin-left: 10px !important;
}
.lang-icon{
    width: 25px;
    height: 25px;
    padding: 1px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1.5px solid rgb(129, 128, 128);
    color: black;
}
.lang-icon-active{
    background-color: var(--primary-color) !important;
    color: white !important;
}
.lang-icon:hover{
    background-color: var(--primary-color) !important;
    color: white !important;
}
.lang-icon-en{
    border-radius: 0 0 5px 5px ;
}
.lang-icon-ar{
    border-radius: 5px 5px 0 0;
}
.read-msg{
    border: #10c14e solid 3px !important;
    border-radius: 8px;
}
.profile-border{
    border-radius: 10px;
    padding: 8px;
    border: #297dd0 solid 3px;
    /* box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); */
}
.card-min-h{
    min-height: 200px !important;
}


/* Animation */
@keyframes fade-in-down {
    0% {
        transform: translateY(-20px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fade-in-up {
    0% {
        transform: translateY(20px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fade-in-right {
    0% {
        transform: translateX(20px);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes fade-in-left {
    0% {
        transform: translateX(-20px);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}   

@media  screen and (max-width: 992px) {
    .logout1{
        display: none !important;
    }
    .res-h1{
        font-size: 2.5rem;
    }
}

@media  screen and (min-width: 992px) {
    .logout{
        display: none !important;
    }
    .margin-large{
        margin: 120px 160px !important;
    }
}

@media  screen and (max-width: 768px) {
    .d-none-sm{
        display: none !important;
    }
    .res-h1{
        font-size: 2rem;
    }
    .percentage-span{
        width: 50px;
        font-size: 10px;
    }
    .main-container .content{
        width: 60% !important;
    }
}

@media  screen and (max-width: 850px){
    aside{
        display: none !important;
    }
    .question-container{
        width: 100% !important;
    }
    #bbttnn1{
        display: block !important;
    }
}

@media  screen and (min-width: 850px){
    .d-none-850{
        display: none !important;
    }
}

/* aside{
    background: white;
    color: var(--primary-color);
    min-height: 100vh;
    padding: 10px;
    width: 300px;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999;
    overflow-y: scroll;
    overflow-x: scroll;
    transition: all .3s ease-in-out;
}

aside::-webkit-scrollbar{
    width: 3px;
}
aside::-webkit-scrollbar-track{
    background: var(--main4-color);
}
aside::-webkit-scrollbar-thumb{
    background: #888;
    border-radius: 5px;
}

main {
    margin-left: 300px;
    transition: all .3s ease-in-out;
    min-height: 100vh;
    width: calc(100% - 300px);
    position: fixed;
    top: 0;
    right: 0;
    z-index: 998;
    background-color: var(--main-background-color);
    color: var(--primary-color);
} */

aside {
    background: white;
    color: var(--primary-color);
    min-height: 100vh;
    padding: 10px;
    width: 300px;
    border-left: var(--primary-color) solid 3px;
    position: fixed;
    top: 0;
    right: 0;
    left: unset;
}


main {
    margin-left: 0;
    margin-right: 300px;
    left: 0;
    right: unset;
    width: calc(100% - 300px);
}
header {
    background-color: white;
    border-bottom: 2px solid var(--primary-color);
    padding: 10px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

@media (max-width: 991.98px) { /* lg breakpoint */
    aside {
        display: none;
    }

    main {
        margin-right: 0;
        width: 100%;
    }
}

