/* Ethicsol Odoo Integration — front-end form styles */

.eoi-form-card {
	max-width: 640px;
	margin: 24px auto;
	padding: 28px 28px 22px;
	background: #fff;
	border: 1px solid #e6e8eb;
	border-radius: 12px;
	box-shadow: 0 6px 24px rgba(16, 24, 40, 0.06);
	box-sizing: border-box;
}

.eoi-form-title {
	margin: 0 0 4px;
	font-size: 1.45rem;
	line-height: 1.25;
	font-weight: 700;
	color: #14361f;
}

.eoi-form-sub {
	margin: 0 0 20px;
	color: #667085;
	font-size: 0.95rem;
}

.eoi-form .eoi-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 16px;
}

.eoi-field { display: flex; flex-direction: column; margin-bottom: 14px; }
.eoi-field.eoi-full { grid-column: 1 / -1; }

.eoi-field label {
	font-size: 0.85rem;
	font-weight: 600;
	color: #344054;
	margin-bottom: 6px;
}
.eoi-field .eoi-req { color: #d92d20; }

.eoi-field input,
.eoi-field select,
.eoi-field textarea {
	width: 100%;
	padding: 11px 13px;
	font-size: 0.95rem;
	color: #101828;
	background: #fff;
	border: 1px solid #d0d5dd;
	border-radius: 8px;
	box-sizing: border-box;
	transition: border-color .15s ease, box-shadow .15s ease;
	font-family: inherit;
}
.eoi-field textarea { resize: vertical; min-height: 110px; }

.eoi-field input:focus,
.eoi-field select:focus,
.eoi-field textarea:focus {
	outline: none;
	border-color: #2e7d46;
	box-shadow: 0 0 0 3px rgba(46, 125, 70, 0.15);
}

.eoi-field input::placeholder,
.eoi-field textarea::placeholder { color: #98a2b3; }

.eoi-actions { margin-top: 8px; }

.eoi-btn {
	display: inline-block;
	width: 100%;
	padding: 13px 22px;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	background: #2e7d46;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background .15s ease, transform .05s ease;
}
.eoi-btn:hover { background: #266a3b; }
.eoi-btn:active { transform: translateY(1px); }

.eoi-alert {
	padding: 13px 15px;
	border-radius: 8px;
	margin-bottom: 18px;
	font-size: 0.95rem;
	border: 1px solid transparent;
}
.eoi-alert-success { background: #ecfdf3; border-color: #abefc6; color: #067647; }
.eoi-alert-error   { background: #fef3f2; border-color: #fecdca; color: #b42318; }

.eoi-hp { position: absolute !important; left: -9999px !important; }

@media (max-width: 540px) {
	.eoi-form-card { padding: 20px 18px; margin: 16px auto; }
	.eoi-form .eoi-grid { grid-template-columns: 1fr; }
}
