/* EU Withdrawal Manager — front-end form styles */

.euwm-form-wrapper {
	max-width: 820px;
	margin: 0 auto;
}

.euwm-step {
	background: #fff;
	border: 1px solid #e3e5e8;
	border-radius: 8px;
	padding: 24px;
	margin-bottom: 16px;
}

.euwm-step-title {
	margin-top: 0;
	font-size: 1.25rem;
}

.euwm-step-intro {
	color: #555;
	margin-bottom: 18px;
}

.euwm-field {
	margin-bottom: 16px;
}

.euwm-field label {
	display: block;
	font-weight: 600;
	margin-bottom: 6px;
}

.euwm-field input[type="text"],
.euwm-field input[type="email"] {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #c7cad0;
	border-radius: 6px;
	box-sizing: border-box;
	font-size: 1rem;
}

.euwm-required {
	color: #c0392b;
}

.euwm-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 8px;
}

.euwm-button {
	display: inline-block;
	background: #2b6cb0;
	color: #fff;
	border: none;
	border-radius: 6px;
	padding: 11px 20px;
	font-size: 1rem;
	cursor: pointer;
	transition: background 0.15s ease;
}

.euwm-button:hover {
	background: #245a93;
}

.euwm-button:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.euwm-button-secondary {
	background: #edf0f4;
	color: #2b2d33;
}

.euwm-button-secondary:hover {
	background: #dfe4ea;
}

.euwm-order-summary {
	background: #f6f8fa;
	border-radius: 6px;
	padding: 14px 16px;
	margin-bottom: 18px;
}

.euwm-order-summary p {
	margin: 4px 0;
}

.euwm-product-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 10px 20px;
	padding: 14px 0;
	border-bottom: 1px solid #eef0f2;
}

.euwm-product-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-weight: 500;
	cursor: pointer;
	flex: 1 1 240px;
	min-width: 0;
}

.euwm-product-label .euwm-product-check {
	flex: 0 0 auto;
	width: auto !important;
	margin-top: 3px;
}

.euwm-product-name {
	overflow-wrap: anywhere;
	word-break: break-word;
}

.euwm-qty-control {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #555;
	font-size: 0.9rem;
	flex: 0 0 auto;
	white-space: nowrap;
}

/* Pin the quantity input width with high priority so theme rules
   (which often set inputs to width:100%) cannot stretch it. */
.euwm-form-wrapper .euwm-product-qty {
	width: 72px !important;
	min-width: 72px;
	max-width: 72px;
	flex: 0 0 72px;
	padding: 6px 8px;
	border: 1px solid #c7cad0;
	border-radius: 6px;
	box-sizing: border-box;
	text-align: center;
}

.euwm-confirm-items {
	list-style: none;
	padding: 0;
	margin: 0 0 12px;
}

.euwm-confirm-items li {
	padding: 8px 0;
	border-bottom: 1px solid #eef0f2;
}

.euwm-message {
	margin-top: 14px;
	min-height: 1em;
}

.euwm-message.euwm-error {
	color: #c0392b;
	font-weight: 600;
}

.euwm-message.euwm-info {
	color: #2b6cb0;
}

.euwm-success {
	text-align: center;
}

.euwm-success-number {
	font-size: 1.1rem;
	margin-top: 12px;
}

/* My Account status badges */
.euwm-status {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 12px;
	font-size: 0.82rem;
	font-weight: 600;
	background: #edf0f4;
	color: #2b2d33;
}

.euwm-status-new { background: #e3f0ff; color: #1c4e8a; }
.euwm-status-under_review { background: #fff4d6; color: #8a6100; }
.euwm-status-waiting_return { background: #e9e2ff; color: #5b3da8; }
.euwm-status-approved { background: #def7e3; color: #1f7a3d; }
.euwm-status-rejected { background: #fde2e2; color: #a02525; }
.euwm-status-completed { background: #d8efe9; color: #15705c; }

.euwm-order-action {
	margin-top: 16px;
}
