/**
 * RCP VAT Fields – Styles
 */

/* Container */
.rcp-vat-fields {
	margin: 1em 0;
}

/* Field rows */
.rcp-vat-fields .rcp-field-row {
	margin-bottom: 1em;
}

.rcp-vat-fields label {
	display: block;
	margin-bottom: 4px;
	font-weight: 500;
}

.rcp-vat-fields select,
.rcp-vat-fields input[type="text"] {
	width: 100%;
	max-width: 100%;
	padding: 8px 10px;
	border: 1px solid var(--theme-palette-color-5, #ddd);
	border-radius: 4px;
	font-size: 15px;
	background: var(--theme-palette-color-8, #fff);
	color: var(--theme-palette-color-3, #2D2D2D);
	transition: border-color 0.2s ease;
}

.rcp-vat-fields select:focus,
.rcp-vat-fields input[type="text"]:focus {
	outline: none;
	border-color: var(--theme-palette-color-1, #C8922A);
	box-shadow: 0 0 0 2px rgba(200, 146, 42, 0.15);
}

.rcp-vat-fields input[readonly] {
	background: var(--theme-palette-color-9, #f0eeea);
	cursor: default;
}

/* Checkbox label */
.rcp-vat-checkbox-label {
	display: flex !important;
	align-items: center;
	gap: 8px;
	font-weight: 400 !important;
	cursor: pointer;
}

.rcp-vat-checkbox-label input[type="checkbox"] {
	width: auto;
	margin: 0;
}

/* Address grid */
.rcp-vat-address-grid {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 12px;
}

/* Validation status */
.rcp-vat-status {
	display: block;
	margin-top: 6px;
	font-size: 14px;
	line-height: 1.4;
	min-height: 20px;
}

.rcp-vat-status--validating {
	color: var(--theme-palette-color-4, #555);
}

.rcp-vat-status--valid {
	color: #2e7d32;
}

.rcp-vat-status--invalid {
	color: #c62828;
}

.rcp-vat-status--pending {
	color: #e65100;
}

/* Status icons */
.rcp-vat-icon-valid {
	font-weight: 700;
}

.rcp-vat-icon-invalid {
	font-weight: 700;
}

.rcp-vat-icon-pending {
	font-size: 16px;
}

/* Spinner */
.rcp-vat-spinner {
	display: inline-block;
	width: 14px;
	height: 14px;
	border: 2px solid var(--theme-palette-color-5, #ddd);
	border-top-color: var(--theme-palette-color-1, #C8922A);
	border-radius: 50%;
	animation: rcp-vat-spin 0.6s linear infinite;
	vertical-align: middle;
}

@keyframes rcp-vat-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Description text */
.rcp-vat-description {
	margin: 4px 0 0;
	font-size: 13px;
	color: var(--theme-palette-color-4, #555);
}

/* Required asterisk */
.rcp-vat-fields .rcp-required {
	color: #c62828;
}

/* Responsive: stack on mobile */
@media (max-width: 480px) {
	.rcp-vat-address-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.rcp-vat-address-grid > div {
		margin-bottom: 1em;
	}
}

/* ─── VAT row in membership details pricing table ─── */

.rcp-vat-row td {
	font-size: 14px;
	color: var(--theme-palette-color-4, #555);
	padding-block: 4px;
}

.rcp-vat-row__amount {
	white-space: nowrap;
}

.rcp-vat-row--exempt td {
	font-style: italic;
}

.rcp-vat-row__note {
	font-size: 13px;
	color: var(--theme-palette-color-4, #555);
}

.rcp-vat-row--recurring td {
	font-size: 13px;
	color: var(--theme-palette-color-4, #555);
}

/* Invoice info box */
.rcp-invoice-info {
	margin: 1em 0;
	padding: 12px 16px;
	background: var(--theme-palette-color-7, #FAF9F6);
	border-left: 3px solid var(--theme-palette-color-1, #C8922A);
	border-radius: 4px;
}

.rcp-invoice-info p {
	margin: 0 0 4px;
	font-size: 14px;
	color: var(--theme-palette-color-3, #2D2D2D);
}

.rcp-invoice-info p:last-child {
	margin-bottom: 0;
}
