:root {
	--dmf-accent: #3e68ff;
	--dmf-accent-hover: #2f52d6;
	--dmf-danger: #ef3e63;
	--dmf-single-accent: #e0774a;
	--dmf-single-accent-hover: #cf6539;
}

.dmf-form { max-width: 640px; margin: 0 auto; }
.dmf-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.dmf-col-full { grid-column: 1 / -1; }
.dmf-col-half { grid-column: span 1; }
.dmf-field-wrap { display: flex; flex-direction: column; }
.dmf-field-wrap label { font-size: 14px; font-weight: 500; margin-bottom: 6px; }
.dmf-req { color: var(--dmf-danger); }
.dmf-form input[type=text],
.dmf-form input[type=email],
.dmf-form input[type=tel],
.dmf-form input[type=number],
.dmf-form input[type=file],
.dmf-form select,
.dmf-form textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #cad0da;
	border-radius: 8px;
	background: #fff;
	font-size: 14px;
	box-sizing: border-box;
}
.dmf-form textarea { resize: vertical; }
.dmf-form input:focus, .dmf-form select:focus, .dmf-form textarea:focus { outline: none; border-color: var(--dmf-accent); box-shadow: 0 0 0 3px rgba(62, 104, 255, .12); }
.dmf-choices { display: flex; flex-direction: column; gap: 6px; }
.dmf-choice { font-weight: 400; font-size: 14px; }

.dmf-hp { position: absolute !important; left: -9999px !important; top: auto; width: 1px; height: 1px; overflow: hidden; }

.dmf-actions { margin-top: 16px; }
.dmf-submit { width: 100%; padding: 12px 18px; border: 0; border-radius: 9px; background: var(--dmf-accent); color: #fff; font-size: 15px; font-weight: 600; cursor: pointer; transition: background .15s ease; }
.dmf-submit:hover { background: var(--dmf-accent-hover); }
.dmf-submit:disabled { opacity: .55; cursor: not-allowed; }
.dmf-submit.dmf-loading { opacity: .7; }

.dmf-form-msg { padding: 12px 14px; border-radius: 8px; margin-bottom: 14px; font-size: 14px; }
.dmf-form-msg.dmf-ok { background: #e7f4ec; color: #1d7a52; border: 1px solid #bfe3cd; }
.dmf-form-msg.dmf-err { background: #faeaea; color: #a32d2d; border: 1px solid #f0c4c4; }

@media (max-width: 600px) {
	.dmf-grid { grid-template-columns: 1fr; }
	.dmf-col-half { grid-column: 1 / -1; }
}

form.dmf-form.dmf-form-single { max-width: 460px; width: 100%; margin: 0; }
.dmf-single-row {
	display: flex;
	align-items: stretch;
	background: #f4f5f7;
	border: 1px solid #e3e6ea;
	border-radius: 8px;
	overflow: hidden;
}
.dmf-single-field { flex: 1 1 auto; }
.dmf-form .dmf-single-field input {
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 0;
	background: transparent;
	padding: 10px 14px;
	font-size: 13px;
	box-sizing: border-box;
	direction: rtl;
	text-align: right;
}
.dmf-form .dmf-single-field input:focus { outline: none; box-shadow: none; }
.dmf-single-submit {
	flex: 0 0 auto;
	width: auto;
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 10px 18px;
	border-radius: 0;
	background: var(--dmf-single-accent);
	white-space: nowrap;
}
.dmf-single-submit:hover { background: var(--dmf-single-accent-hover); }
.dmf-single-submit svg { flex: 0 0 auto; transform: scaleX(-1); }
