* {
	padding:0;
	margin:0;
}
p{
	font-family: Fustat;
}
.error-msg{
	color:#da0000 !important;font-size:15px;
}
::selection {
	background: #000;
	color: #fff;
	text-shadow: none;
}
/* 
body {
	padding-top:86px;
} */

::-moz-selection {
	background: #000;
	color: #fff;
	text-shadow: none;
}

header#masthead {
	display: block !important;
}

#masthead {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	background-color: transparent;
	display: block;
	z-index: 999;
}

.header-wrapper .elementor-section .elementor-container {
	justify-content: space-between;
	align-items: center;
}

.header-wrapper .logo-box {
	width: auto !important;
	float: left;
}

.header-wrapper .menu-box {
	width: auto !important;
	float: right;
}

.notfound-content {
	text-align: center;
	padding: 7vw 0;
	width: 100%;
	float: left;
}

.error404 .notfound-content h1 {
	color: #000000;
}

.error404 .notfound-content h3 {
	margin: 20px 0;
}

/* Padding top and bottom zero*/

.e-con.p-top {
	padding-top:0;
}

.e-con.p-bottom {
	padding-bottom:0;
}

/* Contact form 7 */

.wpcf7 .row {
	display: flex;
	gap: 20px;
	margin-bottom: 20px;
}

.wpcf7 .column {
	width: 50%;
}

.wpcf7 .column-full {
	width: 100%;
}

.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select {
	width: 100%;
}

#cf7-ajax-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.65);
	z-index: 9999999;
}

#cf7-ajax-modal {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 90%;
	max-width: 500px;
	background: #F8F4EE;
	border-radius: 12px;
	box-shadow: 0 25px 70px rgba(0, 0, 0, 0.4);
	z-index: 99999999;
	font-family: "Groillim", Sans-serif;
	color: #252525;
	text-align: center;
}

#cf7-ajax-modal.show,
#cf7-ajax-overlay.show {
	display: block !important;
}

.cf7-ajax-inner {
	padding: 50px 40px;
	position: relative;
}

#cf7-ajax-text {
	font-size: 22px;
	line-height: 1.5;
	margin: 0;
}

.cf7-ajax-close,.cv-modal-close {
	position: absolute;
	top: 10px;
	right: 18px;
	font-size: 38px;
	cursor: pointer;
	opacity: 0.7;
}

.cf7-ajax-close:hover {
	opacity: 1;
}

.wpcf7-response-output {
	display: none !important;
}

.wpcf7-spinner {
	display: none;
}

#cf7-ajax-loading {
	display:none;
	position:fixed;
	top:0;left:0;
	width:100%;height:100%;
	background:rgba(255,255,255,0.6);
	z-index:9999999999;
	justify-content:center;
	align-items:center;
}

#cf7-ajax-loading.active { display:flex; }

.cf7-spinner {
	width:45px;
	height:45px;
	border:4px solid #ccc;
	border-top-color:#000;
	border-radius:50%;
	animation:spin 0.8s linear infinite;
}

@keyframes spin { to { transform:rotate(360deg); } }

.wpcf7-response-output { display:none !important; }

.cf7-popup-open, .cf7-loading {
	overflow:hidden;
}

.wpcf7-not-valid-tip {
	margin-top: 6px;
}
.phone-only{
    display: none !important;
}
header .elementor-menu-toggle {
    padding: 0;
}
.img-sldier .swiper-wrapper {
    transition-timing-function: linear !important;
}
.building-career .elementor-widget-image, .building-career .elementor-widget-image img {
    height: 100%;
    object-fit: cover;
	border-radius:10px;
	overflow:hidden;
}
.testi-slide {
	margin-right: calc(-1 * (100vw - 1280px) / 2) !important;
   
}
.custom-social-icon a.elementor-icon.elementor-social-icon.elementor-social-icon- {
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.10);
    padding: 15px;
    height: 54px;
    width: 54px;
}
.custom-social-icon .elementor-social-icon svg {
    fill: none;
} 

.core-values-right {
  margin-right: calc(-1 * (100vw - 1280px) / 2) !important;
    flex: 1 !important;
	overflow: hidden !important;
}
.core-values-right{
    overflow: visible !important;
}

/* Filter css*/

.job-filter-container {
			border-radius: 10px;
			background: rgba(255, 255, 255, 0.20);
			backdrop-filter: blur(22px);
        }
        
        .job-filter-form {
			display: flex;
			padding: 10px;
			align-items: center;
			gap: var(--text-regular-list-item-gap, 12px);
			
        }
        option {
			color: #fff;
		}
        .filter-field {
            flex: 1;
            min-width: 200px;
        }
        
        .job-title-input, .location-select, .category-select {
			width: 100%;
			padding: 12px 16px;
			border: none;
			border-radius: 10px;
			background: rgba(0, 0, 0, 0.60) !important;
			backdrop-filter: blur(22px);
			color: #C2C2C2;
			font-family: Fustat;
			font-size: 16px;
			font-weight: 400;
			line-height: 22px;
		}
select.location-select,select.category-select{
    appearance: none !important;
        background-image: url(/wp-content/uploads/2026/02/arrow-down.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center right 10px !important;
}

        .job-title-input::placeholder {
            color: rgba(255, 255, 255, 0.6);
        }
        
        .job-filter-container .filter-submit-btn {
            padding:12px;
            background: #5DD9D9 !important;
            border: 1px solid #5DD9D9;
            border-radius: 8px;
            cursor: pointer;
            font-size: 20px;
        }
        .search-icon img{
			height: 100%;
			width: 100%;
			display: flex;
		}
        .filter-submit-btn:hover {
            background: #4CC8C8;
        }
		select {
			appearance: none;
			background: url(/wp-content/uploads/2026/02/arrow-down.svg) !important;
			background-repeat: no-repeat !important;
			object-fit: contain;
			background-position: center right 10px !important;
		}
		select ,input{
			border: none !important;
			box-shadow: none !important;
			outline: 0 !important;
		}
/* Job Card */

/* Job Modal background fix */
body.job-modal-open {
    overflow: hidden !important;
 
}
		.job-card__header p.job-card__description {
			display: -webkit-box;
			-webkit-line-clamp: 2;
			-webkit-box-orient: vertical;
			overflow: hidden;
		}
		.job-cards-grid {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 24px;
		}
		.job-card__title a{
			color: #1B2232;
		}
		.job-card__salary {
			color: #193133;
		}
		.job-card__salary {
			border-radius: 5px;
			background: rgba(19, 164, 0, 0.05);
			margin-bottom: 16px;
		}
		.job-card {    
            border-radius: 10px;
			border-left: 4px solid var(--green-26-cad-3, #26CAD3);
			background: #FFF;
        }
		.job-cards-grid button.btn.btn-outline.view-job-details {
			border-radius: 10px;
			border: 1px solid #26CAD3;
			background: #EFEDEE;
			color: #26CAD3;
			font-family: Fustat;
			font-size: 16px;
			font-weight: 400;
			line-height: 22px;
		}
		.job-card__logo img{
			width: 100%;
		}
		.btn-primary {
			display: flex;
			align-items: center;
			border-radius: 10px;
			background: #26CAD3;
			border:1px solid #26CAD3;
			color: #EFEDEE;
			font-family: Fustat;
			font-size: 16px;
			font-weight: 400;
			line-height: 22px;
			padding: 12px 24px;
			justify-content: center;
   			 text-decoration: none;
		}
        /* Header */
        .job-card__header {
            display: flex;
            gap: 16px;
            margin-bottom: 16px;
        }


        .job-card__title {
            margin: 0;
            font-size: 20px;
            font-weight: 700;
        }

       .job-card__description ,.job-card__location span,.meta-item span{
			margin-top: 4px;
			color: #585858;
			font-family: Fustat;
			font-size: 16px;
			font-style: normal;
			font-weight: 400;
			line-height: 22px;
		}

        /* Meta */
        .job-card__meta {
            display: flex;
            gap: 20px;
            margin: 16px 0;
        }

        .meta-item {
            display: flex;
            align-items: center;
            gap: 6px;
            font-size: 14px;
            color: #444;
        }
.job-card__logo ,.job-logo{
    width: 100%;
    max-width: 72px;
    height: 72px;
    border-radius: 4px;
    border: 1px solid #EFEDEE;
    background: #FFF;
    padding: 7px;
    display: flex;
}


       

        /* Footer */
        .job-card__footer {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .job-card__location {
            display: flex;
            align-items: center;
            gap: 6px;

        }

        /* Buttons */
        .job-card__actions {
            display: flex;
            gap: 12px;
        }


        .btn-outline {
            color: #1fb6c1;
			padding-top: 5px;
    		display: block;
        }

      
		header.sticky {
			background-color: #193133 !important;
		}
		.btn-primary:hover {
			background: #EFEDEE;
			color:#26CAD3;
			border: 1px solid #26CAD3;
		}
		.job-cards-grid button.btn.btn-outline.view-job-details:hover {
			background: #26CAD3;
			color: #EFEDFF;
		}
		header .elementor-menu-toggle .e-font-icon-svg {
			fill: #fff;
		}
		 header nav.elementor-nav-menu--dropdown{
			-menu-height: 100vh !important;
			top:50px;
		}
		.elementor-nav-menu--stretch .elementor-nav-menu__container.elementor-nav-menu--dropdown {
			position: absolute;
			z-index: 9997;
			height: 100vh;
		}
		.elementor-nav-menu--dropdown .elementor-nav-menu {
			padding: 20px;
		}
/* Job Model Popup */
	.job-field {
		margin-bottom: 30px;
	}
	.section-content.BT1-R-16 {
		padding-top: 8px;
	}
	h4.info-label {
		width: 150px;
	}
    .job-modal {
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,0.6);
        z-index: 9999;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
    }

    .job-modal-content {
      	border-radius: 10px;
		background: #FFF;
        max-width:750px;
        width: 100%;
        position: relative;
      
    }
	#forgot-password-form input {
		width: -webkit-fill-available;
		margin-bottom: 15px;

	}
	#forgot-password-form button.cv-submit-btn {
		display: flex;
		margin: 0 auto;
	}
	span.job-modal-close {
		position: absolute;
		right: 15px;
		top: 15px;
		font-size: 34px;
		font-weight: bolder;
		cursor:pointer;
	}

    .job-modal-details {
        padding: 30px;
    }

	.job-modal-header {
		margin-bottom: 25px;
		display: flex;
		gap: 16px;
	}

    .job-logo img {
        width: 100%;
        height: auto;
    }
	.job-modal-header .job-logo {
		max-width: 120px;
		height: 120px;
	}
    .job-title {
        font-size: 26px;
        font-weight: 700;
        margin: 0 0 12px;
        color: #111;
    }

    .job-description {
        margin-bottom: 12px;
    }

    .job-chips {
        display: flex;
        gap: 24px;
        flex-wrap: wrap;
    }

    .chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
		color: #585858;
		font-family: Fustat;
		font-size: 14px;
		line-height: 100%;
	}
       
    .chip img {
        width: 18px;
        height: 18px;
    }

    .job-info-grid {
        border: 1px solid #e5e7eb;
        border-radius: 8px;
        overflow: hidden;
        margin-bottom: 32px;
    }

   .info-row {
		display: flex;
		padding: 8px 0;
		border-bottom: 1px solid #C2C2C2;
		align-items: center;
	}
    .info-row:last-child {
        border-bottom: none;
	}
	.job-info-section {
		padding: 20px;
		border-radius: 10px;
    	background: #FAFAFA;
		overflow-y: auto;
		position: relative;
		max-height: 444px;
	}
    .section-content ul {
        padding-left: 24px;
        margin: 12px 0;
    }

    .modal-footer {
        margin-top: 32px;
        text-align: center;
    }

    .full-width {
        width: 100%;
        padding: 14px;
        font-size: 16px;
    }
	a.btn-primary.apply-now-button {
		margin-top: 32px;
	}
/*contact form*/
 /* Form wrapper */
.wpcf7-form {
  max-width: 900px;
  margin: 0 auto;
}

/* Row layout */
.form-row {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
	padding:0;
	justify-content: center;
}
.form-row.full-width {
    margin-bottom: 32px;
}
.form-row.submit-row {
    margin: 0;
}
.form-row.two-column .form-field {
  flex: 1;
}
textarea{
	max-height:130px;
}
.form-row.full-width .form-field {
  width: 100%;
}

.wpcf7-form input[type="text"], .wpcf7-form input[type="email"], .wpcf7-form input[type="tel"], .wpcf7-form textarea {
    width: 100%;
	  border: none;
    border-radius: 10px;
    background: #FAFAFA;
    padding: 16px;
    transition: box-shadow 0.3s ease, background 0.3s ease;
    color: #585858;
    font-family: Fustat;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
  background: #ffffff;
  box-shadow:none;
}
textarea:focus-visible {
    outline: 0;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover ,input.wpcf7-form-control.wpcf7-submit.has-spinner{
    border: 1px solid #26CAD3 !important;cursor:pointer;
}
.BT1-R-16{
	color: #585858;
	font-family: Fustat;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 137.5%;
}


/*apply now model*/
.cv-modal-content {
    border-radius: 5px;
    background: #FFF;
    padding: 30px;
	position:relative;
}
.cv-modal-content .cv-logo {
    text-align: center;
}
.cv-modal-content .cv-logo {
    text-align: center;
    margin-bottom: 30px;
}
.form-heading.text-spacious-heading-gap {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.form-heading a.BT1-M-16 {
    color: #26CAD3;
    text-decoration: none;
    font-weight: 500 !important;
}
.form-row.two-columns{
	justify-content:flex-start;margin-bottom: 0;
}
.upload-cv-form .form-group {
	margin-bottom: 16px;
} 
.form-group input[type="text"],.form-group input[type="email"] ,input.BT1-R-16,form-group input#cv-file-upload{
    border-radius: 10px;
    background: #FAFAFA;
    padding: 16px;
}
#cv-login-form .form-group {
    margin-bottom: 16px;
}


/*account page*/
.page-id-1762 header.header-wrapper,.page-id-1827 header.header-wrapper  {
   
	background-color: #193133 !important;
}

/* My account page shortcode css*/
.my-account-wrapper {
            display: flex;
            gap: 30px;
            margin: 40px 0;
        }
        
        .account-sidebar {
            width: 400px;
            flex-shrink: 0;
        }
        
        .sidebar-header {
            background: #fff;
            padding: 30px 20px;
            border-radius: 12px;
            text-align: center;
            margin-bottom: 20px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.08);
        }
        
        .user-avatar {
            width: 80px;
            height: 80px;
            margin: 0 auto 15px;
            border-radius: 50%;
            overflow: hidden;
        }
        
        .user-avatar img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        
        .sidebar-header h3 {
            margin: 0 0 5px;
            font-size: 20px;
        }
        
        .user-email-sidebar {
            color: #666;
            font-size: 13px;
            margin: 0;
        }
        
        .account-tabs {
            background: #fff;
            border-radius: 12px;
            overflow: hidden;
            box-shadow: 0 2px 8px rgba(0,0,0,0.08);
        }
        
        .tab-item {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 16px 20px;
            cursor: pointer;
            transition: all 0.3s;
            border-left: 3px solid transparent;
        }
        
        .tab-item:hover {
            background: #f5f5f5;
        }
        
        .tab-item.active {
            background: #f0f7ff;
            border-left-color: #2271b1;
            color: #2271b1;
            font-weight: 600;
        }
        
        .tab-icon {
            font-size: 20px;
        }
        
        .tab-badge {
            margin-left: auto;
            background: #2271b1;
            color: white;
            padding: 2px 8px;
            border-radius: 12px;
            font-size: 12px;
            font-weight: 600;
        }
        
/*         .account-content {
            flex: 1;
        } */
        
        .tab-content {
            display: none;
        }
        
        .tab-content.active {
            display: block;
        }
        
        .content-header {
            margin-bottom: 30px;
        }
        
        .content-header h2 {
            margin: 0 0 8px;
            font-size: 28px;
        }
        
        .content-header p {
            margin: 0;
            color: #666;
        }
        
        .profile-cards {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 20px;
        }
        
        .profile-card {
            background: #fff;
            padding: 25px;
            border-radius: 12px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.08);
        }
        
        .profile-card h3 {
            margin: 0 0 20px;
            font-size: 18px;
            color: #333;
        }
        
        .info-grid {
            display: flex;
            flex-direction: column;
            gap: 15px;
            margin-bottom: 20px;
        }
        
        .info-item label {
            display: block;
            font-size: 12px;
            color: #666;
            margin-bottom: 5px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }
        
        .info-item p {
            margin: 0;
            font-size: 15px;
            color: #333;
            font-weight: 500;
        }
        .cv-filename {
            color: #666;
            margin: 10px 0 20px;
        }
        
        .stats-card {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
        }
        
        .stats-card h3 {
            color: white;
        }
        
        .stats-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 20px;
        }
        
        .stat-item {
            text-align: center;
        }
        
        .stat-number {
            font-size: 36px;
            font-weight: 700;
            margin-bottom: 5px;
        }
        
        .stat-label {
            font-size: 13px;
            opacity: 0.9;
        }
        
        .applied-job-item {
            background: #fff;
            padding: 20px;
            border-radius: 12px;
            margin-bottom: 15px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.08);
        }
        
        .applied-job-item h4 {
            margin: 0 0 10px;
            font-size: 18px;
        }
        
        .applied-job-item p {
            margin: 5px 0;
            color: #666;
        }
        
        .status-pending {
            color: #f39c12;
            font-weight: 600;
        }
        
        .status-approved {
            color: #27ae60;
            font-weight: 600;
        }
        
        .status-rejected {
            color: #e74c3c;
            font-weight: 600;
        }
        .profile-card .info-grid {
			display: grid;
			grid-template-columns: 1fr 1fr;
		}
		.profile-card .info-grid .info-item {
			border-radius: 10px;
			background: #FAFAFA;
			padding: 16px;
		}
#cv-submit-modal.cv-modal-overlay{
	position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}
.job-modal{
	inset:0;
}
/* .cv-auth-sign-in{
	width:300px;
} */
/* .cv-auth-sign-in .form-group {
	overflow:hidden;
	width:100%;
} */
.cv-auth-form .cv-submit-btn {
    display: flex;
    margin: 0 auto;
}
.cv-auth-sign-in .form-group input{
	width:-webkit-fill-available;
}
button,a{ cursor:pointer !important;}

/*  PASSWORD MANAGEMENT SYSTEM - CSS STYLES */

/* Password field container */
.password-field {
    position: relative;
}

/* Eye toggle button */
.password-toggle {
    position: absolute;
    right: 15px;
    top:25px !important;
    transform: translateY(-50%);
    cursor: pointer;
    color: #666;
    transition: all 0.3s ease;
    z-index: 10;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    outline: none;
}

.password-toggle:hover {
    color: #333;
}

.password-toggle.active {
    color: #2271b1;
}

.password-toggle.active .eye-icon {
    color: #2271b1;
}

/* Input padding to accommodate eye icon */
.password-field input {
    padding-right: 45px !important;
	width: -webkit-fill-available;
}

/* Eye icon SVG */
.password-toggle svg {
    pointer-events: none;
    transition: all 0.2s ease;
}

.password-toggle:hover svg {
    transform: scale(1.1);
}

.eye-icon {
    width: 20px;
    height: 20px;
}

/* Forgot password link */
.open-forgot-password {
    color: #2271b1;
    font-size: 14px;
    text-decoration: none;
    transition: color 0.3s ease;
    font-weight: 500;
}

.open-forgot-password:hover {
    color: #135e96;
    text-decoration: underline;
}

/* Back to login link */
.back-to-login {
    color: #2271b1;
    text-decoration: none;
    transition: color 0.3s ease;
}

.back-to-login:hover {
    color: #135e96;
}

/* Modal steps (for forgot password flow) */
.forgot-step {
    display: none;
}

.forgot-step.active {
    display: block;
    animation: fadeIn 0.3s ease;
}

/* Change password button */
.open-password-change {
    background: transparent;
    border: 2px solid #2271b1;
    color: #2271b1;
    transition: all 0.3s ease;
    font-weight: 500;
    border-radius: 4px;
}

.open-password-change:hover {
    background: #2271b1;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(34, 113, 177, 0.2);
}

/* Password strength indicator (optional) */
.password-strength {
    height: 4px;
    margin-top: 8px;
    border-radius: 2px;
    background: #e0e0e0;
    overflow: hidden;
}

.password-strength-bar {
    height: 100%;
    transition: all 0.3s ease;
}

.password-strength-bar.weak {
    width: 33%;
    background: #e74c3c;
}

.password-strength-bar.medium {
    width: 66%;
    background: #f39c12;
}

.password-strength-bar.strong {
    width: 100%;
    background: #27ae60;
}

/* Password requirements list (optional) */
.password-requirements {
    font-size: 12px;
    color: #666;
    margin-top: 10px;
    padding: 10px;
    background: #f5f5f5;
    border-radius: 4px;
}

.password-requirements li {
    list-style: none;
    padding: 4px 0;
}

.password-requirements li.valid {
    color: #27ae60;
}

.password-requirements li.valid:before {
    content: "✓ ";
    font-weight: bold;
}

.password-requirements li.invalid {
    color: #e74c3c;
}

.password-requirements li.invalid:before {
    content: "✗ ";
    font-weight: bold;
}

/* Fade in animation */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Error message styles for password fields */
.password-field .error-msg {
    position: static;
    margin-top: 5px;
}

.password-field .error-msg.active {
    display: block;
    color: #e74c3c;
    font-size: 13px;
}

/* Success message */
.password-success {
    color: #27ae60;
    padding: 10px;
    background: #d4edda;
    border: 1px solid #c3e6cb;
    border-radius: 4px;
    margin-bottom: 15px;
}

/* Password section divider */
.password-section {
    border-top: 1px solid #e0e0e0;
    padding-top: 20px;
    margin-top: 20px;
}

.password-section h5 {
    margin-bottom: 15px;
    color: #333;
    font-size: 16px;
    font-weight: 600;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .password-toggle {
        right: 10px;
    }
    
    .password-field input {
        padding-right: 40px !important;
    }
    
    .eye-icon {
        width: 18px;
        height: 18px;
    }
}

/* Dark mode support (optional) */
@media (prefers-color-scheme: dark) {
    .password-toggle {
        color: #aaa;
    }
    
    .password-toggle:hover {
        color: #fff;
    }
    
    .password-toggle.active {
        color: #5b9dd9;
    }
    
    .open-forgot-password,
    .back-to-login {
        color: #5b9dd9;
    }
    
    .open-forgot-password:hover,
    .back-to-login:hover {
        color: #7db8e6;
    }
}

/* Loading state for password forms */
.password-form-loading {
    position: relative;
    pointer-events: none;
    opacity: 0.6;
}

.password-form-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #2271b1;
    border-radius: 50%;
    animation: spin 1s linear infinite;
} .cv-modal-content {
    width: 550px;
}
@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}
.form-row.two-columns .form-group {
    width: 50%;
}
.form-row.two-columns .form-group input,input[type="file"] {
    width: -webkit-fill-available;
}


/* #cv-profile-form .file-drop-area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: sans-serif;
    border-radius: 10px;
    background: #FAFAFA;
    padding: 16px;
}

#cv-profile-form .file-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

#cv-profile-form .upload-btn {
    cursor: pointer;
    color: #26CAD3;
    font-family: Fustat;
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
}

#cv-profile-form .remove-btn {
  border: none;
  background: transparent;
  font-size: 18px;
  cursor: pointer;
  color: #999;
}

#cv-profile-form .remove-btn:hover {
  color: #ff4d4d;
}

#cv-profile-form .file-label {
    max-width: 65%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #585858;
    font-family: Fustat;
    font-size: 16px;
    line-height: 22px;
}

#cv-profile-form input[type="file"] {
  display: none;
} */

/* upload profile button css */
/* Custom File Upload - Fixed Version */
.custom-file-upload {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding:16px;
    border-radius: 10px;
	background: #FAFAFA;
    cursor: pointer;
    transition: all 0.3s ease;
}


/* IMPORTANT: Hide the default file input completely */
.file-input-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    opacity: 0;
    pointer-events: none;
}

.file-label {
    flex: 1;
   color: #585858;
	font-family: Fustat;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 22px; 
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 15px;
    line-height: 1.5;
}

.file-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

    .upload-btn {
        cursor: pointer;
        transition: all 0.3s ease;
        border: none;
        white-space: nowrap;
        user-select: none;
        color: #26CAD3;
        font-family: Fustat;
        font-size: 16px;
        font-weight: 500;
        line-height: 22px;
    }

.upload-btn:active {
    transform: translateY(0);
}

.remove-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #e74c3c;
    color: #fff;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    transition: all 0.3s ease;
    padding: 0;
    flex-shrink: 0;
}



.remove-btn:active {
    transform: scale(0.95);
}

/* Existing CV info styling */
/* 
#edit-existing-cv-info,
#apply-existing-cv-info {
    margin-bottom: 10px;
    padding: 10px;
    background: #f0fff4;
    border-left: 3px solid #27ae60;
    border-radius: 4px;
}

#edit-existing-cv-info p,
#apply-existing-cv-info p {
    margin: 5px 0;
    font-size: 14px;
}

#edit-existing-cv-info a,
#apply-existing-cv-info a {
    color: #2271b1;
    text-decoration: underline;
}

#edit-existing-cv-info a:hover,
#apply-existing-cv-info a:hover {
    color: #135e96;
}
 */
/* Error state */
.form-group .error-msg.active + .custom-file-upload,
.custom-file-upload.error {
    border-color: #e74c3c;
    background: #fff5f5;
}
.phone-input-wrapper option {
    color: #000;
    font-family: 'Fustat';
    padding: 5px;
}
select.phone-country-select {
    min-width: 120px;
}