rails-data-explorer 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. data/.gitignore +10 -0
  2. data/CHANGELOG.md +3 -0
  3. data/Gemfile +7 -0
  4. data/MIT-LICENSE +20 -0
  5. data/README.md +52 -0
  6. data/Rakefile +18 -0
  7. data/lib/rails-data-explorer.rb +44 -0
  8. data/lib/rails-data-explorer/action_view_extension.rb +12 -0
  9. data/lib/rails-data-explorer/active_record_extension.rb +14 -0
  10. data/lib/rails-data-explorer/chart.rb +52 -0
  11. data/lib/rails-data-explorer/chart/box_plot.rb +79 -0
  12. data/lib/rails-data-explorer/chart/box_plot_group.rb +109 -0
  13. data/lib/rails-data-explorer/chart/contingency_table.rb +189 -0
  14. data/lib/rails-data-explorer/chart/descriptive_statistics_table.rb +22 -0
  15. data/lib/rails-data-explorer/chart/descriptive_statistics_table_group.rb +0 -0
  16. data/lib/rails-data-explorer/chart/histogram_categorical.rb +73 -0
  17. data/lib/rails-data-explorer/chart/histogram_quantitative.rb +73 -0
  18. data/lib/rails-data-explorer/chart/histogram_temporal.rb +78 -0
  19. data/lib/rails-data-explorer/chart/multi_dimensional_charts.rb +1 -0
  20. data/lib/rails-data-explorer/chart/parallel_coordinates.rb +89 -0
  21. data/lib/rails-data-explorer/chart/parallel_set.rb +65 -0
  22. data/lib/rails-data-explorer/chart/pie_chart.rb +67 -0
  23. data/lib/rails-data-explorer/chart/scatterplot.rb +120 -0
  24. data/lib/rails-data-explorer/chart/scatterplot_matrix.rb +1 -0
  25. data/lib/rails-data-explorer/chart/stacked_bar_chart_categorical_percent.rb +120 -0
  26. data/lib/rails-data-explorer/data_series.rb +115 -0
  27. data/lib/rails-data-explorer/data_set.rb +127 -0
  28. data/lib/rails-data-explorer/data_type.rb +34 -0
  29. data/lib/rails-data-explorer/data_type/categorical.rb +117 -0
  30. data/lib/rails-data-explorer/data_type/geo.rb +1 -0
  31. data/lib/rails-data-explorer/data_type/quantitative.rb +109 -0
  32. data/lib/rails-data-explorer/data_type/quantitative/decimal.rb +13 -0
  33. data/lib/rails-data-explorer/data_type/quantitative/integer.rb +13 -0
  34. data/lib/rails-data-explorer/data_type/quantitative/temporal.rb +62 -0
  35. data/lib/rails-data-explorer/engine.rb +24 -0
  36. data/lib/rails-data-explorer/exploration.rb +89 -0
  37. data/lib/rails-data-explorer/statistics/pearsons_chi_squared_independence_test.rb +75 -0
  38. data/lib/rails-data-explorer/statistics/rng_category.rb +37 -0
  39. data/lib/rails-data-explorer/statistics/rng_gaussian.rb +24 -0
  40. data/lib/rails-data-explorer/statistics/rng_power_law.rb +21 -0
  41. data/lib/rails-data-explorer/utils/color_scale.rb +33 -0
  42. data/lib/rails-data-explorer/utils/data_binner.rb +8 -0
  43. data/lib/rails-data-explorer/utils/data_encoder.rb +2 -0
  44. data/lib/rails-data-explorer/utils/data_quantizer.rb +2 -0
  45. data/lib/rails-data-explorer/utils/value_formatter.rb +41 -0
  46. data/rails-data-explorer.gemspec +30 -0
  47. data/vendor/assets/javascripts/d3.boxplot.js +302 -0
  48. data/vendor/assets/javascripts/d3.parcoords.js +585 -0
  49. data/vendor/assets/javascripts/d3.parsets.js +663 -0
  50. data/vendor/assets/javascripts/d3.v3.js +9294 -0
  51. data/vendor/assets/javascripts/nv.d3.js +14369 -0
  52. data/vendor/assets/javascripts/rails-data-explorer.js +19 -0
  53. data/vendor/assets/stylesheets/bootstrap-theme.css +346 -0
  54. data/vendor/assets/stylesheets/bootstrap.css +1727 -0
  55. data/vendor/assets/stylesheets/d3.boxplot.css +20 -0
  56. data/vendor/assets/stylesheets/d3.parcoords.css +34 -0
  57. data/vendor/assets/stylesheets/d3.parsets.css +34 -0
  58. data/vendor/assets/stylesheets/nv.d3.css +769 -0
  59. data/vendor/assets/stylesheets/rails-data-explorer.css +21 -0
  60. data/vendor/assets/stylesheets/rde-default-style.css +42 -0
  61. metadata +250 -0
@@ -0,0 +1,19 @@
1
+ // This is a manifest file that'll be compiled into application.js, which will include all the files
2
+ // listed below.
3
+ //
4
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
+ // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6
+ //
7
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
+ // compiled file.
9
+ //
10
+ // Read Sprockets README (https://github.com/sstephenson/sprockets#sprockets-directives) for details
11
+ // about supported directives.
12
+ //
13
+
14
+ //= require d3.v3
15
+
16
+ //= require nv.d3
17
+ //= require d3.boxplot
18
+ //= require d3.parcoords
19
+ //= require d3.parsets
@@ -0,0 +1,346 @@
1
+ /*!
2
+ * Bootstrap v3.1.1 (http://getbootstrap.com)
3
+ * Copyright 2011-2014 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+
7
+ .btn-default,
8
+ .btn-primary,
9
+ .btn-success,
10
+ .btn-info,
11
+ .btn-warning,
12
+ .btn-danger {
13
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
14
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
15
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
16
+ }
17
+ .btn-default:active,
18
+ .btn-primary:active,
19
+ .btn-success:active,
20
+ .btn-info:active,
21
+ .btn-warning:active,
22
+ .btn-danger:active,
23
+ .btn-default.active,
24
+ .btn-primary.active,
25
+ .btn-success.active,
26
+ .btn-info.active,
27
+ .btn-warning.active,
28
+ .btn-danger.active {
29
+ -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
30
+ box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
31
+ }
32
+ .btn:active,
33
+ .btn.active {
34
+ background-image: none;
35
+ }
36
+ .btn-default {
37
+ background-image: -webkit-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);
38
+ background-image: linear-gradient(to bottom, #ffffff 0%, #e0e0e0 100%);
39
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
40
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
41
+ background-repeat: repeat-x;
42
+ border-color: #dbdbdb;
43
+ text-shadow: 0 1px 0 #fff;
44
+ border-color: #ccc;
45
+ }
46
+ .btn-default:hover,
47
+ .btn-default:focus {
48
+ background-color: #e0e0e0;
49
+ background-position: 0 -15px;
50
+ }
51
+ .btn-default:active,
52
+ .btn-default.active {
53
+ background-color: #e0e0e0;
54
+ border-color: #dbdbdb;
55
+ }
56
+ .btn-primary {
57
+ background-image: -webkit-linear-gradient(top, #428bca 0%, #2d6ca2 100%);
58
+ background-image: linear-gradient(to bottom, #428bca 0%, #2d6ca2 100%);
59
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff2d6ca2', GradientType=0);
60
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
61
+ background-repeat: repeat-x;
62
+ border-color: #2b669a;
63
+ }
64
+ .btn-primary:hover,
65
+ .btn-primary:focus {
66
+ background-color: #2d6ca2;
67
+ background-position: 0 -15px;
68
+ }
69
+ .btn-primary:active,
70
+ .btn-primary.active {
71
+ background-color: #2d6ca2;
72
+ border-color: #2b669a;
73
+ }
74
+ .btn-success {
75
+ background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
76
+ background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
77
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
78
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
79
+ background-repeat: repeat-x;
80
+ border-color: #3e8f3e;
81
+ }
82
+ .btn-success:hover,
83
+ .btn-success:focus {
84
+ background-color: #419641;
85
+ background-position: 0 -15px;
86
+ }
87
+ .btn-success:active,
88
+ .btn-success.active {
89
+ background-color: #419641;
90
+ border-color: #3e8f3e;
91
+ }
92
+ .btn-info {
93
+ background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
94
+ background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
95
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
96
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
97
+ background-repeat: repeat-x;
98
+ border-color: #28a4c9;
99
+ }
100
+ .btn-info:hover,
101
+ .btn-info:focus {
102
+ background-color: #2aabd2;
103
+ background-position: 0 -15px;
104
+ }
105
+ .btn-info:active,
106
+ .btn-info.active {
107
+ background-color: #2aabd2;
108
+ border-color: #28a4c9;
109
+ }
110
+ .btn-warning {
111
+ background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
112
+ background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
113
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
114
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
115
+ background-repeat: repeat-x;
116
+ border-color: #e38d13;
117
+ }
118
+ .btn-warning:hover,
119
+ .btn-warning:focus {
120
+ background-color: #eb9316;
121
+ background-position: 0 -15px;
122
+ }
123
+ .btn-warning:active,
124
+ .btn-warning.active {
125
+ background-color: #eb9316;
126
+ border-color: #e38d13;
127
+ }
128
+ .btn-danger {
129
+ background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
130
+ background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
131
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
132
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
133
+ background-repeat: repeat-x;
134
+ border-color: #b92c28;
135
+ }
136
+ .btn-danger:hover,
137
+ .btn-danger:focus {
138
+ background-color: #c12e2a;
139
+ background-position: 0 -15px;
140
+ }
141
+ .btn-danger:active,
142
+ .btn-danger.active {
143
+ background-color: #c12e2a;
144
+ border-color: #b92c28;
145
+ }
146
+ .thumbnail,
147
+ .img-thumbnail {
148
+ -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
149
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
150
+ }
151
+ .dropdown-menu > li > a:hover,
152
+ .dropdown-menu > li > a:focus {
153
+ background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
154
+ background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
155
+ background-repeat: repeat-x;
156
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
157
+ background-color: #e8e8e8;
158
+ }
159
+ .dropdown-menu > .active > a,
160
+ .dropdown-menu > .active > a:hover,
161
+ .dropdown-menu > .active > a:focus {
162
+ background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%);
163
+ background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
164
+ background-repeat: repeat-x;
165
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
166
+ background-color: #357ebd;
167
+ }
168
+ .navbar-default {
169
+ background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);
170
+ background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);
171
+ background-repeat: repeat-x;
172
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
173
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
174
+ border-radius: 4px;
175
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
176
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);
177
+ }
178
+ .navbar-default .navbar-nav > .active > a {
179
+ background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f3f3f3 100%);
180
+ background-image: linear-gradient(to bottom, #ebebeb 0%, #f3f3f3 100%);
181
+ background-repeat: repeat-x;
182
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff3f3f3', GradientType=0);
183
+ -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);
184
+ box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);
185
+ }
186
+ .navbar-brand,
187
+ .navbar-nav > li > a {
188
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);
189
+ }
190
+ .navbar-inverse {
191
+ background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222222 100%);
192
+ background-image: linear-gradient(to bottom, #3c3c3c 0%, #222222 100%);
193
+ background-repeat: repeat-x;
194
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
195
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
196
+ }
197
+ .navbar-inverse .navbar-nav > .active > a {
198
+ background-image: -webkit-linear-gradient(top, #222222 0%, #282828 100%);
199
+ background-image: linear-gradient(to bottom, #222222 0%, #282828 100%);
200
+ background-repeat: repeat-x;
201
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff282828', GradientType=0);
202
+ -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);
203
+ box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);
204
+ }
205
+ .navbar-inverse .navbar-brand,
206
+ .navbar-inverse .navbar-nav > li > a {
207
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
208
+ }
209
+ .navbar-static-top,
210
+ .navbar-fixed-top,
211
+ .navbar-fixed-bottom {
212
+ border-radius: 0;
213
+ }
214
+ .alert {
215
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
216
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
217
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);
218
+ }
219
+ .alert-success {
220
+ background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
221
+ background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
222
+ background-repeat: repeat-x;
223
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
224
+ border-color: #b2dba1;
225
+ }
226
+ .alert-info {
227
+ background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
228
+ background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
229
+ background-repeat: repeat-x;
230
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
231
+ border-color: #9acfea;
232
+ }
233
+ .alert-warning {
234
+ background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
235
+ background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
236
+ background-repeat: repeat-x;
237
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
238
+ border-color: #f5e79e;
239
+ }
240
+ .alert-danger {
241
+ background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
242
+ background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
243
+ background-repeat: repeat-x;
244
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
245
+ border-color: #dca7a7;
246
+ }
247
+ .progress {
248
+ background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
249
+ background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
250
+ background-repeat: repeat-x;
251
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
252
+ }
253
+ .progress-bar {
254
+ background-image: -webkit-linear-gradient(top, #428bca 0%, #3071a9 100%);
255
+ background-image: linear-gradient(to bottom, #428bca 0%, #3071a9 100%);
256
+ background-repeat: repeat-x;
257
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3071a9', GradientType=0);
258
+ }
259
+ .progress-bar-success {
260
+ background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
261
+ background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
262
+ background-repeat: repeat-x;
263
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
264
+ }
265
+ .progress-bar-info {
266
+ background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
267
+ background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
268
+ background-repeat: repeat-x;
269
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
270
+ }
271
+ .progress-bar-warning {
272
+ background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
273
+ background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
274
+ background-repeat: repeat-x;
275
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
276
+ }
277
+ .progress-bar-danger {
278
+ background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
279
+ background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
280
+ background-repeat: repeat-x;
281
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
282
+ }
283
+ .list-group {
284
+ border-radius: 4px;
285
+ -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
286
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);
287
+ }
288
+ .list-group-item.active,
289
+ .list-group-item.active:hover,
290
+ .list-group-item.active:focus {
291
+ text-shadow: 0 -1px 0 #3071a9;
292
+ background-image: -webkit-linear-gradient(top, #428bca 0%, #3278b3 100%);
293
+ background-image: linear-gradient(to bottom, #428bca 0%, #3278b3 100%);
294
+ background-repeat: repeat-x;
295
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff3278b3', GradientType=0);
296
+ border-color: #3278b3;
297
+ }
298
+ .panel {
299
+ -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
300
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
301
+ }
302
+ .panel-default > .panel-heading {
303
+ background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
304
+ background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
305
+ background-repeat: repeat-x;
306
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
307
+ }
308
+ .panel-primary > .panel-heading {
309
+ background-image: -webkit-linear-gradient(top, #428bca 0%, #357ebd 100%);
310
+ background-image: linear-gradient(to bottom, #428bca 0%, #357ebd 100%);
311
+ background-repeat: repeat-x;
312
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff428bca', endColorstr='#ff357ebd', GradientType=0);
313
+ }
314
+ .panel-success > .panel-heading {
315
+ background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
316
+ background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
317
+ background-repeat: repeat-x;
318
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
319
+ }
320
+ .panel-info > .panel-heading {
321
+ background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
322
+ background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
323
+ background-repeat: repeat-x;
324
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
325
+ }
326
+ .panel-warning > .panel-heading {
327
+ background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
328
+ background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
329
+ background-repeat: repeat-x;
330
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
331
+ }
332
+ .panel-danger > .panel-heading {
333
+ background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
334
+ background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
335
+ background-repeat: repeat-x;
336
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
337
+ }
338
+ .well {
339
+ background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
340
+ background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
341
+ background-repeat: repeat-x;
342
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
343
+ border-color: #dcdcdc;
344
+ -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
345
+ box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);
346
+ }
@@ -0,0 +1,1727 @@
1
+ /*!
2
+ * Bootstrap v3.1.1 (http://getbootstrap.com)
3
+ * Copyright 2011-2014 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+
7
+ /*! normalize.css v3.0.0 | MIT License | git.io/normalize */
8
+
9
+ /*
10
+ Contains the following bootstrap subset:
11
+
12
+ Common CSS
13
+ ----------
14
+
15
+ * Print media styles
16
+ * Typography
17
+ * Code
18
+ * Tables
19
+ * Forms
20
+
21
+ Components
22
+ ----------
23
+
24
+ * Labels
25
+ * Badges
26
+ * Panels
27
+
28
+ */
29
+ html {
30
+ font-family: "Helvetica Neue",Helvetica,sans-serif;
31
+ -ms-text-size-adjust: 100%;
32
+ -webkit-text-size-adjust: 100%;
33
+ }
34
+ body {
35
+ margin: 0;
36
+ }
37
+ article,
38
+ aside,
39
+ details,
40
+ figcaption,
41
+ figure,
42
+ footer,
43
+ header,
44
+ hgroup,
45
+ main,
46
+ nav,
47
+ section,
48
+ summary {
49
+ display: block;
50
+ }
51
+ audio,
52
+ canvas,
53
+ progress,
54
+ video {
55
+ display: inline-block;
56
+ vertical-align: baseline;
57
+ }
58
+ audio:not([controls]) {
59
+ display: none;
60
+ height: 0;
61
+ }
62
+ [hidden],
63
+ template {
64
+ display: none;
65
+ }
66
+ a {
67
+ background: transparent;
68
+ }
69
+ a:active,
70
+ a:hover {
71
+ outline: 0;
72
+ }
73
+ abbr[title] {
74
+ border-bottom: 1px dotted;
75
+ }
76
+ b,
77
+ strong {
78
+ font-weight: bold;
79
+ }
80
+ dfn {
81
+ font-style: italic;
82
+ }
83
+ h1 {
84
+ font-size: 2em;
85
+ margin: 0.67em 0;
86
+ }
87
+ mark {
88
+ background: #ff0;
89
+ color: #000;
90
+ }
91
+ small {
92
+ font-size: 80%;
93
+ }
94
+ sub,
95
+ sup {
96
+ font-size: 75%;
97
+ line-height: 0;
98
+ position: relative;
99
+ vertical-align: baseline;
100
+ }
101
+ sup {
102
+ top: -0.5em;
103
+ }
104
+ sub {
105
+ bottom: -0.25em;
106
+ }
107
+ img {
108
+ border: 0;
109
+ }
110
+ svg:not(:root) {
111
+ overflow: hidden;
112
+ }
113
+ figure {
114
+ margin: 1em 40px;
115
+ }
116
+ hr {
117
+ -moz-box-sizing: content-box;
118
+ box-sizing: content-box;
119
+ height: 0;
120
+ }
121
+ pre {
122
+ overflow: auto;
123
+ }
124
+ code,
125
+ kbd,
126
+ pre,
127
+ samp {
128
+ font-family: monospace, monospace;
129
+ font-size: 1em;
130
+ }
131
+ button,
132
+ input,
133
+ optgroup,
134
+ select,
135
+ textarea {
136
+ color: inherit;
137
+ font: inherit;
138
+ margin: 0;
139
+ }
140
+ button {
141
+ overflow: visible;
142
+ }
143
+ button,
144
+ select {
145
+ text-transform: none;
146
+ }
147
+ button,
148
+ html input[type="button"],
149
+ input[type="reset"],
150
+ input[type="submit"] {
151
+ -webkit-appearance: button;
152
+ cursor: pointer;
153
+ }
154
+ button[disabled],
155
+ html input[disabled] {
156
+ cursor: default;
157
+ }
158
+ button::-moz-focus-inner,
159
+ input::-moz-focus-inner {
160
+ border: 0;
161
+ padding: 0;
162
+ }
163
+ input {
164
+ line-height: normal;
165
+ }
166
+ input[type="checkbox"],
167
+ input[type="radio"] {
168
+ box-sizing: border-box;
169
+ padding: 0;
170
+ }
171
+ input[type="number"]::-webkit-inner-spin-button,
172
+ input[type="number"]::-webkit-outer-spin-button {
173
+ height: auto;
174
+ }
175
+ input[type="search"] {
176
+ -webkit-appearance: textfield;
177
+ -moz-box-sizing: content-box;
178
+ -webkit-box-sizing: content-box;
179
+ box-sizing: content-box;
180
+ }
181
+ input[type="search"]::-webkit-search-cancel-button,
182
+ input[type="search"]::-webkit-search-decoration {
183
+ -webkit-appearance: none;
184
+ }
185
+ fieldset {
186
+ border: 1px solid #c0c0c0;
187
+ margin: 0 2px;
188
+ padding: 0.35em 0.625em 0.75em;
189
+ }
190
+ legend {
191
+ border: 0;
192
+ padding: 0;
193
+ }
194
+ textarea {
195
+ overflow: auto;
196
+ }
197
+ optgroup {
198
+ font-weight: bold;
199
+ }
200
+ table {
201
+ border-collapse: collapse;
202
+ border-spacing: 0;
203
+ }
204
+ td,
205
+ th {
206
+ padding: 0;
207
+ }
208
+ @media print {
209
+ * {
210
+ text-shadow: none !important;
211
+ color: #000 !important;
212
+ background: transparent !important;
213
+ box-shadow: none !important;
214
+ }
215
+ a,
216
+ a:visited {
217
+ text-decoration: underline;
218
+ }
219
+ a[href]:after {
220
+ content: " (" attr(href) ")";
221
+ }
222
+ abbr[title]:after {
223
+ content: " (" attr(title) ")";
224
+ }
225
+ a[href^="javascript:"]:after,
226
+ a[href^="#"]:after {
227
+ content: "";
228
+ }
229
+ pre,
230
+ blockquote {
231
+ border: 1px solid #999;
232
+ page-break-inside: avoid;
233
+ }
234
+ thead {
235
+ display: table-header-group;
236
+ }
237
+ tr,
238
+ img {
239
+ page-break-inside: avoid;
240
+ }
241
+ img {
242
+ max-width: 100% !important;
243
+ }
244
+ p,
245
+ h2,
246
+ h3 {
247
+ orphans: 3;
248
+ widows: 3;
249
+ }
250
+ h2,
251
+ h3 {
252
+ page-break-after: avoid;
253
+ }
254
+ select {
255
+ background: #fff !important;
256
+ }
257
+ .navbar {
258
+ display: none;
259
+ }
260
+ .table td,
261
+ .table th {
262
+ background-color: #fff !important;
263
+ }
264
+ .btn > .caret,
265
+ .dropup > .btn > .caret {
266
+ border-top-color: #000 !important;
267
+ }
268
+ .label {
269
+ border: 1px solid #000;
270
+ }
271
+ .table {
272
+ border-collapse: collapse !important;
273
+ }
274
+ .table-bordered th,
275
+ .table-bordered td {
276
+ border: 1px solid #ddd !important;
277
+ }
278
+ }
279
+ * {
280
+ -webkit-box-sizing: border-box;
281
+ -moz-box-sizing: border-box;
282
+ box-sizing: border-box;
283
+ }
284
+ *:before,
285
+ *:after {
286
+ -webkit-box-sizing: border-box;
287
+ -moz-box-sizing: border-box;
288
+ box-sizing: border-box;
289
+ }
290
+ html {
291
+ font-size: 62.5%;
292
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
293
+ }
294
+ body {
295
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
296
+ font-size: 14px;
297
+ line-height: 1.42857143;
298
+ color: #333333;
299
+ background-color: #ffffff;
300
+ }
301
+ input,
302
+ button,
303
+ select,
304
+ textarea {
305
+ font-family: inherit;
306
+ font-size: inherit;
307
+ line-height: inherit;
308
+ }
309
+ a {
310
+ color: #428bca;
311
+ text-decoration: none;
312
+ }
313
+ a:hover,
314
+ a:focus {
315
+ color: #2a6496;
316
+ text-decoration: underline;
317
+ }
318
+ a:focus {
319
+ outline: thin dotted;
320
+ outline: 5px auto -webkit-focus-ring-color;
321
+ outline-offset: -2px;
322
+ }
323
+ figure {
324
+ margin: 0;
325
+ }
326
+ img {
327
+ vertical-align: middle;
328
+ }
329
+ .img-responsive {
330
+ display: block;
331
+ max-width: 100%;
332
+ height: auto;
333
+ }
334
+ .img-rounded {
335
+ border-radius: 6px;
336
+ }
337
+ .img-thumbnail {
338
+ padding: 4px;
339
+ line-height: 1.42857143;
340
+ background-color: #ffffff;
341
+ border: 1px solid #dddddd;
342
+ border-radius: 4px;
343
+ -webkit-transition: all 0.2s ease-in-out;
344
+ transition: all 0.2s ease-in-out;
345
+ display: inline-block;
346
+ max-width: 100%;
347
+ height: auto;
348
+ }
349
+ .img-circle {
350
+ border-radius: 50%;
351
+ }
352
+ hr {
353
+ margin-top: 20px;
354
+ margin-bottom: 20px;
355
+ border: 0;
356
+ border-top: 1px solid #eeeeee;
357
+ }
358
+ .sr-only {
359
+ position: absolute;
360
+ width: 1px;
361
+ height: 1px;
362
+ margin: -1px;
363
+ padding: 0;
364
+ overflow: hidden;
365
+ clip: rect(0, 0, 0, 0);
366
+ border: 0;
367
+ }
368
+ h1,
369
+ h2,
370
+ h3,
371
+ h4,
372
+ h5,
373
+ h6,
374
+ .h1,
375
+ .h2,
376
+ .h3,
377
+ .h4,
378
+ .h5,
379
+ .h6 {
380
+ font-family: inherit;
381
+ font-weight: 500;
382
+ line-height: 1.1;
383
+ color: inherit;
384
+ }
385
+ h1 small,
386
+ h2 small,
387
+ h3 small,
388
+ h4 small,
389
+ h5 small,
390
+ h6 small,
391
+ .h1 small,
392
+ .h2 small,
393
+ .h3 small,
394
+ .h4 small,
395
+ .h5 small,
396
+ .h6 small,
397
+ h1 .small,
398
+ h2 .small,
399
+ h3 .small,
400
+ h4 .small,
401
+ h5 .small,
402
+ h6 .small,
403
+ .h1 .small,
404
+ .h2 .small,
405
+ .h3 .small,
406
+ .h4 .small,
407
+ .h5 .small,
408
+ .h6 .small {
409
+ font-weight: normal;
410
+ line-height: 1;
411
+ color: #999999;
412
+ }
413
+ h1,
414
+ .h1,
415
+ h2,
416
+ .h2,
417
+ h3,
418
+ .h3 {
419
+ margin-top: 20px;
420
+ margin-bottom: 10px;
421
+ }
422
+ h1 small,
423
+ .h1 small,
424
+ h2 small,
425
+ .h2 small,
426
+ h3 small,
427
+ .h3 small,
428
+ h1 .small,
429
+ .h1 .small,
430
+ h2 .small,
431
+ .h2 .small,
432
+ h3 .small,
433
+ .h3 .small {
434
+ font-size: 65%;
435
+ }
436
+ h4,
437
+ .h4,
438
+ h5,
439
+ .h5,
440
+ h6,
441
+ .h6 {
442
+ margin-top: 10px;
443
+ margin-bottom: 10px;
444
+ }
445
+ h4 small,
446
+ .h4 small,
447
+ h5 small,
448
+ .h5 small,
449
+ h6 small,
450
+ .h6 small,
451
+ h4 .small,
452
+ .h4 .small,
453
+ h5 .small,
454
+ .h5 .small,
455
+ h6 .small,
456
+ .h6 .small {
457
+ font-size: 75%;
458
+ }
459
+ h1,
460
+ .h1 {
461
+ font-size: 36px;
462
+ }
463
+ h2,
464
+ .h2 {
465
+ font-size: 30px;
466
+ }
467
+ h3,
468
+ .h3 {
469
+ font-size: 24px;
470
+ }
471
+ h4,
472
+ .h4 {
473
+ font-size: 18px;
474
+ }
475
+ h5,
476
+ .h5 {
477
+ font-size: 14px;
478
+ }
479
+ h6,
480
+ .h6 {
481
+ font-size: 12px;
482
+ }
483
+ p {
484
+ margin: 0 0 10px;
485
+ }
486
+ .lead {
487
+ margin-bottom: 20px;
488
+ font-size: 16px;
489
+ font-weight: 200;
490
+ line-height: 1.4;
491
+ }
492
+ @media (min-width: 768px) {
493
+ .lead {
494
+ font-size: 21px;
495
+ }
496
+ }
497
+ small,
498
+ .small {
499
+ font-size: 85%;
500
+ }
501
+ cite {
502
+ font-style: normal;
503
+ }
504
+ .text-left {
505
+ text-align: left;
506
+ }
507
+ .text-right {
508
+ text-align: right;
509
+ }
510
+ .text-center {
511
+ text-align: center;
512
+ }
513
+ .text-justify {
514
+ text-align: justify;
515
+ }
516
+ .text-muted {
517
+ color: #999999;
518
+ }
519
+ .text-primary {
520
+ color: #428bca;
521
+ }
522
+ a.text-primary:hover {
523
+ color: #3071a9;
524
+ }
525
+ .text-success {
526
+ color: #3c763d;
527
+ }
528
+ a.text-success:hover {
529
+ color: #2b542c;
530
+ }
531
+ .text-info {
532
+ color: #31708f;
533
+ }
534
+ a.text-info:hover {
535
+ color: #245269;
536
+ }
537
+ .text-warning {
538
+ color: #8a6d3b;
539
+ }
540
+ a.text-warning:hover {
541
+ color: #66512c;
542
+ }
543
+ .text-danger {
544
+ color: #a94442;
545
+ }
546
+ a.text-danger:hover {
547
+ color: #843534;
548
+ }
549
+ .bg-primary {
550
+ color: #fff;
551
+ background-color: #428bca;
552
+ }
553
+ a.bg-primary:hover {
554
+ background-color: #3071a9;
555
+ }
556
+ .bg-success {
557
+ background-color: #dff0d8;
558
+ }
559
+ a.bg-success:hover {
560
+ background-color: #c1e2b3;
561
+ }
562
+ .bg-info {
563
+ background-color: #d9edf7;
564
+ }
565
+ a.bg-info:hover {
566
+ background-color: #afd9ee;
567
+ }
568
+ .bg-warning {
569
+ background-color: #fcf8e3;
570
+ }
571
+ a.bg-warning:hover {
572
+ background-color: #f7ecb5;
573
+ }
574
+ .bg-danger {
575
+ background-color: #f2dede;
576
+ }
577
+ a.bg-danger:hover {
578
+ background-color: #e4b9b9;
579
+ }
580
+ .page-header {
581
+ padding-bottom: 9px;
582
+ margin: 40px 0 20px;
583
+ border-bottom: 1px solid #eeeeee;
584
+ }
585
+ ul,
586
+ ol {
587
+ margin-top: 0;
588
+ margin-bottom: 10px;
589
+ }
590
+ ul ul,
591
+ ol ul,
592
+ ul ol,
593
+ ol ol {
594
+ margin-bottom: 0;
595
+ }
596
+ .list-unstyled {
597
+ padding-left: 0;
598
+ list-style: none;
599
+ }
600
+ .list-inline {
601
+ padding-left: 0;
602
+ list-style: none;
603
+ margin-left: -5px;
604
+ }
605
+ .list-inline > li {
606
+ display: inline-block;
607
+ padding-left: 5px;
608
+ padding-right: 5px;
609
+ }
610
+ dl {
611
+ margin-top: 0;
612
+ margin-bottom: 20px;
613
+ }
614
+ dt,
615
+ dd {
616
+ line-height: 1.42857143;
617
+ }
618
+ dt {
619
+ font-weight: bold;
620
+ }
621
+ dd {
622
+ margin-left: 0;
623
+ }
624
+ @media (min-width: 768px) {
625
+ .dl-horizontal dt {
626
+ float: left;
627
+ width: 160px;
628
+ clear: left;
629
+ text-align: right;
630
+ overflow: hidden;
631
+ text-overflow: ellipsis;
632
+ white-space: nowrap;
633
+ }
634
+ .dl-horizontal dd {
635
+ margin-left: 180px;
636
+ }
637
+ }
638
+ abbr[title],
639
+ abbr[data-original-title] {
640
+ cursor: help;
641
+ border-bottom: 1px dotted #999999;
642
+ }
643
+ .initialism {
644
+ font-size: 90%;
645
+ text-transform: uppercase;
646
+ }
647
+ blockquote {
648
+ padding: 10px 20px;
649
+ margin: 0 0 20px;
650
+ font-size: 17.5px;
651
+ border-left: 5px solid #eeeeee;
652
+ }
653
+ blockquote p:last-child,
654
+ blockquote ul:last-child,
655
+ blockquote ol:last-child {
656
+ margin-bottom: 0;
657
+ }
658
+ blockquote footer,
659
+ blockquote small,
660
+ blockquote .small {
661
+ display: block;
662
+ font-size: 80%;
663
+ line-height: 1.42857143;
664
+ color: #999999;
665
+ }
666
+ blockquote footer:before,
667
+ blockquote small:before,
668
+ blockquote .small:before {
669
+ content: '\2014 \00A0';
670
+ }
671
+ .blockquote-reverse,
672
+ blockquote.pull-right {
673
+ padding-right: 15px;
674
+ padding-left: 0;
675
+ border-right: 5px solid #eeeeee;
676
+ border-left: 0;
677
+ text-align: right;
678
+ }
679
+ .blockquote-reverse footer:before,
680
+ blockquote.pull-right footer:before,
681
+ .blockquote-reverse small:before,
682
+ blockquote.pull-right small:before,
683
+ .blockquote-reverse .small:before,
684
+ blockquote.pull-right .small:before {
685
+ content: '';
686
+ }
687
+ .blockquote-reverse footer:after,
688
+ blockquote.pull-right footer:after,
689
+ .blockquote-reverse small:after,
690
+ blockquote.pull-right small:after,
691
+ .blockquote-reverse .small:after,
692
+ blockquote.pull-right .small:after {
693
+ content: '\00A0 \2014';
694
+ }
695
+ blockquote:before,
696
+ blockquote:after {
697
+ content: "";
698
+ }
699
+ address {
700
+ margin-bottom: 20px;
701
+ font-style: normal;
702
+ line-height: 1.42857143;
703
+ }
704
+ code,
705
+ kbd,
706
+ pre,
707
+ samp {
708
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
709
+ }
710
+ code {
711
+ padding: 2px 4px;
712
+ font-size: 90%;
713
+ color: #c7254e;
714
+ background-color: #f9f2f4;
715
+ white-space: nowrap;
716
+ border-radius: 4px;
717
+ }
718
+ kbd {
719
+ padding: 2px 4px;
720
+ font-size: 90%;
721
+ color: #ffffff;
722
+ background-color: #333333;
723
+ border-radius: 3px;
724
+ box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
725
+ }
726
+ pre {
727
+ display: block;
728
+ padding: 9.5px;
729
+ margin: 0 0 10px;
730
+ font-size: 13px;
731
+ line-height: 1.42857143;
732
+ word-break: break-all;
733
+ word-wrap: break-word;
734
+ color: #333333;
735
+ background-color: #f5f5f5;
736
+ border: 1px solid #cccccc;
737
+ border-radius: 4px;
738
+ }
739
+ pre code {
740
+ padding: 0;
741
+ font-size: inherit;
742
+ color: inherit;
743
+ white-space: pre-wrap;
744
+ background-color: transparent;
745
+ border-radius: 0;
746
+ }
747
+ .pre-scrollable {
748
+ max-height: 340px;
749
+ overflow-y: scroll;
750
+ }
751
+ table {
752
+ max-width: 100%;
753
+ background-color: transparent;
754
+ }
755
+ th {
756
+ text-align: left;
757
+ }
758
+ .table {
759
+ width: 100%;
760
+ margin-bottom: 20px;
761
+ }
762
+ .table > thead > tr > th,
763
+ .table > tbody > tr > th,
764
+ .table > tfoot > tr > th,
765
+ .table > thead > tr > td,
766
+ .table > tbody > tr > td,
767
+ .table > tfoot > tr > td {
768
+ padding: 8px;
769
+ line-height: 1.42857143;
770
+ vertical-align: top;
771
+ border-top: 1px solid #dddddd;
772
+ }
773
+ .table > thead > tr > th {
774
+ vertical-align: bottom;
775
+ border-bottom: 2px solid #dddddd;
776
+ }
777
+ .table > caption + thead > tr:first-child > th,
778
+ .table > colgroup + thead > tr:first-child > th,
779
+ .table > thead:first-child > tr:first-child > th,
780
+ .table > caption + thead > tr:first-child > td,
781
+ .table > colgroup + thead > tr:first-child > td,
782
+ .table > thead:first-child > tr:first-child > td {
783
+ border-top: 0;
784
+ }
785
+ .table > tbody + tbody {
786
+ border-top: 2px solid #dddddd;
787
+ }
788
+ .table .table {
789
+ background-color: #ffffff;
790
+ }
791
+ .table-condensed > thead > tr > th,
792
+ .table-condensed > tbody > tr > th,
793
+ .table-condensed > tfoot > tr > th,
794
+ .table-condensed > thead > tr > td,
795
+ .table-condensed > tbody > tr > td,
796
+ .table-condensed > tfoot > tr > td {
797
+ padding: 5px;
798
+ }
799
+ .table-bordered {
800
+ border: 1px solid #dddddd;
801
+ }
802
+ .table-bordered > thead > tr > th,
803
+ .table-bordered > tbody > tr > th,
804
+ .table-bordered > tfoot > tr > th,
805
+ .table-bordered > thead > tr > td,
806
+ .table-bordered > tbody > tr > td,
807
+ .table-bordered > tfoot > tr > td {
808
+ border: 1px solid #dddddd;
809
+ }
810
+ .table-bordered > thead > tr > th,
811
+ .table-bordered > thead > tr > td {
812
+ border-bottom-width: 2px;
813
+ }
814
+ .table-striped > tbody > tr:nth-child(odd) > td,
815
+ .table-striped > tbody > tr:nth-child(odd) > th {
816
+ background-color: #f9f9f9;
817
+ }
818
+ .table-hover > tbody > tr:hover > td,
819
+ .table-hover > tbody > tr:hover > th {
820
+ background-color: #f5f5f5;
821
+ }
822
+ table col[class*="col-"] {
823
+ position: static;
824
+ float: none;
825
+ display: table-column;
826
+ }
827
+ table td[class*="col-"],
828
+ table th[class*="col-"] {
829
+ position: static;
830
+ float: none;
831
+ display: table-cell;
832
+ }
833
+ .table > thead > tr > td.active,
834
+ .table > tbody > tr > td.active,
835
+ .table > tfoot > tr > td.active,
836
+ .table > thead > tr > th.active,
837
+ .table > tbody > tr > th.active,
838
+ .table > tfoot > tr > th.active,
839
+ .table > thead > tr.active > td,
840
+ .table > tbody > tr.active > td,
841
+ .table > tfoot > tr.active > td,
842
+ .table > thead > tr.active > th,
843
+ .table > tbody > tr.active > th,
844
+ .table > tfoot > tr.active > th {
845
+ background-color: #f5f5f5;
846
+ }
847
+ .table-hover > tbody > tr > td.active:hover,
848
+ .table-hover > tbody > tr > th.active:hover,
849
+ .table-hover > tbody > tr.active:hover > td,
850
+ .table-hover > tbody > tr.active:hover > th {
851
+ background-color: #e8e8e8;
852
+ }
853
+ .table > thead > tr > td.success,
854
+ .table > tbody > tr > td.success,
855
+ .table > tfoot > tr > td.success,
856
+ .table > thead > tr > th.success,
857
+ .table > tbody > tr > th.success,
858
+ .table > tfoot > tr > th.success,
859
+ .table > thead > tr.success > td,
860
+ .table > tbody > tr.success > td,
861
+ .table > tfoot > tr.success > td,
862
+ .table > thead > tr.success > th,
863
+ .table > tbody > tr.success > th,
864
+ .table > tfoot > tr.success > th {
865
+ background-color: #dff0d8;
866
+ }
867
+ .table-hover > tbody > tr > td.success:hover,
868
+ .table-hover > tbody > tr > th.success:hover,
869
+ .table-hover > tbody > tr.success:hover > td,
870
+ .table-hover > tbody > tr.success:hover > th {
871
+ background-color: #d0e9c6;
872
+ }
873
+ .table > thead > tr > td.info,
874
+ .table > tbody > tr > td.info,
875
+ .table > tfoot > tr > td.info,
876
+ .table > thead > tr > th.info,
877
+ .table > tbody > tr > th.info,
878
+ .table > tfoot > tr > th.info,
879
+ .table > thead > tr.info > td,
880
+ .table > tbody > tr.info > td,
881
+ .table > tfoot > tr.info > td,
882
+ .table > thead > tr.info > th,
883
+ .table > tbody > tr.info > th,
884
+ .table > tfoot > tr.info > th {
885
+ background-color: #d9edf7;
886
+ }
887
+ .table-hover > tbody > tr > td.info:hover,
888
+ .table-hover > tbody > tr > th.info:hover,
889
+ .table-hover > tbody > tr.info:hover > td,
890
+ .table-hover > tbody > tr.info:hover > th {
891
+ background-color: #c4e3f3;
892
+ }
893
+ .table > thead > tr > td.warning,
894
+ .table > tbody > tr > td.warning,
895
+ .table > tfoot > tr > td.warning,
896
+ .table > thead > tr > th.warning,
897
+ .table > tbody > tr > th.warning,
898
+ .table > tfoot > tr > th.warning,
899
+ .table > thead > tr.warning > td,
900
+ .table > tbody > tr.warning > td,
901
+ .table > tfoot > tr.warning > td,
902
+ .table > thead > tr.warning > th,
903
+ .table > tbody > tr.warning > th,
904
+ .table > tfoot > tr.warning > th {
905
+ background-color: #fcf8e3;
906
+ }
907
+ .table-hover > tbody > tr > td.warning:hover,
908
+ .table-hover > tbody > tr > th.warning:hover,
909
+ .table-hover > tbody > tr.warning:hover > td,
910
+ .table-hover > tbody > tr.warning:hover > th {
911
+ background-color: #faf2cc;
912
+ }
913
+ .table > thead > tr > td.danger,
914
+ .table > tbody > tr > td.danger,
915
+ .table > tfoot > tr > td.danger,
916
+ .table > thead > tr > th.danger,
917
+ .table > tbody > tr > th.danger,
918
+ .table > tfoot > tr > th.danger,
919
+ .table > thead > tr.danger > td,
920
+ .table > tbody > tr.danger > td,
921
+ .table > tfoot > tr.danger > td,
922
+ .table > thead > tr.danger > th,
923
+ .table > tbody > tr.danger > th,
924
+ .table > tfoot > tr.danger > th {
925
+ background-color: #f2dede;
926
+ }
927
+ .table-hover > tbody > tr > td.danger:hover,
928
+ .table-hover > tbody > tr > th.danger:hover,
929
+ .table-hover > tbody > tr.danger:hover > td,
930
+ .table-hover > tbody > tr.danger:hover > th {
931
+ background-color: #ebcccc;
932
+ }
933
+ @media (max-width: 767px) {
934
+ .table-responsive {
935
+ width: 100%;
936
+ margin-bottom: 15px;
937
+ overflow-y: hidden;
938
+ overflow-x: scroll;
939
+ -ms-overflow-style: -ms-autohiding-scrollbar;
940
+ border: 1px solid #dddddd;
941
+ -webkit-overflow-scrolling: touch;
942
+ }
943
+ .table-responsive > .table {
944
+ margin-bottom: 0;
945
+ }
946
+ .table-responsive > .table > thead > tr > th,
947
+ .table-responsive > .table > tbody > tr > th,
948
+ .table-responsive > .table > tfoot > tr > th,
949
+ .table-responsive > .table > thead > tr > td,
950
+ .table-responsive > .table > tbody > tr > td,
951
+ .table-responsive > .table > tfoot > tr > td {
952
+ white-space: nowrap;
953
+ }
954
+ .table-responsive > .table-bordered {
955
+ border: 0;
956
+ }
957
+ .table-responsive > .table-bordered > thead > tr > th:first-child,
958
+ .table-responsive > .table-bordered > tbody > tr > th:first-child,
959
+ .table-responsive > .table-bordered > tfoot > tr > th:first-child,
960
+ .table-responsive > .table-bordered > thead > tr > td:first-child,
961
+ .table-responsive > .table-bordered > tbody > tr > td:first-child,
962
+ .table-responsive > .table-bordered > tfoot > tr > td:first-child {
963
+ border-left: 0;
964
+ }
965
+ .table-responsive > .table-bordered > thead > tr > th:last-child,
966
+ .table-responsive > .table-bordered > tbody > tr > th:last-child,
967
+ .table-responsive > .table-bordered > tfoot > tr > th:last-child,
968
+ .table-responsive > .table-bordered > thead > tr > td:last-child,
969
+ .table-responsive > .table-bordered > tbody > tr > td:last-child,
970
+ .table-responsive > .table-bordered > tfoot > tr > td:last-child {
971
+ border-right: 0;
972
+ }
973
+ .table-responsive > .table-bordered > tbody > tr:last-child > th,
974
+ .table-responsive > .table-bordered > tfoot > tr:last-child > th,
975
+ .table-responsive > .table-bordered > tbody > tr:last-child > td,
976
+ .table-responsive > .table-bordered > tfoot > tr:last-child > td {
977
+ border-bottom: 0;
978
+ }
979
+ }
980
+ fieldset {
981
+ padding: 0;
982
+ margin: 0;
983
+ border: 0;
984
+ min-width: 0;
985
+ }
986
+ legend {
987
+ display: block;
988
+ width: 100%;
989
+ padding: 0;
990
+ margin-bottom: 20px;
991
+ font-size: 21px;
992
+ line-height: inherit;
993
+ color: #333333;
994
+ border: 0;
995
+ border-bottom: 1px solid #e5e5e5;
996
+ }
997
+ label {
998
+ display: inline-block;
999
+ margin-bottom: 5px;
1000
+ font-weight: bold;
1001
+ }
1002
+ input[type="search"] {
1003
+ -webkit-box-sizing: border-box;
1004
+ -moz-box-sizing: border-box;
1005
+ box-sizing: border-box;
1006
+ }
1007
+ input[type="radio"],
1008
+ input[type="checkbox"] {
1009
+ margin: 4px 0 0;
1010
+ margin-top: 1px \9;
1011
+ /* IE8-9 */
1012
+ line-height: normal;
1013
+ }
1014
+ input[type="file"] {
1015
+ display: block;
1016
+ }
1017
+ input[type="range"] {
1018
+ display: block;
1019
+ width: 100%;
1020
+ }
1021
+ select[multiple],
1022
+ select[size] {
1023
+ height: auto;
1024
+ }
1025
+ input[type="file"]:focus,
1026
+ input[type="radio"]:focus,
1027
+ input[type="checkbox"]:focus {
1028
+ outline: thin dotted;
1029
+ outline: 5px auto -webkit-focus-ring-color;
1030
+ outline-offset: -2px;
1031
+ }
1032
+ output {
1033
+ display: block;
1034
+ padding-top: 7px;
1035
+ font-size: 14px;
1036
+ line-height: 1.42857143;
1037
+ color: #555555;
1038
+ }
1039
+ .form-control {
1040
+ display: block;
1041
+ width: 100%;
1042
+ height: 34px;
1043
+ padding: 6px 12px;
1044
+ font-size: 14px;
1045
+ line-height: 1.42857143;
1046
+ color: #555555;
1047
+ background-color: #ffffff;
1048
+ background-image: none;
1049
+ border: 1px solid #cccccc;
1050
+ border-radius: 4px;
1051
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1052
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1053
+ -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
1054
+ transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
1055
+ }
1056
+ .form-control:focus {
1057
+ border-color: #66afe9;
1058
+ outline: 0;
1059
+ -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
1060
+ box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
1061
+ }
1062
+ .form-control::-moz-placeholder {
1063
+ color: #999999;
1064
+ opacity: 1;
1065
+ }
1066
+ .form-control:-ms-input-placeholder {
1067
+ color: #999999;
1068
+ }
1069
+ .form-control::-webkit-input-placeholder {
1070
+ color: #999999;
1071
+ }
1072
+ .form-control[disabled],
1073
+ .form-control[readonly],
1074
+ fieldset[disabled] .form-control {
1075
+ cursor: not-allowed;
1076
+ background-color: #eeeeee;
1077
+ opacity: 1;
1078
+ }
1079
+ textarea.form-control {
1080
+ height: auto;
1081
+ }
1082
+ input[type="search"] {
1083
+ -webkit-appearance: none;
1084
+ }
1085
+ input[type="date"] {
1086
+ line-height: 34px;
1087
+ }
1088
+ .form-group {
1089
+ margin-bottom: 15px;
1090
+ }
1091
+ .radio,
1092
+ .checkbox {
1093
+ display: block;
1094
+ min-height: 20px;
1095
+ margin-top: 10px;
1096
+ margin-bottom: 10px;
1097
+ padding-left: 20px;
1098
+ }
1099
+ .radio label,
1100
+ .checkbox label {
1101
+ display: inline;
1102
+ font-weight: normal;
1103
+ cursor: pointer;
1104
+ }
1105
+ .radio input[type="radio"],
1106
+ .radio-inline input[type="radio"],
1107
+ .checkbox input[type="checkbox"],
1108
+ .checkbox-inline input[type="checkbox"] {
1109
+ float: left;
1110
+ margin-left: -20px;
1111
+ }
1112
+ .radio + .radio,
1113
+ .checkbox + .checkbox {
1114
+ margin-top: -5px;
1115
+ }
1116
+ .radio-inline,
1117
+ .checkbox-inline {
1118
+ display: inline-block;
1119
+ padding-left: 20px;
1120
+ margin-bottom: 0;
1121
+ vertical-align: middle;
1122
+ font-weight: normal;
1123
+ cursor: pointer;
1124
+ }
1125
+ .radio-inline + .radio-inline,
1126
+ .checkbox-inline + .checkbox-inline {
1127
+ margin-top: 0;
1128
+ margin-left: 10px;
1129
+ }
1130
+ input[type="radio"][disabled],
1131
+ input[type="checkbox"][disabled],
1132
+ .radio[disabled],
1133
+ .radio-inline[disabled],
1134
+ .checkbox[disabled],
1135
+ .checkbox-inline[disabled],
1136
+ fieldset[disabled] input[type="radio"],
1137
+ fieldset[disabled] input[type="checkbox"],
1138
+ fieldset[disabled] .radio,
1139
+ fieldset[disabled] .radio-inline,
1140
+ fieldset[disabled] .checkbox,
1141
+ fieldset[disabled] .checkbox-inline {
1142
+ cursor: not-allowed;
1143
+ }
1144
+ .input-sm {
1145
+ height: 30px;
1146
+ padding: 5px 10px;
1147
+ font-size: 12px;
1148
+ line-height: 1.5;
1149
+ border-radius: 3px;
1150
+ }
1151
+ select.input-sm {
1152
+ height: 30px;
1153
+ line-height: 30px;
1154
+ }
1155
+ textarea.input-sm,
1156
+ select[multiple].input-sm {
1157
+ height: auto;
1158
+ }
1159
+ .input-lg {
1160
+ height: 46px;
1161
+ padding: 10px 16px;
1162
+ font-size: 18px;
1163
+ line-height: 1.33;
1164
+ border-radius: 6px;
1165
+ }
1166
+ select.input-lg {
1167
+ height: 46px;
1168
+ line-height: 46px;
1169
+ }
1170
+ textarea.input-lg,
1171
+ select[multiple].input-lg {
1172
+ height: auto;
1173
+ }
1174
+ .has-feedback {
1175
+ position: relative;
1176
+ }
1177
+ .has-feedback .form-control {
1178
+ padding-right: 42.5px;
1179
+ }
1180
+ .has-feedback .form-control-feedback {
1181
+ position: absolute;
1182
+ top: 25px;
1183
+ right: 0;
1184
+ display: block;
1185
+ width: 34px;
1186
+ height: 34px;
1187
+ line-height: 34px;
1188
+ text-align: center;
1189
+ }
1190
+ .has-success .help-block,
1191
+ .has-success .control-label,
1192
+ .has-success .radio,
1193
+ .has-success .checkbox,
1194
+ .has-success .radio-inline,
1195
+ .has-success .checkbox-inline {
1196
+ color: #3c763d;
1197
+ }
1198
+ .has-success .form-control {
1199
+ border-color: #3c763d;
1200
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1201
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1202
+ }
1203
+ .has-success .form-control:focus {
1204
+ border-color: #2b542c;
1205
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
1206
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
1207
+ }
1208
+ .has-success .input-group-addon {
1209
+ color: #3c763d;
1210
+ border-color: #3c763d;
1211
+ background-color: #dff0d8;
1212
+ }
1213
+ .has-success .form-control-feedback {
1214
+ color: #3c763d;
1215
+ }
1216
+ .has-warning .help-block,
1217
+ .has-warning .control-label,
1218
+ .has-warning .radio,
1219
+ .has-warning .checkbox,
1220
+ .has-warning .radio-inline,
1221
+ .has-warning .checkbox-inline {
1222
+ color: #8a6d3b;
1223
+ }
1224
+ .has-warning .form-control {
1225
+ border-color: #8a6d3b;
1226
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1227
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1228
+ }
1229
+ .has-warning .form-control:focus {
1230
+ border-color: #66512c;
1231
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
1232
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
1233
+ }
1234
+ .has-warning .input-group-addon {
1235
+ color: #8a6d3b;
1236
+ border-color: #8a6d3b;
1237
+ background-color: #fcf8e3;
1238
+ }
1239
+ .has-warning .form-control-feedback {
1240
+ color: #8a6d3b;
1241
+ }
1242
+ .has-error .help-block,
1243
+ .has-error .control-label,
1244
+ .has-error .radio,
1245
+ .has-error .checkbox,
1246
+ .has-error .radio-inline,
1247
+ .has-error .checkbox-inline {
1248
+ color: #a94442;
1249
+ }
1250
+ .has-error .form-control {
1251
+ border-color: #a94442;
1252
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1253
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
1254
+ }
1255
+ .has-error .form-control:focus {
1256
+ border-color: #843534;
1257
+ -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
1258
+ box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
1259
+ }
1260
+ .has-error .input-group-addon {
1261
+ color: #a94442;
1262
+ border-color: #a94442;
1263
+ background-color: #f2dede;
1264
+ }
1265
+ .has-error .form-control-feedback {
1266
+ color: #a94442;
1267
+ }
1268
+ .form-control-static {
1269
+ margin-bottom: 0;
1270
+ }
1271
+ .help-block {
1272
+ display: block;
1273
+ margin-top: 5px;
1274
+ margin-bottom: 10px;
1275
+ color: #737373;
1276
+ }
1277
+ @media (min-width: 768px) {
1278
+ .form-inline .form-group {
1279
+ display: inline-block;
1280
+ margin-bottom: 0;
1281
+ vertical-align: middle;
1282
+ }
1283
+ .form-inline .form-control {
1284
+ display: inline-block;
1285
+ width: auto;
1286
+ vertical-align: middle;
1287
+ }
1288
+ .form-inline .input-group > .form-control {
1289
+ width: 100%;
1290
+ }
1291
+ .form-inline .control-label {
1292
+ margin-bottom: 0;
1293
+ vertical-align: middle;
1294
+ }
1295
+ .form-inline .radio,
1296
+ .form-inline .checkbox {
1297
+ display: inline-block;
1298
+ margin-top: 0;
1299
+ margin-bottom: 0;
1300
+ padding-left: 0;
1301
+ vertical-align: middle;
1302
+ }
1303
+ .form-inline .radio input[type="radio"],
1304
+ .form-inline .checkbox input[type="checkbox"] {
1305
+ float: none;
1306
+ margin-left: 0;
1307
+ }
1308
+ .form-inline .has-feedback .form-control-feedback {
1309
+ top: 0;
1310
+ }
1311
+ }
1312
+ .form-horizontal .control-label,
1313
+ .form-horizontal .radio,
1314
+ .form-horizontal .checkbox,
1315
+ .form-horizontal .radio-inline,
1316
+ .form-horizontal .checkbox-inline {
1317
+ margin-top: 0;
1318
+ margin-bottom: 0;
1319
+ padding-top: 7px;
1320
+ }
1321
+ .form-horizontal .radio,
1322
+ .form-horizontal .checkbox {
1323
+ min-height: 27px;
1324
+ }
1325
+ .form-horizontal .form-group {
1326
+ margin-left: -15px;
1327
+ margin-right: -15px;
1328
+ }
1329
+ .form-horizontal .form-control-static {
1330
+ padding-top: 7px;
1331
+ }
1332
+ @media (min-width: 768px) {
1333
+ .form-horizontal .control-label {
1334
+ text-align: right;
1335
+ }
1336
+ }
1337
+ .form-horizontal .has-feedback .form-control-feedback {
1338
+ top: 0;
1339
+ right: 15px;
1340
+ }
1341
+ .label {
1342
+ display: inline;
1343
+ padding: .2em .6em .3em;
1344
+ font-size: 75%;
1345
+ font-weight: bold;
1346
+ line-height: 1;
1347
+ color: #ffffff;
1348
+ text-align: center;
1349
+ white-space: nowrap;
1350
+ vertical-align: baseline;
1351
+ border-radius: .25em;
1352
+ }
1353
+ .label[href]:hover,
1354
+ .label[href]:focus {
1355
+ color: #ffffff;
1356
+ text-decoration: none;
1357
+ cursor: pointer;
1358
+ }
1359
+ .label:empty {
1360
+ display: none;
1361
+ }
1362
+ .btn .label {
1363
+ position: relative;
1364
+ top: -1px;
1365
+ }
1366
+ .label-default {
1367
+ background-color: #999999;
1368
+ }
1369
+ .label-default[href]:hover,
1370
+ .label-default[href]:focus {
1371
+ background-color: #808080;
1372
+ }
1373
+ .label-primary {
1374
+ background-color: #428bca;
1375
+ }
1376
+ .label-primary[href]:hover,
1377
+ .label-primary[href]:focus {
1378
+ background-color: #3071a9;
1379
+ }
1380
+ .label-success {
1381
+ background-color: #5cb85c;
1382
+ }
1383
+ .label-success[href]:hover,
1384
+ .label-success[href]:focus {
1385
+ background-color: #449d44;
1386
+ }
1387
+ .label-info {
1388
+ background-color: #5bc0de;
1389
+ }
1390
+ .label-info[href]:hover,
1391
+ .label-info[href]:focus {
1392
+ background-color: #31b0d5;
1393
+ }
1394
+ .label-warning {
1395
+ background-color: #f0ad4e;
1396
+ }
1397
+ .label-warning[href]:hover,
1398
+ .label-warning[href]:focus {
1399
+ background-color: #ec971f;
1400
+ }
1401
+ .label-danger {
1402
+ background-color: #d9534f;
1403
+ }
1404
+ .label-danger[href]:hover,
1405
+ .label-danger[href]:focus {
1406
+ background-color: #c9302c;
1407
+ }
1408
+ .badge {
1409
+ display: inline-block;
1410
+ min-width: 10px;
1411
+ padding: 3px 7px;
1412
+ font-size: 12px;
1413
+ font-weight: bold;
1414
+ color: #ffffff;
1415
+ line-height: 1;
1416
+ vertical-align: baseline;
1417
+ white-space: nowrap;
1418
+ text-align: center;
1419
+ background-color: #999999;
1420
+ border-radius: 10px;
1421
+ }
1422
+ .badge:empty {
1423
+ display: none;
1424
+ }
1425
+ .btn .badge {
1426
+ position: relative;
1427
+ top: -1px;
1428
+ }
1429
+ .btn-xs .badge {
1430
+ top: 0;
1431
+ padding: 1px 5px;
1432
+ }
1433
+ a.badge:hover,
1434
+ a.badge:focus {
1435
+ color: #ffffff;
1436
+ text-decoration: none;
1437
+ cursor: pointer;
1438
+ }
1439
+ a.list-group-item.active > .badge,
1440
+ .nav-pills > .active > a > .badge {
1441
+ color: #428bca;
1442
+ background-color: #ffffff;
1443
+ }
1444
+ .nav-pills > li > a > .badge {
1445
+ margin-left: 3px;
1446
+ }
1447
+ .panel {
1448
+ margin-bottom: 20px;
1449
+ background-color: #ffffff;
1450
+ border: 1px solid transparent;
1451
+ border-radius: 4px;
1452
+ -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
1453
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
1454
+ }
1455
+ .panel-body {
1456
+ padding: 15px;
1457
+ }
1458
+ .panel-heading {
1459
+ padding: 10px 15px;
1460
+ border-bottom: 1px solid transparent;
1461
+ border-top-right-radius: 3px;
1462
+ border-top-left-radius: 3px;
1463
+ }
1464
+ .panel-heading > .dropdown .dropdown-toggle {
1465
+ color: inherit;
1466
+ }
1467
+ .panel-title {
1468
+ margin-top: 0;
1469
+ margin-bottom: 0;
1470
+ font-size: 16px;
1471
+ color: inherit;
1472
+ }
1473
+ .panel-title > a {
1474
+ color: inherit;
1475
+ }
1476
+ .panel-footer {
1477
+ padding: 10px 15px;
1478
+ background-color: #f5f5f5;
1479
+ border-top: 1px solid #dddddd;
1480
+ border-bottom-right-radius: 3px;
1481
+ border-bottom-left-radius: 3px;
1482
+ }
1483
+ .panel > .list-group {
1484
+ margin-bottom: 0;
1485
+ }
1486
+ .panel > .list-group .list-group-item {
1487
+ border-width: 1px 0;
1488
+ border-radius: 0;
1489
+ }
1490
+ .panel > .list-group:first-child .list-group-item:first-child {
1491
+ border-top: 0;
1492
+ border-top-right-radius: 3px;
1493
+ border-top-left-radius: 3px;
1494
+ }
1495
+ .panel > .list-group:last-child .list-group-item:last-child {
1496
+ border-bottom: 0;
1497
+ border-bottom-right-radius: 3px;
1498
+ border-bottom-left-radius: 3px;
1499
+ }
1500
+ .panel-heading + .list-group .list-group-item:first-child {
1501
+ border-top-width: 0;
1502
+ }
1503
+ .panel > .table,
1504
+ .panel > .table-responsive > .table {
1505
+ margin-bottom: 0;
1506
+ }
1507
+ .panel > .table:first-child,
1508
+ .panel > .table-responsive:first-child > .table:first-child {
1509
+ border-top-right-radius: 3px;
1510
+ border-top-left-radius: 3px;
1511
+ }
1512
+ .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
1513
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
1514
+ .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
1515
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
1516
+ .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
1517
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
1518
+ .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
1519
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
1520
+ border-top-left-radius: 3px;
1521
+ }
1522
+ .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
1523
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
1524
+ .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
1525
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
1526
+ .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
1527
+ .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
1528
+ .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
1529
+ .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
1530
+ border-top-right-radius: 3px;
1531
+ }
1532
+ .panel > .table:last-child,
1533
+ .panel > .table-responsive:last-child > .table:last-child {
1534
+ border-bottom-right-radius: 3px;
1535
+ border-bottom-left-radius: 3px;
1536
+ }
1537
+ .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
1538
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
1539
+ .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
1540
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
1541
+ .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
1542
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
1543
+ .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
1544
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
1545
+ border-bottom-left-radius: 3px;
1546
+ }
1547
+ .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
1548
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
1549
+ .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
1550
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
1551
+ .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
1552
+ .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
1553
+ .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
1554
+ .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
1555
+ border-bottom-right-radius: 3px;
1556
+ }
1557
+ .panel > .panel-body + .table,
1558
+ .panel > .panel-body + .table-responsive {
1559
+ border-top: 1px solid #dddddd;
1560
+ }
1561
+ .panel > .table > tbody:first-child > tr:first-child th,
1562
+ .panel > .table > tbody:first-child > tr:first-child td {
1563
+ border-top: 0;
1564
+ }
1565
+ .panel > .table-bordered,
1566
+ .panel > .table-responsive > .table-bordered {
1567
+ border: 0;
1568
+ }
1569
+ .panel > .table-bordered > thead > tr > th:first-child,
1570
+ .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
1571
+ .panel > .table-bordered > tbody > tr > th:first-child,
1572
+ .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
1573
+ .panel > .table-bordered > tfoot > tr > th:first-child,
1574
+ .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
1575
+ .panel > .table-bordered > thead > tr > td:first-child,
1576
+ .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
1577
+ .panel > .table-bordered > tbody > tr > td:first-child,
1578
+ .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
1579
+ .panel > .table-bordered > tfoot > tr > td:first-child,
1580
+ .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
1581
+ border-left: 0;
1582
+ }
1583
+ .panel > .table-bordered > thead > tr > th:last-child,
1584
+ .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
1585
+ .panel > .table-bordered > tbody > tr > th:last-child,
1586
+ .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
1587
+ .panel > .table-bordered > tfoot > tr > th:last-child,
1588
+ .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
1589
+ .panel > .table-bordered > thead > tr > td:last-child,
1590
+ .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
1591
+ .panel > .table-bordered > tbody > tr > td:last-child,
1592
+ .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
1593
+ .panel > .table-bordered > tfoot > tr > td:last-child,
1594
+ .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
1595
+ border-right: 0;
1596
+ }
1597
+ .panel > .table-bordered > thead > tr:first-child > td,
1598
+ .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
1599
+ .panel > .table-bordered > tbody > tr:first-child > td,
1600
+ .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
1601
+ .panel > .table-bordered > thead > tr:first-child > th,
1602
+ .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
1603
+ .panel > .table-bordered > tbody > tr:first-child > th,
1604
+ .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
1605
+ border-bottom: 0;
1606
+ }
1607
+ .panel > .table-bordered > tbody > tr:last-child > td,
1608
+ .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
1609
+ .panel > .table-bordered > tfoot > tr:last-child > td,
1610
+ .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
1611
+ .panel > .table-bordered > tbody > tr:last-child > th,
1612
+ .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
1613
+ .panel > .table-bordered > tfoot > tr:last-child > th,
1614
+ .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
1615
+ border-bottom: 0;
1616
+ }
1617
+ .panel > .table-responsive {
1618
+ border: 0;
1619
+ margin-bottom: 0;
1620
+ }
1621
+ .panel-group {
1622
+ margin-bottom: 20px;
1623
+ }
1624
+ .panel-group .panel {
1625
+ margin-bottom: 0;
1626
+ border-radius: 4px;
1627
+ overflow: hidden;
1628
+ }
1629
+ .panel-group .panel + .panel {
1630
+ margin-top: 5px;
1631
+ }
1632
+ .panel-group .panel-heading {
1633
+ border-bottom: 0;
1634
+ }
1635
+ .panel-group .panel-heading + .panel-collapse .panel-body {
1636
+ border-top: 1px solid #dddddd;
1637
+ }
1638
+ .panel-group .panel-footer {
1639
+ border-top: 0;
1640
+ }
1641
+ .panel-group .panel-footer + .panel-collapse .panel-body {
1642
+ border-bottom: 1px solid #dddddd;
1643
+ }
1644
+ .panel-default {
1645
+ border-color: #dddddd;
1646
+ }
1647
+ .panel-default > .panel-heading {
1648
+ color: #333333;
1649
+ background-color: #f5f5f5;
1650
+ border-color: #dddddd;
1651
+ }
1652
+ .panel-default > .panel-heading + .panel-collapse .panel-body {
1653
+ border-top-color: #dddddd;
1654
+ }
1655
+ .panel-default > .panel-footer + .panel-collapse .panel-body {
1656
+ border-bottom-color: #dddddd;
1657
+ }
1658
+ .panel-primary {
1659
+ border-color: #428bca;
1660
+ }
1661
+ .panel-primary > .panel-heading {
1662
+ color: #ffffff;
1663
+ background-color: #428bca;
1664
+ border-color: #428bca;
1665
+ }
1666
+ .panel-primary > .panel-heading + .panel-collapse .panel-body {
1667
+ border-top-color: #428bca;
1668
+ }
1669
+ .panel-primary > .panel-footer + .panel-collapse .panel-body {
1670
+ border-bottom-color: #428bca;
1671
+ }
1672
+ .panel-success {
1673
+ border-color: #d6e9c6;
1674
+ }
1675
+ .panel-success > .panel-heading {
1676
+ color: #3c763d;
1677
+ background-color: #dff0d8;
1678
+ border-color: #d6e9c6;
1679
+ }
1680
+ .panel-success > .panel-heading + .panel-collapse .panel-body {
1681
+ border-top-color: #d6e9c6;
1682
+ }
1683
+ .panel-success > .panel-footer + .panel-collapse .panel-body {
1684
+ border-bottom-color: #d6e9c6;
1685
+ }
1686
+ .panel-info {
1687
+ border-color: #bce8f1;
1688
+ }
1689
+ .panel-info > .panel-heading {
1690
+ color: #31708f;
1691
+ background-color: #d9edf7;
1692
+ border-color: #bce8f1;
1693
+ }
1694
+ .panel-info > .panel-heading + .panel-collapse .panel-body {
1695
+ border-top-color: #bce8f1;
1696
+ }
1697
+ .panel-info > .panel-footer + .panel-collapse .panel-body {
1698
+ border-bottom-color: #bce8f1;
1699
+ }
1700
+ .panel-warning {
1701
+ border-color: #faebcc;
1702
+ }
1703
+ .panel-warning > .panel-heading {
1704
+ color: #8a6d3b;
1705
+ background-color: #fcf8e3;
1706
+ border-color: #faebcc;
1707
+ }
1708
+ .panel-warning > .panel-heading + .panel-collapse .panel-body {
1709
+ border-top-color: #faebcc;
1710
+ }
1711
+ .panel-warning > .panel-footer + .panel-collapse .panel-body {
1712
+ border-bottom-color: #faebcc;
1713
+ }
1714
+ .panel-danger {
1715
+ border-color: #ebccd1;
1716
+ }
1717
+ .panel-danger > .panel-heading {
1718
+ color: #a94442;
1719
+ background-color: #f2dede;
1720
+ border-color: #ebccd1;
1721
+ }
1722
+ .panel-danger > .panel-heading + .panel-collapse .panel-body {
1723
+ border-top-color: #ebccd1;
1724
+ }
1725
+ .panel-danger > .panel-footer + .panel-collapse .panel-body {
1726
+ border-bottom-color: #ebccd1;
1727
+ }