:root {
    /*--background: linear-gradient(45deg, #FFF, #f2d9f7, #ccd0f6); !* Lighter background for clarity *!*/
    --logo-img: '/assets/images/light-logo.png';
    --background: #fff;
    --text-gradient: linear-gradient(359deg, #681EEB 30%, #FF00CC 70%);
    --white: #fff;
    --text-white: #fff;
    --black: #000;
    --widget-border: transparent;
    --course-bg: url('../../assets/images/courses/lite-bg.jpg') no-repeat center center;
    --widget-bg:#f5f5f5;
    --widget-bg-white:#ffff;
    --theme-primary: #681EEB;
    --primary: #7300e7;
    --primary-hover: #7300e7;
    --border-color: grey;
    --border-hover: rgba(255, 255, 255, 0.2);
    --border-focus: rgba(255, 255, 255, 0.3);
    --text-primary: rgba(255, 255, 255, 0.8);
    --text-secondary: rgba(255, 255, 255, 0.6);
    --input-bg: rgba(255, 255, 255, 0.1);
    --input-bg-focus: rgba(255, 255, 255, 0.15);
    --input-shadow: rgba(255, 255, 255, 0.1);
    --card-bg: rgba(255, 255, 255, 0.1);
    --btn-outline-hover: rgba(255, 255, 255, 0.1);
    --recorded-video-bg: #80808087;
    --select-dropdown-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23000000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    /*--ai-bg-clr: #f5f5f5;*/
}

[data-theme="dark"] {
    --logo-img: '/assets/images/dark-logo.png';
    /*--text-color: linear-gradient(45deg, #681EEB, #FF116D);*/
    --text-gradient: #fff;
    --white: #323D4E;
    --black: #fff;
    --text-white: #fff;
    /*--background: linear-gradient(250deg, #a60684, #6632a8, #000);*/
    --background: #000;
    --widget-border: #fff;
    --course-bg: transparent;
    /*--widget-bg:#15151529;*/
    --widget-bg: rgb(0 0 0 / 25%);
    --widget-bg-white:#15151529;
    --theme-primary: #57B9FF;
    --primary: #7300e7;
    --primary-hover: #7300e7;
    --border-color: rgba(255, 255, 255, 0.2);
    --border-hover: rgba(255, 255, 255, 0.2);
    --border-focus: rgba(255, 255, 255, 0.3);
    --text-primary: rgba(255, 255, 255, 0.8);
    --text-secondary: rgba(255, 255, 255, 0.6);
    --input-bg: rgba(255, 255, 255, 0.1);
    --input-bg-focus: rgba(255, 255, 255, 0.15);
    --input-shadow: rgba(255, 255, 255, 0.1);
    --card-bg: rgba(255, 255, 255, 0.1);
    --btn-outline-hover: rgba(255, 255, 255, 0.1);
    --select-dropdown-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --recorded-video-bg: transparent;
    /*--ai-bg-clr: rgb(0 0 0 / 25%);*/
    /* Spinning gradient for dark mode */
    .bg-gradient-spin {
        animation: ColorBlobs_spin__CbrXa 8s ease-in-out infinite;
        background: conic-gradient(from 0deg, #a60684, #6632a8, #05558f, #a60684, #6632a8, #05558f);
    }
}



html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--background);
    background-size: 100% 100%; /* Increase size for smoother animation */
    font-family: Poppins, sans-serif!important;
}

@keyframes ColorBlobs_spin__CbrXa {
    0% {
        transform: translate(-50%, -50%) rotate(0deg) scale(2)
    }

    to {
        transform: translate(-50%, -50%) rotate(1turn) scale(2)
    }
}

.blur-background {
    filter: blur(170px);
    pointer-events: none;
    position: absolute;
    min-width: 100%;
    margin-top: 0;
    /*height: 180%;*/
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    z-index: 0;
    opacity: inherit;
}

.mentor-screener-blur-background {
    filter: blur(300px);
}

.gradient-container {
    border-radius: 99999px;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 134vw;
    min-width: 1000px;
    height: 120vh;
    transform: translate(-50%, -50%) scale(0.6);
    overflow: hidden;
}

.bg-gradient-spin {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 100vw;
    transform: translate(-50%, -50%);
}

.nav-link:focus, .nav-link:hover {
    color: var(--theme-primary);
}

/*@keyframes gradient-rotation {*/
/*    0% {*/
/*        background-position: 0% 50%;*/
/*    }*/
/*    50% {*/
/*        background-position: 100% 50%;*/
/*    }*/
/*    100% {*/
/*        background-position: 0% 50%;*/
/*    }*/
/*}*/


.hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    inset: 0;
    z-index: 1;
}
.hero {
    position: relative;
    height: 100vh;
}
.hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    height: 100%;
    /*display: flex;*/
    /*justify-content: center;*/
    /*align-items: center;*/
}
/*.hero h1, .hero p {*/
/*    padding: 10px;*/
/*}*/
.btn-custom {
    background-color: #007bff;
    color: #fff;
}
.btn-custom:hover {
    background-color: #0056b3;
}

.hero-bg img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: none;
    z-index: 1;
}

.clr-theme-primary{
    color: var(--theme-primary);
}

/*  Simple button slide */
.btn-theme-default {
    background-color: transparent;
    letter-spacing: 1px;
    background-size: 0 100%;
    background-image: linear-gradient(to left, #57B9FF, #57B9FF);
    background-repeat: no-repeat;
    transition: all 0.5s;
    font-size: 14px;
    text-transform: capitalize;
    max-width: 100%;
    padding: 0.5em 1em;
    /*margin: 2em;*/
    border: 1px solid #57B9FF;
    border-radius: 5px;
    color: #57B9FF;
    cursor: pointer;
    display: inline-block;
    position: relative;
    text-align: center;
}

.btn-theme-default:hover {
    border-color: #57B9FF;
    background-color: #57B9FF;
    background-image: linear-gradient(to right, #57B9FF, #57B9FF);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    transition: all 0.5s;
    color: #fff;
    text-decoration: none;
}

.clr-text-white{
    color: var(--text-white);
}

.clr-white{
    color: var(--white) !important;
}
.clr-black{
    color: var(--black) !important;
}

.bg-clr-transparent{
    background-color: transparent!important;
}

.bg-transparent{
    background: transparent!important;
}

.navbar-nav .nav-item {
    position: relative; /* Position relative for absolute positioning of the border */
}

.navbar-nav .nav-item::after {
    content: '';
    display: block;
    height: 7px;
    border-radius: 10px;
    background: var(--theme-primary);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1.1rem;;
    opacity: 0;
    transition: opacity 0.3s;
}

.navbar-nav .nav-item:hover::after,
.navbar-nav .nav-item.active::after { /* Show border on hover and when active */
    opacity: 1; /* Show border */
}

.text-right{
    text-align: right!important;
}

.divider {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 20px 0;
}

.divider::before,
.divider::after {
    content: '';
    flex: 1;
    border-bottom: 1px solid #ccc; /* Line color */
    margin: 0 10px; /* Space between the text and the line */
}



.custom-toggle {
    height: 0;
    width: 0;
    visibility: hidden;
}

.custom-label {
    cursor: pointer;
    width: 50px;
    height: 25px;
    background: grey;
    display: block;
    border-radius: 100px;
    position: relative;
    transition: background-color 0.3s;
    margin-right: 10px; /* Add space between toggle and text */
}

.custom-label:after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 90px;
    transition: 0.3s;
}

.custom-toggle:checked + .custom-label {
    background: #57B9FF;
}

.custom-toggle:checked + .custom-label:after {
    left: calc(100% - 2px);
    transform: translateX(-100%);
}

.custom-label:active:after {
    width: 30px;
}

/*span {*/
/*    font-size: 16px;*/
/*    color: white;*/
/*}*/



.header-border{
    border-bottom: 1px solid grey;
    padding: 0.5%;
}

.heading-clr {
    background: var(--text-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.notification-dropdown {
    position: absolute;
    top: 30px; /* Position it below the bell icon */
    right: 0; /* Align to the right */
    background-color: white; /* Background color */
    border: 1px solid #ccc; /* Border for visibility */
    border-radius: 5px; /* Rounded corners */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); /* Shadow for depth */
    z-index: 1000; /* Make sure it appears above other content */
    width: 350px; /* Set width for dropdown */
}

.notification-item {
    padding: 10px; /* Padding for each item */
    border-bottom: 1px solid #eee; /* Separator between items */
}

.notification-item:last-child {
    border-bottom: none; /* Remove last border */
}

.notification-item p {
    margin: 0; /* Remove default margin */
}

.notification-item small {
    color: #888; /* Lighter color for time */
    font-size: 0.8em; /* Smaller font for time */
}

/* Notification badge style */
.notification-badge {
    position: absolute;
    top: -5px;
    right: -7px;
    background-color: red;
    color: white;
    border-radius: 50%;
    padding: 1px 6px;
    font-size: 0.6em;
}

/* Animation for badge */
@keyframes alert-animation {
    0% { transform: scale(1); }
    50% { transform: scale(1.5); }
    100% { transform: scale(1); }
}

.notification-badge.animate {
    animation: alert-animation 0.5s; /* Animation duration */
}

.dashboard-suggestion-widget{
    padding: 10%;
    background-color: #ebebeb;
    border-radius: 15px;
}

/* Container styling */
.suggestion-widget {
    height: 350px!important;
    background-color: var(--widget-bg); /* Light gray background */
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    padding-bottom: 20px; /* Space for the text */
    transition: transform 0.3s ease;
    overflow: visible;
    border: 1px solid var(--widget-border);

}

/* Image styling */
.suggestion-image-container {
    position: absolute;
    top: 30px; /* Adjust initial position of the image */
    transition: transform 0.3s ease;
}

.suggestion-image {
    width: 100%;
    transition: transform 0.3s ease;
}

/* Text styling */
.suggestion-text-container {
    position: relative;
    transform: translateY(100%); /* Hidden initially */
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.suggestion-text {
    color: var(--black);
    font-weight: bold;
}

/* Hover effect */
.suggestion-widget:hover .suggestion-image-container {
    transform: translateY(-110px); /* Moves the image up outside of the container */
}

.suggestion-widget:hover .suggestion-text-container {
    transform: translateY(0); /* Brings the text up */
    opacity: 1;
}

/* Activities */
/* ImageGallery.css */
.activities-image-gallery {
    overflow-x: auto; /* Enables horizontal scrolling */
    overflow-y: hidden; /* Hides vertical overflow */
    white-space: nowrap; /* Prevents images from wrapping to the next line */
    padding: 10px 0; /* Top and bottom padding */
}

.activities-image-grid {
    display: flex; /* Change from inline-flex to flex for proper alignment */
    justify-content: flex-start; /* Align items to the left */
    gap: 10px; /* Adds space between items */ /* Use inline-flex for horizontal layout */
}

.activities-image-container {
    width: 165px; /* Set the width of each image container */
    height: 80%;
    margin-right: 10px; /* Space between images */
    position: relative; /* Allows positioning of the title */
    border: 2px solid var(--widget-border); /* Initial border */
    transition: transform 0.3s ease, border-color 0.3s ease; /* Transition for zoom and border color */
    text-align: center; /* Center text below the image */
    background: var(--widget-bg);
    border-radius: 15px;
}

.activities-gallery-image {
    width: 70%; /* Make image fill the container */
    height: auto; /* Maintain aspect ratio */
    border-radius: 10px; /* Optional: rounded corners */
    transition: transform 0.3s ease; /* Smooth zoom effect */
}

/* Title styling */
.activities-image-title {
    margin-top: 10px; /* Space between image and title */
    color: var(--black); /* Title color */
    font-size: 1.2em; /* Adjust font size */
}

/* Add icon styles */
.activities-add-icon {
    display: flex;
    flex-direction: column; /* Stack icon and title vertically */
    align-items: center; /* Center content */
    justify-content: center; /* Center content */
    background-color: var(--widget-bg); /* Light gray background for the add icon */
    border: 2px dashed #ccc; /* Dashed border */
    border-radius: 10px; /* Rounded corners */
    height: 125px; /* Match height with image containers */
}

/* Hover effect */
.activities-image-container:hover {
    transform: scale(1.1); /* Zoom in effect */
    border-color: skyblue; /* Change border color to blue */
    border-radius: 15px;
}

.activities-image-container:hover .activities-gallery-image {
    transform: scale(1.1); /* Zoom in effect on image */
}


.upcoming-events-box{
    padding: 10%;
    background: var(--widget-bg);
    border-radius: 15px;
    margin-top: 10%;
    height: 100%;
    border: 1px solid var(--widget-border);
}

/*.view-all{*/
/*    color: #681EEB!important;*/
/*}*/

.event-item {
    display: flex; /* Flex container for the event item */
    justify-content: space-between; /* Space between title and explore link */
    align-items: center; /* Center items vertically */
    padding: 10px; /* Add some padding for spacing */
    border-radius: 5px; /* Optional: rounded corners */
    margin-bottom: 8%; /* Space between multiple event items */
    transition: background 0.3s ease; /* Smooth transition for background change */
}

/* Hover effect */
.event-item:hover {
    background: linear-gradient(35deg, #681EEB 30%, #FF00CC 70%); /* Gradient background on hover */
    border-radius: 5px; /* Keep the border radius */
    color: #fff; /* Optional: change text color on hover for better contrast */
}

/* Ensure text and link color remains visible */
.event-item:hover .explore-link {
    color: var(--black); /* Change explore link color on hover */
}

.event-info {
    display: flex; /* Flex container for the event info */
    align-items: center; /* Center icon and title vertically */
}

.event-icon {
    display: flex; /* Flex container for the icon */
    align-items: center; /* Center icon */
    justify-content: center; /* Center icon */
    width: 40px; /* Set width for the icon */
    height: 40px; /* Set height for the icon */
    border-radius: 50%; /* Make it circular */
    margin-right: 10px; /* Space between the icon and title */
    background: grey;
}

.event-title {
    margin: 0; /* Remove default margin */
    font-size: 1.2em; /* Adjust font size for the title */
}

.explore-link {
    color: var(--black); /* Change color for the explore link */
    text-decoration: none; /* Remove underline */
}

.explore-link:hover {
    text-decoration: underline; /* Add underline on hover for better UX */
}

.circular-arrow {
    display: flex; /* Use flexbox for centering */
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically */
    width: 40px; /* Width of the circle */
    height: 40px; /* Height of the circle */
    background-color: #d3d3d3; /* Background color for the circle */
    border-radius: 50%; /* Make it circular */
    /*border: 2px solid #681EEB; !* Optional: border color *!*/
    transition: background-color 0.3s ease; /* Optional: transition for hover */
}

/* Rotating the icon */
.arrow-icon {
    font-size: 24px; /* Adjust icon size */
    color: #fff; /* Icon color */
    transform: rotate(45deg); /* Rotate the icon */
    transition: transform 0.3s ease; /* Optional: smooth transition for rotation */
}

/* Optional: hover effect */
.circular-arrow:hover {
    color: #fff;
    background-color: skyblue; /* Change background on hover */
}

.circular-arrow:hover .arrow-icon {
    transform: rotate(90deg) scale(1.1); /* Scale icon slightly on hover */
}


/*Mentor Carousel*/
/* Mentor Arrow Styling */
.mentor-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    font-size: 2rem;
    color: #681EEB;
    border-radius: 50%;
    padding: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.mentor-arrow:hover {
    background-color: transparent;
}

.next {
    right: -35px; /* Adjust for desired positioning */
}

.prev {
    left: -35px; /* Adjust for desired positioning */
}

/* Slide and Image Spacing */
.mentor-slide {
    padding: 0 10px; /* Adds space to the left and right of each slide */
}

/* Image Container and Overlay Setup */
/* Image Container and Overlay Setup */
.mentor-image-container {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    transition: transform 0.3s ease;
}

.mentor-image {
    width: 100%;
    transition: transform 0.3s ease;
    height: auto;
}

.mentor-slide:hover .mentor-image {
    transform: scale(1.05); /* Slight zoom effect on hover */
}

/* Full Image Overlay Styling */
.mentor-overlay {
    position: absolute;
    bottom: -100%; /* Start off-screen at the bottom */
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6); /* Semi-transparent dark overlay */
    /*display: flex;*/
    align-items: flex-end; /* Align items to the bottom */
    justify-content: center;
    transition: bottom 0.3s ease; /* Transition for the slide-in effect */
    border-radius: 10px;
    padding-top: 10rem;
}

/* Slide the overlay up to cover the image on hover */
.mentor-slide:hover .mentor-overlay {
    bottom: 0; /* Slide the overlay up to cover the image */
}

/* Container for the content at the bottom */
.overlay-content {
    width: 100%; /* Make it full width */
    padding: 10px; /* Add some padding */
    text-align: center; /* Center align text */
}

/* Mentor Name */
.mentor-name {
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0; /* Remove margin to avoid extra space */
    color: var(--text-white);
}

/* ViewCourseButton.css */

/* Button Styling */
.view-course-btn {
    background-color: transparent;
    border: none;
    color: #fff;
    padding: 8px 16px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px;
    transition: background-color 0.3s ease;
    position: relative; /* For positioning the icon */
    display: flex; /* To align the icon and text */
    align-items: center; /* Center align text and icon vertically */
    margin:0 auto;
}

/* Arrow Icon Styling */
.mentor-arrow-icon {
    width: 20px; /* Set width */
    height: 20px; /* Set height */
    margin-left: 8px; /* Space between the text and icon */
    background-color: transparent; /* White circular background */
    border: 1px solid #fff;
    border-radius: 50%; /* Circle shape */
    display: flex; /* Align the icon inside the circle */
    align-items: center; /* Center align icon vertically */
    justify-content: center; /* Center align icon horizontally */
    transition: transform 0.3s ease; /* Smooth transition for rotation */
    transform: rotate(45deg); /* Initial rotation */
}

/* Rotate the arrow to 90 degrees on hover */
.view-course-btn:hover .mentor-arrow-icon {
    transform: rotate(90deg); /* Rotate to 90 degrees on hover */
}

/* Change button color on hover */
.view-course-btn:hover {
    background-color: transparent; /* Change button background color on hover */
}


.view-all-view-course-btn {
    background-color: transparent;
    border: none;
    color: var(--theme-primary);
    padding: 8px 16px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 24px;
    transition: background-color 0.3s ease;
    position: relative; /* For positioning the icon */
    display: flex; /* To align the icon and text */
    align-items: center; /* Center align text and icon vertically */
    margin:0 auto;
    /*color: var(--text-gradient);*/
}

/* Arrow Icon Styling */
.view-all-mentor-arrow-icon {
    width: 25px; /* Set width */
    height: 25px; /* Set height */
    margin-left: 8px; /* Space between the text and icon */
    background-color: transparent; /* White circular background */
    /*border: 1px solid #000;*/
    border-radius: 50%; /* Circle shape */
    display: flex; /* Align the icon inside the circle */
    align-items: center; /* Center align icon vertically */
    justify-content: center; /* Center align icon horizontally */
    transition: transform 0.3s ease; /* Smooth transition for rotation */
    transform: rotate(130deg); /* Initial rotation */
}

/* Rotate the arrow to 90 degrees on hover */
.view-all-view-course-btn:hover .view-all-mentor-arrow-icon {
    transform: rotate(45deg); /* Rotate to 90 degrees on hover */
}


/*Courses*/
/*Filter*/
.filter-box{
    max-width: 85%;
    background-color: var(--widget-bg);
    padding: 10% !important;
    border-radius: 15px;
    /*margin-top: 20%;*/
    border: 1px solid var(--widget-border);
}

.grey-box{
    background-color: var(--widget-bg);
    border-radius: 15px;
}

.mentor-carousel-container {
    padding: 0 5px; /* Minimized padding on left and right */
    position: relative; /* Ensure relative positioning for overflow control */
}

.react-multi-carousel-list {
    display: flex;
    align-items: center;
    overflow: visible; /* Allow arrows to overflow */
}

.carousel-item-spacing {
    padding: 0 4px; /* Reducing the space between each item */
}

.mentor-carousel-item {
    padding: 0; /* No extra padding around each item */
    margin: 0; /* Ensuring no extra margin */
    transition: transform 0.2s;
}

.mentor-carousel-item:hover {
    transform: scale(1.05);
}

.mentor-carousel-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #f2f2f2;
    border: 2px solid #6200ea;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6200ea;
    cursor: pointer;
    z-index: 2; /* Ensure arrows are on top */
}

.mentor-carousel-arrow-left {
    left: -5%; /* Space to the left */
}

.mentor-carousel-arrow-right {
    right: -5%; /* Space to the right */
}

.course-mentor-image {
    width: 80px;
    height: 80px;
    margin: auto;
    border: 3px solid #ccc;
    border-radius: 50%;
    transition: border-color 0.3s;
}

.mentor-selected .course-mentor-image {
    border-color: #6200ea;
    box-shadow: 0 0 10px rgba(98, 0, 234, 0.6);
}

.text-primary {
    color: #6200ea !important;
}

.text-black {
    color: #333 !important;
}
/* CardWrapper.module.css */
.cardWrapper {
    position: relative;
    width: 400px;
    height: 500px;
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
    box-shadow: 10px 10px 53px 0px rgba(0, 0, 0, 0.49);
}

.image {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    transition: all 0.3s ease-in-out;
    z-index: 20;
    box-shadow: 10px 10px 53px 0px rgba(0, 0, 0, 0.49);
}

.cardBottom {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 1rem;
    color: #fff;
    background-color: rgba(110, 122, 92, 0.7);
    transform: translateY(100%);
    transition: all 0.8s ease;
    text-align: center;
}

.cardTop {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.cardWrapper:hover .image {
    filter: blur(1.4px);
    transform: scale(1.5);
    box-shadow: inset -6px -1px 32px 0px rgba(0, 0, 0, 0.75);
}

.cardWrapper:hover .cardBottom {
    transform: translateY(0);
}


.card-bottom{
    width: 100%;
    position: absolute;
    z-index: 20;
    display: none;
    top: 50%;
    background-color:rgba(110, 122, 92, 0);
    padding: 100px 20px;
    color: #ffffff;
    transform: translate(100%, -50%);
}

.top-text{
    font-size: 25px;
    line-height: 40px;
    font-weight: bold;
    letter-spacing: 1px
}

.bottom-text{
    font-size: 15px;

}


.button{
    position: relative;
    display: block;
    outline: none;
    cursor: pointer;
    margin-top: 25px;
    border: none;
    border-radius: 3px;
    background-color: #f8961e;
    color: #ffffff;
    padding: 5px 20px
}

/*Courses*/
.course-details-breadcrumb-bg{
    background: var(--course-bg);
    background-size: cover;
    background-blend-mode: overlay;
    padding-bottom: 20px;
    /*height: 340px;*/
    border: 1px solid #fff;
}
.course-video-border{
    /*border: 0px solid blue;*/
    background-color: var(--widget-bg);
}

.public-chat-bg{
    background-color: var(--widget-bg) !important;
}

.content-box{
    background-color: var(--widget-bg);
    border: 1px solid var(--widget-border);
}
.course-bg{
    background-image: var(--course-bg);
}
.selected-mentor {
    border: 5px solid #7300e7;
    border-radius: 50%;
}
/*End*/

/*Loader*/
.loader-container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100px; /* Adjust based on your layout needs */
}

.spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-left-color: #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
/*End*/

/*Services*/
.service-item {
    text-align: center;
}

.service-link {
    text-decoration: none;
    color: inherit;
}

.icon-container {
    width: 200px;
    height: 200px;
    margin: 0 auto;
    border-radius: 12px;
    background: var(--widget-bg);
    border: 1px solid var(--widget-border);
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-image {
    width: 70%;
    height: 70%;
    object-fit: contain;
    transition: transform 0.3s ease; /* Zoom effect only on the image */
}

.service-text {
    margin-top: 8px;
    font-size: 24px;
    transition: transform 0.3s ease; /* Zoom effect only on the text */
}

.service-item:hover .service-image,
.service-item:hover .service-text {
    transform: scale(1.1); /* Only image and text will zoom */
}
/*End*/

/*Profile*/
/*.profile-dashboard {*/
/*    background: var(--background);*/
/*}*/

.profile-tab-link {
    position: relative;
    background: transparent;
    border: none !important;
    color: var(--black);
    margin-bottom: 3% !important;
    transition: color 0.3s ease; /* Optional: smooth color change */
}

.profile-tab-link.active {
    color: var(--black) !important;
    background-color: transparent !important;
}

.profile-tab-link::after {
    content: "";
    position: absolute;
    bottom: -6px; /* Adjust the position as needed */
    left: 50%; /* Centers the border initially */
    width: 0%; /* Start with no width */
    height: 6px;
    background-color: var(--primary);
    border-radius: 12px;
    transition: width 0.3s ease, left 0.3s ease; /* Smooth transition */
}

.profile-tab-link.active::after {
    width: 50%; /* Expand the width when active */
    left: 25%; /* Center the expanded border */
}

.profile-tab-link:hover {
    color: var(--black) !important;
    border: none !important;
    /*border-bottom: 2px solid var(--border-hover) !important;*/
}


.profile-input {
    background: var(--input-bg) !important;
    border: 1px solid var(--black) !important;
    color: var(--black) !important;
    /*color: #bb7676 !important;*/
}

.profile-input-gender{
    background: var(--input-bg) !important;
    color: var(--black);
}

.profile-input:focus {
    background: var(--input-bg-focus) !important;
    border-color: var(--black) !important;
    box-shadow: 0 0 0 0.25rem var(--input-shadow) !important;
}

.profile-card {
    background: transparent !important;
    /*border: 1px solid var(--border-color) !important;*/
    border-radius: 0.375rem;
    margin-bottom: 1rem;
}

.profile-card-body {
    padding: 1.25rem;
}

.profile-subscription-card {
    background: var(--card-bg) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: 0.375rem;
    margin-bottom: 1rem;
}

.profile-subscription-body {
    padding: 1.25rem;
}

.profile-form-label {
    color: var(--black);
    margin-bottom: 0.5rem;
    display: block;
}

.profile-card-title {
    color: var(--black);
    margin-bottom: 1rem;
}

.profile-card-text {
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.profile-btn-primary {
    background: var(--primary);
    border: none;
    color: var(--black);
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    cursor: pointer;
}

.profile-btn-primary:hover {
    background: var(--primary-hover);
}

.profile-btn-outline {
    background: transparent;
    border: 1px solid var(--border-color);
    color: var(--black);
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    cursor: pointer;
}

.profile-btn-outline:hover {
    background: var(--btn-outline-hover);
}

.profile-image {
    width: 100%;
    height: 300px;
    object-fit: contain;
    border-top-left-radius: 0.375rem;
    border-top-right-radius: 0.375rem;
}

.profile-tabs-container {
    width: 100%;
    background-color: transparent; /* Optional: Add a background color for visual separation */
    padding: 0;
}

.profile-tabs {
    justify-content: center;
    border-bottom: 1px solid var(--border-color);
}

.pr-10per{
    padding-right: 10%;
}
/*End*/

/*Toast*/
.colored-toast.swal2-icon-success {
    background-color: #a5dc86 !important;
}

.colored-toast.swal2-icon-error {
    background-color: #f27474 !important;
}
/*end*/

/*Courses*/
/* mycourse-foundation.css */

/* Container styles */
.mycourse-container {
    max-width: 1200px;
    margin: 0 auto;
}

.mycourse-heading {
    font-size: 2rem;
    font-weight: 600;
    color: #2c3e50;
}

/* Card styles */
.mycourse-card {
    transition: all 0.3s ease;
    border: none;
    border-radius: 12px;
    overflow: hidden;
}

.mycourse-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;
}

.mycourse-image {
    transition: transform 0.3s ease;
}

.mycourse-card:hover .mycourse-image {
    transform: scale(1.05);
}

.mycourse-image-wrapper {
    overflow: hidden;
}

/* Content styles */
.mycourse-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 0.5rem;
}

.mycourse-description {
    font-size: 0.9rem;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.mycourse-mentor {
    font-size: 0.9rem;
}

/* Progress bar styles */
.mycourse-progress-bar-wrapper {
    height: 8px;
    background-color: #e9ecef;
    border-radius: 4px;
    overflow: hidden;
}

.mycourse-progress-bar {
    height: 100%;
    background-color: #0d6efd;
    transition: width 0.3s ease;
}

/* Badge styles */
.mycourse-status-badge {
    font-size: 0.8rem;
    padding: 0.5rem 1rem;
    border-radius: 20px;
}

.mycourse-completed-badge {
    font-size: 0.8rem;
    padding: 0.5rem 1rem;
    border-radius: 20px;
}

/* Tab styles */
.mycourse-tabs {
    border-bottom: 2px solid #e9ecef;
    gap: 1rem;
}

.mycourse-tab-btn {
    border: none;
    background: none;
    padding: 0.75rem 1.25rem;
    color: var(--black);
    position: relative;
    transition: color 0.3s ease;
}

.mycourse-tab-btn:hover {
    color: #0d6efd;
}

.mycourse-tab-btn.active {
    color: #0d6efd;
    font-weight: 500;
}

.mycourse-tab-btn.active::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background-color: #0d6efd;
}

/* Empty state styles */
.mycourse-empty-state {
    padding: 3rem 0;
}

.mycourse-empty-icon {
    font-size: 3rem;
    color: #6c757d;
    display: block;
}

.mycourse-empty-title {
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.mycourse-empty-text {
    color: #6c757d;
}

/* Certificate button styles */
.mycourse-certificate-btn {
    background-color: transparent;
    border: 2px solid #0d6efd;
    color: #0d6efd;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.mycourse-certificate-btn:hover {
    background-color: #0d6efd;
    color: white;
}

/* Tab content transitions */
.mycourse-tab-pane {
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.mycourse-tab-pane.show {
    display: block;
}

.mycourse-tab-pane.active {
    opacity: 1;
}
/*End*/

/*Sandbox*/
.sandbox-hero {
    /* hero-specific styling */
}

.sandbox-main-title {
    font-size: 18px;
    font-weight: bold;
    color: #4B0082;
    text-align: center;
}

.sandbox-play-now {
    color: #4B0082;
    text-decoration: none;
    font-weight: bold;
    display: flex;
    align-items: center;
}

.sandbox-play-now img {
    width: 16px;
    height: 16px;
    margin-right: 5px;
}

.sandbox-game-card {
    border-radius: 12px;
    padding: 20px;
    background: radial-gradient(98.32% 210.82% at 0.91% 3.12%, rgba(225, 225, 225, 0.16) 0%, rgba(187, 186, 186, 0.16) 100%);
    text-align: center;
    transition: transform 0.3s ease;
}

.sandbox-game-card:hover{
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;
    transform: scale(1.1);
}

.sandbox-game-link {
    text-decoration: none;
    color: black;
}

.sandbox-game-link:hover {
    color: black;
}

.sandbox-game-title {
    margin-top: 10px;
    font-size: 16px;
    font-weight: bold;
}

.sandbox-leaderboard-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
}

.sandbox-leaderboard-link {
    color: #4B0082;
    text-decoration: none;
}

.sandbox-leaderboard-profile {
    display: flex;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #ddd;
}

.sandbox-leaderboard-profile img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-right: 10px;
}

.sandbox-rank {
    font-size: 14px;
    color: #666;
}
/*End*/

.section-box{
    /*background: radial-gradient(98.32% 210.82% at 0.91% 3.12%, rgba(225, 225, 225, 0.16) 0%, rgba(187, 186, 186, 0.16) 100%);*/
    background: var(--widget-bg);
    padding: 10%;
    border-radius: 15px;
    height: 100%;
}

/*LeaderBoard*/
.leaderboard-card{
    transition: transform 0.3s ease;
}

.leaderboard-card:hover{
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;
}

.leader-badge-card .card {
    background: radial-gradient(98.32% 210.82% at 0.91% 3.12%, rgba(225, 225, 225, 0.16) 0%, rgba(187, 186, 186, 0.16) 100%);
    text-align: center;
    padding: 20px;
    border: none;
    margin-bottom: 15px;
    transition: box-shadow 0.3s ease;
}

.leader-star-img {
    width: 80px;
    height: 80px;
    margin-bottom: 10px;
}

.leader-star-container {
    position: relative;
    display: inline-block;
    margin-bottom: 20px;
    margin-top: 30%;
}

.leader-star-number {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2.5rem;
    color: #fff;
    font-weight: bold;
}

/* Dots Around the Star */
.dot {
    position: absolute;
    border-radius: 50%;
    animation: dotMove 2s infinite ease-in-out;
}

/* Dot Positions and Colors */
.dot1 { width: 6px; height: 6px; background-color: #ff00ff; top: -10px; left: 100px; }
.dot2 { width: 8px; height: 8px; background-color: #ffb3ff; top: 15px; left: 80px; }
.dot3 { width: 5px; height: 5px; background-color: #681EEB; top: -15px; left: -60px; }
.dot4 { width: 7px; height: 7px; background-color: #ff00ff; top: 30px; left: -30px; }
.dot5 { width: 6px; height: 6px; background-color: #ffb3ff; top: 45px; left: 100px; }
.dot6 { width: 9px; height: 9px; background-color: #681EEB; top: 60px; left: -25px; }
.dot7 { width: 5px; height: 5px; background-color: #ff00ff; top: 80px; left: 70px; }
.dot8 { width: 10px; height: 10px; background-color: #ffb3ff; top: -10px; left: -20px; }

/* Animation */
@keyframes dotMove {
    0%, 100% {
        transform: translate(0, 0);
    }
    50% {
        transform: translate(5px, -5px);
    }
}


.leader-divider {
    width: 100%;
    height: 1px;
    background-color: black;
    margin: 10px auto;
}

.leader-explore-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 5px 15px;
    color: #fff;
    background-color: #681EEB;
    text-decoration: none;
    border-radius: 4px;
}

.leader-sidebar {
    margin-bottom: 20px;
    font-size: small;
}

.leader-sidebar .list-group-item {
    background: radial-gradient(98.32% 210.82% at 0.91% 3.12%, rgba(225, 225, 225, 0.16) 0%, rgba(187, 186, 186, 0.16) 100%);
    border: none;
    display: flex;
    align-items: center;
}
/*End*/

/*Chats*/
.list-group-item:hover {
    background-color: #f0f0f0;
    cursor: pointer;
}

.message-sent {
    background-color: #cfe9ff;
    border-radius: 12px;
    padding: 8px;
    margin: 5px 0;
}

.message-received {
    background-color: #e1e5ea;
    border-radius: 12px;
    padding: 8px;
    margin: 5px 0;
}

.chat-header {
    background: linear-gradient(135deg, #8e2de2 0%, #4a00e0 100%);
    color: #fff;
    padding: 1rem;
}

.emoji-picker {
    display: flex;
    justify-content: center;
    padding: 0.5rem;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    position: absolute;
    bottom: 0px;
    right: 10%;
    z-index: 1000;
}

.h-85{
    height: 85% !important;
}

.bg-grey{
    background-color: var(--widget-bg) !important;
}
.box-shadow{
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;
}
.h-3em{
    height: 3em;
}
/*End*/

/*AI*/
.unique-pdf-card {
    display: flex;
    align-items: center;
    border: none;
    border-radius: 10px;
    background: radial-gradient(98.32% 210.82% at 0.91% 3.12%, rgba(225, 225, 225, 0.16) 0%, rgba(187, 186, 186, 0.16) 100%);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 1rem;
    transition: box-shadow 0.3s ease; /* Smooth transition */
    width: 80%;
}

.unique-pdf-card:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); /* Stronger shadow on hover */
}

.unique-card-info {
    font-size: 0.9rem;
    color: #333;
}

.unique-name {
    font-weight: bold;
}

.unique-datetime {
    color: #777;
    text-transform: lowercase;
}

.unique-divider {
    width: 1px;
    background-color: #0d0c0c;
    height: 100px;
    margin: 0 1rem;
}

.unique-card-details {
    text-align: center;
    margin-right: 1rem;
}

.unique-number {
    font-size: 4.5rem;
    font-weight: bold;
    color: #333;
    margin: 0;
}

.unique-file-type {
    font-size: 1rem;
    color: #777;
}

.unique-icon-section {
    display: flex;
    align-items: center;
    justify-content: center;
}

.unique-pdf-icon {
    width: 100px;
    height: 120px;
    margin-right: -8rem;
}
/*End*/

/*Calendar*/
/* Calendar Container */

.calendar-card {
    border: none;
    transition: box-shadow 0.3s ease;
}

.calendar-card-body {
    padding: 1.5rem;
}

/* Calendar Header */
.calendar-title h2 {
    margin-bottom: 0.5rem;
    color: #2c3e50;
}

.calendar-subtitle {
    font-size: 0.9rem;
    color: #6c757d;
}

.calendar-actions {
    display: flex;
    gap: 0.5rem;
}

/* Calendar Main */
.calendar-main {
    background-color: white;
    padding: 20px;
    border-radius: 8px;
}

/* Calendar Events */
.calendar-event {
    padding: 4px 8px !important;
    margin: 2px;
    border-radius: 4px !important;
    font-size: 0.875rem !important;
    cursor: pointer;
    transition: all 0.2s ease;
}

.calendar-event:hover {
    transform: scale(1.02);
    opacity: 1 !important;
    z-index: 1000;
}

/* Calendar Header Customization */
.calendar-main .rbc-header {
    padding: 10px !important;
    font-weight: 600 !important;
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

/* Calendar Toolbar */
.calendar-main .rbc-toolbar {
    margin-bottom: 20px !important;
    padding: 10px 0;
}

.calendar-main .rbc-toolbar button {
    color: #6c757d !important;
    border: 1px solid #dee2e6 !important;
    padding: 6px 12px;
    transition: all 0.2s ease;
}

.calendar-main .rbc-toolbar button:hover {
    background-color: #f8f9fa !important;
    color: #000 !important;
}

.calendar-main .rbc-toolbar button.rbc-active {
    background-color: #0d6efd !important;
    color: white !important;
}

/* Calendar Day Cells */
.calendar-main .rbc-today {
    background-color: #f8f9fa !important;
}

/* Modal Styles */
.calendar-modal {
    background-color: rgba(0, 0, 0, 0.5);
    animation: calendar-fade-in 0.3s ease-out;
}

.calendar-modal-dialog {
    animation: calendar-slide-up 0.4s ease-out;
}

.calendar-modal-content {
    border: none;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.calendar-modal-header {
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

.calendar-modal-title {
    color: #2c3e50;
    font-weight: 600;
}

.calendar-event-details {
    padding: 0.5rem 0;
}

.calendar-event-desc {
    line-height: 1.6;
}

.calendar-event-time,
.calendar-event-location {
    color: #6c757d;
    font-size: 0.9rem;
}

.calendar-icon {
    color: #0d6efd;
}

.calendar-badge {
    text-transform: uppercase;
    font-size: 0.75rem;
    padding: 0.4em 0.8em;
}

/* Custom Animations */
@keyframes calendar-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes calendar-slide-up {
    from {
        opacity: 0;
        transform: translateY(100px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive Styles */
@media (max-width: 768px) {
    .calendar-main .rbc-toolbar {
        flex-direction: column;
        align-items: stretch !important;
        gap: 10px;
    }

    .calendar-main .rbc-toolbar-label {
        margin: 10px 0;
        text-align: center;
    }

    .calendar-header {
        flex-direction: column;
        gap: 1rem;
    }

    .calendar-actions {
        width: 100%;
        justify-content: space-between;
    }
}

/* Print Styles */
@media print {
    .calendar-container {
        padding: 0 !important;
    }

    .calendar-actions {
        display: none !important;
    }
}
/*End*/

/*Podcast*/
/* Trending Section Styling */
.podcast-trending-section {
    text-align: center;
}

.podcast-icon-button {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin: 0;
}

.podcast-icon-button img {
    width: 20px;
    opacity: 0.7;
}

.podcast-recent-playlists .podcast-list-item {
    display: flex;
    align-items: center;
    padding: 10px 15px;
    border: none;
    background-color: var(--widget-bg);
    border-bottom: 1px solid #e0e0e0;
}

.podcast-recent-playlists .podcast-list-item:last-child {
    border-bottom: none;
}

.podcast-recent-playlists .podcast-list-item > span {
    flex-grow: 1;
    text-align: left;
    color: #6c757d;
}

.podcast-duration {
    margin-right: 10px;
    color: #6c757d;
    text-align: right;
    white-space: nowrap;
}

.podcast-recent-playlists h4 {
    font-size: 16px;
    color: #343a40;
    margin-bottom: 15px;
}

.podcast-top-mentor h4 {
    margin-bottom: 10px;
}

.podcast-top-mentor input[type="text"] {
    margin-top: 10px;
}

.podcast-list .podcast-card {
    background-color: var(--widget-bg);
    text-align: center;
    border-radius: 8px;
    padding: 15px;
    margin: 10px 0;
    width: 100%;
    border: none;
    cursor: pointer;
    transition: transform 0.2s;
}

.podcast-list .podcast-card:hover {
    transform: scale(1.05);
}

.podcast-icon-small {
    width: 60px;
    margin-bottom: 10px;
}

.podcast-list .podcast-card p {
    margin: 0;
    font-weight: bold;
}

.podcast-control-buttons {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    gap: 10px;
    margin: 0 auto;
}

.podcast-control-buttons button {
    border: none;
    background: none;
    outline: none;
    cursor: pointer;
}

.podcast-audio-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.podcast-title-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.podcast-icon {
    width: 20px;
}

.podcast-section-background {
    background-color: var(--widget-bg);
    border-radius: 8px;
    padding: 15px;
}

.podcast-image-large {
    margin-top: -50%;
}

.podcast-author-name {
    font-weight: bold;
    color: #6c757d;
    margin-top: 10px;
}
.pt-20per{
    padding-top: 20% !important;
}
/*End*/

.fade-up .modal-dialog {
    transform: translateY(100%);
    transition: transform 0.3s ease-out;
}

.fade-up.show .modal-dialog {
    transform: translateY(0);
}

.selected-blur {
    opacity: 0.5;
    filter: blur(1px);
}

.blurred {
    filter: blur(5px);  /* Adjust the blur intensity as needed */
}

.profile-dropdown {
    width: 11% !important;
    right: 10% !important;
    top: 7% !important;
}

.cursor-pointer{
    cursor: pointer!important;
}

.button-gradient {
    height: 50px;
    border-radius: 10px;
    background-image: linear-gradient(70deg, #ff01c7 0%, #3c00c3 50%, #ff01c7 100%);
    background-size: 250% 100%;
    background-position: 0% 0;
    border: 1px solid transparent;
    transition: background-position 1s ease-out;
    color: white;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.button-gradient:hover {
    background-position: -100% 0;
}

.button-gradient .button-text {
    transition: transform 0.3s ease;
}

.button-gradient .arrow-icon {
    opacity: 0;
    transform: translateX(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.button-gradient:hover .button-text {
    transform: translateX(-5px);
}

.button-gradient:hover .arrow-icon {
    opacity: 1;
    transform: translateX(0);
}

.button-gradient::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300%;
    height: 300%;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform 0.5s ease-out;
}

.button-gradient:hover::after {
    transform: translate(-50%, -50%) scale(1);
}

/*Download Card*/
.download-card {
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow 0.3s ease-in-out;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Subtle default shadow */
}

.download-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3); /* Stronger shadow on hover */
}

.download-card .card-img-top {
    width: 120%;
    height: 200% !important;
    overflow: hidden;
}

.download-card .card-body {
    padding: 1rem;
    background-color: #fff;
}

.back-button {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #007bff;
    margin-bottom: 20px;
}

.back-button:hover {
    text-decoration: underline;
}
/*End*/

/*live classes card*/
.live-classes {
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow 0.3s ease-in-out;
}

.live-classes:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.live-classes-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-right: 1px solid #ddd;
}

.live-classes-card-body {
    padding: 15px;
}

.live-classes-card-title {
    font-size: 1.2rem;
    font-weight: bold;
}

.live-classes-card-text {
    font-size: 1rem;
    margin-bottom: 10px;
}

.live-classes-card-text a {
    color: #007bff;
    text-decoration: none;
}

.live-classes-card-text a:hover {
    text-decoration: underline;
}

.live-classes-btn {
    margin-top: 10px;
    padding: 8px 16px;
    text-align: center;
    border-radius: 4px;
}

.live-classes-btn:hover {
    background-color: #0056b3;
}
/*end*/

/*Course Videos*/
/* Container styles */
.video-course-container {
    max-width: 100%;
}

/* Video Player */
.video-course-player {
    border: 1px solid #ddd;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* Scrollable List */
.video-course-list {
    max-height: 77%; /* Total height */
    overflow-y: auto;
    padding: 0;
    margin: 0;
    list-style: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    border: 1px solid var(--black);
}



/* Optional: Enhance scroll appearance */
.video-course-list::-webkit-scrollbar {
    width: 6px;
}

.video-course-list::-webkit-scrollbar-thumb {
    background-color: #888;
    border-radius: 10px;
}


/* List Item Styles */
.video-course-list-item {
    display: flex;
    align-items: flex-start; /* Changed from center to flex-start */
    padding: 10px;
    gap: 8px;
    min-height: 72px; /* Ensures consistent height for items */
}

.video-course-list-item > .badge {
    margin-top: 2px; /* Aligns badges with first line of text */
}

.video-course-list-item:last-child {
    border-bottom: none;
}

/* Hover Effect */
/*.video-course-list-item:hover {*/
/*    background-color: #f1f1f1;*/
/*}*/

/* Active Item */
.video-course-active {
    /*background-image: linear-gradient(70deg, #ff01c7 0%, #3c00c3 50%, #ff01c7 100%);*/
    color: #57B9FF!important;
    font-weight: bold;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

/* View All Button */
.video-course-view-all {
    font-size: 0.9rem;
    padding: 5px 10px;
}
/*End*/

/*Podcast*/
/* Animation classes */
.slide-in {
    animation: slideIn 0.3s ease-out forwards;
}

.slide-out {
    animation: slideOut 0.3s ease-out forwards;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideOut {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(-100%);
    }
}

/* Additional styles */
.podcast-card {
    border: none;
    background: white;
    border-radius: 8px;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.podcast-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.file-item {
    transition: background-color 0.2s ease-in-out;
}

.file-item:hover {
    background-color: rgba(0, 0, 0, 0.05);
}

.transition-all {
    transition: all 0.2s ease-in-out;
}

.progress {
    height: 5px;
    background-color: #f3f3f3;
}

.progress-bar {
    background-color: #007bff;
}
.podcast-mentor-profile{
    width: 50px;
    margin-bottom: 10px;
    margin-right: 10px;
    height: 40px;
}
.podcast-mentor-box{
    background: var(--widget-bg);
    border-radius: 10px;
    height: 100%;
}
/*End*/

/*Live Session*/
/* Outer card container */
.live-session-card {
    width: 100%;
    border-radius: 24px;
    background: var(--widget-bg);
    border: 0px;
    height: 100%!important;
}

/* Left side curve */
.live-session-left-curve {
    position: absolute;
    left: -20px;
    top: 65%;
    width: 75px;
    height: 80px;
    background: var(--widget-bg-white);
    border-radius: 0 50px 50px 0;
    z-index: 1;
}

/* Right side curve */
.live-session-right-curve {
    position: absolute;
    right: -20px;
    top: 65%;
    width: 70px;
    height: 80px;
    background: var(--widget-bg-white);
    border-radius: 50px 0 0 50px;
    z-index: 1;
}

/* Bottom curve */
.live-session-bottom-curve {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 120px;
    clip-path: ellipse(75% 100% at 50% 100%);
    z-index: 1;
}

/* Card body */
.live-session-card-body {
    z-index: 2; /* Position the body above the curves */
}

/* Attend button */
.live-session-button {
    border-radius: 12px;
    border-width: 2px;
    transition: all 0.3s ease;
}

.live-session-button:hover {
    background-color: #17a2b8; /* Light teal on hover */
    color: white;
}
.hr-line{
    color: var(--theme-primary);;
    opacity: 0.4;
}
.w-90{
    width: 90% !important;
}
/*End*/

.spinner-border {
    width: 1.5rem;
    height: 1.5rem;
    border-width: 0.2em;
}

.live {
    color: red;
    font-weight: bold;
    /*display: flex;*/
    display: contents;
    justify-content: center;
    align-items: center;
}

.rec-icon {
    animation: pulse 1.5s infinite;
    margin-right: 5px;
}

@keyframes pulse {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}

.expired {
    color: gray;
    font-style: italic;
    font-size: 1.2rem;
}


/*Meeting Chat Sidebar*/
.chat-messages {
    overflow-y: auto;
    max-height: calc(100vh - 200px); /* Adjust based on header and input height */
}

/*End*/

/*Header Profile*/
.profile-dropdown-align{
    top: 5%;
    right: 10% !important;
}
a.profile-dropdown-item:hover {
    background-color: #0d6efd;
    color: #fff !important;
}
/*End*/

.pl-0{
    padding-left: 0px!important;
}


/*body {*/
/*    background-color: #222;*/
/*    overflow-x: hidden;*/
/*    font-family: Arial, sans-serif;*/
/*}*/

/* Ensure the swiper container is centered */
.swiper-container {
    width: 100%;
    height: auto; /* Adjust height as needed */
    margin: 0 auto;
    position: relative;
    display: flex;
    justify-content: center;
    padding-top: 15%;
}

/* Flexbox setup for each slide content */
.slide-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease-in-out;
}

/* Style for images */
.slide-img {
    width: 200px;
    height: auto;
    border-radius: 10px; /* Optional for rounded corners */
    transition: transform 0.3s ease-in-out, width 0.3s ease-in-out;
}

/* Style for text */
.slide-text {
    color: white;
    font-size: 24px; /* Default text size */
    margin-top: 10px;
    text-align: center;
    transition: transform 0.3s ease-in-out;
}

/* Active slide styles */
.swiper-slide-active .slide-img {
    width: 300px; /* Enlarge the active image */
    transform: scale(1); /* Slight scale effect */
    transition: transform 0.5s ease-in-out, width 0.5s ease-in-out;
}

.swiper-slide-active .slide-text {
    font-size: 30px; /* Increase size of the active text */
    font-weight: bold; /* Make the active text bold */
    transition: font-size 0.3s ease-in-out, font-weight 0.3s ease-in-out;
}

.pl-10per{
    padding-left: 10%;
}

/* Stars
------------------------------------- */

#space, .stars {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none; /* Allows clicks to pass through this element */
}

.stars {
    background-image:
            radial-gradient(2px 2px at 20px 30px, #eee, rgba(0,0,0,0)),
            radial-gradient(2px 2px at 40px 70px, #fff, rgba(0,0,0,0)),
            radial-gradient(2px 2px at 50px 160px, #ddd, rgba(0,0,0,0)),
            radial-gradient(2px 2px at 90px 40px, #fff, rgba(0,0,0,0)),
            radial-gradient(2px 2px at 130px 80px, #fff, rgba(0,0,0,0)),
            radial-gradient(2px 2px at 160px 120px, #ddd, rgba(0,0,0,0));
    background-repeat: repeat;
    background-size: 200px 200px;
    animation: zoom 5s infinite;
    opacity: 0;
}

.stars:nth-child(1) {
    background-position: 50% 50%;
    animation-delay: 0s;
}
.stars:nth-child(2) {
    background-position: 20% 60%;
    animation-delay: 1s;
}
.stars:nth-child(3) {
    background-position: -20% -30%;
    animation-delay: 2s;
}
.stars:nth-child(4) {
    background-position: 40% -80%;
    animation-delay: 3s;
}
.stars:nth-child(5) {
    background-position: -20% 30%;
    animation-delay: 4s;
}

@keyframes zoom {
    0% {
        opacity: 0;
        transform: scale(0.5);
        animation-timing-function: ease-in;
    }
    85% {
        opacity: 1;
        transform: scale(2.8);
        animation-timing-function: linear;
    }
    100% {
        opacity: 0;
        transform: scale(3.5);
    }
}

/* Demo syles
------------------------------------- */
.swiper.swiper-initialized.swiper-horizontal.swiper-backface-hidden {
    width: 100%;
}
/*}*/


/*Planets*/
/* Slider Zoom Effect */
.slider .item img {
    width: 100%;
    transition: transform 0.3s ease-in-out;
}
.slider .item:hover img {
    transform: scale(1.1);
}

/* Additional Styling for Items */
.item {
    text-align: center;
    margin: 10px;
}



.banner {
    width: 100%;
    height: 60vh;
    text-align: center;
    position: relative;
}

.banner .slider {
    position: absolute;
    width: 180px; /* Reduced width */
    height: 250px;
    top: -30%;
    left: calc(50% - 90px); /* Adjusted to match new width */
    transform-style: preserve-3d;
    transform: perspective(1000px);
    animation: autoRun 20s linear infinite;
    z-index: 2;
}

@keyframes autoRun {
    from {
        transform: perspective(1000px) rotateX(-16deg) rotateY(0deg);
    } to {
          transform: perspective(1000px) rotateX(-16deg) rotateY(360deg);
      }
}

.banner .slider .item {
    position: absolute;
    inset: 0 0 0 0;
    transform:
            rotateY(calc( (var(--position) - 1) * (360 / var(--quantity)) * 1deg))
            translateZ(630px);
}

.banner .slider .item img {
    width: 50%; /* Reduced from 60% */
    height: 60%; /* Reduced from 70% */
    object-fit: contain;
    transform: rotate(0deg) !important; /* Ensure no rotation */
}

@media screen and (max-width: 1023px) {
    .banner .slider{
        width: 160px;
        height: 200px;
        left: calc(50% - 80px);
    }
    .banner .slider .item{
        transform:
                rotateY(calc( (var(--position) - 1) * (360 / var(--quantity)) * 1deg))
                translateZ(300px);
    }
    .banner .content h1{
        text-align: center;
        width: 100%;
        text-shadow: 0 10px 20px #000;
        font-size: 7em;
    }
    .banner .content .author{
        color: #fff;
        padding: 20px;
        text-shadow: 0 10px 20px #000;
        z-index: 2;
        max-width: unset;
        width: 100%;
        text-align: center;
        padding: 0 30px;
    }
}
@media screen and (max-width: 767px) {
    .banner .slider{
        width: 100px;
        height: 150px;
        left: calc(50% - 50px);
    }
    .banner .slider .item{
        transform:
                rotateY(calc( (var(--position) - 1) * (360 / var(--quantity)) * 1deg))
                translateZ(180px);
    }
    .banner .content h1{
        font-size: 5em;
    }
}

.bg-secondary-clr{
    background: radial-gradient(98.32% 210.82% at 0.91% 3.12%, rgba(225, 225, 225, 0.16) 0%, rgba(187, 186, 186, 0.16) 100%) !important;
}
/*End*/



/*Custom Calendar*/
.custom-calendar-colors {
    /* Calendar container styles */
    --calendar-text-color: #fff;
    --calendar-header-color: #fff;
    --calendar-day-color: #fff;
    color: var(--calendar-text-color);
}

/* Header styles */
.custom-calendar-colors .rbc-header {
    color: var(--calendar-header-color);
    font-weight: 600;
}

/* Day number styles */
.custom-calendar-colors .rbc-date-cell {
    color: var(--calendar-day-color);
}

/* Current date styles */
.custom-calendar-colors .rbc-today {
    background-color: rgba(0, 0, 0, 0.04);
}

/* Month/Week/Day view button styles */
.custom-calendar-colors .rbc-toolbar button {
    color: var(--calendar-text-color);
}

.custom-calendar-colors .rbc-toolbar button:hover {
    background-color: #f0f0f0;
}

.custom-calendar-colors .rbc-toolbar button.rbc-active {
    background-color: #e6e6e6;
    color: var(--calendar-text-color);
}

/* Time gutter styles (for week/day view) */
.custom-calendar-colors .rbc-time-gutter .rbc-timeslot-group {
    color: var(--calendar-text-color);
}

/* Current time indicator */
.custom-calendar-colors .rbc-current-time-indicator {
    background-color: #74ad31;
}

/* Off-range dates (dates from other months) */
.custom-calendar-colors .rbc-off-range {
    color: #999;
}

/* Selected slot style */
.custom-calendar-colors .rbc-selected {
    background-color: rgba(0, 0, 0, 0.1);
}

/* Event title color will be controlled by eventStyleGetter */
.custom-calendar-colors .rbc-event-content {
    font-weight: 500;
}

/* Toolbar styles */
.custom-calendar-colors .rbc-toolbar {
    color: var(--calendar-header-color);
    margin-bottom: 20px;
}

/* Month/Week/Day label styles */
.custom-calendar-colors .rbc-toolbar-label {
    color: var(--calendar-header-color);
    font-weight: 600;
    font-size: 1.2em;
}

.rbc-toolbar button {
    color: rgb(155, 155, 155) !important; /* Make the text white */
    background-color: transparent; /* Keep the background transparent */
    border: none; /* Remove any borders */
}

.rbc-toolbar button:focus, 
.rbc-toolbar button:hover {
    outline: none; /* Remove focus outline */
    color: white; /* Keep the text white when hovered */
}

button.d-flex.align-items-center.recordings-hover.list-group-item.active.list-group-item-action {
    background: transparent!important;
}

/* Your global scaling */
@media (max-width: 1566px) {
    .scale {
        transform: scale(0.9) !important;
        transform-origin: top center !important;
    }
}

/* New scaling rule */
@media (max-width: 1566px) {
    .scaling-1 {
        transform: scale(0.8) !important;
        height: 100vh;
        transform-origin: top center !important;
    }
}

.scale-2{
    transform: scale(0.8) !important;
    transform-origin: top center !important;
}

.classroom-card{
    max-height: 200% !important;
}

.transparent-input {
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, 0.5);
    padding: 10px;
    color: var(--white);
    border-radius: 5px;
    outline: none;
}


/* Profile Image Section Styles */
.profile-pic {
    width: 220px;
    height: 220px;
    object-fit: cover;
    border: 4px solid #fff;
}

.profile-pic-loader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 50%;
}

.upload-btn, .remove-btn {
    width: 180px;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}

.file-input {
    opacity: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

/* Transparent Search Input Styles */
.form-control.clr-black.mb-3.mt-2 {
    background-color: transparent;
    border: 1px solid rgba(0, 0, 0, 0.2);
    color: #000;
}

.form-control.clr-black.mb-3.mt-2::placeholder {
    color: var(--black);
}

.form-control.clr-black.mb-3.mt-2:focus {
    background-color: transparent;
    box-shadow: none;
    border-color: rgba(0, 0, 0, 0.4);
    outline: none;
}

.bg-none{
    background-color: transparent!important;
}

/* Transparent Search Input Group Styles */
.input-group .input-group-text {
    background-color: transparent;
    border: 1px solid var(--black);
    border-right: none;
}

.input-group .form-control {
    background-color: transparent;
    border: 1px solid var(--black);
    border-left: none;
    color: #000;
}

.input-group .form-control::placeholder {
    color: var(--black);
}

/* Ensure the input and input-group-text stay connected */
.input-group:focus-within .input-group-text {
    border-color: var(--black);
}

/* General Card Styles */
.bookmark-card {
    position: relative;
    overflow: hidden;
    border-radius: 0.5rem;
    transition: transform 0.3s ease;
  }
  
  .bookmark-card:hover {
    transform: translateY(-5px);
  }
  
  /* Card Image Wrapper */
  .card-image-wrapper {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
  }
  
  /* Course Description Animation */
  .course-description {
    position: absolute;
    bottom: -100%;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 10px;
    height: 100%;
    overflow-y: auto;
    transition: bottom 0.5s ease;
  }
  
  .course-description.show {
    bottom: 0;
  }
  
  .description-content {
    max-height: 100%;
  }

.card-image{
    height: max-content;
}
  
.card-img-top-container {
    height: 100%;
    overflow: hidden;
}

.border-theme-clr{
    border-color: var(--black);
}

.ai-bg-clr{
    background: var(--widget-bg)!important;
}

.skeleton-card {
    border-radius: 10px;
    background: var(--widget-bg);
}

.skeleton-image {
    height: 250px;
    background-color: transparent;
    border-radius: 10px 10px 0 0;
}

.skeleton-title {
    height: 24px;
    width: 70%;
    border-radius: 4px;
    background: var(--widget-bg);
}

.skeleton-text {
    height: 80px;
    background: var(--widget-bg);
    border-radius: 4px;
}

.carousel-container {
    display: flex;
    justify-content: flex-start !important;
}

.carousel-item {
    display: flex;
    justify-content: flex-start;
    padding: 0 10px;
}

/* Override react-multi-carousel default styles */
.react-multi-carousel-track {
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
}

.react-multi-carousel-item {
    flex-shrink: 0;
}
