diff --git a/core/modules/contextual/contextual.base.css b/core/modules/contextual/contextual.base.css
deleted file mode 100644
index 8452f52..0000000
--- a/core/modules/contextual/contextual.base.css
+++ /dev/null
@@ -1,39 +0,0 @@
-
-/**
- * @file
- * Generic base styles for contextual module.
- */
-
-.contextual-region {
-  position: relative;
-}
-.touch .contextual .trigger {
-  display: block;
-}
-.contextual .contextual-links {
-  display: none;
-}
-.contextual-links-active .contextual-links {
-  display: block;
-}
-
-/**
- * The .element-focusable class extends the .element-invisible class to allow
- * the element to be focusable when navigated to via the keyboard.
- *
- * Add support for hover.
- */
-.touch .contextual-region .element-invisible.element-focusable,
-.contextual-region:hover .element-invisible.element-focusable  {
-  clip: auto;
-  overflow: visible;
-  height: auto;
-}
-/* Override the position for contextual links. */
-.contextual-region .element-invisible.element-focusable:active,
-.contextual-region .element-invisible.element-focusable:focus,
-.contextual-region:hover .element-invisible.element-focusable,
-.contextual-region-active .element-invisible.element-focusable,
-.touch .contextual-region .element-invisible.element-focusable  {
-  position: relative !important;
-}
diff --git a/core/modules/contextual/contextual.module b/core/modules/contextual/contextual.module
index 3ceda05..18624d0 100644
--- a/core/modules/contextual/contextual.module
+++ b/core/modules/contextual/contextual.module
@@ -85,8 +85,8 @@ function contextual_library_info() {
       $path . '/contextual.js' => array('group' => JS_LIBRARY, 'weight' => -2),
     ),
     'css' => array(
-      $path . '/contextual.base.css' => array(),
-      $path . '/contextual.theme.css' => array(),
+      $path . '/contextual.module.css' => array(),
+      $path . '/contextual.skin.css' => array(),
     ),
     'dependencies' => array(
       array('system', 'jquery'),
diff --git a/core/modules/contextual/contextual.theme-rtl.css b/core/modules/contextual/contextual.theme-rtl.css
deleted file mode 100644
index e04a21f..0000000
--- a/core/modules/contextual/contextual.theme-rtl.css
+++ /dev/null
@@ -1,30 +0,0 @@
-/**
- * @file
- * RTL styling for contextual module.
- */
-
-/**
- * Contextual links wrappers.
- */
-.contextual {
-  left: 0;
-  right: auto;
-}
-
-/**
- * Contextual trigger.
- */
-.contextual .trigger {
-  float: left;
-  right: 0;
-  left: 2px;
-}
-
-/**
- * Contextual links.
- */
-.contextual .contextual-links {
-  border-radius: 0 4px 4px 4px;
-  float: left;
-  text-align: right;
-}
diff --git a/core/modules/contextual/contextual.theme.css b/core/modules/contextual/contextual.theme.css
deleted file mode 100644
index 7c5cde4..0000000
--- a/core/modules/contextual/contextual.theme.css
+++ /dev/null
@@ -1,96 +0,0 @@
-/**
- * @file
- * Styling for contextual module.
- */
-
-/**
- * Contextual links wrappers.
- */
-.contextual {
-  position: absolute;
-  right: 0; /* LTR */
-  top: 2px;
-  z-index: 500;
-}
-
-/**
- * Contextual trigger.
- */
-.contextual .trigger {
-  background-attachment: scroll;
-  background-color: #fff;
-  background-image: url("../../misc/edit.png");
-  background-position: center center;
-  background-repeat: no-repeat;
-  background-size: 16px 16px;
-  border: 1px solid #ddd;
-  border-radius: 13px;
-  box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
-  /* Override the .element-focusable height: auto */
-  height: 28px !important;
-  float: right; /* LTR */
-  margin: 0;
-  overflow: hidden;
-  padding: 0 2px;
-  position: relative;
-  right: 2px; /* LTR */
-  width: 28px;
-  text-indent: -9999px;
-  z-index: 2;
-  cursor: pointer;
-}
-.contextual-links-active .trigger {
-  border-bottom-color: transparent;
-  border-radius: 13px 13px 0 0;
-  box-shadow: none;
-}
-
-/**
- * Contextual links.
- *
- * The following selectors are heavy to discourage theme overriding.
- */
-.contextual-region .contextual .contextual-links {
-  background-color: #fff;
-  border: 1px solid #ddd;
-  border-radius: 4px 0 4px 4px; /* LTR */
-  clear: both;
-  float: right; /* LTR */
-  margin: 0;
-  padding: 0.25em 0;
-  position: relative;
-  text-align: left; /* LTR */
-  top: -1px;
-  white-space: nowrap;
-  z-index: 1;
-}
-.contextual-region .contextual .contextual-links li {
-  background-color: #fff;
-  border: none;
-  list-style: none;
-  list-style-image: none;
-  margin: 0;
-  padding: 0;
-  line-height: 100%;
-}
-.contextual-region .contextual .contextual-links a {
-  background-color: #fff;
-  /* This is an unforetunately necessary use of !important to prevent white
-   * links on a white background or some similar illegible combination. */
-  color: #333 !important;
-  display: block;
-  font-family: sans-serif;
-  font-size: small;
-  line-height: 0.8em;
-  margin: 0.25em 0;
-  padding: 0.4em 0.6em;
-}
-.contextual-region .contextual .contextual-links a,
-.contextual-region .contextual .contextual-links a:hover {
-  text-decoration: none;
-}
-.no-touch .contextual-region .contextual .contextual-links li a:hover {
-  color: white;
-  background-image: -webkit-linear-gradient(rgb(78,159,234) 0%,rgb(65,126,210) 100%);
-  background-image: linear-gradient(rgb(78,159,234) 0%,rgb(65,126,210) 100%);
-}
diff --git a/core/modules/contextual/contextual.toolbar-rtl.css b/core/modules/contextual/contextual.toolbar-rtl.css
deleted file mode 100644
index 226969f..0000000
--- a/core/modules/contextual/contextual.toolbar-rtl.css
+++ /dev/null
@@ -1,11 +0,0 @@
-/**
- * @file
- * RTL styling for contextual module's toolbar tab.
- */
-
-.js .toolbar .bar .contextual-toolbar-tab.tab {
-  float: left;
-}
-.js .toolbar .bar .contextual-toolbar-tab button {
-  padding-right: 1.3333em;
-}
diff --git a/core/modules/contextual/contextual.toolbar.css b/core/modules/contextual/contextual.toolbar.css
deleted file mode 100644
index 189a07f..0000000
--- a/core/modules/contextual/contextual.toolbar.css
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * @file
- * Styling for contextual module's toolbar tab.
- */
-
-/* Tab icon. */
-.icon-edit:before {
-  background-image: url("../../misc/edit.png");
-}
-.icon-edit:active:before,
-.active.icon-edit:before {
-  background-image: url("../../misc/edit-active.png");
-}
-
-/* Tab appearance. */
-.js .toolbar .bar .contextual-toolbar-tab.tab {
-  float: right; /* LTR */
-}
-.js .toolbar .bar .contextual-toolbar-tab button {
-  padding-bottom: 1em;
-  padding-top: 1em;
-  /* Hide tab text. */
-  padding-left: 1.3333em; /* LTR */
-  text-indent: -9999px;
-  line-height: 1em;
-}
-.js .toolbar .bar .contextual-toolbar-tab button.active {
-  background-image:-moz-linear-gradient(rgb(78,159,234) 0%,rgb(69,132,221) 100%);
-  background-image:-webkit-gradient(linear,color-stop(0, rgb(78,159,234)),color-stop(1, rgb(69,132,221)));
-  background-image: -webkit-linear-gradient(top,  rgb(78,159,234) 0%, rgb(69,132,221) 100%);
-  background-image:linear-gradient(rgb(78,159,234) 0%,rgb(69,132,221) 100%);
-}
-
-/* @todo get rid of this declaration by making toolbar.module's CSS less specific */
-.js .toolbar .bar .contextual-toolbar-tab.tab.element-hidden {
-  display: none;
-}
diff --git a/core/modules/contextual/css/contextual.module.css b/core/modules/contextual/css/contextual.module.css
new file mode 100644
index 0000000..8452f52
--- /dev/null
+++ b/core/modules/contextual/css/contextual.module.css
@@ -0,0 +1,39 @@
+
+/**
+ * @file
+ * Generic base styles for contextual module.
+ */
+
+.contextual-region {
+  position: relative;
+}
+.touch .contextual .trigger {
+  display: block;
+}
+.contextual .contextual-links {
+  display: none;
+}
+.contextual-links-active .contextual-links {
+  display: block;
+}
+
+/**
+ * The .element-focusable class extends the .element-invisible class to allow
+ * the element to be focusable when navigated to via the keyboard.
+ *
+ * Add support for hover.
+ */
+.touch .contextual-region .element-invisible.element-focusable,
+.contextual-region:hover .element-invisible.element-focusable  {
+  clip: auto;
+  overflow: visible;
+  height: auto;
+}
+/* Override the position for contextual links. */
+.contextual-region .element-invisible.element-focusable:active,
+.contextual-region .element-invisible.element-focusable:focus,
+.contextual-region:hover .element-invisible.element-focusable,
+.contextual-region-active .element-invisible.element-focusable,
+.touch .contextual-region .element-invisible.element-focusable  {
+  position: relative !important;
+}
diff --git a/core/modules/contextual/css/contextual.skin-rtl.css b/core/modules/contextual/css/contextual.skin-rtl.css
new file mode 100644
index 0000000..e04a21f
--- /dev/null
+++ b/core/modules/contextual/css/contextual.skin-rtl.css
@@ -0,0 +1,30 @@
+/**
+ * @file
+ * RTL styling for contextual module.
+ */
+
+/**
+ * Contextual links wrappers.
+ */
+.contextual {
+  left: 0;
+  right: auto;
+}
+
+/**
+ * Contextual trigger.
+ */
+.contextual .trigger {
+  float: left;
+  right: 0;
+  left: 2px;
+}
+
+/**
+ * Contextual links.
+ */
+.contextual .contextual-links {
+  border-radius: 0 4px 4px 4px;
+  float: left;
+  text-align: right;
+}
diff --git a/core/modules/contextual/css/contextual.skin.css b/core/modules/contextual/css/contextual.skin.css
new file mode 100644
index 0000000..7c5cde4
--- /dev/null
+++ b/core/modules/contextual/css/contextual.skin.css
@@ -0,0 +1,96 @@
+/**
+ * @file
+ * Styling for contextual module.
+ */
+
+/**
+ * Contextual links wrappers.
+ */
+.contextual {
+  position: absolute;
+  right: 0; /* LTR */
+  top: 2px;
+  z-index: 500;
+}
+
+/**
+ * Contextual trigger.
+ */
+.contextual .trigger {
+  background-attachment: scroll;
+  background-color: #fff;
+  background-image: url("../../misc/edit.png");
+  background-position: center center;
+  background-repeat: no-repeat;
+  background-size: 16px 16px;
+  border: 1px solid #ddd;
+  border-radius: 13px;
+  box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
+  /* Override the .element-focusable height: auto */
+  height: 28px !important;
+  float: right; /* LTR */
+  margin: 0;
+  overflow: hidden;
+  padding: 0 2px;
+  position: relative;
+  right: 2px; /* LTR */
+  width: 28px;
+  text-indent: -9999px;
+  z-index: 2;
+  cursor: pointer;
+}
+.contextual-links-active .trigger {
+  border-bottom-color: transparent;
+  border-radius: 13px 13px 0 0;
+  box-shadow: none;
+}
+
+/**
+ * Contextual links.
+ *
+ * The following selectors are heavy to discourage theme overriding.
+ */
+.contextual-region .contextual .contextual-links {
+  background-color: #fff;
+  border: 1px solid #ddd;
+  border-radius: 4px 0 4px 4px; /* LTR */
+  clear: both;
+  float: right; /* LTR */
+  margin: 0;
+  padding: 0.25em 0;
+  position: relative;
+  text-align: left; /* LTR */
+  top: -1px;
+  white-space: nowrap;
+  z-index: 1;
+}
+.contextual-region .contextual .contextual-links li {
+  background-color: #fff;
+  border: none;
+  list-style: none;
+  list-style-image: none;
+  margin: 0;
+  padding: 0;
+  line-height: 100%;
+}
+.contextual-region .contextual .contextual-links a {
+  background-color: #fff;
+  /* This is an unforetunately necessary use of !important to prevent white
+   * links on a white background or some similar illegible combination. */
+  color: #333 !important;
+  display: block;
+  font-family: sans-serif;
+  font-size: small;
+  line-height: 0.8em;
+  margin: 0.25em 0;
+  padding: 0.4em 0.6em;
+}
+.contextual-region .contextual .contextual-links a,
+.contextual-region .contextual .contextual-links a:hover {
+  text-decoration: none;
+}
+.no-touch .contextual-region .contextual .contextual-links li a:hover {
+  color: white;
+  background-image: -webkit-linear-gradient(rgb(78,159,234) 0%,rgb(65,126,210) 100%);
+  background-image: linear-gradient(rgb(78,159,234) 0%,rgb(65,126,210) 100%);
+}
diff --git a/core/modules/contextual/css/contextual.toolbar-rtl.css b/core/modules/contextual/css/contextual.toolbar-rtl.css
new file mode 100644
index 0000000..226969f
--- /dev/null
+++ b/core/modules/contextual/css/contextual.toolbar-rtl.css
@@ -0,0 +1,11 @@
+/**
+ * @file
+ * RTL styling for contextual module's toolbar tab.
+ */
+
+.js .toolbar .bar .contextual-toolbar-tab.tab {
+  float: left;
+}
+.js .toolbar .bar .contextual-toolbar-tab button {
+  padding-right: 1.3333em;
+}
diff --git a/core/modules/contextual/css/contextual.toolbar.css b/core/modules/contextual/css/contextual.toolbar.css
new file mode 100644
index 0000000..189a07f
--- /dev/null
+++ b/core/modules/contextual/css/contextual.toolbar.css
@@ -0,0 +1,37 @@
+/**
+ * @file
+ * Styling for contextual module's toolbar tab.
+ */
+
+/* Tab icon. */
+.icon-edit:before {
+  background-image: url("../../misc/edit.png");
+}
+.icon-edit:active:before,
+.active.icon-edit:before {
+  background-image: url("../../misc/edit-active.png");
+}
+
+/* Tab appearance. */
+.js .toolbar .bar .contextual-toolbar-tab.tab {
+  float: right; /* LTR */
+}
+.js .toolbar .bar .contextual-toolbar-tab button {
+  padding-bottom: 1em;
+  padding-top: 1em;
+  /* Hide tab text. */
+  padding-left: 1.3333em; /* LTR */
+  text-indent: -9999px;
+  line-height: 1em;
+}
+.js .toolbar .bar .contextual-toolbar-tab button.active {
+  background-image:-moz-linear-gradient(rgb(78,159,234) 0%,rgb(69,132,221) 100%);
+  background-image:-webkit-gradient(linear,color-stop(0, rgb(78,159,234)),color-stop(1, rgb(69,132,221)));
+  background-image: -webkit-linear-gradient(top,  rgb(78,159,234) 0%, rgb(69,132,221) 100%);
+  background-image:linear-gradient(rgb(78,159,234) 0%,rgb(69,132,221) 100%);
+}
+
+/* @todo get rid of this declaration by making toolbar.module's CSS less specific */
+.js .toolbar .bar .contextual-toolbar-tab.tab.element-hidden {
+  display: none;
+}
