.av-contact-upload-field {
	margin-bottom: 20px;
}

.av-contact-upload-field > label {
	display: block;
	margin-bottom: 7px;
	font-weight: 600;
}

/* 隱藏原生 file input 的醜按鈕，但保留在畫面上（可被鍵盤/螢幕閱讀器存取），
   實際觸發交由下面的自訂 label 按鈕負責（label[for] 會自動觸發對應的 input） */
.av-contact-upload-input {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.av-contact-upload-control {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
}

/* 自訂上傳按鈕：貼近 Enfold 輸入框圓角/間距的風格，可依你的網站主色調整 */
.av-contact-upload-button {
	display: inline-block;
	margin: 0 !important;
	padding: 11px 22px;
	background-color: #444;
	color: #fff;
	border-radius: 2px;
	font-weight: 600;
	font-size: 0.95em;
	cursor: pointer;
	transition: background-color 0.25s ease;
	white-space: nowrap;
}

.av-contact-upload-button:hover {
	background-color: #222;
}

.av-contact-upload-button:active {
	background-color: #000;
}

/* 若想讓按鈕顏色跟你網站的主色一致，把上面三個 background-color
   換成你網站的主色 hex 色碼（可以參考送出按鈕的顏色） */

.av-contact-upload-filename {
	font-size: 0.9em;
	color: #666;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 60%;
}

.av-contact-upload-status {
	display: block;
	margin-top: 8px;
	font-size: 0.85em;
	line-height: 1.4;
}

.av-contact-upload-status.error {
	color: #d9534f;
}

.av-contact-upload-status.error::before {
	content: "\26A0  "; /* ⚠ */
}

.av-contact-upload-status.success {
	color: #2a9d3f;
}

.av-contact-upload-status.success::before {
	content: "\2713  "; /* ✓ */
}

/* 讓自訂按鈕在鍵盤 Tab 移動到隱藏的 input 上時也有清楚的焦點提示，兼顧無障礙 */
.av-contact-upload-input:focus + .av-contact-upload-control .av-contact-upload-button,
.av-contact-upload-input:focus ~ .av-contact-upload-control .av-contact-upload-button {
	outline: 2px solid #2196f3;
	outline-offset: 2px;
}
