/*
Theme Name: ClinViCON 2026 Theme
Version: 1.0
Description: Official theme for 2nd Annual Clinical Virology Conference 2026 in Christian Medical College, Vellore
Author: Sleeksoft
Author URI: https://sleeksoft.in
template: bb-theme
*/

/* Add your custom styles here... */ 

/*======================================================
    GENERAL Styles
=======================================================*/
.justify-text p {
    text-align: justify;
}

/* Organising committee images */
.organising-committee img{
    height: 215px !important;
    width: 200px !important;
    max-width: 200px !important;
    object-fit: cover;
}

/*======================================================
    REGISTRATION AND EDIT PROFILE FORM
=======================================================*/
    .sleek-form-container:not(.edit-profile-form) .chairperson_fields,
    .sleek-form-container:not(.edit-profile-form) .pg_student_fields,
    .sleek-form-container:not(.edit-profile-form) .phd_student_fields,
    .sleek-form-container:not(.edit-profile-form) .institution_indian_location_details,
    .sleek-form-container:not(.edit-profile-form) .indian_location_details {
        display: none;
    }
        .sleek-form-container input[type="text"],
        .sleek-form-container input[type="email"],
        .sleek-form-container input[type="number"] {
            height: 38px;
        }

        .sleek-form-container .select2 {
            max-width: 100%;
        }
        .sleek-form-container .select2-selection__rendered {
            line-height: 35px !important;
        }
        .sleek-form-container .select2-container .select2-selection--single {
            height: 38px !important;
            border: 1px solid #e6e6e6;
        }
        .sleek-form-container .select2-selection__arrow {
            height: 34px !important;
        }
        .sleek-form-container h3 {
            font-weight: 400;
            color: #131842;
        }

/*======================================================
    Activation page styles CSS
=======================================================*/
	.activation-wrapper {
		max-width: 1100px;
		margin: 0 auto;
		padding: 50px 0;
	}
		.activation-wrapper .error-message,
		.activation-wrapper .success-message {
		    position: relative;
		    padding: 1rem 1rem;
		    margin-bottom: 1rem;
		    border: 0 solid transparent;
		    border-radius: .25rem;
		}
		.activation-wrapper .error-message {
			color: #862f10;
			background-color: #f9dcd1;
			border-color: #f6caba;
		}
		.activation-wrapper .success-message {
			color: #435e26;
			background-color: #e2ebd9;
			border-color: #d4e1c6;
		}
			.activation-wrapper .success-message a {
				color: #364b1e;
				font-weight: 600;
			}
		.activation-wrapper form {
			padding: 20px;
		    background: #f1f1f1;
		    border-radius: 5px;
		}
			.activation-wrapper form input {
				margin-bottom: 15px;
				border-radius: 5px;
			}
			.activation-wrapper form input[type="submit"] {
				background: #992b30;
				color: #ffffff;
			}

/*======================================================
    PAYMENT FORM STYLES
=======================================================*/
.payment-form {
    padding: 30px;
    background: #f1f1f1;
    border-radius: 5px;
}
    .payment-form label{
        font-weight: 600;
        display: block;
    }
        .payment-form label.form-check-label{
            font-weight: 400;
        }

/*======================================================
    ABSTRACTS Submission - ACF Form STYLES
=======================================================*/
.abstract-form-wrapper {
        padding: 20px;
        background: #f1f1f1;
    }
        .abstract-form-wrapper .acf-form-submit {
            text-align: center;
            margin-top: 30px;
        }
        .abstract-form-wrapper .acf-form-submit .acf-button {
            color: #ffffff;
            background: #073970;
            border-radius: 3px;
            padding: 10px 20px;
        }
    .abstract-form-wrapper .acf-fields > .acf-field {
        border-top-color: #d4d4d4;
    }
    .abstract-form-wrapper div.success-message{
        color: #435e26;
        background-color: #e2ebd9;
        border-color: #d4e1c6;
        padding: 20px 20px 1px 20px;
        margin: 0 15px;
        border-radius: 5px;
    }
    .abstract-form-wrapper div#author-info {
        padding: 20px;
        margin: 15px;
        border: 1px solid #999999;
    }

   .abstract-form-wrapper a.acf-button.acf-repeater-add-row.button.button-primary {
        padding: 5px 10px;
        background: #073970;
        margin-bottom: 10px;
        border-radius: 5px;
        color: #ffffff;
        float: left;
        font-size: 14px;
    }

/*======================================================
    PROGRAM Page - Styles
=======================================================*/
.program-wrapper .seminar-item {
    background: #f5f5f5;
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 5px;
    border: 1px solid #e6e6e6;
}
    .program-wrapper .seminar-item .seminar-title {
        font-size: 1.5rem;
        color: #04264b;
        font-weight: 600;
        margin-bottom: 15px;
    }
        .program-wrapper .seminar-item .related-speakers{
            margin-bottom: 20px;
        }
        .program-wrapper .seminar-item .related-speakers .speaker-item {
            display: flex;
        }
        .program-wrapper .seminar-item .related-speakers .speaker-item .speaker-image {
            margin-right: 20px;
        }
        .program-wrapper .seminar-item .related-speakers .speaker-item .speaker-image img {
            width: 100px;
        }
        .program-wrapper .seminar-item .related-speakers .speaker-item .speaker-details .speaker-title {
            font-weight: 600;
            margin-bottom: 10px;
        }

/*======================================================
    SPEAKER page - styles
=======================================================*/
.speaker-module-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
}
    .speaker-module-wrapper .speaker-item {
        flex-basis: calc(25% - 20px);
        padding: 20px;
        border: 1px solid #e5e5e5;
        border-radius: 5px;
        text-align: center;
    }
        .speaker-module-wrapper .speaker-item .speaker-details {
            margin-top: 20px;
        }
            .speaker-module-wrapper .speaker-item .speaker-details p {
                margin-bottom: 0px;
            }
            .speaker-module-wrapper .speaker-item .speaker-details .speaker-title {
                font-weight: 600;
                color: #04264b;
            }
            .speaker-module-wrapper .speaker-item img {
                width: 100%;
                height: 450px;
                object-fit: cover;
            }

/* Medium screens */
@media (max-width: 1200px) {
    .speaker-module-wrapper .speaker-item {
        flex-basis: calc(33.33% - 20px);
    }
}

/* Small screens */
@media (max-width: 768px) {
    .speaker-module-wrapper .speaker-item {
        flex-basis: calc(50% - 20px);
    }
}

/* Mobile screens */
@media (max-width: 568px) {
    .speaker-module-wrapper {
        gap: 0;
    }
    .speaker-module-wrapper .speaker-item {
        flex-basis: 100%;
        margin-top: 20px;
    }
}

/*======================================================
    PROGRAM/SCHEDULE PAGE STYLES
=======================================================*/
.clearfix {
    clear: both;
}
.agenda-wrapper .day-wrapper {
    display: flex;
    justify-content: flex-start;
    gap: 30px;
    flex-wrap: wrap;
}
    .agenda-wrapper .day-wrapper .day-item {
        padding: 20px 20px 10px 20px;
        border-radius: 5px;
        background: #f1f1f1;
        min-width: 350px;
        cursor: pointer;
    }

    .agenda-wrapper .day-wrapper .day-item.active {
        background: #131842;
        color: #ffffff;
        cursor: inherit;
    }
        .agenda-wrapper .day-wrapper .day-item.active h3 {
            color: #C82121;
            font-weight: 600;
        }
    .agenda-wrapper .day-program-container{
        display: none;
    }
        .agenda-wrapper .day-program-container.active{
            display: block;
        }

.agenda-wrapper .program-item {
    background: #f6f8fa;
    margin-top: 20px;
    padding: 20px;
    border: 1px solid #f1f1f1;
    border-radius: 3px;
}
    .agenda-wrapper .program-item h3 {
        /*font-family: "Nunito Sans" !important;*/
        font-size: 20px;
        font-weight: 600;
        margin: 0;
        color: #c82121;
    }
        .agenda-wrapper .program-item h3 span {
            color: #909090;
            margin-right: 5px;
        }

.agenda-wrapper .program-item.session-heading {
    text-align: center;
    background: #f8eded;
    color: #333333;
}
    .agenda-wrapper .program-item.session-heading h3 {
        font-size: 23px;
        color: #C82121;
        margin-bottom: 5px;
    }

    .agenda-wrapper .program-item.session-heading p {
        margin-bottom: 0;
        color: #ffffff; 
    }


    .agenda-wrapper .program-item .speaker-list {
        margin-top: 30px;
    }
        .agenda-wrapper .program-item .speaker-list .speaker-item {
            margin-top: 15px;
        }
        .agenda-wrapper .program-item .speaker-list .speaker-item {
            margin-top: 15px;
        }
            .agenda-wrapper .program-item .speaker-list .speaker-item .speaker-photo,
            .agenda-wrapper .program-item .speaker-list .speaker-item .speaker-details {
                float: left;
            }
            .agenda-wrapper .program-item .speaker-list .speaker-item .speaker-photo {
                width: 100px;
            }
                .agenda-wrapper .program-item .speaker-list .speaker-item .speaker-photo img {
                    border-radius: 2px;
                }
            .agenda-wrapper .program-item .speaker-list .speaker-item .speaker-details {
                width: auto;
            }
                .agenda-wrapper .program-item .speaker-list a {
                    font-weight: 600 !important;
                    font-size: 18px;
                    color: #131842;
                }
    .agenda-wrapper .agenda-content h3{
        margin: 20px 0;
    }

    .agenda-wrapper .post-event-content {
        margin-top: 10px;
    }
        .agenda-wrapper .post-event-content a {
            padding: 10px 15px;
            background: #131842;
            color: #ffffff;
            font-size: 16px;
            border-radius: 5px;
            display: inline-block;
            margin-top: 10px;
        }
        .agenda-wrapper .post-event-content a:hover {
            color: #C82121;
        }
            .agenda-wrapper .post-event-content a i {
                margin-right: 5px;
                font-size: 25px;
                vertical-align: middle;
            }

.admin-bar .conf-video-iframe-popup .mfp-close {
    /*top: -32px !important;*/
}

.watch-video-btn {
    cursor: pointer;
}
    .watch-video-btn:hover {
        text-decoration: none;
    }

/*======================================================
        Dialog CSS. Basic styles for the dialog
=======================================================*/


/*======================================================
            FANCYBOX SLIDER CSS
=======================================================*/
/* Gallery Container */
.conf-gallery-slider {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    grid-auto-flow: dense; /* Fills in empty gaps efficiently */
}

    /* Gallery Items */
    .conf-gallery-slider a {
        display: block;
        position: relative;
        overflow: hidden;
        border-radius: 5px;
    }

    /* Dynamically Sized Images */
    .conf-gallery-slider img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.3s ease;
    }

    /* Dynamically Adjust Grid Spans */
    .conf-gallery-slider a.wide {
        grid-column: span 2; /* Landscape images span 2 columns */
    }
    .conf-gallery-slider a.tall {
        grid-row: span 2; /* Portrait images span 2 rows */
    }

    /* Hover Effect */
    .conf-gallery-slider img:hover {
        transform: scale(1.05);
    }

/*======================================================
            ADMIN PANEL CSS
=======================================================*/
.participants-overview i {
    color: #131842;
}