.ra-custom-size {
	margin-top: 14px;
	clear: both;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	flex: 0 0 100%;
	grid-column: 1 / -1;
	align-self: stretch;
}
.ra-custom-size, .ra-custom-size * { box-sizing: border-box; }
.ra-custom-size__toggle {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	margin-top: 8px;
	text-align: center;
	white-space: normal;
}
.ra-custom-size__panel {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	margin-top: 14px;
	padding: 20px;
	border: 1px solid #ddd;
	border-radius: 4px;
	overflow: visible;
}
.ra-custom-size__panel[hidden] { display: none !important; }
.ra-custom-size__panel h3 { margin: 0 0 8px; font-size: 1.15em; }
.ra-custom-size__note { margin-bottom: 14px; }
.ra-custom-size__fields {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	width: 100% !important;
}
.ra-custom-size__fields p { min-width: 0; margin: 0 0 12px; }
.ra-custom-size__fields label { display: block; margin-bottom: 5px; }
.ra-custom-size__fields input {
	display: block;
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}
.ra-custom-size__price { margin: 10px 0; }
.ra-custom-size__price strong { margin-left: 6px; }
.ra-custom-size__message { font-size: .92em; margin: 6px 0 12px; overflow-wrap: anywhere; }
.ra-custom-size__add {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	white-space: normal;
}
.ra-custom-size__add:disabled { opacity: .55; cursor: not-allowed; }
@media (max-width: 600px) {
	.ra-custom-size__panel { padding: 14px; }
	.ra-custom-size__fields { grid-template-columns: minmax(0, 1fr); }
}
