diff --git modules/panels.skinr.inc modules/panels.skinr.inc
index 9803dd4..d6f2153 100644
--- modules/panels.skinr.inc
+++ modules/panels.skinr.inc
@@ -71,7 +71,7 @@ function panels_skinr_form_index_handler($op, &$form, $form_state) {
           return 'display-'. $form['#parameters'][1]['display']->did;
         case 'panel': // Deprecated in Panels 3.7
         case 'region':
-          return 'display-'. $form['#parameters'][1]['display']->did .'-panel-'. $form['#parameters'][1]['pid'];
+          return 'display-'. $form['#parameters'][1]['display']->did .'-region-'. $form['#parameters'][1]['pid'];
         case 'pane':
           return 'display-'. $form['#parameters'][1]['display']->did .'-pane-'. $form['#parameters'][1]['pid'];
       }
@@ -335,7 +335,7 @@ function panels_skinr_preprocess_hook_callback(&$form, $form_state) {
       return 'panels_display';
     case 'panel': // Deprecated as of Panels 3.7
     case 'region':
-      return 'panels_panel';
+      return 'panels_region';
     case 'pane':
       return 'panels_pane';
   }
diff --git modules/panels/skinr.inc modules/panels/skinr.inc
index a91b186..225e60f 100644
--- modules/panels/skinr.inc
+++ modules/panels/skinr.inc
@@ -40,9 +40,10 @@ function skinr_skinr_panels_styles() {
 function theme_panels_skinr_style_render_region($display, $region_id, $panes, $settings) {
   // Workaround for missing/invalid $region_id.
   if (empty($region_id)) {
-    // We grab the first pane that we know exists in this panel and extract the region_id from it.
+    // Grab the first pane that we know exists in this panel and extract the
+    // region_id from it.
     $panes_keys = array_keys($panes);
-    $panel_id = $display->content[$panes_keys[0]]->panel;
+    $region_id = $display->content[$panes_keys[0]]->panel;
   }
 
   $output = '';
@@ -50,10 +51,9 @@ function theme_panels_skinr_style_render_region($display, $region_id, $panes, $s
   foreach ($panes as $pane_id => $content) {
     // Add the separator if we've already displayed a pane.
     if ($print_separator) {
-      $output .= '<div class="panel-separator"></div>';
+      $output .= '<div class="panel-region-separator"></div>';
     }
     $output .= $text = $content;
-
     // If we displayed a pane, this will become true; if not, it will become
     // false.
     $print_separator = (bool) $text;
@@ -63,17 +63,20 @@ function theme_panels_skinr_style_render_region($display, $region_id, $panes, $s
   $hook = 'panels';
   if (isset($display->panel_settings[$region_id]['style']) && isset($display->panel_settings[$region_id]['style']) == 'skinr') {
     // Specific style set for this panel.
-    $sid = 'display-'. $display->did .'-panel-'. $region_id;
+    $sid = 'display-'. $display->did .'-region-'. $region_id;
   }
   else {
     // No specific style set, so use the display's style.
     $sid = 'display-'. $display->did;
   }
   $style = array();
-  if($skinr = skinr_get(NULL, $hook, $sid)) {
-    $style = implode(' ', skinr_flatten_skins_array($skinr->skins));
+  // Get the Skinr classes for the current panel or display.
+  if ($skinr = skinr_get(NULL, $hook, $sid)) {
+    // Convert the array to a string fit for printing in the class attribute.
+    $style = skinr_style_array_to_string($skinr);
   }
 
+  // Wrap the output in a DIV containing the Skinr class.
   if (!empty($style)) {
     $output = '<div class="'. $style .'">'. $output .'</div>';
   }
@@ -87,6 +90,23 @@ function theme_panels_skinr_style_render_region($display, $region_id, $panes, $s
  * @ingroup themeable
  */
 function theme_panels_skinr_style_render_pane($content, $pane, $display, $plugin = NULL) {
+  if (isset($pane->style['style']) && isset($pane->style['style']) == 'skinr') {
+    $hook = 'panels';
+    $sid = 'display-'. $display->did .'-pane-'. $pane->pid;
+
+    $style = array();
+    // Get the Skinr classes for the current panel or display.
+    if ($skinr = skinr_get(NULL, $hook, $sid)) {
+      // Convert the array to a string fit for printing in the class attribute.
+      $style = skinr_style_array_to_string($skinr);
+    }
+    if (!empty($content->css_class)) {
+      $content->css_class .= ' '. $style;
+    }
+    else {
+      $content->css_class = $style;
+    }
+  }
   return theme('panels_pane', $content, $pane, $display);
 }
 
diff --git skinr.install skinr.install
index da39945..8e57f53 100644
--- skinr.install
+++ skinr.install
@@ -15,3 +15,29 @@ function skinr_uninstall() {
     variable_del($variable->name);
   }
 }
+
+/**
+ * Update old Skinr variables per http://drupal.org/node/922136 . 
+ */
+function skinr_update_6100() {
+  $ret = array();
+  $result = db_query("SELECT name FROM {variable} WHERE name LIKE 'skinr_%'");
+  while ($variable = db_fetch_object($result)) {
+    $skinr = variable_get($variable->name, array());
+    
+    if (!empty($skinr['panels'])) {
+      $keys = array_keys($skinr['panels']);
+      foreach ($keys as $key) {
+        if (strpos($key, '-panel-') !== FALSE) {
+          $value = $skinr['panels'][$key];
+          unset($skinr['panels'][$key]);
+          $new_key = str_replace('-panel-', '-region-', $key);
+          $skinr['panels'][$new_key] = $value;
+        }
+      }
+      
+      variable_set($variable->name, $skinr);
+    }
+  }
+  return $ret;
+}
\ No newline at end of file
