/**
 * CC Payments Made Simple - Block Checkout Styles
 */
.cc-payments-block-fields {
	margin: 0;
	padding: 0;
}

.cc-payments-block-fields p.cc-payments-description {
	color: #757575;
	font-size: 14px;
	margin: 0 0 1em;
}

.cc-payments-block-fields .cc-payments-field-container {
	margin-bottom: 1.5em;
	position: relative;
}

.cc-payments-block-fields .cc-payments-field-container label {
	color: #1e1e1e;
	display: block;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	margin-bottom: 0.5em;
}

.cc-payments-block-fields .cc-payments-field-container label .required {
	color: #cc1818;
}

.cc-payments-block-fields .cc-payments-field-container .cc-payments-input {
	background-color: #fff;
	border: 1px solid #8c8f94;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.5;
	padding: 8px 12px;
	width: 100%;
}

.cc-payments-block-fields .cc-payments-field-container .cc-payments-input:focus {
	border-color: #007cba;
	box-shadow: 0 0 0 1px #007cba;
	outline: none;
}

.cc-payments-block-fields .cc-payments-field-container .cc-payments-input:disabled {
	background-color: #f5f5f5;
	cursor: not-allowed;
}

.cc-payments-block-fields .cc-payments-field-container .cc-payments-input::placeholder {
	color: #999;
}

.cc-payments-block-fields .cc-payments-card-row {
	display: flex;
	gap: 1em;
	margin-bottom: 0;
}

.cc-payments-block-fields .cc-payments-card-row .cc-payments-field-container {
	flex: 1;
	margin-bottom: 1.5em;
}

.cc-payments-block-fields .cc-payments-card-row .cc-payments-field-container.cc-payments-cvc-field {
	flex: 0 0 120px;
}

@media (max-width: 768px) {
	.cc-payments-block-fields .cc-payments-card-row {
		flex-direction: column;
		gap: 0;
	}
	
	.cc-payments-block-fields .cc-payments-card-row .cc-payments-field-container.cc-payments-cvc-field {
		flex: 1;
	}
}
