/**
 * AnkShkti Pro
 * Frontend Styles
 */

.ankshkti-wrapper{
	max-width:900px;
	margin:40px auto;
	padding:20px;
}

.ankshkti-card{

	background:#ffffff;

	border-radius:12px;

	padding:30px;

	box-shadow:0 10px 35px rgba(0,0,0,.08);

}

.ankshkti-title{

	margin:0;

	font-size:32px;

	font-weight:700;

	text-align:center;

	color:#222;

}

.ankshkti-subtitle{

	margin:10px 0 35px;

	text-align:center;

	color:#777;

	font-size:16px;

}

.ankshkti-form{

	width:100%;

}

.ankshkti-row{

	display:flex;

	gap:20px;

	margin-bottom:20px;

}

.ankshkti-field{

	flex:1;

	display:flex;

	flex-direction:column;

}

.ankshkti-full{

	width:100%;

}

.ankshkti-field label{

	font-weight:600;

	margin-bottom:8px;

	color:#333;

}

.ankshkti-field label span{

	color:#ff0000;

}

.ankshkti-field input,

.ankshkti-field select{

	width:100%;

	height:52px;

	padding:0 16px;

	border:1px solid #d8d8d8;

	border-radius:8px;

	font-size:15px;

	outline:none;

	transition:.3s;

	box-sizing:border-box;

}

.ankshkti-field input:focus,

.ankshkti-field select:focus{

	border-color:#2563eb;

	box-shadow:0 0 0 3px rgba(37,99,235,.15);

}

.ankshkti-checkbox{

	display:flex;

	align-items:flex-start;

	gap:10px;

	font-size:14px;

	line-height:1.6;

}

.ankshkti-checkbox input{

	margin-top:4px;

	width:18px;

	height:18px;

}

.ankshkti-btn{

	width:100%;

	height:55px;

	border:none;

	border-radius:8px;

	background:#2563eb;

	color:#fff;

	font-size:18px;

	font-weight:600;

	cursor:pointer;

	transition:.3s;

}

.ankshkti-btn:hover{

	background:#1d4ed8;

}
/* ==========================================
   Loading Overlay
========================================== */

.ankshkti-loader{

	position:fixed;

	inset:0;

	display:flex;

	align-items:center;

	justify-content:center;

	background:rgba(255,255,255,.96);

	z-index:999999;

}

.ankshkti-loader-box{

	width:420px;

	max-width:90%;

	background:#ffffff;

	padding:35px;

	border-radius:12px;

	box-shadow:0 15px 40px rgba(0,0,0,.15);

	text-align:center;

}

.ankshkti-loader-logo{

	font-size:32px;

	font-weight:700;

	margin-bottom:25px;

	color:#2563eb;

}

.ankshkti-progress{

	width:100%;

	height:12px;

	background:#e5e7eb;

	border-radius:50px;

	overflow:hidden;

	margin-bottom:20px;

}

.ankshkti-progress-bar{

	width:0;

	height:100%;

	background:linear-gradient(
		90deg,
		#2563eb,
		#3b82f6
	);

	transition:width .25s ease;

}

.ankshkti-progress-text{

	font-size:15px;

	color:#555;

	font-weight:500;

}


/* ==========================================
   Success & Error
========================================== */

.ankshkti-success,

.ankshkti-error{

	margin-top:25px;

}

.ankshkti-alert{

	padding:16px 20px;

	border-radius:8px;

	font-size:15px;

	font-weight:600;

}

.ankshkti-alert-success{

	background:#ecfdf5;

	color:#166534;

	border:1px solid #86efac;

}

.ankshkti-alert-error{

	background:#fef2f2;

	color:#991b1b;

	border:1px solid #fca5a5;

}


/* ==========================================
   Report
========================================== */

.ankshkti-report{

	margin-top:35px;

}

.ankshkti-report-card{

	background:#ffffff;

	border-radius:12px;

	padding:30px;

	box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.ankshkti-report-card h2{

	margin-top:0;

	margin-bottom:25px;

	text-align:center;

	color:#222;

}

.ankshkti-report-table{

	width:100%;

	border-collapse:collapse;

}

.ankshkti-report-table th,

.ankshkti-report-table td{

	padding:14px;

	border:1px solid #ececec;

	text-align:left;

}

.ankshkti-report-table th{

	background:#f8fafc;

	width:35%;

	font-weight:600;

}


/* ==========================================
   Responsive
========================================== */

@media(max-width:768px){

	.ankshkti-row{

		flex-direction:column;

		gap:15px;

	}

	.ankshkti-title{

		font-size:26px;

	}

	.ankshkti-subtitle{

		font-size:14px;

	}

	.ankshkti-card{

		padding:20px;

	}

	.ankshkti-loader-box{

		padding:25px;

	}

	.ankshkti-report-table th,

	.ankshkti-report-table td{

		font-size:14px;

		padding:10px;

	}

}