/* ============================================================
   BOTONES FLOTANTES — reemplaza el bloque actual en style.css
   ============================================================ */

.floating-buttons-container {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
    display: flex;
    flex-direction: column;   /* apilados verticalmente */
    gap: 12px;                /* espacio entre cada botón */
    align-items: center;
}

/* El wrapper de Cameron (botón rosado) */
/* cameron-widget.js posiciona #cam-btn de forma independiente,
   así que ocultamos el wrapper placeholder */
#cam-btn-wrapper {
    display: none;
}

/* ── Yape ─────────────────────────────────────────────────── */
.yape-float {
    width: 60px;
    height: 60px;
    background-color: #711891;
    border-radius: 50%;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.3);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    animation: pulse-yape 2s infinite;
}
.yape-float:hover {
    transform: scale(1.1);
    background-color: #5a136e;
    animation: none;
}
.yape-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    object-fit: contain;
}
@keyframes pulse-yape {
    0%   { box-shadow: 0 0 0 0 rgba(113,24,145,0.7); }
    70%  { box-shadow: 0 0 0 15px rgba(113,24,145,0); }
    100% { box-shadow: 0 0 0 0 rgba(113,24,145,0); }
}

/* ── WhatsApp ─────────────────────────────────────────────── */
.whatsapp-float {
    width: 60px;
    height: 60px;
    background-color: #25d366;
    border-radius: 50%;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.3);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    animation: pulse-whatsapp 2s infinite;
}
.whatsapp-float:hover {
    transform: scale(1.1);
    background-color: #128C7E;
    animation: none;
}
.whatsapp-icon {
    width: 32px;
    height: 32px;
}
@keyframes pulse-whatsapp {
    0%   { box-shadow: 0 0 0 0 rgba(37,211,102,0.7); }
    70%  { box-shadow: 0 0 0 15px rgba(37,211,102,0); }
    100% { box-shadow: 0 0 0 0 rgba(37,211,102,0); }
}

/* ── Notificación Yape ────────────────────────────────────── */
.yape-notification {
    position: absolute;
    top: -5px; right: -5px;
    width: 20px; height: 20px;
    background-color: #ff4757;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    color: white; font-size: 12px; font-weight: bold;
    animation: notification-pulse 1.5s infinite;
}
@keyframes notification-pulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.1); }
    100% { transform: scale(1); }
}

/* ── Modal Yape ───────────────────────────────────────────── */
.yape-modal {
    display: none;
    position: fixed;
    bottom: 160px;
    right: 90px;           /* a la izquierda de los botones */
    background: white;
    padding: 20px;
    border-radius: 15px;
    box-shadow: 0 5px 25px rgba(0,0,0,0.2);
    z-index: 1003;
    max-width: 280px;
    animation: slideUp 0.3s ease;
    border: 1px solid #e0e0e0;
}
.yape-modal-content { text-align: center; }
.yape-modal-content h3 { margin: 0 0 10px; color: #333; font-size: 18px; }
.yape-modal-content p  { margin: 5px 0; color: #666; font-size: 14px; }
.yape-qr {
    width: 200px; height: 200px;
    margin: 10px auto; display: block;
    border: 1px solid #f0f0f0;
    border-radius: 8px; object-fit: contain;
    background-color: #f9f9f9;
}
.yape-close {
    background: #711891; color: white;
    border: none; padding: 8px 15px;
    border-radius: 5px; cursor: pointer;
    margin-top: 10px; font-size: 14px;
    transition: background 0.3s;
}
.yape-close:hover { background: #5a136e; }
.yape-copy {
    background-color: #f0e6f5; color: #711891;
    border: 1px solid #711891; border-radius: 5px;
    padding: 5px 10px; margin: 5px 0;
    cursor: pointer; font-size: 12px;
    transition: all 0.3s;
    display: flex; align-items: center; justify-content: center;
    gap: 5px; width: 100%;
}
.yape-copy:hover { background-color: #711891; color: white; }
.yape-copy.copied { background-color: #4CAF50; color: white; border-color: #4CAF50; }

@keyframes slideUp {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Responsive ───────────────────────────────────────────── */
@media screen and (max-width: 768px) {
    .floating-buttons-container { bottom: 15px; right: 15px; gap: 10px; }
    .whatsapp-float, .yape-float { width: 55px; height: 55px; }
    .whatsapp-icon, .yape-icon   { width: 28px; height: 28px; }
    .yape-modal { bottom: 140px; right: 80px; max-width: 250px; }
    .yape-qr    { width: 180px; height: 180px; }
}
@media screen and (max-width: 480px) {
    .whatsapp-float, .yape-float { width: 50px; height: 50px; }
}