/* ===========================
   KULTURTISCH FORM STYLES
   =========================== */
.kulturtisch-form {
	max-width: 900px;
}

/* Kart yapısı */
.ktf-card {
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 20px;
	margin-bottom: 24px;
	background: #fff;
}

/* Başlıklar */
.ktf-card-title {
	font-size: 18px;
	margin-bottom: 16px;
	font-weight: 600;
}

/* 2 kolon grid */
.ktf-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px 30px;
}

.ktf-row-single {
	display: block;
}

@media (max-width: 768px) {
	.ktf-row {
		grid-template-columns: 1fr;
	}
}

/* Floating label alanı */
.ktf-field {
	position: relative;
	margin-bottom: 18px;
}

.ktf-field input,
.ktf-field textarea {
	width: 100%;
	padding: 14px 12px 6px 12px;
	font-size: 15px;
	border: 1px solid #ccc;
	border-radius: 6px;
	background: #fff;
	transition: border-color .2s;
}

.ktf-field textarea {
	min-height: 80px;
	resize: vertical;
}

.ktf-field input:focus,
.ktf-field textarea:focus {
	border-color: #0073aa;
	outline: none;
}

.ktf-field label {
	position: absolute;
	left: 12px;
	top: 14px;
	font-size: 15px;
	color: #666;
	transition: 0.2s;
	pointer-events: none;
	background: transparent;
}

/* Değer girilince veya odaklanınca küçülmesi */
.ktf-field input:not(:placeholder-shown) + label,
.ktf-field input:focus + label,
.ktf-field textarea:not(:placeholder-shown) + label,
.ktf-field textarea:focus + label,
.ktf-field.kt-filled label {
	top: -8px;
	font-size: 12px;
	background: #fff;
	padding: 0 4px;
	color: #333;
}

/* Select ve checkbox için klasik label */
.kulturtisch-form label.select-label,
.kulturtisch-form label.checkbox-label {
	display: block;
	font-size: 14px;
	margin: 10px 0 6px;
	font-weight: 500;
}

/* Şartname kutusu */
.sartname-box {
	border: 1px solid #ddd;
	padding: 15px;
	height: 150px;
	overflow-y: auto;
	border-radius: 6px;
	cursor: pointer;
	background: #fafafa;
}

.sartname-box:hover {
	border-color: #0073aa;
}

/* Küçük bilgi yazısı */
.ktf-helper-text {
	font-size: 12px;
	color: #777;
	margin-top: -8px;
	margin-bottom: 8px;
}

/* Partner / grup alanı içi küçük grid */
#partner_fields .ktf-row,
#partner_kriterleri .ktf-row {
	grid-template-columns: 1fr 1fr;
	gap: 12px 16px;
}

@media (max-width: 768px) {
	#partner_fields .ktf-row,
	#partner_kriterleri .ktf-row {
		grid-template-columns: 1fr;
	}
}
/* Floating label for select */
.ktf-select-field {
    position: relative;
}

.ktf-select-field select {
    width: 100%;
    padding: 14px 12px 6px 12px;
    font-size: 15px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background: #fff;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23666' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 12px center;
}

.ktf-select-field select:focus {
    border-color: #0073aa;
}

.ktf-select-field label {
    position: absolute;
    left: 12px;
    top: 14px;
    font-size: 15px;
    color: #666;
    transition: 0.2s;
    background: #fff;
    pointer-events: none;
    padding: 0 4px;
}

.ktf-select-field select:focus + label,
.ktf-select-field select:not([value=""]) + label {
    top: -8px;
    font-size: 12px;
    color: #333;
}
.ktf-row-single .ktf-field {
    margin-top: 15px !important;
}
