.pei-modal {
	display: none;
	position: fixed;
	z-index: 9999999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: var(--pei-black-transparent);
	align-items: center;
	justify-content: center;
}

.pei-modal-content {
	background-color: var(--pei-white);
	border-radius: 8px;
	width: 500px;
	max-width: 90%;
	box-shadow: 0 4px 12px var(--pei-black-transparent);
	max-height: 90vh;
	display: flex;
	flex-direction: column;
	color: var(--pei-black);
}

.pei-modal-header {
	background: var(--pei-white-darker-1);
	padding: 15px 20px;
	border-bottom: 1px solid var(--pei-white-darker-2);
	border-radius: 8px 8px 0 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-shrink: 0;
}

.pei-modal-header h3 {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
}

.pei-modal-close {
	cursor: pointer;
	font-size: 20px;
	font-weight: bold;
	color: var(--pei-black);
}

.pei-modal-body {
	padding: 10px 20px;
	overflow-y: auto;
	flex: 1;
}

.pei-modal-footer {
	padding: 15px 20px;
	background: var(--pei-white-darker-1) !important;
	border-top: 1px solid var(--pei-white-darker-2) !important;
	border-radius: 0 0 8px 8px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;
}

.pei-modal-footer-left {
	display: flex;
	align-items: center;
	font-size: 13px;
	color: var(--pei-black);
}

.pei-modal-footer-left input[type="checkbox"] {
	margin: 0 5px 0 0;
}

.pei-modal-footer-right {
	display: flex;
	gap: 10px;
	align-items: center;
	margin-left: auto;
}

.pei-stacked-form-row {
	margin-bottom: 12px;
}

.pei-stacked-form-row label {
	display: block;
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 5px;
	text-align: left;
}

.pei-stacked-form-row input[type="text"],
.pei-stacked-form-row input[type="email"],
.pei-stacked-form-row select {
	padding: 8px 10px;
	height: 38px !important;
	box-sizing: border-box;
	border: 1px solid var(--pei-white-darker-3);
	border-radius: 3px;
	outline: none;
	box-shadow: 0 1px 2px var(--pei-black-transparent) inset;
	font-family: inherit;
}

.pei-stacked-form-row textarea {
	padding: 8px 10px;
	box-sizing: border-box;
	border: 1px solid var(--pei-white-darker-3);
	border-radius: 3px;
	outline: none;
	box-shadow: 0 1px 2px var(--pei-black-transparent) inset;
	font-family: inherit;
}

.pei-stacked-form-row input[type="text"]:focus,
.pei-stacked-form-row input[type="email"]:focus,
.pei-stacked-form-row select:focus,
.pei-stacked-form-row textarea:focus {
	border-color: var(--pei-accent-color);
	box-shadow: 0 0 0 3px rgba(255, 150, 37, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 1px 2px rgba(15, 17, 17, 0.08) !important
}

.pei-form-row {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 15px;
	max-width: 100%;
}

.pei-form-row label {
	flex: none !important;
	width: 100%;
	font-size: 13px;
	font-weight: 700;
	text-align: left !important;
	margin-right: 0 !important;
	margin-bottom: 5px !important;
	margin-top: 0 !important;
	line-height: normal;
}

.pei-form-row .pei-form-row-input-group {
	display: flex;
	align-items: center;
	flex: 1;
	width: 100%;
}

.pei-stacked-form-row input:not([type="checkbox"]):not([type="radio"]),
.pei-stacked-form-row select,
.pei-form-row input:not([type="checkbox"]):not([type="radio"]),
.pei-form-row select,
.pei-cc-select {
	height: var(--pei-field-height) !important;
	min-height: var(--pei-field-height) !important;
	margin: 0 !important;
	padding: 6px 10px !important;
	border: 1px solid var(--pei-white-darker-3);
	border-radius: 3px;
	outline: none;
	box-shadow: 0 1px 2px var(--pei-black-transparent) inset;
	box-sizing: border-box;
	width: 100%;
	font-family: inherit;
}

.pei-form-row input[type="text"]:focus,
.pei-form-row input[type="email"]:focus,
.pei-cc-select:focus {
	border-color: var(--pei-accent-color);
	box-shadow: 0 0 0 3px rgba(255, 150, 37, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 1px 2px rgba(15, 17, 17, 0.08) !important
}

.pei-modal-body hr {
	border: 0;
	border-top: 1px solid var(--pei-white-darker-2);
	margin: 20px 0;
}

.pei-modal-body h4 {
	margin: 0 0 15px 0;
	font-size: 14px;
}

.pei-checkbox-row {
	margin-bottom: 15px;
	font-size: 13px;
}

.pei-modal-body .select2-container {
	width: 100% !important;
}

.pei-modal-body .select2-container .select2-selection--single {
	height: var(--pei-field-height) !important;
	min-height: var(--pei-field-height) !important;
	border: 1px solid var(--pei-white-darker-2) !important;
	box-shadow: 0 1px 2px var(--pei-black-transparent) inset !important;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}

.pei-modal-body .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: calc(var(--pei-field-height) - 2px) !important;
	padding-left: 10px !important;
	padding-right: 30px !important;
	color: var(--pei-black-lighter-4) !important;
}

.pei-modal .pei-error-highlight,
.pei-modal .pei-error-highlight:focus {
	border-color: var(--pei-red) !important;
	box-shadow: 0 0 0 3px rgba(215, 25, 32, 0.18), inset 0 1px 2px var(--pei-black-transparent) !important;
	outline: none !important;
}

.pei-modal .pei-error-highlight + .select2-container .select2-selection {
	border-color: var(--pei-red) !important;
	box-shadow: 0 0 0 3px rgba(215, 25, 32, 0.18), inset 0 1px 2px var(--pei-black-transparent) !important;
}