/* ShopXnow Customizer — single product Amazon-style photo upload slots */
.sxmv-customizer {
	margin: 14px 0;
	padding: 14px;
	border: 1px solid #fcd34d;
	background: #fffbeb;
	border-radius: 10px;
}
.sxmv-cust-head {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}
.sxmv-cust-icon { font-size: 20px; line-height: 1; }
.sxmv-cust-title { font-weight: 700; font-size: 15px; color: #1f2937; }
.sxmv-cust-req { color: #dc2626; margin-left: 2px; }
.sxmv-cust-opt { color: #6b7280; font-weight: 400; font-size: 12px; }
.sxmv-cust-note {
	background: #fef3c7;
	border: 1px solid #fcd34d;
	color: #92400e;
	font-size: 12px;
	font-weight: 600;
	padding: 7px 10px;
	border-radius: 6px;
	margin-bottom: 10px;
}
.sxmv-cust-sample {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 10px;
}
.sxmv-cust-sample img {
	width: 72px; height: 72px; object-fit: cover;
	border: 1px solid #e5e7eb; border-radius: 8px;
}
.sxmv-cust-sample small { color: #6b7280; font-size: 11px; margin-top: 3px; }

/* Slots */
.sxmv-cust-slots { display: flex; flex-direction: column; gap: 10px; }
.sxmv-cust-slot {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	padding: 10px 12px;
}
.sxmv-cust-slot[data-required="1"] { border-color: #f59e0b; }
.sxmv-cust-slot-head { margin-bottom: 8px; }
.sxmv-cust-slot-head strong { font-size: 14px; color: #1f2937; }
.sxmv-cust-slot-head small { display: block; color: #6b7280; font-size: 11px; margin-top: 2px; }

.sxmv-cust-slot-box {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 84px;
	cursor: pointer;
}
.sxmv-cust-slot-box .sxmv-cust-ph {
	width: 84px; height: 84px;
	border: 1px dashed #d1d5db;
	border-radius: 8px;
	display: flex; align-items: center; justify-content: center;
	font-size: 28px; color: #cbd5e1;
	background: #f9fafb;
	flex: 0 0 auto;
}
.sxmv-cust-upload-btn {
	background: #fff;
	border: 1px solid #f59e0b;
	color: #92400e;
	font-weight: 600;
	padding: 9px 16px;
	border-radius: 6px;
	cursor: pointer;
}
.sxmv-cust-upload-btn:hover { background: #fef3c7; }

.sxmv-cust-slot-box.is-filled { cursor: default; }
.sxmv-cust-slot-box.is-filled img,
.sxmv-cust-slot-box.is-loading img {
	width: 84px; height: 84px; object-fit: cover;
	border: 1px solid #e5e7eb; border-radius: 8px;
	flex: 0 0 auto;
}
.sxmv-cust-slot-box.is-loading { position: relative; }
.sxmv-cust-slot-box.is-loading img { opacity: .5; }
.sxmv-cust-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.sxmv-cust-reupload, .sxmv-cust-remove {
	background: #fff;
	border: 1px solid #d1d5db;
	color: #374151;
	font-size: 12px;
	font-weight: 600;
	padding: 6px 11px;
	border-radius: 6px;
	cursor: pointer;
}
.sxmv-cust-reupload:hover { border-color: #f59e0b; color: #92400e; }
.sxmv-cust-remove:hover { border-color: #dc2626; color: #dc2626; }

.sxmv-cust-error {
	color: #dc2626;
	font-size: 12.5px;
	font-weight: 600;
	margin-top: 8px;
	min-height: 14px;
}

/* Locked add-to-cart visual (hard gate handled in JS) */
.single_add_to_cart_button.sxmv-cust-locked { cursor: not-allowed; }
