/* ============================================================================
LUVLERRY PAGE CSS - GROUPED V64 CLEAN READABLE
-------------------------------------------------------------------------------
[00] TASARIM DEĞİŞKENLERİ / RESET / SAFE AREA
[01] HEADER & NAVBAR
[02] ÜRÜN KARTLARI / LİSTE / MASONRY
[03] SEPET / CHECKOUT / FORM / ÖDEME ÖZETİ
[04] SABİT BUTONLAR / ANİMASYONLAR
[05] OVERLAY / LOADING / STORY
[06] TRENDYOL REVIEW SLIDER
[07] PROMO BANNER
[08] MOBİL VIEWPORT / SAFE AREA / SEPET OVERLAY
[09] SEPET +/- BUTONLARI / MOBİL SEPET DÜZELTMELERİ
[10] FORM YÜKSEKLİKLERİ / INPUT RAHATLATMA
-------------------------------------------------------------------------------
Not: Mevcut çalışan CSS kurallarını silmeden koruyan, yeni sepet finans özeti
stillerini ekleyen düzenlenmiş sürümdür.
============================================================================ */
/* CLEAN NOTU:
   Bu kaynak dosya okunabilir kalacak şekilde sadeleştirildi.
   Sunucuda performans için page.min.css kullanın; düzenleme için bu dosyayı saklayın.
   VIP / discount / ödeme / JS event mantığına dokunmaz; sadece CSS kaynak temizliğidir.
*/


/* ============================================================
[1] GENEL DEĞİŞKENLER VE TEMEL YAPI
============================================================ */
:root {
--light-bg: #f3f4f6;
--accent-color: #ffa8b5;
--accent-hover: #ff90a0;
}
html {
margin: 0;
padding: 0;
/* En koyu tonun – status bar arkası için düz renk */
background-color: #050505;
}
.text-pink {
	color: #ffa8b5 !important;
}
/* === iPhone safe-area & genel reset === */
html,
body {
margin: 0;
padding: 0;
/* Tarayıcının kendi kaydırmasını kapatıyoruz. (Bu, barların küçülmesini engeller) */
height: 100%;
height: 100svh; /* Yeni nesil mobil tarayıcılar için en güvenli tam ekran ölçüsü */
overflow: hidden;
}

body {
font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, -apple-system, BlinkMacSystemFont, sans-serif !important;
/* Eğer bir arka plan renginiz varsa buraya ekleyin ki çentik boşlukları o renkte dolsun */
background-color: #ffffff;
}

/* === Yeni Kaydırma Alanımız === */
.main-scroll-wrapper {
height: 100%;
/* İçerik uzadıkça SADECE bu div'in içi kayacak */
overflow-y: auto;
overflow-x: hidden;

/* iPhone'da kaydırmanın yağ gibi akıcı olması için zorunlu kod */
-webkit-overflow-scrolling: touch;

/* iPhone çentik ve alt bar boşluklarını kaydırılabilir alana veriyoruz */
padding-top: env(safe-area-inset-top);
padding-bottom: env(safe-area-inset-bottom);
padding-left: env(safe-area-inset-left);
padding-right: env(safe-area-inset-right);
}
@media (max-width: 991px) {
	body.luv-glass-cart-visible:not(.luv-mobile-cart-open):not(.luv-product-detail-open) .main-scroll-wrapper {
		padding-bottom: calc(112px + env(safe-area-inset-bottom, 0px));
		scroll-padding-bottom: calc(112px + env(safe-area-inset-bottom, 0px));
	}
}
h1 {
font-size: 1.6em;
}
.hidden {
display: none !important;
}
.cursor-pointer {
cursor: pointer;
}
/* ============================================================
[11] GLASSMORPHISM BOTTOM CART BAR 
============================================================ */
.glass-bottom-bar {
  position: fixed;
  bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  left: 50%;
  transform: translateX(-50%) translateY(150px);
  width: 92%;
  max-width: 400px;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 50px;
  padding: 8px 12px 8px 20px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
  z-index: 10050;
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  will-change: transform, opacity;
}

.glass-bottom-bar.show-bar {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
  border: 1px solid #ffa8b5;
}

.glass-content { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.glass-cart-info { display: flex; flex-direction: column; justify-content: center; cursor: pointer; }

.glass-item-count { font-size: 0.65rem; font-weight: 700; color: #000; text-transform: uppercase; letter-spacing: 0.5px; line-height: 1; margin-bottom: 3px; }
.glass-total-price { font-size: 1rem; font-weight: 800; color: #111; line-height: 1; }

.glass-checkout-btn { font-size: 0.8rem !important; font-weight: 700 !important; padding: 10px 24px !important; background-color: #ffa8b5 !important; border: none !important; transition: transform 0.2s ease, background-color 0.2s ease; }
.glass-checkout-btn:active { transform: scale(0.95); background-color: #000 !important; }
/* ============================================================
[12] LUVLERRY STORE - MINIMALIST & FLEX-SECURE DESIGN
============================================================ */

/* Galeri Ayarları */
.luv-infinity-slider-wrapper { overflow: hidden; width: 100%; position: relative; }
.luv-infinity-slider-track { display: inline-flex; gap: 15px; animation: luvScroll 38s linear infinite; }
.luv-infinity-item { width: 250px; height: 350px; flex-shrink: 0; border-radius: 4px; overflow: hidden; }
.luv-infinity-item a { display: block; width: 100%; height: 100%; cursor: zoom-in; }
.luv-infinity-item img { width: 100%; height: 100%; object-fit: cover; pointer-events: none; }

/* Fare üzerine gelince kaymayı durdurur */
.luv-infinity-slider-track:hover {
    animation-play-state: paused !important;
}

/* Chrome'un form uyarısı atıklarını temizler (Çift çıkma sorunu için ekstra güvenlik) */
form input:invalid, form textarea:invalid {
    box-shadow: none !important;
}

/* Alt satırdaki numaranın genel stili */
.luv-phone-subtext {
    font-size: 0.8rem;
    color: #888;
    margin-top: 2px;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Kapsayıcı artık boyutunu içindeki görünmez iskeletten alıyor */
.luv-love-wrapper {
    position: relative;
    display: inline-block;
    text-align: center;
}

/* Rakam ve Yazı iskeletin tam üstüne biniyor */
.luv-love-wrapper .luv-num,
.luv-love-wrapper .luv-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition: opacity 0.6s ease-in-out, transform 0.6s ease-in-out;
}

/* Başlangıç Görünümleri */
.luv-love-wrapper .luv-num {
    opacity: 1;
    transform: translateY(0);
}

.luv-love-wrapper .luv-text {
    opacity: 0;
    color: #ffa8b5; /* Luvlerry Pembesi */
    font-weight: 800;
    letter-spacing: 1px;
    transform: translateY(5px);
}

/* Animasyon Tetiklendiğindeki Görünümler */
.show-love .luv-num {
    opacity: 0;
    transform: translateY(-5px);
}

.show-love .luv-text {
    opacity: 1;
    transform: translateY(0);
}

/* Form Input: Sadece Alt Çizgi */
.luv-input-line {
    border: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
    border-radius: 0 !important;
    padding: 12px 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transition: border-color 0.3s ease !important;
}
.luv-input-line:focus { border-bottom-color: #111 !important; }

/* Gönder Butonu: Sağa Dayalı & Minimalist */
.luv-btn-minimal {
    background: transparent !important;
    color: #111 !important;
    border: none !important;
    padding: 5px 0 !important;
    text-transform: uppercase;
    transition: all 0.3s ease;
}
.luv-btn-minimal:hover {
    color: #ffa8b5 !important;
}
.text-right {
	text-align: right;
}
/* Mağaza Listesi & Hizalama */
.luv-store-item { transition: all 0.3s ease; }
.store-detail-text { display: block; line-height: 1.5; }

/* Sosyal Kanallar: Renkli & Zarif */
.luv-social-link-minimal {
    display: flex;
    align-items: center;
    padding: 14px 0;
    text-decoration: none;
    border-bottom: 1px solid #f8f8f8;
    transition: transform 0.3s ease;
}
.luv-social-link-minimal i { font-size: 1.25rem; width: 35px; text-align: center; }
.luv-social-link-minimal span { color: #444; font-size: 0.9rem; font-weight: 500; }
.luv-social-link-minimal:hover { transform: translateX(5px); }

@keyframes luvScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); } 
}

@media (max-width: 768px) {
    .luv-btn-minimal { width: 100%; text-align: center; }
}
/* ============================================================
[2] HEADER & NAVBAR (MASAÜSTÜ)
============================================================ */
.trust_desc {
	font-size: 0.7rem;
	color: #000;
}
.navbar-sp {
background: #fff;
border-bottom: 1px solid #e5e7eb;
padding: 20px 0;
/* --- MASAÜSTÜNDE DE YAPIŞKAN OLMASI İÇİN EKLENENLER --- */
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1050; /* Ürünlerin ve sepetin üstünde durmasını sağlar */
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03); /* Aşağı kayarken menüyü ayırmak için hafif gölge */
}
.navbar-brand-img {
cursor: pointer;
transition: transform 0.3s ease;
}
.navbar-brand-img:active {
transform: scale(0.9);
}
@media (min-width: 992px) {
.logo-center-wrapper {
position: absolute;
left: 50%;
transform: translateX(-50%);
z-index: 10;
}
}
.navbar-sp .order-3 {
display: flex !important;
align-items: center !important;
justify-content: flex-end;
gap: 15px;
}
/* Linkler ve Butonlar */
.insta-nav-link {
display: flex !important;
align-items: center !important;
line-height: 1 !important;
text-decoration: none;
}
.insta-nav-link i {
font-size: 1.3rem;
background: -webkit-linear-gradient(
45deg,
#f09433 0%,
#e6683c 25%,
#dc2743 50%,
#cc2366 75%,
#bc1888 100%
);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
transition: transform 0.3s;
}
.insta-nav-link:hover i {
transform: scale(1.15);
}
.trendyol-nav-link img {
height: 20px !important;
width: 47px !important;
padding: 0 !important;
}
.trendyol-nav-link {
color: #000000 !important;
padding: 6px 5px;
text-decoration: none;
display: flex;
align-items: center;
transition: transform 0.2s;
line-height: 1;
}
.trendyol-nav-link:hover {
transform: scale(1.05);
opacity: 0.9;
}
.trendyol-icon {
height: 16px;
width: 16px;
vertical-align: middle;
}
.trendyol-nav-link span {
font-size: 0.6rem;
font-weight: 600;
}
.lang-switch-container {
display: flex;
justify-content: center;
gap: 10px;
margin-top: 5px;
}
.lang-btn {
font-size: 0.7em !important;
border: none;
background: transparent;
color: #adb5bd;
cursor: pointer;
transition: color 0.2s;
padding: 2px;
}
.lang-btn.active {
color: #000;
border-bottom: 2px solid var(--accent-color);
}
.lang-btn:hover {
color: #666;
}
/* Menü Tabları */
.nav-tab-link,
.nav-tab-link-mobile {
font-size: 0.65rem;
font-weight: 800;
letter-spacing: 1px;
color: #eb7f87;
text-decoration: none;
transition: 0.3s;
border-bottom: 2px solid transparent;
padding-bottom: 4px;
cursor: pointer;
}
.nav-tab-link.active-tab,
.nav-tab-link-mobile.active-tab {
color: #000;
border-bottom: 2px solid #ffa8b5;
}
/* ============================================================
[3] KARTLAR & ÜRÜNLER & MASONRY
============================================================ */
.product-card {
background: #fff;
border: none;
border-radius: 8px;
overflow: hidden;
transition: transform 0.2s;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
height: 100%;
will-change: transform; /* Performans */
touch-action: manipulation;
}
.product-card:hover {
transform: translateY(-3px);
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}
.discount-badge {
position: absolute;
bottom: 12px;
left: 12px;
background: #ef4444;
color: white;
font-size: 0.7rem;
padding: 2px 6px;
border-radius: 4px;
pointer-events: none;
}
.new-badge {
position: absolute;
top: 8px;
left: 8px;
background: #0d6efd;
color: white;
font-size: 0.7rem;
padding: 2px 6px;
border-radius: 4px;
font-weight: bold;
pointer-events: none;
}
.btn-share-product {
    position: absolute;
    top: 0px;
    right: 0px;
    background: transparent;
    color: #000000;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
}
.btn-share-product:hover {
color: #ffa8b5;
transform: scale(1.1);
}
.share-trigger,
.add-btn {
touch-action: manipulation;
}
/* Trendyol Card Link */
.trendyol-card-link {
position: absolute;
bottom: 10px;
right: 10px;
z-index: 10;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
}
.trendyol-card-link:hover {
transform: scale(1.1);
}
.trendyol-card-link img {
width: 50px;
height: auto;
}
/* ============================================================
[4] SEPET, CHECKOUT & BİLEŞENLER
============================================================ */
.sidebar-sticky-wrapper {
position: sticky;
top: 100px;
background: #fff;
border-radius: 12px;
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
padding: 15px;
}
@media (min-width: 992px) {
.sidebar-sticky-wrapper {
height: calc(100svh - 120px);
max-height: calc(100svh - 120px);
overflow-y: auto;
overflow-x: hidden;
scrollbar-width: thin;
}
}
.iyzico-wrapper {
min-height: 100px;
background: #fff;
border: 1px solid #e0e0e0;
border-radius: 8px;
padding: 10px;
margin-bottom: 15px;
}
.cart-item-img {
width: 75px;
height: 75px;
object-fit: cover;
border-radius: 6px;
flex-shrink: 0;
}
.cart-qty-ctrl {
display: flex;
align-items: center;
background: #f8f9fa;
border-radius: 20px;
padding: 2px 6px;
}
.product-name-el {
text-align: center;
}
.description-text {
font-size: 0.75rem;
color: #000;
line-height: 1.4;
height: auto;
margin-top: 10px;
text-align: center;
}
.description-text-cart {
font-size: 0.75rem;
color: #000;
margin-bottom: 4px;
}
.shipping-note-box {
background-color: #fff3cd;
color: #856404;
border: 1px solid #ffeeba;
border-left: 5px solid #ffc107;
border-radius: 6px;
padding: 12px;
font-size: 0.8em;
line-height: 1.4;
margin-top: 15px;
}
/* Formlar & Güvenlik */
.locked-form {
opacity: 0.5;
pointer-events: none;
user-select: none;
transition: all 0.3s ease;
}
.unlocked-form {
opacity: 1;
pointer-events: auto;
user-select: auto;
transition: all 0.3s ease;
}
.luv-input-locked {
position: relative;
cursor: not-allowed !important;
}
.luv-input-locked input {
pointer-events: none !important;
}
.luv-input-locked::after {
content: attr(data-title);
position: absolute;
bottom: 100%;
left: 50%;
transform: translateX(-50%);
background: #111;
color: #fff;
border: 1px solid #ffa8b5;
padding: 8px 12px;
border-radius: 8px;
font-size: 0.7rem;
font-weight: 600;
white-space: normal;
width: 180px;
text-align: center;
line-height: 1.4;
opacity: 0;
visibility: hidden;
transition: all 0.3s ease;
z-index: 9999;
box-shadow: 0 5px 15px rgba(255, 168, 181, 0.2);
pointer-events: none;
margin-bottom: 5px;
}
.luv-input-locked:hover::after {
opacity: 1;
visibility: visible;
bottom: calc(100% + 5px);
}
.trust-badges-area {
background: #ffffff;
border-radius: 8px;
padding: 10px;
border: 1px dashed #e0e0e0;
margin-bottom: 12px;
}
.trust-logos-row {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
margin-bottom: 6px;
filter: grayscale(100%);
opacity: 0.6;
transition: all 0.3s;
}
.trust-logos-row:hover {
filter: grayscale(0);
opacity: 1;
}
.trust-text {
font-size: 0.65rem !important;
color: #777;
line-height: 1.3;
margin: 0;
}
.sp-location-link {
color: #444;
text-decoration: none;
transition: all 0.2s ease;
display: inline-block;
padding: 2px 0;
}
.sp-location-link:hover {
color: var(--accent-color) !important;
transform: translateX(3px);
}
.sp-pin {
color: var(--accent-color);
font-size: 0.8rem;
margin-right: 5px;
}
/* SWAL & Diğer Form Elemanları */
.swal2-popup {
border-radius: 20px !important;
padding: var(--luv-swal-pad-y, 20px) var(--luv-swal-pad-x, 20px) !important;
box-sizing: border-box !important;
font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, -apple-system, BlinkMacSystemFont, sans-serif !important;
}
.swal2-styled.swal2-confirm,
.swal2-styled.swal2-cancel,
.swal2-styled.swal2-deny {
border-radius: 50px !important;
text-transform: uppercase;
letter-spacing: 1px;
font-size: 0.8rem !important;
padding: 12px 30px !important;
}
.swal2-popup .swal2-styled.swal2-confirm,
.swal2-popup .swal2-styled.swal2-cancel,
.swal2-popup .swal2-styled.swal2-deny {
background: #ffa8b5 !important;
color: #fff !important;
border: 1px solid #ffa8b5 !important;
transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.16s ease !important;
}
.swal2-popup .swal2-styled.swal2-confirm:hover,
.swal2-popup .swal2-styled.swal2-cancel:hover,
.swal2-popup .swal2-styled.swal2-deny:hover {
background: #fff !important;
background-image: none !important;
color: #ffa8b5 !important;
border-color: #ffa8b5 !important;
box-shadow: 0 0 0 2px rgba(255, 168, 181, 0.22) !important;
}
.swal2-popup .swal2-styled.swal2-confirm:focus,
.swal2-popup .swal2-styled.swal2-cancel:focus,
.swal2-popup .swal2-styled.swal2-deny:focus {
background: #ffa8b5 !important;
background-image: none !important;
color: #fff !important;
border-color: #ffa8b5 !important;
box-shadow: 0 0 0 2px rgba(255, 168, 181, 0.26) !important;
}
.swal2-popup .swal2-styled.swal2-confirm:hover,
.swal2-popup .swal2-styled.swal2-confirm:focus:hover,
.swal2-popup .swal2-styled.swal2-cancel:hover,
.swal2-popup .swal2-styled.swal2-cancel:focus:hover,
.swal2-popup .swal2-styled.swal2-deny:hover,
.swal2-popup .swal2-styled.swal2-deny:focus:hover {
background: #fff !important;
background-image: none !important;
color: #ffa8b5 !important;
border-color: #ffa8b5 !important;
box-shadow: 0 0 0 2px rgba(255, 168, 181, 0.22) !important;
}
.iti {
width: 100%;
display: block;
margin-bottom: 5px;
}
.form-control {
font-size: 0.8em !important;
}
.form-control.is-invalid,
.form-select.is-invalid,
.select2-container--bootstrap-5.is-invalid .select2-selection {
border-color: #ef4444 !important;
}
.select2-container--open,
.select2-dropdown {
z-index: 1000002 !important;
}
@media (max-width: 991px) {
body.luv-mobile-cart-open .select2-container--open,
body.luv-mobile-cart-open .select2-dropdown {
z-index: 1000002 !important;
}
}


/* ============================================================
[3.1] SEPET FİNANS ÖZETİ - ÜRÜN TOPLAMI (KDV HARİÇ) / KDV / KARGO / GENEL TOPLAM
============================================================ */
.luv-order-summary {
    background: linear-gradient(180deg, #ffffff 0%, #fff8fa 100%);
    border: 1px solid rgba(255, 168, 181, 0.35);
    border-radius: 14px;
    padding: 12px 13px;
    box-shadow: 0 8px 24px rgba(17, 17, 17, 0.05);
    margin-top: 10px;
}

.luv-order-summary-step2 {
    margin-top: -4px;
}

.luv-summary-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 7px 0;
    border-bottom: 1px dashed rgba(0, 0, 0, 0.08);
}

.luv-summary-row span {
    color: #000;
    font-size: 0.90rem;
    font-weight: 600;
}

.luv-summary-row strong {
    color: #000;
    font-size: 0.9rem;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
}

.luv-summary-row strong.text-success,
#shipping-amount-display.text-success,
#step2-shipping-amount-display.text-success {
    color: #198754 !important;
}

.luv-summary-row strong.text-danger,
#shipping-amount-display.text-danger,
#step2-shipping-amount-display.text-danger {
    color: #dc3545 !important;
}

.luv-summary-row strong.text-muted,
#shipping-amount-display.text-muted,
#step2-shipping-amount-display.text-muted {
    color: #777 !important;
}

/* Hediye çeki satırı sadece çek kullanıldığında JS ile açılır. */
.luv-summary-voucher-row {
    background: rgba(25, 135, 84, 0.045);
    border-radius: 9px;
    padding-left: 8px;
    padding-right: 8px;
}

.luv-summary-voucher-row span,
.luv-summary-voucher-row strong {
    color: #198754 !important;
}

/* Düşük/orta segment Android ve in-app browserlarda gereksiz repaint'i azaltır. */
.luv-order-summary,
.sidebar-sticky-wrapper,
.product-card {
    contain: layout paint;
}

@supports (content-visibility: auto) {
    .prod-item {
        content-visibility: auto;
        contain-intrinsic-size: 360px 520px;
    }
}

.luv-summary-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 8px;
    padding-top: 9px;
    border-top: 1px solid rgba(255, 168, 181, 0.5);
}

.luv-summary-total-row span {
    color: #111;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}

.luv-summary-total-row strong {
    color: #111;
    font-size: 1.02rem;
    font-weight: 900;
    white-space: nowrap;
}

@media (max-width: 991px) {
    .luv-order-summary {
        border-radius: 13px;
        padding: 11px 12px;
        margin-bottom: 10px;
    }

    .luv-summary-row {
        padding: 6px 0;
    }

    .luv-summary-row span,
    .luv-summary-row strong {
        font-size: 0.90rem;
    }

    .luv-summary-total-row strong {
        font-size: 0.98rem;
    }
}

@media (max-width: 360px) {
    .luv-summary-row span,
    .luv-summary-row strong {
        font-size: 0.68rem;
    }

    .luv-summary-total-row span {
        font-size: 0.72rem;
    }

    .luv-summary-total-row strong {
        font-size: 0.9rem;
    }
}


/* ============================================================
[3.2] PREMIUM AKSİYON BUTONLARI - SİPARİŞ / ÖDEME ADIMINA GEÇ / SEPETE DÖN
============================================================ */
.luv-primary-action-btn {
    width: 100%;
    background: #ffa8b5 !important;
    color: #fff !important;
    border: 1px solid #ffa8b5 !important;
    border-radius: 10px !important;
    padding: 11px 16px !important;
    min-height: 42px;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.7px;
    line-height: 1.25;
    text-transform: uppercase;
    box-shadow: 0 5px 15px rgba(255, 168, 181, 0.25);
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.16s ease, opacity 0.2s ease;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

.luv-primary-action-btn:hover,
.luv-primary-action-btn:focus {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    outline: none !important;
}

.luv-primary-action-btn:active {
    transform: scale(0.985);
}

.luv-primary-action-btn.is-disabled,
.luv-primary-action-btn:disabled {
    opacity: 0.5 !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}

#btn-proceed-payment,
#btn-go-back {
    position: relative;
    z-index: 99;
}

.btn-share-product {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

/* ============================================================
[5] YÜZEN BUTONLAR / ANİMASYONLAR - v51 PERFORMANCE
============================================================ */
/* v51: .fly-item sepete uçma animasyonu kaldırıldı. CSS kuralı bilinçli olarak bırakılmadı. */
.translating-blur {
filter: blur(2px);
transition: filter 0.3s;
pointer-events: none;
}
.tab-content-area {
display: none;
}
.tab-content-area.active {
display: block;
animation: fadeIn 0.4s ease forwards;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(10px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* Yukarı Çık Butonu (iOS safe-area ve will-change ile desteklendi) */
#backToTopBtn {
    position: fixed;
    /* GÜNCELLENDİ: Varsayılan olarak sepet yokmuş gibi 25px'te duracak */
    bottom: calc(25px + env(safe-area-inset-bottom, 0px));
    left: 50%;
    transform: translateX(-50%) translateY(100px);
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9998;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    opacity: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    text-decoration: none;
    color: #ffa8b5;
    opacity: .6;
    border: 2px solid #ffa8b5;
    will-change: transform, opacity;
    visibility: hidden;
}

/* YENİ EKLENEN: JS ile sepet açıldığında bu class butona eklenecek ve yukarı itecek */
#backToTopBtn.lifted {
    bottom: calc(85px + env(safe-area-inset-bottom, 0px));
}

#backToTopBtn.show {
transform: translateX(-50%) translateY(0);
opacity: 1;
visibility: visible;
animation: bounceLoop 2s infinite;
}

#backToTopBtn:hover {
background: #ffa8b5 !important;
color: #fff !important;
transform: translateX(-50%) scale(1.1) !important;
animation: none;
}

@keyframes bounceLoop {
0%,
20%,
50%,
80%,
100% {
transform: translateX(-50%) translateY(0);
}
40% {
transform: translateX(-50%) translateY(-10px);
}
60% {
transform: translateX(-50%) translateY(-5px);
}
}
/* Mini Whatsapp */
.btn-mini-whatsapp {
background-color: #25d366 !important;
border: none;
color: #fff !important;
width: 26px;
height: 26px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 1rem;
flex-shrink: 0;
animation: pulse-green 2s infinite;
text-decoration: none;
}
.btn-mini-whatsapp:hover {
background-color: #128c7e !important;
transform: scale(1.1);
}
@keyframes pulse-green {
0% {
transform: scale(1);
}
50% {
transform: scale(1.15);
}
100% {
transform: scale(1);
}
}
/* ============================================================
[6] OVERLAY (KARŞILAMA & YÜKLENİYOR) VE STORY
============================================================ */
#welcome-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, #111 0%, #000 100%);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
z-index: 10000;
transition: opacity 1s cubic-bezier(0.4, 0, 0.2, 1), visibility 1s;
}
#welcome-overlay.hidden-overlay {
opacity: 0;
visibility: hidden;
pointer-events: none;
}
.welcome-logo {
margin-bottom: 50px;
animation: fadeInLogo 1.5s ease-out;
}
.welcome-logo img {
height: 60px;
filter: brightness(0) invert(1);
}
.welcome-langs {
display: flex;
gap: 10px;
animation: fadeInText 2s ease-out;
}
.welcome-lang-item {
color: #888;
font-size: 0.6rem;
font-weight: 300;
letter-spacing: 4px;
text-decoration: none;
cursor: pointer;
position: relative;
transition: color 0.3s ease;
text-transform: uppercase;
}
.welcome-lang-item:hover {
color: #fff;
}
.welcome-lang-item::after {
content: "";
position: absolute;
width: 0;
height: 1px;
bottom: -5px;
left: 50%;
background-color: #fff;
transition: all 0.4s ease;
}
.welcome-lang-item:hover::after {
width: 100%;
left: 0;
}
.divider {
color: #333;
font-weight: 100;
}
@keyframes fadeInLogo {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInText {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
#luv-loading-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100svh;
background: rgb(255 255 255 / 85%);
z-index: 11000;
display: none;
flex-direction: column;
align-items: center;
justify-content: center;
backdrop-filter: blur(4px);
}
.pearl-container {
display: flex;
gap: 12px;
justify-content: center;
align-items: center;
height: 60px;
}
.pearl {
width: 25px;
height: 25px;
background-image: url("../pearl.png");
background-size: contain;
background-repeat: no-repeat;
animation: luv-mexican-wave 0.8s infinite ease-in-out;
}
.pearl:nth-child(1) {
animation-delay: 0s;
}
.pearl:nth-child(2) {
animation-delay: 0.1s;
}
.pearl:nth-child(3) {
animation-delay: 0.2s;
}
.pearl:nth-child(4) {
animation-delay: 0.3s;
}
.pearl:nth-child(5) {
animation-delay: 0.4s;
}
@keyframes luv-mexican-wave {
0%,
100% {
transform: translateY(0);
}
50% {
transform: translateY(-20px);
}
}
.loading-lang-text {
font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, -apple-system, BlinkMacSystemFont, sans-serif !important;
font-size: 0.75rem;
letter-spacing: 4px;
color: #000;
font-weight: 700;
text-transform: uppercase;
opacity: 0.8;
}
.story-item {
opacity: 0;
transform: translateY(30px);
transition: all 0.8s ease-out;
margin-bottom: 40px;
}
.story-item.reveal {
opacity: 1;
transform: translateY(0);
}
.story-img-wrap {
overflow: hidden;
border-radius: 15px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
.story-img-wrap img {
transition: transform 0.5s ease;
width: 100%;
height: auto;
display: block;
}
.story-img-wrap:hover img {
transform: scale(1.05);
}
.story-text {
font-size: 1.1rem;
line-height: 1.8;
color: #444;
padding: 20px;
font-weight: 400;
}
.story-text::first-letter {
font-size: 1.5rem;
color: #ffa8b5;
font-weight: bold;
}
/* ============================================================
[7] TRENDYOL REVIEW SLIDER
============================================================ */
.ty-reviews-slider {
padding: 20px 0 0 0;
overflow: hidden;
}
.swiper-slide {
height: auto !important;
display: flex;
}
.ty-review-card {
background: #fff;
border-radius: 15px;
border: 1px solid #eee;
padding: 12px;
width: 100%;
height: 100%;
display: flex;
flex-direction: row;
align-items: stretch;
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.ty-review-card:hover {
transform: translateY(-5px);
border-color: #ffa8b5;
}
.ty-img-wrap {
width: 90px;
aspect-ratio: 1 / 1;
background: #f9f9f9;
border-radius: 10px;
overflow: hidden;
margin-right: 12px;
flex-shrink: 0;
cursor: pointer;
position: relative;
}
.ty-img-wrap img {
width: 100% !important;
height: 100% !important;
object-fit: cover;
display: block;
}
.ty-review-content {
display: flex;
flex-direction: column;
flex: 1;
min-width: 0;
}
.ty-stars {
color: #ffb800;
font-size: 0.75rem;
margin-bottom: 4px;
}
.ty-product-name {
font-size: 0.6rem;
font-weight: 700;
color: #888;
text-transform: uppercase;
margin-bottom: 4px;
}
.ty-comment {
font-size: 0.7rem;
color: #444;
line-height: 1.4;
font-style: italic;
margin-bottom: 10px;
flex-grow: 1;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.ty-go-store {
margin-top: auto;
display: block;
text-align: center;
background: #fff;
border: 1px solid #ffa8b5;
color: #ffa8b5;
font-size: 0.6rem;
font-weight: 800;
padding: 6px;
border-radius: 50px;
text-decoration: none;
transition: 0.3s;
}
.ty-go-store:hover {
background: #ffa8b5;
color: #fff;
}
.ty-go-store span {
display: inline-block;
vertical-align: middle;
}
.ty-brand-verify {
position: absolute;
top: 12px;
right: 12px;
width: 45px;
height: auto;
z-index: 10;
opacity: 0.9;
pointer-events: none;
}
@media (min-width: 992px) {
#backToTopBtn {
bottom: calc(25px + env(safe-area-inset-bottom, 0px)) !important;
}
.ty-review-card {
padding: 18px;
}
.ty-img-wrap {
width: 130px;
margin-right: 20px;
}
.ty-comment {
font-size: 0.75rem;
-webkit-line-clamp: 5;
}
.ty-go-store {
font-size: 0.65rem;
padding: 8px;
}
}
.mySwiper {
padding-bottom: 30px !important;
margin-bottom: 10px;
}
.mySwiper.swiper-pagination-clickable {
padding-bottom: 45px !important;
margin-bottom: 30px !important;
}
.swiper-pagination {
bottom: 5px !important;
display: flex;
align-items: center;
justify-content: center;
}
.swiper-pagination-bullet {
width: 8px !important;
height: 8px !important;
background: #e0e0e0 !important;
opacity: 1 !important;
margin: 0 5px !important;
transition: all 0.3s ease-in-out;
border-radius: 50%;
}
.swiper-pagination-bullet-active {
background: #ffa8b5 !important;
width: 22px !important;
border-radius: 10px !important;
}
.swiper-button-next,
.swiper-button-prev {
color: #ffa8b5 !important;
transform: scale(0.5);
top: 50% !important;
margin-top: -20px;
}
.mySwiper:not(.swiper-initialized) .swiper-wrapper {
display: flex;
}
.mySwiper:not(.swiper-initialized) .swiper-slide {
width: 50% !important;
padding: 0 12px;
}
/* ============================================================
[8] PROMO BANNER VE SEKME
============================================================ */
#promo-banner-overlay {
position: fixed;
top: 0;
left: 0;
width: 90%;
margin: 10px 5% 0px 5%;
z-index: 1060;
background: #fffffff7;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
display: none;
padding: 15px 20px 25px;
border-bottom: 2px solid #ffa8b5;
}
.promo-banner-content {
display: flex;
align-items: center;
gap: 15px;
max-width: 100%;
margin: 0 auto;
position: relative;
}
.promo-img-wrap {
width: 80px;
height: 80px;
flex-shrink: 0;
border-radius: 8px;
overflow: hidden;
background: #f9f9f9;
}
.promo-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
cursor: pointer;
transition: transform 0.3s;
}
.promo-img-wrap img:hover {
transform: scale(1.05);
}
.promo-details {
flex-grow: 1;
min-width: 0;
}
.promo-title {
font-size: 0.95rem;
font-weight: 800;
margin-bottom: 3px;
color: #111;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-align: left;
}
.promo-desc {
font-size: 0.75rem;
color: #666;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
margin-bottom: 5px;
line-height: 1.3;
}
.promo-coupon-text {
font-size: 0.7rem;
font-weight: 700;
color: #28a745;
background: rgba(40, 167, 69, 0.1);
padding: 3px 8px;
border-radius: 4px;
display: inline-block;
}
.promo-action {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 8px;
min-width: 120px;
margin-right: 20px;
padding-top: 5px;
}
.promo-close {
position: absolute;
top: -10px;
right: 0px;
padding: 5px;
cursor: pointer;
color: #ccc;
font-size: 1.2rem;
transition: 0.3s;
z-index: 10;
}
.promo-close:hover {
color: #ffa8b5;
}
#promo-reopen-tab {
position: fixed;
top: 0;
left: 50%;
transform: translateX(-50%);
background: #fff;
border: 1px solid #ffa8b5;
border-top: none;
padding: 5px 20px;
border-bottom-left-radius: 20px;
border-bottom-right-radius: 20px;
z-index: 1055;
cursor: pointer;
box-shadow: 0 4px 10px rgba(255, 168, 181, 0.3);
display: none;
color: #ffa8b5;
transition: all 0.3s ease;
animation: slideInDown 0.5s ease-out;
}
#promo-reopen-tab:hover {
padding-top: 10px;
background: #ffa8b5;
color: #fff;
}
@keyframes slideInDown {
from {
transform: translateX(-50%) translateY(-100%);
}
to {
transform: translateX(-50%) translateY(0);
}
}
/* ============================================================
[9] MOBİL OPTİMİZASYON (MEDIA QUERIES)
============================================================ */
/* 991px ve Altı (Tablet & Telefon - Navbar ve Sepet Düzeni) */
@media (max-width: 991px) {
/* Navbar Sticky Düzeltmesi - Kesilmeleri Önler */
.navbar-sp {
position: -webkit-sticky; /* iOS Safari Desteği */
position: sticky;
top: 0;
left: 0;
width: 100%;
z-index: 1050;
background: #ffffffeb;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
padding: 10px 0 !important;
}
.navbar-brand-img {
height: 30px !important;
}
.logo-center-wrapper {
position: absolute !important;
left: 50% !important;
top: 50% !important;
transform: translate(-50%, -50%) !important;
margin: 0 !important;
z-index: 1000;
display: flex;
align-items: center;
}
.navbar-sp .d-flex.position-relative {
min-height: 40px;
}
.navbar-sp .border-top {
margin-top: 15px !important;
padding-top: 12px !important;
}
.navbar-sp img:not(.trendyol-nav-link img) {
height: 45px !important;
padding: 10px 20px;
}
.trendyol-nav-link {
border: none !important;
padding: 0 !important;
display: flex !important;
align-items: center !important;
line-height: 1 !important;
}
.insta-nav-link i {
display: block;
margin-top: 1px;
}
.nav-tab-link-mobile {
padding: 8px 0;
font-size: 0.6rem;
text-align: center;
border-bottom-width: 3px;
}
.lang-switch-container {
margin-top: 2px !important;
}
/* Layout & Checkout */
#cartSectionContainer {
margin-top: 40px;
}
.sidebar-sticky-wrapper {
display: flex;
flex-direction: column;
}
.alt-payment-box {
order: 99 !important;
}
.shipping-note-box {
order: 100 !important;
}
#cart-area {
order: -2;
}
}
.mySwiper:not(.swiper-initialized) .swiper-slide {
width: 100% !important;
}
.ty-brand-verify {
width: 35px;
top: 4px;
right: 4px;
}
.promo-banner-content {
flex-wrap: wrap;
padding-right: 15px;
}
.promo-img-wrap {
width: 70px;
height: 70px;
flex-shrink: 0;
}
.promo-details {
flex-grow: 1;
width: calc(100% - 90px);
}
.promo-action {
width: 100%;
flex-direction: row;
justify-content: space-between;
align-items: center;
border-top: 1px solid #eee;
padding-top: 10px;
margin-top: 10px;
margin-right: 0;
}
.promo-close {
top: 0;
}
/* 576px ve Altı (Küçük Telefonlar) */
@media (max-width: 576px) {
.trendyol-card-link {
bottom: 5px;
right: 5px;
}
.trendyol-card-link img {
width: 35px;
}
}
/* Sepete tıklandığında menünün altında kalmaması için güvenli bölge */
#cartSectionContainer {
scroll-margin-top: 140px !important; /* Masaüstü için menü payı */
}
@media (max-width: 991px) {
#cartSectionContainer {
scroll-margin-top: 110px !important; /* Mobil için menü payı */
}
}
.pswp__img {
object-fit: contain !important;
}
.pswp {
z-index: 2147483005 !important;
}
/* === MOBİL SEPET (SLIDE DOWN OVERLAY) EFEKTİ VE YAPIŞKAN ÜST BAR === */
@media (max-width: 991px) {
#cartSectionContainer {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100svh;
background: rgba(255, 255, 255, 0.98);
backdrop-filter: blur(10px);
z-index: 100000;
margin: 0 !important;
/* 1. DEĞİŞİKLİK: Konteynerin üst, sağ ve sol boşluklarını SIFIRLADIK.
Böylece pembe bar ekranın tam köşelerine sıfıra sıfır oturur. */
padding: 0 0 100px 0 !important;
overflow-y: auto;
transform: translateY(-100%);
transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
display: block !important;
}
#cartSectionContainer.cart-open {
transform: translateY(0);
}
/* 2. DEĞİŞİKLİK: Pembe Bar'ı "Sticky" Yaptık */
.mobile-cart-top-bar {
position: sticky; /* Ekranda kaydırılsa bile hep en tepede asılı kalır */
top: 0; /* En üst noktaya yapıştırır */
width: 100%;
background-color: #ffa8b5;
color: #111;
display: flex;
align-items: center;
justify-content: center;
padding: 15px 20px;
box-shadow: 0 4px 15px rgba(255, 168, 181, 0.3);
cursor: pointer;
z-index: 100005; /* Ürünler scroll olurken bu barın "altından" geçip gider */
transition: background-color 0.2s ease;
}
.mobile-cart-top-bar::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: -10px;
height: 10px;
}
.mobile-cart-top-bar:active {
background-color: #ff90a0;
}
.mctb-text {
font-size: 0.75rem;
font-weight: 800;
letter-spacing: 0.5px;
}
.mctb-icon {
position: absolute;
right: 20px;
font-size: 1.2rem;
}
/* 3. DEĞİŞİKLİK: Ürünlerin ve formun ekran kenarlarına yapışmaması için
boşlukları (padding) buraya ekledik. Ürünler barın üstüne binmez. */
#cartSectionContainer .sidebar-sticky-wrapper {
box-shadow: none !important;
background: transparent !important;
padding: 20px 15px !important;
}
}
/* SweetAlert uyarılarını sepetin (ve her şeyin) en üstüne çıkartır */
.swal2-container {
z-index: 2147483600 !important;
}
/* ============================================================
[10] SEPET +/- BUTON RENKLENDİRMELERİ
============================================================ */
/* Eksi Butonu (Hafif Kırmızı) */
.cart-minus-btn {
color: #ef4444 !important; /* Tatlı, hafif bir kırmızı */
transition: all 0.2s ease;
}
.cart-minus-btn:hover {
color: #b91c1c !important; /* Üzerine gelince biraz koyulaşır */
transform: scale(1.1);
}
/* Artı Butonu (Stok bitince eklenecek soluk class'ı) */
.disabled-plus {
opacity: 0.25 !important; /* Çok soluk */
pointer-events: none !important; /* Tıklanmayı tamamen engeller */
cursor: not-allowed !important;
filter: grayscale(100%);
}
/* Mobilde sepetin aşağı doğru kayarak kapanması için */
#cartSectionContainer.cart-closing-down {
transform: translateY(100vh) !important; /* Ekranın en altına iter */
transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; /* Akıcı bir düşüş */
}
/* Sepeti arkadan gizlice yukarı alırken animasyonu iptal eden kilit */
#cartSectionContainer.cart-resetting {
transition: none !important;
}
/* Yeni Ürün Rozeti Tasarımı */
.badge-new-animated {
background-color: #ffa8b5;
color: #ffffff;
z-index: 10;
font-size: 0.6rem;
font-weight: 700;
padding: 5px 10px;
letter-spacing: 1px;
border-radius: 10px; /* Daha modern bir görünüm için yuvarlatıldı */
text-transform: uppercase;

/* Animasyon Tanımı */
animation: badge-pulse 2s infinite ease-in-out;
box-shadow: 0 0 0 rgba(255, 168, 181, 0.4);
}

/* Yanıp Sönme ve Parlama Animasyonu */
@keyframes badge-pulse {
0% {
transform: scale(1);
opacity: 1;
}
50% {
transform: scale(1.05);
opacity: 0.8;
}
100% {
transform: scale(1);
opacity: 1;
}
}
/* MOBİL SEPET KAYDIRMA VE GÖRÜNÜM DÜZELTMELERİ */
@media (max-width: 991px) {
    /* 1. Mobilde formun takılmadan kaymasını sağlar (Özellikle iOS / iPhone için kritik) */
    #cartSectionContainer {
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important; /* Pürüzsüz kaydırma sağlar */
        overscroll-behavior: contain !important; /* Sen sepeti kaydırırken arkaplandaki sitenin kaymasını engeller */
        padding-bottom: calc(60px + env(safe-area-inset-bottom)) !important;
        z-index: 999999 !important; /* Sepet açıkken sayfanın en üst katmanı olmasını garantiler */
    }
    
    /* 2. Garanti olsun diye Glass Bar'ın katmanını sepetin altında bırakıyoruz */
    #glass-cart-bar {
        z-index: 99990 !important;
    }
}
/* ============================================================
   FORM YÜKSEKLİK VE RAHATLATMA AYARI (Yazı boyutu sabit)
============================================================ */
.form-control,
.form-select,
.select2-selection {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    height: auto !important;
	font-size: 0.8rem;
}

/* Ülke kodlu Telefon alanı (intl-tel-input) için eşitleme */
.iti input[type="tel"] {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    height: auto !important;
}

/* İndirim kodu gibi butonlu yan yana alanların hizası bozulmasın diye */
.input-group .form-control {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}


/* ============================================================
[15] PERFORMANCE / LOW-END DEVICE SAFETY
- Kullanıcı cihazı hareket azaltma istiyorsa animasyonları minimuma indirir.
- Eski Android WebView / Instagram in-app gibi ortamlarda takılmayı azaltır.
============================================================ */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: 0.001ms !important;
    }

    .luv-infinity-slider-track,
    .badge-new-animated,
    .btn-mini-whatsapp,
    #backToTopBtn.show {
        animation: none !important;
    }
}


/* ============================================================
[99] SON KATMAN GÜVENLİ OVERRIDE - ÖDEME / SEPETE DÖN BUTONLARI
Amaç: Bootstrap, eski inline stiller veya cache yüzünden butonların beyaz görünmesini engellemek.
============================================================ */
#btn-proceed-payment.luv-primary-action-btn,
#btn-go-back.luv-primary-action-btn,
button#btn-proceed-payment,
button#btn-go-back {
    background-color: #111111 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #111111 !important;
    border-radius: 10px !important;
    min-height: 44px !important;
    padding: 12px 16px !important;
    font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    line-height: 1.25 !important;
    text-transform: uppercase !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16) !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: transparent !important;
}

#btn-proceed-payment.luv-primary-action-btn:hover,
#btn-go-back.luv-primary-action-btn:hover,
#btn-proceed-payment.luv-primary-action-btn:focus,
#btn-go-back.luv-primary-action-btn:focus {
    background-color: #ffa8b5 !important;
    border-color: #ffa8b5 !important;
    color: #ffffff !important;
    outline: none !important;
}

#btn-proceed-payment.luv-primary-action-btn:active,
#btn-go-back.luv-primary-action-btn:active {
    transform: scale(0.985) !important;
}

#btn-proceed-payment.luv-primary-action-btn.is-disabled,
#btn-proceed-payment.luv-primary-action-btn:disabled {
    opacity: 0.45 !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
}


/* ============================================================
[07.1] PROMO BANNER CLOSE BUTTON SAFE STYLE
============================================================ */
.promo-close {
    background: transparent !important;
    border: none !important;
    appearance: none;
    -webkit-appearance: none;
    line-height: 1;
}
.promo-close i {
    pointer-events: none;
}


/* [99] v51 reduced-motion generic block removed: already covered in [15]. */

/* Mobilde hover transform gereksiz repaint oluşturmasın. */
@media (hover: none), (max-width: 991px) {
    .product-card:hover,
    .ty-review-card:hover,
    .btn-share-product:hover,
    .trendyol-card-link:hover {
        transform: none !important;
    }
}


/* ============================================================
[11.2] CANLI DESTEK TIKLANABİLİR ALANLAR
============================================================ */
.js-open-live-support {
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(255, 168, 181, 0.16);
}
.js-open-live-support:active {
    transform: scale(0.98);
}


/* ============================================================
[99] PAGESPEED SAFE PATCH V60 - MOBIL ILK YUKLEME
============================================================ */
.navbar-brand-img { contain: layout paint; }
@media (max-width: 768px) {
  .product-card:hover, .btn-share-product:hover, .trendyol-card-link:hover, .luv-social-link-minimal:hover { transform: none !important; }
  .glass-bottom-bar { transition: transform .28s ease, opacity .28s ease !important; }
}

/* v61: Lazy-loaded gallery/swiper CSS is loaded only on demand from JS. */


/* ============================================================
[PAGE SPEED V62] SYSTEM FONT + LATE ICON FONT FALLBACK
============================================================ */
.fa, .fas, .far, .fab {
  min-width: 1em;
  display: inline-block;
  text-align: center;
}

/* ============================================================
[100] FINAL HEADER / HERO / ACCESSIBILITY PATCH - NO INLINE STYLE
Amaç: index.php içine style yazmadan PageSpeed + erişilebilirlik düzeltmelerini CSS üzerinden yönetmek.
============================================================ */
/* Varsayılan olarak Gel-Al noktalarını gizle */
.pickup-points-wrap {
    display: none !important;
}

/* Eğer body'de 'show-pickup-points' class'ı varsa göster */
body.show-pickup-points .pickup-points-wrap {
	text-align: center;
    display: block !important;
}

/* Header logo: önceki yüksekliği daraltıldı, inline style kaldırıldı. */
.logo-center-wrapper .navbar-brand-img,
.navbar-brand-img {
    height: 30px !important;
    width: auto !important;
    max-width: 154px;
    padding: 0 !important;
    object-fit: contain;
}

/* Ana sayfa kapak/header görseli: daha dar ve stabil yükseklik. */
.luv-hero-cover-img {
    display: block;
    width: 100%;
    height: clamp(86px, 24vw, 170px);
    object-fit: cover;
    object-position: center;
    aspect-ratio: 3300 / 896;
}

.lang-btn,
.nav-tab-link-mobile,
.nav-tab-link {
    min-width: 30px;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lang-btn:not(.active),
.nav-tab-link-mobile:not(.active-tab),
.nav-tab-link:not(.active-tab) {
    color: #000 !important;
}

.trendyol-card-link,
.product-card a[data-pswp-item="true"],
.pswp-trigger,
.trendyol-nav-link,
.insta-nav-link {
    min-width: 30px;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 991px) {
    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 26px !important;
        padding: 0 !important;
    }

    .luv-hero-cover-img {
        height: clamp(78px, 22vw, 115px);
    }
}

@media (max-width: 576px) {
    .luv-hero-cover-img {
        height: 92px;
    }
}
@media (max-width: 350px) {
    .navbar-sp img:not(.trendyol-nav-link img) {
        height: 30px !important;
    }
}

/* ============================================================
[100] SWEETALERT GLOBAL MOBILE STANDARD - COMPACT ICON + READABLE TEXT
============================================================ */
.swal2-popup.luv-swal-standard {
    width: min(90vw, 330px) !important;
    padding: 1rem 0.95rem 0.9rem !important;
    border-radius: 18px !important;
}

.swal2-popup.luv-swal-standard .swal2-title,
.swal2-title.luv-swal-title-standard {
    font-size: clamp(1rem, 4.1vw, 1.08rem) !important;
    line-height: 1.22 !important;
    font-weight: 800 !important;
    margin: 0.35rem 0 0 !important;
    padding: 0 !important;
}

.swal2-popup.luv-swal-standard .swal2-html-container,
.swal2-html-container.luv-swal-text-standard {
    font-size: clamp(0.82rem, 3.45vw, 0.9rem) !important;
    line-height: 1.38 !important;
    margin: 0.45rem 0 0 !important;
    padding: 0 0.1rem !important;
}

.swal2-icon.luv-swal-icon-standard {
    width: clamp(42px, 13.5vw, 52px) !important;
    height: clamp(42px, 13.5vw, 52px) !important;
    margin: 0.45rem auto 0.35rem !important;
    border-width: 0.16em !important;
    font-size: 0.72rem !important;
}

.swal2-icon.luv-swal-icon-standard .swal2-icon-content {
    font-size: clamp(1.55rem, 6vw, 2rem) !important;
}

.swal2-popup.luv-swal-standard .swal2-actions {
    margin: 0.85rem auto 0 !important;
}

.swal2-styled.swal2-confirm.luv-swal-confirm-standard {
    min-height: 38px !important;
    padding: 9px 24px !important;
    font-size: 0.72rem !important;
    border-radius: 999px !important;
}

.swal2-popup.luv-swal-standard .swal2-timer-progress-bar-container {
    height: 0.2em !important;
}

/* ============================================================
[SWEETALERT CENTER] Store genel popup tema merkezi
Buton, hover, arka plan ve özel Swal içi aksiyonlar buradan yönetilir.
============================================================ */
:root {
    --luv-swal-bg: #111;
    --luv-swal-bg-soft: #1a1a1a;
    --luv-swal-border: #333;
    --luv-swal-text: #fff;
    --luv-swal-muted: #ccc;
    --luv-swal-soft-muted: #999;
    --luv-swal-accent: #ffa8b5;
    --luv-swal-accent-soft: rgba(255, 168, 181, 0.22);
    --luv-swal-pad-x: 20px;
    --luv-swal-pad-y: 20px;
}

.swal2-popup.luv-swal-standard,
.swal2-popup.luv-manual-order-swal,
.swal2-popup.luv-payment-error-popup,
.swal2-popup.luv-payment-processing-popup {
    background: var(--luv-swal-bg) !important;
    color: var(--luv-swal-text) !important;
    border: 1px solid rgba(255, 168, 181, 0.45) !important;
    box-shadow: 0 18px 60px rgba(0, 0, 0, 0.45) !important;
    width: min(92vw, 380px) !important;
    padding: var(--luv-swal-pad-y) var(--luv-swal-pad-x) !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
}

.swal2-popup.luv-swal-standard .swal2-title,
.swal2-popup.luv-swal-standard .swal2-html-container,
.swal2-popup.luv-manual-order-swal .swal2-title,
.swal2-popup.luv-manual-order-swal .swal2-html-container,
.swal2-popup.luv-payment-error-popup .swal2-title,
.swal2-popup.luv-payment-error-popup .swal2-html-container {
    color: var(--luv-swal-text) !important;
}

.swal2-popup.luv-swal-standard .swal2-html-container,
.swal2-popup.luv-manual-order-swal .swal2-html-container,
.swal2-popup.luv-payment-error-popup .swal2-html-container {
    color: #e9e9e9 !important;
}

.swal2-popup.luv-payment-processing-popup .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
}
.luv-payment-processing-content {
    padding: 0.15rem 0 0.05rem !important;
    text-align: center !important;
}
.luv-payment-processing-logo {
    margin-bottom: 0.85rem !important;
}
.luv-payment-processing-spinner {
    width: 2.45rem !important;
    height: 2.45rem !important;
    color: var(--luv-swal-accent) !important;
    border-width: 3px !important;
}
.luv-payment-processing-title {
    letter-spacing: 2px !important;
    font-size: 0.76rem !important;
    line-height: 1.25 !important;
    color: var(--luv-swal-accent) !important;
    font-weight: 800 !important;
    margin-top: 1rem !important;
}
.luv-payment-processing-desc {
    color: var(--luv-swal-muted) !important;
    font-size: 0.74rem !important;
    line-height: 1.42 !important;
    margin: 0.55rem 0 0 !important;
}

.swal2-popup .luv-swal-actions-standard,
.luv-swal-actions-wrap {
    gap: 10px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    max-width: 100% !important;
}

.swal2-popup .luv-swal-btn,
.swal2-popup .luv-swal-confirm-standard,
.swal2-popup .luv-swal-cancel-standard,
.swal2-popup .luv-swal-deny-standard,
.swal2-popup .luv-swal-confirm-btn,
.swal2-popup .luv-swal-cancel-btn,
.swal2-popup .luv-swal-clear-btn,
.swal2-popup .vip-btn-style,
.swal2-popup .luv-success-btn {
    min-height: 38px !important;
    min-width: 120px !important;
    padding: 10px 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid var(--luv-swal-accent) !important;
    border-radius: 999px !important;
    background: var(--luv-swal-accent) !important;
    background-image: none !important;
    color: var(--luv-swal-text) !important;
    box-shadow: none !important;
    font-weight: 800 !important;
    font-size: 0.72rem !important;
    line-height: 1.15 !important;
    letter-spacing: .7px !important;
    text-transform: uppercase !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
    cursor: pointer !important;
    outline: none !important;
    transition: background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .16s ease !important;
}

.swal2-popup .swal2-styled[hidden],
.swal2-popup .swal2-styled.swal2-hide,
.swal2-popup .swal2-styled[style*="display: none"],
.swal2-popup .swal2-styled[style*="display:none"] {
    display: none !important;
}

.swal2-popup .swal2-deny:not(.luv-swal-deny-standard),
.swal2-popup .swal2-cancel:not(.luv-swal-cancel-standard):not(.luv-swal-cancel-btn):not(.luv-swal-clear-btn) {
    display: none !important;
}

.swal2-popup .luv-swal-btn:hover,
.swal2-popup .luv-swal-btn:focus:hover,
.swal2-popup .luv-swal-confirm-standard:hover,
.swal2-popup .luv-swal-cancel-standard:hover,
.swal2-popup .luv-swal-deny-standard:hover,
.swal2-popup .luv-swal-confirm-btn:hover,
.swal2-popup .luv-swal-cancel-btn:hover,
.swal2-popup .luv-swal-clear-btn:hover,
.swal2-popup .vip-btn-style:hover,
.swal2-popup .luv-success-btn:hover {
    background: #fff !important;
    background-image: none !important;
    color: var(--luv-swal-accent) !important;
    border-color: #fff !important;
    box-shadow: 0 0 0 2px var(--luv-swal-accent-soft) !important;
    transform: translateY(-1px);
}

.swal2-popup .luv-swal-btn:focus,
.swal2-popup .luv-swal-confirm-standard:focus,
.swal2-popup .luv-swal-cancel-standard:focus,
.swal2-popup .luv-swal-deny-standard:focus,
.swal2-popup .luv-swal-confirm-btn:focus,
.swal2-popup .luv-swal-cancel-btn:focus,
.swal2-popup .luv-swal-clear-btn:focus,
.swal2-popup .vip-btn-style:focus,
.swal2-popup .luv-success-btn:focus {
    box-shadow: 0 0 0 3px rgba(255, 168, 181, .28) !important;
}

.swal2-popup.luv-customer-autofill-popup {
    width: min(92vw, 430px) !important;
    max-width: 92vw !important;
    box-sizing: border-box !important;
    padding: var(--luv-swal-pad-y) var(--luv-swal-pad-x) !important;
}

.swal2-popup.luv-customer-autofill-popup .swal2-html-container {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.swal2-popup.luv-payment-error-popup {
    width: min(92vw, 430px) !important;
}

.swal2-popup.luv-customer-autofill-popup .luv-swal-actions-wrap {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.swal2-popup.luv-customer-autofill-popup .luv-swal-confirm-btn,
.swal2-popup.luv-customer-autofill-popup .luv-swal-cancel-btn {
    flex: 1 1 145px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-align: center !important;
}

@media (max-width: 390px) {
    .swal2-popup.luv-customer-autofill-popup .luv-swal-confirm-btn,
    .swal2-popup.luv-customer-autofill-popup .luv-swal-cancel-btn {
        flex-basis: 100% !important;
    }
}

.swal2-close {
    color: var(--luv-swal-muted) !important;
    font-size: 2em !important;
    transition: color .18s ease, background-color .18s ease !important;
}

.swal2-close:hover {
    color: var(--luv-swal-accent) !important;
    background: transparent !important;
}

.swal2-timer-progress-bar {
    height: 4px !important;
    background: var(--luv-swal-accent) !important;
}

.luv-share-btn {
    background: var(--luv-swal-bg-soft);
    color: var(--luv-swal-text);
    border: 1px solid var(--luv-swal-border);
    border-radius: 12px;
    padding: 14px 20px;
    font-size: 0.9rem;
    text-align: left;
    transition: all .18s ease;
    display: flex;
    align-items: center;
    gap: 15px;
    cursor: pointer;
    width: 100%;
    font-weight: 700;
    outline: none;
}

.luv-share-btn:hover,
.luv-share-btn:focus {
    background: #222;
    border-color: var(--luv-swal-accent);
    transform: translateY(-2px);
}

.luv-share-btn i {
    font-size: 1.4rem;
    width: 25px;
    text-align: center;
}

.luv-share-btn.ig i { color: #E1306C; }
.luv-share-btn.wa i { color: #25D366; }
.luv-share-btn.fb i { color: #1877F2; }
.luv-share-btn.tg i { color: #2AABEE; }
.luv-share-btn.x i { color: #fff; }
.luv-share-btn.copy {
    background: rgba(255, 168, 181, 0.1);
    border-color: rgba(255, 168, 181, 0.3);
    color: var(--luv-swal-accent);
}
.luv-share-btn.copy:hover,
.luv-share-btn.copy:focus {
    background: var(--luv-swal-accent);
    color: #111;
}
.luv-share-btn.copy i { color: inherit; }

.customer-select-option {
    border: 2px solid var(--luv-swal-border) !important;
    background: var(--luv-swal-bg-soft) !important;
    padding: 15px;
    border-radius: 12px;
    cursor: pointer;
    text-align: left;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    transition: all .18s ease !important;
}

.customer-select-option i {
    color: var(--luv-swal-accent) !important;
    margin-right: 15px;
    font-size: 1.5rem;
    transition: color .18s ease !important;
}

.customer-select-option .cust-name-text {
    color: var(--luv-swal-text) !important;
    font-weight: 800;
    font-size: 0.85rem;
    display: block;
    transition: color .18s ease !important;
}

.customer-select-option .cust-email-text {
    color: var(--luv-swal-soft-muted) !important;
    font-size: 0.65rem;
    transition: color .18s ease !important;
}

.customer-select-option:hover,
.customer-select-option:focus {
    background: var(--luv-swal-accent) !important;
    border-color: var(--luv-swal-accent) !important;
}

.customer-select-option:hover i,
.customer-select-option:hover .cust-name-text,
.customer-select-option:focus i,
.customer-select-option:focus .cust-name-text {
    color: var(--luv-swal-text) !important;
}

.customer-select-option:hover .cust-email-text,
.customer-select-option:focus .cust-email-text {
    color: #ffecec !important;
}

.luv-thanks-sub {
    color: var(--luv-swal-accent);
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
    margin-bottom: 25px;
    letter-spacing: 1px;
}

.luv-order-label {
    color: #888;
    font-size: 0.65rem;
    font-weight: 800;
    text-transform: uppercase;
}

.luv-order-value {
    color: var(--luv-swal-text);
    font-size: 0.85rem;
    font-weight: 800;
    letter-spacing: 0.5px;
}

.luv-swal-cart-clear .luv-swal-clear-btn {
    min-width: 145px !important;
}

@media (max-width: 420px) {
    :root {
        --luv-swal-pad-x: 20px;
        --luv-swal-pad-y: 20px;
    }

    .swal2-popup .luv-swal-actions-standard,
    .luv-swal-actions-wrap {
        width: 100% !important;
    }
    .swal2-popup .luv-swal-btn,
    .swal2-popup .luv-swal-confirm-standard,
    .swal2-popup .luv-swal-cancel-standard,
    .swal2-popup .luv-swal-deny-standard,
    .swal2-popup .luv-swal-confirm-btn,
    .swal2-popup .luv-swal-cancel-btn,
    .swal2-popup .luv-swal-clear-btn {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        white-space: normal !important;
    }
}

/* SweetAlert spacing final guard: every themed popup keeps the same inner breathing room. */
.swal2-popup.luv-swal-standard,
.swal2-popup.luv-manual-order-swal,
.swal2-popup.luv-payment-error-popup,
.swal2-popup.luv-payment-processing-popup,
.swal2-popup.luv-customer-autofill-popup,
.swal2-popup.luv-swal-cart-clear {
    padding: var(--luv-swal-pad-y, 20px) var(--luv-swal-pad-x, 20px) !important;
    box-sizing: border-box !important;
}

.swal2-popup.luv-customer-autofill-popup > .swal2-html-container,
.swal2-popup.luv-swal-standard > .swal2-html-container,
.swal2-popup.luv-manual-order-swal > .swal2-html-container,
.swal2-popup.luv-payment-error-popup > .swal2-html-container {
    max-width: 100% !important;
    box-sizing: border-box !important;
}


/* ============================================================
[FINAL PATCH] PRODUCT RATIO / LANG MOBILE / SWEETALERT ICON
============================================================ */
.luv-ratio-3x4 { --bs-aspect-ratio: 133.333%; }
.luv-ratio-3x4 img { width: 100%; height: 100%; object-fit: cover; }

/* 350px ve altı eski telefonlarda dil butonları logoya yapışmasın. */
@media (max-width: 350px) {
    .lang-switch-container {
        gap: 0 !important;
        column-gap: 0 !important;
        margin-left: -2px !important;
    }
    .lang-switch-container .lang-btn {
        min-width: 24px !important;
        min-height: 28px !important;
        padding-left: 1px !important;
        padding-right: 1px !important;
        font-size: 0.62rem !important;
        letter-spacing: 0 !important;
    }
}

/* SweetAlert ikonları: tüm confirm/success/warning ikonları daha kompakt. */
.swal2-icon.luv-swal-icon-standard,
.swal2-popup.luv-swal-standard .swal2-icon {
    width: clamp(24px, 7.5vw, 30px) !important;
    height: clamp(24px, 7.5vw, 30px) !important;
    min-width: clamp(24px, 7.5vw, 30px) !important;
    min-height: clamp(24px, 7.5vw, 30px) !important;
    margin: 0.38rem auto 0.28rem !important;
    border-width: 0.12em !important;
    font-size: 0.46rem !important;
}
.swal2-icon.luv-swal-icon-standard .swal2-icon-content,
.swal2-popup.luv-swal-standard .swal2-icon .swal2-icon-content {
    font-size: clamp(0.95rem, 3.9vw, 1.15rem) !important;
}
.swal2-popup.luv-swal-standard .swal2-success-line-tip,
.swal2-popup.luv-swal-standard .swal2-success-line-long {
    height: 0.18em !important;
}
.swal2-popup.luv-swal-standard .swal2-success-ring {
    border-width: 0.12em !important;
}


/* ============================================================
[FINAL MICRO PATCH] HEADER SOCIAL / PRODUCT WHATSAPP / HERO SOFT SPARKLE
- SweetAlert ve voucher/teslimat buton mantığına dokunmaz.
============================================================ */
/* 350px ve altı eski cihazlarda sağ üst Instagram + Trendyol alanı daha sıkı ve küçük. */
@media (max-width: 350px) {
    .navbar-sp .order-3 {
        gap: 2px !important;
    }
    .navbar-sp .order-3 .insta-nav-link,
    .navbar-sp .order-3 .trendyol-nav-link {
        min-width: 24px !important;
        min-height: 26px !important;
        padding: 0 1px !important;
    }
    .navbar-sp .order-3 .insta-nav-link i {
        font-size: 1.02rem !important;
    }
    .navbar-sp .order-3 .trendyol-nav-link img {
        width: 38px !important;
        height: auto !important;
        max-height: 16px !important;
    }
}

/* Ürün kartında WhatsApp soru butonu: sepet butonunun yanından alınıp görselin sol üstüne taşındı. */
.product-whatsapp-top {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 12;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: rgba(37, 211, 102, 0.96) !important;
    color: #fff !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    text-decoration: none;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16);
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    transition: transform 0.18s ease, background-color 0.18s ease;
}
.product-whatsapp-top:hover { transform: scale(1.06); background-color: #128c7e !important; }
.product-whatsapp-top:active { transform: scale(0.96); }

/* Yeni rozet varsa WhatsApp butonuyla çakışmasın. */
.product-card .product-whatsapp-top ~ .badge-new-animated,
.product-card .position-relative .badge-new-animated {
    left: 40px !important;
}

@media (max-width: 350px) {
    .product-whatsapp-top {
        width: 30px;
        height: 30px;
        font-size: 0.95rem;
        top: 6px;
        left: 6px;
    }
    .product-card .product-whatsapp-top ~ .badge-new-animated,
    .product-card .position-relative .badge-new-animated {
        left: 34px !important;
    }
}

/* Luvlerry kapak görselinde çok hafif, düşük maliyetli parlak polen/lens hareketi. */
.luv-hero-cover-wrap {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}
.luv-hero-cover-wrap::before,
.luv-hero-cover-wrap::after {
    content: "";
    position: absolute;
    inset: -20% -10%;
    pointer-events: none;
    z-index: 2;
    opacity: 0.22;
    will-change: transform, opacity;
}
.luv-hero-cover-wrap::before {
    background:
        radial-gradient(circle at 18% 36%, rgba(255,255,255,0.55) 0 1px, transparent 2px),
        radial-gradient(circle at 42% 24%, rgba(255,220,170,0.45) 0 1px, transparent 2px),
        radial-gradient(circle at 72% 54%, rgba(255,255,255,0.42) 0 1px, transparent 2px),
        radial-gradient(circle at 88% 28%, rgba(255,210,170,0.35) 0 1px, transparent 2px);
    animation: luvHeroDustFloat 14s linear infinite;
}
.luv-hero-cover-wrap::after {
    background: linear-gradient(105deg, transparent 18%, rgba(255,255,255,0.16) 47%, transparent 64%);
    transform: translateX(-85%);
    opacity: 0.12;
    animation: luvHeroSoftFlare 9s ease-in-out infinite;
}
@keyframes luvHeroDustFloat {
    from { transform: translate3d(-1.5%, 1%, 0); }
    to { transform: translate3d(1.5%, -1%, 0); }
}
@keyframes luvHeroSoftFlare {
    0%, 62%, 100% { transform: translateX(-85%); opacity: 0; }
    72% { opacity: 0.16; }
    86% { transform: translateX(85%); opacity: 0; }
}
@media (prefers-reduced-motion: reduce), (max-width: 350px) {
    .luv-hero-cover-wrap::before,
    .luv-hero-cover-wrap::after {
        animation: none !important;
        opacity: 0.08;
    }
}

/* ============================================================
[FINAL USER PATCH] DESKTOP SOCIAL GAP / PRODUCT WHATSAPP SIZE / ORDER SUMMARY SOFTNESS
- SweetAlert, VIP, voucher/teslimat butonu, SQL/Tawk ve JS akışlarına dokunmaz.
============================================================ */
/* PC görünümde sağ üst Instagram + Trendyol arası daha kompakt. */
@media (min-width: 992px) {
    .navbar-sp .order-3 {
        gap: 6px !important;
    }
    .navbar-sp .order-3 .insta-nav-link,
    .navbar-sp .order-3 .trendyol-nav-link {
        min-width: 28px !important;
        min-height: 28px !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
    .navbar-sp .order-3 .insta-nav-link i {
        font-size: 1.16rem !important;
    }
    .navbar-sp .order-3 .trendyol-nav-link img {
        width: 42px !important;
        height: auto !important;
        max-height: 18px !important;
    }
}

/* Ürün kartı sol üst WhatsApp soru butonu: share butonuna göre daha dengeli ve küçük. */
.product-whatsapp-top {
    width: 28px !important;
    height: 28px !important;
    font-size: 0.82rem !important;
    top: 8px !important;
    left: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14) !important;
}
.product-whatsapp-top:hover {
    transform: scale(1.05) !important;
}
.product-whatsapp-top:active {
    transform: scale(0.96) !important;
}
.product-card .product-whatsapp-top ~ .badge-new-animated,
.product-card .position-relative .badge-new-animated {
    left: 36px !important;
}
@media (max-width: 350px) {
    .product-whatsapp-top {
        width: 26px !important;
        height: 26px !important;
        font-size: 0.78rem !important;
        top: 6px !important;
        left: 6px !important;
    }
    .product-card .product-whatsapp-top ~ .badge-new-animated,
    .product-card .position-relative .badge-new-animated {
        left: 31px !important;
    }
}

/* Sepet finans özeti: daha zarif ama okunur font ağırlığı. */
.luv-order-summary {
    box-shadow: 0 6px 18px rgba(17, 17, 17, 0.045) !important;
}
.luv-summary-row span {
    font-weight: 500 !important;
    color: #222 !important;
}
.luv-summary-row strong {
    font-weight: 550 !important;
    color: #111;
}
.luv-summary-total-row span {
    font-weight: 700 !important;
    letter-spacing: 0.2px !important;
    color: #111 !important;
}
.luv-summary-total-row strong {
    font-weight: 750 !important;
    color: #111 !important;
}
.luv-summary-voucher-row span,
.luv-summary-voucher-row strong {
    font-weight: 600 !important;
}

/* ============================================================
[FINAL URL + HERO + SWAL CHECK PATCH]
============================================================ */
/* SweetAlert success/check ikonu küçük kalırken bozulmasın: halka ve animasyon çizgileri yerine net check kullanılır. */
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success {
    width: clamp(28px, 8.5vw, 34px) !important;
    height: clamp(28px, 8.5vw, 34px) !important;
    min-width: clamp(28px, 8.5vw, 34px) !important;
    min-height: clamp(28px, 8.5vw, 34px) !important;
    border: none !important;
    background: rgba(255, 168, 181, 0.13) !important;
    border-radius: 50% !important;
    margin: 0.38rem auto 0.25rem !important;
}
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success .swal2-success-ring,
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success .swal2-success-fix,
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success .swal2-success-circular-line-left,
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success .swal2-success-circular-line-right,
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success .swal2-success-line-tip,
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success .swal2-success-line-long {
    display: none !important;
}
.swal2-popup.luv-swal-standard .swal2-icon.swal2-success::before {
    content: "✓";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #ffa8b5;
    font-size: clamp(1rem, 4.5vw, 1.25rem);
    font-weight: 800;
    line-height: 1;
}

/* Kapak görseli: çok hafif ilkbahar/polen/lens hissi. Sadece opacity + transform, telefona yük bindirmez. */
.luv-hero-cover-wrap {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}
.luv-hero-cover-wrap::before,
.luv-hero-cover-wrap::after {
    content: "";
    position: absolute;
    inset: -24% -12%;
    pointer-events: none;
    z-index: 2;
    will-change: transform, opacity;
}
.luv-hero-cover-wrap::before {
    opacity: 0.30;
    background:
        radial-gradient(circle at 14% 35%, rgba(255, 213, 232, 0.55) 0 1px, transparent 2px),
        radial-gradient(circle at 31% 20%, rgba(255, 236, 170, 0.42) 0 1px, transparent 2px),
        radial-gradient(circle at 58% 62%, rgba(187, 222, 255, 0.38) 0 1px, transparent 2px),
        radial-gradient(circle at 76% 28%, rgba(255, 255, 255, 0.48) 0 1px, transparent 2px),
        radial-gradient(circle at 90% 70%, rgba(255, 210, 230, 0.40) 0 1px, transparent 2px);
    animation: luvHeroSpringDust 16s linear infinite alternate;
}
.luv-hero-cover-wrap::after {
    opacity: 0;
    background: linear-gradient(110deg, transparent 25%, rgba(255, 240, 210, 0.22) 45%, rgba(190, 220, 255, 0.12) 52%, transparent 68%);
    transform: translate3d(-80%, 0, 0);
    animation: luvHeroSpringFlare 11s ease-in-out infinite;
}
@keyframes luvHeroSpringDust {
    from { transform: translate3d(-1.2%, 1%, 0); opacity: 0.24; }
    to { transform: translate3d(1.2%, -1%, 0); opacity: 0.34; }
}
@keyframes luvHeroSpringFlare {
    0%, 58%, 100% { transform: translate3d(-85%, 0, 0); opacity: 0; }
    68% { opacity: 0.18; }
    84% { transform: translate3d(85%, 0, 0); opacity: 0; }
}
@media (prefers-reduced-motion: reduce), (max-width: 350px) {
    .luv-hero-cover-wrap::before,
    .luv-hero-cover-wrap::after {
        animation: none !important;
        opacity: 0.08 !important;
    }
}

/* ============================================================
[FINAL HERO EFFECT VISIBILITY FIX]
Amaç: Luvlerry Kapak üzerinde çok hafif, cihazı yormayan pembe/mavi/sarı polen + lens flare efektini görünür yapmak.
Not: SweetAlert, VIP, voucher/teslimat, SQL/Tawk, ödeme ve JS akışlarına dokunmaz.
============================================================ */
.luv-hero-cover-wrap {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate;
    background: #fff;
}

.luv-hero-cover-wrap picture,
.luv-hero-cover-wrap img,
.luv-hero-cover-img {
    position: relative !important;
    z-index: 1 !important;
    display: block;
}

.luv-hero-cover-wrap::before,
.luv-hero-cover-wrap::after {
    content: "" !important;
    position: absolute !important;
    inset: -22% -12% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    will-change: transform, opacity;
}

/* Hafif pembe / mavi / sarı bahar polenleri */
.luv-hero-cover-wrap::before {
    opacity: 0.62 !important;
    background:
        radial-gradient(circle at 12% 32%, rgba(255, 168, 181, 0.70) 0 1.4px, transparent 2.8px),
        radial-gradient(circle at 24% 70%, rgba(255, 232, 160, 0.58) 0 1.2px, transparent 2.6px),
        radial-gradient(circle at 38% 24%, rgba(180, 215, 255, 0.56) 0 1.3px, transparent 2.7px),
        radial-gradient(circle at 58% 62%, rgba(255, 255, 255, 0.62) 0 1.2px, transparent 2.6px),
        radial-gradient(circle at 76% 30%, rgba(255, 208, 226, 0.52) 0 1.4px, transparent 2.9px),
        radial-gradient(circle at 90% 68%, rgba(255, 238, 170, 0.50) 0 1.2px, transparent 2.7px);
    background-size: 280px 165px;
    background-repeat: repeat;
    mix-blend-mode: screen;
    animation: luvHeroVisibleParticles 18s linear infinite alternate;
}

/* Çok soft lens flare / ışık geçişi */
.luv-hero-cover-wrap::after {
    opacity: 0 !important;
    background:
        radial-gradient(circle at 22% 48%, rgba(255, 168, 181, 0.30), transparent 20%),
        radial-gradient(circle at 52% 42%, rgba(180, 215, 255, 0.22), transparent 24%),
        linear-gradient(110deg, transparent 24%, rgba(255, 240, 210, 0.34) 44%, rgba(190, 220, 255, 0.16) 53%, transparent 70%);
    filter: blur(7px);
    mix-blend-mode: screen;
    transform: translate3d(-82%, 0, 0);
    animation: luvHeroVisibleFlare 12s ease-in-out infinite;
}

@keyframes luvHeroVisibleParticles {
    from {
        transform: translate3d(-1.5%, 1%, 0);
        opacity: 0.44;
    }
    to {
        transform: translate3d(1.5%, -1%, 0);
        opacity: 0.68;
    }
}

@keyframes luvHeroVisibleFlare {
    0%, 58%, 100% {
        transform: translate3d(-85%, 0, 0);
        opacity: 0;
    }
    68% {
        opacity: 0.46;
    }
    86% {
        transform: translate3d(85%, 0, 0);
        opacity: 0;
    }
}

/* Çok küçük / eski cihazlarda animasyonu kapat; sadece çok silik ışık dokusu kalır. */
@media (max-width: 350px), (prefers-reduced-motion: reduce) {
    .luv-hero-cover-wrap::before {
        animation: none !important;
        opacity: 0.16 !important;
    }
    .luv-hero-cover-wrap::after {
        animation: none !important;
        opacity: 0 !important;
    }
}

/* ============================================================
[FINAL HERO AURORA WAVE OVERRIDE]
Amaç: Nokta/polen efekti yerine kapak görseline hafif, premium bahar tonlarında aurora/lens ışık dalgası vermek.
Not: Sadece CSS override. JS, SweetAlert, VIP, voucher, ödeme, SQL/Tawk akışlarına dokunmaz.
============================================================ */
.luv-hero-cover-wrap {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background: #fff !important;
}

.luv-hero-cover-wrap picture,
.luv-hero-cover-wrap img,
.luv-hero-cover-img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
}

.luv-hero-cover-wrap::before,
.luv-hero-cover-wrap::after {
    content: "" !important;
    position: absolute !important;
    pointer-events: none !important;
    z-index: 3 !important;
    will-change: transform, opacity;
    background-repeat: no-repeat !important;
}

/* Ana aurora ışık dalgası: pembe / sarı / mor / mavi bahar tonları */
.luv-hero-cover-wrap::before {
    inset: -55% -35% !important;
    opacity: 0.54 !important;
    background:
        radial-gradient(ellipse at 16% 50%, rgba(255, 168, 181, 0.42) 0%, rgba(255, 168, 181, 0.20) 18%, transparent 42%),
        radial-gradient(ellipse at 48% 38%, rgba(196, 170, 255, 0.34) 0%, rgba(196, 170, 255, 0.16) 20%, transparent 46%),
        radial-gradient(ellipse at 76% 54%, rgba(255, 228, 142, 0.34) 0%, rgba(255, 228, 142, 0.15) 19%, transparent 45%),
        linear-gradient(105deg, transparent 18%, rgba(255, 188, 212, 0.28) 36%, rgba(184, 215, 255, 0.22) 50%, rgba(255, 232, 160, 0.20) 61%, transparent 78%);
    filter: blur(16px) saturate(1.16);
    mix-blend-mode: screen;
    transform: translate3d(-4%, 0, 0) rotate(-5deg) scale(1.02);
    animation: luvHeroAuroraWave 12s ease-in-out infinite alternate;
}

/* İnce hareketli ışık çizgisi: resme derinlik katar, dikkat çekici ama hafif */
.luv-hero-cover-wrap::after {
    inset: -45% -45% !important;
    opacity: 0.38 !important;
    background:
        linear-gradient(112deg,
            transparent 20%,
            rgba(255, 255, 255, 0.00) 30%,
            rgba(255, 184, 212, 0.26) 42%,
            rgba(187, 220, 255, 0.20) 50%,
            rgba(255, 234, 170, 0.22) 58%,
            transparent 72%),
        radial-gradient(ellipse at 54% 52%, rgba(255,255,255,0.16) 0%, transparent 34%);
    filter: blur(10px);
    mix-blend-mode: screen;
    transform: translate3d(-18%, 0, 0) rotate(7deg) scale(1.04);
    animation: luvHeroAuroraSweep 9s ease-in-out infinite;
}

@keyframes luvHeroAuroraWave {
    0% {
        transform: translate3d(-5%, 2%, 0) rotate(-6deg) scale(1.02);
        opacity: 0.36;
    }
    45% {
        opacity: 0.58;
    }
    100% {
        transform: translate3d(5%, -2%, 0) rotate(5deg) scale(1.08);
        opacity: 0.50;
    }
}

@keyframes luvHeroAuroraSweep {
    0%, 100% {
        transform: translate3d(-24%, 2%, 0) rotate(7deg) scale(1.04);
        opacity: 0.18;
    }
    45% {
        opacity: 0.42;
    }
    70% {
        transform: translate3d(22%, -2%, 0) rotate(5deg) scale(1.08);
        opacity: 0.30;
    }
}

/* Çok küçük/eski cihazlarda hareketi kapatır; çok hafif statik aurora dokusu kalır. */
@media (max-width: 350px), (prefers-reduced-motion: reduce) {
    .luv-hero-cover-wrap::before {
        animation: none !important;
        opacity: 0.24 !important;
        filter: blur(18px) saturate(1.05) !important;
    }
    .luv-hero-cover-wrap::after {
        animation: none !important;
        opacity: 0.10 !important;
    }
}

/* ============================================================
[FINAL HERO AURORA COLOR BOOST V2]
Amaç: Beyaz parıltı/nokta yerine, açık renkli kapak üzerinde görünen pembe-sarı-mor-mavi aurora ışık dalgası.
Not: Sadece CSS override. JS, SweetAlert, VIP, voucher, ödeme, SQL/Tawk akışlarına dokunmaz.
============================================================ */
.luv-hero-cover-wrap {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background: #fff !important;
}

.luv-hero-cover-wrap picture,
.luv-hero-cover-wrap img,
.luv-hero-cover-img {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
}

.luv-hero-cover-wrap::before,
.luv-hero-cover-wrap::after {
    content: "" !important;
    position: absolute !important;
    pointer-events: none !important;
    z-index: 3 !important;
    background-repeat: no-repeat !important;
    will-change: transform, opacity;
}

/* Renkli aurora gövdesi: açık zeminde kaybolmasın diye screen değil normal/soft-light karışımı kullanılır. */
.luv-hero-cover-wrap::before {
    inset: -75% -45% !important;
    opacity: 0.72 !important;
    background:
        radial-gradient(ellipse at 18% 45%, rgba(255, 72, 171, 0.46) 0%, rgba(255, 142, 205, 0.30) 18%, transparent 46%),
        radial-gradient(ellipse at 44% 34%, rgba(132, 92, 255, 0.40) 0%, rgba(172, 142, 255, 0.25) 20%, transparent 48%),
        radial-gradient(ellipse at 66% 56%, rgba(40, 218, 205, 0.30) 0%, rgba(130, 232, 222, 0.20) 18%, transparent 44%),
        radial-gradient(ellipse at 82% 42%, rgba(255, 206, 76, 0.46) 0%, rgba(255, 225, 135, 0.28) 18%, transparent 46%),
        linear-gradient(104deg,
            transparent 10%,
            rgba(255, 67, 166, 0.42) 24%,
            rgba(119, 92, 255, 0.34) 38%,
            rgba(42, 216, 206, 0.26) 52%,
            rgba(255, 209, 77, 0.36) 66%,
            transparent 84%);
    filter: blur(14px) saturate(1.55) contrast(1.05);
    mix-blend-mode: soft-light;
    transform: translate3d(-7%, 1%, 0) rotate(-7deg) scale(1.08);
    animation: luvHeroAuroraColorWave 10s ease-in-out infinite alternate;
}

/* Öndeki akıcı ışık şeridi: kuzey ışığı hareketini verir, nokta efekti yoktur. */
.luv-hero-cover-wrap::after {
    inset: -60% -55% !important;
    opacity: 0.54 !important;
    background:
        linear-gradient(112deg,
            transparent 18%,
            rgba(255, 64, 170, 0.00) 27%,
            rgba(255, 64, 170, 0.34) 36%,
            rgba(132, 92, 255, 0.30) 45%,
            rgba(40, 218, 205, 0.22) 54%,
            rgba(255, 211, 82, 0.28) 63%,
            transparent 76%),
        linear-gradient(78deg,
            transparent 26%,
            rgba(255, 255, 255, 0.20) 48%,
            transparent 62%);
    filter: blur(9px) saturate(1.35);
    mix-blend-mode: normal;
    transform: translate3d(-28%, 1%, 0) rotate(8deg) scale(1.06);
    animation: luvHeroAuroraColorSweep 8s ease-in-out infinite;
}

@keyframes luvHeroAuroraColorWave {
    0% {
        transform: translate3d(-8%, 2%, 0) rotate(-8deg) scale(1.06);
        opacity: 0.46;
    }
    48% {
        opacity: 0.76;
    }
    100% {
        transform: translate3d(7%, -2%, 0) rotate(6deg) scale(1.13);
        opacity: 0.64;
    }
}

@keyframes luvHeroAuroraColorSweep {
    0%, 100% {
        transform: translate3d(-34%, 2%, 0) rotate(8deg) scale(1.06);
        opacity: 0.18;
    }
    45% {
        opacity: 0.62;
    }
    74% {
        transform: translate3d(28%, -2%, 0) rotate(5deg) scale(1.12);
        opacity: 0.42;
    }
}

/* Eski/küçük cihazlarda hareket kapalı, çok hafif statik renk kalır. */
@media (max-width: 350px), (prefers-reduced-motion: reduce) {
    .luv-hero-cover-wrap::before {
        animation: none !important;
        opacity: 0.26 !important;
        filter: blur(16px) saturate(1.18) !important;
    }
    .luv-hero-cover-wrap::after {
        animation: none !important;
        opacity: 0.12 !important;
    }
}

/* ============================================================
[FINAL USER REQUEST PATCH V2]
Amaç:
- 430px ve altı mobil header sıkışmasını düzeltmek.
- Mobil header sepet ikonunu küçük, sade ve çalışır tutmak.
- Sepet badge rengini/sayı hizasını düzeltmek.
- Mobil alttaki SEPET / ÖDEME glass bar özetini geri görünür ve stabil yapmak.
- Ürün oranı / WhatsApp ürün destek konumu / mevcut tasarım dokunulmadan korunur.
============================================================ */

/* Mobil header genel sıkışma kontrolü */
.mobile-header-cart-btn {
    display: none;
}

@media (max-width: 991px) {
    .navbar-sp .d-flex.position-relative {
        min-height: 38px;
        gap: 0 !important;
    }

    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        transition: height .18s ease, max-width .18s ease;
    }

    .navbar-sp .order-3 {
        gap: 8px !important;
        column-gap: 8px !important;
        flex-shrink: 0;
    }

    .lang-switch-container {
        gap: 0 !important;
        column-gap: 0 !important;
        flex-shrink: 0;
    }

    .lang-switch-container .lang-btn {
        min-width: 28px !important;
        min-height: 30px !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
        letter-spacing: 0 !important;
    }

    .insta-nav-link,
    .trendyol-nav-link,
    .mobile-header-cart-btn {
        width: 30px !important;
        min-width: 30px !important;
        height: 30px !important;
        min-height: 30px !important;
        padding: 0 !important;
        margin: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
        flex: 0 0 30px;
    }

    .insta-nav-link i,
    .mobile-header-cart-btn i {
        font-size: 1.05rem !important;
        line-height: 1 !important;
    }

    .trendyol-nav-link img {
        width: 26px !important;
        height: auto !important;
        max-width: 26px !important;
        padding: 0 !important;
    }

    .mobile-header-cart-btn {
        position: relative;
        border: none !important;
        background: transparent !important;
        color: #111 !important;
        box-shadow: none !important;
        outline: none !important;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }

    .mobile-header-cart-count {
        position: absolute;
        top: 0px;
        right: -2px;
        min-width: 14px;
        height: 14px;
        padding: 0 3px;
        border-radius: 999px;
        background: #111 !important;
        color: #fff !important;
        font-size: 0.55rem;
        font-weight: 800;
        line-height: 14px !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        letter-spacing: 0 !important;
        transform: translate(35%, -25%);
        box-shadow: 0 1px 3px rgba(0,0,0,0.18);
        pointer-events: none;
    }

    .mobile-header-cart-count.is-empty {
        display: none !important;
    }
}

/* 430px ve altı: logo + sağ ikonlar + diller daha sıkı */
@media (max-width: 430px) {
    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 25px !important;
        max-width: 132px !important;
    }

    .navbar-sp .order-3 {
        gap: 5px !important;
        column-gap: 5px !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 26px !important;
        font-size: 0.66rem !important;
    }

    .insta-nav-link,
    .trendyol-nav-link,
    .mobile-header-cart-btn {
        width: 28px !important;
        min-width: 28px !important;
        height: 28px !important;
        min-height: 28px !important;
        flex-basis: 28px;
    }

    .insta-nav-link i,
    .mobile-header-cart-btn i {
        font-size: 1rem !important;
    }

    .trendyol-nav-link img {
        width: 24px !important;
        max-width: 24px !important;
    }
}

@media (max-width: 410px) {
    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 23px !important;
        max-width: 122px !important;
    }

    .navbar-sp .order-3 {
        gap: 4px !important;
        column-gap: 4px !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 24px !important;
        font-size: 0.62rem !important;
    }

    .insta-nav-link,
    .trendyol-nav-link,
    .mobile-header-cart-btn {
        width: 26px !important;
        min-width: 26px !important;
        height: 26px !important;
        min-height: 26px !important;
        flex-basis: 26px;
    }

    .insta-nav-link i,
    .mobile-header-cart-btn i {
        font-size: 0.93rem !important;
    }

    .trendyol-nav-link img {
        width: 22px !important;
        max-width: 22px !important;
    }
}

@media (max-width: 370px) {
    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 21px !important;
        max-width: 112px !important;
    }

    .navbar-sp .order-3 {
        gap: 2px !important;
        column-gap: 2px !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 22px !important;
        min-height: 26px !important;
        font-size: 0.58rem !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .insta-nav-link,
    .trendyol-nav-link,
    .mobile-header-cart-btn {
        width: 24px !important;
        min-width: 24px !important;
        height: 24px !important;
        min-height: 24px !important;
        flex-basis: 24px;
    }

    .insta-nav-link i,
    .mobile-header-cart-btn i {
        font-size: 0.88rem !important;
    }

    .trendyol-nav-link img {
        width: 20px !important;
        max-width: 20px !important;
    }
}

@media (max-width: 350px) {
    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 20px !important;
        max-width: 104px !important;
    }

    .lang-switch-container {
        margin-left: -3px !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 20px !important;
        font-size: 0.55rem !important;
    }
}

/* Mobil alttaki SEPET / ÖDEME glass bar: minify calc ve görünürlük güvenliği */
@media (max-width: 991px) {
    #glass-cart-bar.glass-bottom-bar {
        position: fixed !important;
        left: 50% !important;
        bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
        width: min(92vw, 400px) !important;
        max-width: 400px !important;
        transform: translateX(-50%) translateY(150px) !important;
        display: block !important;
        z-index: 10050 !important;
        pointer-events: auto;
    }

    #glass-cart-bar.glass-bottom-bar.show-bar {
        transform: translateX(-50%) translateY(0) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    #glass-cart-bar.glass-bottom-bar.hidden:not(.show-bar) {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

    #glass-cart-bar .glass-content {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px;
    }

    #glass-cart-bar .glass-cart-info {
        display: flex !important;
        min-width: 0;
        flex: 1 1 auto;
    }

    #glass-cart-bar .glass-item-count,
    #glass-cart-bar .glass-total-price {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        white-space: nowrap;
    }

    #glass-cart-bar .glass-total-price {
        overflow: hidden;
        text-overflow: ellipsis;
    }

    #glass-cart-bar .glass-checkout-btn {
        flex: 0 0 auto;
        white-space: nowrap;
    }
}

/* SweetAlert harf aralığı kesin kapalı kalsın. */
.swal2-popup,
.swal2-popup *,
.swal2-title,
.swal2-html-container,
.swal2-styled,
.luv-swal-standard,
.luv-swal-standard * {
    letter-spacing: 0 !important;
}

/* ============================================================
[FINAL MICRO PATCH] TRENDYOL HEADER LOGO MIN WIDTH
- Sadece header içindeki Trendyol logosunun görünürlüğünü artırır.
- Sepet, SweetAlert, VIP, voucher, ödeme ve JS akışlarına dokunmaz.
============================================================ */
.navbar-sp .trendyol-nav-link {
    width: 36px !important;
    min-width: 36px !important;
    flex: 0 0 36px !important;
}

.navbar-sp .trendyol-nav-link img {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: auto !important;
    max-height: 18px !important;
    object-fit: contain !important;
}


/* ============================================================
[FINAL MICRO PATCH] MOBILE GLASS CART 410PX SAFE FIT
- 410px ve altı cihazlarda fiyat + SEPET / ÖDEME butonu çakışmasın.
- Sadece mobil alttaki glass cart bar görünümüne dokunur.
============================================================ */
@media (max-width: 410px) {
    #glass-cart-bar.glass-bottom-bar {
        width: calc(100vw - 18px) !important;
        max-width: calc(100vw - 18px) !important;
        padding: 7px 8px 7px 14px !important;
        border-radius: 42px !important;
    }

    #glass-cart-bar .glass-content {
        gap: 6px !important;
    }

    #glass-cart-bar .glass-cart-info {
        min-width: 0 !important;
        flex: 1 1 0 !important;
        overflow: hidden !important;
    }

    #glass-cart-bar .glass-item-count {
        font-size: 0.58rem !important;
        line-height: 1 !important;
        margin-bottom: 2px !important;
        letter-spacing: 0.15px !important;
    }

    #glass-cart-bar .glass-total-price {
        font-size: 0.86rem !important;
        line-height: 1.05 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    #glass-cart-bar .glass-checkout-btn {
        min-height: 34px !important;
        padding: 8px 14px !important;
        font-size: 0.68rem !important;
        line-height: 1.1 !important;
        letter-spacing: 0.2px !important;
        border-radius: 999px !important;
    }
}

@media (max-width: 360px) {
    #glass-cart-bar.glass-bottom-bar {
        width: calc(100vw - 14px) !important;
        max-width: calc(100vw - 14px) !important;
        padding: 6px 7px 6px 12px !important;
    }

    #glass-cart-bar .glass-content {
        gap: 5px !important;
    }

    #glass-cart-bar .glass-item-count {
        font-size: 0.54rem !important;
    }

    #glass-cart-bar .glass-total-price {
        font-size: 0.78rem !important;
    }

    #glass-cart-bar .glass-checkout-btn {
        min-height: 32px !important;
        padding: 7px 11px !important;
        font-size: 0.62rem !important;
    }
}

@media (max-width: 330px) {
    #glass-cart-bar.glass-bottom-bar {
        width: calc(100vw - 10px) !important;
        max-width: calc(100vw - 10px) !important;
        padding: 6px 6px 6px 10px !important;
    }

    #glass-cart-bar .glass-total-price {
        font-size: 0.72rem !important;
    }

    #glass-cart-bar .glass-checkout-btn {
        padding: 7px 9px !important;
        font-size: 0.58rem !important;
    }
}

/* ============================================================
[FINAL MICRO PATCH] MOBILE HEADER 320PX SAFE SPACING
- Diller arası ve sağ üst Instagram / Trendyol / sepet ikonları arası
  her kırılımda en az 8px kalsın.
- Sıkışma durumunda ikonları değil logoyu kademeli küçültür.
- Sepet, glass bar, ürün kartları, SweetAlert ve JS akışlarına dokunmaz.
============================================================ */
@media (max-width: 430px) {
    .navbar-sp .d-flex.position-relative {
        gap: 0 !important;
    }

    .navbar-sp .order-3 {
        gap: 8px !important;
        column-gap: 8px !important;
    }

    .lang-switch-container {
        gap: 8px !important;
        column-gap: 8px !important;
        margin-left: 0 !important;
    }

    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 24px !important;
        max-width: 124px !important;
    }
}

@media (max-width: 410px) {
    .navbar-sp .order-3 {
        gap: 8px !important;
        column-gap: 8px !important;
    }

    .lang-switch-container {
        gap: 8px !important;
        column-gap: 8px !important;
        margin-left: 0 !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 22px !important;
        font-size: 0.60rem !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 22px !important;
        max-width: 112px !important;
    }
}

@media (max-width: 370px) {
    .navbar-sp .order-3 {
        gap: 8px !important;
        column-gap: 8px !important;
    }

    .lang-switch-container {
        gap: 8px !important;
        column-gap: 8px !important;
        margin-left: 0 !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 20px !important;
        font-size: 0.56rem !important;
    }

    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 20px !important;
        max-width: 98px !important;
    }
}

@media (max-width: 350px) {
    .navbar-sp .order-3 {
        gap: 8px !important;
        column-gap: 8px !important;
    }

    .lang-switch-container {
        gap: 8px !important;
        column-gap: 8px !important;
        margin-left: 0 !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 18px !important;
        font-size: 0.53rem !important;
    }

    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 19px !important;
        max-width: 88px !important;
    }
}

@media (max-width: 330px) {
    .navbar-sp .order-3 {
        gap: 8px !important;
        column-gap: 8px !important;
    }

    .lang-switch-container {
        gap: 8px !important;
        column-gap: 8px !important;
    }

    .lang-switch-container .lang-btn {
        min-width: 17px !important;
        font-size: 0.50rem !important;
    }

    .logo-center-wrapper .navbar-brand-img,
    .navbar-brand-img {
        height: 18px !important;
        max-width: 82px !important;
    }
}

/* ============================================================
[FINAL PATCH] Glass cart micro animation / mobile form sizing / back-to-top lift
Amaç: Sadece mobil glass sepet bar, küçük ekran form oranları ve yukarı çık butonu.
============================================================ */
.glass-item-count,
#glass-cart-bar .glass-item-count {
    color: var(--accent-color) !important;
}

@media (max-width: 992px) {
/* Glass cart aktifken yukarı çık butonu barın arkasında kalmasın. */
body:has(#glass-cart-bar.glass-bottom-bar.show-bar) #backToTopBtn.show,
body:has(.glass-bottom-bar.show-bar) #backToTopBtn.show,
#backToTopBtn.lifted.show {
    bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
    z-index: 10070 !important;
    pointer-events: auto !important;
}
}

@media (max-width: 410px) {
    body:has(#glass-cart-bar.glass-bottom-bar.show-bar) #backToTopBtn.show,
    body:has(.glass-bottom-bar.show-bar) #backToTopBtn.show,
    #backToTopBtn.lifted.show {
        bottom: calc(88px + env(safe-area-inset-bottom, 0px)) !important;
    }
}

@media (max-width: 360px) {
    body:has(#glass-cart-bar.glass-bottom-bar.show-bar) #backToTopBtn.show,
    body:has(.glass-bottom-bar.show-bar) #backToTopBtn.show,
    #backToTopBtn.lifted.show {
        bottom: calc(82px + env(safe-area-inset-bottom, 0px)) !important;
    }
}

/* Mobil form / hediye çeki / indirim kodu buton oranları. */
@media (max-width: 576px) {
    #discountCode,
    .input-group.input-group-sm .form-control,
    .input-group-sm .form-control,
    .form-control {
        font-size: clamp(0.68rem, 2.7vw, 0.78rem) !important;
        line-height: 1.25 !important;
    }

    #btnApplyDiscount,
    .input-group.input-group-sm .btn,
    .input-group-sm .btn,
    .btn.btn-outline-danger,
    .btn.btn-outline-dark {
        font-size: clamp(0.66rem, 2.65vw, 0.76rem) !important;
        line-height: 1.15 !important;
        padding: 0.42rem 0.62rem !important;
        min-height: 34px !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        white-space: nowrap;
    }

    [data-i18n="have_voucher"],
    label[for="hasVoucherCheck"],
    .form-check-label[for="hasVoucherCheck"] {
        font-size: clamp(0.68rem, 2.65vw, 0.78rem) !important;
        line-height: 1.2 !important;
        font-weight: 500 !important;
    }

    #hasVoucherCheck {
        width: 0.95rem !important;
        height: 0.95rem !important;
        margin-top: 0 !important;
    }

    #iyzico-inline .alert,
    #card-checkout-wrap .alert,
    #card-loading.alert {
        font-size: clamp(0.68rem, 2.65vw, 0.78rem) !important;
        line-height: 1.35 !important;
        padding: 0.55rem 0.7rem !important;
        border-radius: 10px !important;
    }

    #iyzico-inline .alert i,
    #card-checkout-wrap .alert i,
    #card-loading.alert i {
        font-size: 0.82em !important;
    }
}

@media (max-width: 360px) {
    #btnApplyDiscount,
    .input-group.input-group-sm .btn,
    .input-group-sm .btn,
    .btn.btn-outline-danger,
    .btn.btn-outline-dark {
        font-size: 0.64rem !important;
        padding-left: 0.48rem !important;
        padding-right: 0.48rem !important;
        min-height: 32px !important;
    }

    #discountCode,
    .input-group.input-group-sm .form-control,
    .input-group-sm .form-control,
    .form-control,
    [data-i18n="have_voucher"],
    label[for="hasVoucherCheck"],
    .form-check-label[for="hasVoucherCheck"],
    #iyzico-inline .alert,
    #card-checkout-wrap .alert,
    #card-loading.alert {
        font-size: 0.66rem !important;
    }
}

/* ============================================================
[EK] GLASS CART BAR - SEPETE EKLEME SOFT BOUNCE EFEKTİ
------------------------------------------------------------
Amaç: Mobilde alt sepet barına ürün eklendiğinde kullanıcının değişimi fark etmesi için
barın içeriğine yumuşak yukarı-aşağı hareket verir.
Önemli: Animasyon barın ana transform değerine dokunmaz; .glass-bottom-bar pozisyonunu bozmaz.
Performans notu: Sadece transform kullanır; layout/reflow oluşturmaz, eski cihazları yormaz.
============================================================ */
@keyframes luvGlassCartContentBounce {
0% { transform: translateY(0); }
22% { transform: translateY(-6px); }
48% { transform: translateY(3px); }
72% { transform: translateY(-2px); }
100% { transform: translateY(0); }
}
#glass-cart-bar.glass-bottom-bar.show-bar.luv-cart-pulse .glass-content {
animation: luvGlassCartContentBounce 0.48s cubic-bezier(0.22, 0.85, 0.32, 1.15) both;
will-change: transform;
}
@media (prefers-reduced-motion: reduce) {
#glass-cart-bar.glass-bottom-bar.show-bar.luv-cart-pulse .glass-content {
animation: none !important;
}
}

/* ============================================================
[STORE CHECKOUT PATCH] CART BUTTONS / MOBILE HELP / MANUAL ORDER
------------------------------------------------------------
index.php icinden tasinan son sayfa stilleri. Min dosyada sikistirilmis hali vardir.
============================================================ */
.luv-card-cart-shell {
    position: relative;
}
.luv-card-cart-shell.is-in-cart {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) 28px;
    gap: 6px;
    align-items: center;
}
.luv-card-qty-btn {
    display: none;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    background: #fff;
    color: #111;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    font-size: 0.7rem;
    line-height: 1;
}
.luv-card-cart-shell.is-in-cart .luv-card-qty-btn {
    display: inline-flex;
}
.luv-card-qty-btn.is-disabled {
    opacity: 0.38;
}
.luv-card-cart-count {
    display: none;
    position: absolute;
    top: -9px;
    right: 30px;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    background: #111;
    color: #fff;
    border: 2px solid #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 900;
    line-height: 1;
    z-index: 4;
    pointer-events: none;
}
.luv-card-cart-shell.is-in-cart .luv-card-cart-count {
    display: inline-flex;
}
.add-btn.luv-in-cart {
    background: #ffa8b5 !important;
    border-color: #ffa8b5 !important;
    color: #fff !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}
.add-btn.luv-in-cart span {
    color: #fff !important;
    letter-spacing: 0 !important;
}
.luv-cart-dispatch-row {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding-right: 120px !important;
}
.luv-cart-dispatch-text {
    display: block;
    line-height: 1.25;
}
.luv-clear-cart-items-btn {
    position: absolute;
    top: 5px;
    right: 5px;
    min-width: 94px !important;
    max-width: 112px !important;
    min-height: 28px;
    border: 1px solid rgba(255, 168, 181, 0.62);
    border-radius: 999px;
    background: rgba(255, 168, 181, 0.18);
    color: #111;
    font-size: 0.56rem;
    font-weight: 800;
    line-height: 1.05;
    padding: 5px 8px;
    text-align: center;
    white-space: nowrap !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.04);
}
.luv-clear-cart-items-btn:active {
    transform: translateY(1px);
}
#glass-cart-bar {
    overflow: visible !important;
}
.glass-cart-help-btn {
    position: absolute;
    left: 0;
    bottom: calc(100% + 7px);
    max-width: min(72vw, 230px);
    min-height: 30px;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(255, 168, 181, 0.75);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
    backdrop-filter: saturate(180%) blur(16px);
    -webkit-backdrop-filter: saturate(180%) blur(16px);
    color: #111 !important;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px;
    font-size: 0.64rem;
    font-weight: 800;
    line-height: 1.05;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    z-index: 3;
    pointer-events: auto !important;
}
.glass-cart-help-btn i {
    color: #25d366;
    font-size: 0.84rem;
    animation: luvGlassHelpWhatsappBlink 1.08s ease-in-out infinite;
    transform-origin: center;
    flex: 0 0 auto;
}
@keyframes luvGlassHelpWhatsappBlink {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
        filter: drop-shadow(0 0 0 rgba(37, 211, 102, 0));
    }
    45% {
        opacity: 0.38;
        transform: scale(1.22);
        filter: drop-shadow(0 0 8px rgba(37, 211, 102, 0.78));
    }
}
.glass-cart-help-btn span {
    display: inline-block;
    flex: 0 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
}
.js-wa-support-link.luv-support-hidden {
    display: none !important;
}
#cartSectionContainer .cart-wa-support-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 0.45rem;
    line-height: 1.15;
}
#cartSectionContainer .cart-wa-support-btn i {
    flex: 0 0 auto;
    margin-right: 0 !important;
}
#cartSectionContainer .cart-wa-support-btn span {
    display: inline-block;
    min-width: 0;
    line-height: 1.15;
}
@media (max-width: 360px) {
    #cartSectionContainer .cart-wa-support-btn {
        font-size: 0.72rem !important;
    }
}
.luv-secondary-action-btn {
    width: 100%;
    background: #111 !important;
    color: #fff !important;
    border: 1px solid #111 !important;
    border-radius: 10px !important;
    padding: 11px 16px !important;
    min-height: 42px;
    font-size: 0.73rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.35px;
    line-height: 1.25;
    text-transform: uppercase;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.16);
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.16s ease;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}
.luv-secondary-action-btn:hover {
    background: #ffa8b5 !important;
    color: #fff !important;
    border-color: #ffa8b5 !important;
    outline: none !important;
    box-shadow: 0 6px 18px rgba(255, 168, 181, 0.28) !important;
}
.luv-secondary-action-btn:focus,
.luv-secondary-action-btn:focus-visible {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
    outline: none !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.16) !important;
}
.luv-secondary-action-btn:active,
.luv-dark-action-btn:active {
    transform: scale(0.985);
}

#btn-continue-payment-form,
#btn-bank-transfer-order {
    text-transform: none !important;
}

#btn-continue-payment-form.luv-primary-action-btn,
button#btn-continue-payment-form {
    background: #ffa8b5 !important;
    border-color: #ffa8b5 !important;
    color: #fff !important;
}

#btn-continue-payment-form.luv-primary-action-btn:hover,
#btn-continue-payment-form.luv-primary-action-btn:focus,
button#btn-continue-payment-form:hover,
button#btn-continue-payment-form:focus {
    background: #ffa8b5 !important;
    border-color: #ffa8b5 !important;
    color: #111 !important;
}

#btn-bank-transfer-order.luv-secondary-action-btn,
button#btn-bank-transfer-order {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
}

#btn-bank-transfer-order.luv-secondary-action-btn:hover,
#btn-bank-transfer-order.luv-secondary-action-btn:focus,
button#btn-bank-transfer-order:hover,
button#btn-bank-transfer-order:focus {
    background: #111 !important;
    border-color: #111 !important;
    color: #ffa8b5 !important;
}

.luv-dark-action-btn {
    width: 100%;
    background: #111 !important;
    color: #fff !important;
    border: 1px solid #111 !important;
    border-radius: 10px !important;
    padding: 11px 16px !important;
    min-height: 42px;
    font-size: 0.73rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.35px;
    line-height: 1.25;
    text-transform: uppercase;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.16);
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.16s ease;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}
.luv-dark-action-btn:hover,
.luv-dark-action-btn:focus {
    background: #ffa8b5 !important;
    border-color: #ffa8b5 !important;
    color: #fff !important;
    outline: none !important;
}
#cartScrollDownHint {
    display: none;
}
.luv-cart-scroll-down-hint {
    position: fixed;
    left: 50%;
    bottom: calc(18px + env(safe-area-inset-bottom, 0px));
    transform: translateX(-50%) translateY(80px);
    border: 1px solid rgba(255, 168, 181, 0.78);
    background: rgba(17, 17, 17, 0.88);
    color: #fff;
    border-radius: 999px;
    padding: 9px 14px;
    min-height: 38px;
    align-items: center;
    gap: 8px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.20);
    backdrop-filter: saturate(160%) blur(14px);
    -webkit-backdrop-filter: saturate(160%) blur(14px);
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0;
    line-height: 1;
    z-index: 2147483000;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.luv-cart-scroll-down-hint i {
    color: #ffa8b5;
    font-size: 0.78rem;
}
.luv-desktop-cart-step-hint {
    display: none;
    position: fixed;
    min-height: 42px;
    border: 1px solid rgba(255, 168, 181, 0.88);
    border-radius: 999px;
    background: rgba(17, 17, 17, 0.92);
    color: #fff;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 10px 16px;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24);
    backdrop-filter: saturate(160%) blur(14px);
    -webkit-backdrop-filter: saturate(160%) blur(14px);
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1.15;
    text-align: center;
    letter-spacing: 0;
    z-index: 2147482500;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.luv-desktop-cart-step-hint i {
    color: #ffa8b5;
    font-size: 0.82rem;
}
.luv-desktop-cart-step-hint.show {
    display: flex;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    animation: luvDesktopCartStepHint 1.25s ease-in-out infinite;
}
.sidebar-sticky-wrapper.luv-desktop-cart-hint-visible {
    padding-bottom: 82px;
}
#cartScrollDownHint.show {
    display: flex;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
    animation: luvCartDownHint 1.35s ease-in-out infinite;
}
@keyframes luvCartDownHint {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    45% { transform: translateX(-50%) translateY(8px); }
    70% { transform: translateX(-50%) translateY(3px); }
}
@keyframes luvDesktopCartStepHint {
    0%, 100% { transform: translateY(0); }
    45% { transform: translateY(8px); }
    70% { transform: translateY(3px); }
}
.luv-manual-order-swal .swal2-actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    width: 100% !important;
    position: relative !important;
}
.luv-manual-order-swal .swal2-styled {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px 8px !important;
    font-size: 0.70rem !important;
    line-height: 1.18 !important;
    white-space: normal !important;
}
.luv-manual-order-swal .swal2-cancel {
    order: 1 !important;
}
.luv-manual-order-swal .swal2-confirm {
    order: 2 !important;
}
.luv-manual-order-swal.swal2-loading .swal2-actions {
    padding-top: 44px !important;
}
.luv-manual-order-swal .swal2-loader {
    position: absolute !important;
    top: 2px !important;
    left: 50% !important;
    width: 28px !important;
    height: 28px !important;
    margin: 0 0 15px !important;
    transform: translateX(-50%) !important;
    order: 0 !important;
    border-width: 3px !important;
    border-color: var(--luv-swal-accent) transparent var(--luv-swal-accent) transparent !important;
}
@media (min-width: 992px) {
    .glass-cart-help-btn,
    .luv-cart-scroll-down-hint {
        display: none !important;
    }
    .sidebar-sticky-wrapper {
        height: calc(100svh - 120px) !important;
        max-height: calc(100svh - 120px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        scrollbar-width: thin !important;
        contain: none !important;
        overscroll-behavior-y: auto !important;
    }
}
@media (max-width: 991px) {
    body.luv-mobile-cart-open #cartScrollDownHint.show {
        display: flex !important;
        position: fixed !important;
        left: 50% !important;
        bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
        width: min(88vw, 360px) !important;
        min-height: 42px !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 9px !important;
        padding: 10px 15px !important;
        border-radius: 999px !important;
        border: 1px solid rgba(255, 168, 181, 0.88) !important;
        background: rgba(17, 17, 17, 0.92) !important;
        color: #fff !important;
        box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24) !important;
        z-index: 2147483000 !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        font-size: 0.72rem !important;
        font-weight: 850 !important;
        line-height: 1.15 !important;
        text-align: center !important;
        animation: luvCartDownHint 1.25s ease-in-out infinite !important;
    }
    body.luv-mobile-cart-open #cartScrollDownHint.show i {
        color: #ffa8b5 !important;
        font-size: 0.82rem !important;
        flex: 0 0 auto !important;
    }
    body.luv-mobile-cart-open #cartScrollDownHint.show span {
        display: block !important;
        letter-spacing: 0 !important;
        white-space: normal !important;
    }
}
@media (max-width: 380px) {
    .luv-card-cart-shell.is-in-cart {
        grid-template-columns: 25px minmax(0, 1fr) 25px;
        gap: 4px;
    }
    .luv-card-qty-btn {
        width: 25px;
        height: 25px;
        font-size: 0.62rem;
    }
    .luv-card-cart-count {
        right: 27px;
        min-width: 18px;
        height: 18px;
        font-size: 0.6rem;
    }
    .add-btn.luv-in-cart {
        font-size: 0.62rem !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }
    .luv-clear-cart-items-btn {
        min-width: 86px !important;
        max-width: 96px !important;
        font-size: 0.49rem !important;
        padding-left: 6px;
        padding-right: 6px;
    }
    .luv-cart-dispatch-row {
        padding-right: 104px !important;
    }
}
@media (max-width: 360px) {
    .glass-cart-help-btn {
        left: 0;
        max-width: 64vw;
        font-size: 0.54rem;
        padding: 6px 8px;
        gap: 5px;
    }
    .luv-cart-scroll-down-hint {
        font-size: 0.62rem;
        padding: 8px 11px;
        max-width: 88vw;
    }
}

/* ============================================================
[STORE CHECKOUT PATCH] SWEETALERT PAYMENT CONTENT DETAILS
============================================================ */
.swal2-popup.luv-payment-error-popup #iyziErrorMessage,
.swal2-popup.luv-payment-error-popup .luv-payment-error-message,
.swal2-popup.luv-payment-error-popup .luv-payment-support-title {
    color: #fff !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-support-note {
    background: #1a1a1a !important;
    border-color: rgba(255, 168, 181, 0.35) !important;
    color: #e7e7e7 !important;
}
.luv-delivery-autofill-note {
    font-size: 0.75rem !important;
    line-height: 1.35 !important;
    max-width: 95%;
    margin-left: auto;
    margin-right: auto;
}
.swal2-popup.luv-payment-error-popup .swal2-title {
    font-size: clamp(1rem, 4.1vw, 1.08rem) !important;
    line-height: 1.22 !important;
    margin-bottom: 0.45rem !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-error-message {
    font-size: 0.82rem !important;
    line-height: 1.38 !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-support-title {
    font-size: 0.76rem !important;
    line-height: 1.25 !important;
    margin-top: 16px !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-support-actions {
    display: grid !important;
    grid-template-columns: 38px 38px minmax(112px, 1fr) minmax(132px, 1fr) !important;
    align-items: stretch !important;
    gap: 8px !important;
    margin-top: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-retry-inline,
.swal2-popup.luv-payment-error-popup .luv-payment-bank-inline {
    white-space: nowrap !important;
    min-width: 0 !important;
    font-size: 0.68rem !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
    letter-spacing: 0 !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-retry-inline:hover,
.swal2-popup.luv-payment-error-popup .luv-payment-retry-inline:focus {
    background: #fff !important;
    color: #ffa8b5 !important;
    box-shadow: 0 0 0 1px #ffa8b5 inset !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-bank-inline:hover,
.swal2-popup.luv-payment-error-popup .luv-payment-bank-inline:focus {
    background: #111 !important;
    color: #ffa8b5 !important;
    box-shadow: 0 0 0 1px #ffa8b5 inset !important;
}
.swal2-popup.luv-payment-error-popup .luv-payment-wa-support:hover,
.swal2-popup.luv-payment-error-popup .luv-payment-phone-support:hover {
    transform: translateY(-1px);
    filter: brightness(1.08);
}
.swal2-popup.luv-payment-error-popup .swal2-timer-progress-bar-container {
    display: none !important;
}

@media (max-width: 390px) {
    .swal2-popup.luv-payment-error-popup .luv-payment-support-actions {
        grid-template-columns: 1fr 1fr !important;
        gap: 6px !important;
    }
    .swal2-popup.luv-payment-error-popup .luv-payment-wa-support,
    .swal2-popup.luv-payment-error-popup .luv-payment-phone-support {
        width: 100% !important;
        min-width: 0 !important;
        padding-left: 6px !important;
        padding-right: 6px !important;
    }
    .swal2-popup.luv-payment-error-popup .luv-payment-retry-inline,
    .swal2-popup.luv-payment-error-popup .luv-payment-bank-inline {
        font-size: 0.66rem !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
}

/* Product detail surface */
#ajax-product-grid .product-card {
    cursor: pointer;
}
.luv-product-detail-panel {
    display: none;
    color: #111;
}
.luv-product-detail-panel.is-open {
    display: block;
}
.luv-detail-hidden {
    display: none !important;
}
.luv-detail-closebar {
    position: sticky;
    top: calc(var(--luv-detail-sticky-top, 0px) + 10px);
    z-index: 1048;
    background: rgba(255, 255, 255, 0.82);
    backdrop-filter: saturate(170%) blur(18px);
    -webkit-backdrop-filter: saturate(170%) blur(18px);
    border-bottom: 1px solid rgba(17, 17, 17, 0.08);
    display: flex;
    align-items: stretch;
    padding-left: 22px;
    padding-right: 22px;
}
.luv-product-detail-close {
    flex: 1 1 auto;
    width: auto;
    min-height: 50px;
    border: 0;
    background: transparent;
    color: #111;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 0;
    font-size: 0.74rem;
    font-weight: 900;
    line-height: 1.15;
    text-transform: uppercase;
    letter-spacing: 0;
    transition: background-color 0.2s ease, color 0.2s ease;
}
.luv-detail-top-cart-btn {
    flex: 1 1 auto;
    min-height: 50px;
    border: 0;
    border-right: 1px solid rgba(17, 17, 17, 0.12);
    background: transparent;
    color: #111;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    padding: 0;
    text-align: left;
    font-size: 0.8rem;
    font-weight: 850;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    transition: background-color 0.2s ease, color 0.2s ease;
}
.luv-detail-top-cart-btn:hover,
.luv-detail-top-cart-btn:focus {
    background: transparent;
    color: #111;
    outline: none;
}
.luv-detail-top-cart-label strong {
    color: inherit;
    font-weight: 900;
}
.luv-detail-top-cart-divider {
    opacity: 0.65;
}
.luv-detail-top-cart-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #111;
    font-size: 1rem;
    line-height: 1;
}
.luv-detail-top-cart-count {
    position: absolute;
    top: -9px;
    right: -10px;
    min-width: 17px;
    height: 17px;
    padding: 0 5px;
    border-radius: 999px;
    background: #111;
    color: #fff;
    border: 1px solid #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.58rem;
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
}
.luv-detail-top-cart-count.is-empty {
    display: none;
}
.luv-product-detail-close:hover,
.luv-product-detail-close:focus {
    background: #fff;
    color: #ffa8b5;
    outline: none;
}
.luv-product-detail-inner {
    background: #fafafa;
    padding: 22px;
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-top: 0;
}
.luv-detail-gallery {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.luv-detail-main-wrap {
    position: relative;
}
.luv-detail-main-image,
.luv-detail-thumb {
    border: 0;
    padding: 0;
    background: #f1f1f1;
    border-radius: 6px;
    overflow: hidden;
    cursor: zoom-in;
}
.luv-detail-main-image img,
.luv-detail-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.luv-detail-main-image {
    aspect-ratio: 4 / 5;
    width: 100%;
    touch-action: pan-y;
}
.luv-detail-image-nav {
    position: absolute;
    top: 50%;
    width: 48px;
    height: 72px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.96);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: none;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.78);
    transform: translateY(-50%);
    z-index: 3;
    font-size: 1.65rem;
    transition: color 0.18s ease, transform 0.18s ease;
}
.luv-detail-image-prev {
    left: 4px;
}
.luv-detail-image-next {
    right: 4px;
}
.luv-detail-image-nav:hover {
    color: #ffa8b5;
    outline: none;
    transform: translateY(-50%) scale(1.04);
}
.luv-detail-image-nav:focus,
.luv-detail-image-nav:active {
    background: transparent;
    color: rgba(255, 255, 255, 0.96);
    outline: none;
    transform: translateY(-50%);
}
.luv-detail-thumb-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.luv-detail-thumb {
    aspect-ratio: 1 / 1;
    border: 1px solid rgba(0, 0, 0, 0.08);
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
.luv-detail-thumb:hover,
.luv-detail-thumb:focus {
    opacity: 0.82;
    transform: translateY(-1px);
    border-color: rgba(255, 168, 181, 0.9);
    outline: none;
}
.luv-detail-thumb.is-active {
    border-color: #ffa8b5;
    opacity: 1;
    box-shadow: 0 0 0 2px rgba(255, 168, 181, 0.18);
}
.luv-detail-main-image img {
    transition: transform 0.17s ease, opacity 0.17s ease;
    transform: translate3d(0, 0, 0);
}
.luv-detail-main-image img.is-changing {
    opacity: 0.45;
    filter: blur(3px);
}
.luv-detail-main-image img.is-sliding {
    will-change: transform, opacity;
}
.luv-detail-main-image img.is-slide-out-left,
.luv-detail-main-image img.is-slide-in-left {
    opacity: 0.58;
    transform: translate3d(-22px, 0, 0);
}
.luv-detail-main-image img.is-slide-out-right,
.luv-detail-main-image img.is-slide-in-right {
    opacity: 0.58;
    transform: translate3d(22px, 0, 0);
}
@media (prefers-reduced-motion: reduce) {
    .luv-detail-main-image img {
        transition: none;
    }
}

@keyframes luvDetailCloseIconPulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.45;
        transform: scale(1.12);
    }
}

@media (max-width: 991px) {
    .luv-product-detail-panel .luv-detail-closebar {
        background: rgba(0, 0, 0, 0.92) !important;
        color: #fff !important;
        border-bottom-color: rgba(255, 255, 255, 0.14) !important;
        box-shadow: 0 6px 22px rgba(0, 0, 0, 0.22) !important;
    }
    .luv-product-detail-panel .luv-detail-top-cart-btn,
    .luv-product-detail-panel .luv-detail-top-cart-btn:hover,
    .luv-product-detail-panel .luv-detail-top-cart-btn:focus,
    .luv-product-detail-panel .luv-detail-top-cart-icon {
        color: #fff !important;
    }
    .luv-product-detail-panel .luv-detail-top-cart-btn {
        border-right-color: rgba(255, 255, 255, 0.18) !important;
    }
    .luv-product-detail-panel .luv-product-detail-close i {
        animation: luvDetailCloseIconPulse 1.65s ease-in-out infinite;
        transform-origin: center;
    }
}
.luv-detail-info {
    min-width: 0;
}
.luv-detail-kicker {
    margin-top: 4px;
    margin-bottom: 8px;
    color: #ffa8b5;
    font-size: 0.62rem;
    font-weight: 800;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0;
}
.luv-detail-title {
    margin: 0 0 14px;
    color: #111;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4vw, 3rem);
    font-style: italic;
    font-weight: 400;
    line-height: 1.08;
    letter-spacing: 0;
    text-align: center;
    overflow-wrap: anywhere;
}
.luv-detail-discount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
    padding: 4px 9px;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    font-size: 0.7rem;
    font-weight: 900;
    line-height: 1;
}
.luv-detail-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #111;
    font-size: 1.16rem;
    font-weight: 900;
    letter-spacing: 0;
}
.luv-detail-old-price {
    color: #dc3545;
    font-size: 0.86rem;
    font-weight: 700;
    text-decoration: line-through;
}
.luv-detail-vat-included {
    color: #777;
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}
.luv-detail-desc {
    margin: 0 0 22px;
    color: #555;
    font-size: 0.94rem;
    line-height: 1.75;
    letter-spacing: 0;
}
.luv-detail-action-row {
    position: relative;
    display: block;
    align-items: stretch;
    width: 100%;
}
.luv-detail-add-btn {
    position: relative;
    width: 100%;
    min-height: 48px;
    border: 1px solid #111;
    border-radius: 6px;
    background: #111;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 58px;
    font-size: 0.78rem;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.16s ease;
}
.luv-detail-qty-btn {
    display: none;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 48px;
    min-height: 48px;
    border: 1px solid #111;
    border-radius: 6px;
    background: #fff;
    color: #111;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    line-height: 1;
    box-shadow: none;
    z-index: 3;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.16s ease, opacity 0.2s ease;
}
.luv-detail-minus {
    left: 0;
    border-radius: 6px 0 0 6px;
}
.luv-detail-plus {
    right: 0;
    border-radius: 0 6px 6px 0;
}
.luv-detail-action-row.is-in-cart .luv-detail-qty-btn {
    display: inline-flex;
}
.luv-detail-action-row.can-add:not(.is-in-cart) .luv-detail-plus {
    display: inline-flex;
}
.luv-detail-qty-btn.is-disabled {
    opacity: 0.38;
    cursor: not-allowed;
}
.luv-detail-add-btn:hover,
.luv-detail-add-btn:focus,
.luv-detail-qty-btn:hover,
.luv-detail-qty-btn:focus {
    background: #ffa8b5;
    border-color: #ffa8b5;
    color: #fff;
    outline: none;
}
.luv-detail-add-btn:active,
.luv-detail-qty-btn:active {
    transform: scale(0.985);
}
.luv-detail-add-btn.is-in-cart,
.luv-detail-add-btn:disabled {
    background: #ffa8b5;
    border-color: #ffa8b5;
    color: #fff;
    opacity: 1;
}
.luv-detail-cart-count {
    display: none;
    position: absolute;
    top: -11px;
    left: 50%;
    transform: translateX(-50%);
    min-width: 21px;
    height: 21px;
    padding: 0 6px;
    border-radius: 999px;
    background: #111;
    color: #fff;
    border: 2px solid #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
    align-items: center;
    justify-content: center;
    font-size: 0.68rem;
    font-weight: 900;
    line-height: 1;
    z-index: 2;
    pointer-events: none;
}
.luv-detail-action-row.is-in-cart .luv-detail-cart-count {
    display: inline-flex;
}
.luv-detail-add-icon {
    display: none;
}
.luv-detail-action-row.is-in-cart .luv-detail-add-icon {
    display: inline-block;
}
.luv-detail-accordion {
    margin-top: 26px;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.luv-detail-accordion-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.luv-detail-accordion-btn {
    width: 100%;
    border: 0;
    background: transparent;
    color: #111;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
    letter-spacing: 0;
}
.luv-detail-accordion-btn i {
    width: 18px;
    color: #888;
    font-size: 0.95rem;
}
.luv-detail-accordion-btn:not(.collapsed),
.luv-detail-accordion-btn[aria-expanded="true"] {
    color: #ffa8b5;
}
.luv-detail-accordion-btn:not(.collapsed) i,
.luv-detail-accordion-btn[aria-expanded="true"] i {
    color: #ffa8b5;
}
.luv-detail-accordion-body {
    padding: 0 0 18px 30px;
    color: #555;
    font-size: 0.9rem;
    line-height: 1.7;
}
.luv-detail-feature-block {
    margin-bottom: 18px;
    padding-bottom: 0;
    border-bottom: 0;
}
.luv-detail-feature-block h6 {
    margin: 0 0 8px;
    color: #111;
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0;
}
.luv-detail-feature-block p {
    margin: 0;
}
.luv-detail-size-block,
.luv-detail-customization-block {
    margin-top: 16px;
}
.luv-detail-size-block h6,
.luv-detail-customization-block h6 {
    margin: 0 0 8px;
    color: #111;
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0;
}
.luv-detail-size-block p,
.luv-detail-customization-block p {
    margin: 0;
}
.luv-detail-size-chart-link,
.luv-detail-customization-link {
    display: inline-flex;
    margin-top: 7px;
    border: 0;
    background: transparent;
    color: #ffa8b5;
    padding: 0;
    font-size: 0.84rem;
    font-weight: 800;
    line-height: 1.35;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.luv-detail-inline-chart-link {
    display: inline;
    margin-top: 0;
    vertical-align: baseline;
}
.luv-detail-size-chart-link:hover,
.luv-detail-size-chart-link:focus,
.luv-detail-customization-link:hover,
.luv-detail-customization-link:focus {
    color: #111;
    outline: none;
}
.luv-detail-extension-text {
    margin-top: 14px !important;
}
.luv-detail-general-block {
    margin-top: 16px;
}
.luv-detail-general-block h6 {
    margin: 0 0 8px;
    color: #111;
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0;
}
.luv-detail-general-info {
    margin: 0;
}
.luv-detail-care-list {
    margin: 0;
    padding-left: 18px;
}
.luv-detail-care-list li {
    margin-bottom: 8px;
}
.luv-detail-care-list li:last-child {
    margin-bottom: 0;
}
.luv-detail-stock-heading {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 0;
    color: #111;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
    letter-spacing: 0;
}
.luv-detail-stock-heading i {
    width: 18px;
    color: #ffa8b5;
    font-size: 0.95rem;
}
.luv-detail-assistance-heading {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 0;
    color: #111;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.18rem;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
    letter-spacing: 0;
}
.luv-detail-assistance-heading i {
    width: 18px;
    color: #25d366;
    font-size: 0.95rem;
}
.luv-detail-stock-panel {
    padding: 0 0 18px 30px;
}
.luv-detail-assistance-panel {
    padding: 0 0 18px 30px;
}
.luv-detail-stock-panel h6 {
    margin: 0 0 12px;
    color: #111;
    font-size: 0.68rem;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0;
}
.luv-detail-meta {
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
}
.luv-detail-meta-assistance {
    padding-top: 0;
    border-top: 0;
}
.luv-detail-meta h6 {
    margin: 0 0 12px;
    color: #111;
    font-size: 0.68rem;
    font-weight: 900;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0;
}
.luv-detail-stock-list {
    margin-bottom: 22px;
    color: #444;
    font-size: 0.78rem;
    line-height: 1.55;
}
.luv-detail-stock-panel .luv-detail-stock-list {
    margin-bottom: 0;
}
.luv-detail-stock-help {
    margin: -4px 0 12px;
    color: #666;
    font-size: 0.8rem;
    line-height: 1.55;
}
.luv-detail-stock-list > span:first-child {
    display: none;
}
.luv-detail-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #111 !important;
    text-decoration: none !important;
    font-size: 0.85rem;
    font-weight: 800;
    letter-spacing: 0;
}
.luv-detail-whatsapp i {
    color: #25d366;
    font-size: 1.1rem;
}
.luv-detail-whatsapp:hover,
.luv-detail-whatsapp:focus {
    color: #25d366 !important;
    outline: none;
}
@media (min-width: 992px) {
    .luv-product-detail-panel.is-open {
        min-height: 0;
    }
    .luv-product-detail-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 34px;
        margin-top: 18px;
        padding: 0;
        background: transparent;
        border: 0;
    }
    .luv-detail-closebar {
        justify-content: flex-end;
    }
    .luv-product-detail-close {
        margin-left: auto;
    }
    .luv-detail-info {
        position: sticky;
        top: 92px;
        align-self: start;
        padding-bottom: 24px;
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }
    .luv-detail-meta {
        margin-top: auto;
    }
}
@media (max-width: 991px) {
    body.luv-product-detail-open {
        overflow: hidden !important;
    }
    body.luv-product-detail-open #glass-cart-bar,
    body.luv-product-detail-open #backToTopBtn,
    body.luv-product-detail-open #cartScrollDownHint {
        display: none !important;
    }
    .luv-product-detail-panel {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 2147482000;
        background: rgba(250, 250, 250, 0.9);
        backdrop-filter: saturate(160%) blur(10px);
        -webkit-backdrop-filter: saturate(160%) blur(10px);
        transform: translateY(-110%);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: transform 0.5s cubic-bezier(0.22, 0.9, 0.28, 1), opacity 0.28s ease, visibility 0.28s ease;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }
    .luv-product-detail-panel.is-open {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
    .luv-product-detail-panel.is-closing {
        transform: translateY(110%);
        opacity: 0;
        visibility: visible;
        pointer-events: none;
    }
    .luv-detail-closebar {
        top: 0;
        z-index: 2147482001;
        background: rgba(255, 255, 255, 0.82);
        backdrop-filter: saturate(170%) blur(18px);
        -webkit-backdrop-filter: saturate(170%) blur(18px);
        border-bottom: 1px solid rgba(17, 17, 17, 0.08);
        box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
        padding-left: 18px;
        padding-right: 18px;
    }
    .luv-product-detail-close {
        background: transparent;
        color: #111;
        min-height: calc(52px + env(safe-area-inset-top, 0px));
        padding-top: env(safe-area-inset-top, 0px);
    }
    .luv-product-detail-close:hover,
    .luv-product-detail-close:focus,
    .luv-product-detail-close:active {
        background: transparent;
        color: #ffa8b5;
    }
    .luv-product-detail-inner {
        background: rgba(250, 250, 250, 0.9);
        min-height: 0;
        padding: 18px 18px calc(22px + env(safe-area-inset-bottom, 0px));
        border: 0;
    }
    .luv-detail-gallery {
        margin-bottom: 24px;
    }
    .luv-detail-image-nav {
        width: 42px;
        height: 64px;
        font-size: 1.35rem;
    }
    .luv-detail-image-prev {
        left: 2px;
    }
    .luv-detail-image-next {
        right: 2px;
    }
    .luv-detail-thumb-grid {
        display: flex;
        grid-template-columns: none;
        gap: 8px;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 1px 2px 6px;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .luv-detail-thumb-grid::-webkit-scrollbar {
        display: none;
    }
    .luv-detail-thumb {
        flex: 0 0 clamp(56px, 16vw, 74px);
        scroll-snap-align: start;
    }
    .luv-detail-title {
        font-size: clamp(2rem, 10vw, 2.55rem);
    }
    .luv-detail-desc {
        font-size: 0.9rem;
        line-height: 1.75;
    }
}

.luv-detail-closebar {
    display: flex !important;
    align-items: stretch !important;
    background: rgba(255, 255, 255, 0.82) !important;
    backdrop-filter: saturate(170%) blur(18px) !important;
    -webkit-backdrop-filter: saturate(170%) blur(18px) !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.08) !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06) !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
}
.luv-detail-top-cart-btn {
    order: 1;
    flex: 1 1 auto !important;
    justify-content: flex-start !important;
    text-align: left !important;
    background: transparent !important;
    color: #111 !important;
    border-left: 0 !important;
    border-right: 1px solid rgba(17, 17, 17, 0.12) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.luv-detail-top-cart-btn:hover,
.luv-detail-top-cart-btn:focus {
    background: transparent !important;
    color: #111 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.luv-detail-top-cart-icon {
    color: #111 !important;
}
.luv-product-detail-close {
	padding-left: 15px;
    order: 2;
    flex: 0 1 auto !important;
    justify-content: flex-end !important;
    text-align: right !important;
    background: #ffa8b5 !important;
    color: #111 !important;
    border: 1px solid #ffa8b5 !important;
    border-radius: 6px !important;
    padding-right: 15px !important;
}
.luv-product-detail-close:hover,
.luv-product-detail-close:focus,
.luv-product-detail-close:active {
    background: #fff !important;
    color: #ffa8b5 !important;
    border-color: #ffa8b5 !important;
    box-shadow: 0 0 0 2px rgba(255, 168, 181, 0.18) !important;
}
.luv-detail-action-row.can-add:not(.is-in-cart) .luv-detail-plus {
    display: none !important;
}
.luv-detail-action-row.is-in-cart .luv-detail-plus {
    display: inline-flex !important;
}
.luv-detail-top-cart-label {
	margin-left: 10px;
}
@media (max-width: 991px) {
    .luv-detail-closebar {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
}
@media (min-width: 768px) {
    .luv-detail-meta-assistance {
        margin-top: 34px !important;
        padding-top: 20px !important;
        border-top: 0 !important;
    }
}
@media (min-width: 992px) {
    .luv-detail-closebar {
        justify-content: flex-end !important;
    }
    .luv-product-detail-close {
        margin-left: auto !important;
    }
}
@media (min-width: 768px) and (max-width: 991.98px), (max-width: 991.98px) and (orientation: landscape) {
    .luv-product-detail-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        align-items: start;
        gap: 24px;
    }
    .luv-detail-gallery {
        position: sticky;
        top: calc(68px + env(safe-area-inset-top, 0px));
        align-self: start;
        margin-bottom: 0;
    }
    .luv-detail-main-image {
        max-height: min(68svh, 540px);
    }
    .luv-detail-info {
        min-width: 0;
    }
    .luv-detail-title {
        font-size: clamp(1.8rem, 4vw, 2.35rem);
    }
    .luv-detail-thumb {
        flex: 0 0 64px;
    }
}
@media (max-width: 767.98px) and (orientation: landscape) {
    .luv-product-detail-inner {
        grid-template-columns: minmax(190px, 0.42fr) minmax(0, 0.58fr);
        gap: 18px;
        padding-top: 14px;
    }
    .luv-detail-gallery {
        top: calc(62px + env(safe-area-inset-top, 0px));
    }
    .luv-detail-main-image {
        max-height: calc(100svh - 118px);
    }
    .luv-detail-title {
        font-size: clamp(1.55rem, 5vw, 2rem);
    }
    .luv-detail-accordion-btn,
    .luv-detail-stock-heading,
    .luv-detail-assistance-heading {
        font-size: 1.05rem;
        padding-top: 14px;
        padding-bottom: 14px;
    }
}

/* product_cart_id promo ve ürün kartı indirim düzeni */
@keyframes luvDiscountPricePulse {
    0%, 100% { opacity: 1; }
    50% { opacity: .54; }
}
.luv-discount-price-pulse,
.luv-promo-price-pulse {
    animation: luvDiscountPricePulse 1.45s ease-in-out infinite;
}
.product-price-row,
.promo-price-wrap {
    display: flex;
    align-items: baseline;
    gap: 4px;
    flex-wrap: nowrap;
}
.product-price-row .product-old-price,
.product-price-row .product-new-price,
#promo-old-price,
#promo-new-price {
    white-space: nowrap;
}
.add-compact-text,
#promo-add-btn .promo-add-compact {
    display: none;
}
.add-btn,
#promo-add-btn,
.promo-inspect-btn {
    white-space: nowrap;
}
.promo-button-row {
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    gap: 8px;
}
.promo-button-row .promo-inspect-btn,
.promo-button-row #promo-add-btn {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    border-radius: 50px !important;
    padding: 6px 20px !important;
    line-height: 1.2 !important;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.promo-inspect-btn {
    background: #fff;
    border: 1px solid #111;
    color: #111;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.promo-inspect-btn:hover,
.promo-inspect-btn:focus {
    background: #111;
    border-color: #111;
    color: #fff;
    outline: none;
}
#promo-add-btn:hover,
#promo-add-btn:focus {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    outline: none;
}
@media (max-width: 430px) {
    .promo-button-row {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }
    .promo-button-row .promo-inspect-btn,
    .promo-button-row #promo-add-btn {
        width: 100%;
    }
}
@media (max-width: 347.98px) {
    .product-price-row,
    .promo-price-wrap {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1px;
    }
    .promo-price-wrap {
        align-items: flex-end;
    }
    .product-price-row .product-old-price,
    #promo-old-price {
        margin-right: 0 !important;
        font-size: .72rem !important;
        line-height: 1.05;
    }
    .product-price-row .product-new-price,
    #promo-new-price {
        font-size: .98rem !important;
        line-height: 1.05;
    }
    .add-full-text,
    #promo-add-btn .promo-add-full {
        display: none;
    }
    .add-compact-text,
    #promo-add-btn .promo-add-compact {
        display: inline;
    }
    .promo-inspect-btn {
        display: none;
    }
}
@media (prefers-reduced-motion: reduce) {
    .luv-discount-price-pulse,
    .luv-promo-price-pulse {
        animation: none;
    }
}

.luv-cart-campaign-note {
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px dashed rgba(255, 168, 181, 0.45);
    color: #8b4a57;
    font-size: 0.66rem;
    line-height: 1.35;
    font-weight: 600;
}

.campaign-card-badge {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 45;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(255, 255, 255, .86);
    border-radius: 50%;
    background: #ffa8b5;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 8px 20px rgba(255, 168, 181, .44), 0 5px 14px rgba(0, 0, 0, .16);
    cursor: pointer;
    overflow: visible;
    transition: transform .18s ease, background-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.product-card:has(.campaign-card-badge) {
    overflow: hidden;
}

.campaign-card-badge i {
    position: relative;
    z-index: 2;
    font-size: .76rem;
    text-shadow: 0 1px 4px rgba(0, 0, 0, .18);
    animation: luvCampaignIconBlink 1.15s ease-in-out infinite;
}

.campaign-card-badge::before {
    content: "";
    position: absolute;
    inset: -3px;
    border-radius: inherit;
    background: rgba(255, 168, 181, .35);
    animation: luvCampaignBadgePulse 1.35s ease-out infinite;
}

.campaign-card-badge:hover,
.campaign-card-badge:focus,
.campaign-card-badge.is-open {
    background: #111;
    color: #ffa8b5;
    transform: translateY(-2px) scale(1.04);
    outline: none;
    box-shadow: 0 16px 34px rgba(0, 0, 0, .28);
}

.discount-badge.luv-discount-badge-offset {
    bottom: 56px;
}

.luv-campaign-tooltip {
    display: none !important;
}

.luv-campaign-tooltip::after {
    content: "";
    position: absolute;
    left: 16px;
    top: 100%;
    border-width: 7px 7px 0 7px;
    border-style: solid;
    border-color: #111 transparent transparent transparent;
}

.campaign-card-badge:hover .luv-campaign-tooltip,
.campaign-card-badge:focus .luv-campaign-tooltip,
.campaign-card-badge.is-open .luv-campaign-tooltip {
    display: none !important;
}

.luv-campaign-floating-tooltip {
    position: fixed;
    z-index: 9999;
    max-width: min(300px, calc(100vw - 20px));
    padding: 0;
    border-radius: 14px;
    background: #fff;
    color: #2b2b2b;
    border: 1px solid rgba(255, 168, 181, .62);
    box-shadow: 0 14px 38px rgba(232, 93, 122, .16), 0 10px 28px rgba(0, 0, 0, .12);
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
    overflow: hidden;
}

.luv-campaign-floating-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.luv-campaign-tip-inner {
    padding: 11px 13px 12px;
}

.luv-campaign-tip-title {
    font-size: .84rem;
    line-height: 1.25;
    font-weight: 800;
    color: #e85d7a;
    letter-spacing: .01em;
    margin-bottom: 5px;
}

.luv-campaign-tip-desc {
    font-size: .74rem;
    line-height: 1.4;
    font-weight: 600;
    color: #333;
}

.luv-campaign-tip-scope {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px dashed rgba(255, 168, 181, .45);
    color: #6b4a52;
    font-size: .72rem;
    line-height: 1.45;
    font-weight: 600;
    display: flex;
    gap: 6px;
    align-items: flex-start;
    word-break: break-word;
}

.luv-campaign-tip-scope i {
    color: #e85d7a;
    font-size: .62rem;
    margin-top: 2px;
    flex-shrink: 0;
}

.luv-swal-standard .swal2-actions:not(:has(.swal2-confirm)):not(:has(.swal2-cancel)):not(:has(.swal2-deny)) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

.luv-campaign-tip-meta {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin-top: 7px;
    padding-top: 7px;
    border-top: 1px solid rgba(255, 168, 181, .28);
    font-size: .68rem;
    line-height: 1.35;
    font-weight: 500;
    color: #666;
}

.luv-campaign-tip-meta i {
    color: #e85d7a;
    font-size: .62rem;
    margin-top: 2px;
    flex-shrink: 0;
}

@keyframes luvCampaignIconBlink {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: .45; transform: scale(.92); }
}

@keyframes luvCampaignBadgePulse {
    0% { opacity: .65; transform: scale(.82); }
    100% { opacity: 0; transform: scale(1.35); }
}

		@media (max-width: 576px) {
		    .campaign-card-badge {
		        left: 6px;
		        bottom: 6px;
		        width: 26px;
		        height: 26px;
		    }
    .campaign-card-badge i {
        font-size: .72rem;
    }
    .discount-badge.luv-discount-badge-offset {
        bottom: 44px;
    }
    .luv-campaign-tooltip {
        min-width: 172px;
        max-width: 74vw;
        font-size: .68rem;
    }
}


/* Product detail close bar polish */
.luv-detail-closebar{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border-bottom:0!important;box-shadow:none!important;align-items:center!important}@media (min-width:992px){.luv-detail-closebar{padding-right:0!important}.luv-product-detail-close{min-height:38px!important;align-self:center!important;margin-left:auto!important;padding:8px 16px!important}}@media (max-width:991px){.luv-product-detail-panel .luv-detail-closebar{background:rgba(0,0,0,.92)!important;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.14)!important;box-shadow:0 6px 22px rgba(0,0,0,.22)!important;align-items:stretch!important}.luv-product-detail-panel .luv-product-detail-close,.luv-product-detail-panel .luv-product-detail-close:hover,.luv-product-detail-panel .luv-product-detail-close:focus,.luv-product-detail-panel .luv-product-detail-close:active{background:transparent!important;border:0!important;border-radius:6px!important;box-shadow:none!important;color:#ffa8b5!important;padding-left:12px!important;padding-right:0!important}.luv-product-detail-panel .luv-product-detail-close:hover,.luv-product-detail-panel .luv-product-detail-close:focus{color:#fff!important}}

/* SweetAlert final standard: every popup keeps the same inner spacing and button rhythm. */
:root{--luv-swal-standard-pad:20px}.swal2-popup,.swal2-popup.luv-swal-standard,.swal2-popup.luv-manual-order-swal,.swal2-popup.luv-payment-error-popup,.swal2-popup.luv-payment-processing-popup,.swal2-popup.luv-customer-autofill-popup,.swal2-popup.luv-swal-cart-clear{width:min(92vw,430px)!important;max-width:92vw!important;padding:var(--luv-swal-standard-pad)!important;box-sizing:border-box!important}.swal2-popup .swal2-html-container{max-width:100%!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}.swal2-popup .swal2-actions,.swal2-popup .luv-swal-actions-standard,.swal2-popup .luv-swal-actions-wrap{width:100%!important;max-width:100%!important;display:flex!important;align-items:stretch!important;justify-content:center!important;flex-wrap:wrap!important;gap:10px!important}.swal2-popup .swal2-styled,.swal2-popup .luv-swal-btn,.swal2-popup .luv-swal-confirm-standard,.swal2-popup .luv-swal-cancel-standard,.swal2-popup .luv-swal-deny-standard,.swal2-popup .luv-swal-confirm-btn,.swal2-popup .luv-swal-cancel-btn,.swal2-popup .luv-swal-clear-btn,.swal2-popup .vip-btn-style,.swal2-popup .luv-success-btn{min-width:128px!important;max-width:100%!important;min-height:38px!important;padding:10px 22px!important;box-sizing:border-box!important;white-space:normal!important;overflow-wrap:anywhere!important}@media (max-width:420px){.swal2-popup,.swal2-popup.luv-swal-standard,.swal2-popup.luv-manual-order-swal,.swal2-popup.luv-payment-error-popup,.swal2-popup.luv-payment-processing-popup,.swal2-popup.luv-customer-autofill-popup,.swal2-popup.luv-swal-cart-clear{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;padding:var(--luv-swal-standard-pad)!important}.swal2-popup .swal2-styled,.swal2-popup .luv-swal-btn,.swal2-popup .luv-swal-confirm-standard,.swal2-popup .luv-swal-cancel-standard,.swal2-popup .luv-swal-deny-standard,.swal2-popup .luv-swal-confirm-btn,.swal2-popup .luv-swal-cancel-btn,.swal2-popup .luv-swal-clear-btn,.swal2-popup .vip-btn-style,.swal2-popup .luv-success-btn{flex:1 1 136px!important;min-width:0!important;padding-left:14px!important;padding-right:14px!important}}

#step1-container{position:relative}#step1-container.luv-cart-bootstrapping>*:not(#luv-cart-bootstrap-overlay){filter:blur(3px);-webkit-filter:blur(3px);opacity:.72;pointer-events:none;user-select:none}.luv-cart-bootstrap-overlay{position:absolute;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.42);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,visibility .16s ease}.luv-cart-bootstrap-overlay.is-active{opacity:1;visibility:visible;pointer-events:auto}.luv-cart-bootstrap-spinner{width:30px;height:30px;border:2.5px solid rgba(255,168,181,.28);border-top-color:#ffa8b5;border-radius:50%;animation:luvCartBootstrapSpin .8s linear infinite}@keyframes luvCartBootstrapSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.luv-cart-bootstrap-spinner{animation:none}}
