.oksec-floating-container { position: fixed; bottom: 25px; right: 25px; z-index: 999998; font-family: system-ui, -apple-system, sans-serif; }
.oksec-floating-trigger { background-color: #25D366; color: #ffffff; border-radius: 50px; padding: 14px 24px; display: flex; align-items: center; gap: 10px; box-shadow: 0 4px 15px rgba(37, 211, 102, 0.35); cursor: pointer; font-weight: 600; font-size: 15px; transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.oksec-floating-trigger:hover { transform: translateY(-3px); box-shadow: 0 6px 20px rgba(37, 211, 102, 0.5); }
.oksec-icon-svg { width: 22px; height: 22px; fill: #ffffff; }
.oksec-modal-box { display: none; position: absolute; bottom: 75px; right: 0; width: 320px; background: #ffffff; border-radius: 16px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12); padding: 24px; box-sizing: border-box; border: 1px solid #e2e8f0; }
.oksec-modal-box.active { display: block; animation: oksecSlideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1); }
@keyframes oksecSlideUp { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } }
.oksec-modal-close { position: absolute; top: 12px; right: 16px; font-size: 22px; color: #94a3b8; cursor: pointer; transition: color 0.2s; }
.oksec-modal-close:hover { color: #334155; }
.oksec-modal-prompt { margin: 0 0 14px 0; font-size: 14px; color: #334155; line-height: 1.5; font-weight: 500; }
#oksecModalInput { width: 100%; padding: 11px 14px; border: 1px solid #cbd5e1; border-radius: 8px; margin-bottom: 14px; font-size: 14px; box-sizing: border-box; outline: none; transition: border-color 0.2s; }
#oksecModalInput:focus { border-color: #25D366; }
.oksec-modal-btn { width: 100%; background-color: #25D366; color: #ffffff; border: none; padding: 12px; border-radius: 8px; font-weight: 600; font-size: 14px; cursor: pointer; transition: background-color 0.2s; }
.oksec-modal-btn:hover { background-color: #128C7E; }

/* Botones Fichas y Catálogos */
.oksec-woo-btn-wrapper { width: 100%; clear: both; margin: 10px 0; }
.oksec-woo-action-btn { 
    background-color: #e6fbf0; 
    color: #128C7E; /* Verde WhatsApp más oscuro para mejor legibilidad */
    border: 1px solid #25D366; 
    border-radius: 4px; /* Bordes ligeramente más cuadrados, modernos */
    display: flex; 
    width: 100%; 
    justify-content: center; 
    align-items: center; 
    gap: 8px; 
    font-weight: 600; 
    cursor: pointer; 
    transition: all 0.2s ease; 
    box-sizing: border-box; 
}
.oksec-woo-action-btn:hover { 
    background-color: #25D366; 
    color: #ffffff; 
    border-color: #25D366; 
}
.oksec-woo-icon { fill: currentColor; }

/* Diferenciación: Catálogo vs Single Product */
.oksec-woo-btn-wrapper.is-loop .oksec-woo-action-btn {
    padding: 6px 10px;
    font-size: 11px; /* Más pequeño para catálogo */
    max-width: 90%;
    margin: 0 auto;
}
.oksec-woo-btn-wrapper.is-loop .oksec-woo-icon {
    width: 14px; 
    height: 14px;
}

.oksec-woo-btn-wrapper.is-single { margin-top: 20px; margin-bottom: 20px; }
.oksec-woo-btn-wrapper.is-single .oksec-woo-action-btn {
    padding: 10px 15px;
    font-size: 13px; /* Tamaño estándar para individual */
    background-color: #25D366; /* En single resalta más (sólido por defecto) */
    color: white;
}
.oksec-woo-btn-wrapper.is-single .oksec-woo-action-btn:hover {
    background-color: #128C7E;
}
.oksec-woo-btn-wrapper.is-single .oksec-woo-icon {
    width: 18px; 
    height: 18px;
}

/* Responsividad para móviles */
@media (max-width: 768px) {
    .oksec-woo-btn-wrapper.is-loop .oksec-woo-action-btn {
        padding: 5px 8px;
        font-size: 10px;
        max-width: 100%; /* En móviles ocupa todo el ancho de la tarjeta */
    }
}