diff --git a/dist/style_prive.html b/dist/style_prive.html
index 75dcc97034516ab5adae5a7ef77e61eee635af48..d739c396807e4b6e98bc005cc2d8911f72f3fa32 100644
--- a/dist/style_prive.html
+++ b/dist/style_prive.html
@@ -1846,4 +1846,37 @@ div.navigation-calendrier { background-color:#GET{foncee}; }
 	border:1px solid #GET{foncee};
 	padding:5px;
 	margin:3px;
-}
\ No newline at end of file
+	font-size:x-small;
+}
+
+/* portfolios */
+.lien_tout_supprimer {
+	background-color: #dddddd;
+	padding: 4px;
+	color: black;
+	text-align: #GET{right};
+}
+#contenu .ajax-action .cadre-portfolio .titrem {background-color:#GET{claire};}
+.cadre-portfolio .cadre_padding {padding:0;}
+.cadre-portfolio table {border-#GET{left}:1px solid #GET{claire};}
+.cadre-portfolio table td.document {
+	border-bottom:1px solid #GET{claire};border-#GET{right}:1px solid #GET{claire};
+	width:33%;
+	text-align: #GET{left};
+	vertical-align:top;
+}
+#contenu .cadre-portfolio table td.document .titrem {background-color:#eee;}
+.cadre-portfolio table td.vu {background:#cccccc;}
+
+#contenu .ajax-action .cadre-documents .titrem {background-color:#999;}
+.cadre-documents .cadre_padding {padding:0;}
+.cadre-documents table {border-#GET{left}:1px solid #999;}
+.cadre-documents table td.document {
+	border-bottom:1px solid #999;border-#GET{right}:1px solid #999;
+	width:33%;
+	text-align: #GET{left};
+	vertical-align:top;
+}
+#contenu .cadre-documents table td.document .titrem {background-color:#eee;}
+.cadre-documents table td.vu {background:#cccccc;}
+
diff --git a/ecrire/inc/documenter.php b/ecrire/inc/documenter.php
index 8b07c36983b2c8a35df46e92dda67b124335cc05..ee57b8bac8786f52ae3ed8d64366ab716ea8688f 100644
--- a/ecrire/inc/documenter.php
+++ b/ecrire/inc/documenter.php
@@ -30,12 +30,8 @@ function inc_documenter_dist(
 	if (is_int($doc)) {
 		if ($ancre == 'portfolio') {
 			$lies = spip_query("SELECT docs.*,l.id_$type,l.vu FROM spip_documents AS docs, spip_documents_".$type."s AS l WHERE l.id_$type=$doc AND l.id_document=docs.id_document AND docs.mode='document' AND docs.extension IN ('gif', 'jpg', 'png') ORDER BY 0+docs.titre, docs.date");
-			$toile = 'toile_claire';
-			$couleur = 'bordure_claire_';
 		} else {
 			$lies = spip_query("SELECT docs.*,l.id_$type,l.vu FROM spip_documents AS docs, spip_documents_".$type."s AS l WHERE l.id_$type=$doc AND l.id_document=docs.id_document AND docs.mode='document' AND docs.extension NOT IN ('gif', 'jpg', 'png') ORDER BY 0+docs.titre, docs.date");
-			$toile = 'toile_gris_fort';
-			$couleur = 'bordure_grise_';
 		}
 
 		$documents = array();
@@ -46,8 +42,6 @@ function inc_documenter_dist(
 
 	if (!$documents) return '';
 
-	$class = "${couleur}basse $couleur$spip_lang_left";
-
 	charger_generer_url();
 	// la derniere case d'une rangee
 	$bord_droit = ($ancre == 'portfolio' ? 2 : 1);
@@ -74,15 +68,13 @@ function inc_documenter_dist(
 		  // ref a $exec inutilise en standard
 		  $script = $appelant ? $appelant : $GLOBALS['exec'];
 
-		$style = ($document['vu']=='oui') ? ' background-color: #cccccc;':'';
+		$vu = ($document['vu']=='oui') ? ' vu':'';
 
 		$deplier = in_array($id_document, explode(',', _request('show_docs')));
 
 		if (!$case)
-			$res .= "<tr style='border-top: 1px solid black;'>";
-		else if ($case == $bord_droit)
-			$class .= " ${couleur}$spip_lang_right";
-		$res .= "\n<td  class='$class' style='width:33%; text-align: $spip_lang_left; $style' valign='top'>"
+			$res .= "<tr>";
+		$res .= "\n<td  class='document$vu'>"
 		.  $tourner($id_document, $document, $script, $flag, $type)
 		. (!$flag  ? '' :
 		   $legender($id_document, $document, $script, $type, $document["id_$type"], $ancre, $deplier))
@@ -91,35 +83,37 @@ function inc_documenter_dist(
 		. "</td>\n";
 
 		$case++;
-				
 		if ($case > $bord_droit) {
 			  $case = 0;
 			  $res .= "</tr>\n";
 		}
-
 	}
 
 	// fermer la derniere ligne
 	if ($case) {
-		$res .= "<td class='$couleur$spip_lang_left'>&nbsp;</td>";
+		$res .= "<td></td>";
 		$res .= "</tr>";
 	}
 
 	$s = ($ancre =='documents' ? '': '-');
+	$head = $pied = "";
 	if (is_int($doc)) {
-		$head = "\n<div style='padding: 4px; color: black;' class='verdana2 $toile'>\n<b>".majuscules(_T("info_$ancre"))."</b></div>";
-
+		$bouton = bouton_block_depliable(majuscules(_T("info_$ancre")),true,"portfolio_$ancre");
+		$head = debut_cadre("$ancre","","",$bouton);
 		if (count($documents) > 3) {
-			$head .= "<div style='background-color: #dddddd; padding: 4px; color: black; text-align: right' class='arial1'>"
+			$head .= "<div class='lien_tout_supprimer'>"
 			. ajax_action_auteur('documenter', "$s$doc/$type", $script, "id_$type=$doc&s=$s&type=$type",array(_T('lien_tout_supprimer')))
 			. "</div>\n";
 		}
-	} else $head = '';
+		$head .= debut_block_depliable(true,"portfolio_$ancre");
+		$pied = fin_block();
+	}
 
 	$res = $head
 	. "\n<table width='100%' cellspacing='0' cellpadding='4'>"
 	. $res
-	. "</table>";	  
+	. "</table>"
+	. $pied;
 
 	return ajax_action_greffe("documenter", "$s$doc", $res, '');
 }