diff --git a/docs/assets/bootstrap.zip b/docs/assets/bootstrap.zip
index ca001c1e6c6f239096bc0efd2b9acd076cea301a..94e2fa1f3126cc6dc9073929cf331675be56d2a5 100644
Binary files a/docs/assets/bootstrap.zip and b/docs/assets/bootstrap.zip differ
diff --git a/docs/assets/css/bootstrap.css b/docs/assets/css/bootstrap.css
index 5a97f23a624503afd9b98c5d19ea4b6cc99aaab0..acd3a396e8c1aee589013c2d4ffb4938f141ae0f 100644
--- a/docs/assets/css/bootstrap.css
+++ b/docs/assets/css/bootstrap.css
@@ -1794,7 +1794,9 @@ table .span12 {
 .btn-success,
 .btn-success:hover,
 .btn-info,
-.btn-info:hover {
+.btn-info:hover,
+.btn-inverse,
+.btn-inverse:hover {
   text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
   color: #ffffff;
 }
@@ -1802,7 +1804,8 @@ table .span12 {
 .btn-warning.active,
 .btn-danger.active,
 .btn-success.active,
-.btn-info.active {
+.btn-info.active,
+.btn-dark.active {
   color: rgba(255, 255, 255, 0.75);
 }
 .btn-primary {
@@ -1925,6 +1928,30 @@ table .span12 {
 .btn-info:active, .btn-info.active {
   background-color: #24748c \9;
 }
+.btn-inverse {
+  background-color: #393939;
+  background-image: -moz-linear-gradient(top, #454545, #262626);
+  background-image: -ms-linear-gradient(top, #454545, #262626);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#454545), to(#262626));
+  background-image: -webkit-linear-gradient(top, #454545, #262626);
+  background-image: -o-linear-gradient(top, #454545, #262626);
+  background-image: linear-gradient(top, #454545, #262626);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#454545', endColorstr='#262626', GradientType=0);
+  border-color: #262626 #262626 #000000;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
+}
+.btn-inverse:hover,
+.btn-inverse:active,
+.btn-inverse.active,
+.btn-inverse.disabled,
+.btn-inverse[disabled] {
+  background-color: #262626;
+}
+.btn-inverse:active, .btn-inverse.active {
+  background-color: #0c0c0c \9;
+}
 button.btn, input[type="submit"].btn {
   *padding-top: 2px;
   *padding-bottom: 2px;
@@ -2057,7 +2084,8 @@ button.btn.small, input[type="submit"].btn.small {
 .btn-primary .caret,
 .btn-danger .caret,
 .btn-info .caret,
-.btn-success .caret {
+.btn-success .caret,
+.btn-inverse .caret {
   border-top-color: #ffffff;
   opacity: 0.75;
   filter: alpha(opacity=75);
diff --git a/docs/base-css.html b/docs/base-css.html
index cbe35398552c810d7dc2c6ac55579fe0593191ef..292e4a3963ddb03efa0c1bb17d915b0a2fa96a1d 100644
--- a/docs/base-css.html
+++ b/docs/base-css.html
@@ -1285,6 +1285,11 @@ For example, <code>section</code> should be wrapped as inline.
         <td><a class="btn btn-danger" href="#">Danger</a></td>
         <td><code>.btn-danger</code></td>
         <td>Indicates a dangerous or potentially negative action</td>
+      </tr>
+  	  <tr>
+        <td><a class="btn btn-inverse" href="#">Inverse</a></td>
+        <td><code>.btn-inverse</code></td>
+        <td>Alternate dark gray button, not tied to a semantic action or use</td>
       </tr>
     </tbody>
   </table>
diff --git a/docs/templates/pages/base-css.mustache b/docs/templates/pages/base-css.mustache
index 7f5243dde8326c3dc6a197a8b4b8a7b6fa6f064d..cb79496a859c559db233fcfd84d470ca00f3cf3f 100644
--- a/docs/templates/pages/base-css.mustache
+++ b/docs/templates/pages/base-css.mustache
@@ -1210,10 +1210,10 @@
         <td><code>.btn-danger</code></td>
         <td>{{_i}}Indicates a dangerous or potentially negative action{{/i}}</td>
       </tr>
-	  <tr>
-        <td><a class="btn btn-dark" href="#">{{_i}}Dark{{/i}}</a></td>
-        <td><code>.btn-dark</code></td>
-        <td>{{_i}}Indicates a potential abort or black magic{{/i}}</td>
+  	  <tr>
+        <td><a class="btn btn-inverse" href="#">{{_i}}Inverse{{/i}}</a></td>
+        <td><code>.btn-inverse</code></td>
+        <td>{{_i}}Alternate dark gray button, not tied to a semantic action or use{{/i}}</td>
       </tr>
     </tbody>
   </table>
diff --git a/less/button-groups.less b/less/button-groups.less
index d8957c52d7f61d56225416aedf902804bd626fb5..a04220a9a62bad45c03048620df2c575aed490d8 100644
--- a/less/button-groups.less
+++ b/less/button-groups.less
@@ -134,7 +134,7 @@
 .btn-danger,
 .btn-info,
 .btn-success,
-.btn-dark {
+.btn-inverse {
   .caret {
     border-top-color: @white;
     .opacity(75);
diff --git a/less/buttons.less b/less/buttons.less
index 0ac2be67a0457d5d88d11fbfe77622320efefe8f..292e046267ad077a55f3e31f57a5556d9635f8a7 100644
--- a/less/buttons.less
+++ b/less/buttons.less
@@ -108,8 +108,8 @@
 .btn-success:hover,
 .btn-info,
 .btn-info:hover,
-.btn-dark,
-.btn-dark:hover {
+.btn-inverse,
+.btn-inverse:hover {
   text-shadow: 0 -1px 0 rgba(0,0,0,.25);
   color: @white;
 }
@@ -144,8 +144,8 @@
 .btn-info {
   .buttonBackground(#5bc0de, #2f96b4);
 }
-// Dark appears as black
-.btn-dark {
+// Inverse appears as dark gray
+.btn-inverse {
   .buttonBackground(#454545, #262626);
 }