diff --git a/javascript/mejs-init.js b/javascript/mejs-init.js
index e4a4686b4caf02dc7f997f8417b65603f8c243a5..d1b5aa608e4a29d728a99a7ce58ae25c9107b1fd 100644
--- a/javascript/mejs-init.js
+++ b/javascript/mejs-init.js
@@ -1,5 +1,6 @@
 var mejsloader;
 var mejsplugins={};
+var mejscss={};
 (function(){
 	var mejs_counter = 0;
 	function mejs_init(){
@@ -9,13 +10,26 @@ var mejsplugins={};
 				//console.log(this);
 				mejs_counter++;
 				var id = "mejs-" + (jQuery(this).attr('data-id')) + "-" + mejs_counter;
-				var autoplay = jQuery(this).attr('autoplay');
 				jQuery(this).attr('id',id);
-				var options = jQuery.parseJSON(jQuery(this).attr('data-mejsoptions'));
-				var plugins = jQuery.parseJSON(jQuery(this).attr('data-mejsplugins'));
+				var autoplay = jQuery(this).attr('autoplay');
+				var opt = {options:{},plugins:{},css:[]}, i,v;
+				for (i in opt){
+					if (v = jQuery(this).attr('data-mejs'+i)) opt[i] = jQuery.parseJSON(v);
+				}
 				function runthisplayer(){
 					var run = true;
-					for(var p in plugins){
+					//console.log(css);
+					for(var c in opt.css){
+						if (typeof mejscss[opt.css[c]]=="undefined"){
+							mejscss[opt.css[c]] = true;
+							var stylesheet = document.createElement('link');
+							stylesheet.href = opt.css[c];
+							stylesheet.rel = 'stylesheet';
+							stylesheet.type = 'text/css';
+							document.getElementsByTagName('head')[0].appendChild(stylesheet);
+						}
+					}
+					for(var p in opt.plugins){
 						//console.log(p);
 						//console.log(mejsplugins[p]);
 						// load this plugin
@@ -23,7 +37,7 @@ var mejsplugins={};
 							//console.log("Load Plugin "+p);
 							run = false;
 							mejsplugins[p] = false;
-							jQuery.getScript(plugins[p],function(){mejsplugins[p] = true;runthisplayer();});
+							jQuery.getScript(opt.plugins[p],function(){mejsplugins[p] = true;runthisplayer();});
 						}
 						// this plugin is loading
 						else if(mejsplugins[p]==false){
@@ -35,8 +49,16 @@ var mejsplugins={};
 						}
 					}
 					if (run) {
-						new MediaElementPlayer('#'+id,jQuery.extend(options,{
+						new MediaElementPlayer('#'+id,jQuery.extend(opt.options,{
 							"success": function(media) {
+								function togglePlayingState(){
+									jQuery(media).closest('.mejs-inner').removeClass(media.paused?'playing':'paused').addClass(media.paused?'paused':'playing');
+								}
+								togglePlayingState();
+								media.addEventListener('play',togglePlayingState, false);
+								media.addEventListener('playing',togglePlayingState, false);
+								media.addEventListener('pause',togglePlayingState, false);
+								media.addEventListener('paused',togglePlayingState, false);
 								if (autoplay) media.play();
 							}
 						}));
diff --git a/javascript/mejs-init.min.js b/javascript/mejs-init.min.js
index 24fc8171c7ff11b55d17892709cecadd21bad82a..1515ef9c03f3630a9110597808f54cb38009648b 100644
--- a/javascript/mejs-init.min.js
+++ b/javascript/mejs-init.min.js
@@ -1 +1 @@
-var mejsloader,mejsplugins={}; (function(){function a(){(function(a){jQuery("audio.mejs,video.mejs").not(".done").each(function(){function a(){var c=!0,b;for(b in d)"undefined"==typeof mejsplugins[b]?(c=!1,mejsplugins[b]=!1,jQuery.getScript(d[b],function(){mejsplugins[b]=!0;a()})):0==mejsplugins[b]&&(c=!1);c&&new MediaElementPlayer("#"+e,jQuery.extend(g,{success:function(a){h&&a.play()}}))}jQuery(this).addClass("done");f++;var e="mejs-"+jQuery(this).attr("data-id")+"-"+f,h=jQuery(this).attr("autoplay");jQuery(this).attr("id",e); var g=jQuery.parseJSON(jQuery(this).attr("data-mejsoptions")),d=jQuery.parseJSON(jQuery(this).attr("data-mejsplugins"));a()})})(jQuery)}var f=0;"undefined"==typeof mejsloader&&(mejsloader=jQuery.getScript(mejspath,function(){a();jQuery(a);onAjaxLoad(a)}))})();
\ No newline at end of file
+var mejsloader,mejsplugins={},mejscss={}; (function(){function b(){(function(b){jQuery("audio.mejs,video.mejs").not(".done").each(function(){function b(){var c=!0,e;for(e in a.css)if("undefined"==typeof mejscss[a.css[e]]){mejscss[a.css[e]]=!0;var f=document.createElement("link");f.href=a.css[e];f.rel="stylesheet";f.type="text/css";document.getElementsByTagName("head")[0].appendChild(f)}for(var d in a.plugins)"undefined"==typeof mejsplugins[d]?(c=!1,mejsplugins[d]=!1,jQuery.getScript(a.plugins[d],function(){mejsplugins[d]=!0;b()})):0==mejsplugins[d]&& (c=!1);c&&new MediaElementPlayer("#"+g,jQuery.extend(a.options,{success:function(a){function b(){jQuery(a).closest(".mejs-inner").removeClass(a.paused?"playing":"paused").addClass(a.paused?"paused":"playing")}b();a.addEventListener("play",b,!1);a.addEventListener("playing",b,!1);a.addEventListener("pause",b,!1);a.addEventListener("paused",b,!1);l&&a.play()}}))}jQuery(this).addClass("done");h++;var g="mejs-"+jQuery(this).attr("data-id")+"-"+h;jQuery(this).attr("id",g);var l=jQuery(this).attr("autoplay"), a={options:{},plugins:{},css:[]},c,k;for(c in a)if(k=jQuery(this).attr("data-mejs"+c))a[c]=jQuery.parseJSON(k);b()})})(jQuery)}var h=0;"undefined"==typeof mejsloader&&(mejsloader=jQuery.getScript(mejspath,function(){b();jQuery(b);onAjaxLoad(b)}))})();
\ No newline at end of file
diff --git a/modeles/audio.html b/modeles/audio.html
index ed453f4d942ca255ba4a6c5f4f852f974915efbf..e11c9586e2157cef321f72fa3b791564609a192a 100644
--- a/modeles/audio.html
+++ b/modeles/audio.html
@@ -9,13 +9,14 @@
 	       src="#FICHIER"
 	       type="#MIME_TYPE"
 	       data-mejsoptions='{"alwaysShowControls": true[,"loop":(#ENV{loop}|?{true,false})],"audioWidth":"100%"[,"audioHeight":"(#ENV{hauteur})"][,"startVolume":"(#ENV{volume})"]}'
+	       data-mejscss='[(#LISTE{#CHEMIN{lib/mejs/mediaelementplayer.min.css}}|json_encode)]'
 	       controls="controls"
 				 [autoplay="autoplay"(#ENV{autoplay}|oui)]></audio>
 </div>
 [<div class='spip_doc_titre'><strong>(#TITRE)</strong></div>]
 [<div class='spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]
 [<script>/*<!\[CDATA\[*/var mejspath = '[(#CHEMIN{lib/mejs/mediaelement-and-player.min.js}|timestamp)]';
-(#INCLURE{javascript/mejs-init.min.js})/*\]\]>*/</script>]
-[<style>(#INCLURE{#CHEMIN{lib/mejs/mediaelementplayer.min.css}|url_absolue_css})</style>]
+(#INCLURE{javascript/mejs-init.min.js}|compacte{js})/*\]\]>*/</script>]
+[(#ENV{skin}|oui)[<style>(#INCLURE{#CHEMIN{css/mejs-skin-#ENV{skin}.css}|sinon{#CHEMIN{lib/mejs/mejs-skins.css}}|url_absolue_css})</style>]]
 </div>
 </BOUCLE_tous>
\ No newline at end of file
diff --git a/modeles/video.html b/modeles/video.html
index 25df1415f890ab9e6589d713747f1bab26e1c2e3..713f495a6710088d73a2f6862c9fea791889ab59 100644
--- a/modeles/video.html
+++ b/modeles/video.html
@@ -14,6 +14,7 @@
 		<video class="mejs mejs-#ID_DOCUMENT [ mejs-(#ENV{skin})]"
 		       data-id="[(#VAL{mejs-#ID_DOCUMENT}|concat{#ENV{skin}}|md5)]"
 		       data-mejsoptions='{"alwaysShowControls": true,"pluginPath":"[(#CHEMIN{lib/mejs/flashmediaelement.swf}|dirname)/]"[,"loop":(#ENV{loop}|?{true,false})],"videoWidth":"100%",videoHeight:"100%"[,startVolume:"(#ENV{volume})"]}'
+		       data-mejscss='[(#LISTE{#CHEMIN{lib/mejs/mediaelementplayer.min.css}}|json_encode)]'
 		       width="100%"
 		       height="100%"
 		       poster="[(#LOGO_DOCUMENT{vignette}|image_reduire{#GET{largeur},0}|extraire_attribut{src})]"
@@ -35,7 +36,7 @@
 [<div class='spip_doc_titre'><strong>(#TITRE)</strong></div>]
 [<div class='spip_doc_descriptif'>(#DESCRIPTIF|PtoBR)[(#NOTES|PtoBR)]</div>]
 [<script>/*<!\[CDATA\[*/var mejspath = '[(#CHEMIN{lib/mejs/mediaelement-and-player.min.js}|timestamp)]';
-(#INCLURE{javascript/mejs_init.js}|compacte{js})/*\]\]>*/</script>]
-<style>[(#INCLURE{#CHEMIN{lib/mejs/mediaelementplayer.min.css}|url_absolue_css})].spip_document_video .me-cannotplay {width:100% !important;height:100% !important;}.spip_document_video .me-cannotplay a {display: block;}</style>
+(#INCLURE{javascript/mejs-init.min.js}|compacte{js})/*\]\]>*/</script>]
+[(#ENV{skin}|oui)[<style>(#INCLURE{#CHEMIN{css/mejs-skin-#ENV{skin}.css}|sinon{#CHEMIN{lib/mejs/mejs-skins.css}}|url_absolue_css})</style>]]
 </div>
 </BOUCLE_tous>
\ No newline at end of file
diff --git a/paquet.xml b/paquet.xml
index 55ceafcd5c5257eb7289d9b542f10f9d04b675f1..cec8ebc5d1fc8babf47275ce583f4cc270b33c0b 100644
--- a/paquet.xml
+++ b/paquet.xml
@@ -1,7 +1,7 @@
 <paquet
 	prefix="medias"
 	categorie="multimedia"
-	version="2.10.6"
+	version="2.10.7"
 	etat="stable"
 	compatibilite="[3.0.0;3.1.*]"
 	logo="prive/themes/spip/images/portfolio-32.png"