summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Hennion <nicolashennion@gmail.com>2023-06-03 18:30:24 +0200
committerGitHub <noreply@github.com>2023-06-03 18:30:24 +0200
commit513e4486fb66e2e1bef5b923a4bdb1879309fe3c (patch)
treef163663f822670a20d40c6891e582607b2e241ce
parente8cf98eebcc3dbbe22dd3588bea226cdb63bf6a3 (diff)
parent344f2ebc5aa109b917e84462188f952d92108e5d (diff)
Merge pull request #2435 from fr4nc0is/1582-smart-plugin
[WebUI] Added smart plugin support
-rw-r--r--glances/outputs/static/css/style.scss6
-rw-r--r--glances/outputs/static/js/App.vue16
-rw-r--r--glances/outputs/static/js/components/plugin-containers.vue48
-rw-r--r--glances/outputs/static/js/components/plugin-now.vue6
-rw-r--r--glances/outputs/static/js/components/plugin-smart.vue50
-rw-r--r--glances/outputs/static/public/glances.js6
6 files changed, 102 insertions, 30 deletions
diff --git a/glances/outputs/static/css/style.scss b/glances/outputs/static/css/style.scss
index ba76e0b5..2feafa6f 100644
--- a/glances/outputs/static/css/style.scss
+++ b/glances/outputs/static/css/style.scss
@@ -50,6 +50,12 @@ body {
.text-left {
text-align: left;
}
+.text-truncate {
+ display: block;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
.sidebar .table-cell:not(.text-left) {
padding-left: 10px;
}
diff --git a/glances/outputs/static/js/App.vue b/glances/outputs/static/js/App.vue
index c6c7cfbc..5129633e 100644
--- a/glances/outputs/static/js/App.vue
+++ b/glances/outputs/static/js/App.vue
@@ -102,9 +102,15 @@
<glances-plugin-irq
id="plugin-irq"
class="plugin table-row-group"
- v-if="args.enable_irq"
+ v-if="!args.disable_irq"
:data="data"
></glances-plugin-irq>
+ <glances-plugin-smart
+ id="plugin-smart"
+ class="plugin table-row-group"
+ v-if="!args.disable_smart"
+ :data="data"
+ ></glances-plugin-smart>
<glances-plugin-folders
id="plugin-folders"
class="plugin table-row-group"
@@ -123,7 +129,11 @@
v-if="!args.disable_sensors"
:data="data"
></glances-plugin-sensors>
- <glances-plugin-now :data="data"></glances-plugin-now>
+ <glances-plugin-now
+ id="plugin-now"
+ class="plugin table-row-group"
+ :data="data"
+ ></glances-plugin-now>
</div>
</div>
<div class="col-sm-18">
@@ -170,6 +180,7 @@ import GlancesPluginPorts from './components/plugin-ports.vue';
import GlancesPluginProcess from './components/plugin-process.vue';
import GlancesPluginQuicklook from './components/plugin-quicklook.vue';
import GlancesPluginRaid from './components/plugin-raid.vue';
+import GlancesPluginSmart from './components/plugin-smart.vue';
import GlancesPluginSensors from './components/plugin-sensors.vue';
import GlancesPluginSystem from './components/plugin-system.vue';
import GlancesPluginUptime from './components/plugin-uptime.vue';
@@ -201,6 +212,7 @@ export default {
GlancesPluginQuicklook,
GlancesPluginRaid,
GlancesPluginSensors,
+ GlancesPluginSmart,
GlancesPluginSystem,
GlancesPluginUptime,
GlancesPluginWifi
diff --git a/glances/outputs/static/js/components/plugin-containers.vue b/glances/outputs/static/js/components/plugin-containers.vue
index 10099ccc..bc8afbac 100644
--- a/glances/outputs/static/js/components/plugin-containers.vue
+++ b/glances/outputs/static/js/components/plugin-containers.vue
@@ -107,28 +107,30 @@ export default {
},
containers() {
const { sorter } = this;
- const containers = (this.stats.containers || []).map((containerData) => {
- // prettier-ignore
- return {
- 'id': containerData.Id,
- 'name': containerData.name,
- 'status': containerData.Status,
- 'uptime': containerData.Uptime,
- 'cpu_percent': containerData.cpu.total,
- 'memory_usage': containerData.memory.usage != undefined ? containerData.memory.usage : '?',
- 'limit': containerData.memory.limit != undefined ? containerData.memory.limit : '?',
- 'ior': containerData.io.ior != undefined ? containerData.io.ior : '?',
- 'iow': containerData.io.iow != undefined ? containerData.io.iow : '?',
- 'io_time_since_update': containerData.io.time_since_update,
- 'rx': containerData.network.rx != undefined ? containerData.network.rx : '?',
- 'tx': containerData.network.tx != undefined ? containerData.network.tx : '?',
- 'net_time_since_update': containerData.network.time_since_update,
- 'command': containerData.Command.join(' '),
- 'image': containerData.Image,
- 'engine': containerData.engine,
- 'pod_id': containerData.pod_id
- };
- });
+ const containers = ((this.stats && this.stats.containers) || []).map(
+ (containerData) => {
+ // prettier-ignore
+ return {
+ 'id': containerData.Id,
+ 'name': containerData.name,
+ 'status': containerData.Status,
+ 'uptime': containerData.Uptime,
+ 'cpu_percent': containerData.cpu.total,
+ 'memory_usage': containerData.memory.usage != undefined ? containerData.memory.usage : '?',
+ 'limit': containerData.memory.limit != undefined ? containerData.memory.limit : '?',
+ 'ior': containerData.io.ior != undefined ? containerData.io.ior : '?',
+ 'iow': containerData.io.iow != undefined ? containerData.io.iow : '?',
+ 'io_time_since_update': containerData.io.time_since_update,
+ 'rx': containerData.network.rx != undefined ? containerData.network.rx : '?',
+ 'tx': containerData.network.tx != undefined ? containerData.network.tx : '?',
+ 'net_time_since_update': containerData.network.time_since_update,
+ 'command': containerData.Command.join(' '),
+ 'image': containerData.Image,
+ 'engine': containerData.engine,
+ 'pod_id': containerData.pod_id
+ };
+ }
+ );
return orderBy(
containers,
[sorter.column].reduce((retval, col) => {
@@ -172,4 +174,4 @@ export default {
}
}
};
-</script> \ No newline at end of file
+</script>
diff --git a/glances/outputs/static/js/components/plugin-now.vue b/glances/outputs/static/js/components/plugin-now.vue
index f35688c5..e6b532cf 100644
--- a/glances/outputs/static/js/components/plugin-now.vue
+++ b/glances/outputs/static/js/components/plugin-now.vue
@@ -1,6 +1,8 @@
<template>
<section id="now" class="plugin">
- <span>{{ value }}</span>
+ <div class="table-row">
+ <div class="table-cell text-left">{{ value }}</div>
+ </div>
</section>
</template>
@@ -17,4 +19,4 @@ export default {
}
}
};
-</script> \ No newline at end of file
+</script>
diff --git a/glances/outputs/static/js/components/plugin-smart.vue b/glances/outputs/static/js/components/plugin-smart.vue
new file mode 100644
index 00000000..7753da44
--- /dev/null
+++ b/glances/outputs/static/js/components/plugin-smart.vue
@@ -0,0 +1,50 @@
+<template>
+ <section id="smart" class="plugin">
+ <div class="table-row">
+ <div class="table-cell text-left title">SMART disks</div>
+ <div class="table-cell"></div>
+ <div class="table-cell"></div>
+ </div>
+ <template v-for="(drive, driveId) in drives" :key="driveId">
+ <div class="table-row">
+ <div class="table-cell text-left text-truncate">{{ drive.name }}</div>
+ <div class="table-cell"></div>
+ <div class="table-cell"></div>
+ </div>
+ <template v-for="(metric, metricId) in drive.details" :key="metricId">
+ <div class="table-row">
+ <div class="table-cell text-left">&nbsp;&nbsp;{{ metric.name }}</div>
+ <div class="table-cell"></div>
+ <div class="table-cell text-truncate">
+ <span>{{ metric.raw }}</span>
+ </div>
+ </div>
+ </template>
+ </template>
+ </section>
+</template>
+
+<script>
+export default {
+ props: {
+ data: {
+ type: Object
+ }
+ },
+ computed: {
+ stats() {
+ return this.data.stats['smart'];
+ },
+ drives() {
+ return (Array.isArray(this.stats) ? this.stats : []).map((data) => {
+ const name = data.DeviceName;
+ const details = Object.entries(data)
+ .filter(([key]) => key !== 'DeviceName')
+ .sort(([, a], [, b]) => (a.name < b.name ? -1 : a.name > b.name ? 1 : 0))
+ .map(([prop, value]) => value);
+ return { name, details };
+ });
+ }
+ }
+};
+</script>
diff --git a/glances/outputs/static/public/glances.js b/glances/outputs/static/public/glances.js
index c15be011..47269478 100644
--- a/glances/outputs/static/public/glances.js
+++ b/glances/outputs/static/public/glances.js
@@ -1,4 +1,4 @@
-(()=>{var e={895:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(8081),i=n.n(r),s=n(3645),o=n.n(s)()(i());o.push([e.id,'/*!\n * Bootstrap v3.3.7 (http://getbootstrap.com)\n * Copyright 2011-2016 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type="button"],\ninput[type="reset"],\ninput[type="submit"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type="checkbox"],\ninput[type="radio"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type="number"]::-webkit-inner-spin-button,\ninput[type="number"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type="search"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type="search"]::-webkit-search-cancel-button,\ninput[type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role="button"] {\n cursor: pointer;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*="col-"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12,\n.col-xs-13,\n.col-sm-13,\n.col-md-13,\n.col-lg-13,\n.col-xs-14,\n.col-sm-14,\n.col-md-14,\n.col-lg-14,\n.col-xs-15,\n.col-sm-15,\n.col-md-15,\n.col-lg-15,\n.col-xs-16,\n.col-sm-16,\n.col-md-16,\n.col-lg-16,\n.col-xs-17,\n.col-sm-17,\n.col-md-17,\n.col-lg-17,\n.col-xs-18,\n.col-sm-18,\n.col-md-18,\n.col-lg-18,\n.col-xs-19,\n.col-sm-19,\n.col-md-19,\n.col-lg-19,\n.col-xs-20,\n.col-sm-20,\n.col-md-20,\n.col-lg-20,\n.col-xs-21,\n.col-sm-21,\n.col-md-21,\n.col-lg-21,\n.col-xs-22,\n.col-sm-22,\n.col-md-22,\n.col-lg-22,\n.col-xs-23,\n.col-sm-23,\n.col-md-23,\n.col-lg-23,\n.col-xs-24,\n.col-sm-24,\n.col-md-24,\n.col-lg-24 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12,\n.col-xs-13,\n.col-xs-14,\n.col-xs-15,\n.col-xs-16,\n.col-xs-17,\n.col-xs-18,\n.col-xs-19,\n.col-xs-20,\n.col-xs-21,\n.col-xs-22,\n.col-xs-23,\n.col-xs-24 {\n float: left;\n}\n.col-xs-24 {\n width: 100%;\n}\n.col-xs-23 {\n width: 95.83333333%;\n}\n.col-xs-22 {\n width: 91.66666667%;\n}\n.col-xs-21 {\n width: 87.5%;\n}\n.col-xs-20 {\n width: 83.33333333%;\n}\n.col-xs-19 {\n width: 79.16666667%;\n}\n.col-xs-18 {\n width: 75%;\n}\n.col-xs-17 {\n width: 70.83333333%;\n}\n.col-xs-16 {\n width: 66.66666667%;\n}\n.col-xs-15 {\n width: 62.5%;\n}\n.col-xs-14 {\n width: 58.33333333%;\n}\n.col-xs-13 {\n width: 54.16666667%;\n}\n.col-xs-12 {\n width: 50%;\n}\n.col-xs-11 {\n width: 45.83333333%;\n}\n.col-xs-10 {\n width: 41.66666667%;\n}\n.col-xs-9 {\n width: 37.5%;\n}\n.col-xs-8 {\n width: 33.33333333%;\n}\n.col-xs-7 {\n width: 29.16666667%;\n}\n.col-xs-6 {\n width: 25%;\n}\n.col-xs-5 {\n width: 20.83333333%;\n}\n.col-xs-4 {\n width: 16.66666667%;\n}\n.col-xs-3 {\n width: 12.5%;\n}\n.col-xs-2 {\n width: 8.33333333%;\n}\n.col-xs-1 {\n width: 4.16666667%;\n}\n.col-xs-pull-24 {\n right: 100%;\n}\n.col-xs-pull-23 {\n right: 95.83333333%;\n}\n.col-xs-pull-22 {\n right: 91.66666667%;\n}\n.col-xs-pull-21 {\n right: 87.5%;\n}\n.col-xs-pull-20 {\n right: 83.33333333%;\n}\n.col-xs-pull-19 {\n right: 79.16666667%;\n}\n.col-xs-pull-18 {\n right: 75%;\n}\n.col-xs-pull-17 {\n right: 70.83333333%;\n}\n.col-xs-pull-16 {\n right: 66.66666667%;\n}\n.col-xs-pull-15 {\n right: 62.5%;\n}\n.col-xs-pull-14 {\n right: 58.33333333%;\n}\n.col-xs-pull-13 {\n right: 54.16666667%;\n}\n.col-xs-pull-12 {\n right: 50%;\n}\n.col-xs-pull-11 {\n right: 45.83333333%;\n}\n.col-xs-pull-10 {\n right: 41.66666667%;\n}\n.col-xs-pull-9 {\n right: 37.5%;\n}\n.col-xs-pull-8 {\n right: 33.33333333%;\n}\n.col-xs-pull-7 {\n right: 29.16666667%;\n}\n.col-xs-pull-6 {\n right: 25%;\n}\n.col-xs-pull-5 {\n right: 20.83333333%;\n}\n.col-xs-pull-4 {\n right: 16.66666667%;\n}\n.col-xs-pull-3 {\n right: 12.5%;\n}\n.col-xs-pull-2 {\n right: 8.33333333%;\n}\n.col-xs-pull-1 {\n right: 4.16666667%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-24 {\n left: 100%;\n}\n.col-xs-push-23 {\n left: 95.83333333%;\n}\n.col-xs-push-22 {\n left: 91.66666667%;\n}\n.col-xs-push-21 {\n left: 87.5%;\n}\n.col-xs-push-20 {\n left: 83.33333333%;\n}\n.col-xs-push-19 {\n left: 79.16666667%;\n}\n.col-xs-push-18 {\n left: 75%;\n}\n.col-xs-push-17 {\n left: 70.83333333%;\n}\n.col-xs-push-16 {\n left: 66.66666667%;\n}\n.col-xs-push-15 {\n left: 62.5%;\n}\n.col-xs-push-14 {\n left: 58.33333333%;\n}\n.col-xs-push-13 {\n left: 54.16666667%;\n}\n.col-xs-push-12 {\n left: 50%;\n}\n.col-xs-push-11 {\n left: 45.83333333%;\n}\n.col-xs-push-10 {\n left: 41.66666667%;\n}\n.col-xs-push-9 {\n left: 37.5%;\n}\n.col-xs-push-8 {\n left: 33.33333333%;\n}\n.col-xs-push-7 {\n left: 29.16666667%;\n}\n.col-xs-push-6 {\n left: 25%;\n}\n.col-xs-push-5 {\n left: 20.83333333%;\n}\n.col-xs-push-4 {\n left: 16.66666667%;\n}\n.col-xs-push-3 {\n left: 12.5%;\n}\n.col-xs-push-2 {\n left: 8.33333333%;\n}\n.col-xs-push-1 {\n left: 4.16666667%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-24 {\n margin-left: 100%;\n}\n.col-xs-offset-23 {\n margin-left: 95.83333333%;\n}\n.col-xs-offset-22 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-21 {\n margin-left: 87.5%;\n}\n.col-xs-offset-20 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-19 {\n margin-left: 79.16666667%;\n}\n.col-xs-offset-18 {\n margin-left: 75%;\n}\n.col-xs-offset-17 {\n margin-left: 70.83333333%;\n}\n.col-xs-offset-16 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-15 {\n margin-left: 62.5%;\n}\n.col-xs-offset-14 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-13 {\n margin-left: 54.16666667%;\n}\n.col-xs-offset-12 {\n margin-left: 50%;\n}\n.col-xs-offset-11 {\n margin-left: 45.83333333%;\n}\n.col-xs-offset-10 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-9 {\n margin-left: 37.5%;\n}\n.col-xs-offset-8 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-7 {\n margin-left: 29.16666667%;\n}\n.col-xs-offset-6 {\n margin-left: 25%;\n}\n.col-xs-offset-5 {\n margin-left: 20.83333333%;\n}\n.col-xs-offset-4 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-3 {\n margin-left: 12.5%;\n}\n.col-xs-offset-2 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-1 {\n margin-left: 4.16666667%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12,\n .col-sm-13,\n .col-sm-14,\n .col-sm-15,\n .col-sm-16,\n .col-sm-17,\n .col-sm-18,\n .col-sm-19,\n .col-sm-20,\n .col-sm-21,\n .col-sm-22,\n .col-sm-23,\n .col-sm-24 {\n float: left;\n }\n .col-sm-24 {\n width: 100%;\n }\n .col-sm-23 {\n width: 95.83333333%;\n }\n .col-sm-22 {\n width: 91.66666667%;\n }\n .col-sm-21 {\n width: 87.5%;\n }\n .col-sm-20 {\n width: 83.33333333%;\n }\n .col-sm-19 {\n width: 79.16666667%;\n }\n .col-sm-18 {\n width: 75%;\n }\n .col-sm-17 {\n width: 70.83333333%;\n }\n .col-sm-16 {\n width: 66.66666667%;\n }\n .col-sm-15 {\n width: 62.5%;\n }\n .col-sm-14 {\n width: 58.33333333%;\n }\n .col-sm-13 {\n width: 54.16666667%;\n }\n .col-sm-12 {\n width: 50%;\n }\n .col-sm-11 {\n width: 45.83333333%;\n }\n .col-sm-10 {\n width: 41.66666667%;\n }\n .col-sm-9 {\n width: 37.5%;\n }\n .col-sm-8 {\n width: 33.33333333%;\n }\n .col-sm-7 {\n width: 29.16666667%;\n }\n .col-sm-6 {\n width: 25%;\n }\n .col-sm-5 {\n width: 20.83333333%;\n }\n .col-sm-4 {\n width: 16.66666667%;\n }\n .col-sm-3 {\n width: 12.5%;\n }\n .col-sm-2 {\n width: 8.33333333%;\n }\n .col-sm-1 {\n width: 4.16666667%;\n }\n .col-sm-pull-24 {\n right: 100%;\n }\n .col-sm-pull-23 {\n right: 95.83333333%;\n }\n .col-sm-pull-22 {\n right: 91.66666667%;\n }\n .col-sm-pull-21 {\n right: 87.5%;\n }\n .col-sm-pull-20 {\n right: 83.33333333%;\n }\n .col-sm-pull-19 {\n right: 79.16666667%;\n }\n .col-sm-pull-18 {\n right: 75%;\n }\n .col-sm-pull-17 {\n right: 70.83333333%;\n }\n .col-sm-pull-16 {\n right: 66.66666667%;\n }\n .col-sm-pull-15 {\n right: 62.5%;\n }\n .col-sm-pull-14 {\n right: 58.33333333%;\n }\n .col-sm-pull-13 {\n right: 54.16666667%;\n }\n .col-sm-pull-12 {\n right: 50%;\n }\n .col-sm-pull-11 {\n right: 45.83333333%;\n }\n .col-sm-pull-10 {\n right: 41.66666667%;\n }\n .col-sm-pull-9 {\n right: 37.5%;\n }\n .col-sm-pull-8 {\n right: 33.33333333%;\n }\n .col-sm-pull-7 {\n right: 29.16666667%;\n }\n .col-sm-pull-6 {\n right: 25%;\n }\n .col-sm-pull-5 {\n right: 20.83333333%;\n }\n .col-sm-pull-4 {\n right: 16.66666667%;\n }\n .col-sm-pull-3 {\n right: 12.5%;\n }\n .col-sm-pull-2 {\n right: 8.33333333%;\n }\n .col-sm-pull-1 {\n right: 4.16666667%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-24 {\n left: 100%;\n }\n .col-sm-push-23 {\n left: 95.83333333%;\n }\n .col-sm-push-22 {\n left: 91.66666667%;\n }\n .col-sm-push-21 {\n left: 87.5%;\n }\n .col-sm-push-20 {\n left: 83.33333333%;\n }\n .col-sm-push-19 {\n left: 79.16666667%;\n }\n .col-sm-push-18 {\n left: 75%;\n }\n .col-sm-push-17 {\n left: 70.83333333%;\n }\n .col-sm-push-16 {\n left: 66.66666667%;\n }\n .col-sm-push-15 {\n left: 62.5%;\n }\n .col-sm-push-14 {\n left: 58.33333333%;\n }\n .col-sm-push-13 {\n left: 54.16666667%;\n }\n .col-sm-push-12 {\n left: 50%;\n }\n .col-sm-push-11 {\n left: 45.83333333%;\n }\n .col-sm-push-10 {\n left: 41.66666667%;\n }\n .col-sm-push-9 {\n left: 37.5%;\n }\n .col-sm-push-8 {\n left: 33.33333333%;\n }\n .col-sm-push-7 {\n left: 29.16666667%;\n }\n .col-sm-push-6 {\n left: 25%;\n }\n .col-sm-push-5 {\n left: 20.83333333%;\n }\n .col-sm-push-4 {\n left: 16.66666667%;\n }\n .col-sm-push-3 {\n left: 12.5%;\n }\n .col-sm-push-2 {\n left: 8.33333333%;\n }\n .col-sm-push-1 {\n left: 4.16666667%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-24 {\n margin-left: 100%;\n }\n .col-sm-offset-23 {\n margin-left: 95.83333333%;\n }\n .col-sm-offset-22 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-21 {\n margin-left: 87.5%;\n }\n .col-sm-offset-20 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-19 {\n margin-left: 79.16666667%;\n }\n .col-sm-offset-18 {\n margin-left: 75%;\n }\n .col-sm-offset-17 {\n margin-left: 70.83333333%;\n }\n .col-sm-offset-16 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-15 {\n margin-left: 62.5%;\n }\n .col-sm-offset-14 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-13 {\n margin-left: 54.16666667%;\n }\n .col-sm-offset-12 {\n margin-left: 50%;\n }\n .col-sm-offset-11 {\n margin-left: 45.83333333%;\n }\n .col-sm-offset-10 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-9 {\n margin-left: 37.5%;\n }\n .col-sm-offset-8 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-7 {\n margin-left: 29.16666667%;\n }\n .col-sm-offset-6 {\n margin-left: 25%;\n }\n .col-sm-offset-5 {\n margin-left: 20.83333333%;\n }\n .col-sm-offset-4 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-3 {\n margin-left: 12.5%;\n }\n .col-sm-offset-2 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-1 {\n margin-left: 4.16666667%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12,\n .col-md-13,\n .col-md-14,\n .col-md-15,\n .col-md-16,\n .col-md-17,\n .col-md-18,\n .col-md-19,\n .col-md-20,\n .col-md-21,\n .col-md-22,\n .col-md-23,\n .col-md-24 {\n float: left;\n }\n .col-md-24 {\n width: 100%;\n }\n .col-md-23 {\n width: 95.83333333%;\n }\n .col-md-22 {\n width: 91.66666667%;\n }\n .col-md-21 {\n width: 87.5%;\n }\n .col-md-20 {\n width: 83.33333333%;\n }\n .col-md-19 {\n width: 79.16666667%;\n }\n .col-md-18 {\n width: 75%;\n }\n .col-md-17 {\n width: 70.83333333%;\n }\n .col-md-16 {\n width: 66.66666667%;\n }\n .col-md-15 {\n width: 62.5%;\n }\n .col-md-14 {\n width: 58.33333333%;\n }\n .col-md-13 {\n width: 54.16666667%;\n }\n .col-md-12 {\n width: 50%;\n }\n .col-md-11 {\n width: 45.83333333%;\n }\n .col-md-10 {\n width: 41.66666667%;\n }\n .col-md-9 {\n width: 37.5%;\n }\n .col-md-8 {\n width: 33.33333333%;\n }\n .col-md-7 {\n width: 29.16666667%;\n }\n .col-md-6 {\n width: 25%;\n }\n .col-md-5 {\n width: 20.83333333%;\n }\n .col-md-4 {\n width: 16.66666667%;\n }\n .col-md-3 {\n width: 12.5%;\n }\n .col-md-2 {\n width: 8.33333333%;\n }\n .col-md-1 {\n width: 4.16666667%;\n }\n .col-md-pull-24 {\n right: 100%;\n }\n .col-md-pull-23 {\n right: 95.83333333%;\n }\n .col-md-pull-22 {\n right: 91.66666667%;\n }\n .col-md-pull-21 {\n right: 87.5%;\n }\n .col-md-pull-20 {\n right: 83.33333333%;\n }\n .col-md-pull-19 {\n right: 79.16666667%;\n }\n .col-md-pull-18 {\n right: 75%;\n }\n .col-md-pull-17 {\n right: 70.83333333%;\n }\n .col-md-pull-16 {\n right: 66.66666667%;\n }\n .col-md-pull-15 {\n right: 62.5%;\n }\n .col-md-pull-14 {\n right: 58.33333333%;\n }\n .col-md-pull-13 {\n right: 54.16666667%;\n }\n .col-md-pull-12 {\n right: 50%;\n }\n .col-md-pull-11 {\n right: 45.83333333%;\n }\n .col-md-pull-10 {\n right: 41.66666667%;\n }\n .col-md-pull-9 {\n right: 37.5%;\n }\n .col-md-pull-8 {\n right: 33.33333333%;\n }\n .col-md-pull-7 {\n right: 29.16666667%;\n }\n .col-md-pull-6 {\n right: 25%;\n }\n .col-md-pull-5 {\n right: 20.83333333%;\n }\n .col-md-pull-4 {\n right: 16.66666667%;\n }\n .col-md-pull-3 {\n right: 12.5%;\n }\n .col-md-pull-2 {\n right: 8.33333333%;\n }\n .col-md-pull-1 {\n right: 4.16666667%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-24 {\n left: 100%;\n }\n .col-md-push-23 {\n left: 95.83333333%;\n }\n .col-md-push-22 {\n left: 91.66666667%;\n }\n .col-md-push-21 {\n left: 87.5%;\n }\n .col-md-push-20 {\n left: 83.33333333%;\n }\n .col-md-push-19 {\n left: 79.16666667%;\n }\n .col-md-push-18 {\n left: 75%;\n }\n .col-md-push-17 {\n left: 70.83333333%;\n }\n .col-md-push-16 {\n left: 66.66666667%;\n }\n .col-md-push-15 {\n left: 62.5%;\n }\n .col-md-push-14 {\n left: 58.33333333%;\n }\n .col-md-push-13 {\n left: 54.16666667%;\n }\n .col-md-push-12 {\n left: 50%;\n }\n .col-md-push-11 {\n left: 45.83333333%;\n }\n .col-md-push-10 {\n left: 41.66666667%;\n }\n .col-md-push-9 {\n left: 37.5%;\n }\n .col-md-push-8 {\n left: 33.33333333%;\n }\n .col-md-push-7 {\n left: 29.16666667%;\n }\n .col-md-push-6 {\n left: 25%;\n }\n .col-md-push-5 {\n left: 20.83333333%;\n }\n .col-md-push-4 {\n left: 16.66666667%;\n }\n .col-md-push-3 {\n left: 12.5%;\n }\n .col-md-push-2 {\n left: 8.33333333%;\n }\n .col-md-push-1 {\n left: 4.16666667%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-24 {\n margin-left: 100%;\n }\n .col-md-offset-23 {\n margin-left: 95.83333333%;\n }\n .col-md-offset-22 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-21 {\n margin-left: 87.5%;\n }\n .col-md-offset-20 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-19 {\n margin-left: 79.16666667%;\n }\n .col-md-offset-18 {\n margin-left: 75%;\n }\n .col-md-offset-17 {\n margin-left: 70.83333333%;\n }\n .col-md-offset-16 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-15 {\n margin-left: 62.5%;\n }\n .col-md-offset-14 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-13 {\n margin-left: 54.16666667%;\n }\n .col-md-offset-12 {\n margin-left: 50%;\n }\n .col-md-offset-11 {\n margin-left: 45.83333333%;\n }\n .col-md-offset-10 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-9 {\n margin-left: 37.5%;\n }\n .col-md-offset-8 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-7 {\n margin-left: 29.16666667%;\n }\n .col-md-offset-6 {\n margin-left: 25%;\n }\n .col-md-offset-5 {\n margin-left: 20.83333333%;\n }\n .col-md-offset-4 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-3 {\n margin-left: 12.5%;\n }\n .col-md-offset-2 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-1 {\n margin-left: 4.16666667%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12,\n .col-lg-13,\n .col-lg-14,\n .col-lg-15,\n .col-lg-16,\n .col-lg-17,\n .col-lg-18,\n .col-lg-19,\n .col-lg-20,\n .col-lg-21,\n .col-lg-22,\n .col-lg-23,\n .col-lg-24 {\n float: left;\n }\n .col-lg-24 {\n width: 100%;\n }\n .col-lg-23 {\n width: 95.83333333%;\n }\n .col-lg-22 {\n width: 91.66666667%;\n }\n .col-lg-21 {\n width: 87.5%;\n }\n .col-lg-20 {\n width: 83.33333333%;\n }\n .col-lg-19 {\n width: 79.16666667%;\n }\n .col-lg-18 {\n width: 75%;\n }\n .col-lg-17 {\n width: 70.83333333%;\n }\n .col-lg-16 {\n width: 66.66666667%;\n }\n .col-lg-15 {\n width: 62.5%;\n }\n .col-lg-14 {\n width: 58.33333333%;\n }\n .col-lg-13 {\n width: 54.16666667%;\n }\n .col-lg-12 {\n width: 50%;\n }\n .col-lg-11 {\n width: 45.83333333%;\n }\n .col-lg-10 {\n width: 41.66666667%;\n }\n .col-lg-9 {\n width: 37.5%;\n }\n .col-lg-8 {\n width: 33.33333333%;\n }\n .col-lg-7 {\n width: 29.16666667%;\n }\n .col-lg-6 {\n width: 25%;\n }\n .col-lg-5 {\n width: 20.83333333%;\n }\n .col-lg-4 {\n width: 16.66666667%;\n }\n .col-lg-3 {\n width: 12.5%;\n }\n .col-lg-2 {\n width: 8.33333333%;\n }\n .col-lg-1 {\n width: 4.16666667%;\n }\n .col-lg-pull-24 {\n right: 100%;\n }\n .col-lg-pull-23 {\n right: 95.83333333%;\n }\n .col-lg-pull-22 {\n right: 91.66666667%;\n }\n .col-lg-pull-21 {\n right: 87.5%;\n }\n .col-lg-pull-20 {\n right: 83.33333333%;\n }\n .col-lg-pull-19 {\n right: 79.16666667%;\n }\n .col-lg-pull-18 {\n right: 75%;\n }\n .col-lg-pull-17 {\n right: 70.83333333%;\n }\n .col-lg-pull-16 {\n right: 66.66666667%;\n }\n .col-lg-pull-15 {\n right: 62.5%;\n }\n .col-lg-pull-14 {\n right: 58.33333333%;\n }\n .col-lg-pull-13 {\n right: 54.16666667%;\n }\n .col-lg-pull-12 {\n right: 50%;\n }\n .col-lg-pull-11 {\n right: 45.83333333%;\n }\n .col-lg-pull-10 {\n right: 41.66666667%;\n }\n .col-lg-pull-9 {\n right: 37.5%;\n }\n .col-lg-pull-8 {\n right: 33.33333333%;\n }\n .col-lg-pull-7 {\n right: 29.16666667%;\n }\n .col-lg-pull-6 {\n right: 25%;\n }\n .col-lg-pull-5 {\n right: 20.83333333%;\n }\n .col-lg-pull-4 {\n right: 16.66666667%;\n }\n .col-lg-pull-3 {\n right: 12.5%;\n }\n .col-lg-pull-2 {\n right: 8.33333333%;\n }\n .col-lg-pull-1 {\n right: 4.16666667%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-24 {\n left: 100%;\n }\n .col-lg-push-23 {\n left: 95.83333333%;\n }\n .col-lg-push-22 {\n left: 91.66666667%;\n }\n .col-lg-push-21 {\n left: 87.5%;\n }\n .col-lg-push-20 {\n left: 83.33333333%;\n }\n .col-lg-push-19 {\n left: 79.16666667%;\n }\n .col-lg-push-18 {\n left: 75%;\n }\n .col-lg-push-17 {\n left: 70.83333333%;\n }\n .col-lg-push-16 {\n left: 66.66666667%;\n }\n .col-lg-push-15 {\n left: 62.5%;\n }\n .col-lg-push-14 {\n left: 58.33333333%;\n }\n .col-lg-push-13 {\n left: 54.16666667%;\n }\n .col-lg-push-12 {\n left: 50%;\n }\n .col-lg-push-11 {\n left: 45.83333333%;\n }\n .col-lg-push-10 {\n left: 41.66666667%;\n }\n .col-lg-push-9 {\n left: 37.5%;\n }\n .col-lg-push-8 {\n left: 33.33333333%;\n }\n .col-lg-push-7 {\n left: 29.16666667%;\n }\n .col-lg-push-6 {\n left: 25%;\n }\n .col-lg-push-5 {\n left: 20.83333333%;\n }\n .col-lg-push-4 {\n left: 16.66666667%;\n }\n .col-lg-push-3 {\n left: 12.5%;\n }\n .col-lg-push-2 {\n left: 8.33333333%;\n }\n .col-lg-push-1 {\n left: 4.16666667%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-24 {\n margin-left: 100%;\n }\n .col-lg-offset-23 {\n margin-left: 95.83333333%;\n }\n .col-lg-offset-22 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-21 {\n margin-left: 87.5%;\n }\n .col-lg-offset-20 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-19 {\n margin-left: 79.16666667%;\n }\n .col-lg-offset-18 {\n margin-left: 75%;\n }\n .col-lg-offset-17 {\n margin-left: 70.83333333%;\n }\n .col-lg-offset-16 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-15 {\n margin-left: 62.5%;\n }\n .col-lg-offset-14 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-13 {\n margin-left: 54.16666667%;\n }\n .col-lg-offset-12 {\n margin-left: 50%;\n }\n .col-lg-offset-11 {\n margin-left: 45.83333333%;\n }\n .col-lg-offset-10 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-9 {\n margin-left: 37.5%;\n }\n .col-lg-offset-8 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-7 {\n margin-left: 29.16666667%;\n }\n .col-lg-offset-6 {\n margin-left: 25%;\n }\n .col-lg-offset-5 {\n margin-left: 20.83333333%;\n }\n .col-lg-offset-4 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-3 {\n margin-left: 12.5%;\n }\n .col-lg-offset-2 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-1 {\n margin-left: 4.16666667%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*="col-"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*="col-"],\ntable th[class*="col-"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\n@-webkit-keyframes progress-bar