/* -------------------------------------- */
/* DOGA FORM CONTROL TEMEL STİL */
/* -------------------------------------- */
.doga-form-control,
.doga-form-select {
	display: block;
	width: 100%;
	height: var(--doga-input-height);
	padding: 10px 15px;
	border: 1px solid var(--doga-acik-gri);
	border-radius: var(--doga-radius);
	color: var(--doga-black);
	background-color: var(--doga-acik-gri-2);
	font-size: 1rem;
	line-height: 1.5;
	transition: all 0.2s ease-in-out;
	box-sizing: border-box; /* Padding ve border'ın genişliğe dahil olması */
}
.doga-form-control::placeholder {
	color: var(--doga-gri);
}
.doga-form-control:focus,
.doga-form-select:focus {
	background-color: var(--doga-white);
	border-color: var(--doga-mavi);
	box-shadow: var(--doga-focus);
	outline: 0;
}
.doga-form-control[rows] {
	height: auto;
}

/* -------------------------------------- */
/* DOGA FORM GROUP (GRID Sistemi yerine) */
/* -------------------------------------- */
.doga-form-row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px; /* Sütunlar arası boşluğu yönetmek için */
}
.doga-form-col-6 {
	flex: 0 0 50%;
	max-width: 50%;
	padding: 0 10px;
	margin-bottom: 20px; /* Satırlar arası boşluk */
	box-sizing: border-box;
}
.doga-form-col-12 {
	flex: 0 0 100%;
	max-width: 100%;
	padding: 0 10px;
	margin-bottom: 20px;
	box-sizing: border-box;
}
.doga-form-label {
	display: block;
	margin-bottom: 5px;
	font-weight: 500;
}

/* -------------------------------------- */
/* 1. REZERVASYON GRUBU STİLİ */
/* -------------------------------------- */
.doga-reservation-box {
	background-color: var(--doga-white);
	border-radius: var(--doga-radius);
	box-shadow: var(--doga-shadow);
	padding: 20px;
	border: 1px solid var(--doga-acik-gri);
}
.doga-reservation-grid {
	display: flex;
	gap: 10px;
	align-items: stretch; /* Dikey hizalama için anahtar */
}
.doga-grid-item {
	flex-grow: 1;
}
.doga-grid-item-auto {
	flex-grow: 0;
	width: auto;
}

/* Tarih Dropdown Input Stili */
.doga-date-select {
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	width: 100%;
	height: var(--doga-input-height);
	/* doga-form-control stili uygulanır */
}

/* Sayı Arttırma/Azaltma Grubu (Yetişkin Sayısı) */
.doga-spinner-group {
	display: flex;
	align-items: stretch;
	background-color: var(--doga-acik-gri-2);
	border: 1px solid var(--doga-acik-gri);
	border-radius: var(--doga-radius);
	height: var(--doga-input-height);
}
.doga-spinner-text {
	display: flex;
	align-items: center;
	padding: 0 15px;
	color: var(--doga-black);
	font-weight: 500;
	flex-grow: 1;
	justify-content: center;
}
.doga-spinner-btn {
	border: none;
	background-color: transparent;
	color: var(--doga-mavi);
	font-size: 1.25rem;
	width: 45px;
	height: 100%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	transition: background-color 0.1s;
}
.doga-spinner-btn:last-child {
	background-color: var(--doga-mavi);
	color: var(--doga-white);
	border-top-right-radius: var(--doga-radius);
	border-bottom-right-radius: var(--doga-radius);
}
.doga-spinner-btn:last-child:hover {
	background-color: #1a44bf;
}

/* -------------------------------------- */
/* DOGA INPUT GRUBU (ADDONS) - HİZALAMA DÜZELTİLDİ */
/* -------------------------------------- */
.doga-input-group {
	display: flex;
	width: 100%;
	align-items: center;
}
/* Input'un kendi stili */
.doga-input-group > .doga-form-control {
	flex: 1 1 auto;
	border-radius: 0;
	margin-left: -1px; /* Kenarlık birleşimi için */
	z-index: 2;
}
/* Grubun Metin Kısmı/Addon */
.doga-input-group-text,
.doga-input-group > .doga-btn {
	display: flex;
	align-items: center;
	padding: 0 15px;
	font-size: 1rem;
	color: var(--doga-black);
	background-color: var(--doga-acik-gri);
	border: 1px solid var(--doga-acik-gri);
	height: var(--doga-input-height);
	box-sizing: border-box;
	white-space: nowrap;
}

/* Köşe Birleşimleri */
.doga-input-group > .doga-input-group-text:first-child,
.doga-input-group > .doga-form-control:first-child:not(:last-child) {
	border-top-left-radius: var(--doga-radius);
	border-bottom-left-radius: var(--doga-radius);
}
.doga-input-group > .doga-input-group-text:last-child,
.doga-input-group > .doga-form-control:last-child:not(:first-child),
.doga-input-group > .doga-btn:last-child {
	border-top-right-radius: var(--doga-radius);
	border-bottom-right-radius: var(--doga-radius);
}
/* Sadece input'un iç kenarları sıfırlanır */
.doga-input-group > .doga-form-control:not(:first-child):not(:last-child) {
	border-radius: 0;
}

/* -------------------------------------- */
/* FEEDBACK ve HATA GÖSTERİMİ */
/* -------------------------------------- */
.doga-feedback {
	font-size: 0.875em;
	margin-top: 5px;
	display: flex;
	align-items: center;
}
.doga-invalid-feedback {
	color: var(--doga-turuncu);
}
.doga-valid-feedback {
	color: var(--doga-yesil);
}
.doga-form-control.is-invalid {
	border-color: var(--doga-turuncu);
}
.doga-form-control.is-valid {
	border-color: var(--doga-yesil);
}

/* -------------------------------------- */
/* 4. CHECKBOX / RADIO STİLİ (YENİ) */
/* -------------------------------------- */
.doga-form-check {
	display: flex;
	min-height: 1.5rem; /* Yeterli boşluk bırakmak için */
	padding-left: 1.5em; /* Kontrol için boşluk */
	margin-bottom: 0.5rem;
	align-items: center; /* Dikeyde hizalama */
}
.doga-form-check-input {
	width: 1.25rem;
	height: 1.25rem;
	margin-top: 0;
	margin-left: -1.5em; /* Sol boşluğa geri çekme */
	vertical-align: top;
	background-color: var(--doga-white);
	border: 1px solid var(--doga-gri);
	appearance: none;
	cursor: pointer;
	flex-shrink: 0; /* Küçülmesini engelle */
	transition: all 0.2s ease-in-out;
}
/* Checkbox */
.doga-form-check-input[type="checkbox"] {
	border-radius: 0.25rem;
	/* SVG Tik (Beyaz üzerine Mavi) */
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 80% 80%;
}
.doga-form-check-input[type="checkbox"]:checked {
	background-color: var(--doga-mavi);
	border-color: var(--doga-mavi);
}
/* Radio */
.doga-form-check-input[type="radio"] {
	border-radius: 50%;
	/* SVG Nokta (Beyaz üzerine Mavi) */
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 60% 60%;
}
.doga-form-check-input[type="radio"]:checked {
	background-color: var(--doga-mavi);
	border-color: var(--doga-mavi);
}
.doga-form-check-input:focus {
	box-shadow: var(--doga-focus);
	outline: 0;
}

/* -------------------------------------- */
/* 5. DOSYA EKLEME STİLİ (YENİ) */
/* -------------------------------------- */
.doga-form-file {
	position: relative;
}
.doga-form-file input[type="file"] {
	/* Input'un kendi stilini sıfırlama */
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
	z-index: 5;
}
.doga-file-label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: var(--doga-input-height);
	padding: 10px 15px;
	border: 1px solid var(--doga-acik-gri);
	border-radius: var(--doga-radius);
	background-color: var(--doga-acik-gri-2);
	color: var(--doga-gri);
	transition: all 0.2s ease-in-out;
	box-sizing: border-box;
	pointer-events: none; /* Label'ın tıklanabilir olmasını engellemek için */
}
.doga-form-file:hover .doga-file-label {
	border-color: var(--doga-mavi);
	background-color: var(--doga-white);
}
.doga-file-button {
	background-color: var(--doga-mavi);
	color: var(--doga-white);
	padding: 5px 15px;
	border-radius: 8px;
	font-weight: 500;
}

/* -------------------------------------- */
/* 6. İÇ İKONLU INPUT STİLİ (YENİ) */
/* -------------------------------------- */
.doga-input-icon-wrapper {
	position: relative;
	width: 100%;
}

.doga-input-icon {
	position: absolute;
	top: 50%;
	left: 15px; /* İkonun soldan uzaklığı */
	transform: translateY(-50%);
	color: var(--doga-gri); /* İkon rengi */
	font-size: 1.25rem;
	pointer-events: none; /* İkonun tıklamaya engel olmamasını sağlar */
	z-index: 3;
}

/* İkon eklendiğinde input'un padding'ini ayarlama */
.doga-input-icon-wrapper > .doga-form-control {
	padding-left: 45px; /* İkona yer açmak için soldan boşluk */
}
/* Focus durumunda ikon rengini değiştirme */
.doga-input-icon-wrapper:focus-within .doga-input-icon {
	color: var(--doga-mavi); /* Input focus olduğunda ikon rengi mavi olsun */
}

/* Captcha ve Separator (Ayırıcı) stili */
.doga-captcha-group {
	display: flex;
	align-items: center;
	gap: 10px;
}
.doga-captcha-input {
	flex-grow: 1;
}
.doga-captcha-image {
	width: 133px; 
	height: 45px; 
	background-color: var(--doga-acik-gri); 
	border: 1px dashed var(--doga-gri);
	border-radius: var(--doga-radius);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.8rem;
	color: var(--doga-gri);
	flex-shrink: 0;
	overflow: hidden;
}

/* Telefon Numarası Grubu Özel Ayarları */
.doga-input-group .doga-form-select.country-code {
	max-width: 110px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-right: 0; 

	/* --- GÜNCELLEME BAŞLANGIÇ --- */
	
	/* 1. Tarayıcının standart okunu tamamen gizle */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	/* 2. Metnin okun üzerine binmemesi için sağ tarafa boşluk ver */
	padding-right: 40px; 

	/* 3. Özel ok ikonu ekle (Temiz, gri bir ok) */
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%236c757d' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	
	/* 4. Oku tekrar etme ve boyutunu ayarla */
	background-repeat: no-repeat;
	background-size: 12px 12px;

	/* 5. Okun konumunu ayarla (Sağdan 10px içeride ve dikeyde ortalı) */
	background-position: right 10px center;
	
	/* --- GÜNCELLEME BİTİŞ --- */
}

.doga-input-group input[type="tel"] {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

/* Focus olunca ikisinin de border renginin değişmesi için (Opsiyonel) */
.doga-input-group:focus-within .doga-form-control {
	z-index: 2; /* Border'ın üste çıkması için */
}
