
.of-file-link-box {
	border: 1px solid #f59e0b !important;
	padding: 12px;
	margin: 12px 0;
	border-radius: 6px;
	background: #f8fafc;
}

.of-file-link-logos {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 8px;
}

.of-file-link-logos img {
	max-height: 50px;
	width: auto;
}

.of-file-link-desc {
	margin: 6px 0 10px;
	font-size: 14px;
	color: #334155;
}

input.of-file-link-input {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	/* Default attention color */
	border-color: #f59e0b;
}

.of-file-link-box input.of-file-link-input:invalid {
	/* Error state: red */
	border-color: #ef4444 !important;
}

.of-file-link-box input.of-file-link-input:focus:invalid {
	border-color: #ef4444 !important;
	box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.25);
}

/* Ensure default and focus (non-error) are orange */
.of-file-link-box input.of-file-link-input {
	border-color: #f59e0b !important;
}
.of-file-link-box input.of-file-link-input:focus:not(:invalid) {
	border-color: #f59e0b !important;
	box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.25);
}

/* WooCommerce error states override (if theme applies red borders) */
.woocommerce .form-row.woocommerce-invalid .of-file-link-input,
.woocommerce .woocommerce-invalid .of-file-link-input,
.woocommerce .woocommerce-invalid-required-field .of-file-link-input {
	/* WooCommerce error states: red */
	border-color: #ef4444 !important;
}

.of-admin-file-link {
	margin: 4px 0 0;
}


