/* ============================================================
   Speed Dial v1 — Sol-alt FAB, alttan üste açılır
   - WhatsApp + PWA Install (koşullu) tek FAB altında toplanır
   - ASE bubble bağımsız (sağda kendi yerinde)
   - Sticky cart bar ile çakışmaz (bottom: 95px → cart sayfasında 25px)
   - Marka renkleri --gr-* CSS variables üzerinden
============================================================ */

/* Container */
.speed-dial {
    position: fixed;
    bottom: 95px;
    left: 16px;
    z-index: 999;
    pointer-events: none;
}
.speed-dial > * { pointer-events: auto; }

body.page-cart .speed-dial,
body[data-page="cart"] .speed-dial { bottom: 25px; }

/* Backdrop — KALDIRILDI: Tıklamayı engelliyordu.
   Click-outside-to-close JS aşağıda halleder. */
.speed-dial-backdrop {
    display: none !important;
}
.speed-dial.is-open .speed-dial-backdrop {
    display: none !important;
}

/* Items container — FAB'in üstünde dizilir */
.speed-dial-items {
    position: absolute;
    bottom: 64px;
    left: 0;
    display: flex;
    flex-direction: column-reverse;
    gap: 12px;
    pointer-events: none;
}
.speed-dial.is-open .speed-dial-items { pointer-events: auto; }

/* Item */
.speed-dial-item {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 10px;
    opacity: 0;
    transform: translateY(20px) scale(0.6);
    transition: opacity 250ms cubic-bezier(0.34, 1.56, 0.64, 1),
                transform 250ms cubic-bezier(0.34, 1.56, 0.64, 1);
}
.speed-dial.is-open .speed-dial-item {
    opacity: 1;
    transform: translateY(0) scale(1);
}
.speed-dial.is-open .speed-dial-item[data-index="1"] { transition-delay: 0ms; }
.speed-dial.is-open .speed-dial-item[data-index="2"] { transition-delay: 60ms; }
.speed-dial.is-open .speed-dial-item[data-index="3"] { transition-delay: 120ms; }

/* Item button (kendi WA + slot için Install) */
.speed-dial-btn {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
    transition: transform 180ms ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    flex-shrink: 0;
}
.speed-dial-btn:hover { transform: scale(1.08); color: #fff; }

.speed-dial-btn-wa {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.45);
    font-size: 1.375rem;
}

/* Label pill */
.speed-dial-label {
    background: var(--gr-bg-1, #1a1410);
    color: var(--gr-cream, #fff4e6);
    padding: 6px 12px;
    border-radius: 14px;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    user-select: none;
    /* Hizalama: en uzun label kadar genişlik, metin sağa yapışık (button'a yakın)
       → tüm label'ların hem sağ kenarı hem sol kenarı aynı x'te hizalanır */
    min-width: 132px;
    text-align: right;
}

/* PWA install butonu speed dial slot'una taşındığında stilini override et
   (mevcut .pwa-install-btn fixed positioning'i iptal) */
#speed-dial-install-slot #pwa-install-btn {
    position: static !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--gr-accent, #f9b423);
    color: var(--gr-primary-dark, #8a4b14);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 180ms ease;
    box-shadow: 0 4px 12px rgba(249, 180, 35, 0.45);
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    animation: none;
}
#speed-dial-install-slot #pwa-install-btn:hover { transform: scale(1.08); }
#speed-dial-install-slot .pwa-install-btn-badge { display: none !important; }

/* FAB */
.speed-dial-fab {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: none;
    background: linear-gradient(135deg, #E8C766 0%, #C9A847 100%);
    color: #1a1410;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4);
    transition: transform 250ms cubic-bezier(0.34, 1.56, 0.64, 1),
                background 250ms ease, box-shadow 250ms ease;
    position: relative;
    padding: 0;
    animation: brSpeedDialPulse 2.6s ease-in-out infinite;
}
@keyframes brSpeedDialPulse {
    0%, 100% { box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4), 0 0 0 0 rgba(232, 199, 102, 0.4); }
    50%      { box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4), 0 0 0 14px rgba(232, 199, 102, 0); }
}
.speed-dial.is-open .speed-dial-fab {
    transform: none;
    background: linear-gradient(135deg, #F2D58F 0%, #E8C766 100%);
    animation: none;
}
.speed-dial-fab:hover { transform: scale(1.06); color: #1a1410; }
.speed-dial.is-open .speed-dial-fab:hover { transform: scale(1.06); }

.speed-dial-icon-open,
.speed-dial-icon-close {
    position: absolute;
    transition: opacity 200ms ease;
}
.speed-dial-icon-close { opacity: 0; }
.speed-dial.is-open .speed-dial-icon-open { opacity: 0; }
.speed-dial.is-open .speed-dial-icon-close { opacity: 1; }

/* Mobil */
@media (max-width: 768px) {
    .speed-dial {
        left: 16px !important;
        bottom: 18px !important;
    }
    body.page-cart .speed-dial,
    body[data-page="cart"] .speed-dial { bottom: 20px; }
}


/* ============================================================
   SPEED DIAL OVERRIDE — Brasserie altın FAB
   ────────────────────────────────────────────────────────────
   Adım 5 Bölüm 2 — theme.css'ten birleştirildi

   - Turuncu (#e67e22) → altın gradient
   - 45° rotate KALDIRILDI (bug: X+rotate=+ olarak görünüyordu)
============================================================ */

/* ===== SPEED DIAL v3 (geri eklendi — cart bölümleri çıkarken kayboldu) ===== */
/* ===== SPEED DIAL v3 — backdrop yok, FAB altın ===== */
.br-speed-dial {
    position: fixed;
    bottom: 22px;
    left: 18px;
    z-index: 1000;
    pointer-events: none;
}
.br-speed-dial > * { pointer-events: auto; }

body.page-cart .br-speed-dial,
body[data-page="cart"] .br-speed-dial { bottom: 22px; }

/* Items - alttan üste */
.br-sd-items {
    position: absolute;
    bottom: 64px;
    left: 0;
    display: flex;
    flex-direction: column-reverse;
    gap: 14px;
    pointer-events: none;
}
.br-speed-dial.is-open .br-sd-items { pointer-events: auto; }

.br-sd-item {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 10px;
    opacity: 0;
    transform: translateY(20px) scale(0.6);
    transition: opacity 280ms cubic-bezier(0.34, 1.56, 0.64, 1),
                transform 280ms cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: pointer;
}
.br-speed-dial.is-open .br-sd-item {
    opacity: 1;
    transform: translateY(0) scale(1);
}
.br-speed-dial.is-open .br-sd-item[data-index="1"] { transition-delay: 0ms; }
.br-speed-dial.is-open .br-sd-item[data-index="2"] { transition-delay: 70ms; }
.br-speed-dial.is-open .br-sd-item[data-index="3"] { transition-delay: 140ms; }

.br-sd-btn {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
    transition: transform 180ms ease, box-shadow 180ms ease;
    flex-shrink: 0;
    padding: 0;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4);
}
.br-sd-btn:hover { transform: scale(1.1); color: #fff; }

.br-sd-btn-wa {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.5);
    font-size: 1.375rem;
}

/* Label pill — koyu, opak */
.br-sd-label {
    background: var(--br-bg-1);
    color: var(--br-gold);
    padding: 8px 14px;
    border-radius: 14px;
    font-family: var(--br-font-sans);
    font-size: 12.5px;
    font-weight: 500;
    letter-spacing: 0.3px;
    white-space: nowrap;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.5);
    border: 1px solid var(--br-gold-line);
    user-select: none;
}

/* PWA install butonu speed dial slot içine taşındığında */
#br-sd-install-slot #pwa-install-btn {
    position: static !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    border: none !important;
    background: var(--br-bg-2) !important;
    color: var(--br-gold) !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 180ms ease;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4) !important;
    flex-shrink: 0;
    margin: 0 !important;
    padding: 0 !important;
    animation: none !important;
    border: 1px solid var(--br-gold-line) !important;
}
#br-sd-install-slot #pwa-install-btn:hover { transform: scale(1.1); }
#br-sd-install-slot .pwa-install-btn-badge { display: none !important; }

/* FAB — altın gradient + pulse */
.br-sd-fab {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: none;
    background: linear-gradient(135deg, var(--br-gold) 0%, var(--br-gold-dark) 100%);
    color: var(--br-bg-1);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4);
    transition: transform 220ms cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
    padding: 0;
    animation: brFabPulse 2.6s ease-in-out infinite;
}
.br-sd-fab:hover { transform: scale(1.06); }
.br-speed-dial.is-open .br-sd-fab {
    animation: none;
    background: linear-gradient(135deg, var(--br-gold-dark) 0%, var(--br-gold-deep) 100%);
}

@keyframes brFabPulse {
    0%, 100% { box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4), 0 0 0 0 rgba(232, 199, 102, 0.4); }
    50%      { box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4), 0 0 0 14px rgba(232, 199, 102, 0); }
}

.br-sd-icon-open,
.br-sd-icon-close {
    position: absolute;
    transition: opacity 200ms ease;
}
.br-sd-icon-close { opacity: 0; }
.br-speed-dial.is-open .br-sd-icon-open { opacity: 0; }
.br-speed-dial.is-open .br-sd-icon-close { opacity: 1; }


/* ============================================================
   SPEED DIAL — Brasserie altın FAB override
   - Turuncu (#e67e22) → altın gradient
   - 45° rotate KALDIRILDI (bug: X+rotate=+ olarak görünüyordu)
   - Pulse animasyonu eklendi
   - Backdrop yumuşatıldı (tıklamayı bloke etmesin)
============================================================ */

/* FAB — altın gradient + pulse */
.speed-dial-fab {
    background: linear-gradient(135deg, var(--br-gold) 0%, var(--br-gold-dark) 100%) !important;
    color: var(--br-bg-1) !important;
    box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4) !important;
    animation: brSpeedDialPulse 2.6s ease-in-out infinite;
}
@keyframes brSpeedDialPulse {
    0%, 100% { box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4), 0 0 0 0 rgba(232, 199, 102, 0.4); }
    50%      { box-shadow: 0 4px 16px rgba(232, 199, 102, 0.4), 0 0 0 14px rgba(232, 199, 102, 0); }
}
.speed-dial-fab svg {
    color: var(--br-bg-1) !important;
    stroke: var(--br-bg-1) !important;
}

/* Açıkken — rotate KALDIRILDI, sadece icon swap */
.speed-dial.is-open .speed-dial-fab {
    transform: none !important;
    background: linear-gradient(135deg, var(--br-gold-light) 0%, var(--br-gold) 100%) !important;
    animation: none !important;
}
.speed-dial-fab:hover {
    transform: scale(1.06) !important;
}
.speed-dial.is-open .speed-dial-fab:hover {
    transform: scale(1.06) !important;
}

/* Backdrop — tıklamayı bloke etmesin, sadece hafif blur */
.speed-dial-backdrop {
    background: transparent !important;
    pointer-events: none !important;
}
.speed-dial.is-open .speed-dial-backdrop {
    background: rgba(10, 9, 8, 0.32) !important;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    pointer-events: auto !important;
}

/* Speed dial items (WhatsApp + PWA) */
.speed-dial-item .speed-dial-label {
    background: rgba(26, 20, 16, 0.92) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid var(--br-gold-line) !important;
    color: var(--br-cream) !important;
    font-family: var(--br-font-sans) !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.3px !important;
    padding: 6px 12px !important;
    border-radius: 999px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}

/* WhatsApp item — yeşil korunur ama subtle */
.speed-dial-btn-wa {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important;
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.32) !important;
}
.speed-dial-btn-wa:hover {
    transform: scale(1.08) !important;
}

/* PWA install slot — altın aksan */
#speed-dial-install-slot #pwa-install-btn {
    background: linear-gradient(135deg, var(--br-gold-light) 0%, var(--br-gold) 100%) !important;
    color: var(--br-bg-1) !important;
    box-shadow: 0 4px 14px rgba(232, 199, 102, 0.35) !important;
    border: none !important;
}
#speed-dial-install-slot #pwa-install-btn svg,
#speed-dial-install-slot #pwa-install-btn i {
    color: var(--br-bg-1) !important;
}

/* Generic speed-dial-btn fallback */
.speed-dial-btn {
    border: none !important;
}

/* Mobile — cart pill ile çakışmasın */
@media (max-width: 768px) {
    .speed-dial { bottom: 20px !important; left: 14px !important; }
    body.page-cart .speed-dial,
    body[data-page="cart"] .speed-dial { bottom: 20px !important; }
}
@media (min-width: 769px) {
    .speed-dial { bottom: 20px !important; left: 22px !important; }
}

