diff --git a/core/AssetManager.php b/core/AssetManager.php
index fd3218c370ec939e82dac94e023650230de245f2..2823373090d2e15df2651322b85dfa2bdb0273ab 100644
--- a/core/AssetManager.php
+++ b/core/AssetManager.php
@@ -103,9 +103,7 @@ class AssetManager
         $mergedCssAlreadyGenerated = self::isGenerated(self::MERGED_CSS_FILE);
         $isDevelopingPiwik = self::isMergedAssetsDisabled();
 
-        if ($mergedCssAlreadyGenerated
-            && !$isDevelopingPiwik
-        ) {
+        if ($mergedCssAlreadyGenerated && !$isDevelopingPiwik) {
             return;
         }
 
@@ -133,7 +131,7 @@ class AssetManager
 
         // Disable Merged Assets ==> Check on each request if file needs re-compiling
         if ($mergedCssAlreadyGenerated
-            && $isDevelopingPiwik
+            && !$isDevelopingPiwik
         ) {
             $pathMerged = self::getAbsoluteMergedFileLocation(self::MERGED_CSS_FILE);
             $f = fopen($pathMerged, 'r');
diff --git a/core/Twig.php b/core/Twig.php
index f65825065b12e1768849aa140ea4169fdc784a4b..4b32e4931ceec8e3f515c13ce18f0643341c707a 100644
--- a/core/Twig.php
+++ b/core/Twig.php
@@ -33,7 +33,7 @@ use Twig_SimpleFunction;
  */
 class Twig
 {
-    const SPARKLINE_TEMPLATE = '<img class="sparkline" alt="" data-src="%s" width="%d" height="%d" />
+    const SPARKLINE_TEMPLATE = '<img alt="" data-src="%s" width="%d" height="%d" />
     <script type="text/javascript">$(document).ready(function () { piwik.initSparklines(); });</script>';
     
     /**
diff --git a/core/Visualization/Sparkline.php b/core/Visualization/Sparkline.php
index 7d5c643436590d74d3a5c0c12969fd0c0ab9b7a8..d781e8a95de873bb00bae26c080d87b6083ab648 100644
--- a/core/Visualization/Sparkline.php
+++ b/core/Visualization/Sparkline.php
@@ -33,7 +33,7 @@ class Sparkline implements ViewInterface
     const DEFAULT_WIDTH = 100;
     const DEFAULT_HEIGHT = 25;
 
-    private static $colorNames = array('lineColor', 'red', 'blue', 'green');
+    private static $colorNames = array('backgroundColor', 'lineColor', 'minPointColor', 'lastPointColor', 'maxPointColor');
 
     /**
      * Width of the sparkline
@@ -136,9 +136,9 @@ class Sparkline implements ViewInterface
         $sparkline->SetYMin(0);
         $sparkline->SetYMax($max[1]);
         $sparkline->SetPadding(3, 0, 2, 0); // top, right, bottom, left
-        $sparkline->SetFeaturePoint($min[0], $min[1], 'red', 5);
-        $sparkline->SetFeaturePoint($max[0], $max[1], 'green', 5);
-        $sparkline->SetFeaturePoint($last[0], $last[1], 'blue', 5);
+        $sparkline->SetFeaturePoint($min[0], $min[1], 'minPointColor', 5);
+        $sparkline->SetFeaturePoint($max[0], $max[1], 'maxPointColor', 5);
+        $sparkline->SetFeaturePoint($last[0], $last[1], 'lastPointColor', 5);
         $sparkline->SetLineSize(3); // for renderresampled, linesize is on virtual image
         $ratio = 1;
         $sparkline->RenderResampled($width * $ratio, $height * $ratio);
diff --git a/libs/sparkline/lib/Sparkline.php b/libs/sparkline/lib/Sparkline.php
index eed708aaae30f266035a545480e38e84609298ef..f9dc98bc6c48f272a548f7cdee89482aa42472e4 100644
--- a/libs/sparkline/lib/Sparkline.php
+++ b/libs/sparkline/lib/Sparkline.php
@@ -69,15 +69,11 @@ class Sparkline extends Object {
     //
     $this->SetColorDefaults();
     while (list($k, $v) = each($this->colorList)) {
-      $this->SetColorHandle($k, $this->DrawColorAllocate($k, $this->imageHandle));
+      $this->SetColorHandle($k, $this->DrawColorAllocate($k));
     }
     reset($this->colorList);
 
-    if ($this->IsError()) {
-      return false;
-    } else {
-      return true;
-    }
+    return !$this->IsError();
   }
 
   ////////////////////////////////////////////////////////////////////////////
@@ -95,9 +91,8 @@ class Sparkline extends Object {
     if (array_key_exists($name, $this->colorList)) {
       $this->colorList[$name]['handle'] = $handle;
       return true;
-    } else {
-      return false;
     }
+    return false;
   }
 
   function SetColorHex($name, $r, $g, $b) {
@@ -117,6 +112,7 @@ class Sparkline extends Object {
   }
 
   function GetColor($name) {
+    $name = strtolower($name);
     if (array_key_exists($name, $this->colorList)) {
       return $this->colorList[$name]['rgb'];
     } else {
@@ -229,7 +225,6 @@ class Sparkline extends Object {
 
   function DrawColorAllocate($color, $handle = false) {
     $this->Debug("Sparkline :: DrawColorAllocate('$color')", DEBUG_DRAW);
-
     if (!$this->IsError() &&
         $colorRGB = $this->GetColor($color)) {
       if ($handle === false) $handle = $this->imageHandle;
diff --git a/libs/sparkline/lib/Sparkline_Line.php b/libs/sparkline/lib/Sparkline_Line.php
index 292b3b3ed87b4bf9dc7cb2b8da0a02c49d5aec56..59b5a2eff7f662cd3407dfabfcddf5627fbdfda1 100644
--- a/libs/sparkline/lib/Sparkline_Line.php
+++ b/libs/sparkline/lib/Sparkline_Line.php
@@ -31,7 +31,7 @@ class Sparkline_Line extends Sparkline {
     $this->dataSeries          = array();
     $this->dataSeriesStats     = array();
     $this->dataSeriesConverted = array();
-
+    $this->colorBackground     = 'backgroundColor';
     $this->featurePoint        = array();
   } // function Sparkline
 
@@ -167,7 +167,7 @@ class Sparkline_Line extends Sparkline {
                       $this->dataSeriesConverted[1][$i][1] + $this->graphAreaPx[0][1], 
                       $this->dataSeriesConverted[1][$i+1][0] + $this->graphAreaPx[0][0], 
                       $this->dataSeriesConverted[1][$i+1][1] + $this->graphAreaPx[0][1],  
-                      'black');
+                      'lineColor');
     }
 
     // draw features
@@ -245,7 +245,7 @@ class Sparkline_Line extends Sparkline {
                       $this->dataSeriesConverted[1][$i][1],
                       $this->dataSeriesConverted[1][$i+1][0],
                       $this->dataSeriesConverted[1][$i+1][1],
-                      'black', 
+                      'lineColor',
                       $this->GetLineSize(), 
                       $imageVCHandle);
     }
diff --git a/plugins/CoreAdminHome/stylesheets/generalSettings.less b/plugins/CoreAdminHome/stylesheets/generalSettings.less
index 71871038b092ce1d98df43b1d19741f7c9b71666..72e10dd339a2018e6ff5cb228d1a549468905447 100644
--- a/plugins/CoreAdminHome/stylesheets/generalSettings.less
+++ b/plugins/CoreAdminHome/stylesheets/generalSettings.less
@@ -7,13 +7,14 @@
 }
 
 #content.admin {
-    margin: 0 15px 0 270px;
+    margin: 0 0 0 260px;
     padding: 0 0 40px;
+    overflow: hidden;
     font: 13px Arial, Helvetica, sans-serif;
 }
 
 .admin #header_message {
-    margin-top: -10px;
+    margin-top: 10px;
 }
 
 table.admin {
diff --git a/plugins/CoreAdminHome/stylesheets/menu.less b/plugins/CoreAdminHome/stylesheets/menu.less
index 4621613aae24a892377946bde31ed27ddbf957e2..f6686a3cdb7471d4e46d3e897ce8ba89236ad78e 100644
--- a/plugins/CoreAdminHome/stylesheets/menu.less
+++ b/plugins/CoreAdminHome/stylesheets/menu.less
@@ -1,8 +1,11 @@
+#container {
+  clear: left;
+}
+
 #menu {
-    padding: 0 0 0 0;
+    padding: 0;
     float: left;
     width: 240px;
-    position: absolute;
 }
 
 #tablist {
diff --git a/plugins/CoreHome/CoreHome.php b/plugins/CoreHome/CoreHome.php
index fe5bb6c6f71ee8198923307d6072f650aa74348a..1ffec819ffb45ffb20ec858d9df248727ff2010f 100644
--- a/plugins/CoreHome/CoreHome.php
+++ b/plugins/CoreHome/CoreHome.php
@@ -47,6 +47,7 @@ class Piwik_CoreHome extends Plugin
         $cssFiles[] = "plugins/CoreHome/stylesheets/dataTable.less";
         $cssFiles[] = "plugins/CoreHome/stylesheets/cloud.less";
         $cssFiles[] = "plugins/CoreHome/stylesheets/jquery.ui.autocomplete.css";
+        $cssFiles[] = "plugins/CoreHome/stylesheets/jqplotColors.less";
         $cssFiles[] = "plugins/CoreHome/stylesheets/promo.less";
         $cssFiles[] = "plugins/CoreHome/stylesheets/color_manager.css";
     }
@@ -62,8 +63,8 @@ class Piwik_CoreHome extends Plugin
         $jsFiles[] = "libs/javascript/sprintf.js";
         $jsFiles[] = "plugins/Zeitgeist/javascripts/piwikHelper.js";
         $jsFiles[] = "plugins/Zeitgeist/javascripts/ajaxHelper.js";
-        $jsFiles[] = "plugins/CoreHome/javascripts/datatable.js";
-        $jsFiles[] = "plugins/CoreHome/javascripts/datatable_rowactions.js";
+        $jsFiles[] = "plugins/CoreHome/javascripts/dataTable.js";
+        $jsFiles[] = "plugins/CoreHome/javascripts/dataTable_rowactions.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/popover.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/broadcast.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/menu.js";
@@ -72,7 +73,7 @@ class Piwik_CoreHome extends Plugin
         $jsFiles[] = "plugins/CoreHome/javascripts/autocomplete.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/sparkline.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/corehome.js";
-        $jsFiles[] = "plugins/CoreHome/javascripts/datatable_manager.js";
+        $jsFiles[] = "plugins/CoreHome/javascripts/dataTable_manager.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/donate.js";
         $jsFiles[] = "libs/jqplot/jqplot-custom.min.js";
         $jsFiles[] = "plugins/CoreHome/javascripts/promo.js";
diff --git a/plugins/CoreHome/javascripts/autocomplete.js b/plugins/CoreHome/javascripts/autocomplete.js
index d30197e8d0dee9a9469d5bcf17ba1a5ddb11a9c2..7f4aa8d0edf74d3ed3b9a7c20a1c2706a5684d54 100644
--- a/plugins/CoreHome/javascripts/autocomplete.js
+++ b/plugins/CoreHome/javascripts/autocomplete.js
@@ -147,26 +147,26 @@ $(function () {
             // close it
             $('body').on('mouseup', function (e) {
                 var closestSelector = $(e.target).closest('.sites_autocomplete');
-                if (closestSelector != selector) {
-                    reset(selector);
-                    $('.custom_select_block', selector).removeClass('custom_select_block_show');
+                if (!closestSelector.length || !closestSelector.is(selector)) {
+                    if ($('.custom_select_block', selector).hasClass('custom_select_block_show')) {
+                        reset(selector);
+                        $('.custom_select_block', selector).removeClass('custom_select_block_show');
+                    }1
                 }
             });
 
             // set event handling code for non-jquery-autocomplete parts of widget
             if ($('li', selector).length > 1) {
                 // event handler for when site selector is clicked. shows dropdown w/ first X sites
-                $(".custom_select_main_link", selector).click(function () {
-                    $(".custom_select_block", selector).addClass("custom_select_block_show");
-                    $('.custom_select_ul_list', selector).show();
-                    $('.websiteSearch', selector).val('').focus();
+                $(".custom_select_main_link", selector).click(function() {
+                    $(".custom_select_block", selector).toggleClass("custom_select_block_show");
+                    $(".websiteSearch", selector).val("").focus();
                     return false;
                 });
 
-                $('.custom_select_block', selector).on('mouseenter', function () {
-                    $('.custom_select_ul_list li a', selector).each(function () {
+                $('.custom_select_block', selector).on('mouseenter', function() {
+                    $('.custom_select_ul_list > li > a', selector).each(function() {
                         var idSite = $(this).attr('siteid');
-
                         var linkUrl = getUrlForWebsiteId(idSite);
                         $(this).attr('href', linkUrl);
                     });
@@ -174,7 +174,7 @@ $(function () {
 
                 // change selection. fire's site selector's on select event and modifies the attributes
                 // of the selected link
-                $('.custom_select_ul_list li a', selector).each(function () {
+                $('.custom_select_ul_list li a', selector).each(function() {
                     $(this).click(function (e) {
                         var idsite = $(this).attr('siteid'),
                             name = $(this).text();
diff --git a/plugins/CoreHome/javascripts/calendar.js b/plugins/CoreHome/javascripts/calendar.js
index f189949d34e5d2237df26669cac5ffde914abc77..e0580b1be0fbb70b90a96e7c7794c6b2e3ed4065 100644
--- a/plugins/CoreHome/javascripts/calendar.js
+++ b/plugins/CoreHome/javascripts/calendar.js
@@ -449,7 +449,8 @@
         });
 
         $('body').on('click', function(e) {
-            if (!$(e.target).parents('#periodString').length && !$(e.target).is('#periodString') && !$(e.target).is('option') && $("#periodMore").is(":visible")) {
+            var target = $(e.target);
+            if (target.closest('html').length && !target.closest('#periodString').length && !target.is('option') && $("#periodMore").is(":visible")) {
                 $("#periodMore").hide();
             }
         });
@@ -532,8 +533,7 @@
             return !isNaN(d.getTime());
         }
 
-        var period = broadcast.getValueFromUrl('period');
-        if (period == 'range') {
+        if (piwik.period == 'range') {
             $("#period_id_range").click();
         }
     });
diff --git a/plugins/CoreHome/javascripts/datatable.js b/plugins/CoreHome/javascripts/dataTable.js
similarity index 98%
rename from plugins/CoreHome/javascripts/datatable.js
rename to plugins/CoreHome/javascripts/dataTable.js
index acbb96e7ef90e58df72509f3d331abc4e34dd481..8c229be1f363453af3b8f4cfeb90494614a19a45 100644
--- a/plugins/CoreHome/javascripts/datatable.js
+++ b/plugins/CoreHome/javascripts/dataTable.js
@@ -282,13 +282,11 @@ dataTable.prototype =
             $('.limitSelection ul li:last', domElem).addClass('last');
 
             if (!self.isEmpty) {
-                var show = function () {
+                var show = function() {
                     $('.limitSelection ul', domElem).show();
                     $('.limitSelection', domElem).addClass('visible');
-                    $(document).on('mouseup.limitSelection', function (e) {
-                        if ((!$(e.target).parents('.limitSelection').length
-                            || $(e.target).parents('.limitSelection') != $('.limitSelection', domElem))
-                            && !$(e.target).is('.limitSelection')) {
+                    $(document).on('mouseup.limitSelection', function(e) {
+                        if (!$(e.target).closest('.limitSelection').length) {
                             hide();
                         }
                     });
@@ -363,11 +361,13 @@ dataTable.prototype =
                 var imageSortSrc = getSortImageSrc();
                 var imageSortWidth = 16;
                 var imageSortHeight = 16;
+                var ImageSortClass = self.param.filter_sort_order.charAt(0).toUpperCase() + self.param.filter_sort_order.substr(1);
+
                 // we change the style of the column currently used as sort column
                 // adding an image and the class columnSorted to the TD
                 $(".sortable#" + self.param.filter_sort_column + ' #thDIV', domElem).parent()
                     .addClass('columnSorted')
-                    .prepend('<div id="sortIconContainer"><img id="sortIcon" width="' + imageSortWidth + '" height="' + imageSortHeight + '" src="' + imageSortSrc + '" /></div>');
+                    .prepend('<div class="sortIconContainer sortIconContainer' + ImageSortClass + '"><img class="sortIcon" width="' + imageSortWidth + '" height="' + imageSortHeight + '" src="' + imageSortSrc + '" /></div>');
             }
         }
     },
@@ -391,10 +391,10 @@ dataTable.prototype =
         currentPattern = piwikHelper.htmlDecode(currentPattern);
 
         $('.dataTableSearchPattern', domElem)
-            .show()
+            .css({display: 'block'})
             .each(function () {
                 // when enter is pressed in the input field we submit the form
-                $('#keyword', this)
+                $('.searchInput', this)
                     .on("keyup",
                     function (e) {
                         if (isEnterKey(e)) {
@@ -407,7 +407,7 @@ dataTable.prototype =
 
                 $(':submit', this).submit(
                     function () {
-                        var keyword = $(this).siblings('#keyword').val();
+                        var keyword = $(this).siblings('.searchInput').val();
                         self.param.filter_offset = 0;
 
                         if (self.param.search_recursive) {
@@ -436,10 +436,10 @@ dataTable.prototype =
 							<img src="plugins/CoreHome/images/reset_search.png" style="position: absolute; top: 4px; left: -15px; cursor: pointer; display: inline;" title="Clear" />\
 							</span>')
                         .click(function () {
-                            $('#keyword', target).val('');
+                            $('.searchInput', target).val('');
                             $(':submit', target).submit();
                         });
-                    $('#keyword', this).after(clearImg);
+                    $('.searchInput', this).after(clearImg);
 
                 }
             }
@@ -781,7 +781,7 @@ dataTable.prototype =
                 });
                 self.exportToFormatHide(domElem);
             },
-            function () {
+            function() {
                 //Graph icon onmouseout
                 if (self.graphViewStartingKeep) return self.graphViewStartingKeep = false; //exit while icons animate
                 $('a', this).each(function (i) {
@@ -1149,8 +1149,8 @@ dataTable.prototype =
         $("th:first-child", domElem).addClass('label');
         $("td:first-child:odd", domElem).addClass('label labeleven');
         $("td:first-child:even", domElem).addClass('label labelodd');
-        $("tr:odd td", domElem).slice(1).addClass('columnodd');
-        $("tr:even td", domElem).slice(1).addClass('columneven');
+        $("tr:odd td", domElem).slice(1).addClass('column columnodd');
+        $("tr:even td", domElem).slice(1).addClass('column columneven');
 
         $('td span.label', domElem).each(function () { self.truncate($(this)); });
 
@@ -1710,6 +1710,8 @@ actionDataTable.prototype =
             // label (first column of a data row) or not
             $("td:first-child:odd", this).addClass('label labeleven');
             $("td:first-child:even", this).addClass('label labelodd');
+            $("tr:odd td", domElem).slice(1).addClass('column columnodd');
+            $("tr:even td", domElem).slice(1).addClass('column columneven');
         });
     },
 
diff --git a/plugins/CoreHome/javascripts/datatable_manager.js b/plugins/CoreHome/javascripts/dataTable_manager.js
similarity index 100%
rename from plugins/CoreHome/javascripts/datatable_manager.js
rename to plugins/CoreHome/javascripts/dataTable_manager.js
diff --git a/plugins/CoreHome/javascripts/datatable_rowactions.js b/plugins/CoreHome/javascripts/dataTable_rowactions.js
similarity index 100%
rename from plugins/CoreHome/javascripts/datatable_rowactions.js
rename to plugins/CoreHome/javascripts/dataTable_rowactions.js
diff --git a/plugins/CoreHome/javascripts/menu.js b/plugins/CoreHome/javascripts/menu.js
index 4a00c16ff0a85332c3f04da005961a82398f60ac..d83ddb718fffc5ec2de487a9b4147ba63929ad63 100644
--- a/plugins/CoreHome/javascripts/menu.js
+++ b/plugins/CoreHome/javascripts/menu.js
@@ -28,9 +28,10 @@ menu.prototype =
 
     outMainLI: function () {
         clearTimeout(menu.prototype.resetTimer);
-        menu.prototype.resetTimer = setTimeout(function () {
-            $('.nav>.sfHover').removeClass('sfHover');
-            $('.nav>.sfActive').addClass('sfHover');
+        menu.prototype.resetTimer = setTimeout(function() {
+            $('.nav_tab > .sfHover').removeClass('sfHover');
+            $('.nav_tab > .sfActive').addClass('sfHover');
+            menu.prototype.adaptSubMenuHeight();
         }, 2000);
     },
 
diff --git a/plugins/CoreHome/javascripts/sparkline.js b/plugins/CoreHome/javascripts/sparkline.js
index 222e44e49097daaf1151b285b28dd41fb20f4b46..b010c5ae0c210d691800f001765045aa83f72af9 100644
--- a/plugins/CoreHome/javascripts/sparkline.js
+++ b/plugins/CoreHome/javascripts/sparkline.js
@@ -7,7 +7,7 @@
 
 (function ($) {
 
-var sparklineColorNames = ['lineColor', 'red', 'blue', 'green'];
+var sparklineColorNames = ['backgroundColor', 'lineColor', 'minPointColor', 'maxPointColor', 'lastPointColor'];
 
 piwik.getSparklineColors = function () {
     return piwik.ColorManager.getColors('sparkline-colors', sparklineColorNames);
@@ -15,7 +15,7 @@ piwik.getSparklineColors = function () {
 
 // initializes each sparkline so they use colors defined in CSS
 piwik.initSparklines = function () {
-    $('img.sparkline').each(function () {
+    $('.sparkline > img').each(function () {
         var $self = $(this);
         
         if ($self.attr('src')) {
@@ -36,7 +36,7 @@ window.initializeSparklines = function () {
         // try to find sparklines and add them clickable behaviour
         graph.parent().find('div.sparkline').each(function () {
             // find the sparkline and get it's src attribute
-            var sparklineUrl = $('img.sparkline', this).attr('data-src');
+            var sparklineUrl = $('.sparkline > img', this).attr('data-src');
 
             if (sparklineUrl != "") {
                 var params = broadcast.getValuesFromUrl(sparklineUrl);
diff --git a/plugins/CoreHome/stylesheets/coreHome.less b/plugins/CoreHome/stylesheets/coreHome.less
index 041bc1a936efb808cbb9477819fce8cc54148cc1..2c82ad95b4f7a91c9bc3e0e275f4cf1326a1fa8b 100644
--- a/plugins/CoreHome/stylesheets/coreHome.less
+++ b/plugins/CoreHome/stylesheets/coreHome.less
@@ -159,7 +159,7 @@ div.pk-emptyGraph {
     line-height: 20px;
     font-weight: normal;
     text-align: center;
-    background: url(../../Zeitgeist/images/loading-blue.gif) no-repeat center 20px;
+    background: url(plugins/Zeitgeist/images/loading-blue.gif) no-repeat center 20px;
 }
 
 .Piwik_Popover_Loading_NameWithSubject {
diff --git a/plugins/CoreHome/stylesheets/dataTable.less b/plugins/CoreHome/stylesheets/dataTable.less
index 248c5dd08d5a659d41e6bff02407a12cd5400103..d3760872fd79e65a0f06f5ee9a3f24df6d4f9629 100644
--- a/plugins/CoreHome/stylesheets/dataTable.less
+++ b/plugins/CoreHome/stylesheets/dataTable.less
@@ -1,756 +1,10 @@
-.widget {
-    z-index: 1;
-}
-
-.widget p {
-    margin-left: 10px;
-}
-
-.dataTable > .dataTableWrapper {
-    width: 450px;
-}
-
-.subDataTable > .dataTableWrapper {
-    width: 95%;
-}
-
-/* main data table */
-table.dataTable {
-    border: 0;
-    width: 100%;
-    padding: 0;
-    border-spacing: 0;
-    margin: 0;
-}
-
-table.dataTable td.label,
-table.subDataTable td.label {
-    width: 100%;
-    white-space: nowrap;
-}
-
-table.dataTable img,
-table.subDataTable img {
-    vertical-align: middle;
-}
-
-#UserCountrygetCountry table.dataTable img {
-    vertical-align: baseline;
-}
-
-table.dataTable img {
-    border: 0;
-    margin-right: 1em;
-    margin-left: 0.5em;
-}
-
-table.dataTable tr.subDataTable {
-    cursor: pointer;
-}
-
-table.dataTable th {
-    margin: 0;
-    color: #255792;
-    text-align: left;
-    padding: 6px 6px 6px 12px;
-    background: #e4e2d7;
-    font-size: 12px;
-    font-weight: normal;
-    border-left: 1px solid #d4d0c4;
-    vertical-align: top;
-}
-
-table.dataTable th.sortable {
-    cursor: pointer;
-}
-
-table.dataTable th.first {
-}
-
-table.dataTable th.last {
-}
-
-table.dataTable th.columnSorted {
-    font-weight: bold;
-    padding-right: 20px;
-    background: #d5d3c8;
-}
-
-table.dataTable td {
-    padding: 5px 5px 5px 12px;
-    background: #fff;
-    border-left: 1px solid #e7e7e7;
-    border-bottom: 1px solid #e7e7e7;
-}
-
-table.dataTable td, table.dataTable td a {
-    margin: 0;
-    text-decoration: none;
-    color: #444;
-}
-
-table.dataTable tr:hover>td,
-table.dataTable tr:hover>td .dataTableRowActions {
-    background-color: #FFFFF7;
-}
-
-table.dataTable tr.subDataTable:hover>td,
-table.dataTable tr.subDataTable:hover>td .dataTableRowActions {
-    background-color: #ffffcb;
-}
-
-table.dataTable tr:hover>td.cellSubDataTable
-table.dataTable tr:hover>td.cellSubDataTable .dataTableRowActions {
-    background-color: #fff;
-}
-
-td.clean {
-    background-color: #fff !important;
-}
-
-table.dataTable td.columneven {
-    background: #efeeec;
-}
-
-table.dataTable td.columnodd {
-    background: #f6f5f3;
-}
-
-table.dataTable td.labeleven {
-    background: #F9FAFA url(../images/bullet2.gif) no-repeat;
-}
-
-table.dataTable td.labelodd {
-    background: #fff url(../images/bullet1.gif) no-repeat;
-}
-
-.dataTable tr.highlight td {
-    background-color: #ECF9DD;
-    font-weight: bold;
-}
-
-table.dataTable td.label, table.subActionsDataTable td.label, table.actionsDataTable td.label {
-    border-top: 0;
-    border-left: 0;
-}
-
-table.dataTable th.label {
-    border-left: 0;
-}
-
-.dataTableActions table.dataTable th.label {
-    /* Ensures tables have enough space to display subtable on click, and prevent the jumping effect */
-    min-width: 250px;
-}
-
-table.dataTable span.label.highlighted {
-    font-style: italic;
-}
-
-/* the cell containing the subdatatable */
-table.dataTable .cellSubDataTable {
-    margin: 0;
-    border-left: 0;
-}
-
-/* A link in a column in the DataTable */
-table.dataTable td #urlLink {
-    display: none;
-}
-
-/* SUBDATATABLE */
-/* a datatable inside another datatable */
-table.subDataTable {
-    background: #FFFFFF;
-    margin: 5px 10px;
-}
-
-table.subDataTable td {
-    border: 0;
-}
-
-table.subDataTable thead th {
-    font-weight: normal;
-    font-size: 12px;
-    text-align: left;
-    padding: .3em 1em;
-    background: #f1f0eb;
-    border: 0;
-    border-top: 1px solid #e7e7e7;
-    border-bottom: 1px solid #e7e7e7;
-}
-
-table.subDataTable th.columnSorted {
-    background: #e3e1d9;
-}
-
-table.subDataTable td.labeleven, table.subDataTable td.labelodd {
-    background-image: none;
-}
-
-table.subDataTable td {
-    border-bottom: 1px solid #e7e7e7;
-    border-left: 0;
-}
-
-table.subDataTable td, table.subDataTable td a {
-    color: #615B53;
-}
-
-table.subDataTable td.labeleven, table.subDataTable td.columneven {
-    color: #2D2A27;
-}
-
-table.subDataTable td.label {
-    width: 80%;
-}
-
-table.subDataTable td.labelodd, table.subDataTable td.labelodd a {
-    background: #fff;
-}
-
-table.subDataTable td.label {
-    padding: 5px;
-}
-
-table.dataTable img {
-    margin-left: 0;
-}
-
-/* misc SPAN and DIV */
-table thead div {
-
-}
-
-#sortIconContainer {
-    float: right;
-    position: relative;
-}
-
-#sortIcon {
-    margin: 0;
-    position: absolute;
-}
-
-.datatableFooterMessage {
-    color: #888;
-    text-align: left;
-    margin: 10px;
-}
-
-.dataTablePages {
-    color: #BFBFBF;
-    font-weight: bold;
-    margin: 10px;
-    font-size: 12px;
-}
-
-.dataTableSearchPattern {
-    margin: 8px 0 0 0;
-    height: 30px;
-    display: block !important;
-    white-space: nowrap;
-    background: url(../../Zeitgeist/images/search_bg.png) no-repeat center 0;
-    text-align: center;
-}
-
-.dataTableSearchPattern input {
-    vertical-align: top;
-    font-size: 10px !important;
-    color: #454545 !important;
-    border: 0 !important;
-    background: transparent !important;
-    width: 21px;
-    height: 17px;
-    overflow: hidden;
-    opacity: 0;
-    filter: Alpha(opacity=0);
-    cursor: pointer;
-}
-
-.dataTableSearchPattern input:hover {
-
-}
-
-.dataTableSearchPattern #keyword {
-    width: 114px;
-    height: auto;
-    overflow: visible;
-    padding: 2px 6px;
-    opacity: 1;
-    cursor: text;
-    filter: Alpha(opacity=100);
-}
-
-.dataTableNext, .dataTablePrevious {
-    font-size: 12px;
-    color: #184A83;
-    cursor: pointer;
-}
-
-.datatableRelatedReports {
-    color: #888;
-    font-size: 11px;
-    padding-bottom: 5px;
-}
-
-.datatableRelatedReports span {
-    cursor: pointer;
-    font-weight: bold;
-}
-
-/* are the following two supposed to be together? */
-.subDataTable.dataTableFeatures {
-    padding-top: 0;
-    padding-bottom: 5px;
-}
-
-.dataTableFeatures {
-    padding-top: 10px;
-    text-align: center;
-}
-
-.dataTableNext, .dataTablePrevious, .dataTableSearchPattern {
-    display: none;
-}
-
-.dataTableFeatures .loadingPiwik {
-    font-size: 0.9em;
-}
-
-.subDataTable .dataTableFooterIcons {
-    height: 0;
-}
-
-.dataTable .loadingPiwikBelow {
-    padding-bottom: 5px;
-    display: block;
-    text-align: center;
-}
-
-.dataTableFooterIcons {
-    display: block;
-    height: 20px;
-    white-space: nowrap;
-    font-size: 10px;
-    padding: 6px 5px;
-    border-top: 1px solid #B6B0A6;
-}
-
-.dataTableFooterWrap {
-    position: relative;
-    float: left;
-}
-
-.dataTableFooterWrap select {
-    float: left;
-    margin: 1px 0 1px 10px;
-}
-
-.tableIcon {
-    background: #f2f1ed;
-    display: inline-block;
-    float: left;
-    margin: 0 1px 0 0;
-    padding: 2px;
-    border-radius: 2px;
-}
-
-.tableIcon:hover {
-    background: #e9e8e1;
-}
-
-.activeIcon {
-    background: #e9e8e1;
-}
-
-.dataTableFooterActiveItem {
-    position: absolute;
-    top: -6px;
-    left: 0;
-}
-
-.exportToFormatItems {
-    background: #dcdacf;
-    float: left;
-    margin: 0 1px 0 0;
-    padding: 4px 6px 3px 6px;
-    color: #968d7f;
-    border-radius: 2px;
-}
-
-.exportToFormatItems img {
-    vertical-align: middle;
-    margin: -4px -3px -2px 2px;
-}
-
-.tableIconsGroup {
-    float: left;
-    padding-right: 4px;
-}
-
-.tableIconsGroup .tableIcon span {
-    margin-right: 5px;
-    margin-left: 5px;
-}
-
-.tableIconsGroup img {
-    vertical-align: bottom;
-}
-
-.tableIconsGroupActive {
-    display: block;
-    float: left;
-    background: #dcdacf;
-    border-radius: 2px;
-}
-
-.tableIconsGroupActive .tableIcon {
-    background: none;
-}
-
-.tableIconsGroupActive .tableIcon:hover {
-    background: #e9e8e1;
-}
-
-.exportToFormatIcons {
-    float: left;
-}
-
-.dataTableFooterIconsShow {
-    float: left;
-}
-
-.dataTableFooterIcons, .dataTableFooterIcons a {
-    text-decoration: none;
-    color: #255792;
-}
-
-.dataTableSpacer {
-    clear: both;
-}
-
-/* Actions table */
-.dataTableActions table.dataTable tr td.labelodd {
-    background-image: none;
-}
-
-/* levels higher than 4 have a default padding left */
-.actionsDataTable tr td.label {
-    padding-left: 7em;
-}
-
-tr.level0 td.label {
-    padding-left: 1.5em;
-}
-
-tr.level1 td.label {
-    padding-left: 2.5em;
-}
-
-tr.level2 td.label {
-    padding-left: 3.5em;
-}
-
-tr.level3 td.label {
-    padding-left: 4.5em;
-}
-
-tr.level4 td.label {
-    padding-left: 5em;
-}
-
-/* less right margins for the link image in the Pa*/
-.dataTableActions table.dataTable img.link {
-    margin-right: 0.3em;
-    margin-left: -0.5em;
-}
-
-tr td.label img.plusMinus {
-    margin-left: -1em;
-    margin-right: 3px;
-}
-
-.pk-emptyDataTable {
-    padding-top: 20px;
-    padding-bottom: 10px;
-    text-align: center;
-    font-style: italic;
-}
-
-/* Documentation */
-
-table.dataTable th .columnDocumentation {
-    display: none;
-    width: 165px;
-    text-align: left;
-    background: #f7f7f7;
-    color: #444;
-    font-size: 11px;
-    font-weight: normal;
-    border: 1px solid #e4e5e4;
-    padding: 5px 10px 6px 10px;
-    border-radius: 4px;
-    z-index: 125;
-    position: absolute;
-    box-shadow: 0 0 4px #e4e5e4;
-    cursor: default;
-}
-
-table.dataTable th .columnDocumentationTitle {
-    background: url(../../Zeitgeist/images/help.png) no-repeat;
-    line-height: 14px;
-    padding: 2px 0 3px 21px;
-    font-weight: bold;
-}
-
-.reportDocumentation {
-    display: none;
-    background: #f7f7f7;
-    font-size: 12px;
-    font-weight: normal;
-    border: 1px solid #e4e5e4;
-    margin: 0 0 10px 0;
-    padding: 0;
-    border-radius: 4px;
-    max-width: 500px;
-}
-
-.reportDocumentation p {
-    padding: 5px 10px 6px 10px;
-    margin: 0;
-    color: #444;
-    font-size: 12px;
-}
-
-.reportDocumentationIcon {
-    display: block;
-    width: 16px;
-    height: 16px;
-    margin: 10px 0;
-    background: url(../../Zeitgeist/images/help.png) no-repeat;
-}
-
-h2 .reportDocumentationIcon {
-    position: absolute;
-    margin: 4px 0 0 0;
-    display: none;
-    background: url(../../Zeitgeist/images/help_grey.png) no-repeat;
-}
-
-h2 .reportDocumentationIcon.hidden {
-    background: none;
-}
-
-.helpDate {
-    color: #777777;
-    font-size: 11px;
-    font-style: italic;
-    padding: 4px;
-    text-align: right;
-    display: block;
-}
-
-table.dataTable .dataTableRowActions {
-    position: absolute;
-    display: none;
-    overflow: hidden;
-    margin-top: -5px;
-}
-
-*+html table.dataTable .dataTableRowActions {
-    margin-top: -7px;
-}
-
-table.dataTable .dataTableRowActions a {
-    display: block;
-    float: left;
-    padding: 6px 4px 6px 0;
-    margin: 0;
-}
-
-table.dataTable .dataTableRowActions a.leftmost {
-    padding-left: 4px;
-}
-
-table.dataTable .dataTableRowActions a.rightmost {
-    padding-right: 8px;
-}
-
-table.dataTable .dataTableRowActions a img {
-    margin: 0;
-    padding: 0;
-    border: 0;
-    width: 20px;
-    height: 17px;
-}
-
-body .ui-tooltip.rowActionTooltip {
-    font-size: 11px;
-    padding: 3px 5px 3px 6px;
-}
-
-.limitSelection {
-    float: right;
-    position: relative;
-    margin-left: 5px;
-    min-height: 20px;
-    z-index: 1;
-}
-
-.limitSelection.hidden {
-    display: none;
-}
-
-.limitSelection div {
-    border: 1px solid #DFDFDF;
-    border-radius: 4px;
-    background: url(../../Zeitgeist/images/sort_subtable_desc_light.png) no-repeat right 2px;
-    padding: 0 14px 0 4px;
-    display: block;
-    width: 24px;
-    height: 20px;
-    cursor: pointer;
-}
-
-.limitSelection.disabled div {
-    opacity: 0.5;
-    cursor: not-allowed;
-    filter: Alpha(opacity=50);
-}
-
-.limitSelection.visible div {
-    border-radius: 0 0 4px 4px;
-    background-image: url(../../Zeitgeist/images/sort_subtable_asc_light.png)
-}
-
-.limitSelection ul {
-    margin-top: 1px;
-    overflow: visible;
-    background-color: #fff;
-}
-
-.limitSelection ul li {
-    cursor: pointer;
-    width: 28px;
-    padding: 0 10px 0 4px;
-    font-size: 1.1em;
-    font-weight: bold;
-    height: 20px;
-    margin-top: -40px;
-    background-color: #fff;
-    border-left: 1px solid #DFDFDF;
-    border-right: 1px solid #DFDFDF;
-    vertical-align: middle;
-    text-align: right;
-}
-
-.limitSelection ul li.last {
-    border-top: 1px solid #DFDFDF;
-    border-radius: 4px 4px 0 0;
-}
-
-.limitSelection ul li:hover {
-    background-color: #EBEAE6;
-}
-
-.limitSelection span {
-    padding-top: 3px;
-    display: inline-block;
-}
-
-.tableConfiguration {
-    float: right;
-    position: relative;
-    margin-left: 5px;
-    min-height: 20px;
-    min-width: 25px;
-}
-
-a.tableConfigurationIcon {
-    display: block;
-    width: 30px;
-    height: 22px;
-    background: url(../../Zeitgeist/images/configure.png) no-repeat center 2px;
-    position: absolute;
-    z-index: 9;
-    right: 0;
-}
-
-a.tableConfigurationIcon.highlighted {
-    display: block;
-    width: 30px;
-    height: 22px;
-    background-image: url(../../Zeitgeist/images/configure-highlight.png);
-    position: absolute;
-    z-index: 9;
-    right: 0;
-}
-
-.tableConfiguration ul {
-    overflow: visible;
-    background-color: #fff;
-    display: none;
-    position: relative;
-    z-index: 8;
-    text-align: left;
-}
-
-.tableConfiguration ul.open {
-    display: block;
-}
-
-.tableConfiguration ul li {
-    padding: 0;
-    font-size: 1.1em;
-    height: 40px;
-    margin-top: -80px;
-    background-color: #fff;
-    border-left: 1px solid #DFDFDF;
-    border-right: 1px solid #DFDFDF;
-    vertical-align: middle;
-}
-
-.tableConfiguration ul li.firstDummy {
-    border-bottom: 1px solid #DFDFDF;
-    border-radius: 0 0 4px 4px;
-    height: 25px;
-    cursor: default;
-    margin-top: -4px;
-}
-
-.tableConfiguration ul li.first {
-    margin-top: -65px;
-}
-
-.tableConfiguration ul li.last {
-    border-top: 1px solid #DFDFDF;
-    border-radius: 4px 4px 0 0;
-}
-
-.tableConfiguration div.configItem {
-    cursor: pointer;
-    padding: 5px 10px;
-    line-height: 15px;
-    color: #444;
-}
-
-.tableConfiguration div.configItem:hover {
-    background-color: #EBEAE6;
-}
-
-.tableConfiguration div.configItem span.action {
-    color: #255792;
-}
-
-table.dataTable span.cell-tooltip {
-	cursor: default;
-}
-
-.dataTable .jqplot-graph {
-    padding-left: 6px;
-
-    > div {
-        position: relative;
-    }
-}
\ No newline at end of file
+@dataTable-link-color: #255792;
+@dataTable-header-background: #e4e2d7;
+@dataTable-headerActive-background: #D5D3C8;
+
+@import "dataTable/_dataTable.less";
+@import "dataTable/_limitSelection.less";
+@import "dataTable/_reportDocumentation.less";
+@import "dataTable/_rowActions.less";
+@import "dataTable/_subDataTable.less";
+@import "dataTable/_tableConfiguration.less";
\ No newline at end of file
diff --git a/plugins/CoreHome/stylesheets/dataTable/_dataTable.less b/plugins/CoreHome/stylesheets/dataTable/_dataTable.less
new file mode 100644
index 0000000000000000000000000000000000000000..6083dd1ccaf8d13a163b2b6546391ba36393e50a
--- /dev/null
+++ b/plugins/CoreHome/stylesheets/dataTable/_dataTable.less
@@ -0,0 +1,424 @@
+/* main data table */
+.dataTable {
+  border: 0;
+  width: 100%;
+  padding: 0;
+  border-spacing: 0;
+  margin: 0;
+}
+
+table.dataTable td.label,
+table.subDataTable td.label {
+  width: 100%;
+  white-space: nowrap;
+}
+
+table.dataTable img,
+table.subDataTable img {
+  vertical-align: middle;
+}
+
+table.dataTable img {
+  border: 0;
+  margin-right: 1em;
+  margin-left: 0.5em;
+}
+
+table.dataTable tr.subDataTable {
+  cursor: pointer;
+}
+
+table.dataTable th {
+  margin: 0;
+  color: @dataTable-link-color;
+  text-align: left;
+  padding: 6px 6px 6px 12px;
+  background: @dataTable-header-background;
+  font-size: 12px;
+  font-weight: normal;
+  border-left: 1px solid #d4d0c4;
+  vertical-align: top;
+}
+
+table.dataTable th.sortable {
+  cursor: pointer;
+}
+
+table.dataTable th.columnSorted {
+  font-weight: bold;
+  padding-right: 20px;
+  background: @dataTable-headerActive-background;
+}
+
+table.dataTable td {
+  padding: 5px 5px 5px 12px;
+  background: #fff;
+  border-left: 1px solid #e7e7e7;
+  border-bottom: 1px solid #e7e7e7;
+}
+
+table.dataTable td,
+table.dataTable td a {
+  margin: 0;
+  text-decoration: none;
+  color: #444;
+}
+
+table.dataTable tr:hover > td,
+table.dataTable tr:hover > td .dataTableRowActions {
+  background-color: #FFFFF7;
+}
+
+table.dataTable tr.subDataTable:hover > td,
+table.dataTable tr.subDataTable:hover > td .dataTableRowActions {
+  background-color: #ffffcb;
+}
+
+table.dataTable tr:hover > td.cellSubDataTable
+table.dataTable tr:hover > td.cellSubDataTable .dataTableRowActions {
+  background-color: #fff;
+}
+
+td.clean {
+  background-color: #fff;
+}
+
+table.dataTable td.columneven {
+  background: #efeeec;
+}
+
+table.dataTable td.columnodd {
+  background: #f6f5f3;
+}
+
+table.dataTable td.labeleven {
+  background: #F9FAFA url(plugins/CoreHome/images/bullet2.gif) no-repeat;
+}
+
+table.dataTable td.labelodd {
+  background: #fff url(plugins/CoreHome/images/bullet1.gif) no-repeat;
+}
+
+.dataTable tr.highlight td {
+  background-color: #ECF9DD;
+  font-weight: bold;
+}
+
+table.dataTable td.label,
+table.subActionsDataTable td.label,
+table.actionsDataTable td.label {
+  border-top: 0;
+  border-left: 0;
+}
+
+table.dataTable th.label {
+  border-left: 0;
+}
+
+.dataTableActions table.dataTable th.label {
+  /* Ensures tables have enough space to display subtable on click, and prevent the jumping effect */
+  min-width: 250px;
+}
+
+table.dataTable span.label.highlighted {
+  font-style: italic;
+}
+
+/* the cell containing the subdatatable */
+table.dataTable .cellSubDataTable {
+  margin: 0;
+  border-left: 0;
+  padding: 12px 12px 0;
+}
+
+/* A link in a column in the DataTable */
+table.dataTable td #urlLink {
+  display: none;
+}
+
+table.dataTable img {
+  margin-left: 0;
+}
+
+.dataTable > .dataTableWrapper {
+  width: 450px;
+}
+
+.subDataTable > .dataTableWrapper {
+  width: 95%;
+}
+
+.sortIconContainer {
+  float: right;
+  position: relative;
+}
+
+.sortIcon {
+  margin: 0;
+  position: absolute;
+}
+
+.datatableFooterMessage {
+  color: #888;
+  text-align: left;
+  margin: 10px;
+}
+
+.dataTablePages {
+  color: #BFBFBF;
+  font-weight: bold;
+  margin: 10px;
+  font-size: 12px;
+}
+
+.dataTableSearchPattern {
+  margin: 5px 0 2px 0;
+  height: 20px;
+  display: block;
+  white-space: nowrap;
+  background: url(plugins/Zeitgeist/images/search_bg.png) no-repeat center 0;
+  text-align: center;
+}
+
+.dataTableSearchPattern input {
+  vertical-align: top;
+  font-size: 10px;
+  color: #454545;
+  border: 0;
+  background: transparent;
+  width: 21px;
+  height: 17px;
+  overflow: hidden;
+  opacity: 0;
+  filter: Alpha(opacity=0);
+  cursor: pointer;
+}
+
+.dataTableSearchPattern .searchInput {
+  width: 114px;
+  height: auto;
+  overflow: visible;
+  padding: 2px 6px;
+  opacity: 1;
+  cursor: text;
+  filter: Alpha(opacity=100);
+}
+
+.dataTableNext,
+.dataTablePrevious {
+  font-size: 12px;
+  color: #184A83;
+  cursor: pointer;
+}
+
+.datatableRelatedReports {
+  color: #888;
+  font-size: 11px;
+  padding-bottom: 5px;
+}
+
+.datatableRelatedReports span {
+  cursor: pointer;
+  font-weight: bold;
+}
+
+.dataTableFeatures {
+  text-align: center;
+}
+
+.dataTableFooterNavigation {
+  padding: 5px 0;
+}
+
+.dataTableNext,
+.dataTablePrevious,
+.dataTableSearchPattern {
+  display: none;
+}
+
+.dataTableFeatures .loadingPiwik {
+  font-size: 0.9em;
+}
+
+.subDataTable .dataTableFooterIcons {
+  height: 0;
+}
+
+.dataTable .loadingPiwikBelow {
+  padding-bottom: 5px;
+  display: block;
+  text-align: center;
+}
+
+.dataTableFooterIcons {
+  display: block;
+  height: 20px;
+  white-space: nowrap;
+  font-size: 10px;
+  padding: 6px 5px;
+  border-top: 1px solid #B6B0A6;
+}
+
+.dataTableFooterWrap {
+  position: relative;
+  float: left;
+}
+
+.dataTableFooterWrap select {
+  float: left;
+  margin: 1px 0 1px 10px;
+}
+
+.tableIcon {
+  background: #f2f1ed;
+  display: inline-block;
+  float: left;
+  margin: 0 1px 0 0;
+  padding: 2px;
+  border-radius: 2px;
+}
+
+.tableIcon:hover {
+  background: #e9e8e1;
+}
+
+.activeIcon {
+  background: #e9e8e1;
+}
+
+.dataTableFooterActiveItem {
+  position: absolute;
+  top: -6px;
+  left: 0;
+}
+
+.exportToFormatItems {
+  background: #dcdacf;
+  float: left;
+  margin: 0 1px 0 0;
+  padding: 4px 6px 3px 6px;
+  color: #968d7f;
+  border-radius: 2px;
+}
+
+.exportToFormatItems img {
+  vertical-align: middle;
+  margin: -4px -3px -2px 2px;
+}
+
+.tableIconsGroup {
+  float: left;
+  padding-right: 4px;
+}
+
+.tableIconsGroup .tableIcon span {
+  margin-right: 5px;
+  margin-left: 5px;
+}
+
+.tableIconsGroup img {
+  vertical-align: bottom;
+}
+
+.tableIconsGroupActive {
+  display: block;
+  float: left;
+  background: #dcdacf;
+  border-radius: 2px;
+}
+
+.tableIconsGroupActive .tableIcon {
+  background: none;
+}
+
+.tableIconsGroupActive .tableIcon:hover {
+  background: #e9e8e1;
+}
+
+.exportToFormatIcons,
+.dataTableFooterIconsShow {
+  float: left;
+}
+
+.dataTableFooterIcons,
+.dataTableFooterIcons a {
+  text-decoration: none;
+  color: @dataTable-link-color;
+}
+
+.dataTableSpacer {
+  clear: both;
+}
+
+/* Actions table */
+.dataTableActions table.dataTable tr td.labelodd {
+  background-image: none;
+}
+
+/* levels higher than 4 have a default padding left */
+.actionsDataTable tr td.label {
+  padding-left: 7em;
+}
+
+tr.level0 td.label {
+  padding-left: 1.5em;
+}
+
+tr.level1 td.label {
+  padding-left: 2.5em;
+}
+
+tr.level2 td.label {
+  padding-left: 3.5em;
+}
+
+tr.level3 td.label {
+  padding-left: 4.5em;
+}
+
+tr.level4 td.label {
+  padding-left: 5em;
+}
+
+/* less right margins for the link image in the Pa*/
+.dataTableActions table.dataTable img.link {
+  margin-right: 0.3em;
+  margin-left: -0.5em;
+}
+
+tr td.label img.plusMinus {
+  margin-left: -1em;
+  margin-right: 3px;
+}
+
+.pk-emptyDataTable {
+  padding-top: 20px;
+  padding-bottom: 10px;
+  text-align: center;
+  font-style: italic;
+}
+
+.helpDate {
+  color: #777777;
+  font-size: 11px;
+  font-style: italic;
+  padding: 4px;
+  text-align: right;
+  display: block;
+}
+
+body .ui-tooltip.rowActionTooltip {
+  font-size: 11px;
+  padding: 3px 5px 3px 6px;
+}
+
+table.dataTable span.cell-tooltip {
+  cursor: default;
+}
+
+.dataTable .jqplot-graph {
+  padding-left: 6px;
+  > div {
+    position: relative;
+  }
+}
\ No newline at end of file
diff --git a/plugins/CoreHome/stylesheets/dataTable/_limitSelection.less b/plugins/CoreHome/stylesheets/dataTable/_limitSelection.less
new file mode 100644
index 0000000000000000000000000000000000000000..6d899d89ef8918f19234d877148a8087b0bf2fe1
--- /dev/null
+++ b/plugins/CoreHome/stylesheets/dataTable/_limitSelection.less
@@ -0,0 +1,68 @@
+.limitSelection {
+  float: right;
+  position: relative;
+  margin-left: 5px;
+  min-height: 20px;
+  z-index: 1;
+}
+
+.limitSelection.hidden {
+  display: none;
+}
+
+.limitSelection > div {
+  border: 1px solid #DFDFDF;
+  border-radius: 4px;
+  background: url(plugins/Zeitgeist/images/sort_subtable_desc_light.png) no-repeat right 2px;
+  padding: 0 14px 0 4px;
+  display: block;
+  width: 24px;
+  height: 20px;
+  cursor: pointer;
+}
+
+.limitSelection.disabled > div {
+  opacity: 0.5;
+  cursor: not-allowed;
+  filter: Alpha(opacity=50);
+}
+
+.limitSelection.visible > div {
+  border-radius: 0 0 4px 4px;
+  background-image: url(plugins/Zeitgeist/images/sort_subtable_asc_light.png)
+}
+
+.limitSelection > ul {
+  margin-top: 1px;
+  overflow: visible;
+  background-color: #fff;
+}
+
+.limitSelection > ul > li {
+  cursor: pointer;
+  width: 28px;
+  padding: 0 10px 0 4px;
+  font-size: 1.1em;
+  font-weight: bold;
+  height: 20px;
+  margin-top: -40px;
+  background-color: #fff;
+  border-left: 1px solid #DFDFDF;
+  border-right: 1px solid #DFDFDF;
+  vertical-align: middle;
+  text-align: right;
+}
+
+.limitSelection > ul > li.last {
+  border-top: 1px solid #DFDFDF;
+  border-radius: 4px 4px 0 0;
+}
+
+.limitSelection > ul > li:hover {
+  background-color: #EBEAE6;
+}
+
+.limitSelection span {
+  padding-top: 3px;
+  display: inline-block;
+}
\ No newline at end of file
diff --git a/plugins/CoreHome/stylesheets/dataTable/_reportDocumentation.less b/plugins/CoreHome/stylesheets/dataTable/_reportDocumentation.less
new file mode 100644
index 0000000000000000000000000000000000000000..1661ddb5ec889347084a4e8e520168e5da0246f8
--- /dev/null
+++ b/plugins/CoreHome/stylesheets/dataTable/_reportDocumentation.less
@@ -0,0 +1,62 @@
+/* Documentation */
+table.dataTable th .columnDocumentation {
+  display: none;
+  width: 165px;
+  text-align: left;
+  background: #f7f7f7;
+  color: #444;
+  font-size: 11px;
+  font-weight: normal;
+  border: 1px solid #e4e5e4;
+  padding: 5px 10px 6px 10px;
+  border-radius: 4px;
+  z-index: 125;
+  position: absolute;
+  box-shadow: 0 0 4px #e4e5e4;
+  cursor: default;
+}
+
+table.dataTable th .columnDocumentationTitle {
+  background: url(plugins/Zeitgeist/images/help.png) no-repeat;
+  line-height: 14px;
+  padding: 2px 0 3px 21px;
+  font-weight: bold;
+}
+
+.reportDocumentation {
+  display: none;
+  background: #f7f7f7;
+  font-size: 12px;
+  font-weight: normal;
+  border: 1px solid #e4e5e4;
+  margin: 0 0 10px 0;
+  padding: 0;
+  border-radius: 4px;
+  max-width: 500px;
+}
+
+.reportDocumentation p {
+  padding: 5px 10px 6px 10px;
+  margin: 0;
+  color: #444;
+  font-size: 12px;
+}
+
+.reportDocumentationIcon {
+  display: block;
+  width: 16px;
+  height: 16px;
+  margin: 10px 0;
+  background: url(plugins/Zeitgeist/images/help.png) no-repeat;
+}
+
+h2 .reportDocumentationIcon {
+  position: absolute;
+  margin: 4px 0 0 0;
+  display: none;
+  background: url(plugins/Zeitgeist/images/help_grey.png) no-repeat;
+}
+
+h2 .reportDocumentationIcon.hidden {
+  background: none;
+}
\ No newline at end of file
diff --git a/plugins/CoreHome/stylesheets/dataTable/_rowActions.less b/plugins/CoreHome/stylesheets/dataTable/_rowActions.less
new file mode 100644
index 0000000000000000000000000000000000000000..55f9876e4c10785f69a69ebb3c0b3a59e64f38f2
--- /dev/null
+++ b/plugins/CoreHome/stylesheets/dataTable/_rowActions.less
@@ -0,0 +1,35 @@
+
+
+table.dataTable .dataTableRowActions {
+  position: absolute;
+  display: none;
+  overflow: hidden;
+  margin-top: -5px;
+}
+
+*+html table.dataTable .dataTableRowActions {
+  margin-top: -7px;
+}
+
+table.dataTable .dataTableRowActions a {
+  display: block;
+  float: left;
+  padding: 6px 4px 6px 0;
+  margin: 0;
+}
+
+table.dataTable .dataTableRowActions a.leftmost {
+  padding-left: 4px;
+}
+
+table.dataTable .dataTableRowActions a.rightmost {
+  padding-right: 8px;
+}
+
+table.dataTable .dataTableRowActions a img {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  width: 20px;
+  height: 17px;
+}
\ No newline at end of file
diff --git a/plugins/CoreHome/stylesheets/dataTable/_subDataTable.less b/plugins/CoreHome/stylesheets/dataTable/_subDataTable.less
new file mode 100644
index 0000000000000000000000000000000000000000..7e540c2b62573ab23df8ab1655baaa919921bfe6
--- /dev/null
+++ b/plugins/CoreHome/stylesheets/dataTable/_subDataTable.less
@@ -0,0 +1,46 @@
+/* SUBDATATABLE */
+/* a datatable inside another datatable */
+table.subDataTable td {
+  border: 0;
+}
+
+table.subDataTable thead th {
+  font-weight: normal;
+  font-size: 12px;
+  text-align: left;
+  padding: .3em 1em;
+  border: 0;
+  border-top: 1px solid #e7e7e7;
+  border-bottom: 1px solid #e7e7e7;
+}
+
+table.subDataTable td.labeleven, table.subDataTable td.labelodd {
+  background-image: none;
+}
+
+table.subDataTable td {
+  border-bottom: 1px solid #e7e7e7;
+  border-left: 0;
+}
+
+table.subDataTable td, table.subDataTable td a {
+  color: #615B53;
+}
+
+table.subDataTable td.labeleven, table.subDataTable td.columneven {
+  color: #2D2A27;
+}
+
+table.subDataTable td.label {
+  width: 80%;
+}
+
+table.subDataTable td.label {
+  padding: 5px;
+}
+
+/* are the following two supposed to be together? */
+.subDataTable.dataTableFeatures {
+  padding-top: 0;
+  padding-bottom: 5px;
+}
\ No newline at end of file
diff --git a/plugins/CoreHome/stylesheets/dataTable/_tableConfiguration.less b/plugins/CoreHome/stylesheets/dataTable/_tableConfiguration.less
new file mode 100644
index 0000000000000000000000000000000000000000..fff7c3d1bfddbe591b68fceda32c8bdbd54bc585
--- /dev/null
+++ b/plugins/CoreHome/stylesheets/dataTable/_tableConfiguration.less
@@ -0,0 +1,82 @@
+.tableConfiguration {
+  float: right;
+  position: relative;
+  margin-left: 5px;
+  min-height: 20px;
+  min-width: 25px;
+}
+
+a.tableConfigurationIcon {
+  display: block;
+  width: 30px;
+  height: 22px;
+  background: url(plugins/Zeitgeist/images/configure.png) no-repeat center 2px;
+  position: absolute;
+  z-index: 9;
+  right: 0;
+}
+
+a.tableConfigurationIcon.highlighted {
+  display: block;
+  width: 30px;
+  height: 22px;
+  background-image: url(plugins/Zeitgeist/images/configure-highlight.png);
+  position: absolute;
+  z-index: 9;
+  right: 0;
+}
+
+.tableConfiguration ul {
+  overflow: visible;
+  display: none;
+  position: relative;
+  z-index: 8;
+  text-align: left;
+}
+
+.tableConfiguration ul.open {
+  display: block;
+}
+
+.tableConfiguration ul li {
+  padding: 0;
+  font-size: 1.1em;
+  height: 40px;
+  margin-top: -80px;
+  background-color: #fff;
+  border: 1px solid #DFDFDF;
+  border-width: 0 1px;
+  vertical-align: middle;
+}
+
+.tableConfiguration ul li.firstDummy {
+  border-bottom-width: 1px;
+  border-radius: 0 0 4px 4px;
+  height: 25px;
+  cursor: default;
+  margin-top: -4px;
+}
+
+.tableConfiguration ul li.first {
+  margin-top: -65px;
+}
+
+.tableConfiguration ul li.last {
+  border-top-width: 1px;
+  border-radius: 4px 4px 0 0;
+}
+
+.tableConfiguration div.configItem {
+  cursor: pointer;
+  padding: 5px 10px;
+  line-height: 15px;
+  color: #444;
+}
+
+.tableConfiguration div.configItem:hover {
+  background-color: #EBEAE6;
+}
+
+.tableConfiguration div.configItem span.action {
+  color: @dataTable-link-color;
+}
\ No newline at end of file
diff --git a/plugins/Zeitgeist/stylesheets/ui/_jqplot.less b/plugins/CoreHome/stylesheets/jqplotColors.less
similarity index 95%
rename from plugins/Zeitgeist/stylesheets/ui/_jqplot.less
rename to plugins/CoreHome/stylesheets/jqplotColors.less
index b8f47543d25e5fd687973d4899e01a7cb20a4c22..01dd9b8444fceaafbc8cc64d56a431dd2d401378 100644
--- a/plugins/Zeitgeist/stylesheets/ui/_jqplot.less
+++ b/plugins/CoreHome/stylesheets/jqplotColors.less
@@ -1,4 +1,12 @@
 // evolution graph colors
+.evolution-graph-colors[data-name=grid-background] {
+  color: #fff;
+}
+
+.evolution-graph-colors[data-name=grid-border] {
+  color: #f00;
+}
+
 .evolution-graph-colors[data-name=series1] {
     color: #5170AE;
 }
@@ -31,14 +39,6 @@
     color: #49C100;
 }
 
-.evolution-graph-colors[data-name=grid-background] {
-    color: #fff;
-}
-
-.evolution-graph-colors[data-name=grid-border] {
-    color: #f00;
-}
-
 .evolution-graph-colors[data-name=ticks] {
     color: #ccc;
 }
@@ -48,6 +48,14 @@
 }
 
 // bar graph colors
+.bar-graph-colors[data-name=grid-background] {
+  color: #fff;
+}
+
+.bar-graph-colors[data-name=grid-border] {
+  color: #f00;
+}
+
 .bar-graph-colors[data-name=series1] {
     color: #5170AE;
 }
@@ -80,14 +88,6 @@
     color: #49C100;
 }
 
-.bar-graph-colors[data-name=grid-background] {
-    color: #fff;
-}
-
-.bar-graph-colors[data-name=grid-border] {
-    color: #f00;
-}
-
 .bar-graph-colors[data-name=ticks] {
     color: #ccc;
 }
@@ -97,6 +97,14 @@
 }
 
 // pie graph colors
+.pie-graph-colors[data-name=grid-background] {
+  color: #fff;
+}
+
+.pie-graph-colors[data-name=grid-border] {
+  color: #f00;
+}
+
 .pie-graph-colors[data-name=series1] {
     color: #59727F;
 }
@@ -133,14 +141,6 @@
     color: #A5A5A5;
 }
 
-.pie-graph-colors[data-name=grid-background] {
-    color: #fff;
-}
-
-.pie-graph-colors[data-name=grid-border] {
-    color: #f00;
-}
-
 .pie-graph-colors[data-name=ticks] {
     color: #ccc;
 }
diff --git a/plugins/CoreHome/stylesheets/menu.less b/plugins/CoreHome/stylesheets/menu.less
index 2bd0f491c577fc38fd430c85b9a01dc25bb9003a..0d035ce2241767ecde229c043db2a728d0128971 100644
--- a/plugins/CoreHome/stylesheets/menu.less
+++ b/plugins/CoreHome/stylesheets/menu.less
@@ -91,7 +91,7 @@
 /* LEVEL2 HOVER */
 .nav_tab > li.sfHover > ul,
 .nav_tab > li:hover > ul {
-  z-index: 50;
+  z-index: 1;
   top: 100%;
   opacity: 1;
   -webkit-transition: opacity 300ms ease-out 10ms; /* property duration timing-function delay */
diff --git a/plugins/Zeitgeist/stylesheets/ui/_sparkline.less b/plugins/CoreHome/stylesheets/sparklineColors.less
similarity index 61%
rename from plugins/Zeitgeist/stylesheets/ui/_sparkline.less
rename to plugins/CoreHome/stylesheets/sparklineColors.less
index 7d2b9c7c8bd86d3e61c0b5f64671afb9ac060ead..9eef3ff9552514388efbfd7e2367916527674b1f 100644
--- a/plugins/Zeitgeist/stylesheets/ui/_sparkline.less
+++ b/plugins/CoreHome/stylesheets/sparklineColors.less
@@ -9,18 +9,22 @@ div.sparkline:hover {
 }
 
 // sparkline colors
+.sparkline-colors[data-name=backgroundColor] {
+  color: white;
+}
+
 .sparkline-colors[data-name=lineColor] {
     color: rgb(22, 44, 74);
 }
 
-.sparkline-colors[data-name=red] {
+.sparkline-colors[data-name=minPointColor] {
     color: #ff7f7f;
 }
 
-.sparkline-colors[data-name=blue] {
+.sparkline-colors[data-name=lastPointColor] {
     color: #55AAFF;
 }
 
-.sparkline-colors[data-name=green] {
+.sparkline-colors[data-name=maxPointColor] {
     color: #75BF7C;
 }
diff --git a/plugins/CoreHome/templates/_dataTable.twig b/plugins/CoreHome/templates/_dataTable.twig
index 5b04fdf9f7e81ccf424077cf896c9df5a1de30e1..c95fd78b56ad5fc7a4056ec07e86e13bfc636d33 100644
--- a/plugins/CoreHome/templates/_dataTable.twig
+++ b/plugins/CoreHome/templates/_dataTable.twig
@@ -9,26 +9,26 @@
         {% if properties.documentation|default is not empty %}<p>{{ properties.documentation|raw }}</p>{% endif %}
         {% if properties.metadata.archived_date is defined %}<span class='helpDate'>{{ properties.metadata.archived_date }}</span>{% endif %}
     </div>
-    <div class="dataTableWrapper">
-        {% if error is defined %}
-            {{ error.message }}
-        {% else %}
-            {% if dataTable is empty or dataTable.getRowsCount() == 0 %}
-                <div class="pk-emptyDataTable">
-                {% if showReportDataWasPurgedMessage is defined and showReportDataWasPurgedMessage %}
-                    {{ 'CoreHome_DataForThisReportHasBeenPurged'|translate(deleteReportsOlderThan) }}
-                {% else %}
-                    {{ 'CoreHome_ThereIsNoDataForThisReport'|translate }}
-                {% endif %}
-                </div>
+    {% if error is defined %}
+        {{ error.message }}
+    {% else %}
+        {% if dataTable is empty or dataTable.getRowsCount() == 0 %}
+            <div class="pk-emptyDataTable">
+            {% if showReportDataWasPurgedMessage is defined and showReportDataWasPurgedMessage %}
+                {{ 'CoreHome_DataForThisReportHasBeenPurged'|translate(deleteReportsOlderThan) }}
             {% else %}
-                {{ visualization.render(dataTable, properties)|raw }}
+                {{ 'CoreHome_ThereIsNoDataForThisReport'|translate }}
             {% endif %}
+            </div>
+        {% else %}
+            <div class="dataTableWrapper">
+                {{ visualization.render(dataTable, properties)|raw }}
+            </div>
+        {% endif %}
 
-            {% if properties.show_footer %}
-                {% include "@CoreHome/_dataTableFooter.twig" %}
-            {% endif %}
-            {% include "@CoreHome/_dataTableJS.twig" %}
+        {% if properties.show_footer %}
+            {% include "@CoreHome/_dataTableFooter.twig" %}
         {% endif %}
-    </div>
+        {% include "@CoreHome/_dataTableJS.twig" %}
+    {% endif %}
 </div>
diff --git a/plugins/CoreHome/templates/_dataTableFooter.twig b/plugins/CoreHome/templates/_dataTableFooter.twig
index c895975da12321a6cf0f0ee432f4670cc382e5ba..44b776b31d0100d514fc6b22a60c2915d31137ee 100644
--- a/plugins/CoreHome/templates/_dataTableFooter.twig
+++ b/plugins/CoreHome/templates/_dataTableFooter.twig
@@ -1,24 +1,26 @@
 <div class="dataTableFeatures">
 
-    {% if properties.show_offset_information %}
-    <span>
-	    <span class="dataTablePages"></span>
-    </span>
-    {% endif %}
+    <div class="dataTableFooterNavigation">
+        {% if properties.show_offset_information %}
+            <span>
+                <span class="dataTablePages"></span>
+            </span>
+        {% endif %}
 
-    {% if properties.show_pagination_control %}
-    <span>
-	    <span class="dataTablePrevious">&lsaquo; {% if javascriptVariablesToSet.dataTablePreviousIsFirst is defined %}{{ 'General_First'|translate }}{% else %}{{ 'General_Previous'|translate }}{% endif %} </span>
-	    <span class="dataTableNext">{{ 'General_Next'|translate }} &rsaquo;</span>
-    </span>
-    {% endif %}
+        {% if properties.show_pagination_control %}
+            <span>
+                <span class="dataTablePrevious">&lsaquo; {% if javascriptVariablesToSet.dataTablePreviousIsFirst is defined %}{{ 'General_First'|translate }}{% else %}{{ 'General_Previous'|translate }}{% endif %} </span>
+                <span class="dataTableNext">{{ 'General_Next'|translate }} &rsaquo;</span>
+            </span>
+        {% endif %}
 
-    {% if properties.show_search %}
-    <span class="dataTableSearchPattern">
-	    <input id="keyword" type="text" length="15" />
-	    <input type="submit" value="{{ 'General_Search'|translate }}" />
-    </span>
-    {% endif %}
+        {% if properties.show_search %}
+            <span class="dataTableSearchPattern">
+                <input type="text" class="searchInput" length="15" />
+                <input type="submit" value="{{ 'General_Search'|translate }}" />
+            </span>
+        {% endif %}
+    </div>
 
     <span class="loadingPiwik" style='display:none'><img src="plugins/Zeitgeist/images/loading-blue.gif"/> {{ 'General_LoadingData'|translate }}</span>
     {% if properties.show_footer_icons %}
diff --git a/plugins/CoreHome/templates/_siteSelectHeader.twig b/plugins/CoreHome/templates/_siteSelectHeader.twig
new file mode 100644
index 0000000000000000000000000000000000000000..a4ab4cf8a0365a42d023735e8b47ee85a5f9a882
--- /dev/null
+++ b/plugins/CoreHome/templates/_siteSelectHeader.twig
@@ -0,0 +1,4 @@
+<div class="top_bar_sites_selector">
+    <label>{{ 'General_Website'|translate }}</label>
+    {% include "@CoreHome/_siteSelect.twig" %}
+</div>
\ No newline at end of file
diff --git a/plugins/CoreHome/templates/_topBarHelloMenu.twig b/plugins/CoreHome/templates/_topBarHelloMenu.twig
index 34503d12bfbd936de2078ccb2d93b1381917643e..7fb0aadb819aa1a3aff0ed47342fec414a8ac360 100644
--- a/plugins/CoreHome/templates/_topBarHelloMenu.twig
+++ b/plugins/CoreHome/templates/_topBarHelloMenu.twig
@@ -8,7 +8,12 @@
     {% endset %}
     <span class="topBarElem">{{ 'General_HelloUser'|translate(helloAlias)|raw }}</span>
     {% if userLogin != 'anonymous' %}
-        | <span class="topBarElem"><a href='index.php?module=CoreAdminHome'>{{ 'General_Settings'|translate }}</a></span>
+        |
+        {% if isAdminLayout is defined %}
+            <span class="topBarElem topBarElemActive">{{ 'General_Settings'|translate }}</span>
+        {% else %}
+            <span class="topBarElem"><a href='index.php?module=CoreAdminHome'>{{ 'General_Settings'|translate }}</a></span>
+        {% endif %}
     {% endif %}
     | <span class="topBarElem">
         {% if userLogin == 'anonymous' %}
diff --git a/plugins/CoreHome/templates/_topBarTopMenu.twig b/plugins/CoreHome/templates/_topBarTopMenu.twig
index 29330720a0d8c210780ceeb86ba03a9156ad1392..6e7992e7ac8f72b3d6cfee46ad3e48ec02503571 100644
--- a/plugins/CoreHome/templates/_topBarTopMenu.twig
+++ b/plugins/CoreHome/templates/_topBarTopMenu.twig
@@ -3,7 +3,7 @@
         {% if menu._html is defined %}
             {{ menu._html|raw }}
         {% elseif (menu._url.module == currentModule and (menu._url.action is empty or menu._url.action == currentAction)) %}
-            <span class="topBarElem"><b>{{ label|translate }}</b></span> |
+            <span class="topBarElem topBarElemActive"><b>{{ label|translate }}</b></span> |
         {% else %}
             <span class="topBarElem" {% if menu._tooltip is defined %}title="{{ menu._tooltip }}"{% endif %}>
                 <a id="topmenu-{{ menu._url.module|lower }}" href="index.php{{ menu._url|urlRewriteWithParameters }}">{{ label|translate }}</a>
diff --git a/plugins/CoreHome/templates/getDefaultIndexView.twig b/plugins/CoreHome/templates/getDefaultIndexView.twig
index 0fe04f26de0ab10c12cca89ec436bc7e38d83a73..b9d26c3a7c95f196baed530d79a584ff86875339 100644
--- a/plugins/CoreHome/templates/getDefaultIndexView.twig
+++ b/plugins/CoreHome/templates/getDefaultIndexView.twig
@@ -2,10 +2,7 @@
 
 {% block content %}
 
-<div class="top_bar_sites_selector">
-    <label>{{ 'General_Website'|translate }}</label>
-    {% include "@CoreHome/_siteSelect.twig" %}
-</div>
+{% include "@CoreHome/_siteSelectHeader.twig" %}
 
 {% if (menu is defined and menu) %}
   {% include "@CoreHome/_menu.twig" %}
diff --git a/plugins/CoreUpdater/templates/layout.twig b/plugins/CoreUpdater/templates/layout.twig
index 23aee2788493c577c5495cca95c12334ca2d5ba7..cf6dd9ae2b2529a0eab76586b0fa4ef5f156d64c 100644
--- a/plugins/CoreUpdater/templates/layout.twig
+++ b/plugins/CoreUpdater/templates/layout.twig
@@ -3,7 +3,8 @@
 <head>
     <meta charset="utf-8">
     <title>Piwik &rsaquo; {{ 'CoreUpdater_UpdateTitle'|translate }}</title>
-    <link rel="shortcut icon" href="plugins/CoreHome/images/favicon.ico"/>
+    <meta http-equiv="X-UA-Compatible" content="IE=EDGE,chrome=1"/>
+    <meta name="viewport" content="initial-scale=1.0" />
 
     <link rel="stylesheet" type="text/css" href="libs/jquery/themes/base/jquery-ui.css"/>
     <link rel="stylesheet" type="text/css" href="plugins/Zeitgeist/stylesheets/base.css" />
@@ -19,6 +20,8 @@
         <link rel="stylesheet" type="text/css" href="plugins/Zeitgeist/stylesheets/rtl.css"/>
     {% endif %}
     {{ loadJavascriptTranslations(['CoreHome'])|raw }}
+
+    <link rel="shortcut icon" href="plugins/CoreHome/images/favicon.ico"/>
 </head>
 <body id="simple">
 <div id="contentsimple">
diff --git a/plugins/Dashboard/javascripts/dashboard.js b/plugins/Dashboard/javascripts/dashboard.js
index e23ff669a42ef43d5dca960e3d47b6c96ae0bbef..e2a73be1d3e09fc25aa713c86df435bf8dbed62f 100644
--- a/plugins/Dashboard/javascripts/dashboard.js
+++ b/plugins/Dashboard/javascripts/dashboard.js
@@ -12,9 +12,9 @@ function initDashboard(dashboardId, dashboardLayout) {
         $('#periodString').after($('#dashboardSettings'));
 
         var leftMargin = $('#periodString')[0].offsetWidth;
-        var segmentSelector = $('.segmentationContainer:visible');
+        var segmentSelector = $('#segmentEditorPanel:visible');
         if(segmentSelector.length) {
-            segmentSelector = $($('.segmentationContainer:visible')[0]);
+            segmentSelector = $($('#segmentEditorPanel:visible')[0]);
             leftMargin = segmentSelector.position().left + segmentSelector.outerWidth();
         }
         $('#dashboardSettings').css({left: leftMargin});
diff --git a/plugins/Dashboard/stylesheets/dashboard.less b/plugins/Dashboard/stylesheets/dashboard.less
index c1d2732bf85d4e31f959b7bc7d9f7c0bc8fc100d..f00fe46366f0f2365a890a156e99e6b9e83b43a8 100644
--- a/plugins/Dashboard/stylesheets/dashboard.less
+++ b/plugins/Dashboard/stylesheets/dashboard.less
@@ -8,9 +8,24 @@
 }
 
 .top_controls_inner {
-  position: relative;
-  height: 32px;
-  padding-bottom: 20px;
+   clear: left;
+   position: relative;
+   height: 32px;
+   padding-bottom: 20px;
+}
+
+@media all and (max-width: 749px) {
+  .top_controls {
+    height: auto;
+  }
+
+  .top_controls #periodString,
+  .top_controls #dashboardSettings,
+  .top_controls #segmentEditorPanel {
+    position: static;
+    margin: 0 0 10px;
+    float: none;
+  }
 }
 
 #dashboardWidgetsArea {
@@ -43,7 +58,7 @@
 }
 
 .col.width-33 {
-    width: 33%;
+    width: 33.33%;
 }
 
 .col.width-30 {
@@ -65,6 +80,7 @@
     overflow: hidden;
     border-radius: 4px;
     font-size: 14px;
+    z-index: 1;
 }
 
 .widgetHover {
@@ -86,7 +102,7 @@
 
 .widgetContent.loading {
     opacity: 0.5;
-    background: url(../../../plugins/Zeitgeist/images/loading-blue.gif) no-repeat top right;
+    background: url(plugins/Zeitgeist/images/loading-blue.gif) no-repeat top right;
 }
 
 .widget h2 {
@@ -95,10 +111,12 @@
     font-weight: bold;
 }
 
+.widget p {
+   margin-left: 10px;
+}
+
 .widgetTop {
-    background: #b5b0a7 url(../../../plugins/Zeitgeist/images/dashboard_h_bg.png) repeat-x 0 0;
-    border-radius: 4px 4px 0 0;
-    width: 100%;
+    background: #b5b0a7 url(plugins/Zeitgeist/images/dashboard_h_bg.png) repeat-x 0 0;
     cursor: move;
     font-size: 10pt;
     font-weight: bold;
@@ -106,7 +124,7 @@
 }
 
 .widgetTopHover {
-    background: #B0A798 url(../../../plugins/Zeitgeist/images/dashboard_h_bg_hover.png) repeat-x 0 0;
+    background: #B0A798 url(plugins/Zeitgeist/images/dashboard_h_bg_hover.png) repeat-x 0 0;
 }
 
 .widgetName {
@@ -162,7 +180,7 @@
 }
 
 .ui-dialog-buttonset input[type=button], .ui-dialog-buttonset button{
-    background: #B5B0A7 url(../../../plugins/Zeitgeist/images/dashboard_h_bg_hover.png) repeat-x 0 0 !important;
+    background: #B5B0A7 url(plugins/Zeitgeist/images/dashboard_h_bg_hover.png) repeat-x 0 0 !important;
     color: #fff !important;
     border: 0 !important;
     font-size: 12px !important;
@@ -220,6 +238,7 @@
     color: #444;
     font-size: 14px;
     cursor: pointer;
+  overflow: hidden;
 }
 
 #dashboardSettings:hover {
@@ -228,7 +247,7 @@
 }
 
 #dashboardSettings > span {
-    background: url(../../../plugins/Zeitgeist/images/sort_subtable_desc.png) right center no-repeat;
+    background: url(plugins/Zeitgeist/images/sort_subtable_desc.png) right center no-repeat;
     padding-right: 20px;
     display: block;
 }
@@ -363,7 +382,7 @@ ul.widgetpreview-widgetlist li {
 }
 
 .widgetpreview-base li.widgetpreview-choosen {
-    background: #e4e2d7 url(../../../plugins/Zeitgeist/images/arr_r.png) no-repeat right 6px;
+    background: #e4e2d7 url(plugins/Zeitgeist/images/arr_r.png) no-repeat right 6px;
     color: #255792;
     font-weight: bold;
 }
@@ -492,5 +511,9 @@ div.widgetpreview-preview {
   .col.width-30,
   .col.width-25 {
     width: 100%;
+    .widget {
+      margin-right: 0;
+    }
   }
+
 }
\ No newline at end of file
diff --git a/plugins/Dashboard/templates/index.twig b/plugins/Dashboard/templates/index.twig
index cc86a56715cbffe9006f94963740c4aeb3a3b5ac..e16fb1955ea7c7e4ab28dd1ca4c8220318079e5d 100644
--- a/plugins/Dashboard/templates/index.twig
+++ b/plugins/Dashboard/templates/index.twig
@@ -4,8 +4,9 @@
     <div id="Dashboard">
         <ul>
             {% for dashboard in dashboards %}
-                <li class="dashboardMenuItem" id="Dashboard_embeddedIndex_{{ dashboard.iddashboard }}"><a
-                            href="javascript:$('#dashboardWidgetsArea').dashboard('loadDashboard', {{ dashboard.iddashboard }});">{{ dashboard.name|escape }}</a></li>
+                <li class="dashboardMenuItem" id="Dashboard_embeddedIndex_{{ dashboard.iddashboard }}">
+                    <a href="javascript:$('#dashboardWidgetsArea').dashboard('loadDashboard', {{ dashboard.iddashboard }});">{{ dashboard.name|escape }}</a>
+                </li>
             {% endfor %}
         </ul>
     </div>
diff --git a/plugins/Installation/stylesheets/installation.css b/plugins/Installation/stylesheets/installation.css
index 2cdd581b1a8e093fd616a2a08b4f6c1dd2df1a09..354f74b53991b063833903f5d54ec55c64ffd2fe 100644
--- a/plugins/Installation/stylesheets/installation.css
+++ b/plugins/Installation/stylesheets/installation.css
@@ -29,6 +29,10 @@ p {
     padding: 20px 30px 40px;
 }
 
+#installationPage #logo {
+    height: auto;
+}
+
 h2 {
     font-size: 20px;
     color: #666666;
@@ -106,7 +110,7 @@ code {
 }
 
 /* Cadre general */
-#main {
+#installationPage {
     margin: 30px 5px 5px;
     text-align: left;
 }
diff --git a/plugins/Installation/templates/layout.twig b/plugins/Installation/templates/layout.twig
index 705b40d492f2397af2978844edca2ab1d8852677..d7b8fb4ff516655e80567d15368cd8919bcb3a22 100644
--- a/plugins/Installation/templates/layout.twig
+++ b/plugins/Installation/templates/layout.twig
@@ -16,7 +16,7 @@
     {% endif %}
 </head>
 <body>
-<div id="main">
+<div id="installationPage">
     <div id="content">
         <div id="logo">
             <img id="title" width='160' src="plugins/Zeitgeist/images/logo.png"/> &nbsp;&nbsp;&nbsp;<span
diff --git a/plugins/Live/stylesheets/live.less b/plugins/Live/stylesheets/live.less
index 29d4b03e03fd3d6683c02a43a1348e7e48f3685c..4325471bb6dcc07e3cf5baa9a9fc9fcb0275c069 100644
--- a/plugins/Live/stylesheets/live.less
+++ b/plugins/Live/stylesheets/live.less
@@ -18,7 +18,7 @@
 }
 
 #visitsLive .country {
-    background: #FFF url(../../CoreHome/images/bullet1.gif) no-repeat scroll 0 0;
+    background: #FFF url(plugins/CoreHome/images/bullet1.gif) no-repeat scroll 0 0;
 }
 
 #visitsLive .referer {
diff --git a/plugins/Live/templates/_totalVisitors.twig b/plugins/Live/templates/_totalVisitors.twig
index 40d2d1eed04be0d4e2e00adef734fd76c21aa135..c1d70c7c2d08ea31640602bad780d10014d5a3a9 100644
--- a/plugins/Live/templates/_totalVisitors.twig
+++ b/plugins/Live/templates/_totalVisitors.twig
@@ -15,14 +15,14 @@
         </thead>
         <tbody>
         <tr class="">
-            <td class="columnodd">{{ 'Live_LastHours'|translate(24) }}</td>
-            <td class="columnodd">{{ visitorsCountToday }}</td>
-            <td class="columnodd">{{ pisToday }}</td>
+            <td class="column columnodd">{{ 'Live_LastHours'|translate(24) }}</td>
+            <td class="column columnodd">{{ visitorsCountToday }}</td>
+            <td class="column columnodd">{{ pisToday }}</td>
         </tr>
         <tr class="">
-            <td class="columnodd">{{ 'Live_LastMinutes'|translate(30) }}</td>
-            <td class="columnodd">{{ visitorsCountHalfHour }}</td>
-            <td class="columnodd">{{ pisHalfhour }}</td>
+            <td class="column columnodd">{{ 'Live_LastMinutes'|translate(30) }}</td>
+            <td class="column columnodd">{{ visitorsCountHalfHour }}</td>
+            <td class="column columnodd">{{ pisHalfhour }}</td>
         </tr>
         </tbody>
     </table>
diff --git a/plugins/Login/stylesheets/login.css b/plugins/Login/stylesheets/login.css
index 93b594e18a8ed29ef54064cdb0e7f4cfdb6ef957..ab472c11a18e4f4e38f4425f3fd2cd76f5e357d8 100644
--- a/plugins/Login/stylesheets/login.css
+++ b/plugins/Login/stylesheets/login.css
@@ -35,8 +35,9 @@
 #logo img {
     border: 0;
     vertical-align: bottom;
-    width: 260px;
     height: auto;
+    width: 240px;
+    margin-right: 20px;
 }
 
 #logo .h1 {
diff --git a/plugins/Login/templates/login.twig b/plugins/Login/templates/login.twig
index aad97579fb7cee0f484531ca1b216f555ea2910f..7b1e37e7f71da6afc17a7f705e5f04960306fd82 100644
--- a/plugins/Login/templates/login.twig
+++ b/plugins/Login/templates/login.twig
@@ -47,11 +47,10 @@
             <a href="http://piwik.org" title="{{ linkTitle }}">
         {% endif %}
         {% if hasSVGLogo %}
-            <img src='{{ logoSVG }}' title="{{ linkTitle }}" alt="Piwik" width="240" style='margin-right: 20px'
-             class="ie-hide"/>
+            <img src='{{ logoSVG }}' title="{{ linkTitle }}" alt="Piwik" class="ie-hide"/>
             <!--[if lt IE 9]>
         {% endif %}
-        <img src='{{ logoLarge }}' title="{{ linkTitle }}" alt="Piwik" width="240" style='margin-right:20px'/>
+        <img src='{{ logoLarge }}' title="{{ linkTitle }}" alt="Piwik" />
         {% if hasSVGLogo %}<![endif]-->{% endif %}
 
         {% if isCustomLogo %}
diff --git a/plugins/MultiSites/javascripts/multiSites.js b/plugins/MultiSites/javascripts/multiSites.js
index 15c8aade973de89d4b8e4a19cbe375d47fe2793e..d9d14e6df5be8fe50a24506084a7364a6bf2b80e 100644
--- a/plugins/MultiSites/javascripts/multiSites.js
+++ b/plugins/MultiSites/javascripts/multiSites.js
@@ -174,7 +174,7 @@ function getSparklineImg(id, column, params) {
     if (token_auth.length) {
         append = '&token_auth=' + token_auth;
     }
-    return '<img class="sparkline" alt="" src="?module=MultiSites&action=getEvolutionGraph&period=' + params['period'] + '&date=' + params['dateSparkline'] + '&evolutionBy=' + params['evolutionBy'] + '&columns=' + column + '&idSite=' + id + '&idsite=' + id + '&viewDataTable=sparkline' + append + '" width="100" height="25" />';
+    return '<img alt="" src="?module=MultiSites&action=getEvolutionGraph&period=' + params['period'] + '&date=' + params['dateSparkline'] + '&evolutionBy=' + params['evolutionBy'] + '&columns=' + column + '&idSite=' + id + '&idsite=' + id + '&viewDataTable=sparkline' + append + '" width="100" height="25" />';
 }
 
 function showPagination(allSites, params) {
diff --git a/plugins/MultiSites/stylesheets/multiSites.less b/plugins/MultiSites/stylesheets/multiSites.less
index 155af00a5ca7ad8bd84b13fa3f4f2e9f3c367f36..6948485a06849f9aeca13e8ca8143fe12c690aaa 100644
--- a/plugins/MultiSites/stylesheets/multiSites.less
+++ b/plugins/MultiSites/stylesheets/multiSites.less
@@ -13,7 +13,7 @@
 }
 
 .indicator {
-    background: url(../images/loading-blue.gif) no-repeat center;
+    background: url(plugins/MultiSites/images/loading-blue.gif) no-repeat center;
     height: 20px;
     width: 60px;
     margin: auto;
@@ -58,14 +58,14 @@
     width: 16px;
     height: 13px;
     display: inline-block;
-    background-image: url(../../Zeitgeist/images/sortdesc.png);
+    background-image: url(plugins/Zeitgeist/images/sortdesc.png);
 }
 
 .multisites_asc {
     width: 16px;
     height: 13px;
     display: inline-block;
-    background-image: url(../../Zeitgeist/images/sortasc.png);
+    background-image: url(plugins/Zeitgeist/images/sortasc.png);
 }
 
 #mt thead {
diff --git a/plugins/PDFReports/templates/index.twig b/plugins/PDFReports/templates/index.twig
index c14614d6a8b293b71848f727d587833186f798ca..0ee69e28e69a6ab9ce398bd7d6a20eae050b8286 100644
--- a/plugins/PDFReports/templates/index.twig
+++ b/plugins/PDFReports/templates/index.twig
@@ -2,6 +2,8 @@
 
 {% block content %}
 
+{% include "@CoreHome/_siteSelectHeader.twig" %}
+
 <div class="top_controls_inner">
     {% include "@CoreHome/_periodSelect.twig" %}
 </div>
diff --git a/plugins/PleineLune/plugin.piwik.json b/plugins/PleineLune/plugin.piwik.json
index 8e3ca2a21b0fbaaac2ed2e5bfbefddf72c221733..a05e6aad75e9e6faa8a769df21d62ab4f2a34fc9 100644
--- a/plugins/PleineLune/plugin.piwik.json
+++ b/plugins/PleineLune/plugin.piwik.json
@@ -1,4 +1,5 @@
 {
+    "name": "PleineLune",
     "description": "A dark theme for Piwik, ideal to view your analytics reports before sunrise!",
     "theme": true
 }
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/_dataTable.less b/plugins/PleineLune/stylesheets/_dataTable.less
new file mode 100644
index 0000000000000000000000000000000000000000..28b4ee948cb177228735847d11721655c4cd0ad1
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/_dataTable.less
@@ -0,0 +1,186 @@
+/* Header */
+table.dataTable th,
+table.dataTable th.columnSorted {
+  background: @theme-color-background-smallContrast;
+  color: @theme-color-text-base;
+  border-left: 0;
+  vertical-align: bottom;
+}
+
+.sortIconContainer {
+  float: right;
+  margin-right: -20px;
+}
+
+.sortIconContainer:after {
+  content: " \25BC";
+  display: inline;
+}
+
+.sortIconContainerAsc:after {
+  content: " \25B2";
+}
+
+.sortIconContainer > img {
+  display: none;
+}
+
+/* Cells */
+table.dataTable td,
+table.dataTable td a {
+  color: @theme-color-text-base;
+}
+
+table.dataTable td,
+table.dataTable td.label,
+table.dataTable td.column {
+  background-color: @theme-color-background-base;
+}
+
+table.dataTable td.label,
+table.dataTable td.column {
+  background-color: @theme-color-background-base;
+  border: 1px solid @theme-color-background-smallContrast;
+}
+
+table.dataTable td.column {
+  border-width: 0 0 1px 1px;
+}
+
+table.dataTable td.label {
+  border-width: 0 0 1px 0;
+  background-image: none;
+}
+
+/* SubTable */
+table.dataTable tr:hover > td.cellSubDataTable {
+  background: transparent;
+}
+
+table.subDataTable thead th {
+  border: 1px solid @theme-color-background-smallContrast;
+}
+
+table.subDataTable thead th {
+  border-width: 0 0 1px 1px;
+}
+
+/* Hover state */
+table.dataTable tr:hover > td,
+table.dataTable tr:hover > td .dataTableRowActions,
+table.dataTable tr.subDataTable:hover > td,
+table.dataTable tr.subDataTable:hover > td .dataTableRowActions {
+  background: transparent;
+}
+
+/* Focus widget */
+.ui-dialog-content,
+.widget:hover,
+.cellSubDataTable:hover {
+
+  table.dataTable td,
+  table.dataTable td a {
+    color: @theme-color-text-lightFocus;
+  }
+
+  table.dataTable th,
+  table.dataTable tr:hover > td,
+  table.dataTable tr:hover > td > a {
+    color: @theme-color-text-focus;
+  }
+
+  table.dataTable td.label,
+  table.dataTable td.column {
+    border-bottom-color: #404040;
+  }
+}
+
+/* Footer */
+.dataTableFooterIcons {
+  border-top: 1px solid @theme-color-background-contrast;
+}
+
+.dataTableNext,
+.dataTablePrevious {
+  color: @theme-color-text-link;
+}
+
+.dataTableNext:hover,
+.dataTablePrevious:hover {
+  text-decoration: underline;
+  color: @theme-color-text-focus;
+}
+
+.loadingPiwik {
+  color: @theme-color-text-base;
+}
+
+/* LimitSelection */
+.limitSelection > div {
+  border-color: @theme-color-background-smallContrast;
+  border-radius: 0;
+}
+
+.limitSelection > div > span {
+  color: @theme-color-text-active;
+}
+
+.limitSelection > ul > li {
+  background: @theme-color-background-base;
+  border-color: @theme-color-background-smallContrast;
+}
+
+.limitSelection > ul > li.last {
+  background: @theme-color-background-base;
+  border-color: @theme-color-background-smallContrast;
+}
+
+.limitSelection > ul > li:hover {
+  background-color: @theme-color-background-smallContrast;
+}
+
+.limitSelection > ul > li > span {
+  color: @theme-color-text-link;
+}
+
+.limitSelection > ul > li:hover > span {
+  color: @theme-color-text-focus;
+}
+
+/* TableConfiguration */
+.tableConfiguration ul {
+  background-color: @theme-color-background-base;
+}
+
+.tableConfiguration ul li {
+  background-color: @theme-color-background-base;
+  border-color: @theme-color-background-smallContrast;
+}
+
+.tableConfiguration ul li.firstDummy,
+.tableConfiguration ul li.last {
+  border-radius: 0;
+}
+
+.tableConfiguration div.configItem {
+  color: @theme-color-text-base;
+}
+
+.tableConfiguration div.configItem:hover {
+  background-color: @theme-color-background-smallContrast;
+}
+
+.tableConfiguration div.configItem span.action {
+  color: @theme-color-text-link;
+}
+
+.tableConfiguration div.configItem:hover span.action {
+  text-decoration: underline;
+  color: @theme-color-text-focus;
+}
+
+/* MultiSites */
+#mt thead *:first-child,
+#mt thead *:first-child {
+  border-radius: 0;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/_general.less b/plugins/PleineLune/stylesheets/_general.less
index d39b36d4b66b1c5bd3e90a6b1e6d7714af532cd7..089f49f0dc8f5b182679e0ee76c8d4f9682db286 100644
--- a/plugins/PleineLune/stylesheets/_general.less
+++ b/plugins/PleineLune/stylesheets/_general.less
@@ -19,4 +19,11 @@ a:hover,
 a:focus,
 a:active {
   color: @theme-color-text-focus;
+}
+
+select,
+[type="text"] {
+  background: @theme-color-background-lighter;
+  border: 0 none;
+  color: @theme-color-background-smallContrast;
 }
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/_jqplotColors.less b/plugins/PleineLune/stylesheets/_jqplotColors.less
new file mode 100644
index 0000000000000000000000000000000000000000..ddb9ad3425f9ccbf304a32efda3cd674d64f7fca
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/_jqplotColors.less
@@ -0,0 +1,86 @@
+// evolution graph colors
+.evolution-graph-colors[data-name=grid-background] {
+  color: @theme-color-background-base;
+}
+
+.evolution-graph-colors[data-name=grid-border] {
+  color: @theme-color-background-smallContrast;
+}
+
+.evolution-graph-colors[data-name=series1] {
+  color: @theme-color-highlight1;
+}
+
+.evolution-graph-colors[data-name=series2] {
+  color: @theme-color-highlight2;
+}
+
+.evolution-graph-colors[data-name=series3] {
+  color: @theme-color-highlight3;
+}
+
+.evolution-graph-colors[data-name=ticks] {
+  color: #ccc;
+}
+
+.evolution-graph-colors[data-name=single-metric-label] {
+  color: #666;
+}
+
+// bar graph colors
+.bar-graph-colors[data-name=grid-background] {
+  color: @theme-color-background-base;
+}
+
+.bar-graph-colors[data-name=grid-border] {
+  color: #f00;
+}
+
+.bar-graph-colors[data-name=series1] {
+  color: @theme-color-highlight1;
+}
+
+.bar-graph-colors[data-name=series2] {
+  color: @theme-color-highlight2;
+}
+
+.bar-graph-colors[data-name=series3] {
+  color: @theme-color-highlight3;
+}
+
+.bar-graph-colors[data-name=ticks] {
+  color: #ccc;
+}
+
+.bar-graph-colors[data-name=single-metric-label] {
+  color: #666;
+}
+
+// pie graph colors
+.pie-graph-colors[data-name=grid-background] {
+  color: @theme-color-background-base;
+}
+
+.pie-graph-colors[data-name=grid-border] {
+  color: @theme-color-background-smallContrast;
+}
+
+.pie-graph-colors[data-name=series1] {
+  color: @theme-color-highlight1;
+}
+
+.pie-graph-colors[data-name=series2] {
+  color: @theme-color-highlight2;
+}
+
+.pie-graph-colors[data-name=series3] {
+  color: @theme-color-highlight3;
+}
+
+.pie-graph-colors[data-name=ticks] {
+  color: #ccc;
+}
+
+.pie-graph-colors[data-name=single-metric-label] {
+  color: #666;
+}
diff --git a/plugins/PleineLune/stylesheets/_layout.less b/plugins/PleineLune/stylesheets/_layout.less
index f43d33d1a7328fd299484c97d1c9ba5ae238e9cf..637fd307f6f138a44621c4cbb9b3f72cd4dc431a 100644
--- a/plugins/PleineLune/stylesheets/_layout.less
+++ b/plugins/PleineLune/stylesheets/_layout.less
@@ -26,4 +26,63 @@
 
 #topRightBar .topBarElem {
    margin-bottom: 5px;
-}
\ No newline at end of file
+}
+
+.topBarElemActive {
+  color: @theme-color-text-active;
+}
+
+.topBarElemActive > b {
+  font-weight: normal;
+}
+
+#languageSelect {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast !important;
+}
+
+#languageSelect a:hover {
+  background: @theme-color-background-smallContrast !important;
+  border: 0;
+  border-radius: 0;
+  color:  @theme-color-text-focus !important;
+}
+
+
+/* Logo */
+#logo {
+  opacity: 0.5;
+}
+
+#header:hover #logo {
+  opacity: 1;
+}
+
+@media all and (max-width: 949px) {
+  #logo {
+    float: none;
+    display: block;
+    text-align: center
+  }
+
+  #topBars {
+    float: none;
+    display: table;
+    width: 100%;
+  }
+
+  #topRightBar,
+  #topLeftBar {
+    text-align: center;
+  }
+}
+
+@media all and (min-width: 1250px) {
+  #logo img {
+    height: 80px;
+  }
+
+  #header:after {
+    clear: right;
+  }
+}
diff --git a/plugins/PleineLune/stylesheets/_menuDashboard.less b/plugins/PleineLune/stylesheets/_menuDashboard.less
index 47b0aeb9551f60bfbe14e3a41024d506422230ef..060995b2c98d2f5b8b89aaf8604af9af3e7f78e5 100644
--- a/plugins/PleineLune/stylesheets/_menuDashboard.less
+++ b/plugins/PleineLune/stylesheets/_menuDashboard.less
@@ -1,45 +1,65 @@
-
 /* FIRST LEVEL */
-.nav_tab> li {
-  background: transparent;
+.nav_tab {
+  margin-left: auto;
+  margin-right: auto;
+}
+
+.nav_tab > li {
+  background: @theme-color-background-base;
   border-color: @theme-color-box-border;
   margin-right: 5px;
 }
 
-.nav_tab> li:hover,
-.nav_tab> li.sfHover{
+.nav_tab > li:hover,
+.nav_tab > li.sfHover {
   background-color: @theme-color-box-active;
 }
 
-.nav_tab> li.sfHover > a,
-.nav_tab> li.sfActive.sfHover > a {
+.nav_tab > li > a,
+.nav_tab > li.sfActive > a {
+  color: @theme-color-text-base;
+}
+
+.nav_tab > li:hover > a,
+.nav_tab > li.sfHover > a,
+.nav_tab > li.sfActive.sfHover > a {
   border-bottom: 1px solid @theme-color-box-active;
+  color: @theme-color-text-active;
 }
 
-.nav_tab> li > a,
-.nav_tab> li.sfActive > a {
-  color: @theme-color-text-base;
+.nav_tab > li:hover > a,
+.nav_tab > li.sfHover > a,
+.nav_tab > li.sfActive.sfHover > a {
 }
 
-.nav_tab> li.sfHover > a,
-.nav_tab> li.sfActive.sfHover > a {
-  color: @theme-color-text-active;
+.nav_tab > li:hover > a {
+  text-decoration: none;
+}
+
+.nav_tab > li > a:hover {
+  text-decoration: underline;
 }
 
 /* SECOND LEVEL */
 .nav_sep {
   border-color: @theme-color-box-border;
+  border-width: 1px 0;
+  border-radius: 0;
   background: @theme-color-box-active;
+  padding: 0 10px;
+  margin-left: -10px;
+  width: 100%;
 }
 
-.nav_tab> li li > a {
+.nav_tab > li li > a {
   color: @theme-color-text-base;
 }
 
-.nav_tab> li li:hover > a,
-.nav_tab> li li:focus > a,
-.nav_tab> li li:active > a {
-  color: @theme-color-text-focus;
+.nav_tab > li li:hover > a,
+.nav_tab > li li.sfHover > a,
+.nav_tab > li li:focus > a,
+.nav_tab > li li:active > a {
+  color: @theme-color-text-active;
 }
 
 /* UNDER THE MENU */
diff --git a/plugins/PleineLune/stylesheets/_sparklineColors.less b/plugins/PleineLune/stylesheets/_sparklineColors.less
new file mode 100644
index 0000000000000000000000000000000000000000..a8f978c861eb8c271f5b65eacc6fcad904235f00
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/_sparklineColors.less
@@ -0,0 +1,14 @@
+// sparkline styles
+div.sparkline,
+div.sparkline:hover {
+    border-bottom: 0;
+}
+
+// sparkline colors
+.sparkline-colors[data-name=backgroundColor] {
+    color: @theme-color-background-base;
+}
+
+.sparkline-colors[data-name=lineColor] {
+    color: @theme-color-highlight1;
+}
diff --git a/plugins/PleineLune/stylesheets/_transitionColors.less b/plugins/PleineLune/stylesheets/_transitionColors.less
new file mode 100644
index 0000000000000000000000000000000000000000..f8bd9543100dc553afc1ae70eb36a0b51fecfd0f
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/_transitionColors.less
@@ -0,0 +1,46 @@
+.transition-entries[data-name=light],
+.transition-entries[data-name=light-highlighted],
+.transition-exits[data-name=light],
+.transition-exits[data-name=light-highlighted],
+.transition-entries[data-name=dark],
+.transition-exits[data-name=dark],
+.transition-background[data-name=light],
+.transition-background[data-name=light-highlighted],
+.transition-background[data-name=light],
+.transition-background[data-name=light-highlighted],
+.transition-background[data-name=dark],
+.transition-background[data-name=dark] {
+    color: @theme-color-background-contrast;
+}
+
+.transition-entries[data-name=dark-highlighted],
+.transition-exits[data-name=dark-highlighted],
+.transition-background[data-name=dark-highlighted],
+.transition-background[data-name=dark-highlighted] {
+  color: @theme-color-background-smallContrast;
+}
+
+// closed group gradient colors
+.transition-closed-group[data-name=dark],
+.transition-closed-group[data-name=light],
+.transition-closed-group[data-name=light-highlighted] {
+    color: @theme-color-background-contrast;
+}
+
+.transition-closed-group[data-name=dark-highlighted] {
+  color: @theme-color-text-active;
+}
+
+// items gradient colors
+.transition-items[data-name=light],
+.transition-items[data-name=dark],
+.transition-others[data-name=light],
+.transition-others[data-name=dark] {
+      color: @theme-color-background-lighter;
+}
+
+// loop gradient colors
+.transition-loops[data-name=light],
+.transition-loops[data-name=dark] {
+  color: @theme-color-background-smallContrast;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/_ui.less b/plugins/PleineLune/stylesheets/_ui.less
new file mode 100644
index 0000000000000000000000000000000000000000..50f4db575e25f7b8d8010ae47086758ce74ec1c1
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/_ui.less
@@ -0,0 +1,23 @@
+/* Dialog */
+.ui-widget-overlay {
+  opacity: 1;
+}
+
+.ui-dialog {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+/* Autocomplete */
+.ui-autocomplete {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+.ui-menu .ui-menu-item a {
+  color: @theme-color-text-link;
+}
+
+.ui-menu .ui-menu-item a.ui-state-focus {
+  background: @theme-color-background-smallContrast;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/_widget.less b/plugins/PleineLune/stylesheets/_widget.less
new file mode 100644
index 0000000000000000000000000000000000000000..c7db32550d516bf806bbc9dc6412dfe0f00657fb
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/_widget.less
@@ -0,0 +1,19 @@
+.widget {
+  border: 1px solid @theme-color-background-contrast;
+  border-radius: 0;
+  background: @theme-color-background-base;
+}
+
+.widgetTop {
+  background: @theme-color-background-smallContrast;
+}
+
+.widgetName {
+  text-shadow: none;
+  color: @theme-color-text-base;
+}
+
+.ui-dialog-content .widgetName,
+.widget:hover .widgetName {
+  color: @theme-color-text-lightFocus;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/controls/_headerMessage.less b/plugins/PleineLune/stylesheets/controls/_headerMessage.less
new file mode 100644
index 0000000000000000000000000000000000000000..a23fb8a80db6357a626c6c5b846fc086177ee1d2
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/controls/_headerMessage.less
@@ -0,0 +1,20 @@
+#header_message {
+  color: @theme-color-text-base;
+  border-radius: 0;
+  padding-left: 8px;
+  right: 0;
+}
+
+#header_message,
+#header_message:hover {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+.header_info a {
+  color: @theme-color-text-link;
+}
+
+.header_info a:hover {
+  color: @theme-color-text-focus;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/controls/_periodSelect.less b/plugins/PleineLune/stylesheets/controls/_periodSelect.less
new file mode 100644
index 0000000000000000000000000000000000000000..60a89dffe52a32e3adf482475a04df7e40097dda
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/controls/_periodSelect.less
@@ -0,0 +1,34 @@
+#periodString {
+  color: @theme-color-text-base;
+  border-radius: 0;
+}
+
+#periodString,
+#periodString:hover {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+#periodString #date {
+  color: @theme-color-text-active;
+}
+
+#periodString #date:hover {
+  color: @theme-color-text-focus;
+}
+
+#periodString b {
+  color: inherit;
+}
+
+#periodString .calendar-icon {
+  opacity: 0.7;
+}
+
+#periodString label.selected-period-label {
+  color: @theme-color-text-active;
+}
+
+#periodString label:hover {
+  color: @theme-color-text-focus;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/controls/_segmentSelect.less b/plugins/PleineLune/stylesheets/controls/_segmentSelect.less
new file mode 100644
index 0000000000000000000000000000000000000000..3bb72b90de97ae9dd0035376a77ea834b4cfb95c
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/controls/_segmentSelect.less
@@ -0,0 +1,137 @@
+
+#segmentEditorPanel {
+  color: @theme-color-text-base;
+  border-radius: 0;
+}
+
+#segmentEditorPanel,
+#segmentEditorPanel:hover {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+#segmentEditorPanel .segmentationTitle {
+  color: @theme-color-text-active;
+}
+
+#segmentEditorPanel .segmentationTitle:hover {
+  color: @theme-color-text-focus;
+}
+
+#segmentEditorPanel .submenu ul {
+  font-size: 13px;
+}
+
+#segmentEditorPanel .submenu ul > li > span {
+  color: @theme-color-text-link;
+  font-weight: normal;
+}
+
+#segmentEditorPanel .submenu ul > li:hover {
+  background: none;
+  border: 0;
+  margin: 3px 0 0;
+}
+
+#segmentEditorPanel .submenu ul > li:hover > span {
+  color: @theme-color-text-focus;
+  text-decoration: underline;
+}
+
+#segmentEditorPanel .add_new_segment {
+  width: auto;
+  text-align: center;
+}
+
+/* Form to create a segment */
+.segment-element {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+.segment-element .segment-nav div > ul > li a {
+  text-shadow: none;
+  color: @theme-color-text-link;
+}
+
+.segment-element .segment-nav div > ul > li li:hover {
+	border: 0;
+	padding: 1px;
+}
+
+.segment-element .segment-nav div > ul > li li:hover a {
+	background: @theme-color-background-smallContrast;
+	border: 0;
+}
+
+.segment-element .custom_select_search {
+	border-color: @theme-color-background-contrast;
+}
+
+.segment-element .custom_select_search input[type="text"],
+.segment-element .segment-top {
+	color: @theme-color-text-base;
+}
+
+.segment-element .segment-content h3 {
+	text-shadow: none;
+	color: @theme-color-text-base;
+}
+
+.segment-element .segment-content .segment-add-row,
+.segment-element .segment-content .segment-rows {
+	background: @theme-color-background-smallContrast;
+	border-color: @theme-color-background-lighter;
+	box-shadow: none;
+}
+
+.segment-element .segment-content .segment-row,
+.segment-element .segment-content .segment-or,
+.segment-element .segment-content .segment-and,
+.segment-element .segment-content .segment-add-row,
+.segment-element .segment-content .segment-add-or {
+	background-color: @theme-color-background-contrast;
+  color: @theme-color-background-smallContrast;
+  text-shadow: none;
+}
+
+.segment-element .segment-content .segment-and:before,
+.segment-element .segment-content .segment-and:after {
+	border-color: @theme-color-background-lighter;
+	background: @theme-color-background-base;
+}
+.segment-element .segment-content .segment-or:before,
+.segment-element .segment-content .segment-or:after {
+	bottom: 0;
+	top: 0;
+	border: 0;
+	background: @theme-color-background-smallContrast;
+}
+
+.segment-element .segment-content .segment-add-row > div,
+.segment-element .segment-content .segment-add-or > div {
+	border-color: @theme-color-background-smallContrast;
+}
+
+.segment-element .segment-content .segment-row-inputs .segment-input {
+	border: 0;
+}
+
+.segment-element .segment-content .segment-input select,
+.segment-element .segment-content .segment-input input {
+  color: @theme-color-background-smallContrast;
+}
+
+.segment-element .segment-content .segment-add-row > div a span,
+.segment-element .segment-content .segment-add-or > div a span {
+  color: @theme-color-text-link;
+}
+
+.segment-element .segment-footer {
+	background: @theme-color-background-smallContrast;
+  border-color: @theme-color-background-contrast;
+}
+
+.segment-element .segment-footer button {
+	text-shadow: none;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/controls/_siteSelect.less b/plugins/PleineLune/stylesheets/controls/_siteSelect.less
new file mode 100644
index 0000000000000000000000000000000000000000..b203ca7d3f455a7e6a0991dfa5ce31fca5279b63
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/controls/_siteSelect.less
@@ -0,0 +1,59 @@
+.top_bar_sites_selector > label {
+  display: none;
+}
+
+.top_bar_sites_selector > .sites_autocomplete {
+  padding: 0;
+}
+
+.sites_autocomplete .custom_select_main_link {
+  background: none;
+  padding: 0;
+  font-size: 18px;
+  line-height: 1;
+  color: @theme-color-text-base;
+}
+
+.admin .sites_autocomplete .custom_select_main_link,
+.sites_autocomplete:hover .custom_select_main_link {
+  color: @theme-color-text-active;
+}
+
+.sites_autocomplete .custom_select_main_link:after {
+  content: " \25BC";
+  display: inline;
+  font-size: 0.8em;
+}
+
+.sites_autocomplete .custom_select {
+  background: @theme-color-background-base;
+  border-color: @theme-color-background-contrast;
+  border-radius: 4px 4px 0 0;
+  font-size: 14px;
+  min-height: 25px;
+  padding: 8px 27px 0;
+}
+
+.sites_autocomplete .custom_select_ul_list li a,
+.sites_autocomplete .custom_select_all a {
+  color: @theme-color-text-link;
+}
+
+.sites_autocomplete .custom_select_ul_list li a:hover,
+.sites_autocomplete .custom_select_all a:hover {
+  background: @theme-color-background-smallContrast;
+  color: @theme-color-text-focus;
+}
+
+
+@media all and (max-width: 949px) {
+  .top_bar_sites_selector {
+    float: none;
+    text-align: center;
+  }
+  .sites_autocomplete .custom_select {
+    padding-left: 8px;
+    padding-right: 8px;
+    border-radius: 0;
+  }
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/controls/_widgetSelect.less b/plugins/PleineLune/stylesheets/controls/_widgetSelect.less
new file mode 100644
index 0000000000000000000000000000000000000000..8d9baad15a648ce72d737aa182e388ead90d22ef
--- /dev/null
+++ b/plugins/PleineLune/stylesheets/controls/_widgetSelect.less
@@ -0,0 +1,44 @@
+#dashboardSettings {
+  color: @theme-color-text-base;
+  border-radius: 0;
+}
+
+#dashboardSettings,
+#dashboardSettings:hover {
+  background: @theme-color-background-base;
+  border: 1px solid @theme-color-background-contrast;
+}
+
+#dashboardSettings > span {
+  color: @theme-color-text-active;
+}
+
+#dashboardSettings > span:hover {
+  color: @theme-color-text-focus;
+}
+
+#dashboardSettings > ul.submenu > li {
+  color: @theme-color-text-link;
+}
+
+#dashboardSettings > ul.submenu > li:hover {
+  color: @theme-color-text-focus;
+}
+
+#dashboardSettings .submenu ul li,
+ul.widgetpreview-widgetlist, ul.widgetpreview-categorylist {
+  color: @theme-color-text-base;
+}
+
+#dashboardSettings .submenu ul li:hover,
+#dashboardSettings .submenu ul li.widgetpreview-choosen,
+#dashboardSettings .widgetpreview-widgetlist li:hover,
+#dashboardSettings .widgetpreview-widgetlist li.widgetpreview-choosen, {
+  color: @theme-color-text-focus;
+  background: @theme-color-background-smallContrast;
+}
+
+.widgetpreview-base li.widgetpreview-unavailable {
+  color: @theme-color-text-base;
+  text-decoration: line-through;
+}
\ No newline at end of file
diff --git a/plugins/PleineLune/stylesheets/theme.less b/plugins/PleineLune/stylesheets/theme.less
index 0e754e96e089370f840ac26fe8b78bb0b96fe56f..655f9c6c57d7a3682c57eb24adf6463dd098f61c 100644
--- a/plugins/PleineLune/stylesheets/theme.less
+++ b/plugins/PleineLune/stylesheets/theme.less
@@ -1,11 +1,32 @@
-@theme-color-text-link: #6C9C50;
+
+@theme-color-background-base: #141414;
+@theme-color-background-contrast: #5F5A60;
+@theme-color-background-smallContrast: #202020;
+@theme-color-background-lighter: #888;
+@theme-color-highlight1: #766F31;
+@theme-color-highlight2: #6C9C50;
+@theme-color-highlight3: #67E750;
+
+@theme-color-text-link: @theme-color-highlight2;
 @theme-color-text-base: #59867D;
-@theme-color-text-focus: #67E750;
-@theme-color-text-active: #766F31;
-@theme-color-box-border: #5F5A60; //#777778;
-@theme-color-box-active: #141414;
+@theme-color-text-lightFocus: #AAA;
+@theme-color-text-focus: @theme-color-highlight3;
+@theme-color-text-active: @theme-color-highlight1;
+@theme-color-box-border: @theme-color-background-contrast;
+@theme-color-box-active: @theme-color-background-smallContrast;
 
 @import "_general.less";
 @import "_layout.less";
+@import "controls/_periodSelect.less";
+@import "controls/_segmentSelect.less";
+@import "controls/_widgetSelect.less";
+@import "controls/_headerMessage.less";
+@import "controls/_siteSelect.less";
 @import "_menuDashboard.less";
-@import "_menuAdmin.less";
\ No newline at end of file
+@import "_menuAdmin.less";
+@import "_widget.less";
+@import "_dataTable.less";
+@import "_sparklineColors.less";
+@import "_jqplotColors.less";
+@import "_ui.less";
+@import "../../PleineLune/stylesheets/_transitionColors.less";
\ No newline at end of file
diff --git a/plugins/SegmentEditor/javascripts/Segmentation.js b/plugins/SegmentEditor/javascripts/Segmentation.js
index 5a4f9cb8dc526f879278b43b067c55f8e8ce218a..1cc007502407aefc34ae430a2c022b408d089104 100644
--- a/plugins/SegmentEditor/javascripts/Segmentation.js
+++ b/plugins/SegmentEditor/javascripts/Segmentation.js
@@ -542,7 +542,7 @@ Segmentation = (function($) {
                 var oldName = $(e.currentTarget).parents("h3").find("span").text();
                 $(e.currentTarget).parents("h3").find("span").hide();
                 $(e.currentTarget).hide();
-                $(e.currentTarget).before('<input id="edit_segment_name"/>');
+                $(e.currentTarget).before('<input id="edit_segment_name" type="text"/>');
                 $(e.currentTarget).siblings("#edit_segment_name").focus().val(oldName);
             });
 
@@ -978,7 +978,7 @@ Segmentation = (function($) {
                 $("#"+self.targetId).append(html);
                 self.content = $("#"+self.targetId).find(".segmentationContainer");
             }
-            setLeftMargin('.segmentationContainer');
+            setLeftMargin('#segmentEditorPanel');
 
             // assign content to object attribute to make it easil accesible through all widget methods
             bindListEvents();
diff --git a/plugins/SegmentEditor/stylesheets/scroll.less b/plugins/SegmentEditor/stylesheets/scroll.less
index 508adb4c7abffdac6b09ce9a3ebd238b37435f7f..23c0402e15d98c55488068df25be22d140259ce6 100644
--- a/plugins/SegmentEditor/stylesheets/scroll.less
+++ b/plugins/SegmentEditor/stylesheets/scroll.less
@@ -54,7 +54,7 @@
 
 .jspTrack
 {
-    background: url("../images/slide.png") transparent no-repeat 7px;
+    background: url("plugins/SegmentEditor/images/slide.png") transparent no-repeat 7px;
     position: relative;
     background-size: 20% 100%;
     /*height: 447px!important;*/
@@ -62,7 +62,7 @@
 
 .jspDrag
 {
-    background: url("../images/scroller.png") transparent no-repeat;
+    background: url("plugins/SegmentEditor/images/scroller.png") transparent no-repeat;
     background-size: 100% 100%;
     width: 17px;
     position: relative;
@@ -86,10 +86,10 @@
     cursor: pointer;
 }
 .jspArrowDown{
-    background: url("../images/down_arrow.png") transparent no-repeat;
+    background: url("plugins/SegmentEditor/images/down_arrow.png") transparent no-repeat;
 }
 .jspArrowUp{
-    background: url("../images/up_arrow.png") transparent no-repeat;
+    background: url("plugins/SegmentEditor/images/up_arrow.png") transparent no-repeat;
 }
 
 .jspVerticalBar .jspArrow
diff --git a/plugins/SegmentEditor/stylesheets/segmentation.less b/plugins/SegmentEditor/stylesheets/segmentation.less
index d2ec307deb6488874dc990547d2a1bb7d056f7d4..db6f0e02ec4e10f3d607593effbfcf23b22c2519 100644
--- a/plugins/SegmentEditor/stylesheets/segmentation.less
+++ b/plugins/SegmentEditor/stylesheets/segmentation.less
@@ -87,7 +87,7 @@ div.scrollable {
 .segment-element .custom_select_search {
     width: 146px;
     height: 21px;
-    background: url(../images/bg-segment-search.png) 0 10px no-repeat;
+    background: url(plugins/SegmentEditor/images/bg-segment-search.png) 0 10px no-repeat;
     padding: 10px 0 0 0;
     margin: 10px 0 10px 15px;
     border-top: 1px solid #dcdacf;
@@ -109,7 +109,7 @@ div.scrollable {
     height: 13px;
     right: 5px;
     top: 14px;
-    background: url(../images/reset_search.png);
+    background: url(plugins/SegmentEditor/images/reset_search.png);
 }
 
 .segment-element .segment-nav {
@@ -129,7 +129,7 @@ div.scrollable {
 
 .segment-element .segment-nav h4.visits {
     padding-left: 28px;
-    background: url(../images/icon-users.png) 0 0 no-repeat;
+    background: url(plugins/SegmentEditor/images/icon-users.png) 0 0 no-repeat;
 }
 
 .segment-element .segment-nav h4 a {
@@ -141,41 +141,40 @@ div.scrollable {
     padding: 0 0 0 15px;
 }
 
-.segment-element .segment-nav div > ul  > li {
+.segment-element .segment-nav div > ul > li {
     padding: 2px 0;
     line-height: 14px;
 }
 
-.segment-element .segment-nav div > ul  > li li {
+.segment-element .segment-nav div > ul > li li {
     padding: 1px;
     border-radius: 3px 3px 3px 3px;
 }
 
-.segment-element .segment-nav div > ul  > li li:hover {
+.segment-element .segment-nav div > ul > li li:hover {
     padding: 0;
     border: 1px solid #cfccbd;
     border-bottom: 1px solid #7c7a72;
-    background-color: #e9e7e3;
 }
 
-.segment-element .segment-nav div > ul  > li li:hover a {
+.segment-element .segment-nav div > ul > li li:hover a {
     cursor: move;
     padding: 1px 0 2px 8px;
     border-top: 1px solid #fff;
-    background: #eae8e3 url(../images/segment-move.png) 100% 50% no-repeat;
+    background: #eae8e3 url(plugins/SegmentEditor/images/segment-move.png) 100% 50% no-repeat;
 }
 
-.segment-element .segment-nav div > ul  > li li a {
+.segment-element .segment-nav div > ul > li li a {
     padding: 2px 0 2px 8px;
     font-weight: normal;
     display: block;
 }
 
-.segment-element .segment-nav div > ul  > li ul {
+.segment-element .segment-nav div > ul > li ul {
     margin: 2px 0 -3px 10px;
 }
 
-.segment-element .segment-nav div > ul  > li a {
+.segment-element .segment-nav div > ul > li a {
     color: #5d5342;
     font: bold 11px Arial;
     text-decoration: none;
@@ -219,21 +218,21 @@ div.scrollable {
     position: relative;
 }
 
-.segment-element .segment-content .segment-add-row  > div,
-.segment-element .segment-content .segment-add-or  > div {
+.segment-element .segment-content .segment-add-row > div,
+.segment-element .segment-content .segment-add-or > div {
     border-radius: 4px;
     border: 2px dashed #fff;
     padding: 10px 0;
 }
 
-.segment-element .segment-content .segment-add-row  > div a,
-.segment-element .segment-content .segment-add-or  > div a {
+.segment-element .segment-content .segment-add-row > div a,
+.segment-element .segment-content .segment-add-or > div a {
     color: #b9b9b9;
     text-decoration: none;
 }
 
-.segment-element .segment-content .segment-add-row  > div a span,
-.segment-element .segment-content .segment-add-or  > div a span {
+.segment-element .segment-content .segment-add-row > div a span,
+.segment-element .segment-content .segment-add-or > div a span {
     color: #255792;
 }
 
@@ -254,7 +253,7 @@ div.scrollable {
     border-radius: 3px 3px 3px 3px;
 }
 
-.segment-element .segment-content .segment-add-or  > div {
+.segment-element .segment-content .segment-add-or > div {
     border: 2px dashed #EFEFEB;
 }
 
@@ -274,7 +273,7 @@ div.scrollable {
     position: absolute;
     width: 15px;
     height: 15px;
-    background: url(../images/segment-close.png) 0 0 no-repeat;
+    background: url(plugins/SegmentEditor/images/segment-close.png) 0 0 no-repeat;
 }
 
 .segment-element .segment-content .segment-row .segment-loading {
@@ -284,7 +283,7 @@ div.scrollable {
     position: absolute;
     width: 15px;
     height: 15px;
-    background: url(../../MultiSites/images/loading-blue.gif) 0 0 no-repeat;
+    background: url(plugins/MultiSites/images/loading-blue.gif) 0 0 no-repeat;
 }
 
 .segment-element .segment-content .segment-or {
@@ -337,7 +336,7 @@ div.scrollable {
 .segment-element .segment-content .segment-and:after {
     content: '';
     position: absolute;
-    background: url(../images/bg-inverted-corners.png);
+    background: url(plugins/SegmentEditor/images/bg-inverted-corners.png);
     border: 1px solid #a9a399;
     width: 10px;
     top: 0px;
@@ -397,7 +396,7 @@ div.scrollable {
 
 .segment-element .segment-top a.dropdown {
     padding: 0 17px 0 0;
-    background: url(../../Zeitgeist/images/sort_subtable_desc.png) 100% -2px no-repeat;
+    background: url(plugins/Zeitgeist/images/sort_subtable_desc.png) 100% -2px no-repeat;
 }
 
 .segment-element .segment-footer {
@@ -437,7 +436,7 @@ div.scrollable {
     margin: 0 0 0 15px;
 }
 
-.segmentationContainer {
+#segmentEditorPanel {
     position: absolute;
     z-index: 2;
     background: #f7f7f7;
@@ -446,14 +445,15 @@ div.scrollable {
     border-radius: 4px;
     color: #444;
     font-size: 14px;
+  overflow: hidden;
 }
 
-.segmentationContainer:hover {
+#segmentEditorPanel:hover {
     background: #f1f0eb;
     border-color: #a9a399;
 }
 
-.segmentationContainer  > span > b {
+.segmentationContainer > span > b {
     color: #255792;
 }
 
@@ -496,7 +496,7 @@ div.scrollable {
     float: left;
 }
 
-.segmentationContainer ul.submenu  > li span.editSegment {
+.segmentationContainer ul.submenu > li span.editSegment {
     display: block;
     float: right;
     width: 45px;
@@ -515,7 +515,7 @@ div.scrollable {
 
 .segmentationContainer.visible .add_new_segment {
     display: block;
-    background: url("../images/dashboard_h_bg_hover.png") repeat-x scroll 0 0 #847b6d;
+    background: url("plugins/SegmentEditor/images/dashboard_h_bg_hover.png") repeat-x scroll 0 0 #847b6d;
     border: 0 none;
     border-radius: 4px 4px 4px 4px;
     clear: both;
@@ -527,14 +527,14 @@ div.scrollable {
     width: 130px;
 }
 
-.segmentationContainer  > ul.submenu > li {
+.segmentationContainer > ul.submenu > li {
     padding: 5px 0;
     clear: both;
     cursor: pointer;
 }
 
 span.segmentationTitle {
-    background: url(../../Zeitgeist/images/sort_subtable_desc.png) right center no-repeat !important;
+    background: url(plugins/Zeitgeist/images/sort_subtable_desc.png) right center no-repeat !important;
     padding-right: 20px !important;
     width: 160px !important;
     display: block !important;
@@ -558,7 +558,7 @@ body > a.ddmetric {
     display: block;
     cursor: move;
     padding: 1px 0 2px 18px;
-    background: #eae8e3 url(../images/segment-move.png) 100% 50% no-repeat;
+    background: #eae8e3 url(plugins/SegmentEditor/images/segment-move.png) 100% 50% no-repeat;
     color: #5d5342;
     font: normal 11px Arial;
     text-decoration: none;
@@ -616,7 +616,7 @@ a.metric_category {
 }
 
 #available_segments a.dropdown {
-    background: url("../../Zeitgeist/images/sort_subtable_desc.png") no-repeat scroll 100% -2px transparent !important;
+    background: url("plugins/Zeitgeist/images/sort_subtable_desc.png") no-repeat scroll 100% -2px transparent !important;
     padding: 0 17px 0 0 !important;
 }
 
diff --git a/plugins/SegmentEditor/templates/getSelector.twig b/plugins/SegmentEditor/templates/getSelector.twig
index 181c97bd84bb95245a57c1b87831b4835609c8f8..2cecd2dd3155335711334a4aade75a48dde834ee 100644
--- a/plugins/SegmentEditor/templates/getSelector.twig
+++ b/plugins/SegmentEditor/templates/getSelector.twig
@@ -137,9 +137,9 @@
     </div>
 </div>
 
-<span id="segmentEditorPanel">
+<div id="segmentEditorPanel">
     <div id="segmentList"></div>
-</span>
+</div>
 
 <div class="ui-confirm" id="segment-delete-confirm">
     <h2>{{ 'SegmentEditor_AreYouSureDeleteSegment'|translate }}</h2>
diff --git a/plugins/SitesManager/stylesheets/SitesManager.less b/plugins/SitesManager/stylesheets/SitesManager.less
index 0196289beee8eb30927d9231bba40803daed3a84..fca6f5d8bf6cd23d917cb16b419123f5c92d7ca6 100644
--- a/plugins/SitesManager/stylesheets/SitesManager.less
+++ b/plugins/SitesManager/stylesheets/SitesManager.less
@@ -21,7 +21,7 @@
 
 .addRowSite:before {
   display: inline-block;
-  content: url(../../UsersManager/images/add.png);
+  content: url(plugins/UsersManager/images/add.png);
   vertical-align: middle;
 }
 
diff --git a/plugins/Zeitgeist/stylesheets/ui/_transitions.less b/plugins/Transitions/stylesheets/_transitionColors.less
similarity index 100%
rename from plugins/Zeitgeist/stylesheets/ui/_transitions.less
rename to plugins/Transitions/stylesheets/_transitionColors.less
diff --git a/plugins/Transitions/stylesheets/transitions.less b/plugins/Transitions/stylesheets/transitions.less
index 7fc748602bf1ddee6e19964ff3e1e23df7620d70..978ffdd86a9c744630013304e4a025e25282f693 100644
--- a/plugins/Transitions/stylesheets/transitions.less
+++ b/plugins/Transitions/stylesheets/transitions.less
@@ -1,3 +1,5 @@
+@import "_transitionColors";
+
 #Transitions_Container {
     position: relative;
     z-index: 1500;
diff --git a/plugins/Widgetize/Widgetize.php b/plugins/Widgetize/Widgetize.php
index 7bf8cdb7c1f4a184fdb07332a6b610a0e141ce89..27a002ccb9fa261b6f1338f22cfaaf5d33fa20b8 100644
--- a/plugins/Widgetize/Widgetize.php
+++ b/plugins/Widgetize/Widgetize.php
@@ -42,7 +42,7 @@ class Piwik_Widgetize extends Plugin
         $jsFiles[] = "libs/jquery/jquery.truncate.js";
         $jsFiles[] = "libs/jquery/jquery.scrollTo.js";
         $jsFiles[] = "plugins/Zeitgeist/javascripts/piwikHelper.js";
-        $jsFiles[] = "plugins/CoreHome/javascripts/datatable.js";
+        $jsFiles[] = "plugins/CoreHome/javascripts/dataTable.js";
         $jsFiles[] = "plugins/Dashboard/javascripts/widgetMenu.js";
         $jsFiles[] = "plugins/Widgetize/javascripts/widgetize.js";
     }
diff --git a/plugins/Zeitgeist/stylesheets/base.css b/plugins/Zeitgeist/stylesheets/base.css
index a4cd523faecdbdc3ee5fea641df89b3cc5f125f4..75a146eb1261c3bd5d842ffa98182e252034a19f 100644
--- a/plugins/Zeitgeist/stylesheets/base.css
+++ b/plugins/Zeitgeist/stylesheets/base.css
@@ -1,6 +1,6 @@
 /* base.less is a standalone Less file */
 /* base.css is automatically generated. DO NOT MODIFY */
-/* Genreral styles */
+/* General styles */
 /* reset style */
 html,
 body,
diff --git a/plugins/Zeitgeist/stylesheets/base.less b/plugins/Zeitgeist/stylesheets/base.less
index 4f593a9c926b9eec211252998dd615f06b16d255..3d8406e360c6ae0c334acfb7bffd6cb74c0bc9ed 100644
--- a/plugins/Zeitgeist/stylesheets/base.less
+++ b/plugins/Zeitgeist/stylesheets/base.less
@@ -26,11 +26,5 @@
 
 @import "ui/_loading.less";
 
-@import "ui/_sparkline.less";
-
-@import "ui/_jqplot.less";
-
-@import "ui/_transitions.less";
-
 /* Remote components */
 @import "../../CoreHome/stylesheets/_donate.less";
diff --git a/plugins/Zeitgeist/stylesheets/general/_jqueryUI.less b/plugins/Zeitgeist/stylesheets/general/_jqueryUI.less
index bca00bf69d35cc18d4ac08f8d52de5c1ba598f4e..ea0820c28be9c971144845f485113c48b1db82d0 100644
--- a/plugins/Zeitgeist/stylesheets/general/_jqueryUI.less
+++ b/plugins/Zeitgeist/stylesheets/general/_jqueryUI.less
@@ -72,7 +72,7 @@ div.ui-state-highlight {
 }
 
 .ui-datepicker-header {
-  background: #847b6d url(../images/dashboard_h_bg_hover.png) repeat-x 0 0 !important;
+  background: #847b6d url(plugins/Zeitgeist/images/dashboard_h_bg_hover.png) repeat-x 0 0 !important;
   color: #fff !important;
   border-radius: 0 !important;
 }
@@ -82,11 +82,11 @@ div.ui-state-highlight {
 }
 
 .ui-datepicker-header .ui-icon-circle-triangle-w {
-  background: url(../images/datepicker_arr_l.png) no-repeat 5px 4px !important;
+  background: url(plugins/Zeitgeist/images/datepicker_arr_l.png) no-repeat 5px 4px !important;
 }
 
 .ui-datepicker-header .ui-icon-circle-triangle-e {
-  background: url(../images/datepicker_arr_r.png) no-repeat 6px 4px !important;
+  background: url(plugins/Zeitgeist/images/datepicker_arr_r.png) no-repeat 6px 4px !important;
 }
 
 .ui-datepicker .ui-datepicker-next-hover,
diff --git a/plugins/Zeitgeist/stylesheets/general/_misc.less b/plugins/Zeitgeist/stylesheets/general/_misc.less
index 38ef9f463fe61ebf496eb48433c6a5019b271a0e..de419973f1e4132d766ab16275aafc7e32bb1156 100644
--- a/plugins/Zeitgeist/stylesheets/general/_misc.less
+++ b/plugins/Zeitgeist/stylesheets/general/_misc.less
@@ -4,4 +4,38 @@
 
 .exception-backtrace {
     color: #888;
+}
+
+.section-toggler-link {
+  font-size: .8em;
+  font-style: italic;
+  text-decoration: none;
+}
+
+.section-toggler-link:hover {
+  text-decoration: underline;
+}
+
+.metricEvolution {
+  display: inline-block;
+  font-size: 9pt;
+  opacity: 0.75;
+}
+
+.metricEvolution > .positive-evolution {
+  color: green;
+}
+
+.metricEvolution > .negative-evolution {
+  color: #e02a3b;
+}
+
+.reportsByDimensionView > .entityList {
+  float: left;
+  width: 220px;
+  min-height: 450px;
+}
+
+.dimensionCategory {
+  margin-top: 10px;
 }
\ No newline at end of file
diff --git a/plugins/Zeitgeist/stylesheets/general/_utils.less b/plugins/Zeitgeist/stylesheets/general/_utils.less
index 007768573405d06d6aa811a67fa2aed406e28c78..cd7faddea248e69fcea5894e954c32c8a48432c8 100644
--- a/plugins/Zeitgeist/stylesheets/general/_utils.less
+++ b/plugins/Zeitgeist/stylesheets/general/_utils.less
@@ -27,38 +27,4 @@ html.old-ie .ie-hide {
   margin: auto;
   text-align: center;
   padding-bottom: 10px;
-}
-
-.section-toggler-link {
-  font-size: .8em;
-  font-style: italic;
-  text-decoration: none;
-}
-
-.section-toggler-link:hover {
-  text-decoration: underline;
-}
-
-.metricEvolution {
-  display: inline-block;
-  font-size: 9pt;
-  opacity: 0.75;
-}
-
-.metricEvolution > .positive-evolution {
-  color: green;
-}
-
-.metricEvolution > .negative-evolution {
-  color: #e02a3b;
-}
-
-.reportsByDimensionView > .entityList {
-  float: left;
-  width: 220px;
-  min-height: 450px;
-}
-
-.dimensionCategory {
-  margin-top: 10px;
 }
\ No newline at end of file
diff --git a/plugins/Zeitgeist/stylesheets/ui/_headerMessage.less b/plugins/Zeitgeist/stylesheets/ui/_headerMessage.less
index 779e391e708b42b28e0d3edb8ee24ef19bbdd3be..7941861a90367c5df31745d55b3b7132b47db6f7 100644
--- a/plugins/Zeitgeist/stylesheets/ui/_headerMessage.less
+++ b/plugins/Zeitgeist/stylesheets/ui/_headerMessage.less
@@ -13,6 +13,12 @@
   border-radius: 4px;
 }
 
+@media all and (max-width: 949px) {
+  #header_message {
+    display: none;
+  }
+}
+
 #header_message:hover,
 #header_message.active {
   width: auto;
diff --git a/plugins/Zeitgeist/stylesheets/ui/_languageSelect.less b/plugins/Zeitgeist/stylesheets/ui/_languageSelect.less
index b0eafb270765fd9c9f79dde1c2f2bcd2e9f9a2cb..cbe890246ef9902f18f5ba82d8f79a1c1298bc06 100644
--- a/plugins/Zeitgeist/stylesheets/ui/_languageSelect.less
+++ b/plugins/Zeitgeist/stylesheets/ui/_languageSelect.less
@@ -3,11 +3,8 @@
   overflow-y: auto;
   overflow-x: hidden;
   padding: 0 !important;
-  position: absolute;
-  z-index: 9999;
   background:#FFF;
   border: 1px solid #1F447F!important;
-  position: relative;
 }
 
 #languageSelection > form {
@@ -20,7 +17,8 @@
 
 #languageSelection .ui-autocomplete-input:after {
   display: inline;
-  content: " \25BC"
+  content: " \25BC";
+  font-size: 0.9em;
 }
 #languageSelection .ui-autocomplete-input {
   text-decoration: underline;
@@ -30,12 +28,12 @@
   text-decoration: underline;
 }
 
-#languageSelect a{
+#languageSelect a {
   text-decoration:none!important;
   padding: 1px 25px 1px 3px!important;
 }
 
-#languageSelect a:hover{
+#languageSelect a:hover {
   background:#176999!important;
   color:#FFF!important;
 }
\ No newline at end of file
diff --git a/plugins/Zeitgeist/stylesheets/ui/_periodSelect.less b/plugins/Zeitgeist/stylesheets/ui/_periodSelect.less
index 30ff58d2d055acd1a1c144367a155d40ce8ed8df..3a87f4eb6030ad9ab66eb04bbf214261469f20db 100644
--- a/plugins/Zeitgeist/stylesheets/ui/_periodSelect.less
+++ b/plugins/Zeitgeist/stylesheets/ui/_periodSelect.less
@@ -51,9 +51,11 @@
 #periodMore {
   padding: 6px 0 0 0;
   display: none;
+  overflow: hidden;
 }
 
-#periodString .period-date, #periodString .period-range {
+#periodString .period-date,
+#periodString .period-range {
   float: left;
   padding: 0 16px 0 0;
 }
diff --git a/plugins/Zeitgeist/templates/_jsGlobalVariables.twig b/plugins/Zeitgeist/templates/_jsGlobalVariables.twig
index 0ec9e5478dd3a57b2d85ab05c3ce7122ff0ac8ee..fc60d946f2330d6d3bec1829b690d7075a785fd0 100644
--- a/plugins/Zeitgeist/templates/_jsGlobalVariables.twig
+++ b/plugins/Zeitgeist/templates/_jsGlobalVariables.twig
@@ -34,4 +34,3 @@
     piwik.config.action_url_category_delimiter = "{{ config_action_url_category_delimiter }}";
     {% endif %}
 </script>
-<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=IE8"/>
diff --git a/plugins/Zeitgeist/templates/admin.twig b/plugins/Zeitgeist/templates/admin.twig
index f9daab8a914b2564f131c2f0c48a005baf8097d8..ef0fca602992f33867985ca8375a5e4b6ba3841e 100644
--- a/plugins/Zeitgeist/templates/admin.twig
+++ b/plugins/Zeitgeist/templates/admin.twig
@@ -20,6 +20,7 @@
         {% endblock %}
     </head>
     <body>
+    {% set isAdminLayout = true %}
     {% include "_iframeBuster.twig" %}
     {% include "@CoreHome/_javaScriptDisabled.twig" %}