/* Bölgesini Yaşatan Kızlar - Burs Portalı Stilleri
   Elementor Uyumlu Versiyon
   Güncellenmiş versiyon - Radyo Butonları ve Hata Mesajı Düzeltmeleri
*/

/* Tüm animasyonları ve geçişleri devre dışı bırak - Tema override */
.byk-form-wrapper,
.byk-form-wrapper *,
.byk-form-wrapper *::before,
.byk-form-wrapper *::after,
.byk-progress-container,
.byk-progress-container *,
.byk-progress-container *::before,
.byk-progress-container *::after,
.byk-step-indicators,
.byk-step-indicators *,
.byk-step-indicators *::before,
.byk-step-indicators *::after,
.byk-navigation-buttons,
.byk-navigation-buttons *,
.byk-navigation-buttons *::before,
.byk-navigation-buttons *::after {
    transition: none !important;
    animation: none !important;
    transform: none !important;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -o-transition: none !important;
    -webkit-animation: none !important;
    -moz-animation: none !important;
    -o-animation: none !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -o-transform: none !important;
}

/* 1. Genel Form Ayarları ve Fontlar - Elementor ile uyumlu */
.byk-form-wrapper {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
    max-width: 700px;
    margin: 0 auto;
    padding: 20px 0; /* Formun üst ve alt kısmına biraz boşluk */
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}

/* Elementor container içinde düzgün görünüm için */
.elementor-widget-container .byk-form-wrapper,
.elementor-section .byk-form-wrapper {
    width: 100% !important;
    max-width: none !important;
}

/* 2. Başlıklar (A. Kişisel Bilgiler vb.) - Elementor ile uyumlu */
.byk-form-wrapper h2, 
.byk-form-wrapper h3 {
    font-weight: 600 !important;
    color: #1d1d1f !important;
    margin-top: 40px !important;
    margin-bottom: 20px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #e0e0e0 !important;
    font-size: inherit !important;
    line-height: 1.4 !important;
}
.byk-form-wrapper h2:first-child {
    margin-top: 0 !important;
}

/* 3. Etiketler (Adınız, E-postanız vb.) - Elementor ile uyumlu */
.byk-form-wrapper label {
    display: block !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333 !important;
    margin-bottom: 8px !important;
    line-height: 1.4 !important; /* Okunabilirliği artırır */
    box-sizing: border-box !important;
}

/* 4. Standart Girdi Alanları - Elementor ile uyumlu */
.byk-form-wrapper input[type="text"],
.byk-form-wrapper input[type="email"],
.byk-form-wrapper input[type="tel"],
.byk-form-wrapper input[type="date"],
.byk-form-wrapper input[type="number"],
.byk-form-wrapper textarea,
.byk-form-wrapper select {
    width: 100% !important;
    padding: 14px 16px !important;
    background-color: #f5f5f7 !important;
    border: 1px solid #d2d2d7 !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    color: #1d1d1f !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    margin-bottom: 16px !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
}

/* Alanlara tıklandığında (focus) efekti - Elementor ile uyumlu */
.byk-form-wrapper input[type="text"]:focus,
.byk-form-wrapper input[type="email"]:focus,
.byk-form-wrapper input[type="tel"]:focus,
.byk-form-wrapper input[type="date"]:focus,
.byk-form-wrapper input[type="number"]:focus,
.byk-form-wrapper textarea:focus,
.byk-form-wrapper select:focus {
    outline: none !important;
    border-color: #970164 !important;
    box-shadow: 0 0 0 3px rgba(151, 1, 100, 0.3) !important;
}

.byk-form-wrapper textarea {
    min-height: 150px !important;
    resize: vertical !important;
}

/* Seçim menüsünün okunu daha belirgin hale getirme - Elementor ile uyumlu */
.byk-form-wrapper select {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M5%208l5%205%205-5z%22%20fill%3D%22%23666%22/%3E%3C/svg%3E') !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 12px !important;
}

/* 5. Radyo Butonları için Özel Stil - Elementor ile uyumlu */
.byk-form-wrapper .radio-group .radio-option {
    margin: 0 0 12px 0 !important; /* Her seçenek arasına boşluk */
    display: block !important; /* Her radyo seçeneğini yeni satıra alır */
    position: relative !important;
}

.byk-form-wrapper .radio-group .radio-option label {
    display: flex !important; /* Flexbox kullanarak hizalamayı kolaylaştır */
    align-items: center !important; /* İçerikleri dikeyde ortala */
    cursor: pointer !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #1d1d1f !important; /* Metin rengi */
    line-height: 1.4 !important; /* Metinler için satır yüksekliği */
    padding: 8px 0 !important; /* Her radyo seçeneğine üst/alt boşluk */
    position: relative !important; /* ::before ve ::after için konumlandırma bağlamı */
    padding-left: 32px !important; /* Özel radyo butonu için yer aç */
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}

.byk-form-wrapper .radio-group input[type="radio"] {
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    margin: 0 !important;
}

/* Özel radyo butonu görünümü (Dış Çember) - Elementor ile uyumlu */
.byk-form-wrapper .radio-group .radio-option label::before {
    content: '' !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    border: 1px solid #d2d2d7 !important;
    border-radius: 50% !important;
    background-color: #f5f5f7 !important;
    transition: border-color 0.2s ease, background-color 0.2s ease !important;
    position: absolute !important; /* label'ın içinde konumlandır */
    left: 0 !important; /* En sola hizala */
    top: 50% !important; /* Dikeyde ortala */
    transform: translateY(-50%) !important; /* Dikeyde tam ortalama */
    box-sizing: border-box !important;
}

/* Seçildiğinde dış çemberin rengi - Elementor ile uyumlu */
.byk-form-wrapper .radio-group input[type="radio"]:checked + label::before {
    border-color: #970164 !important;
    background-color: #fff !important;
}

/* İç nokta (Seçildiğinde görünür) - Elementor ile uyumlu */
.byk-form-wrapper .radio-group .radio-option label::after {
    content: '' !important;
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    background-color: #970164 !important;
    position: absolute !important;
    left: 6px !important; /* Dış çemberin ortasına denk gelecek şekilde ayarla */
    top: 50% !important;
    transform: translateY(-50%) scale(0) !important;
    transition: transform 0.2s ease !important;
    box-sizing: border-box !important;
}
.byk-form-wrapper .radio-group input[type="radio"]:checked + label::after {
    transform: translateY(-50%) scale(1) !important;
}

/* 6. Checkbox Grubu için Özel Stil - Apple benzeri tasarım */
.byk-form-wrapper .checkbox-group .checkbox-option {
    margin: 0 0 12px 0 !important;
    display: block !important;
    position: relative !important;
}

.byk-form-wrapper .checkbox-group .checkbox-option label {
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #1d1d1f !important;
    line-height: 1.4 !important;
    padding: 8px 0 !important;
    position: relative !important;
    padding-left: 32px !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}

.byk-form-wrapper .checkbox-group input[type="checkbox"] {
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    margin: 0 !important;
}

/* Özel checkbox görünümü (Kare) */
.byk-form-wrapper .checkbox-group .checkbox-option label::before {
    content: '' !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    border: 1px solid #d2d2d7 !important;
    border-radius: 4px !important;
    background-color: #f5f5f7 !important;
    transition: border-color 0.2s ease, background-color 0.2s ease !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    box-sizing: border-box !important;
}

/* Seçildiğinde checkbox'ın rengi */
.byk-form-wrapper .checkbox-group input[type="checkbox"]:checked + label::before {
    border-color: #970164 !important;
    background-color: #970164 !important;
}

/* Checkmark (Seçildiğinde görünür) */
.byk-form-wrapper .checkbox-group .checkbox-option label::after {
    content: '✓' !important;
    display: block !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: bold !important;
    position: absolute !important;
    left: 5px !important;
    top: 50% !important;
    transform: translateY(-50%) scale(0) !important;
    transition: transform 0.2s ease !important;
    line-height: 1 !important;
}

/* Seçildiğinde checkmark görünür hale gelir */
.byk-form-wrapper .checkbox-group input[type="checkbox"]:checked + label::after {
    transform: translateY(-50%) scale(1) !important;
}

/* 7. Yüklenen Dosya Listesi */
.byk-form-wrapper .uploaded-files-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 20px 0 !important;
}

.byk-form-wrapper .byk-file-item {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #e5e5e5 !important;
}

.byk-form-wrapper .byk-file-item:last-child {
    border-bottom: none !important;
}

.byk-form-wrapper .byk-file-item span {
    font-weight: 500 !important;
    color: #1d1d1f !important;
}

.byk-form-wrapper .byk-file-view-link {
    color: #970164 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    padding: 6px 12px !important;
    border-radius: 8px !important;
    background-color: rgba(151, 1, 100, 0.1) !important;
    transition: background-color 0.2s ease !important;
}

.byk-form-wrapper .byk-file-view-link:hover {
    background-color: rgba(151, 1, 100, 0.15) !important;
    color: #79014f !important;
}

/* 6. Dosya Yükleme Alanı - Elementor ile uyumlu */
.byk-form-wrapper input[type="file"] {
    font-size: 14px !important;
    padding: 10px !important;
    border: 1px dashed #d2d2d7 !important;
    border-radius: 12px !important;
    width: 100% !important;
    background-color: #f5f5f7 !important;
    margin-bottom: 16px !important;
    box-sizing: border-box !important;
}
/* Dosya yükleme butonunun modern tarayıcılarda stilini değiştirme - Elementor ile uyumlu */
.byk-form-wrapper input[type="file"]::file-selector-button {
    background-color: #e9e9eb !important;
    color: #333 !important;
    border: none !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    font-weight: 500 !important;
    margin-right: 16px !important;
    transition: background-color 0.2s ease !important;
}
.byk-form-wrapper input[type="file"]::file-selector-button:hover {
    background-color: #dcdce1 !important;
}

/* 7. Gönder Butonu - Elementor ile uyumlu */
.byk-form-wrapper input[type="submit"] {
    display: inline-block !important;
    width: auto !important;
    padding: 14px 32px !important;
    background-color: #970164 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-align: center !important;
    transition: background-color 0.2s ease !important;
    margin-top: 20px !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
}

/* Butonun üzerine gelindiğinde ve tıklandığında - Elementor ile uyumlu */
.byk-form-wrapper input[type="submit"]:hover {
    background-color: #0071e3 !important;
}
.byk-form-wrapper input[type="submit"]:active {
    background-color: #005bb5 !important;
}

/* 8. Hata Mesajları ve Başarı Mesajları - Elementor ile uyumlu */
.byk-form-wrapper .error p,
.byk-form-wrapper .byk-error-message {
    background-color: #ffeaea !important;
    border: 1px solid #ff7a7a !important;
    color: #d32f2f !important;
    padding: 10px 15px !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    text-align: left !important;
    margin: 2em 0.5em 1em !important;
    box-sizing: border-box !important;
}

.byk-form-wrapper .updated p,
.byk-form-wrapper .byk-success-message {
    background-color: #e0f6e0 !important;
    border: 1px solid #7ed37e !important;
    color: #2e7d32 !important;
    padding: 10px 15px !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    text-align: left !important;
    margin: 2em 0.5em 1em !important;
    box-sizing: border-box !important;
}

/* Checkbox grupları için stil */
.byk-form-wrapper .byk-checkbox-group {
    margin: 15px 0 !important;
}

.byk-form-wrapper .byk-checkbox-group label {
    display: flex !important;
    align-items: flex-start !important;
    cursor: pointer !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.byk-form-wrapper .byk-checkbox-group input[type="checkbox"] {
    margin-right: 10px !important;
    margin-top: 2px !important;
    flex-shrink: 0 !important;
}

/* Özet tablosu stilleri */
.byk-form-wrapper .byk-summary-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 15px 0 !important;
    border: 1px solid #e0e0e0 !important;
}

.byk-form-wrapper .byk-summary-table td {
    padding: 10px !important;
    border-bottom: 1px solid #f0f0f0 !important;
    vertical-align: top !important;
}

.byk-form-wrapper .byk-summary-table td:first-child {
    width: 30% !important;
    background-color: #f9f9f9 !important;
    font-weight: 500 !important;
}

/* Kullanıcı başlığı ve çıkış linki stilleri */
.byk-user-header {
    margin-bottom: 20px !important;
    padding: 15px !important;
    background-color: #f8f9fa !important;
    border-radius: 8px !important;
    border: 1px solid #e9ecef !important;
}

.byk-user-header h2 {
    margin: 0 0 10px 0 !important;
    font-size: 18px !important;
    color: #333 !important;
    border-bottom: none !important;
}

.byk-user-header p {
    margin: 0 !important;
}

.byk-user-header a {
    color: #dc3545 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 8px 16px !important;
    background-color: #fff !important;
    border: 2px solid #dc3545 !important;
    border-radius: 6px !important;
    display: inline-block !important;
    transition: all 0.2s ease !important;
}

.byk-user-header a:hover {
    background-color: #dc3545 !important;
    color: #fff !important;
    text-decoration: none !important;
}
