/**
 * ==========================================
 * MODALLAR
 * Bootstrap modal ve SweetAlert stilleri
 * 
 * NOT: Butonlar → buttons.css
 *      Form elementleri → forms.css
 *      Tablo sütun genişlikleri → tables.css
 * ==========================================
 */

/* ========== MODAL TEMEL ========== */
.modal-title {
    font-size: 18px;
    font-weight: 600;
}

.modal-dialog {
    max-width: 1100px !important;
}

.modal-lg-custom {
    max-width: 900px !important;
}

/* ========== SWAL POPUP TEMEL ========== */
.swal2-popup {
    border-radius: 16px !important;
    padding: 28px 32px !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
    font-family: var(--by-font-main, "Inter", system-ui, sans-serif) !important;
}
/* İhtar mektubu için hafif kompakt popup (genel Swal padding override) */
.swal2-popup.swal2-popup-ihtar-compact {
    padding: 14px 16px !important;
}
.swal2-popup.swal2-popup-ihtar-compact .swal2-html-container,
.swal2-html-container-ihtar-compact {
    margin: 0 !important;
    padding: 0 !important;
}
.swal2-popup.swal2-popup-ihtar-compact .kisi-yeni-card {
    max-width: 100% !important;
    margin: 0 auto;
}

/* BY4 modal container fix */
.swal2-popup-kisi-yeni .swal2-html-container{
    display:block !important;
    width:100% !important;
}

.swal2-popup .swal2-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin-bottom: 20px !important;
    padding: 0 !important;
}

.swal2-popup .swal2-title.swal2-title-html {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.swal2-popup .swal2-title i {
    margin-right: 8px;
    color: #1e293b;
}

.swal2-popup .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    overflow: hidden !important;
}

/* Yeni borçlandırma & SMS (dept-new) - padding/overflow override */
.swal2-popup.swal2-popup-dept-new {
    padding: 0 !important;
}

.swal2-popup .swal2-actions {
    margin-top: 24px !important;
    gap: 12px !important;
}

/* ========== COMPACT MODAL (Manuel Gelir vb.) ========== */
/* Global kural: .swal2-html-container overflow hidden → küçük modallarda butonlar altta kırpılabiliyor.
   Çözüm: compact-modal içinde içerik scroll'lu olsun, butonlar her zaman görünsün. */
.swal2-popup.compact-modal .swal2-html-container {
    overflow-y: auto !important;
    max-height: 60vh !important;
    padding-right: 4px !important;
}

.swal2-popup.compact-modal .swal2-actions {
    flex-wrap: wrap !important;
    margin-top: 12px !important;
}

/* ========== SWAL BUTONLARI ========== */
.swal2-popup .swal2-confirm {
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%) !important;
    border: none !important;
    padding: 12px 28px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 6px -1px rgba(34, 197, 94, 0.25) !important;
    transition: all 0.2s ease !important;
}

.swal2-popup .swal2-confirm:hover {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
    transform: translateY(-1px) !important;
}

.swal2-popup .swal2-cancel {
    background: #f1f5f9 !important;
    color: #475569 !important;
    border: none !important;
    padding: 12px 28px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
    transition: all 0.2s ease !important;
}

.swal2-popup .swal2-cancel:hover {
    background: #e2e8f0 !important;
}

.swal2-popup .swal2-deny {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    border: none !important;
    padding: 12px 28px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
}

/* ========== SWAL FORM POPUP ========== */
.swal-form-popup,
.swal2-popup.swal-form-popup {
    width: 1100px !important;
    min-width: 1100px !important;
    max-width: 95vw !important;
    padding: 20px 24px !important;
    border-radius: var(--by-radius-xl, 14px) !important;
}

/* Boyut varyasyonları */
.swal-form-popup--small { 
    width: 400px !important;
    min-width: 400px !important;
    min-height: 220px; 
}
.swal-form-popup--medium { 
    width: 450px !important;
    min-width: 450px !important;
    min-height: 320px; 
}
.swal-form-popup--large { 
    width: 550px !important;
    min-width: 550px !important;
    min-height: 420px; 
}

/* ========== YENİ KİŞİ EKLE POPUP ========== */
.swal-kisi-ekle-popup,
.swal2-popup.swal-kisi-ekle-popup {
    max-width: 550px !important;
    padding: 20px !important;
    border-radius: 14px !important;
}

.swal-kisi-ekle-popup .form-label {
    font-size: 13px;
    font-weight: 500;
    color: #4B5563;
    margin-bottom: 4px;
}

.swal-kisi-ekle-popup .form-control {
    height: 36px;
    border-radius: 8px;
    border: 1px solid #D1D5DB;
    font-size: 14px;
    color: #111827;
    background-color: #F9FAFB;
}

.swal-kisi-ekle-popup .form-control::placeholder {
    color: #9CA3AF;
}

.swal-kisi-ekle-popup .form-control:focus {
    border-color: #2563EB;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.18);
    background-color: #FFFFFF;
}

.swal-kisi-ekle-popup textarea.form-control {
    min-height: 60px;
}

@media (max-width: 600px) {
    .swal-kisi-ekle-popup,
    .swal2-popup.swal-kisi-ekle-popup {
        width: 95vw !important;
        max-width: 95vw !important;
    }
}

/* ========== SWAL IFRAME MODAL ========== */
.swal-iframe-modal {
    max-width: 95% !important;
    width: 95% !important;
    height: 85vh !important;
    padding: 0 !important;
}

.swal-iframe-container {
    width: 100% !important;
    height: 80vh !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

.swal-iframe-container iframe {
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    border-radius: var(--by-radius-lg, 8px) !important;
}

/* ========== GELİR/GİDER FORM MODAL ========== */
.income-form-modal.swal2-popup,
.expense-form-modal.swal2-popup {
    padding: 8px 12px !important;
    max-width: 99vw !important;
    width: 99vw !important;
    margin: 0 auto !important;
    top: var(--by-topbar-height, 48px) !important;
    overflow-x: hidden !important;
}

.income-form-modal .swal2-html-container,
.expense-form-modal .swal2-html-container {
    overflow-x: hidden !important;
    max-width: 100% !important;
}

.income-form-modal .swal2-title,
.expense-form-modal .swal2-title {
    display: none !important;
}

/* Form Card */
.income-form-card,
.expense-form-card {
    max-width: 100% !important;
    width: 100% !important;
    margin: 8px 0 0 0 !important;
    padding: 0 8px !important;
}

/* Form Header */
.income-form-header,
.expense-form-header {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    padding-bottom: 4px;
    border-bottom: 1px solid #e5e7eb;
}

.income-form-header h1,
.expense-form-header h1 {
    font-size: 14px;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
}

.income-form-icon,
.expense-form-icon {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff7cc;
    font-size: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Form Tablo */
.income-form-card table,
.expense-form-card table {
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    border: 1px solid #d1d5db !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

.income-form-card table th,
.expense-form-card table th {
    font-size: 10px !important;
    font-weight: 600 !important;
    background: #f8fafc !important;
    padding: 8px 4px !important;
    text-align: center !important;
    border-right: 1px solid #e5e7eb !important;
    border-bottom: 2px solid #e2e8f0 !important;
}

.income-form-card table td,
.expense-form-card table td {
    padding: 4px !important;
    vertical-align: middle !important;
    border-right: 1px solid #e5e7eb !important;
    border-bottom: 1px solid #e5e7eb !important;
}

.income-form-card table th:last-child,
.expense-form-card table th:last-child,
.income-form-card table td:last-child,
.expense-form-card table td:last-child {
    border-right: none !important;
}

.income-form-card table tbody tr:last-child td,
.expense-form-card table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Gelir/Gider form kartı: boyut forms.css global kurallarından gelir; sadece border/align */
.income-form-card .form-control,
.income-form-card .form-select,
.income-form-card .form-control-corporate,
.expense-form-card .form-control,
.expense-form-card .form-select,
.expense-form-card .form-control-corporate,
.income-form-card input[type="date"].form-control,
.income-form-card input[type="date"].form-control-corporate,
.expense-form-card input[type="date"].form-control,
.expense-form-card input[type="date"].form-control-corporate,
.income-form-card .select2-container .select2-selection--single,
.expense-form-card .select2-container .select2-selection--single {
    border: 1px solid #d1d5db !important;
    border-radius: 4px !important;
    line-height: normal !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
}

/* Select2'nin ok ve metin hizalaması için flex koruması */
.income-form-card .select2-container .select2-selection--single,
.expense-form-card .select2-container .select2-selection--single {
    display: flex !important;
    align-items: center !important;
}

/* Focus durumu (Tarih alanındaki gibi mavi parlama iptal, sabit kalır) */
.income-form-card .form-control:focus,
.income-form-card .form-control-corporate:focus,
.expense-form-card .form-control:focus,
.expense-form-card .form-control-corporate:focus,
.income-form-card .select2-container--open .select2-selection--single,
.expense-form-card .select2-container--open .select2-selection--single {
    border: 1px solid #d1d5db !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Tarih widget iç hizalaması */
.expense-form-card input[type="date"]::-webkit-date-and-time-value,
.income-form-card input[type="date"]::-webkit-date-and-time-value {
    text-align: left;
    padding: 0;
    margin: 0;
    line-height: normal;
}

/* Select2 genel genişlik düzeltmesi */
.income-form-card select,
.expense-form-card select {
    width: 100% !important;
    max-width: 100% !important;
}

.select2-container {
    max-width: 100% !important;
    width: 100% !important;
}

/* Select2 sağ ok ikonu hizalaması */
.income-form-card .select2-container .select2-selection__arrow,
.expense-form-card .select2-container .select2-selection__arrow {
    height: 30px !important;
    top: 1px !important;
    right: 2px !important;
}

/* Select2 seçili metin hizalaması */
.select2-selection__rendered {
    padding: 0 !important;
    line-height: normal !important;
    font-size: 12px !important;
    color: #333 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.select2-results__option {
    font-size: 12px !important;
    padding: 6px 8px !important;
}

/* Swal form satırındaki Select2 (Firma vb.) – swal-form-row .form-control ile aynı görünüm */
.swal-form-row .select2-container .select2-selection--single {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    padding: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}

.swal-form-row .select2-container .select2-selection__rendered {
    padding: 0 10px !important;
    font-size: 13px !important;
    line-height: normal !important;
    color: #333 !important;
}

.swal-form-row .select2-container .select2-selection__arrow {
    height: 36px !important;
    top: 1px !important;
    right: 6px !important;
}

/* Readonly input */
.income-form-card input[readonly],
.expense-form-card input[readonly] {
    background-color: #f3f4f6 !important;
    color: #4b5563 !important;
}

/* Form Actions */
.income-form-actions,
.expense-form-actions {
    margin-top: 12px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

/* Form Info Box */
.income-form-info,
.expense-form-info {
    background: #fff7d6;
    padding: 8px 14px;
    border-radius: 6px;
    font-size: 13px;
    margin-top: 12px;
}

/* ========== GELİR FORMU SÜTUN GENİŞLİKLERİ ========== */
.income-form-modal th:nth-child(1),
.income-form-modal td:nth-child(1) { width: 7% !important; }
.income-form-modal th:nth-child(2),
.income-form-modal td:nth-child(2) { width: 8% !important; }
.income-form-modal th:nth-child(3),
.income-form-modal td:nth-child(3) { width: 17% !important; }
.income-form-modal th:nth-child(4),
.income-form-modal td:nth-child(4) { width: 11% !important; }
.income-form-modal th:nth-child(5),
.income-form-modal td:nth-child(5) { width: 9% !important; }
.income-form-modal th:nth-child(6),
.income-form-modal td:nth-child(6) { width: 11% !important; }
.income-form-modal th:nth-child(7),
.income-form-modal td:nth-child(7) { width: 9% !important; }
.income-form-modal th:nth-child(8),
.income-form-modal td:nth-child(8) { width: 12% !important; }
.income-form-modal th:nth-child(9),
.income-form-modal td:nth-child(9) { width: 4% !important; }
.income-form-modal th:nth-child(10),
.income-form-modal td:nth-child(10) { width: 4% !important; }
.income-form-modal th:nth-child(11),
.income-form-modal td:nth-child(11) { width: 4% !important; }

/* ========== GİDER FORMU SÜTUN GENİŞLİKLERİ (Gelir ile 1:1 aynı) ========== */
.expense-form-modal th:nth-child(1),
.expense-form-modal td:nth-child(1) { width: 7% !important; }
.expense-form-modal th:nth-child(2),
.expense-form-modal td:nth-child(2) { width: 8% !important; }
.expense-form-modal th:nth-child(3),
.expense-form-modal td:nth-child(3) { width: 17% !important; }
.expense-form-modal th:nth-child(4),
.expense-form-modal td:nth-child(4) { width: 11% !important; }
.expense-form-modal th:nth-child(5),
.expense-form-modal td:nth-child(5) { width: 9% !important; }
.expense-form-modal th:nth-child(6),
.expense-form-modal td:nth-child(6) { width: 11% !important; }
.expense-form-modal th:nth-child(7),
.expense-form-modal td:nth-child(7) { width: 9% !important; }
.expense-form-modal th:nth-child(8),
.expense-form-modal td:nth-child(8) { width: 12% !important; }
.expense-form-modal th:nth-child(9),
.expense-form-modal td:nth-child(9) { width: 4% !important; }
.expense-form-modal th:nth-child(10),
.expense-form-modal td:nth-child(10) { width: 4% !important; }
.expense-form-modal th:nth-child(11),
.expense-form-modal td:nth-child(11) { width: 4% !important; }

/* ========== SAYFA ÖZEL SWAL RENKLERI ========== */
.swal2-popup-kasalar .swal2-confirm,
.swal2-popup-tahsilat .swal2-confirm {
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%) !important;
}

.swal2-popup-properties .swal2-confirm {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%) !important;
}

.swal2-popup-firmalar .swal2-confirm {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
}

.swal2-popup-personel .swal2-confirm {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%) !important;
}

.swal2-popup-borclandirma .swal2-confirm {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
}

.swal2-popup-alacak .swal2-confirm {
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%) !important;
}

.swal2-popup-virman .swal2-confirm {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
}

/* Baslangic Noktasi onayi - kompakt, ikonsuz */
.swal2-popup-startpoint {
    padding: 18px 20px !important;
    border-radius: 14px !important;
}
.swal2-popup-startpoint .swal2-icon {
    display: none !important;
}
.swal2-popup-startpoint .swal2-title {
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
    font-size: 28px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}
.swal2-popup-startpoint .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
}
.swal2-popup-startpoint .swal2-actions {
    margin-top: 14px !important;
}

/* ==========================================================================
   BORÇLANDIRMA (TEKLİ) - all-dept (aidat) tarzı modal + form stilleri
   Not: / kurulumunda public/assets altı servis edildiği için bu dosyada olmalı
   ========================================================================== */

.swal2-popup-borclandirma {
    min-width: 750px !important;
    max-width: 95vw !important;
}

.swal2-popup-borclandirma .swal2-html-container {
    text-align: left !important;
    overflow: visible !important;
    padding: 0 !important;
}

/* aidat tarzı container */
.toplu-aidat-form-container {
    text-align: left;
    max-height: 70vh;
    overflow-y: auto;
}

/* Grid satırları - her satırda 2 alan */
.toplu-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

/* Input ve select */
.toplu-form-input {
    width: 100%;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 12px;
    font-family: var(--by-font-main);
    background-color: #fff;
    color: #333;
}

.toplu-form-input:focus {
    outline: none;
    border-color: #4a90d9;
    box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.15);
}

.input-help {
    display: block;
    color: #6c757d;
    font-size: 11px;
    margin-top: 3px;
}

/* Tekli borçlandırma: aidat gibi yeşil buton */
.swal2-popup-borclandirma.swal2-popup-dept-aidatlike .swal2-confirm {
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%) !important;
    box-shadow: 0 4px 6px -1px rgba(34, 197, 94, 0.25) !important;
}

/* Responsive - mobilde tek sütun */
@media (max-width: 768px) {
    .swal2-popup-borclandirma {
        min-width: 95vw !important;
        max-width: 95vw !important;
    }
    .toplu-form-row {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

/* ========== KASA INFO BOX ========== */
.kasa-info-box {
    padding: 16px 18px;
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    border-radius: 12px;
    border-left: 4px solid #22c55e;
    margin-bottom: 20px;
}

.kasa-info-box.warning {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border-left-color: #f59e0b;
}

.kasa-info-box.primary {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-left-color: #3b82f6;
}

.kasa-info-name {
    font-weight: 700;
    color: #1e293b;
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.kasa-info-balance {
    color: #64748b;
    font-size: 13px;
    margin-top: 4px;
}

.kasa-info-balance strong {
    color: #1e293b;
    font-weight: 600;
}

/* Virman Arrow */
.virman-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 16px 0;
    color: #3b82f6;
    font-size: 24px;
}

/* ========== MODERN INFO BOX ========== */
.modern-info-box {
    padding: 16px 18px;
    border-radius: 12px;
    margin-bottom: 20px;
    border-left: 4px solid;
}

.modern-info-box.success {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    border-left-color: #22c55e;
}

.modern-info-box.warning {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border-left-color: #f59e0b;
}

.modern-info-box.primary {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-left-color: #3b82f6;
}

.modern-info-box-title {
    font-weight: 700;
    color: #1e293b;
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.modern-info-box-subtitle {
    color: #64748b;
    font-size: 13px;
    margin-top: 4px;
}

/* ========== SMS MODAL ========== */
.sms-stepper {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.sms-stepper .step {
    padding: 6px 18px;
    border-radius: 20px;
    background: #f1f2f6;
    margin-right: 8px;
    font-weight: 500;
}

.sms-stepper .step.active {
    background: #2196f3;
    color: #fff;
}

/* ==========================================================================
   Tekli borçlandırma: "Daire Bilgileri" alanını daha kompakt göster
   ========================================================================== */
#kisi_bilgi .alert,
#kisi_bilgi .alert * {
    font-size: 12px;
    line-height: 1.25;
}

#kisi_bilgi strong {
    font-size: 12px;
}

#kisi_bilgi .badge {
    font-size: 11px;
    padding: 2px 6px;
}

#kisi_bilgi .mb-2 {
    margin-bottom: 6px !important;
}

#kisi_bilgi .alert-info {
    padding: 10px 12px;
}

.modal-body-flex {
    display: flex;
    gap: 16px;
    height: 340px;
}

.sms-left {
    flex: 0 0 200px;
    border-right: 1px solid #dee2e6;
    padding-right: 16px;
}

.sms-right {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.sms-table-scroll {
    flex: 1;
    overflow-y: auto;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background: #fafbfc;
}

.sms-table-scroll table {
    margin-bottom: 0;
}

.sms-table-scroll thead {
    position: sticky;
    top: 0;
    background: #f8f9fa;
    z-index: 10;
}

.sms-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid #e9ecef;
}

.variable-item {
    display: inline-block;
    padding: 4px 10px;
    margin: 3px;
    background: #e9ecef;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}

.variable-item:hover {
    background: #0d6efd;
    color: white;
}

/* ========== SCROLLABLE CONTAINER ========== */
.scroll-container-70vh {
    text-align: left;
    max-height: 70vh;
    overflow-y: auto;
}

.scroll-container-300 {
    max-height: 300px;
    overflow-y: auto;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 700px) {
    .modal-body-flex { 
        flex-direction: column;
        height: auto;
    }
    .sms-left { 
        border-right: none; 
        border-bottom: 1px solid #eee; 
        padding-right: 0; 
        padding-bottom: 16px; 
    }
}

/* ========== MODAL STANDARD (820px – Yeni Tahsilat vb.) ========== */
.modal-standard {
    max-width: 820px;
}

.modal-standard .modal-content {
    max-height: 88vh;
    display: flex;
    flex-direction: column;
}

.modal-standard .modal-body {
    flex: 1;
    overflow-y: auto;
    padding: 24px 28px;
}

.modal-standard .modal-footer {
    padding: 16px 28px;
}

/* Form grid: sol form + sağ dağılım (320px) */
.form-grid {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 24px;
}

.swal2-popup.swal2-popup-tahsilat-swal .form-grid.tahsilat-form-grid,
.swal2-popup.swal2-popup-tahsilat-standard .form-grid.tahsilat-form-grid,
.swal2-popup.swal2-popup-tahsilat-figma .form-grid.tahsilat-form-grid {
    grid-template-columns: 1fr 320px !important;
}

@media (max-width: 992px) {
    .form-grid {
        grid-template-columns: 1fr;
    }
}

/* Üst bilgi alanı (kişi + Toplam Borç) – kompakt padding */
.top-info-card {
    padding: 14px 18px;
}

/* Yeni Tahsilat: SweetAlert kasası şeffaf (Yeni Borçlandırma BY4 ile aynı mantık) */
.swal2-popup.swal2-popup-tahsilat-standard,
.swal2-popup.swal2-popup-tahsilat-figma {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif) !important;
    width: min(520px, 94vw) !important;
    max-width: 520px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    filter: drop-shadow(0 25px 45px rgba(0, 0, 0, 0.18));
}

.swal2-popup.swal2-popup-tahsilat-standard.tahsilat-has-daireler,
.swal2-popup.swal2-popup-tahsilat-figma.tahsilat-has-daireler {
    width: min(820px, 96vw) !important;
    max-width: 820px !important;
}

.swal2-popup.swal2-popup-tahsilat-standard .swal2-title,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-title,
.swal2-popup.swal2-popup-tahsilat-standard .swal2-close,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-close {
    display: none !important;
}

.swal2-popup.swal2-popup-tahsilat-standard .swal2-html-container,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
    max-height: none !important;
    font-size: 12px !important;
    flex: 1 1 auto;
    min-height: 0;
}

/* İç kart: üst yuvarlak; Kaydet şeridi altta birleşik */
.swal2-popup.swal2-popup-tahsilat-standard .tahsilat-modal-wrap.tahsilat-form-card,
.swal2-popup.swal2-popup-tahsilat-figma .tahsilat-modal-wrap.tahsilat-form-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px 8px 0 0;
    border-bottom: none;
    overflow: hidden;
    max-height: min(72vh, 700px);
    display: flex;
    flex-direction: column;
}

.swal2-popup.swal2-popup-tahsilat-standard .tahsilat-form-body,
.swal2-popup.swal2-popup-tahsilat-figma .tahsilat-form-body {
    overflow-y: auto;
    flex: 1;
    min-height: 0;
}

.swal2-popup.swal2-popup-tahsilat-standard .swal2-actions,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-actions {
    margin: 0 !important;
    padding: 10px 16px !important;
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-top: 1px solid #f3f4f6 !important;
    border-radius: 0 0 8px 8px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}

.swal2-popup.swal2-popup-tahsilat-standard .swal2-confirm,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-confirm {
    padding: 8px 18px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    background: #3b7fb9 !important;
    color: #fff !important;
    border: none !important;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15) !important;
}

.swal2-popup.swal2-popup-tahsilat-standard .swal2-confirm:hover,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-confirm:hover {
    background: #2e6a9d !important;
}

/* Tahsilat — Ödeme yapan: gelir formu (swal2-popup-income-new) Select2 görünümü */
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-container {
    width: 100% !important;
}
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    height: 34px !important;
    min-height: 34px !important;
}
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3b7fb9 !important;
}
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 22px !important;
    line-height: 32px !important;
    font-size: 13px !important;
    color: #1f2937 !important;
}
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 32px !important;
}
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-dropdown {
    z-index: 200010 !important;
    font-size: 13px;
}
.swal2-popup.swal2-popup-tahsilat-swal .tahsilat-odeyen-unified-wrap .select2-search--dropdown .select2-search__field {
    font-size: 13px;
    padding: 6px 10px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
}

.swal2-popup.swal2-popup-tahsilat-standard .swal2-cancel,
.swal2-popup.swal2-popup-tahsilat-figma .swal2-cancel {
    padding: 8px 16px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

/* ==========================================================
   Figma: Yeni Kişi Ekle (BY4) - SweetAlert modal
   ========================================================== */

/* ==========================================================
   Yeni Ödeme (Ödemeler) - SweetAlert modal
   Not: İçeride `yeni-odeme.css` kendi `.modal-overlay`'ini çiziyor.
   Bu yüzden SweetAlert backdrop'u şeffaflayıp (çift karartma/blur olmasın),
   popup'ı da şeffaf/0 padding yapıyoruz.
   ========================================================== */
.swal2-container.swal2-container-odeme-new.swal2-backdrop-show {
    background: rgba(0, 0, 0, 0.6) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

.swal2-popup-odeme-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-odeme-new .swal2-title,
.swal2-popup-odeme-new .swal2-close,
.swal2-popup-odeme-new .swal2-actions {
    display: none !important;
}
.swal2-popup-odeme-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
    display: block !important;
}

/* ==========================================================
   Yeni Gelir Grubu (income-type) - SweetAlert modal
   İçeride kendi .modal-overlay var; popup'ı şeffaf/0 padding yap.
   ========================================================== */
.swal2-popup-income-type-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    animation: none !important;
}
.swal2-popup-income-type-new.swal2-show,
.swal2-popup-income-type-new.swal2-hide {
    animation: none !important;
}
.swal2-container:has(.swal2-popup-income-type-new) .swal2-backdrop {
    animation: none !important;
}
.swal2-popup-income-type-new .swal2-title,
.swal2-popup-income-type-new .swal2-close,
.swal2-popup-income-type-new .swal2-actions {
    display: none !important;
}
.swal2-popup-income-type-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
    display: block !important;
}

/* İç tam ekran overlay: karartma/blur SweetAlert backdrop’ta kalsın (Yeni Kişi gibi). Eski CSS cache’inde bile geçerli. */
.swal2-popup-income-type-new .income-type-modal .modal-overlay {
    background-color: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

/* ==========================================================
   Yeni Gider Türü (expense-type) — gelir türü modalı ile aynı BY4/Swal düzeni
   ========================================================== */
.swal2-popup-expense-type-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    animation: none !important;
}
.swal2-popup-expense-type-new.swal2-show,
.swal2-popup-expense-type-new.swal2-hide {
    animation: none !important;
}
.swal2-container:has(.swal2-popup-expense-type-new) .swal2-backdrop {
    animation: none !important;
}
.swal2-popup-expense-type-new .swal2-title,
.swal2-popup-expense-type-new .swal2-close,
.swal2-popup-expense-type-new .swal2-actions {
    display: none !important;
}
.swal2-popup-expense-type-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
    display: block !important;
}
.swal2-popup-expense-type-new .expense-type-modal .modal-overlay {
    background-color: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

/* Dış SweetAlert kutusunu şeffaf yap; içeride kendi kartımız var */
.swal2-popup-kisi-yeni {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    /* SweetAlert width option sets --swal2-width */
    width: var(--swal2-width) !important;
    max-width: 100% !important;
}
.swal2-popup-kisi-yeni .swal2-title,
.swal2-popup-kisi-yeni .swal2-close {
    display: none !important;
}
.swal2-popup-kisi-yeni .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important; /* global .swal2-html-container overflow:hidden override */
    text-align: left !important;  /* SweetAlert default center alignment override */
    width: 100% !important;
    display: block !important;
}

/* Card should fill popup width */
.swal2-popup-kisi-yeni .kisi-yeni-card {
    max-width: 100% !important;
    margin: 0 auto;
}
.swal2-popup-kisi-yeni .swal2-actions {
    display: none !important;
}
.swal2-popup-kisi-yeni.swal2-popup-kisi-yeni-actions .swal2-actions {
    display: flex !important;
}
/* Arama kaydı: Swal butonlarını kartın altına gömülü göster */
.swal2-popup-kisi-yeni.swal2-popup-kisi-arama-actions .swal2-actions {
    width: 100%;
    margin: 0 !important;
    padding: 10px 12px !important;
    justify-content: flex-end !important;
    gap: 8px;
    border: 1px solid #e2e4e8;
    border-top: 0;
    background: #f8f9fb;
    border-radius: 0 0 10px 10px;
}
.swal2-popup-kisi-yeni.swal2-popup-kisi-arama-actions .swal2-confirm,
.swal2-popup-kisi-yeni.swal2-popup-kisi-arama-actions .swal2-cancel {
    min-height: 32px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
    border-radius: 8px !important;
    margin: 0 !important;
}

.kisi-yeni-card {
    background: #f5f6f8;
    border-radius: 10px;
    box-shadow: 0 12px 40px -8px rgba(0, 0, 0, 0.18);
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid #e2e4e8;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}

.kisi-yeni-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f8f9fb;
    border-bottom: 1px solid #e2e4e8;
    padding: 10px 21px;
    flex-shrink: 0;
}
.kisi-yeni-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.kisi-yeni-icon {
    width: 31px;
    height: 31px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.kisi-yeni-icon i {
    color: #fff;
    font-size: 13px;
}
.kisi-yeni-title {
    font-size: 16px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.kisi-yeni-close {
    width: 28px;
    height: 28px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.kisi-yeni-close:hover {
    background: #f3f4f6;
    color: #374151;
}
.kisi-yeni-close i {
    font-size: 14px;
}

.kisi-yeni-form {
    padding: 16px 21px;
    overflow-y: auto;
    flex: 1;
    background: #f5f6f8;
}
.kisi-yeni-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}
.kisi-yeni-field {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.kisi-yeni-field.full {
    grid-column: span 2;
}
/* Kırılımlı Gider modal: Kategori + Gider Türü yan yana (.kisi-yeni-field flex ile çakışmasın) */
.kisi-yeni-field.kirilimgider-kategori-gider-wrap {
    display: grid !important;
    flex-direction: unset;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 8px 12px;
    align-items: end;
    min-width: 0;
}
.kisi-yeni-field.kirilimgider-kategori-gider-wrap.kirilimgider-kategori-only {
    grid-template-columns: minmax(0, 1fr);
}
.kisi-yeni-label {
    font-size: 13px;
    font-weight: 500;
    color: #4b5563;
}
.kisi-yeni-label.opacity-0 {
    opacity: 0;
}
/* Checkbox satırları: etiket + kutu yan yana (rapor modalları) */
.kisi-yeni-label-check {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    min-height: 38px;
    padding-top: 4px;
}
.kisi-yeni-label-check input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0;
    flex-shrink: 0;
    accent-color: #3B7FB9;
    cursor: pointer;
}
.kisi-yeni-label-check span {
    font-size: 13px;
    font-weight: 500;
    color: #4b5563;
}
.kisi-yeni-required {
    color: #ef4444;
}

.kisi-yeni-input-wrap {
    position: relative;
}
.kisi-yeni-input {
    width: 100%;
    padding: 8px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    font-size: 16px;
    color: #1f2937;
    transition: all 0.2s;
    outline: none;
}
.kisi-yeni-input::placeholder {
    color: #9ca3af;
}
.kisi-yeni-input:focus {
    border-bottom-color: #3B7FB9;
}
.kisi-yeni-input.valid {
    border-bottom-color: #10b981;
    color: #065f46;
}
.kisi-yeni-input.invalid {
    border-bottom-color: #ef4444;
    color: #b91c1c;
}

.kisi-yeni-icon-ok,
.kisi-yeni-icon-bad {
    position: absolute;
    right: 0;
    bottom: 10px;
    font-size: 16px;
}
.kisi-yeni-icon-ok {
    color: #10b981;
}
.kisi-yeni-icon-bad {
    color: #ef4444;
}

.kisi-yeni-error-space {
    height: 16px;
    margin-top: -2px;
}
.kisi-yeni-error {
    font-size: 12px;
    color: #ef4444;
}

.kisi-yeni-input-lg {
    width: 100%;
    padding: 13px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    font-size: 18px;
    color: #1f2937;
    transition: all 0.2s;
    outline: none;
}
.kisi-yeni-input-lg::placeholder {
    color: #9ca3af;
}
.kisi-yeni-input-lg:focus {
    border-bottom-color: #3B7FB9;
}

.kisi-yeni-amount {
    padding-right: 20px;
}
.kisi-yeni-amount::-webkit-outer-spin-button,
.kisi-yeni-amount::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.kisi-yeni-amount[type=number] {
    appearance: textfield;
    -moz-appearance: textfield;
}
.kisi-yeni-currency {
    position: absolute;
    right: 0;
    bottom: 8px;
    font-size: 16px;
    font-weight: 600;
    color: #9ca3af;
}

.kisi-yeni-textarea {
    width: 100%;
    padding: 8px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    font-size: 16px;
    color: #1f2937;
    transition: all 0.2s;
    outline: none;
    resize: none;
    font-family: inherit;
}
.kisi-yeni-textarea::placeholder {
    color: #9ca3af;
}
.kisi-yeni-textarea:focus {
    border-bottom-color: #3B7FB9;
}

.kisi-yeni-sms {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #059669;
    font-size: 13px;
    font-weight: 500;
}
.kisi-yeni-sms i {
    font-size: 12px;
}

.kisi-yeni-verify {
    width: 100%;
    padding: 8px 13px;
    background: linear-gradient(to right, #F59E0B, #D97706);
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
.kisi-yeni-verify:hover:not(:disabled) {
    background: linear-gradient(to right, #D97706, #B45309);
}
.kisi-yeni-verify:disabled {
    background: linear-gradient(to right, #d1d5db, #9ca3af);
    cursor: not-allowed;
}
.kisi-yeni-verify.verified {
    background: linear-gradient(to right, #10b981, #059669);
}

.kisi-yeni-kvkk {
    width: 100%;
    padding: 10px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 8px;
}
.kisi-yeni-kvkk:hover:not(:disabled) {
    background: #2E6A9D;
}
.kisi-yeni-kvkk:disabled {
    background: #9ca3af;
    cursor: not-allowed;
}
.kisi-yeni-kvkk.sent {
    background: #10b981;
    cursor: not-allowed;
}
.kisi-yeni-kvkk i {
    font-size: 13px;
}
.kisi-yeni-kvkk i.fa-spin {
    animation: kisiYSpin 1s linear infinite;
}
@keyframes kisiYSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* KVKK SMS kontörü (kişi ekstre ile aynı mantık) */
.kisi-yeni-kvkk-kontor {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.kisi-yeni-kontor-badge {
    display: inline-block;
    min-width: 28px;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
}
.kisi-yeni-kontor-badge.bg-success { background: #10b981; color: #fff; }
.kisi-yeni-kontor-badge.bg-warning { background: #f59e0b; color: #fff; }
.kisi-yeni-kontor-badge.bg-danger { background: #ef4444; color: #fff; }
.kisi-yeni-kontor-badge.bg-secondary { background: #6b7280; color: #fff; }

.kisi-yeni-kvkk-code {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.kisi-yeni-kvkk-code-row {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 8px;
    align-items: stretch;
}
.kisi-yeni-kvkk-code-row .kisi-yeni-kvkk-input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.kisi-yeni-kvkk-code-row .kisi-yeni-verify {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    white-space: nowrap;
}
.kisi-yeni-kvkk-input {
    width: 100%;
    padding: 8px 10px;
    background: #f9fafb;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 16px;
    color: #1f2937;
    transition: all 0.2s;
    outline: none;
}
.kisi-yeni-kvkk-input::placeholder {
    color: #9ca3af;
}
.kisi-yeni-kvkk-input:focus:not(:disabled) {
    border-color: #3B7FB9;
    background: #fff;
}
.kisi-yeni-kvkk-input:disabled {
    background: #f3f4f6;
    cursor: not-allowed;
    color: #9ca3af;
}

.kisi-yeni-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.kisi-yeni-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    padding: 3px 10px;
    border-radius: 999px;
    font-weight: 600;
}
.kisi-yeni-badge i { font-size: 13px; }
.kisi-yeni-badge-tc { background: #e0f2fe; color: #0369a1; }
.kisi-yeni-badge-kvkk { background: #dcfce7; color: #047857; }
.kisi-yeni-badge-tel { background: #ede9fe; color: #6d28d9; }

.kisi-yeni-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 13px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.kisi-yeni-submit {
    padding: 8px 21px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.kisi-yeni-submit:hover {
    background: #2E6A9D;
}
.kisi-yeni-submit i {
    margin-right: 6px;
}

/* Destructive variant (kisi silme gibi) */
.kisi-yeni-icon.kisi-yeni-danger { background: #ef4444; }
.kisi-yeni-title.kisi-yeni-danger { color: #b91c1c; }
.kisi-yeni-submit.kisi-yeni-danger { background: #ef4444; }
.kisi-yeni-submit.kisi-yeni-danger:hover { background: #dc2626; }

/* Success variant */
.kisi-yeni-icon.kisi-yeni-success { background: #10b981; }
.kisi-yeni-title.kisi-yeni-success { color: #047857; }
.kisi-yeni-submit.kisi-yeni-success { background: #10b981; }
.kisi-yeni-submit.kisi-yeni-success:hover { background: #059669; }

/* Ekstre Gönder gibi modallar için ikincil buton */
.kisi-yeni-cancel {
    padding: 8px 18px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: #374151;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.kisi-yeni-cancel:hover {
    background: #f3f4f6;
}
.kisi-yeni-cancel i { margin-right: 6px; }

/* Hızlı seçim "chip" butonları */
.kisi-yeni-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 6px;
}
.kisi-yeni-chip {
    padding: 6px 12px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    color: #374151;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}
.kisi-yeni-chip:hover {
    background: #f9fafb;
}
.kisi-yeni-chip.is-active {
    background: #6366f1;
    border-color: #6366f1;
    color: #fff;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15);
}
.kisi-yeni-chip.is-active:hover {
    background: #4f46e5;
    border-color: #4f46e5;
    color: #fff;
}

/* Açıklama/hint metinleri */
.kisi-yeni-hint {
    font-size: 12px;
    color: #6b7280;
    margin-top: 4px;
}

/* Inline outline action */
.kisi-yeni-outline {
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    background: #f9fafb;
    color: #1f2937;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    justify-content: flex-start;
    transition: all 0.2s;
}
.kisi-yeni-outline:hover { background: #f3f4f6; }

/* Property e-posta öneri kutusu */
.kisi-yeni-suggestions {
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px dashed #cbd5e1;
    background: #f8fafc;
    color: #334155;
    font-size: 12px;
}
.kisi-yeni-suggestions-title { font-weight: 700; margin-bottom: 4px; color: #111827; }
.kisi-yeni-suggestions-body { color: #6b7280; white-space: pre-line; }

/* Utility */
.hidden { display: none; }

/* ----------------------------------------------------------
   FORCE OVERRIDES (global forms.css input[type=...] rules)
   Global forms.css has higher specificity; keep modal Figma look
   ---------------------------------------------------------- */
.swal2-popup-kisi-yeni .kisi-yeni-card label.kisi-yeni-label {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card label.kisi-yeni-label.opacity-0 {
    opacity: 0 !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card label.kisi-yeni-label-check {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    margin-bottom: 0 !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card label.kisi-yeni-label-check input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    background: #fff !important;
    flex-shrink: 0 !important;
    accent-color: #3B7FB9 !important;
}

.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input,
.swal2-popup-kisi-yeni .kisi-yeni-card textarea.kisi-yeni-textarea,
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input-lg {
    height: auto !important;
    min-height: 0 !important;
    padding: 8px 10px !important;
    border: 1px solid #e2e4e8 !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #1f2937 !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input-lg {
    padding: 12px 12px !important;
    font-size: 16px !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card textarea.kisi-yeni-textarea {
    resize: none !important;
    min-height: 0 !important;
    padding: 10px 12px !important;
}

.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input:focus,
.swal2-popup-kisi-yeni .kisi-yeni-card textarea.kisi-yeni-textarea:focus,
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input-lg:focus {
    outline: none !important;
    border-color: #3B7FB9 !important;
    box-shadow: 0 0 0 2px rgba(59, 127, 185, 0.2) !important;
}

.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input[type="date"],
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input-date {
    width: 100% !important;
    box-sizing: border-box !important;
    min-height: 38px !important;
    line-height: 1.35 !important;
    border-bottom: none !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input[type="date"]::-webkit-calendar-picker-indicator,
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input-date::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: 0.75;
    margin-left: 4px;
}

.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input.valid {
    border-color: #10b981 !important;
    color: #065f46 !important;
}
.swal2-popup-kisi-yeni .kisi-yeni-card input.kisi-yeni-input.invalid {
    border-color: #ef4444 !important;
    color: #b91c1c !important;
}

/* ==========================================================
   Figma: Yeni Gider Ekle (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-expense-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-expense-new .swal2-title,
.swal2-popup-expense-new .swal2-close {
    display: none !important;
}
.swal2-popup-expense-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-expense-new .swal2-actions {
    display: none !important;
}

.expense-new-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 460px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}

.expense-new-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.expense-new-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.expense-new-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.expense-new-icon i {
    color: #fff;
    font-size: 10px;
}
.expense-new-title {
    font-size: 12px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.expense-new-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.expense-new-close:hover {
    background: #f3f4f6;
    color: #374151;
}
.expense-new-close i { font-size: 12px; }

.expense-new-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}
.expense-new-loading {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #eef6ff;
    color: #3B7FB9;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.expense-new-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.expense-new-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
}
.expense-new-field {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.expense-new-field.full { grid-column: span 2; }

/* Label: reuse swal-form-label hooks, but look like BY4 */
.swal2-popup-expense-new .expense-new-card label.swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
}

/* Inputs / selects: underline */
.expense-new-input {
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    font-size: 12px;
    font-weight: 400;
    color: #1f2937;
    outline: none;
    box-shadow: none;
}
.expense-new-input::placeholder { color: #9ca3af; }
.expense-new-input:focus { border-bottom-color: #3B7FB9; }
.expense-new-placeholder {
    display: flex;
    align-items: center;
    color: #64748b;
    background: transparent;
    cursor: default;
}
.expense-new-input:disabled {
    color: #9ca3af;
    border-bottom-color: #e5e7eb;
    background: transparent;
}

/* Tarih / açıklama / belge / tutar: income modal ile aynı görsel davranış */
.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="date"],
.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="number"],
.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="text"] {
    -webkit-appearance: none;
    appearance: none;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    line-height: 1.25;
    font-size: 12px;
    box-sizing: border-box;
}

.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
    padding: 0 0 0 4px;
}

.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="date"]:focus,
.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="number"]:focus,
.swal2-popup-expense-new .expense-new-card input.expense-new-input[type="text"]:focus {
    border-bottom-color: #3B7FB9 !important;
    outline: none !important;
    box-shadow: none !important;
}

/* dynamic required styling hooks (kept from expense.js) */
.swal2-popup-expense-new .dynamic-required { font-weight: 700 !important; color: #0f172a !important; }
.swal2-popup-expense-new .dynamic-optional { font-weight: 400 !important; opacity: 0.6 !important; color: #94a3b8 !important; font-style: italic; }
.swal2-popup-expense-new .dynamic-required-input { background-color: transparent !important; }

/* File upload */
.expense-new-file {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
    color: #64748b;
    cursor: pointer;
    font-size: 12px;
    background: #f8fafc;
}
.expense-new-file:hover {
    border-color: #94a3b8;
    background: #f1f5f9;
}
.expense-new-file input[type="file"] {
    position: absolute;
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    z-index: -1;
}

/* Footer */
.expense-new-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.expense-new-cancel {
    padding: 6px 14px;
    background: #e5e7eb;
    border: none;
    border-radius: 8px;
    color: #374151;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}
.expense-new-cancel:hover { background: #d1d5db; }
.expense-new-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.expense-new-submit:hover { background: #2E6A9D; }
.expense-new-submit i { font-size: 12px; }

/* Select2: make it look like underline inputs inside this popup */
.swal2-popup-expense-new .select2-container { width: 100% !important; }
.swal2-popup-expense-new .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    height: 28px !important;
}
.swal2-popup-expense-new .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-expense-new .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 20px !important;
    line-height: 26px !important;
    font-size: 12px !important;
    color: #1f2937 !important;
}
.swal2-popup-expense-new .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px !important;
}
.swal2-popup-expense-new .select2-dropdown {
    z-index: 99999 !important;
    font-size: 12px;
}
.swal2-popup-expense-new .select2-search--dropdown .select2-search__field {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
}

/* ==========================================================
   Figma: Yeni Gelir Ekle (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-income-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-income-new .swal2-title,
.swal2-popup-income-new .swal2-close {
    display: none !important;
}
.swal2-popup-income-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-income-new .swal2-actions {
    display: none !important;
}

/* Select2: Firma/Kişi/Personel — arama kutusu + BY4 alt çizgi */
.swal2-popup-income-new .select2-container {
    width: 100% !important;
}
.swal2-popup-income-new .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    height: 28px !important;
}
.swal2-popup-income-new .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-income-new .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 20px !important;
    line-height: 26px !important;
    font-size: 12px !important;
    color: #1f2937 !important;
}
.swal2-popup-income-new .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px !important;
}
.swal2-popup-income-new .select2-dropdown {
    z-index: 200010 !important;
    font-size: 12px;
}
.swal2-popup-income-new .select2-search--dropdown .select2-search__field {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
}

.income-new-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 460px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}

.income-new-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.income-new-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.income-new-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.income-new-icon i {
    color: #fff;
    font-size: 10px;
}
.income-new-title {
    font-size: 12px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.income-new-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.income-new-close:hover {
    background: #f3f4f6;
    color: #374151;
}
.income-new-close i { font-size: 12px; }

.income-new-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}
.income-new-loading {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #eef6ff;
    color: #3B7FB9;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.income-new-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.income-new-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
}
.income-new-field {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.income-new-field.full { grid-column: span 2; }

.swal2-popup-income-new .income-new-card label.swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
}
.swal2-popup-income-new .income-new-card .required {
    color: #ef4444 !important;
}

.income-new-input {
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    font-size: 12px;
    font-weight: 400;
    color: #1f2937;
    outline: none;
    box-shadow: none;
}
.income-new-input::placeholder { color: #9ca3af; }
.income-new-input:focus { border-bottom-color: #3B7FB9; }
.income-new-input:disabled {
    color: #9ca3af;
    border-bottom-color: #e5e7eb;
    background: transparent;
}

/* Tarih / açıklama / belge / tutar: tarayıcı & Bootstrap kutusunu kaldır; select ile aynı alt çizgi + yükseklik */
.swal2-popup-income-new .income-new-card input.income-new-input[type="date"],
.swal2-popup-income-new .income-new-card input.income-new-input[type="number"],
.swal2-popup-income-new .income-new-card input.income-new-input[type="text"] {
    -webkit-appearance: none;
    appearance: none;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    line-height: 1.25;
    font-size: 12px;
    box-sizing: border-box;
}

.swal2-popup-income-new .income-new-card input.income-new-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-income-new .income-new-card input.income-new-input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.swal2-popup-income-new .income-new-card input.income-new-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
    padding: 0 0 0 4px;
}

.swal2-popup-income-new .income-new-card input.income-new-input[type="date"]:focus,
.swal2-popup-income-new .income-new-card input.income-new-input[type="number"]:focus,
.swal2-popup-income-new .income-new-card input.income-new-input[type="text"]:focus {
    border-bottom-color: #3B7FB9 !important;
    outline: none !important;
    box-shadow: none !important;
}

.swal2-popup-income-new .income-new-card select.income-new-input {
    line-height: 1.25;
    min-height: 0;
    box-sizing: border-box;
}

.swal2-popup-income-new .select2-container {
    width: 100% !important;
    z-index: 99999 !important;
}
.swal2-popup-income-new .select2-container--default .select2-selection--single {
    min-height: 31px !important;
    height: 31px !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.swal2-popup-income-new .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-income-new .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 22px !important;
    line-height: 29px !important;
    color: #1f2937 !important;
    font-size: 12px !important;
    text-align: left !important;
}
.swal2-popup-income-new .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 29px !important;
    right: 0 !important;
}
.select2-container--open {
    z-index: 100000 !important;
}
.select2-dropdown {
    z-index: 100001 !important;
    border-color: #d1d5db !important;
}
.select2-search--dropdown .select2-search__field {
    outline: none !important;
    border-color: #cbd5e1 !important;
    border-radius: 6px !important;
    font-size: 13px !important;
}

.income-new-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.income-new-submit {
    height: 40px;
    padding: 0 20px;
    background: linear-gradient(to right, #3B7FB9, #2E6A9D);
    border: none;
    border-radius: 12px;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 4px 12px rgba(59, 127, 185, 0.3);
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.income-new-submit:hover { background: linear-gradient(to right, #2E6A9D, #225682); }
.income-new-submit:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}
.income-new-submit i { font-size: 12px; }

/* ==========================================================
   Figma: Yeni Personel Ekle (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-personel-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-personel-new .swal2-title,
.swal2-popup-personel-new .swal2-close {
    display: none !important;
}
.swal2-popup-personel-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-personel-new .swal2-actions {
    display: none !important;
}

.personel-new-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 460px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}
.personel-new-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.personel-new-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.personel-new-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.personel-new-icon i { color: #fff; font-size: 10px; }
.personel-new-title {
    font-size: 12px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.personel-new-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.personel-new-close:hover {
    background: #f3f4f6;
    color: #374151;
}
.personel-new-close i { font-size: 12px; }

.personel-new-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}
.personel-new-loading {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #eef6ff;
    color: #3B7FB9;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.personel-new-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.personel-new-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
}
.personel-new-field {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.personel-new-field.full { grid-column: span 2; }
.personel-new-row2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.swal2-popup-personel-new .personel-new-card label.swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
}
.swal2-popup-personel-new .personel-new-card label.swal-form-label i {
    color: #9ca3af !important;
    margin-right: 4px;
}
.swal2-popup-personel-new .personel-new-card .required {
    color: #ef4444 !important;
}

.personel-new-input {
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    font-size: 12px;
    font-weight: 400;
    color: #1f2937;
    outline: none;
    box-shadow: none;
}
.personel-new-input::placeholder { color: #9ca3af; }
.personel-new-input:focus { border-bottom-color: #3B7FB9; }
.personel-new-input:disabled {
    color: #9ca3af;
    border-bottom-color: #e5e7eb;
    background: transparent;
}

.personel-new-textarea {
    width: 100%;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    font-size: 12px;
    color: #1f2937;
    outline: none;
    resize: none;
    font-family: inherit;
}
.personel-new-textarea::placeholder { color: #9ca3af; }
.personel-new-textarea:focus { border-bottom-color: #3B7FB9; }

.personel-new-help {
    font-size: 10px;
    color: #6b7280;
    margin-top: 4px;
    line-height: 1.2;
}

.personel-new-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.personel-new-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.personel-new-submit:hover { background: #2E6A9D; }
.personel-new-submit:disabled {
    opacity: 0.65;
    cursor: not-allowed;
}
.personel-new-submit i { font-size: 12px; }

/* ==========================================================
   Figma: Yeni Borçlandırma (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-dept-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-dept-new .swal2-title,
.swal2-popup-dept-new .swal2-close {
    display: none !important;
}
.swal2-popup-dept-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-dept-new .swal2-actions {
    display: none !important;
}

.dept-new-card {
    background: #f9fafb;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 900px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 85vh;
}
.dept-new-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.dept-new-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.dept-new-header-texts {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.dept-new-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.dept-new-icon i { color: #fff; font-size: 10px; }
.dept-new-title {
    font-size: 12px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.dept-new-daire-pill {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(37, 99, 235, 0.25);
    color: #1d4ed8;
    font-size: 10px;
    font-weight: 600;
    max-width: 220px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.dept-new-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.dept-new-close:hover { background: #f3f4f6; color: #374151; }
.dept-new-close i { font-size: 12px; }

.dept-new-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}

.dept-new-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.dept-new-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
}
.dept-new-field {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.dept-new-field.full { grid-column: span 2; }

/* Yeni borçlandırma: tg-tek (Toplu Aidat / tek form ile aynı alt çizgi alanları) */
.dept-new-card .dept-new-form {
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
}
.dept-new-grid {
    gap: 8px;
}
.dept-new-field {
    gap: 4px;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
    display: block;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-label .tg-tek-required {
    color: #ef4444 !important;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-label .tg-tek-optional {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="date"],
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="number"],
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="text"] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    min-height: 0 !important;
    height: auto !important;
    line-height: 1.25;
    font-size: 12px;
    color: #1f2937;
    box-sizing: border-box;
    outline: none;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
    padding: 0 0 0 4px;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="date"]:focus,
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="number"]:focus,
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input[type="text"]:focus {
    border-bottom-color: #3b7fb9 !important;
    box-shadow: none !important;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-input::placeholder {
    color: #9ca3af;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-select {
    width: 100%;
    padding: 6px 0;
    padding-right: 20px;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    font-size: 12px;
    color: #1f2937;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L2 4h8z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right center;
    box-sizing: border-box;
}
.swal2-popup-dept-new .dept-new-card .dept-new-form .tg-tek-select:focus {
    border-bottom-color: #3b7fb9;
}

.swal2-popup-dept-new .dept-new-card label.swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
}
.swal2-popup-dept-new .dept-new-card .required { color: #ef4444 !important; }

.dept-new-input {
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    font-size: 12px;
    font-weight: 400;
    color: #1f2937;
    outline: none;
    box-shadow: none;
}
.dept-new-input::placeholder { color: #9ca3af; }
.dept-new-input:focus { border-bottom-color: #3B7FB9; }
.dept-new-input:disabled {
    color: #9ca3af;
    border-bottom-color: #e5e7eb;
    background: transparent;
}

/* SMS modal: Toplu Aidat gibi tam kutu border (alt çizgi değil). .dept-new-input'u ezer. */
select.sms-box-input,
input.sms-box-input {
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    min-height: 36px !important;
}
select.sms-box-input:focus,
input.sms-box-input:focus {
    border-color: #3B7FB9 !important;
    box-shadow: 0 0 0 2px rgba(59, 127, 185, 0.15) !important;
}

/* Toplu SMS modalı: all-dept dropdown/select tarzı. .swal2-popup ile class eklenmese de eşleşir. */
.swal2-popup-dept-new .sms-left select.dept-new-input,
.swal2-popup-dept-new .sms-left input.dept-new-input,
.swal2-popup-dept-new #step2_container select.dept-new-input,
.swal2-popup-dept-new #step2_container input.dept-new-input,
.swal2-popup .sms-left select.dept-new-input,
.swal2-popup .sms-left input.dept-new-input,
.swal2-popup #step2_container select.dept-new-input,
.swal2-popup #step2_container input.dept-new-input {
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    outline: none !important;
    box-shadow: none !important;
    transition: border-color 0.2s, box-shadow 0.2s !important;
    min-width: 0 !important;
}
.swal2-popup-dept-new .sms-left select.dept-new-input,
.swal2-popup-dept-new #step2_container select.dept-new-input,
.swal2-popup .sms-left select.dept-new-input,
.swal2-popup #step2_container select.dept-new-input {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-color: #ffffff !important;
    padding-right: 32px !important;
}
.swal2-popup-dept-new .sms-left select.dept-new-input:focus,
.swal2-popup-dept-new .sms-left input.dept-new-input:focus,
.swal2-popup-dept-new #step2_container select.dept-new-input:focus,
.swal2-popup-dept-new #step2_container input.dept-new-input:focus,
.swal2-popup .sms-left select.dept-new-input:focus,
.swal2-popup .sms-left input.dept-new-input:focus,
.swal2-popup #step2_container select.dept-new-input:focus,
.swal2-popup #step2_container input.dept-new-input:focus {
    border-color: #3B7FB9 !important;
    box-shadow: 0 0 0 2px rgba(59, 127, 185, 0.15) !important;
}
.swal2-popup-dept-new .sms-left .swal-form-label,
.swal2-popup-dept-new #step2_container .swal-form-label,
.swal2-popup .sms-left .swal-form-label,
.swal2-popup #step2_container .swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #6b7280 !important;
}

.dept-new-info {
    padding: 10px 12px;
    border-radius: 8px;
    background: #eef6ff;
    border: 1px solid rgba(59, 127, 185, 0.25);
    color: #0f172a;
}

.dept-new-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.dept-new-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.dept-new-submit:hover { background: #2E6A9D; }
.dept-new-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.dept-new-submit i { font-size: 12px; }

/* ==========================================================
   Figma: Toplu Aidat (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-toplu-aidat {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-toplu-aidat .swal2-title,
.swal2-popup-toplu-aidat .swal2-close {
    display: none !important;
}
.swal2-popup-toplu-aidat .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-toplu-aidat .swal2-actions {
    display: none !important;
}

.toplu-aidat-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 560px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
}
.toplu-aidat-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.toplu-aidat-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.toplu-aidat-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.toplu-aidat-icon i { color: #fff; font-size: 10px; }
.toplu-aidat-title {
    font-size: 12px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.toplu-aidat-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.toplu-aidat-close:hover { background: #f3f4f6; color: #374151; }
.toplu-aidat-close i { font-size: 12px; }

.toplu-aidat-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}

.toplu-aidat-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}

/* Toplu Aidat: tg-tek (BY4) — iki sütunda etiket yüksekliği farklıyken alt çizgi hizası */
.toplu-aidat-card .tg-tek-row2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin-bottom: 6px;
    align-items: stretch;
}
.toplu-aidat-card .tg-tek-row2 > .tg-tek-field {
    min-height: 0;
    margin-bottom: 0;
}
/* Fallback (subgrid yok): kontrolü sütun altına it */
.toplu-aidat-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
.toplu-aidat-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
.toplu-aidat-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount {
    margin-top: auto;
}
.toplu-aidat-card .tg-tek-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 6px;
}
.toplu-aidat-card .tg-tek-field:last-child {
    margin-bottom: 0;
}
.toplu-aidat-card .tg-tek-label {
    font-size: 10px;
    font-weight: 500;
    color: #4b5563;
}
.toplu-aidat-card .tg-tek-optional {
    color: #94a3b8;
    font-weight: 400;
}

/* Tarih / sayı / metin: tarayıcı kutusu kaldır; select ile aynı alt çizgi (gelir BY4 ile aynı mantık) */
/* forms.css (height:38px, font-size:13px !important) — select ile input aynı şerit */
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="date"],
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="number"],
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="text"] {
    -webkit-appearance: none;
    appearance: none;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    min-height: 30px !important;
    height: auto !important;
    max-height: none !important;
    line-height: 1.25 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #1f2937 !important;
    box-sizing: border-box !important;
    width: 100%;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
    padding: 0 0 0 4px;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="date"]:focus,
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="number"]:focus,
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input[type="text"]:focus {
    border-bottom-color: #3b7fb9 !important;
    outline: none !important;
    box-shadow: none !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-select {
    width: 100%;
    padding: 6px 20px 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #1f2937 !important;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L2 4h8z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right center;
    box-sizing: border-box !important;
    box-shadow: none !important;
    min-height: 30px !important;
    height: auto !important;
    max-height: none !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-select:focus {
    border-bottom-color: #3b7fb9 !important;
    box-shadow: none !important;
    outline: none !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input.tg-tek-disabled,
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-input:disabled {
    color: #9ca3af !important;
    border-bottom-color: #e5e7eb !important;
    background: transparent !important;
    cursor: not-allowed;
}

/* Eski kayıt: checkbox altındaki tarih tüm kart genişliğinde uzamasın */
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-check + .tg-tek-input[type="date"] {
    max-width: 260px;
    width: 100%;
    align-self: flex-start;
}
.swal2-popup-toplu-aidat .toplu-aidat-card .tg-tek-helper {
    font-size: 9px;
    color: #6b7280;
    margin-top: 2px;
}

/* Legacy markup styling inside this popup */
.swal2-popup-toplu-aidat .toplu-aidat-form .form-row {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 6px !important;
    margin-bottom: 10px !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-form .form-group {
    margin-bottom: 10px !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-form label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
    display: block;
}
.swal2-popup-toplu-aidat .toplu-aidat-form .tg-tek-label .tg-tek-required {
    color: #ef4444 !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-form .tg-tek-label .tg-tek-optional {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-form input,
.swal2-popup-toplu-aidat .toplu-aidat-form select,
.swal2-popup-toplu-aidat .toplu-aidat-form textarea {
    width: 100% !important;
    padding: 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    color: #1f2937 !important;
    outline: none !important;
    box-shadow: none !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-form input:focus,
.swal2-popup-toplu-aidat .toplu-aidat-form select:focus,
.swal2-popup-toplu-aidat .toplu-aidat-form textarea:focus {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-toplu-aidat .toplu-aidat-form input:disabled,
.swal2-popup-toplu-aidat .toplu-aidat-form select:disabled,
.swal2-popup-toplu-aidat .toplu-aidat-form textarea:disabled {
    color: #9ca3af !important;
    border-bottom-color: #e5e7eb !important;
}

.toplu-aidat-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.toplu-aidat-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.toplu-aidat-submit:hover { background: #2E6A9D; }
.toplu-aidat-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.toplu-aidat-submit i { font-size: 12px; }

/* ==========================================================
   Figma: Yeni Ödeme (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-odeme-new {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-odeme-new .swal2-title,
.swal2-popup-odeme-new .swal2-close {
    display: none !important;
}
.swal2-popup-odeme-new .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-odeme-new .swal2-actions {
    display: none !important;
}

.odeme-new-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 460px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}
.odeme-new-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.odeme-new-header-left { display: flex; align-items: center; gap: 8px; }
.odeme-new-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.odeme-new-icon i { color: #fff; font-size: 10px; }
.odeme-new-title {
    font-size: 12px;
    font-weight: 700;
    color: #3B7FB9;
    margin: 0;
}
.odeme-new-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.odeme-new-close:hover { background: #f3f4f6; color: #374151; }
.odeme-new-close i { font-size: 12px; }

.odeme-new-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}
.odeme-new-loading {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #eef6ff;
    color: #3B7FB9;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.odeme-new-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}

/* Labels / rows (existing hooks) */
.swal2-popup-odeme-new label.swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 0 !important;
    display: block !important;
}
.swal2-popup-odeme-new .swal-form-row {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 6px !important;
    margin-bottom: 10px !important;
}
.swal2-popup-odeme-new .swal-form-row > div { min-width: 0; }

/* Underline inputs/selects */
.swal2-popup-odeme-new .form-control {
    width: 100% !important;
    padding: 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    color: #1f2937 !important;
    outline: none !important;
    box-shadow: none !important;
    min-height: 0 !important;
    height: auto !important;
}
.swal2-popup-odeme-new .form-control:focus { border-bottom-color: #3B7FB9 !important; }
.swal2-popup-odeme-new textarea.form-control { resize: none; }

/* Tip buttons: compact */
.swal2-popup-odeme-new .odeyen-tip-btn {
    padding: 6px 10px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}
.swal2-popup-odeme-new .odeyen-tip-btn.btn-primary {
    background: #3B7FB9 !important;
    border-color: #3B7FB9 !important;
}
.swal2-popup-odeme-new .odeyen-tip-btn.btn-primary:hover {
    background: #2E6A9D !important;
    border-color: #2E6A9D !important;
}
.swal2-popup-odeme-new .odeyen-tip-btn.btn-outline-primary {
    color: #3B7FB9 !important;
    border-color: rgba(59, 127, 185, 0.35) !important;
}
.swal2-popup-odeme-new .odeyen-tip-btn.btn-outline-primary:hover {
    background: rgba(59, 127, 185, 0.08) !important;
}

/* Bakiye section */
.odeme-new-bakiye { margin-bottom: 12px; }
.odeme-new-bakiye-top {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}
.odeme-new-bakiye-bottom {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.odeme-new-kisi-adi {
    font-size: 16px;
    font-weight: 700;
    color: #334155;
}
.swal2-popup-odeme-new .borc-badge {
    display: inline-block;
    padding: 10px 14px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    min-width: 120px;
    white-space: nowrap;
}
.swal2-popup-odeme-new .borc-badge.borc-var { background:#fef2f2; color:#b91c1c; border:2px solid #fecaca; }
.swal2-popup-odeme-new .borc-badge.borc-yok { background:#ecfdf5; color:#047857; border:2px solid #a7f3d0; }
.swal2-popup-odeme-new .borc-badge.borc-sifir { background:#f1f5f9; color:#64748b; border:2px solid #e2e8f0; }

/* Footer */
.odeme-new-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.odeme-new-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.odeme-new-submit:hover { background: #2E6A9D; }
.odeme-new-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.odeme-new-submit i { font-size: 12px; }

/* Select2 underline look and z-index */
.swal2-popup-odeme-new .select2-container { width: 100% !important; z-index: 99999 !important; }
.swal2-popup-odeme-new .select2-dropdown { z-index: 99999 !important; }
.swal2-popup-odeme-new .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    height: 28px !important;
}
.swal2-popup-odeme-new .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-odeme-new .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 20px !important;
    line-height: 26px !important;
    font-size: 12px !important;
    color: #1f2937 !important;
}
.swal2-popup-odeme-new .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px !important;
}

/* ==========================================================
   Figma: Genel Gider / Demirbaş (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-toplu-demirbas {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-toplu-demirbas .swal2-title,
.swal2-popup-toplu-demirbas .swal2-close {
    display: none !important;
}
.swal2-popup-toplu-demirbas .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-toplu-demirbas .swal2-actions {
    display: none !important;
}

.toplu-demirbas-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 600px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
}
.toplu-demirbas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.toplu-demirbas-header-left { display:flex; align-items:center; gap:8px; }
.toplu-demirbas-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.toplu-demirbas-icon i { color:#fff; font-size:10px; }
.toplu-demirbas-title { font-size: 12px; font-weight: 700; color:#3B7FB9; margin:0; }
.toplu-demirbas-close {
    width:24px;height:24px;border-radius:4px;border:none;background:transparent;
    cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s;
}
.toplu-demirbas-close:hover { background:#f3f4f6;color:#374151; }
.toplu-demirbas-close i { font-size:12px; }

.toplu-demirbas-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}
.toplu-demirbas-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}

.demirbas-new-highlight {
    background: #ecfdf5;
    border: 1px solid rgba(16,185,129,0.35);
    border-left: 4px solid #10b981;
    border-radius: 10px;
    padding: 10px 12px;
    margin-bottom: 10px;
}
.demirbas-new-highlight-label {
    display:flex;
    align-items:center;
    gap:8px;
    font-size: 11px;
    font-weight: 700;
    color: #047857;
    margin: 0 0 4px 0;
}
.demirbas-new-highlight-label i { color:#059669; font-size: 12px; }
.demirbas-new-highlight-input {
    width:100%;
    padding: 8px 10px;
    border: 2px solid rgba(16,185,129,0.55);
    border-radius: 10px;
    font-size: 12px;
    font-weight: 700;
    color: #064e3b;
    outline: none;
    background: #fff;
}
.demirbas-new-highlight-input:focus { border-color:#10b981; box-shadow: 0 0 0 3px rgba(16,185,129,0.12); }
.demirbas-new-highlight-help {
    margin-top: 4px;
    font-size: 10px;
    color: #0f766e;
    font-style: italic;
}
.demirbas-new-highlight-label .tg-tek-required {
    color: #ef4444;
}

.toplu-demirbas-footer {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.toplu-demirbas-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.toplu-demirbas-submit:hover { background: #2E6A9D; }
.toplu-demirbas-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.toplu-demirbas-submit i { font-size: 12px; }

/* ==========================================================
   Figma: Toplu Su / Elektrik (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-toplu-fatura {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-toplu-fatura .swal2-title,
.swal2-popup-toplu-fatura .swal2-close { display: none !important; }
.swal2-popup-toplu-fatura .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-toplu-fatura .swal2-actions { display: none !important; }

.toplu-fatura-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 560px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
}
.toplu-fatura-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.toplu-fatura-header-left { display: flex; align-items: center; gap: 8px; }
.toplu-fatura-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.toplu-fatura-icon i { color: #fff; font-size: 10px; }
.toplu-fatura-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.toplu-fatura-close {
    width: 24px; height: 24px; border-radius: 4px; border: none; background: transparent;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    color: #6b7280; transition: all 0.2s;
}
.toplu-fatura-close:hover { background: #f3f4f6; color: #374151; }
.toplu-fatura-close i { font-size: 12px; }

.toplu-fatura-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}

.toplu-fatura-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}

.swal2-popup-toplu-fatura .toplu-fatura-form .tg-tek-label .tg-tek-required {
    color: #ef4444 !important;
}
.swal2-popup-toplu-fatura .toplu-fatura-form .tg-tek-label .tg-tek-optional {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

.toplu-fatura-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.toplu-fatura-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.toplu-fatura-submit:hover { background: #2E6A9D; }
.toplu-fatura-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.toplu-fatura-submit i { font-size: 12px; }

/* ==========================================================
   Figma: Toplu Isınma (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-toplu-isinma {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-toplu-isinma .swal2-title,
.swal2-popup-toplu-isinma .swal2-close { display: none !important; }
.swal2-popup-toplu-isinma .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-toplu-isinma .swal2-actions { display: none !important; }

.toplu-isinma-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 560px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
}
.toplu-isinma-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.toplu-isinma-header-left { display: flex; align-items: center; gap: 8px; }
.toplu-isinma-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.toplu-isinma-icon i { color: #fff; font-size: 10px; }
.toplu-isinma-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.toplu-isinma-close {
    width: 24px; height: 24px; border-radius: 4px; border: none; background: transparent;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    color: #6b7280; transition: all 0.2s;
}
.toplu-isinma-close:hover { background: #f3f4f6; color: #374151; }
.toplu-isinma-close i { font-size: 12px; }

.toplu-isinma-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}

.toplu-isinma-form {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}

.swal2-popup-toplu-isinma .toplu-isinma-form .tg-tek-label .tg-tek-required {
    color: #ef4444 !important;
}
.swal2-popup-toplu-isinma .toplu-isinma-form .tg-tek-label .tg-tek-optional {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

.toplu-isinma-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.toplu-isinma-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.toplu-isinma-submit:hover { background: #2E6A9D; }
.toplu-isinma-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.toplu-isinma-submit i { font-size: 12px; }

/* Isınma / Su-Elektrik / Genel Gider: tg-tek (Toplu Aidat ile aynı BY4 alan düzeni) */
.toplu-isinma-card .tg-tek-row2,
.toplu-fatura-card .tg-tek-row2,
.toplu-demirbas-card .tg-tek-row2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin-bottom: 6px;
    align-items: stretch;
}
.toplu-isinma-card .tg-tek-row2 > .tg-tek-field,
.toplu-fatura-card .tg-tek-row2 > .tg-tek-field,
.toplu-demirbas-card .tg-tek-row2 > .tg-tek-field {
    min-height: 0;
    margin-bottom: 0;
}
.toplu-isinma-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
.toplu-fatura-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
.toplu-demirbas-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
.toplu-isinma-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
.toplu-fatura-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
.toplu-demirbas-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
.toplu-isinma-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount,
.toplu-fatura-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount,
.toplu-demirbas-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount {
    margin-top: auto;
}
.toplu-isinma-card .tg-tek-field,
.toplu-fatura-card .tg-tek-field,
.toplu-demirbas-card .tg-tek-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 6px;
}
.toplu-isinma-card .tg-tek-field:last-child,
.toplu-fatura-card .tg-tek-field:last-child,
.toplu-demirbas-card .tg-tek-field:last-child {
    margin-bottom: 0;
}
.toplu-isinma-card .tg-tek-label,
.toplu-fatura-card .tg-tek-label,
.toplu-demirbas-card .tg-tek-label {
    font-size: 10px;
    font-weight: 500;
    color: #4b5563;
}
.toplu-isinma-card .tg-tek-optional,
.toplu-fatura-card .tg-tek-optional,
.toplu-demirbas-card .tg-tek-optional {
    color: #94a3b8;
    font-weight: 400;
}

.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="date"],
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="number"],
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="text"],
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="date"],
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="number"],
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="text"],
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="date"],
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="number"],
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="text"] {
    -webkit-appearance: none;
    appearance: none;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    min-height: 30px !important;
    height: auto !important;
    max-height: none !important;
    line-height: 1.25 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #1f2937 !important;
    box-sizing: border-box !important;
    width: 100%;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="number"]::-webkit-inner-spin-button,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="number"]::-webkit-inner-spin-button,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="date"]::-webkit-calendar-picker-indicator,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="date"]::-webkit-calendar-picker-indicator,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
    padding: 0 0 0 4px;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="date"]:focus,
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="number"]:focus,
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input[type="text"]:focus,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="date"]:focus,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="number"]:focus,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input[type="text"]:focus,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="date"]:focus,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="number"]:focus,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input[type="text"]:focus {
    border-bottom-color: #3b7fb9 !important;
    outline: none !important;
    box-shadow: none !important;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-select,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-select,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-select {
    width: 100%;
    padding: 6px 20px 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #1f2937 !important;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L2 4h8z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right center;
    box-sizing: border-box !important;
    box-shadow: none !important;
    min-height: 30px !important;
    height: auto !important;
    max-height: none !important;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-select:focus,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-select:focus,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-select:focus {
    border-bottom-color: #3b7fb9 !important;
    box-shadow: none !important;
    outline: none !important;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input.tg-tek-disabled,
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-input:disabled,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input.tg-tek-disabled,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-input:disabled,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input.tg-tek-disabled,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-input:disabled {
    color: #9ca3af !important;
    border-bottom-color: #e5e7eb !important;
    background: transparent !important;
    cursor: not-allowed;
}
.swal2-popup-toplu-isinma .toplu-isinma-card .tg-tek-helper,
.swal2-popup-toplu-fatura .toplu-fatura-card .tg-tek-helper,
.swal2-popup-toplu-demirbas .toplu-demirbas-card .tg-tek-helper {
    font-size: 9px;
    color: #6b7280;
    margin-top: 2px;
}
.swal2-popup-toplu-demirbas .toplu-demirbas-form .tg-tek-label .tg-tek-required {
    color: #ef4444 !important;
}
.swal2-popup-toplu-demirbas .toplu-demirbas-form .tg-tek-label .tg-tek-optional {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

/* Toplu borçlandırma: BY4 sonuç / uyarı — Özet onay / diğer BY4 kartları ile aynı ölçü */
.swal2-popup-toplu-by4-result {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    width: min(460px, calc(100vw - 24px)) !important;
    min-width: min(360px, calc(100vw - 24px)) !important;
    max-width: min(460px, calc(100vw - 24px)) !important;
    /* Kart + alt şerit tek gölge (içerik kısa olsa da genişlik korunur) */
    filter: drop-shadow(0 25px 50px rgba(0, 0, 0, 0.2));
}
.swal2-popup-toplu-by4-result .swal2-title {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
}
.swal2-popup-toplu-by4-result .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
    max-height: none !important;
}
.swal2-popup-toplu-by4-result .swal2-actions { display: none !important; }
.toplu-by4-result-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: none;
    border: 1px solid #e5e7eb;
    overflow: hidden;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
    width: 100%;
    min-height: 0;
}
.toplu-by4-result-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 18px;
    border-bottom: 1px solid #e5e7eb;
    background: #fff;
}
.toplu-by4-result-header-left {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}
.toplu-by4-result-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.toplu-by4-result-icon i {
    color: #fff;
    font-size: 12px;
}
.toplu-by4-result-title {
    font-size: 13px;
    font-weight: 700;
    color: #3b7fb9;
    margin: 0;
    line-height: 1.35;
}
.toplu-by4-result-close {
    width: 28px;
    height: 28px;
    border: 0;
    background: transparent;
    color: #64748b;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background .15s ease, color .15s ease;
}
.toplu-by4-result-close:hover {
    background: #f1f5f9;
    color: #1f2937;
}
.toplu-by4-result-body {
    padding: 14px 18px 18px;
    background: #fff;
}
.toplu-by4-result-text {
    margin: 0;
    font-size: 13px;
    line-height: 1.55;
    color: #374151;
    word-wrap: break-word;
}
.toplu-by4-result-footer {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 12px 18px;
    background: #f9fafb;
    border-top: 1px solid #e5e7eb;
}
.swal2-popup-toplu-by4-result .toplu-by4-result-confirm,
.swal2-popup-toplu-by4-result button.toplu-by4-result-confirm {
    min-width: 112px !important;
    height: 36px !important;
    padding: 0 18px !important;
    background: #3b7fb9 !important;
    border: none !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    box-shadow: 0 1px 2px rgba(59, 127, 185, 0.15) !important;
    margin: 0 !important;
}
.swal2-popup-toplu-by4-result .toplu-by4-result-confirm:hover,
.swal2-popup-toplu-by4-result button.toplu-by4-result-confirm:hover {
    background: #2e6a9d !important;
}

/* ==========================================================
   Toplu Borçlandırma: Tek Form (Yeni) - SweetAlert modal (BY4)
   Çift sınıf: global .swal2-popup / .swal2-html-container (!important) ezilmesin
   ========================================================== */
.swal2-popup.swal2-popup-toplu-tek {
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif) !important;
}
.swal2-popup.swal2-popup-toplu-tek .swal2-title,
.swal2-popup.swal2-popup-toplu-tek .swal2-close { display: none !important; }
.swal2-popup.swal2-popup-toplu-tek .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    text-align: left !important;
    width: 100% !important;
    max-height: none !important;
}
.swal2-popup.swal2-popup-toplu-tek .swal2-actions { display: none !important; }

/* Tek form kartı: tg-tek = Toplu Aidat BY4 ile aynı (date/number tarayıcı kutusu kalksın) */
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin-bottom: 6px;
    align-items: stretch;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field {
    min-height: 0;
    margin-bottom: 0;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount {
    margin-top: auto;
}

/* Aidat: daire başı — açıklama ile aynı satırda (2 sütun); yardım metni */
.swal2-popup.swal2-popup-toplu-tek .tg-tutar-field > .tg-tek-input[type="text"] {
    font-size: 13px !important;
    font-weight: 600 !important;
}
.swal2-popup.swal2-popup-toplu-tek #tg_daire_basi_helper {
    color: #64748b;
    font-size: 11px;
    margin-top: 2px;
}

/* İki sütunlu satır: ortak etiket / kontrol sırası (Yeni Borçlandırma ile aynı görsel hiza) */
@supports (grid-template-rows: subgrid) {
    .toplu-aidat-card .tg-tek-row2,
    .toplu-isinma-card .tg-tek-row2,
    .toplu-fatura-card .tg-tek-row2,
    .toplu-demirbas-card .tg-tek-row2,
    .swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 {
        grid-template-rows: auto auto;
        gap: 4px 8px;
    }
    .toplu-aidat-card .tg-tek-row2 > .tg-tek-field,
    .toplu-isinma-card .tg-tek-row2 > .tg-tek-field,
    .toplu-fatura-card .tg-tek-row2 > .tg-tek-field,
    .toplu-demirbas-card .tg-tek-row2 > .tg-tek-field {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 2;
        gap: 0;
    }
    .swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 2;
        gap: 0;
    }
    .toplu-aidat-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
    .toplu-aidat-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
    .toplu-aidat-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount,
    .toplu-isinma-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
    .toplu-fatura-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
    .toplu-demirbas-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
    .toplu-isinma-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
    .toplu-fatura-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
    .toplu-demirbas-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
    .toplu-isinma-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount,
    .toplu-fatura-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount,
    .toplu-demirbas-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount,
    .swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field > .tg-tek-select,
    .swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field:not(:has(.tg-tek-helper)) > .tg-tek-input,
    .swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-row2 > .tg-tek-field > .tg-tek-amount {
        margin-top: 0;
    }
}

.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 6px;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-field:last-child { margin-bottom: 0; }
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-label {
    font-size: 10px;
    font-weight: 500;
    color: #4b5563;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-label .tg-tek-required { color: #ef4444; }
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-label .tg-tek-optional {
    color: #94a3b8;
    font-weight: 400;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="date"],
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="number"],
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="text"] {
    -webkit-appearance: none;
    appearance: none;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 6px 0 !important;
    min-height: 30px !important;
    height: auto !important;
    max-height: none !important;
    line-height: 1.25 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #1f2937 !important;
    box-sizing: border-box !important;
    width: 100%;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="number"]::-webkit-outer-spin-button,
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
    padding: 0 0 0 4px;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="date"]:focus,
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="number"]:focus,
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input[type="text"]:focus {
    border-bottom-color: #3b7fb9 !important;
    outline: none !important;
    box-shadow: none !important;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-select {
    width: 100%;
    padding: 6px 20px 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #1f2937 !important;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L2 4h8z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right center;
    box-sizing: border-box !important;
    box-shadow: none !important;
    min-height: 30px !important;
    height: auto !important;
    max-height: none !important;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-select:focus {
    border-bottom-color: #3b7fb9 !important;
    box-shadow: none !important;
    outline: none !important;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input.tg-tek-disabled,
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-input:disabled {
    color: #9ca3af !important;
    border-bottom-color: #e5e7eb !important;
    background: transparent !important;
    cursor: not-allowed;
}

.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-check + .tg-tek-input[type="date"] {
    max-width: 260px;
    width: 100%;
    align-self: flex-start;
}
.swal2-popup.swal2-popup-toplu-tek .tg-tek-card .tg-tek-helper {
    font-size: 9px;
    color: #6b7280;
    margin-top: 2px;
}

.tg-tek-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 600px;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    max-height: 90vh;
}

.tg-tek-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.tg-tek-header-left { display: flex; align-items: center; gap: 8px; }
.tg-tek-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.tg-tek-icon i { color: #fff; font-size: 10px; }
.tg-tek-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.tg-tek-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.tg-tek-close:hover { background: #f3f4f6; color: #374151; }
.tg-tek-close i { font-size: 12px; }

.tg-tek-alert {
    margin: 10px 10px 0;
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    color: #991b1b;
    font-size: 12px;
}

.tg-tek-alert.success {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #166534;
}

.tg-tek-kategori {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid #e5e7eb;
    background: #fff;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.tg-tek-kategori-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    border: none;
    background: #f3f4f6;
    color: #6b7280;
}
.tg-tek-kategori-btn:hover { background: #e5e7eb; }
.tg-tek-kategori-btn.active {
    background: #3B7FB9;
    color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.tg-tek-kategori-btn i { font-size: 10px; }
.tg-tek-kategori-btn.small {
    padding: 4px 10px;
    font-size: 11px;
    background: #fff;
    border: 1px solid #e5e7eb;
}
.tg-tek-kategori-btn.small:hover { background: #f9fafb; }
.tg-tek-kategori-btn.small.active {
    background: #3B7FB9;
    color: #fff;
    border-color: #3B7FB9;
}
.tg-tek-kategori-btn.small i { font-size: 9px; }

.tg-tek-faturalar-group {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    background: #f9fafb;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
}
.tg-tek-faturalar-label {
    font-size: 10px;
    font-weight: 700;
    color: #6b7280;
    text-transform: uppercase;
}

.tg-tek-body {
    flex: 1;
    overflow-y: auto;
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.tg-tek-row2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.tg-tek-field { display: flex; flex-direction: column; gap: 4px; }
.tg-tek-label { font-size: 10px; font-weight: 500; color: #4b5563; }
.tg-tek-required { color: #ef4444; }

.tg-tek-input {
    width: 100%;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    font-size: 12px;
    color: #1f2937;
    transition: all 0.2s;
    outline: none;
}
.tg-tek-input::placeholder { color: #9ca3af; }
.tg-tek-input:focus { border-bottom-color: #3B7FB9; }
.tg-tek-input.tg-tek-disabled {
    border-bottom-color: #f3f4f6 !important;
    color: #d1d5db !important;
    cursor: not-allowed;
}

.tg-tek-select {
    width: 100%;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    font-size: 12px;
    color: #1f2937;
    cursor: pointer;
    transition: all 0.2s;
    outline: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L2 4h8z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 20px;
}
.tg-tek-select:focus { border-bottom-color: #3B7FB9; }

/* Malik/Kiracı/Sakin atama popup: Select2 = alt çizgi + her zaman arama (gelir/gider BY4 ile uyumlu) */
.tg-malik-card .select2-container { width: 100% !important; }
.tg-malik-card .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    height: 28px !important;
}
.tg-malik-card .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3B7FB9 !important;
}
.tg-malik-card .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 20px !important;
    line-height: 26px !important;
    font-size: 12px !important;
    color: #1f2937 !important;
}
.tg-malik-card .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px !important;
}
.tg-malik-card .select2-dropdown {
    z-index: 200010 !important;
    font-size: 12px;
}
body > .select2-dropdown {
    z-index: 2147483051 !important;
    font-size: 12px;
    box-sizing: border-box;
    max-width: min(560px, calc(100vw - 48px));
}
#by4ModalRoot .by4-modal-dialog.swal2-popup-toplu-tek {
    overflow-x: hidden;
}
#by4ModalRoot .tg-malik-card,
.swal2-popup.swal2-popup-toplu-tek .tg-malik-card {
    overflow: visible;
}
#by4ModalRoot .tg-malik-card .tg-tek-body,
.swal2-popup.swal2-popup-toplu-tek .tg-malik-card .tg-tek-body {
    overflow-x: hidden;
    overflow-y: auto;
    max-height: min(58vh, 480px);
    min-width: 0;
}
.tg-malik-new-search-field {
    position: relative;
    z-index: 30;
}
#by4ModalRoot .tg-malik-card .malik-management-container,
.swal2-popup.swal2-popup-toplu-tek .tg-malik-card .malik-management-container {
    min-width: 0;
    max-width: 100%;
}
.tg-malik-card .select2-search--dropdown .select2-search__field {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
}
.tg-malik-new-search-field .property-new-malik-search {
    width: 100%;
    max-width: 100%;
}
.tg-malik-search-results {
    margin-top: 6px;
    max-height: 220px;
    overflow-y: auto;
    overflow-x: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
    position: relative;
    z-index: 100120;
    pointer-events: auto;
}
#by4ModalRoot .tg-malik-new-search-field,
.swal2-popup-toplu-tek .tg-malik-new-search-field {
    z-index: 100110;
}
#by4ModalRoot .tg-tek-footer,
.swal2-popup-toplu-tek .tg-tek-footer {
    position: relative;
    z-index: 1;
}
.tg-malik-search-results .tg-malik-search-item {
    display: block;
    width: 100%;
    text-align: left;
    padding: 8px 10px;
    border: 0;
    border-bottom: 1px solid #f3f4f6;
    background: #fff;
    font-size: 12px;
    color: #1f2937;
    cursor: pointer;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
}
.tg-malik-search-results .tg-malik-search-item:hover {
    background: #f0f7ff;
}
.tg-malik-search-results--floater {
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.22);
}
.tg-malik-search-results .tg-malik-search-item:last-child {
    border-bottom: 0;
}
.tg-malik-search-results .tg-malik-search-msg {
    padding: 10px 12px;
    font-size: 12px;
    color: #6b7280;
    line-height: 1.45;
}
.tg-malik-search-results .tg-malik-search-msg.is-already-listed {
    color: #92400e;
    background: #fffbeb;
}

/* Malik atama BY4: tüm kart + listeler ortak tipografi (Swal BY4 ile aynı aile) */
.tg-malik-card {
    font-family: var(--by-font-main, "Inter", system-ui, -apple-system, sans-serif);
}
.tg-malik-listbox {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    padding: 8px;
    min-height: 44px;
    font-family: inherit;
    font-size: 12px;
    line-height: 1.45;
    color: #1f2937;
}
.tg-malik-listbox .tg-malik-list-empty,
.tg-malik-listbox .tg-malik-list-loading {
    color: #6b7280;
    font-size: 12px;
    font-weight: 400;
}
.tg-malik-listbox .malik-list {
    max-height: 200px;
    overflow-y: auto;
}
.tg-malik-listbox .malik-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 6px;
    margin: 0;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #f3f4f6;
    border-radius: 0;
}
.tg-malik-listbox .malik-row:last-child {
    border-bottom: 0;
}
.tg-malik-listbox .malik-row .malik-giris {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    letter-spacing: 0.02em;
}
.tg-malik-listbox .remove-malik-btn {
    appearance: none;
    -webkit-appearance: none;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 6px;
    margin: 0;
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
    color: #9ca3af;
    cursor: pointer;
    font-family: inherit;
}
.tg-malik-listbox .remove-malik-btn:hover {
    color: #ef4444;
}
.tg-malik-listbox .remove-malik-btn:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}
.tg-malik-listbox .remove-malik-btn:focus {
    outline: none;
}
.tg-malik-pane.d-none {
    display: none !important;
}
.tg-malik-pane {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.tg-malik-card .badge {
    font-size: 11px;
    font-family: inherit;
}

/* Kiracı / sakin satırları (liste kutusu içi) */
.tg-malik-row-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-family: inherit;
    font-size: 12px;
    color: #1f2937;
}
.tg-malik-row-item:last-child {
    margin-bottom: 0;
}
.tg-malik-row-item-main {
    min-width: 0;
    flex: 1;
}
.tg-malik-row-name {
    font-weight: 600;
    font-size: 12px;
    color: #1f2937;
}
.tg-malik-row-meta {
    font-size: 11px;
    color: #6b7280;
    margin-top: 2px;
}
.tg-malik-row-bakiye {
    font-size: 11px;
    color: #6b7280;
    margin-left: 6px;
    font-weight: 500;
}
.tg-malik-row-bakiye.text-danger {
    color: #b91c1c !important;
}
.tg-malik-row-bakiye.text-success {
    color: #15803d !important;
}
.tg-malik-row-bakiye.text-muted {
    color: #6b7280 !important;
}
.tg-malik-row-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}
.tg-malik-badge {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    font-family: inherit;
}
.tg-malik-badge--kiraci {
    background: #fef3c7;
    color: #92400e;
}
.tg-malik-badge--sakin {
    background: #e0f2fe;
    color: #0369a1;
}
.tg-malik-row-remove {
    appearance: none;
    border: 1px solid #fecaca;
    background: #fff;
    color: #b91c1c;
    border-radius: 4px;
    padding: 1px 8px;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
}
.tg-malik-row-remove:hover {
    background: #fef2f2;
}

/* Malik satırı: isim + hisse input */
.tg-malik-row-malik-grow {
    flex: 1;
    min-width: 0;
}
.tg-malik-row-malik-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}
.tg-malik-row-malik-names {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    flex: 1;
}
.tg-malik-row-malik-names .tg-malik-row-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.tg-malik-hisse-wrap {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}
.tg-malik-hisse-percent {
    font-size: 11px;
    color: #6b7280;
    font-weight: 500;
}
.tg-malik-card .malik-hisse-input {
    width: 65px;
    padding: 4px 6px;
    font-size: 12px;
    font-family: inherit;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    border-radius: 0;
    background: transparent;
    color: #1f2937;
}
.tg-malik-card .malik-hisse-input:focus {
    outline: none;
    border-bottom-color: #3b7fb9;
}

.tg-tek-amount { position: relative; }
.tg-tek-amount-input { padding-right: 20px; }
.tg-tek-currency {
    position: absolute;
    right: 0;
    bottom: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #9ca3af;
}

.tg-tek-helper { font-size: 9px; color: #6b7280; }

.tg-tek-check { display: flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; margin-bottom: 6px; }
.tg-tek-check input[type="checkbox"] {
    width: 14px;
    height: 14px;
    border-radius: 3px;
    border: 1px solid #d1d5db;
    accent-color: #3B7FB9;
    cursor: pointer;
}
.tg-tek-check span { font-size: 10px; font-weight: 500; color: #4b5563; }

.tg-tek-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 20px;
    border-top: 1px solid #e5e7eb;
    background: #fff;
    flex-shrink: 0;
}
.tg-tek-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.tg-tek-submit:hover { background: #2E6A9D; }
.tg-tek-submit i { font-size: 12px; }
.tg-tek-cancel {
    padding: 6px 16px;
    background: #fff;
    color: #4b5563;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.tg-tek-cancel:hover { background: #f9fafb; border-color: #9ca3af; color: #374151; }
.tg-tek-cancel i { font-size: 12px; }

/* ==========================================================
   Özet: Gelir Onayla / Gider Onayla (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-ozet-confirm {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-ozet-confirm .swal2-title,
.swal2-popup-ozet-confirm .swal2-close { display: none !important; }
.swal2-popup-ozet-confirm .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-ozet-confirm .swal2-actions { display: none !important; }

.ozet-confirm-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 460px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}
.ozet-confirm-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.ozet-confirm-header-left { display: flex; align-items: center; gap: 8px; }
.ozet-confirm-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.ozet-confirm-icon i { color: #fff; font-size: 10px; }
.ozet-confirm-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.ozet-confirm-close {
    width: 24px; height: 24px; border-radius: 4px; border: none; background: transparent;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    color: #6b7280; transition: all 0.2s;
}
.ozet-confirm-close:hover { background: #f3f4f6; color: #374151; }
.ozet-confirm-close i { font-size: 12px; }

.ozet-confirm-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}
.ozet-confirm-loading {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.ozet-confirm-body {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.ozet-confirm-lines {
    display: grid;
    gap: 6px;
}
.ozet-confirm-lines > div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 8px;
    border: 1px solid rgba(229,231,235,0.8);
    border-radius: 8px;
    background: #fff;
}
.ozet-confirm-lines .k {
    font-size: 10px;
    font-weight: 600;
    color: #64748b;
    white-space: nowrap;
}
.ozet-confirm-lines .v {
    font-size: 12px;
    color: #0f172a;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ozet-confirm-muted {
    margin-top: 8px;
    font-size: 11px;
    color: #6b7280;
}

/* BY4 başarı uyarısı: uzun mesajlar tek satırda kesilmesin */
.ozet-confirm-lines.by4-alert-mesaj-wrap > div {
    align-items: flex-start;
}
.ozet-confirm-lines.by4-alert-mesaj-wrap .v {
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
    word-break: break-word;
    max-width: 72%;
}

.ozet-confirm-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.ozet-confirm-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ozet-confirm-cancel {
    padding: 6px 16px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    color: #475569;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ozet-confirm-cancel:hover { background: #e2e8f0; }
.ozet-confirm-cancel:disabled { opacity: 0.65; cursor: not-allowed; }
.ozet-confirm-cancel i { font-size: 12px; }
.ozet-confirm-submit:hover { background: #2E6A9D; }
.ozet-confirm-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.ozet-confirm-submit i { font-size: 12px; }

.ozet-confirm-icon.ozet-confirm-icon--danger {
    background: #dc2626;
    box-shadow: 0 1px 2px rgba(220, 38, 38, 0.2);
}
.ozet-confirm-title.ozet-confirm-title--danger {
    color: #b91c1c;
}
.ozet-confirm-submit.ozet-confirm-submit--danger {
    background: #dc2626;
    box-shadow: 0 1px 2px rgba(220, 38, 38, 0.2);
}
.ozet-confirm-submit.ozet-confirm-submit--danger:hover {
    background: #b91c1c;
}

/* ==========================================================
   Özet: Düzelt → Manuel Gider Ekle (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-ozet-manuel-gider {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-ozet-manuel-gider .swal2-title,
.swal2-popup-ozet-manuel-gider .swal2-close { display: none !important; }
.swal2-popup-ozet-manuel-gider .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-ozet-manuel-gider .swal2-actions { display: none !important; }

.ozet-gider-manuel-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 560px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}
.ozet-gider-manuel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.ozet-gider-manuel-header-left { display: flex; align-items: center; gap: 8px; }
.ozet-gider-manuel-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.ozet-gider-manuel-icon i { color: #fff; font-size: 10px; }
.ozet-gider-manuel-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.ozet-gider-manuel-close {
    width: 24px; height: 24px; border-radius: 4px; border: none; background: transparent;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    color: #6b7280; transition: all 0.2s;
}
.ozet-gider-manuel-close:hover { background: #f3f4f6; color: #374151; }
.ozet-gider-manuel-close i { font-size: 12px; }

.ozet-gider-manuel-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}

.ozet-gider-manuel-body {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.ozet-gider-manuel-highlight {
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid rgba(239, 68, 68, 0.28);
    background: rgba(239, 68, 68, 0.06);
    margin-bottom: 10px;
}
.ozet-gider-manuel-highlight-title {
    font-size: 11px;
    font-weight: 700;
    color: #b91c1c;
    margin-bottom: 2px;
}
.ozet-gider-manuel-highlight-sub {
    font-size: 11px;
    color: #7f1d1d;
}

/* Inputs/selects underline style inside this modal */
.swal2-popup-ozet-manuel-gider .swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 2px !important;
    display: block !important;
}
.swal2-popup-ozet-manuel-gider .form-control,
.swal2-popup-ozet-manuel-gider select.form-control {
    width: 100% !important;
    padding: 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    color: #1f2937 !important;
    outline: none !important;
    box-shadow: none !important;
    height: auto !important;
}
.swal2-popup-ozet-manuel-gider .form-control:focus,
.swal2-popup-ozet-manuel-gider select.form-control:focus {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-ozet-manuel-gider .select2-container {
    width: 100% !important;
    z-index: 100000 !important;
}
.swal2-popup-ozet-manuel-gider .select2-container--default .select2-selection--single {
    min-height: 31px !important;
    height: 31px !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.swal2-popup-ozet-manuel-gider .select2-container--default.select2-container--open .select2-selection--single {
    border-bottom-color: #3B7FB9 !important;
}
.swal2-popup-ozet-manuel-gider .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
    padding-right: 22px !important;
    line-height: 29px !important;
    color: #1f2937 !important;
    font-size: 12px !important;
    text-align: left !important;
}
.swal2-popup-ozet-manuel-gider .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 29px !important;
    right: 0 !important;
}

.swal2-popup-ozet-manuel-gider .swal-form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.swal2-popup-ozet-manuel-gider .mb-15 { margin-bottom: 10px !important; }

/* İşlem tipi + Firma/Kişi satırı: üstten hizalı (align-items-end altta topladığı için sağ blok yukarı kayıyordu) */
.swal2-popup-ozet-manuel-gider .ozet-gider-islem-tip-row {
    align-items: flex-start !important;
}
.swal2-popup-ozet-manuel-gider .ozet-gider-islem-tip-row > [class*="col-"] {
    min-width: 0;
}
/* Fallback Manuel Gider (ozet.js, customClass yok) */
.swal2-popup #islem_tipi_wrapper.ozet-gider-islem-tip-row {
    align-items: flex-start !important;
}
.swal2-popup #islem_tipi_wrapper.ozet-gider-islem-tip-row > [class*="col-"] {
    min-width: 0;
}

/* İşlem tipi butonları — dolgu yok: hover/active/seçili hep outline */
.swal2-popup-ozet-manuel-gider .btn-alici {
    border-radius: 8px !important;
    font-size: 11px !important;
    padding: 6px 10px !important;
    line-height: 1.1 !important;
    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-hover-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: transparent !important;
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-active-border-color: var(--bs-btn-border-color);
    --bs-btn-active-shadow: none;
}
.swal2-popup-ozet-manuel-gider .btn-alici.btn:active {
    background-color: transparent !important;
    background-image: none !important;
}
.swal2-popup-ozet-manuel-gider .btn-alici:not(.active) {
    --bs-btn-active-bg: transparent;
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-active-border-color: var(--bs-btn-border-color);
}
.swal2-popup-ozet-manuel-gider .btn-alici.active,
.swal2-popup-ozet-manuel-gider .btn-alici.active:hover,
.swal2-popup-ozet-manuel-gider .btn-alici.active:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border-width: 2px !important;
    font-weight: 600 !important;
    --bs-btn-hover-bg: transparent !important;
    --bs-btn-active-bg: transparent !important;
}
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="firma"].active,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="firma"].active:hover,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="firma"].active:focus-visible {
    color: #3B7FB9 !important;
    border-color: #3B7FB9 !important;
    --bs-btn-hover-color: #3B7FB9 !important;
    --bs-btn-hover-border-color: #3B7FB9 !important;
}
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="kisi"].active,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="kisi"].active:hover,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="kisi"].active:focus-visible {
    color: #059669 !important;
    border-color: #10b981 !important;
    --bs-btn-hover-color: #059669 !important;
    --bs-btn-hover-border-color: #10b981 !important;
}
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="personel"].active,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="personel"].active:hover,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="personel"].active:focus-visible {
    color: #0284c7 !important;
    border-color: #0ea5e9 !important;
    --bs-btn-hover-color: #0284c7 !important;
    --bs-btn-hover-border-color: #0ea5e9 !important;
}
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="virman"].active,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="virman"].active:hover,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="virman"].active:focus-visible {
    color: #b45309 !important;
    border-color: #f59e0b !important;
    --bs-btn-hover-color: #b45309 !important;
    --bs-btn-hover-border-color: #f59e0b !important;
}
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="devlet_banka"].active,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="devlet_banka"].active:hover,
.swal2-popup-ozet-manuel-gider .btn-alici[data-alici="devlet_banka"].active:focus-visible {
    color: #7c3aed !important;
    border-color: #8b5cf6 !important;
    --bs-btn-hover-color: #7c3aed !important;
    --bs-btn-hover-border-color: #8b5cf6 !important;
}

.ozet-gider-manuel-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.ozet-gider-manuel-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ozet-gider-manuel-submit:hover { background: #2E6A9D; }
.ozet-gider-manuel-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.ozet-gider-manuel-submit i { font-size: 12px; }

/* ==========================================================
   Özet: Düzelt → Manuel Gelir Ekle (BY4) - SweetAlert modal
   ========================================================== */

.swal2-popup-ozet-manuel-gelir {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-ozet-manuel-gelir .swal2-title,
.swal2-popup-ozet-manuel-gelir .swal2-close { display: none !important; }
.swal2-popup-ozet-manuel-gelir .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-ozet-manuel-gelir .swal2-actions { display: none !important; }

.ozet-gelir-manuel-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 560px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    max-height: 95vh;
}
.ozet-gelir-manuel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.ozet-gelir-manuel-header-left { display: flex; align-items: center; gap: 8px; }
.ozet-gelir-manuel-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.ozet-gelir-manuel-icon i { color: #fff; font-size: 10px; }
.ozet-gelir-manuel-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.ozet-gelir-manuel-close {
    width: 24px; height: 24px; border-radius: 4px; border: none; background: transparent;
    cursor: pointer; display: flex; align-items: center; justify-content: center;
    color: #6b7280; transition: all 0.2s;
}
.ozet-gelir-manuel-close:hover { background: #f3f4f6; color: #374151; }
.ozet-gelir-manuel-close i { font-size: 12px; }

.ozet-gelir-manuel-alert {
    margin: 10px 10px 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fdecec;
    border: 1px solid #f5c2c7;
    color: #842029;
    font-size: 12px;
}

.ozet-gelir-manuel-body {
    padding: 10px;
    overflow-y: auto;
    flex: 1;
}
.ozet-gelir-manuel-highlight {
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid rgba(16, 185, 129, 0.28);
    background: rgba(16, 185, 129, 0.08);
    margin-bottom: 10px;
}
.ozet-gelir-manuel-highlight-title {
    font-size: 11px;
    font-weight: 700;
    color: #047857;
    margin-bottom: 2px;
}
.ozet-gelir-manuel-highlight-sub {
    font-size: 11px;
    color: #065f46;
}

/* Inputs/selects underline style inside this modal */
.swal2-popup-ozet-manuel-gelir .swal-form-label {
    font-size: 10px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin-bottom: 2px !important;
    display: block !important;
}
.swal2-popup-ozet-manuel-gelir .form-control,
.swal2-popup-ozet-manuel-gelir select.form-control {
    width: 100% !important;
    padding: 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid #e5e7eb !important;
    border-radius: 0 !important;
    font-size: 12px !important;
    color: #1f2937 !important;
    outline: none !important;
    box-shadow: none !important;
    height: auto !important;
}
.swal2-popup-ozet-manuel-gelir .form-control:focus,
.swal2-popup-ozet-manuel-gelir select.form-control:focus {
    border-bottom-color: #3B7FB9 !important;
}

.swal2-popup-ozet-manuel-gelir .swal-form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.swal2-popup-ozet-manuel-gelir .mb-15 { margin-bottom: 10px !important; }

/* İşlem tipi butonları — dolgu yok */
.swal2-popup-ozet-manuel-gelir .btn-alici {
    border-radius: 8px !important;
    font-size: 11px !important;
    padding: 6px 10px !important;
    line-height: 1.1 !important;
    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-hover-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: transparent !important;
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-active-border-color: var(--bs-btn-border-color);
    --bs-btn-active-shadow: none;
}
.swal2-popup-ozet-manuel-gelir .btn-alici.btn:active {
    background-color: transparent !important;
    background-image: none !important;
}
.swal2-popup-ozet-manuel-gelir .btn-alici:not(.active) {
    --bs-btn-active-bg: transparent;
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-active-border-color: var(--bs-btn-border-color);
}
.swal2-popup-ozet-manuel-gelir .btn-alici.active,
.swal2-popup-ozet-manuel-gelir .btn-alici.active:hover,
.swal2-popup-ozet-manuel-gelir .btn-alici.active:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border-width: 2px !important;
    font-weight: 600 !important;
    --bs-btn-hover-bg: transparent !important;
    --bs-btn-active-bg: transparent !important;
}
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="aidat"].active,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="aidat"].active:hover,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="aidat"].active:focus-visible,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="kisi"].active,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="kisi"].active:hover,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="kisi"].active:focus-visible {
    color: #059669 !important;
    border-color: #10b981 !important;
    --bs-btn-hover-color: #059669 !important;
    --bs-btn-hover-border-color: #10b981 !important;
}
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="personel"].active,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="personel"].active:hover,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="personel"].active:focus-visible {
    color: #0284c7 !important;
    border-color: #0ea5e9 !important;
    --bs-btn-hover-color: #0284c7 !important;
    --bs-btn-hover-border-color: #0ea5e9 !important;
}
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="virman"].active,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="virman"].active:hover,
.swal2-popup-ozet-manuel-gelir .btn-alici[data-alici="virman"].active:focus-visible {
    color: #b45309 !important;
    border-color: #f59e0b !important;
    --bs-btn-hover-color: #b45309 !important;
    --bs-btn-hover-border-color: #f59e0b !important;
}

.ozet-gelir-manuel-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.ozet-gelir-manuel-submit {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ozet-gelir-manuel-submit:hover { background: #2E6A9D; }
.ozet-gelir-manuel-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.ozet-gelir-manuel-submit i { font-size: 12px; }

/* ==========================================================
   Sayaç Okuma (Kullanıma Göre) - SweetAlert modal (BY4)
   Tek Form > Isınma/Su/Elektrik > Dağıtım Şekli: Kullanıma Göre
   ========================================================== */
.swal2-popup-sayac-by4 {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}
.swal2-popup-sayac-by4 .swal2-title,
.swal2-popup-sayac-by4 .swal2-close {
    display: none !important;
}
.swal2-popup-sayac-by4 .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    width: 100% !important;
}
.swal2-popup-sayac-by4 .swal2-actions {
    display: none !important; /* footer butonları kart içinde */
}
.swal2-popup-sayac-by4 .swal2-validation-message {
    display: none !important;
}

.sayac-by4-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 1180px;
    border: 1px solid #e5e7eb;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    height: 86vh;
    max-height: 86vh;
}

.sayac-by4-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
    padding: 8px 16px;
    flex-shrink: 0;
}
.sayac-by4-header-left { display: flex; align-items: center; gap: 8px; }
.sayac-by4-icon {
    width: 24px;
    height: 24px;
    border-radius: 8px;
    background: #3B7FB9;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.sayac-by4-icon i { color: #fff; font-size: 10px; }
.sayac-by4-title { font-size: 12px; font-weight: 700; color: #3B7FB9; margin: 0; }
.sayac-by4-close {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.2s;
}
.sayac-by4-close:hover { background: #f3f4f6; color: #374151; }
.sayac-by4-close i { font-size: 12px; }

.sayac-by4-alert {
    margin: 10px 10px 0;
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    color: #991b1b;
    font-size: 12px;
}

.sayac-by4-body {
    flex: 1;
    overflow: hidden;
    padding: 10px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 10px;
    min-height: 0;
}
.sayac-by4-main {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 0;
}

.sayac-by4-field { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.sayac-by4-label { font-size: 10px; font-weight: 500; color: #4b5563; }
.sayac-by4-req { color: #ef4444; }

.sayac-by4-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sayac-by4-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }

.sayac-by4-input,
.sayac-by4-select {
    width: 100%;
    padding: 6px 0;
    background: transparent;
    border: none;
    border-bottom: 2px solid #e5e7eb;
    font-size: 12px;
    color: #1f2937;
    transition: all 0.2s;
    outline: none;
}
.sayac-by4-input:focus,
.sayac-by4-select:focus { border-bottom-color: #3B7FB9; }
.sayac-by4-select {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L2 4h8z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 20px;
}

.sayac-by4-fatura { display: flex; flex-direction: column; gap: 4px; }
.sayac-by4-fatura-box {
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
    background: #f9fafb;
    font-size: 12px;
    color: #111827;
    font-weight: 600;
}

.sayac-by4-table-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 4px;
}
.sayac-by4-table-title { font-weight: 700; font-size: 12px; color: #374151; }
.sayac-by4-fetch {
    padding: 6px 10px;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #374151;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.2s;
}
.sayac-by4-fetch:hover { background: #f9fafb; }

.sayac-by4-workspace {
    display: flex;
    flex-direction: column;
    min-height: 0;
    flex: 1;
}
.sayac-by4-table-panel,
.sayac-by4-history-panel {
    min-height: 0;
}
.sayac-by4-table-panel {
    display: flex;
    flex-direction: column;
}
.sayac-by4-table-wrap {
    overflow: auto;
    flex: 1;
    max-height: none;
    min-height: 0;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}
.sayac-by4-table-wrap table {
    width: 100%;
    margin-top: 0 !important;
}
.sayac-by4-table-wrap thead th {
    position: sticky;
    top: 0;
    z-index: 2;
}
.sayac-by4-history-panel {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.sayac-by4-history-title {
    padding: 10px 12px;
    border-bottom: 1px solid #e5e7eb;
    font-weight: 700;
    font-size: 13px;
    color: #374151;
    flex-shrink: 0;
}
.sayac-by4-history-list {
    flex: 1;
    overflow: auto;
    max-height: none;
    min-height: 0;
    padding: 8px;
}
.sayac-by4-history-empty {
    font-size: 12px;
    color: #6b7280;
    padding: 8px;
}

.sayac-by4-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.sayac-by4-cancel {
    padding: 6px 14px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: #374151;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.sayac-by4-cancel:hover { background: #f3f4f6; }
.sayac-by4-save {
    padding: 6px 16px;
    background: #3B7FB9;
    border: none;
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 1px 2px rgba(59,127,185,0.15);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.sayac-by4-save:hover { background: #2E6A9D; }

@media (max-width: 920px) {
    .sayac-by4-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sayac-by4-body { grid-template-columns: 1fr; overflow-y: auto; }
    .sayac-by4-table-wrap,
    .sayac-by4-history-list { max-height: 260px; }
}

/* ========== SIDEBAR (BİNA DROPDOWN) BY4 MODALS ========== */
.swal2-popup-sidebar-by4 {
    padding: 0 !important;
    border-radius: 16px !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    margin: 0 !important;
    width: auto !important;
    max-width: calc(100vw - 32px) !important;
    font-family: var(--by-font-main, "Inter", system-ui, sans-serif) !important;
    --sb-by4-primary: #6366f1;
    --sb-by4-primary-700: #4f46e5;
    --sb-by4-ink: #0f172a;
    --sb-by4-muted: #64748b;
    --sb-by4-border: rgba(15, 23, 42, 0.10);
    --sb-by4-soft: #f8fafc;
    --sb-by4-shadow: 0 8px 24px rgba(0, 0, 0, 0.10), 0 2px 8px rgba(0, 0, 0, 0.05);
}
.swal2-popup-sidebar-by4 .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.sb-by4-card {
    background: #fff;
    border-radius: 16px;
    border: 1px solid var(--sb-by4-border);
    box-shadow: var(--sb-by4-shadow);
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.sb-by4-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    padding: 12px 14px;
    flex-shrink: 0;
}
.sb-by4-header-left { display: flex; align-items: center; gap: 8px; min-width: 0; }
.sb-by4-icon {
    width: 28px;
    height: 28px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--sb-by4-primary) 0%, var(--sb-by4-primary-700) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 18px rgba(79, 70, 229, 0.22);
    flex-shrink: 0;
}
.sb-by4-icon i { color: #fff; font-size: 11px; }
.sb-by4-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--sb-by4-ink);
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sb-by4-close {
    width: 28px;
    height: 28px;
    border-radius: 10px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--sb-by4-muted);
    transition: all 0.2s;
}
.sb-by4-close:hover { background: var(--sb-by4-soft); color: #334155; }
.sb-by4-close i { font-size: 12px; }

.sb-by4-alert {
    margin: 10px 12px 0;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid #fecaca;
    background: #fef2f2;
    color: #991b1b;
    font-size: 12px;
}

.sb-by4-body {
    flex: 1;
    overflow-y: auto;
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.sb-by4-field { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.sb-by4-label { font-size: 11px; font-weight: 600; color: #475569; }
.sb-by4-req { color: #ef4444; }
.sb-by4-help { font-size: 12px; }

.sb-by4-input,
.sb-by4-textarea {
    width: 100%;
    padding: 9px 10px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 12px;
    font-size: 13px;
    color: var(--sb-by4-ink);
    transition: all 0.2s;
    outline: none;
}
.sb-by4-textarea { resize: vertical; min-height: 50px; }
.sb-by4-input:focus,
.sb-by4-textarea:focus {
    border-color: rgba(99, 102, 241, 0.85);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.18);
}

.sb-by4-row { display: flex; align-items: flex-end; gap: 10px; }
.sb-by4-row > .sb-by4-field { flex: 1; min-width: 0; }
.sb-by4-input-row { flex: 1; min-width: 0; }

.sb-by4-outline {
    padding: 7px 12px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 12px;
    color: #334155;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
    transition: all 0.2s;
}
.sb-by4-outline:hover { background: var(--sb-by4-soft); }

.sb-by4-link {
    margin-top: 2px;
    padding: 8px 10px;
    border-radius: 12px;
    border: 1px solid rgba(15, 23, 42, 0.10);
    background: var(--sb-by4-soft);
    color: var(--sb-by4-ink);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-align: left;
}
.sb-by4-link:hover { background: #eef2ff; }

.sb-by4-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    background: #fff;
    flex-shrink: 0;
}
.sb-by4-cancel {
    padding: 8px 14px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 12px;
    color: #334155;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.sb-by4-cancel:hover { background: var(--sb-by4-soft); }
.sb-by4-save {
    padding: 8px 16px;
    background: linear-gradient(135deg, var(--sb-by4-primary) 0%, var(--sb-by4-primary-700) 100%);
    border: none;
    border-radius: 12px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 10px 22px rgba(79, 70, 229, 0.22);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.sb-by4-save:hover { filter: brightness(0.96); }
.sb-by4-save:disabled { opacity: 0.7; cursor: not-allowed; }

/* ========== BY4 TASLAK: underline input görünümü (SweetAlert BY4) ========== */
.swal2-popup-sidebar-by4 .sb-by4-input,
.swal2-popup-sidebar-by4 .sb-by4-textarea,
.swal2-popup-sidebar-by4 .sb-by4-select {
    padding: 6px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid rgba(15, 23, 42, 0.12) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.swal2-popup-sidebar-by4 .sb-by4-textarea {
    min-height: 90px;
}
.swal2-popup-sidebar-by4 .sb-by4-input:focus,
.swal2-popup-sidebar-by4 .sb-by4-textarea:focus,
.swal2-popup-sidebar-by4 .sb-by4-select:focus {
    border-bottom-color: var(--sb-by4-primary, #6366f1) !important;
    box-shadow: none !important;
}

/* Select okunu daha temiz yap */
.swal2-popup-sidebar-by4 .sb-by4-select {
    appearance: auto !important;
}

/* ========== EKSTRE SMS (BY4) yardımcı stiller ========== */
.swal2-popup-sidebar-by4 .sb-by4-info {
    border: 1px solid rgba(15, 23, 42, 0.10);
    background: #fff;
    border-radius: 12px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.swal2-popup-sidebar-by4 .sb-by4-info-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
.swal2-popup-sidebar-by4 .sb-by4-info-main { min-width: 0; }
.swal2-popup-sidebar-by4 .sb-by4-info-name { color: var(--sb-by4-ink); }
.swal2-popup-sidebar-by4 .sb-by4-info-meta { color: var(--sb-by4-muted); margin-left: 8px; font-size: 12px; white-space: nowrap; }
.swal2-popup-sidebar-by4 .sb-by4-info-side { color: var(--sb-by4-muted); font-size: 12px; white-space: nowrap; }
.swal2-popup-sidebar-by4 .sb-by4-info-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.swal2-popup-sidebar-by4 .sb-by4-info-credit { display: inline-flex; align-items: center; gap: 8px; }
.swal2-popup-sidebar-by4 .sb-by4-info-credit-label { font-weight: 700; font-size: 12px; color: var(--sb-by4-ink); }
.swal2-popup-sidebar-by4 .sb-by4-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 10px;
    border-radius: 999px;
    background: var(--sb-by4-soft);
    border: 1px solid rgba(15, 23, 42, 0.08);
    color: var(--sb-by4-ink);
    font-size: 12px;
    font-weight: 700;
}
.swal2-popup-sidebar-by4 .sb-by4-info-hint { color: var(--sb-by4-muted); font-size: 12px; text-align: right; }

.swal2-popup-sidebar-by4 .sb-by4-actions-line {
    display: flex;
    align-items: stretch;
    gap: 8px;
}
.swal2-popup-sidebar-by4 .sb-by4-select {
    flex: 1 1 auto;
    min-width: 0;
    padding: 9px 10px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 12px;
    font-size: 13px;
    color: var(--sb-by4-ink);
    outline: none;
    appearance: auto;
    height: auto;
}
.swal2-popup-sidebar-by4 .sb-by4-select:focus {
    border-color: rgba(99, 102, 241, 0.85);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.18);
}
.swal2-popup-sidebar-by4 .sb-by4-iconbtn {
    width: 38px;
    padding: 0;
    justify-content: center;
}
.swal2-popup-sidebar-by4 .sb-by4-outline-danger {
    border-color: rgba(239, 68, 68, 0.35);
    color: #b91c1c;
    background: #fff;
}
.swal2-popup-sidebar-by4 .sb-by4-outline-danger:hover {
    background: #fef2f2;
}
.swal2-popup-sidebar-by4 .sb-by4-save.sb-by4-save-sm {
    padding: 8px 12px;
    font-size: 12px;
    white-space: nowrap;
}
.swal2-popup-sidebar-by4 .sb-by4-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.swal2-popup-sidebar-by4 .sb-by4-chip {
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 12px;
}

/* Bootstrap'in swal içindeki form control resetleri baskın gelirse */
.swal2-popup-sidebar-by4 select.sb-by4-select,
.swal2-popup-sidebar-by4 button.sb-by4-outline,
.swal2-popup-sidebar-by4 button.sb-by4-save,
.swal2-popup-sidebar-by4 button.sb-by4-link {
    font-family: var(--by-font-main, "Inter", system-ui, sans-serif) !important;
}
.swal2-popup-sidebar-by4 select.sb-by4-select {
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.10) !important;
    box-shadow: none !important;
}

/* ========== BY4 OVERLAY MODAL (SweetAlert'sız) ========== */
/* Açılış/kapanış: SweetAlert2’ye yakın — arka plan fade + kart scale (hafif “pop”) */
.by4-modal-backdrop {
  position: fixed !important;
  inset: 0 !important;
  /* Yeni Kişi Ekle (Swal) ile aynı: sadece karartma, blur yok — kisiler.js backdrop: rgba(0,0,0,0.6) */
  background: rgba(0, 0, 0, 0.6);
  z-index: 2147483000;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100vw !important;
  height: 100vh !important;
  padding: 20px !important;
  margin: 0 !important;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.28s linear;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.by4-modal-hidden { /* keep class for JS logic */ }
.by4-modal-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.by4-modal-dialog {
  width: 560px;
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  overflow: auto;
  opacity: 0;
  position: relative !important;
  inset: auto !important;
  margin: auto !important;
  transform: scale(0.88);
  transform-origin: center center;
  will-change: transform, opacity;
  transition:
    transform 0.34s cubic-bezier(0.34, 1.18, 0.64, 1),
    opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}
.by4-modal-visible .by4-modal-dialog {
  opacity: 1;
  transform: scale(1);
  will-change: auto;
}
.by4-modal-lock { overflow: hidden !important; }

/*
 * BY4 overlay (#by4ModalRoot): Bootstrap body / Swal :root değişkenlerinden bağımsız tipografi ve çerçeve.
 * DevTools’ta sadece inherit görünmesin diye burada açık değerler verilir.
 */
#by4ModalRoot {
  font-family: var(--by-font-main, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);
  font-size: 14px;
  line-height: 1.5;
  color: #111827;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  box-sizing: border-box;
}
#by4ModalRoot *,
#by4ModalRoot *::before,
#by4ModalRoot *::after {
  box-sizing: border-box;
}
#by4ModalRoot .by4-modal-dialog {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  isolation: isolate;
  border-radius: 12px;
  outline: none;
  /* Gölge: .kisi-yeni-card / .sb-by4-card kendi box-shadow’unu verir; çift gölge olmasın */
}
#by4ModalRoot .by4-modal-dialog.by4-alert-ozet {
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
#by4ModalRoot .by4-modal-dialog.by4-alert-ozet .toplu-by4-result-card {
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    filter: none;
}
#by4ModalRoot .ozet-notify-card .ozet-notify-list {
    max-height: min(320px, 52vh);
    overflow-y: auto;
    text-align: left;
}
#by4ModalRoot .ozet-notify-card .notification-item strong {
    font-size: 14px;
}
#by4ModalRoot #by4ModalContent {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  font-family: inherit;
  color: inherit;
}
#by4ModalRoot .kisi-yeni-card,
#by4ModalRoot .sb-by4-card {
  font-family: inherit;
  color: #111827;
}

/* Ekstre/property modallarındaki öneri kutusu */
.sb-by4-suggestions {
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px dashed rgba(15, 23, 42, 0.18);
    background: var(--sb-by4-soft);
    color: #334155;
    font-size: 12px;
}
.sb-by4-suggestions-title {
    font-weight: 700;
    font-size: 12px;
    margin-bottom: 4px;
    color: var(--sb-by4-ink);
}
.sb-by4-suggestions-body {
    color: var(--sb-by4-muted);
    white-space: pre-line;
}
