/* GENEL DÜZEN */
    .sepet-container { 
        padding: 60px 0; /* Üstten ve alttan 60px boşluk */
        background-color: #f8f9fa; 
        min-height: 80vh; /* Ekranın en az %80 yüksekliğini kapla */
    }
    
    .sepet-grid { 
        display: grid; /* Izgara düzenini etkinleştir */
        grid-template-columns: 2fr 1fr; /* İki sütun: sol taraf 2 birim, sağ taraf 1 birim genişlikte */
        gap: 30px; /* Sütunlar arası 30px boşluk */
        align-items: start; /* Öğeleri üst kenara hizala */
    }

    /* SOL TARAF KUTUSU (Sepet Listesi) */
    .cart-list-box {
        background: white; 
        border-radius: 20px; /* Köşeleri 20px yuvarlat */
        padding: 30px; /* İçerik ile kenarlar arası 30px boşluk */
        box-shadow: 0 10px 30px rgba(0,0,0,0.05); /* Hafif gölge efekti */
        border: 1px solid #f1f1f1; /* İnce gri kenarlık */
    }

    /* ÜRÜN KARTI (Her bir sepet öğesi) */
    .cart-item {
        display: flex; /* Esnek kutu düzeni (yan yana) */
        align-items: center; /* Dikeyde ortala */
        justify-content: space-between; /* İçerikleri iki uca yasla */
        padding: 20px 0; /* Üstten ve alttan 20px boşluk */
        border-bottom: 1px solid #eee; /* Altına ince çizgi */
        transition: background 0.3s; /* Arka plan değişimi için geçiş efekti */
    }
    .cart-item:last-child { 
        border-bottom: none; /* Son öğenin alt çizgisini kaldır */
    }
    
    .cart-img { 
        width: 90px; /* Resim genişliği */
        height: 90px; /* Resim yüksekliği */
        object-fit: cover; /* Resmi kutuya sığdır (kırp) */
        border-radius: 12px; /* Resim köşelerini yuvarlat */
        border: 1px solid #eee; /* Resim etrafına ince çerçeve */
        background: #fff; 
        padding: 5px; /* Çerçeve ile resim arası boşluk */
    }
    
    .cart-info { 
        flex: 1; /* Kalan boşluğu doldur */
        margin-left: 20px; /* Resimden 20px uzaklaş */
    }
    .cart-title { 
        font-size: 1.1rem; /* Başlık boyutu */
        font-weight: 700; /* Kalın yazı */
        color: #2b2d42; 
        margin: 0 0 5px 0; /* Altına 5px boşluk */
    }
    .cart-cat { 
        font-size: 0.8rem; /* Kategori yazı boyutu */
        color: #888; 
        text-transform: uppercase; /* Tüm harfleri büyük yap */
        letter-spacing: 1px; /* Harf aralığını aç */
        font-weight: 600; /* Orta kalınlıkta yazı */
    }
    .cart-price { 
        font-weight: 700; /* Fiyatı kalın yap */
        color: #d90429; 
        margin-top: 5px; /* Üstten 5px boşluk */
        font-size: 1.05rem; /* Yazı boyutu */
    }

    /* MİKTAR BUTONLARI (+ / -) */
    .qty-control { 
        display: flex; /* Yan yana diz */
        align-items: center; /* Dikeyde ortala */
        gap: 5px; /* Öğeler arası 5px boşluk */
        background: #f8f9fa; 
        padding: 5px; /* İç boşluk */
        border-radius: 50px; /* Tam yuvarlak kenarlar */
        border: 1px solid #eee; 
    }
    .qty-btn { 
        width: 32px; /* Buton genişliği */
        height: 32px; /* Buton yüksekliği */
        border-radius: 50%; /* Tam yuvarlak buton */
        border: none; /* Kenarlığı kaldır */
        background: white; 
        cursor: pointer; /* İmleci el yap */
        color: #2b2d42; 
        font-weight: bold; /* Kalın yazı */
        box-shadow: 0 2px 5px rgba(0,0,0,0.05); /* Hafif gölge */
        transition: 0.2s; /* Geçiş süresi */
        display: flex; /* İçeriği ortalamak için flex */
        align-items: center; /* Dikey ortala */
        justify-content: center; /* Yatay ortala */
    }
    .qty-btn:hover { 
        background: #d90429; /* Hoverda kırmızı arka plan */
        color: white; 
    }
    .qty-input { 
        width: 35px; /* Input genişliği */
        text-align: center; /* Yazıyı ortala */
        border: none; /* Kenarlığı kaldır */
        background: transparent; /* Şeffaf arka plan */
        font-weight: 700; /* Kalın yazı */
        color: #333; 
    }

    /* SİL BUTONU (Çöp Kutusu) */
    .btn-remove { 
        background: #fff0f3; 
        color: #d90429; 
        border: none; /* Kenarlığı kaldır */
        width: 40px; /* Genişlik */
        height: 40px; /* Yükseklik */
        border-radius: 12px; /* Köşeleri yuvarlat */
        cursor: pointer; /* İmleci el yap */
        display: flex; /* İkonu ortalamak için */
        align-items: center; /* Dikey ortala */
        justify-content: center; /* Yatay ortala */
        transition: 0.2s; /* Geçiş efekti */
        margin-left: 15px; /* Soldan boşluk */
    }
    .btn-remove:hover { 
        background: #d90429; 
        color: white; 
        transform: rotate(90deg); /* Hoverda döndür */
    }

    /* TEMİZLE BUTONU (Sepeti Boşalt) */
    .btn-clear-cart {
        background: transparent; 
        border: 2px solid #e9ecef; /* Gri çerçeve */
        color: #6c757d; 
        padding: 10px 20px; /* İç boşluk */
        border-radius: 10px; /* Köşeleri yuvarlat */
        cursor: pointer; /* İmleci el yap */
        font-weight: 600; /* Kalın yazı */
        margin-top: 20px; /* Üstten boşluk */
        transition: 0.3s; /* Geçiş efekti */
        display: inline-flex; /* İçerikleri hizalamak için */
        align-items: center; /* Dikey ortala */
        gap: 8px; /* İkon ve yazı arası boşluk */
    }
    .btn-clear-cart:hover { 
        border-color: #d90429; /* Hoverda kırmızı çerçeve */
        color: #d90429; /* Hoverda kırmızı yazı */
    }

    /* SAĞ TARAF (ÖZET KARTI / Teklif Formu) */
    .summary-card { 
        background: white; 
        padding: 30px; /* İç boşluk */
        border-radius: 20px; /* Köşeleri yuvarlat */
        box-shadow: 0 10px 30px rgba(0,0,0,0.05); /* Gölge efekti */
        position: sticky; /* Kaydırma sırasında sabitle */
        top: 100px; /* Üstten 100px mesafede dur */
        border: 1px solid #f1f1f1; /* İnce kenarlık */
    }
    .summary-title { 
        font-size: 1.3rem; /* Başlık boyutu */
        font-weight: 800; /* Çok kalın yazı */
        color: #2b2d42; 
        margin-bottom: 20px; /* Alt boşluk */
        border-bottom: 2px solid #f1f1f1; /* Alt çizgi */
        padding-bottom: 15px; /* Çizgi ile yazı arası boşluk */
    }
    .form-input { 
        width: 100%; /* Tam genişlik */
        padding: 14px; /* İç boşluk */
        margin-bottom: 15px; /* Alt boşluk */
        border: 1px solid #eee; /* Gri kenarlık */
        border-radius: 10px; /* Köşeleri yuvarlat */
        font-family: inherit; /* Yazı tipini miras al */
        background: #fcfcfc; 
        transition: 0.3s; /* Geçiş efekti */
        box-sizing: border-box; /* Paddingi genişliğe dahil et */
    }
    .form-input:focus { 
        border-color: #d90429; 
        background: white; 
        outline: none; /* Varsayılan çerçeveyi kaldır */
        box-shadow: 0 0 0 4px rgba(217, 4, 41, 0.1); /* Hafif kırmızı gölge */
    }
    .form-input[readonly] { 
        background-color: #e9ecef;
        cursor: not-allowed; /* İmleci engelle */
        opacity: 0.7; /* Şeffaflık ver */
    }

    .btn-submit { 
        width: 100%; /* Tam genişlik */
        background: #d90429;
        color: white; 
        padding: 16px; /* İç boşluk */
        border: none; /* Kenarlığı kaldır */
        border-radius: 10px; /* Köşeleri yuvarlat */
        font-weight: 700; /* Kalın yazı */
        cursor: pointer; /* İmleci el yap */
        transition: 0.3s; /* Geçiş efekti */
        font-size: 1rem; /* Yazı boyutu */
        box-shadow: 0 5px 15px rgba(217, 4, 41, 0.3); /* Kırmızı gölge */
    }
    .btn-submit:hover { 
        background: #b00220; 
        transform: translateY(-2px); /* Hoverda yukarı kaldır */
    }

    /* BOŞ DURUM (Sepet Boşsa) */
    .empty-state-card { 
        background: white; 
        border-radius: 20px; /* Köşeleri yuvarlat */
        padding: 60px 40px; /* İç boşluk */
        text-align: center; /* Yazıları ortala */
        box-shadow: 0 15px 50px rgba(0,0,0,0.05); /* Büyük gölge */
        max-width: 600px; /* Maksimum genişlik */
        margin: 40px auto; /* Ortala ve boşluk bırak */
        border: 1px solid #f1f1f1; /* İnce kenarlık */
    }
    .empty-icon-box { 
        width: 130px; /* Kutu genişliği */
        height: 130px; /* Kutu yüksekliği */
        background: #fff0f3; /* Açık pembe arka plan */
        border-radius: 50%; /* Tam yuvarlak */
        display: flex; /* İkonu ortalamak için */
        align-items: center; /* Dikey ortala */
        justify-content: center; /* Yatay ortala */
        margin: 0 auto 30px auto; /* Ortala ve alt boşluk bırak */
        animation: pulse 2s infinite; /* Nabız animasyonu ekle */
    }
    .empty-icon-box i { 
        font-size: 55px; /* İkon boyutu */
        color: #d90429; /* İkon rengi */
    }
    .empty-title { 
        font-size: 1.8rem; /* Başlık boyutu */
        font-weight: 800; /* Çok kalın yazı */
        color: #2b2d42; 
        margin-bottom: 15px; /* Alt boşluk */
    }
    .empty-desc { 
        color: #6c757d; 
        font-size: 1.1rem; /* Yazı boyutu */
        margin-bottom: 35px; /* Alt boşluk */
        line-height: 1.6; /* Satır aralığı */
    }
    .btn-empty-cta { 
        background: #2b2d42; 
        color: white; 
        padding: 15px 40px; /* İç boşluk */
        border-radius: 50px; /* Tam yuvarlak kenarlar */
        text-decoration: none; /* Alt çizgiyi kaldır */
        font-weight: 700; /* Kalın yazı */
        font-size: 1.1rem; /* Yazı boyutu */
        transition: all 0.3s; /* Geçiş efekti */
        box-shadow: 0 5px 15px rgba(43, 45, 66, 0.2); /* Gölge efekti */
        display: inline-flex; /* İkon hizalaması için */
        align-items: center; /* Dikey ortala */
        gap: 10px; /* İkon ve yazı arası boşluk */
    }
    .btn-empty-cta:hover { 
        background: #d90429; /* Hoverda kırmızı yap */
        transform: translateY(-3px); /* Yukarı kaldır */
        box-shadow: 0 8px 20px rgba(217, 4, 41, 0.3); /* Gölgeyi değiştir */
        color: white; 
    }
    
    @keyframes pulse { /* Nabız animasyonu tanımları */
        0% { box-shadow: 0 0 0 0 rgba(217, 4, 41, 0.1); }
        70% { box-shadow: 0 0 0 20px rgba(217, 4, 41, 0); }
        100% { box-shadow: 0 0 0 0 rgba(217, 4, 41, 0); }
    }

    /* --- SWEETALERT ÖZELLEŞTİRMELERİ --- */
    .swal2-popup { 
        border-radius: 20px !important; /* Popup köşelerini yuvarlat */
        padding: 2em; /* İç boşluğu artır */
    }
    .swal2-title { 
        color: #2b2d42 !important; 
        font-family: inherit !important; /* Yazı tipini koru */
        font-weight: 700 !important; /* Kalın yazı */
    }
    .swal2-html-container { 
        color: #6c757d !important; 
        font-size: 1.1em !important; /* Yazı boyutu */
    }
    .swal2-confirm, .swal2-cancel {
        border-radius: 8px !important; /* Buton köşelerini yuvarlat */
        font-weight: 600 !important; /* Kalın yazı */
        font-size: 1rem !important; /* Yazı boyutu */
        padding: 12px 24px !important; /* Buton iç boşluğu */
        box-shadow: none !important; /* Varsayılan gölgeyi kaldır */
    }
    .swal2-confirm:focus, .swal2-cancel:focus { 
        box-shadow: 0 0 0 3px rgba(217, 4, 41, 0.2) !important; /* Odaklanma gölgesi */
    }

    /* MOBİL UYUMLULUK (Responsive) */
    @media (max-width: 768px) {
        .sepet-grid { 
            grid-template-columns: 1fr; /* Mobilde tek sütun yap */
        }
        .cart-item { 
            flex-direction: column; /* Öğeleri alt alta diz */
            text-align: center; /* Yazıları ortala */
            gap: 15px; /* Boşluk bırak */
            position: relative; /* Pozisyonlandırma için */
        }
        .cart-info { 
            margin: 0; /* Marjı sıfırla */
        }
        .qty-control { 
            margin: 0 auto; /* Ortala */
        }
        .btn-remove { 
            position: absolute; /* Mutlak konumlandır */
            top: 0; /* En üste */
            right: 0; /* En sağa */
            width: 30px; /* Genişliği küçült */
            height: 30px; /* Yüksekliği küçült */
        }
        .summary-card { 
            position: static; /* Yapışkanlığı kaldır */
            margin-top: 30px; /* Üstten boşluk bırak */
        }
    }