/*
 * Form alanlari: Kocist'in iki formunda ortak (iletisim sayfasi ve urun
 * sayfasindaki teklif formu, inc/form.php). contact.css ve product.css bu
 * dosyaya bagimli yuklenir; kurallar contact.css'ten tasindi (kopya degil).
 */

.k-field { display: flex; flex-direction: column; gap: 7px; }
.k-field--wide { grid-column: 1 / -1; }

.k-field label {
	font-size: 13.5px;
	font-weight: 700;
	color: var(--text);
}

/*
 * Alt cizgili alanlar yeterince belirgin degildi; nereye yazilacagi
 * anlasilmiyordu. Kutulu alanlar: net sinir, rahat dokunma alani ve
 * odaklanmada belirgin bir halka.
 */
.k-field input,
.k-field textarea {
	width: 100%;
	padding: 13px 15px;
	border: 1.5px solid var(--line);
	border-radius: 12px;
	background: #fff;
	font-family: inherit;
	font-size: 15.5px;
	line-height: 1.5;
	color: var(--text);
	transition: border-color .18s ease, box-shadow .18s ease;
}

.k-field input::placeholder,
.k-field textarea::placeholder {
	color: #9aa79f;
}

.k-field input:hover,
.k-field textarea:hover { border-color: #c2d1c7; }

.k-field input:focus,
.k-field textarea:focus {
	outline: none;
	border-color: var(--leaf);
	box-shadow: 0 0 0 4px rgba(122, 182, 72, .16);
}

.k-field textarea { resize: vertical; min-height: 132px; }

/* Gonder butonu (inc/form.php formu gercekten gonderir). */
.k-contact__submit {
	padding: 14px 32px;
	border: 0;
	border-radius: 999px;
	background: var(--forest);
	color: #fff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .04em;
	cursor: pointer;
	transition: background-color .2s ease, transform .2s ease;
}

.k-contact__submit:hover { background: var(--leaf); }
.k-contact__submit:active { transform: translateY(1px); }

.k-contact__submit:focus-visible {
	outline: 3px solid var(--leaf);
	outline-offset: 3px;
}

/* Alan hatasi: alanin hemen altinda kisa kirmizi satir. */
.k-field__error {
	font-size: 12.5px;
	font-weight: 600;
	color: #b3261e;
}

/* Gonderim sonucu: formun ustunde tek satirlik bant. */
.k-contact__notice {
	margin: 0 0 18px;
	padding: 14px 18px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
}

.k-contact__notice--ok {
	background: rgba(122, 182, 72, .14);
	border: 1px solid rgba(122, 182, 72, .45);
	color: var(--forest);
}

.k-contact__notice--err {
	background: #fdecea;
	border: 1px solid #f3b8b2;
	color: #8c1d18;
}

/* Bot tuzagi: ekrandan ve erisilebilirlik agacindan cikar. */
.k-hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}


/* Onay kutusu: satirin tamami tiklanir (en az 44px), kutu yaprak yesili. */
.k-consent { gap: 4px; }

.k-field .k-consent__label {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	min-height: 44px;
	padding: 10px 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--text);
	cursor: pointer;
}

.k-field .k-consent__label input {
	flex: none;
	width: 20px;
	height: 20px;
	margin: 1px 0 0;
	padding: 0;
	accent-color: var(--forest);
	cursor: pointer;
}

.k-field .k-consent__label input:focus-visible {
	outline: 3px solid var(--leaf);
	outline-offset: 2px;
	box-shadow: none;
}

.k-consent__link {
	align-self: flex-start;
	padding-left: 32px;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--forest);
	text-underline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.k-field input,
	.k-field textarea,
	.k-contact__submit {
		transition-duration: .01ms !important;
	}
}
