/* Z-INDEX DÜZELTİLDİ: Filtrelerin altında kalması için z-index: 9 yapıldı */
.kfav-heart{position:absolute;top:8px;right:8px;z-index:9;width:32px;height:32px;background:rgba(255,255,255,.88);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .25s ease,background .2s;box-shadow:0 1px 4px rgba(0,0,0,.08);line-height:0}
.kfav-heart:hover{transform:scale(1.15);background:rgba(255,255,255,.96)}
.kfav-heart:active{transform:scale(.9)}
.kfav-heart svg{width:18px;height:18px;fill:none;stroke:#555;stroke-width:2;transition:all .25s ease}
.kfav-heart:hover svg{stroke:#d4364a}
.kfav-heart.kfav-active svg{fill:#d4364a;stroke:#d4364a}
@keyframes kfav-beat{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1)}75%{transform:scale(1.15)}100%{transform:scale(1)}}
.kfav-heart.kfav-anim svg{animation:kfav-beat .5s ease}
.kfav-heart.kfav-loading svg{display:none}
.kfav-heart.kfav-loading::after{content:"";display:block;width:16px;height:16px;border:2px solid #ddd;border-top-color:#d4364a;border-radius:50%;animation:kfav-spin .5s linear infinite}
@keyframes kfav-spin{to{transform:rotate(360deg)}}
.kfav-heart-single{top:12px;right:12px;width:38px;height:38px;z-index:99}
.kfav-heart-single svg{width:22px;height:22px}
.product-small .col-inner,.product-small .box-image,.product-small .image-fade_in,li.product,li.product .product-image,.box-image,.woocommerce-product-gallery,.woocommerce-product-gallery__wrapper,.woocommerce-product-gallery .flex-viewport{position:relative!important}
.kfav-pop-badge{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#777;margin:0 0 8px}
.kfav-pop-heart{color:#d4364a;font-size:15px}
.kfav-pop-badge strong{color:#d4364a;font-weight:600}

.kfav-float{position:fixed;bottom:30px;right:30px;z-index:9998;width:50px;height:50px;background:#111;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:all .3s ease;text-decoration:none!important}
.kfav-float:hover{transform:translateY(-3px) scale(1.08);background:#d4364a;box-shadow:0 6px 20px rgba(212,54,74,.4)}
.kfav-float svg{width:21px;height:21px;fill:#fff}
.kfav-float-count{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;background:#d4364a;color:#fff;font-size:11px;font-weight:700;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 5px;line-height:1}

.kfav-page{max-width:1200px;margin:0 auto;padding:0}
.kfav-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid #eee}
.kfav-toolbar-left{display:flex;align-items:center;gap:6px}
.kfav-toolbar-left h2{margin:0;font-size:18px;font-weight:600;display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:1px}
.kfav-title-svg{width:20px;height:20px;fill:#111}
.kfav-badge{background:#111;color:#fff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px}

/* ====================================================================
   PREMIUM TOOLBAR BUTONLARI (v3.3)
   - Hepsi outline tarzında, aynı boy, tutarlı padding
   - Sadece Temizle butonu kırmızı (destrüktif aksiyonun sezgisel uyarısı)
   - Hover'da düz dolgu
==================================================================== */
.kfav-toolbar-right {
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
}
.kfav-tbtn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    padding: 10px 18px !important;
    border: 1px solid #1a1a1a !important;
    border-radius: 2px !important;
    background: transparent !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    margin: 0 !important;
    width: auto !important;
    min-height: 38px !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
}
.kfav-tbtn svg {
    fill: currentColor !important;
    margin: 0 !important;
    display: block !important;
    flex-shrink: 0;
}
.kfav-tbtn:hover {
    background: #1a1a1a !important;
    color: #fff !important;
}

/* "Tümünü Sepete" — aynı tarz, sadece davranış aynı */
.kfav-tbtn--green {
    background: transparent !important;
    color: #1a1a1a !important;
    border-color: #1a1a1a !important;
}
.kfav-tbtn--green:hover {
    background: #1a1a1a !important;
    color: #fff !important;
    border-color: #1a1a1a !important;
}

/* "Temizle" — destrüktif aksiyon, kırmızı tonu kalsın */
.kfav-tbtn--red {
    background: transparent !important;
    color: #c0392b !important;
    border-color: #c0392b !important;
}
.kfav-tbtn--red:hover {
    background: #c0392b !important;
    color: #fff !important;
    border-color: #c0392b !important;
}

.kfav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.kfav-card{background:#fff;border:1px solid #f0f0f0;border-radius:6px;overflow:hidden;position:relative;transition:box-shadow .3s,transform .3s}
.kfav-card:hover{box-shadow:0 4px 18px rgba(0,0,0,.06);transform:translateY(-2px)}
.kfav-card-img{display:block;aspect-ratio:1;overflow:hidden;background:#f8f8f8}
.kfav-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.kfav-card:hover img{transform:scale(1.04)}
.kfav-card-body{padding:10px 12px}
.kfav-card-name{display:block;font-size:12px;font-weight:500;color:#333;text-decoration:none;margin-bottom:4px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kfav-card-name:hover{color:#111}
.kfav-card-price{font-size:13px;font-weight:700;color:#222;margin-bottom:8px}
.kfav-card-price del{color:#aaa;font-size:11px;font-weight:400}
.kfav-card-price ins{text-decoration:none;color:#111}
.kfav-cart-link{display:block;width:100%;padding:8px;text-align:center;background:#111;color:#fff!important;border:none;border-radius:4px;font-size:12px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s;box-sizing:border-box}
.kfav-cart-link:hover{background:#333}
.kfav-ajax-cart{cursor:pointer}
.kfav-stock-out{display:block;text-align:center;font-size:11px;color:#aaa;font-style:italic;padding:6px}
.kfav-card-x{position:absolute;top:5px;right:5px;width:24px;height:24px;border:none;border-radius:50%;background:rgba(255,255,255,.85);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;color:#aaa;transition:all .2s;z-index:5;padding:0;line-height:1}
.kfav-card-x:hover{background:#111;color:#fff}

.kfav-empty,.kfav-login-box{text-align:center;padding:36px 20px}
.kfav-empty-svg{width:48px;height:48px;fill:none;stroke:#ddd;stroke-width:1.5;margin-bottom:12px}
.kfav-login-svg{width:42px;height:42px;fill:#ddd;margin-bottom:12px;display:block;margin-left:auto;margin-right:auto}
.kfav-empty h3,.kfav-login-box h3{font-size:16px;color:#111;margin-bottom:4px}
.kfav-empty p,.kfav-login-box p{color:#999;margin-bottom:16px;font-size:13px}
.kfav-btn-link{display:inline-block;padding:9px 24px;background:#111;color:#fff!important;border-radius:4px;text-decoration:none;font-weight:600;font-size:12px}
.kfav-btn-link:hover{background:#333}

.kfav-loading{text-align:center;padding:20px}
.kfav-spinner{width:24px;height:24px;border:2px solid #eee;border-top-color:#111;border-radius:50%;animation:kfav-spin .6s linear infinite;margin:0 auto}

/* MODALLAR (PREMIUM SİYAH TEMA — v3.3 iyileştirildi) */
.kfav-modal{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:100000;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.kfav-modal-inner{position:relative !important; background:#fff;border-radius:2px;padding:25px;max-width:420px;width:90%;box-shadow:0 20px 60px rgba(0,0,0,.4)}
/* X İşareti */
.kfav-modal-x{position:absolute !important;top:14px !important;right:14px !important;width:30px !important;height:30px !important;background:none !important;border:none !important;font-size:24px !important;cursor:pointer !important;color:#999 !important;padding:0 !important;line-height:1 !important;transition:0.25s !important;display:flex !important;align-items:center !important;justify-content:center !important;z-index:10 !important}

.kfav-modal-dark { background:#0f0f0f !important; border:1px solid #2a2a2a !important; text-align:center !important; padding:42px 28px 28px !important; }
.kfav-modal-dark h4 { color:#fff !important; font-size:17px !important; letter-spacing:2px; margin:0 0 10px !important; text-transform:uppercase; font-weight:600; }
.kfav-modal-dark p { color:#999 !important; font-size:13px !important; margin:0 0 22px !important; line-height:1.6; }
.kfav-modal-dark .kfav-modal-x { color:#666 !important; }
.kfav-modal-dark .kfav-modal-x:hover { color:#fff !important; }
.kfav-modal-icon { margin-bottom:18px; }
.kfav-modal-icon svg { width:42px; height:42px; fill:#fff; }
/* v3.3: Temizle (destrüktif) modal'ında çöp kutusu kırmızı - bilinçli uyarı */
#kfav-confirm-modal .kfav-modal-icon svg { fill: #c0392b; }
.kfav-modal-actions { display:flex; gap:10px; justify-content:center; }
.kfav-btn-outline { background:transparent; border:1px solid #555; color:#fff; padding:10px 24px; border-radius:4px; cursor:pointer; font-weight:600; font-size:12px; text-transform:uppercase; transition:0.3s; }
.kfav-btn-outline:hover { background:#333; border-color:#888; }
.kfav-btn-danger { background:#c0392b; border:1px solid #c0392b; color:#fff; padding:10px 24px; border-radius:2px; cursor:pointer; font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:1px; transition:0.25s; }
.kfav-btn-danger:hover { background:#a93226; border-color:#a93226; }

/* v3.3: Premium primary buton (misafir login modalı için) */
.kfav-btn-primary {
    background: #fff;
    border: 1px solid #fff;
    color: #1a1a1a;
    padding: 10px 24px;
    border-radius: 2px;
    cursor: pointer;
    font-weight: 700;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: 0.25s;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    line-height: 1;
}
.kfav-btn-primary:hover {
    background: #d4d4d4;
    border-color: #d4d4d4;
    color: #1a1a1a;
}

/* v3.3: Misafir login modal — özel ikon rengi (kırmızı kalp uyarı değil, marka uyumlu) */
.kfav-guest-modal .kfav-modal-icon svg {
    fill: #fff;
    width: 38px;
    height: 38px;
}

/* ====================================================================
   PREMIUM PAYLAŞIM MODALI (v3.3)
   - URL + Kopyala kompakt tek çerçeve
   - Sosyal butonlar marka kimliğine uygun (siyah outline, marka renkleri yok)
==================================================================== */
.kfav-share-input-row {
    display: flex !important;
    align-items: stretch !important;
    margin: 0 0 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid #333 !important;
    border-radius: 2px !important;
    background: #1a1a1a !important;
    overflow: hidden !important;
}
.kfav-share-input-row input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 12px 14px !important;
    background: transparent !important;
    border: none !important;
    font-size: 12px !important;
    color: #ccc !important;
    outline: none !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    height: auto !important;
    font-family: inherit !important;
}
.kfav-share-input-row button {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 18px !important;
    background: #fff !important;
    color: #1a1a1a !important;
    border: none !important;
    border-radius: 0 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: 0.25s !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 !important;
    line-height: 1 !important;
}
.kfav-share-input-row button:hover {
    background: #d4d4d4 !important;
}
.kfav-share-input-row button svg {
    fill: currentColor;
    flex-shrink: 0;
}

/* Sosyal Butonlar — premium outline tarz, marka renkleri yok */
.kfav-social-row {
    display: flex;
    gap: 8px;
    width: 100%;
}
.kfav-social-btn {
    flex: 1;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 8px !important;
    border-radius: 2px !important;
    background: transparent !important;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    transition: 0.25s !important;
    border: 1px solid #444 !important;
    line-height: 1 !important;
}
.kfav-social-btn svg {
    fill: currentColor;
    flex-shrink: 0;
}
.kfav-social-btn:hover {
    background: #fff !important;
    color: #1a1a1a !important;
    border-color: #fff !important;
}

.kfav-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(80px);background:#111;color:#fff;padding:12px 26px;border-radius:4px;font-size:13px;font-weight:500;z-index:100001;opacity:0;transition:all .35s cubic-bezier(.175,.885,.32,1.275);pointer-events:none;box-shadow:0 5px 15px rgba(0,0,0,0.2)}
.kfav-toast.kfav-show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:768px){
    .kfav-toolbar{flex-direction:column;align-items:stretch;gap:12px;padding-bottom:12px;margin-bottom:15px}
    .kfav-toolbar-left h2{font-size:16px;justify-content:center}
    .kfav-toolbar-right{justify-content:center !important; width:100% !important;}
    .kfav-tbtn{padding:10px !important; font-size:11px !important; flex:1;}
    .kfav-grid{grid-template-columns:repeat(2,1fr);gap:8px}
    .kfav-card-body{padding:8px 10px}
    .kfav-card-name{font-size:11px}
    .kfav-card-price{font-size:12px;margin-bottom:6px}
    .kfav-cart-link{padding:7px;font-size:11px}
    .kfav-heart{width:28px;height:28px;top:6px;right:6px}
    .kfav-heart svg{width:15px;height:15px}
    .kfav-empty,.kfav-login-box{padding:28px 16px}
    .kfav-empty h3,.kfav-login-box h3{font-size:15px}
    .kfav-toast{font-size:12px;padding:10px 20px;bottom:16px}
    .kfav-float{width:45px;height:45px;right:20px;bottom:20px}
    .kfav-float svg{width:19px;height:19px}
}
@media(max-width:380px){
    .kfav-grid{grid-template-columns:repeat(2,1fr);gap:6px}
    .kfav-card-body{padding:6px 8px}
    .kfav-card-name{font-size:10px;-webkit-line-clamp:1}
    .kfav-card-price{font-size:11px}
    .kfav-card-x{width:22px;height:22px;font-size:12px;top:4px;right:4px}
    .kfav-toolbar-right {flex-direction:column !important;}
    .kfav-tbtn {width:100% !important;}
    .kfav-share-input-row{flex-direction:column !important; gap:8px !important;}
    .kfav-share-input-row input{width:100% !important;}
    .kfav-share-input-row button{width:100% !important;}
}