.comment-form-ecfa-attachment {
	margin-bottom: 1.5em;
}

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

.ecfa-dropzone-label .required {
	color: #d63638;
}

.ecfa-dropzone {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	text-align: center;
	border: 2px dashed rgba( 0, 0, 0, 0.25 );
	border-radius: 10px;
	padding: 28px 16px;
	cursor: pointer;
	transition: border-color 0.15s ease, background-color 0.15s ease;
}

.ecfa-dropzone:hover,
.ecfa-dropzone:focus-within {
	border-color: #2271b1;
	background-color: rgba( 34, 113, 177, 0.04 );
}

.ecfa-dropzone.has-file {
	border-style: solid;
	border-color: #2271b1;
	background-color: rgba( 34, 113, 177, 0.04 );
}

.ecfa-dropzone-icon {
	color: rgba( 0, 0, 0, 0.45 );
    text-align: center;
}
.ecfa-dropzone-icon svg {
	display: inline-block;
}
.ecfa-dropzone.has-file .ecfa-dropzone-icon {
	color: #2271b1;
}

.ecfa-dropzone-text strong {
	display: block;
	font-weight: 600;
}

.ecfa-dropzone-filename {
	display: block;
	font-size: 0.85em;
	opacity: 0.7;
	margin-top: 2px;
	word-break: break-all;
}

/* Keep the native file input functional and keyboard-accessible, but
   visually hidden — the styled label above it is the clickable area. */
.ecfa-dropzone-input {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect( 0, 0, 0, 0 );
	white-space: nowrap;
	border: 0;
}

.comment-form-ecfa-attachment__notice {
	display: block;
	font-size: 0.85em;
	opacity: 0.75;
	margin-top: 6px;
}

.ecfa-attachment {
	display: flex;
	align-items: center;
	gap: 12px;
	border: 1px solid rgba( 0, 0, 0, 0.12 );
	border-radius: 8px;
	padding: 10px 12px;
	max-width: 100%;
	margin: 10px 0;
	background: rgba( 0, 0, 0, 0.02 );
}

.ecfa-file-icon {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	border-radius: 6px;
	background: #97acc3;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.7em;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.ecfa-file-info {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}

.ecfa-file-info .ecfa-file-name {
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ecfa-file-info .ecfa-file-type {
	font-size: 0.85em;
	opacity: 0.65;
}

.ecfa-download-button {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 6px 12px;
	border-radius: 5px;
	background: #003375;
	color: #fff !important;
	text-decoration: none !important;
	font-size: 0.85em;
	font-weight: 600;
	white-space: nowrap;
}

.ecfa-download-button:hover,
.ecfa-download-button:focus {
	background: #00b0f0;
}