/* Overlay background */
.otp-popup-overlay {
	display: block;
	background: rgba(0, 0, 0, 0.88);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	text-align: center;
	overflow: hidden;
}

/* Popup container */
.otp-popup-container {
	background: white;
	padding: 30px;
	margin: auto;
	width: 100%;
	max-width: 700px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 8px;
	box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}

/* Header with brand */
.otp-brand-header {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}
.otp-brand-logo {
	margin-top: 0;
	margin-right: 15px;
	width: 50px;
	height: auto;
}
.otp-brand-title {
	font-size: 30px;
	margin-right: 10px;
}

/* Question text */
.otp-popup-heading {
	font-size: 25px;
	text-align: center;
	margin-bottom: 20px;
	padding: 10px;
	line-height: 1.5;
}
.otp-question {
	font-size: 18px;
}

/* Form elements */
.otp-form {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.otp-input-wrapper {
	display: flex;
	justify-content: center;
	width: 100%;
}
.otp-input {
	padding: 6px !important;
	width: 50%;
}
.otp-button-wrapper {
	text-align: center;
	display: flex;
	justify-content: center;
	gap: 10px;
	padding: 15px;
	width: 100%;
}
.otp-submit-btn {
	padding: 8px;
	background-color: #2295f2;
	color: #fff;
	border: none;
	border-radius: 5px;
	font-size: 18px;
	cursor: pointer;
	margin: 10px;
	width: 25%;
}

/* Response messages */
.otp-response-message {
	margin-top: 20px;
	font-size: 17px;
	color: #555;
}
.otp-msg {
	font-size: 17px;
}
.otp-success {
	color: green;
}
.otp-error {
	color: red;
}
.otp-warning {
	color: red;
}

/* Recovery text */
.otp-recovery-link {
	font-family: Arial, sans-serif;
	font-size: 13px;
	line-height: 1.5;
	margin: 1em 0;
}
.otp-recovery-link a {
	text-decoration: underline;
	color: #2295f2;
	font-family: Arial, sans-serif;
	margin-top: 20px;
	font-size: 14px;
}
.otp-recovery-note {
	font-family: Arial, sans-serif;
	font-size: 14px;
	margin-top: 10px;
}

/* Footer note */
.otp-footer-note {
	font-size: 14px;
	color: #555;
}
