From a454a4aac5265bbd6dedd01dc5e94a4282972065 Mon Sep 17 00:00:00 2001 From: Milan Toman Date: Thu, 22 Aug 2019 19:24:35 +0200 Subject: [PATCH] working project, maybe --- doc/Makefile | 19 + doc/build/doctrees/environment.pickle | Bin 0 -> 1652990 bytes doc/build/doctrees/examples.doctree | Bin 0 -> 32807 bytes doc/build/doctrees/index.doctree | Bin 0 -> 14692 bytes doc/build/doctrees/introduction.doctree | Bin 0 -> 40692 bytes doc/build/html/.buildinfo | 4 + doc/build/html/.nojekyll | 0 doc/build/html/_modules/chttpd.html | 253 + doc/build/html/_modules/config.html | 374 + doc/build/html/_modules/dynamic.html | 877 ++ doc/build/html/_modules/index.html | 191 + doc/build/html/_modules/modules/dynamic.html | 840 ++ doc/build/html/_sources/examples.rst.txt | 31 + doc/build/html/_sources/index.rst.txt | 78 + doc/build/html/_sources/introduction.rst.txt | 134 + doc/build/html/_static/ajax-loader.gif | Bin 0 -> 673 bytes doc/build/html/_static/alabaster.css | 701 ++ doc/build/html/_static/basic.css | 676 + .../css/bootstrap-responsive.css | 1109 ++ .../css/bootstrap-responsive.min.css | 9 + .../_static/bootstrap-2.3.2/css/bootstrap.css | 6167 ++++++++++ .../bootstrap-2.3.2/css/bootstrap.min.css | 9 + .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../img/glyphicons-halflings.png | Bin 0 -> 12799 bytes .../_static/bootstrap-2.3.2/js/bootstrap.js | 2287 ++++ .../bootstrap-2.3.2/js/bootstrap.min.js | 6 + .../bootstrap-3.3.7/css/bootstrap-theme.css | 587 + .../css/bootstrap-theme.css.map | 1 + .../css/bootstrap-theme.min.css | 6 + .../css/bootstrap-theme.min.css.map | 1 + .../_static/bootstrap-3.3.7/css/bootstrap.css | 6757 ++++++++++ .../bootstrap-3.3.7/css/bootstrap.css.map | 1 + .../bootstrap-3.3.7/css/bootstrap.min.css | 6 + .../bootstrap-3.3.7/css/bootstrap.min.css.map | 1 + .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../_static/bootstrap-3.3.7/js/bootstrap.js | 2377 ++++ .../bootstrap-3.3.7/js/bootstrap.min.js | 7 + .../html/_static/bootstrap-3.3.7/js/npm.js | 13 + doc/build/html/_static/bootstrap-sphinx.css | 221 + doc/build/html/_static/bootstrap-sphinx.js | 175 + .../bootswatch-2.3.2/amelia/bootstrap.min.css | 9 + .../cerulean/bootstrap.min.css | 9 + .../bootswatch-2.3.2/cosmo/bootstrap.min.css | 9 + .../bootswatch-2.3.2/cyborg/bootstrap.min.css | 9 + .../bootswatch-2.3.2/flatly/bootstrap.min.css | 9 + .../img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes .../img/glyphicons-halflings.png | Bin 0 -> 12799 bytes .../journal/bootstrap.min.css | 9 + .../readable/bootstrap.min.css | 9 + .../simplex/bootstrap.min.css | 9 + .../bootswatch-2.3.2/slate/bootstrap.min.css | 9 + .../spacelab/bootstrap.min.css | 9 + .../bootswatch-2.3.2/spruce/bootstrap.min.css | 9 + .../superhero/bootstrap.min.css | 9 + .../bootswatch-2.3.2/united/bootstrap.min.css | 9 + .../cerulean/bootstrap.min.css | 11 + .../bootswatch-3.3.7/cyborg/bootstrap.min.css | 11 + .../bootswatch-3.3.7/darkly/bootstrap.min.css | 11 + .../bootswatch-3.3.7/flatly/bootstrap.min.css | 11 + .../journal/bootstrap.min.css | 11 + .../bootswatch-3.3.7/lumen/bootstrap.min.css | 11 + .../bootswatch-3.3.7/paper/bootstrap.min.css | 11 + .../readable/bootstrap.min.css | 11 + .../sandstone/bootstrap.min.css | 11 + .../simplex/bootstrap.min.css | 11 + .../bootswatch-3.3.7/slate/bootstrap.min.css | 11 + .../bootswatch-3.3.7/solar/bootstrap.min.css | 11 + .../spacelab/bootstrap.min.css | 11 + .../superhero/bootstrap.min.css | 11 + .../bootswatch-3.3.7/united/bootstrap.min.css | 11 + .../bootswatch-3.3.7/yeti/bootstrap.min.css | 11 + doc/build/html/_static/comment-bright.png | Bin 0 -> 756 bytes doc/build/html/_static/comment-close.png | Bin 0 -> 829 bytes doc/build/html/_static/comment.png | Bin 0 -> 641 bytes doc/build/html/_static/css/badge_only.css | 1 + doc/build/html/_static/css/theme.css | 6 + doc/build/html/_static/custom.css | 1 + doc/build/html/_static/doctools.js | 315 + .../html/_static/documentation_options.js | 10 + doc/build/html/_static/down-pressed.png | Bin 0 -> 222 bytes doc/build/html/_static/down.png | Bin 0 -> 202 bytes doc/build/html/_static/file.png | Bin 0 -> 286 bytes .../html/_static/fonts/Lato/lato-bold.eot | Bin 0 -> 256056 bytes .../html/_static/fonts/Lato/lato-bold.ttf | Bin 0 -> 600856 bytes .../html/_static/fonts/Lato/lato-bold.woff | Bin 0 -> 309728 bytes .../html/_static/fonts/Lato/lato-bold.woff2 | Bin 0 -> 184912 bytes .../_static/fonts/Lato/lato-bolditalic.eot | Bin 0 -> 266158 bytes .../_static/fonts/Lato/lato-bolditalic.ttf | Bin 0 -> 622572 bytes .../_static/fonts/Lato/lato-bolditalic.woff | Bin 0 -> 323344 bytes .../_static/fonts/Lato/lato-bolditalic.woff2 | Bin 0 -> 193308 bytes .../html/_static/fonts/Lato/lato-italic.eot | Bin 0 -> 268604 bytes .../html/_static/fonts/Lato/lato-italic.ttf | Bin 0 -> 639388 bytes .../html/_static/fonts/Lato/lato-italic.woff | Bin 0 -> 328412 bytes .../html/_static/fonts/Lato/lato-italic.woff2 | Bin 0 -> 195704 bytes .../html/_static/fonts/Lato/lato-regular.eot | Bin 0 -> 253461 bytes .../html/_static/fonts/Lato/lato-regular.ttf | Bin 0 -> 607720 bytes .../html/_static/fonts/Lato/lato-regular.woff | Bin 0 -> 309192 bytes .../_static/fonts/Lato/lato-regular.woff2 | Bin 0 -> 182708 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.eot | Bin 0 -> 79520 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.ttf | Bin 0 -> 170616 bytes .../fonts/RobotoSlab/roboto-slab-v7-bold.woff | Bin 0 -> 87624 bytes .../RobotoSlab/roboto-slab-v7-bold.woff2 | Bin 0 -> 67312 bytes .../RobotoSlab/roboto-slab-v7-regular.eot | Bin 0 -> 78331 bytes .../RobotoSlab/roboto-slab-v7-regular.ttf | Bin 0 -> 169064 bytes .../RobotoSlab/roboto-slab-v7-regular.woff | Bin 0 -> 86288 bytes .../RobotoSlab/roboto-slab-v7-regular.woff2 | Bin 0 -> 66444 bytes .../_static/fonts/fontawesome-webfont.eot | Bin 0 -> 165742 bytes .../_static/fonts/fontawesome-webfont.svg | 2671 ++++ .../_static/fonts/fontawesome-webfont.ttf | Bin 0 -> 165548 bytes .../_static/fonts/fontawesome-webfont.woff | Bin 0 -> 98024 bytes .../_static/fonts/fontawesome-webfont.woff2 | Bin 0 -> 77160 bytes doc/build/html/_static/jquery-3.2.1.js | 10253 ++++++++++++++++ doc/build/html/_static/jquery.js | 4 + .../html/_static/js/jquery-1.11.0.min.js | 4 + doc/build/html/_static/js/jquery-fix.js | 2 + doc/build/html/_static/js/modernizr.min.js | 4 + doc/build/html/_static/js/theme.js | 3 + doc/build/html/_static/language_data.js | 297 + doc/build/html/_static/minus.png | Bin 0 -> 90 bytes doc/build/html/_static/plus.png | Bin 0 -> 90 bytes doc/build/html/_static/pygments.css | 69 + doc/build/html/_static/searchtools.js | 481 + doc/build/html/_static/underscore-1.3.1.js | 999 ++ doc/build/html/_static/underscore.js | 31 + doc/build/html/_static/up-pressed.png | Bin 0 -> 214 bytes doc/build/html/_static/up.png | Bin 0 -> 203 bytes doc/build/html/_static/websupport.js | 808 ++ doc/build/html/examples.html | 325 + doc/build/html/genindex.html | 324 + doc/build/html/index.html | 295 + doc/build/html/introduction.html | 427 + doc/build/html/objects.inv | 7 + doc/build/html/py-modindex.html | 238 + doc/build/html/search.html | 207 + doc/build/html/searchindex.js | 1 + doc/make.bat | 35 + doc/source/conf.py | 195 + doc/source/db_structure.rst | 244 + doc/source/examples.rst | 31 + doc/source/index.rst | 95 + doc/source/introduction.rst | 134 + python/davis_etl.py | 238 +- python/enriched_data_collect.py | 218 + python/sysstats.py | 125 +- systemd/chttp.service | 21 + systemd/davis_etl.service | 22 + systemd/sysstat.service | 2 +- web/modules/dynamic.py | 93 +- 152 files changed, 43419 insertions(+), 316 deletions(-) create mode 100644 doc/Makefile create mode 100644 doc/build/doctrees/environment.pickle create mode 100644 doc/build/doctrees/examples.doctree create mode 100644 doc/build/doctrees/index.doctree create mode 100644 doc/build/doctrees/introduction.doctree create mode 100644 doc/build/html/.buildinfo create mode 100644 doc/build/html/.nojekyll create mode 100644 doc/build/html/_modules/chttpd.html create mode 100644 doc/build/html/_modules/config.html create mode 100644 doc/build/html/_modules/dynamic.html create mode 100644 doc/build/html/_modules/index.html create mode 100644 doc/build/html/_modules/modules/dynamic.html create mode 100644 doc/build/html/_sources/examples.rst.txt create mode 100644 doc/build/html/_sources/index.rst.txt create mode 100644 doc/build/html/_sources/introduction.rst.txt create mode 100644 doc/build/html/_static/ajax-loader.gif create mode 100644 doc/build/html/_static/alabaster.css create mode 100644 doc/build/html/_static/basic.css create mode 100644 doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.css create mode 100644 doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.min.css create mode 100644 doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.css create mode 100644 doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.min.css create mode 100644 doc/build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings-white.png create mode 100644 doc/build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings.png create mode 100644 doc/build/html/_static/bootstrap-2.3.2/js/bootstrap.js create mode 100644 doc/build/html/_static/bootstrap-2.3.2/js/bootstrap.min.js create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap-theme.css create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap-theme.css.map create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap-theme.min.css create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap-theme.min.css.map create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap.css create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap.css.map create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap.min.css create mode 100644 doc/build/html/_static/bootstrap-3.3.7/css/bootstrap.min.css.map create mode 100644 doc/build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot create mode 100644 doc/build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.svg create mode 100644 doc/build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.ttf create mode 100644 doc/build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff create mode 100644 doc/build/html/_static/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff2 create mode 100644 doc/build/html/_static/bootstrap-3.3.7/js/bootstrap.js create mode 100644 doc/build/html/_static/bootstrap-3.3.7/js/bootstrap.min.js create mode 100644 doc/build/html/_static/bootstrap-3.3.7/js/npm.js create mode 100644 doc/build/html/_static/bootstrap-sphinx.css create mode 100644 doc/build/html/_static/bootstrap-sphinx.js create mode 100644 doc/build/html/_static/bootswatch-2.3.2/amelia/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/cerulean/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/cosmo/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/cyborg/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/flatly/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/img/glyphicons-halflings-white.png create mode 100644 doc/build/html/_static/bootswatch-2.3.2/img/glyphicons-halflings.png create mode 100644 doc/build/html/_static/bootswatch-2.3.2/journal/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/readable/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/simplex/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/slate/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/spacelab/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/spruce/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/superhero/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-2.3.2/united/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/cerulean/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/cyborg/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/darkly/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/flatly/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/journal/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/lumen/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/paper/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/readable/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/sandstone/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/simplex/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/slate/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/solar/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/spacelab/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/superhero/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/united/bootstrap.min.css create mode 100644 doc/build/html/_static/bootswatch-3.3.7/yeti/bootstrap.min.css create mode 100644 doc/build/html/_static/comment-bright.png create mode 100644 doc/build/html/_static/comment-close.png create mode 100644 doc/build/html/_static/comment.png create mode 100644 doc/build/html/_static/css/badge_only.css create mode 100644 doc/build/html/_static/css/theme.css create mode 100644 doc/build/html/_static/custom.css create mode 100644 doc/build/html/_static/doctools.js create mode 100644 doc/build/html/_static/documentation_options.js create mode 100644 doc/build/html/_static/down-pressed.png create mode 100644 doc/build/html/_static/down.png create mode 100644 doc/build/html/_static/file.png create mode 100644 doc/build/html/_static/fonts/Lato/lato-bold.eot create mode 100644 doc/build/html/_static/fonts/Lato/lato-bold.ttf create mode 100644 doc/build/html/_static/fonts/Lato/lato-bold.woff create mode 100644 doc/build/html/_static/fonts/Lato/lato-bold.woff2 create mode 100644 doc/build/html/_static/fonts/Lato/lato-bolditalic.eot create mode 100644 doc/build/html/_static/fonts/Lato/lato-bolditalic.ttf create mode 100644 doc/build/html/_static/fonts/Lato/lato-bolditalic.woff create mode 100644 doc/build/html/_static/fonts/Lato/lato-bolditalic.woff2 create mode 100644 doc/build/html/_static/fonts/Lato/lato-italic.eot create mode 100644 doc/build/html/_static/fonts/Lato/lato-italic.ttf create mode 100644 doc/build/html/_static/fonts/Lato/lato-italic.woff create mode 100644 doc/build/html/_static/fonts/Lato/lato-italic.woff2 create mode 100644 doc/build/html/_static/fonts/Lato/lato-regular.eot create mode 100644 doc/build/html/_static/fonts/Lato/lato-regular.ttf create mode 100644 doc/build/html/_static/fonts/Lato/lato-regular.woff create mode 100644 doc/build/html/_static/fonts/Lato/lato-regular.woff2 create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff create mode 100644 doc/build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 create mode 100644 doc/build/html/_static/fonts/fontawesome-webfont.eot create mode 100644 doc/build/html/_static/fonts/fontawesome-webfont.svg create mode 100644 doc/build/html/_static/fonts/fontawesome-webfont.ttf create mode 100644 doc/build/html/_static/fonts/fontawesome-webfont.woff create mode 100644 doc/build/html/_static/fonts/fontawesome-webfont.woff2 create mode 100644 doc/build/html/_static/jquery-3.2.1.js create mode 100644 doc/build/html/_static/jquery.js create mode 100644 doc/build/html/_static/js/jquery-1.11.0.min.js create mode 100644 doc/build/html/_static/js/jquery-fix.js create mode 100644 doc/build/html/_static/js/modernizr.min.js create mode 100644 doc/build/html/_static/js/theme.js create mode 100644 doc/build/html/_static/language_data.js create mode 100644 doc/build/html/_static/minus.png create mode 100644 doc/build/html/_static/plus.png create mode 100644 doc/build/html/_static/pygments.css create mode 100644 doc/build/html/_static/searchtools.js create mode 100644 doc/build/html/_static/underscore-1.3.1.js create mode 100644 doc/build/html/_static/underscore.js create mode 100644 doc/build/html/_static/up-pressed.png create mode 100644 doc/build/html/_static/up.png create mode 100644 doc/build/html/_static/websupport.js create mode 100644 doc/build/html/examples.html create mode 100644 doc/build/html/genindex.html create mode 100644 doc/build/html/index.html create mode 100644 doc/build/html/introduction.html create mode 100644 doc/build/html/objects.inv create mode 100644 doc/build/html/py-modindex.html create mode 100644 doc/build/html/search.html create mode 100644 doc/build/html/searchindex.js create mode 100644 doc/make.bat create mode 100644 doc/source/conf.py create mode 100644 doc/source/db_structure.rst create mode 100644 doc/source/examples.rst create mode 100644 doc/source/index.rst create mode 100644 doc/source/introduction.rst create mode 100644 python/enriched_data_collect.py create mode 100644 systemd/chttp.service create mode 100644 systemd/davis_etl.service diff --git a/doc/Makefile b/doc/Makefile new file mode 100644 index 0000000..69fe55e --- /dev/null +++ b/doc/Makefile @@ -0,0 +1,19 @@ +# Minimal makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +SOURCEDIR = source +BUILDDIR = build + +# Put it first so that "make" without argument is like "make help". +help: + @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) + +.PHONY: help Makefile + +# Catch-all target: route all unknown targets to Sphinx using the new +# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). +%: Makefile + @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) \ No newline at end of file diff --git a/doc/build/doctrees/environment.pickle b/doc/build/doctrees/environment.pickle new file mode 100644 index 0000000000000000000000000000000000000000..57da7d760f913c08cb5e05ef03188ca9eddcd183 GIT binary patch literal 1652990 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

-HgW1gPWKH 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

L+@d5VYLwtmfaR8s-5I)6cID*e{3}4^`zQief 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Ƚ$rm7^RNI5u^3CR49l?+ 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 literal 0 HcmV?d00001 diff --git a/doc/build/doctrees/examples.doctree b/doc/build/doctrees/examples.doctree new file mode 100644 index 0000000000000000000000000000000000000000..0a19e7ccdbeccef4f75a2aba414c8e2ea9551afd GIT binary patch literal 32807 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 literal 0 HcmV?d00001 diff --git a/doc/build/doctrees/index.doctree b/doc/build/doctrees/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..fdcc2f114c2a4eb896990972fae6422aca4fa4b0 GIT binary patch literal 14692 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 VY#2r#4$>fN+BZCuHpH#^e*t`U+TH*F literal 0 HcmV?d00001 diff --git a/doc/build/doctrees/introduction.doctree b/doc/build/doctrees/introduction.doctree new file mode 100644 index 0000000000000000000000000000000000000000..59ce91748dd1bf47a7a23b4cfa6c0bb6e5f384cb GIT binary patch literal 40692 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 + + + + + + + + chttpd — Plutonium reporter 1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ + + +
+ + + + + +
+ +
+ + + + + + + + + + + + + + + + + +
+ + + + +
+
+
+
+ +

Source code for chttpd

+#!/usr/bin/python3
+import os
+import cherrypy
+
+import index
+from modules import voltage
+from modules import weather
+from modules import dynamic
+from modules import status
+from modules import temphumi
+import config
+
+
+
[docs]def main_server_loop(): + ''' Master http server - the main executable / daemon + + Contains basic server settings and how the sub-modules + are called and mounted to their respective paths + + Args: + *None* + + Sets: + *server_config:* dict(), updates cherrypy.config + *conf:* dict(), see Cherrypy docs for more + *cherrypy.config:* dict(), see Cherrypy docs for more + + Returns: + *N/A* + + Raises: + *Exception* If server is unable to start + + ''' + server_config={ + 'server.socket_host': config.Conf.val['_server_bind_ip'], + 'server.socket_port': config.Conf.val['_server_port'] + } + cherrypy.config.update(server_config) + conf = { + '/': { + 'tools.sessions.on': True, + 'tools.staticdir.root': os.path.abspath(config.SCRIPT_PATH + '/') + }, + '/static': { + 'tools.staticdir.on': True, + 'tools.staticdir.dir': './static' + } + } + + cherrypy.tree.mount(voltage.EnergyInfo(), "/", conf) + cherrypy.tree.mount(voltage.EnergyInfo(), "/energy", conf) + cherrypy.tree.mount(weather.WeatherInfo(), "/weather", conf) + cherrypy.tree.mount(status.StatusInfo(), "/status", conf) + cherrypy.tree.mount(dynamic.Expose(), "/data", conf) + cherrypy.tree.mount(temphumi.PuerhInfo(), "/temphumi", conf) + cherrypy.engine.start() + cherrypy.engine.block()
+ + +if __name__ == '__main__': + try: + main_server_loop() + except Exception as e: + raise e +
+ +
+ +
+
+ + +
+ +
+

+ © Copyright 2019, Milan 'Ventil' Toman + +

+
+ Built with Sphinx using a theme provided by Read the Docs. + +
+ +
+
+ +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/doc/build/html/_modules/config.html b/doc/build/html/_modules/config.html new file mode 100644 index 0000000..33420c2 --- /dev/null +++ b/doc/build/html/_modules/config.html @@ -0,0 +1,374 @@ + + + + + + + + + + + config — Plutonium reporter 1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + + + +
+ +
+ + + + + + + + + + + + + + + + + +
+ + + + +
+
+
+
+ +

Source code for config

+#!/usr/bin/python3
+'''
+Generic, system-wide variables and functions to be used in any / every module
+Global variables are defined with _variable_name schema, to be quickly
+identified in the project. 
+'''
+import os
+import influxdb
+SCRIPT_PATH = os.path.abspath(os.path.dirname(__file__))
+_templates = '/templates/'
+
+
+# Functions
+
[docs]def read_html(filename, _STATIC_DIR): + '''Read a html file + + Reads a file from a selected static directory - needs to be set as static + in the cherrypy (chttpd.py). + + Args: + ``filename`` *str()*, plain filename, without any path specification, + without extension + ``_STATIC_DIR`` *str()*, path relative to the project root, + where chttpd.py resides + + Returns: + *str()*, parsed html code from the read file, or a HTML + formatted error if file cannot be read for any reason + + Exceptions: + On file read fail, string with Exception text is returned + + ''' + read_path = SCRIPT_PATH + _STATIC_DIR + filename + '.html' + try: + with open(read_path, 'r') as handle: + return handle.read() + except Exception as e: + return """<div>ERROR: {}!</div><br>{}""".format(e, read_path)
+ + +#Classes +
[docs]class serverConfiguration(object): + '''Sets up Conf with appropriate values + + Creates an object that holds the configuration to the whole web server, + is available throughout the project. This separates the .ini style config + and the config.py script, that uses additional logic. + ''' + def __init__(self): + '''Init Conf values + + Sets up all values in config.Conf.val['option']=value + + Args: + N/A + + Returns: + N/A + + Sets: + dict(self.val[option]): Set via read_config() method, + does some additional calculations and parsing. + ''' + if self.read_config('plutonium'): + print("INFO: Config read success") + print(self.val) + self.val['_server_uri'] = \ + "{}://{}".format( + self.val['_server_protocol'], + self.val['_server_name'] + ) + self.val['_server_port'] = int(self.val['_server_port']) + self.val['_influx_port'] = int(self.val['_influx_port']) + else: + print("ERROR: In reading config") + + self.influx_connectors() + +
[docs] def influx_connectors(self): + '''Set up client objects for InfluxDB + + All DB connector objects in one place. Callable from other modules + + Args: + None + + Sets: + ``self.influx_weather_client``, + ``self.influx_voltage_client``, + ``self.influx_iot_client``, + ``self.influx_status_client``: Influx client connector objects + + Returns: + N/A + + ''' + + self.influx_weather_client = influxdb.client.InfluxDBClient( + self.val['_influx_host'], + self.val['_influx_port'], + self.val['_influx_user'], + self.val['_influx_pwd'], + self.val['_influx_weather_db'] + ) + self.influx_voltage_client = influxdb.client.InfluxDBClient( + self.val['_influx_host'], + self.val['_influx_port'], + self.val['_influx_user'], + self.val['_influx_pwd'], + self.val['_influx_voltage_db'] + ) + self.influx_iot_client = influxdb.client.InfluxDBClient( + self.val['_influx_host'], + self.val['_influx_port'], + self.val['_influx_user'], + self.val['_influx_pwd'], + self.val['_influx_IoT_db'] + ) + self.influx_status_client = influxdb.client.InfluxDBClient( + self.val['_influx_host'], + self.val['_influx_port'], + self.val['_influx_user'], + self.val['_influx_pwd'], + self.val['_influx_status_db'] + )
+ + +
[docs] def read_config(self, conf_filename): + '''Reads configuration file + + Read and parse the configuration options into a dictionary + Why not using configparser? No idea, subject to change. + This method is called on class init. + + Args: + ``conf_filename``, *str()* file name without the .ini extension, + residing in ./config directory + + Returns: + *dict()*, On success + + *bool(False)*, On failure + + Sets: + ``self.dict()`` of name_value_pairs read from the config file + + ''' + read_path = SCRIPT_PATH + '/config/' + conf_filename + '.ini' + try: + with open(read_path, 'r') as conf_file: + config_list = conf_file.readlines() + except OSError as e: + print("ERROR: {}".format(e)) + return False + self.val = {} + for line in config_list: + if line.strip() != '': + try: + line = line.split("=") + option = line[0].strip().strip("'") + value = line[1].strip().strip("'") + except: + exit("WARNING: Wrong format of config option") + return False + self.val.update({option:value}) + else: + pass + return self.val
+ +Conf = serverConfiguration() + +#_server_protocol = "https" +#_server_name = "bastart.spoton.cz" +#_server_uri = "{}://{}".format(_server_protocol, _server_name) +#_server_port = 443 +#_server_bind_ip = '0.0.0.0' +# +#_influx_host = 'localhost' +#_influx_port = 8086 +#_influx_user = 'pi' +#_influx_pwd = 'Ventil6996' +#_influx_weather_db = 'weather_v2' +#_influx_status_db = 'status' +#_influx_voltage_db = 'voltage' +#_influx_IoT_db = 'weather_v2' +
+ +
+ +
+
+ + +
+ +
+

+ © Copyright 2019, Milan 'Ventil' Toman + +

+
+ Built with Sphinx using a theme provided by Read the Docs. + +
+ +
+
+ +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/doc/build/html/_modules/dynamic.html b/doc/build/html/_modules/dynamic.html new file mode 100644 index 0000000..1b07583 --- /dev/null +++ b/doc/build/html/_modules/dynamic.html @@ -0,0 +1,877 @@ + + + + + + + + + + + dynamic — Plutonium reporter 1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + + + +
+ +
+ + + + + + + + + + + + + + + + + +
+ + + + +
+
+
+
+ +

Source code for dynamic

+#!/usr/bin/python3
+import os
+import sys
+import cherrypy
+import influxdb
+import time
+import datetime
+import json
+from pprint import pprint
+from cherrypy.lib.httputil import parse_query_string
+
+
+# Universal variables
+_SCRIPT_PATH = os.path.dirname(sys.argv[0])
+
+influx_host = 'localhost'
+influx_port = 8086
+influx_user = 'pi'
+influx_pwd = 'Ventil6996'
+influx_db = 'voltage'
+influx_weather_db = 'weather_v2'
+influx_IoT_db = 'weather_v2'
+influx_status_db = 'status'
+height_above_sea_level = 452
+
+variables_known = ["range",
+                   "granularity",
+                   "start",
+                   "end",
+                   "type"]
+default_variables = {"range": "1h",
+                     "granularity": "30s",
+                     "end": "1s",
+                     "type": "none"}
+
+
+#------------------------------------------------------------------------------
+# Generic Functions
+#------------------------------------------------------------------------------
+
+
[docs]def check_GET(arguments): + '''Validates html query + + Takes the key-val pairs and evaluates them against those variables, that + are defined as known to be safe to be parsed. + + :: + + Args: + str(arguments): + "A string of options to be directly evaluated as a dictionary" + + :: + + Returns: + list(str(variable)): + "List of strings, occupied by variables validated to be safe" + + ''' + _q = eval(str(arguments)) + keys_to_process = { + key:_q[key] for key in _q.keys() if key in variables_known} + resulting_variables = default_variables.copy() + resulting_variables.update(keys_to_process) + return resulting_variables
+ + +#------------------------------------------------------------------------------ +# Classes +#------------------------------------------------------------------------------ +class Helper(object): + def __init__(self): + '''Helping calculations and functions + + Some generic helpers, that do additional calculations, such as + percentages, predictions etc. + ''' + pass + + def pressure_to_std_atm(self, raw_pressure, temperature, hasl): + a2ts = raw_pressure \ + + ((raw_pressure * 9.80665 * hasl)\ + / (287 * (273 + temperature + (hasl/400)))) + + #a2ts = raw_pressure + hasl/10 + return a2ts + + def percentageCalc(self, voltage, system): + ''' Turns current charge for lead acid batteries into a human + readable % + + Args: + float(voltage): Voltage in V + int(system): nominal system voltage, e.g. 12, 24, 48 etc + + Returns: + float(percentage): Two decimal state of battery in percentage + ''' + if system is 12: + percentage = round(24.5724168782\ + * voltage * voltage - 521.9890329784 * voltage\ + + 2771.1828105637, 1) + elif system is 24: + percentage = 2.4442 * voltage * voltage\ + - 82.004 * voltage + 602.91 + elif system is 48: + # percentage = round((voltage - 46.5) * 18.87, 2) + percentage = round((voltage - 46.5) * 23.26, 2) + percentage = 100.00 if percentage > 100.00 else percentage + percentage = 0 if percentage <= 0 else percentage + return percentage + + +class DynamicEnergy(object): + def __init__(self): + ''' Parse readings from victron MPPT via Ve.Direct stored in + InfluxDB + ''' + self.influx_client = influxdb.client.InfluxDBClient( + influx_host, influx_port, influx_user, influx_pwd, influx_db + ) + self.helpers = Helper() + + def FreshValues(self, **kwargs): + ''' Get most up-to-date energy reading. + + returns: + dict(): {'state': str(), + 'time': 'YYYY-mm-DDTHH:MM:SS.149636706Z', + 'V_unit1': float(mV), + 'Psol': fint(W), + 'V_array': int(mV), + 'ChCurr': int(mV)} + ''' + bat_query = "SELECT voltage FROM mppt WHERE type = 'bat'" \ + + "ORDER BY time DESC LIMIT 1" + voltage_battery = self.influx_client.query(bat_query) + + query = "SELECT last(*) "\ + + "FROM mppt "\ + + "WHERE time > now() - 10m "\ + + "GROUP BY type fill(0)" + state_query = "SELECT voltage,state FROM mppt "\ + + "ORDER BY time DESC LIMIT 1" + state_db_result = self.influx_client.query(state_query) + state = state_db_result.get_points(measurement='mppt') + states = state.send(None) + + db_result = self.influx_client.query(query) + bat = db_result.get_points(measurement='mppt', + tags={'type': 'bat'}) + day = db_result.get_points(measurement='mppt', + tags={'type': 'day'}) + prev_day = db_result.get_points(measurement='mppt', + tags={'type': 'prev_day'}) + solar = db_result.get_points(measurement='mppt', + tags={'type': 'solar'}) + total = db_result.get_points(measurement='mppt', + tags={'type': 'total'}) + bats = bat.send(None) + solars = solar.send(None) + days = day.send(None) + prev_days = prev_day.send(None) + totals = total.send(None) + + result = {} + t_stamp = time.strptime(bats['time'].split('.')[0], + "%Y-%m-%dT%H:%M:%S") + result['time'] = time.strftime("%d.%m.%Y %H:%M:%S", t_stamp) + result['state'] = states['state'] + result['ChCurr'] = bats['last_current'] + result['V_array'] = bats['last_voltage'] + result['perc_array'] = self.helpers.percentageCalc( + bats['last_voltage'], + 48) + result['Psol'] = solars['last_power'] + result['Vsol'] = solars['last_voltage'] + result['Wh_day'] = days['last_Wh'] + result['Pmax_prev_day'] = days['last_Pmax'] + result['Wh_prev_day'] = prev_days['last_Wh'] + result['Pmax_day'] = prev_days['last_Pmax'] + result['total_Wh'] = totals['last_Wh'] + + return result + + def stat_values(self, **kwargs): + '''Max power and daily generation. + ''' + # GET variables now set, ready to reference them + _days = kwargs['days'] + 1 + date = datetime.datetime.strftime(datetime.datetime.now(),"%Y-%m-%d") + measures = [] + result = [] + query = "SELECT mean(power)*24 as DayWh, max(Pmax) AS Pmax "\ + + "FROM mppt WHERE type='solar' OR type='day' "\ + + "AND time > '{} 00:00:00' - {}d "\ + + "GROUP BY time(1d) fill(previous)"\ + + "ORDER BY time DESC" + query = query.format(date, _days) + measure = self.influx_client.query(query) + tm = [] + P_max = [] + Wh_sol = [] + + for datapoint in measure['mppt']: + row = [] + tstamp = datapoint['time'] + Pmax = datapoint["Pmax"] - 10 + DayWh = datapoint["DayWh"] + result.append([tstamp[:10], Pmax, int(DayWh)]) + return result[:-1] + + def solar_graph_data(self, **q): + ''' + Function to get solar readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time,V_solar,I_solar,P_solar,V_array + ''' + mppt_query_str = "SELECT min(power) AS Pmin, max(power) AS Pmax," \ + + "mean(power) AS Pavg "\ + + "FROM mppt WHERE type='solar' "\ + + "AND time > now() - {} "\ + + "AND time > now() - {} "\ + + "GROUP BY time({}) fill(previous)"\ + + "ORDER BY time ASC" + mppt_query = mppt_query_str.format(q['range'], + q['end'], + q['granularity']) + query = "SELECT mean(voltage) as Usol, " \ + + "mean(power) as Psol, mean(power)/mean(voltage) as Isol " \ + + "FROM mppt WHERE type='solar' " \ + + "AND time > NOW() - {} " \ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}) fill(previous) ORDER BY time DESC" + query = query.format(q['range'], + q['end'], + q['granularity']) + bat_volt_query = "SELECT mean(voltage) as Varr "\ + + "FROM mppt WHERE type='bat' "\ + + "AND time > NOW() - {} "\ + + "AND time < NOW() - {} "\ + + "GROUP BY time({}) "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + bat_volt_query = bat_volt_query.format(q['range'], + q['end'], + q['granularity']) + bat_measures = self.influx_client.query(bat_volt_query) + measures = self.influx_client.query(query) + mppt_measures = self.influx_client.query(mppt_query) + header = "time,V_solar,I_solar,P_solar,V_array\n" + yield header + volt_dict = {} + for voltage in bat_measures["mppt"]: + volt_dict.update({voltage["time"]: voltage["Varr"]}) + for datapoint in measures["mppt"]: + tm = str(datapoint["time"]).strip() + solar_voltage = str(datapoint["Usol"]).strip() + solar_current = str(datapoint["Isol"]).strip() + try: + solar_power = int(datapoint["Psol"]) + solar_power = solar_power - 11 if solar_power > 11 else 0 + solar_power = str(solar_power).strip() + except: + solar_power = str(datapoint["Psol"]) + array_voltage = str(volt_dict[tm]) + yield "{},{},{},{},{}\n".format(tm, solar_voltage, + solar_current, solar_power, + array_voltage) + + +class Expose(object): + def __init__(self): + ''' Default expose class. Takes other classes and exposes them + via html. GET checks should be defined here. + Function args and kwargs don't need to be checked, as they are internal + and not exposed. + ''' + self.energy = DynamicEnergy() + self.weather = DynamicWeather() + self.status = DynamicStatus() + self.iot = DynamicIoT() + self.helpers = Helper() + + @cherrypy.expose + def index(self): + return "Index, MOFO" + + @cherrypy.expose + def solar_realtime_data(self, **kwargs): + q = check_GET(kwargs) + res_type = q['type'] + result = self.energy.FreshValues() + if res_type == 'json': + return json.dumps(result) + else: + return result + + @cherrypy.expose + def solar_monitor(self, **kwargs): + q = check_GET(kwargs) + sol_monitor = self.energy.solar_graph_data(**q) + return sol_monitor + + @cherrypy.expose + def wind_monitor(self, **kwargs): + q = check_GET(kwargs) + wind_monitor = self.weather.wind_graph_data(**q) + header = "time,Speed,Gusts,Direction\n" + yield header + for speed, gust, direction in zip(wind_monitor['w_speeds'], + wind_monitor['w_gusts'], + wind_monitor['w_dirs']): + yield "{},{},{},{}\n".format(speed['time'], + speed['value'], + gust['value'], + direction['value']) + + @cherrypy.expose + def temphumi_monitor(self, **kwargs): + q = check_GET(kwargs) + temphumi_monitor = self.weather.temphumi_graph_data(**q) + header = "time,T(ins),T(out),Humi(ins),Humi(out)\n" + yield header + for Thin, Thout in zip(temphumi_monitor['th_ins'], + temphumi_monitor['th_outs']): + tm_temp = str(Thin["time"]).strip() + temp_in_val = str(Thin["Temp"]).strip() + temp_out_val = str(Thout["Temp"]).strip() + hum_in_val = str(Thin["Hum"]).strip() + hum_out_val = str(Thout["Hum"]).strip() + yield "{},{},{},{},{}\n".format(tm_temp, + temp_in_val, + temp_out_val, + hum_in_val, + hum_out_val) + + @cherrypy.expose + def usense_temphumi_monitor(self, **kwargs): + q = check_GET(kwargs) + usense_temphumi_monitor = self.iot.usense_temphumi_graph_data(**q) + header = "time,T(tea),Humi(tea)\n" + yield header + for temp_humi in usense_temphumi_monitor['temphumis']: + tm_temp = temp_humi["time"] + temp_tea_val = temp_humi["temp"] + hum_tea_val = temp_humi["hum"] + yield "{},{},{}\n".format(tm_temp, temp_tea_val, hum_tea_val) + + @cherrypy.expose + def pressure_monitor(self, **kwargs): + q = check_GET(kwargs) + pressure_monitor = self.weather.pressure_graph_data(**q) + header = "time,Pressure\n" + yield header + for Press, Tout in zip(pressure_monitor["press_raws"], + pressure_monitor["Touts"]): + tm = str(Press["time"]).strip() + pressure = self.helpers.pressure_to_std_atm(Press["pressure"], + Tout["Tout"], + height_above_sea_level) + yield "{},{}\n".format(tm, pressure) + + @cherrypy.expose + def cpumem_monitor(self, **kwargs): + q = check_GET(kwargs) + cpumem_monitor = self.status.cpumem_graph_data(**q) + header = "time,Cpu,Mem,Disk\n" + yield header + for cpu, disk, mem in zip(cpumem_monitor["cpus"], + cpumem_monitor["disks"], + cpumem_monitor["mems"]): + tm = str(cpu["time"]).strip() + cpu = str(cpu["usage"]).strip() + mem = str(mem["usage"]).strip() + disk = str(disk["usage"]).strip() + yield "{},{},{},{}\n".format(tm, cpu, mem, disk) + + @cherrypy.expose + def network_monitor(self, **kwargs): + q = check_GET(kwargs) + network_monitor = self.status.network_graph_data(**q) + header = "time,Bin,Bout,Din,Dout,Ein,Eout\n" + yield header + for traf in network_monitor["traffic"]: + tm = str(traf["time"]).strip() + Bin = str(traf["traffic_b_in"]/1024).strip() + Bout = str(traf["traffic_b_out"]/1024).strip() + Din = str(traf["traffic_drop_in"]).strip() + Dout = str(traf["traffic_drop_out"]).strip() + Ein = str(traf["traffic_e_in"]).strip() + Eout = str(traf["traffic_e_out"]).strip() + yield "{},{},{},{},{},{},{}\n".format( + tm, + Bin, + Bout, + Din, + Dout, + Ein, + Eout + ) + + @cherrypy.expose + def solcap_monitor(self, **kwargs): + q = check_GET(kwargs) + solcap_monitor = self.status.solcap_graph_data(**q) + header = "time,Solar,Capacitor\n" + yield header + for Sol, Cap in zip(solcap_monitor['sols'], + solcap_monitor['caps']): + tm = str(Sol["time"]).strip() + solar_value = float(str(Sol["voltage"]).strip()) / 100 + cap_value = float(str(Cap["voltage"]).strip()) + yield "{},{},{}\n".format(tm, solar_value, cap_value) + + @cherrypy.expose + def esp_battery_monitor(self, **kwargs): + q = check_GET(kwargs) + place_tag = q['type'] + esp_bat_monitor = self.iot.esp_battery_graph_data(**q) + header = "time,batt({_place_tag}),batt_perc({_place_tag})\n".format( + _place_tag=place_tag + ) + yield header + for batt in esp_bat_monitor['volts']: + tm_batt = str(batt["time"]).strip() + try: + batt_val = str(float(batt["voltage"]) / 1023).strip() + except: + batt_val = 0 + batt_perc = 4.39 + yield "{},{},{}\n".format(tm_batt, batt_val, batt_perc) + + +class DynamicStatus(object): + def __init__(self): + self.influx_status_client = influxdb.client.InfluxDBClient( + influx_host, + influx_port, + influx_user, + influx_pwd, + influx_status_db + ) + + def cpumem_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(usage) AS usage "\ + + "FROM RasPI "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_status_client.query(query) + cpu = db_results.get_points(measurement='RasPI', + tags={'type': 'cpu'}) + disk = db_results.get_points(measurement='RasPI', + tags={'type': 'disk'}) + mem = db_results.get_points(measurement='RasPI', + tags={'type': 'mem'}) + cpus = [cpu_use for cpu_use in cpu] + disks = [disks_use for disks_use in disk] + mems = [mems_use for mems_use in mem] + # Let's get the data from DB + result = {'cpus':cpus, 'disks':disks, 'mems':mems} + return result + + def network_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT derivative(max(*)) AS traffic "\ + + "FROM net "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_status_client.query(query) + traffic = db_results.get_points(measurement='net', + tags={'type': q['type']}) + + traffics = [traf for traf in traffic] + result = {'traffic': traffics} + return result + + def solcap_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(voltage) as voltage "\ + + "FROM iss "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_status_client.query(query) + sol = db_results.get_points(measurement='iss', + tags={'type': 'solar'}) + cap = db_results.get_points(measurement='iss', + tags={'type': 'capcaitor'}) + + sols = [solar for solar in sol] + caps = [capacitor for capacitor in cap] + result = {'sols': sols, 'caps': caps} + return result + + + +
[docs]class DynamicIoT(object): + ''' All IoT related methods. Currently, this goes to the weatherDB, + but is subject to change in the future. + ''' + def __init__(self): + self.influx_iot_client = influxdb.client.InfluxDBClient( + influx_host, + influx_port, + influx_user, + influx_pwd, + influx_IoT_db + ) + +
[docs] def esp_battery_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(battery) as voltage "\ + + "FROM usense "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_iot_client.query(query) + volt = db_results.get_points(measurement='usense', + tags={'type': q['type']}) + + volts = [bat_volt for bat_volt in volt] + result = {'volts': volts} + return result
+ +
[docs] def usense_temphumi_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(temperature) as temp, "\ + + "mean(humidity) as hum "\ + + "FROM usense "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_iot_client.query(query) + temphumi = db_results.get_points(measurement='usense', + tags={'type': q['type']}) + + temphumis = [temp_humi for temp_humi in temphumi] + result = {'temphumis': temphumis} + return result
+ + +
[docs]class DynamicWeather(object): + '''Weather reports, taken dynamically from InfluxDB. + All measurements tailored to suit the Davis Vantage Vue weather + station''' + def __init__(self): + self.influx_weather_client = influxdb.client.InfluxDBClient( + influx_host, + influx_port, + influx_user, + influx_pwd, + influx_weather_db + ) + +
[docs] def wind_graph_data(self, **q): + '''Function to get wind value readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time, Speed, Gusts, Direction + ''' + query = "SELECT mean(value) AS value FROM wind "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_weather_client.query(query) + w_speed = db_results.get_points(measurement='wind', + tags={'type': 'speed'}) + w_dir = db_results.get_points(measurement='wind', + tags={'type': 'direction'}) + w_gust = db_results.get_points(measurement='wind', + tags={'type': 'windgust'}) + w_speeds = [speed for speed in w_speed] + w_dirs = [direction for direction in w_dir] + w_gusts = [gust for gust in w_gust] + # Let's get the data from DB + result = {'w_speeds':w_speeds, 'w_dirs':w_dirs, 'w_gusts':w_gusts} + return result
+ +
[docs] def temphumi_graph_data(self, **q): + '''Function to get ttmper and humidity value readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time, Speed, Gusts, Direction + ''' + query = "SELECT mean(humidity) AS Hum, "\ + + "mean(temperature) AS Temp "\ + + "FROM temphumi "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_weather_client.query(query) + th_in = db_results.get_points(measurement='temphumi', + tags={'type': 'internal'}) + th_out = db_results.get_points(measurement='temphumi', + tags={'type': 'external'}) + + th_ints = [temphumi_in for temphumi_in in th_in] + th_outs = [temphumi_out for temphumi_out in th_out] + # Let's get the data from DB + result = {'th_ins':th_ints, 'th_outs':th_outs} + return result
+ +
[docs] def pressure_graph_data(self, **q): + ''' + Function to get pressure readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time, Pressure + + ''' + query = "SELECT mean(pressure) AS pressure, "\ + + "mean(temperature) as Tout "\ + + "FROM temphumi "\ + + "WHERE type = 'raw' OR type='external' "\ + + "AND time > NOW() - {} "\ + + "AND time < NOW() - {} "\ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_weather_client.query(query) + press_raws = db_results.get_points(measurement='temphumi', + tags={'type': 'raw'}) + Touts = db_results.get_points(measurement='temphumi', + tags={'type': 'external'}) + result = {'press_raws': press_raws, 'Touts': Touts} + return result
+
+ +
+ +
+
+ + +
+ +
+

+ © Copyright 2019, Milan 'Ventil' Toman + +

+
+ Built with Sphinx using a theme provided by Read the Docs. + +
+ +
+
+ +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/doc/build/html/_modules/index.html b/doc/build/html/_modules/index.html new file mode 100644 index 0000000..d796769 --- /dev/null +++ b/doc/build/html/_modules/index.html @@ -0,0 +1,191 @@ + + + + + + + + + + + Overview: module code — Plutonium reporter 1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + + + +
+ +
+ + + + + + + + + + + + + + + + + +
+ +
    + +
  • Docs »
  • + +
  • Overview: module code
  • + + +
  • + +
  • + +
+ + +
+
+
+
+ +

All modules for which code is available

+ + +
+ +
+
+ + +
+ +
+

+ © Copyright 2019, Milan 'Ventil' Toman + +

+
+ Built with Sphinx using a theme provided by Read the Docs. + +
+ +
+
+ +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/doc/build/html/_modules/modules/dynamic.html b/doc/build/html/_modules/modules/dynamic.html new file mode 100644 index 0000000..b68f9e8 --- /dev/null +++ b/doc/build/html/_modules/modules/dynamic.html @@ -0,0 +1,840 @@ + + + + + + + + + + + modules.dynamic — Plutonium reporter 1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + + + +
+ +
+ + + + + + + + + + + + + + + + + +
+ + + + +
+
+
+
+ +

Source code for modules.dynamic

+#!/usr/bin/python3
+import cherrypy
+import time
+import datetime
+import json
+from pprint import pprint
+from cherrypy.lib.httputil import parse_query_string
+import config
+
+
+# Universal variables
+height_above_sea_level = 452
+variables_known = ["range",
+                   "granularity",
+                   "start",
+                   "end",
+                   "type"]
+default_variables = {"range": "1h",
+                     "granularity": "30s",
+                     "end": "1s",
+                     "type": "none"}
+
+
+#------------------------------------------------------------------------------
+# Generic Functions
+#------------------------------------------------------------------------------
+
+
[docs]def check_GET(arguments): + '''Validates html query + + Takes the key-val pairs and evaluates them against those variables, that + are defined as known to be safe to be parsed. + + Args: + str(arguments): + "A string of options to be directly evaluated as a dictionary" + + Returns: + list(str(variable)): + "List of strings, occupied by variables validated to be safe" + + ''' + _q = eval(str(arguments)) + keys_to_process = { + key:_q[key] for key in _q.keys() if key in variables_known} + resulting_variables = default_variables.copy() + resulting_variables.update(keys_to_process) + return resulting_variables
+ + +#------------------------------------------------------------------------------ +# Classes +#------------------------------------------------------------------------------ +class Helper(object): + def __init__(self): + '''Helping calculations and functions + + Some generic helpers, that do additional calculations, such as + percentages, predictions etc. + ''' + pass + + def pressure_to_std_atm(self, raw_pressure, temperature, hasl): + a2ts = raw_pressure \ + + ((raw_pressure * 9.80665 * hasl)\ + / (287 * (273 + temperature + (hasl/400)))) + + #a2ts = raw_pressure + hasl/10 + return a2ts + + def percentageCalc(self, voltage, system): + ''' Turns current charge for lead acid batteries into a human + readable % + + Args: + float(voltage): Voltage in V + int(system): nominal system voltage, e.g. 12, 24, 48 etc + + Returns: + float(percentage): Two decimal state of battery in percentage + ''' + if system is 12: + percentage = round(24.5724168782\ + * voltage * voltage - 521.9890329784 * voltage\ + + 2771.1828105637, 1) + elif system is 24: + percentage = 2.4442 * voltage * voltage\ + - 82.004 * voltage + 602.91 + elif system is 48: + # percentage = round((voltage - 46.5) * 18.87, 2) + percentage = round((voltage - 46.5) * 23.26, 2) + percentage = 100.00 if percentage > 100.00 else percentage + percentage = 0 if percentage <= 0 else percentage + return percentage + + +class DynamicEnergy(object): + def __init__(self): + ''' Parse readings from victron MPPT via Ve.Direct stored in + InfluxDB + ''' + self.influx_voltage_client = config.Conf.influx_voltage_client + self.helpers = Helper() + + def FreshValues(self, **kwargs): + ''' Get most up-to-date energy reading. + + returns: + dict(): {'state': str(), + 'time': 'YYYY-mm-DDTHH:MM:SS.149636706Z', + 'V_unit1': float(mV), + 'Psol': fint(W), + 'V_array': int(mV), + 'ChCurr': int(mV)} + ''' + bat_query = "SELECT voltage FROM mppt WHERE type = 'bat'" \ + + "ORDER BY time DESC LIMIT 1" + voltage_battery = self.influx_voltage_client.query(bat_query) + + query = "SELECT last(*) "\ + + "FROM mppt "\ + + "WHERE time > now() - 10m "\ + + "GROUP BY type fill(0)" + state_query = "SELECT voltage,state FROM mppt "\ + + "ORDER BY time DESC LIMIT 1" + state_db_result = self.influx_voltage_client.query(state_query) + state = state_db_result.get_points(measurement='mppt') + states = state.send(None) + + db_result = self.influx_voltage_client.query(query) + bat = db_result.get_points(measurement='mppt', + tags={'type': 'bat'}) + day = db_result.get_points(measurement='mppt', + tags={'type': 'day'}) + prev_day = db_result.get_points(measurement='mppt', + tags={'type': 'prev_day'}) + solar = db_result.get_points(measurement='mppt', + tags={'type': 'solar'}) + total = db_result.get_points(measurement='mppt', + tags={'type': 'total'}) + bats = bat.send(None) + solars = solar.send(None) + days = day.send(None) + prev_days = prev_day.send(None) + totals = total.send(None) + + result = {} + t_stamp = time.strptime(bats['time'].split('.')[0], + "%Y-%m-%dT%H:%M:%S") + result['time'] = time.strftime("%d.%m.%Y %H:%M:%S", t_stamp) + result['state'] = states['state'] + result['ChCurr'] = bats['last_current'] + result['V_array'] = bats['last_voltage'] + result['perc_array'] = self.helpers.percentageCalc( + bats['last_voltage'], + 48) + result['Psol'] = solars['last_power'] + result['Vsol'] = solars['last_voltage'] + result['Wh_day'] = days['last_Wh'] + result['Pmax_prev_day'] = days['last_Pmax'] + result['Wh_prev_day'] = prev_days['last_Wh'] + result['Pmax_day'] = prev_days['last_Pmax'] + result['total_Wh'] = totals['last_Wh'] + + return result + + def stat_values(self, **kwargs): + '''Max power and daily generation. + ''' + # GET variables now set, ready to reference them + _days = kwargs['days'] + 1 + date = datetime.datetime.strftime(datetime.datetime.now(),"%Y-%m-%d") + measures = [] + result = [] + query = "SELECT mean(power)*24 as DayWh, max(Pmax) AS Pmax "\ + + "FROM mppt WHERE type='solar' OR type='day' "\ + + "AND time > '{} 00:00:00' - {}d "\ + + "GROUP BY time(1d) fill(previous)"\ + + "ORDER BY time DESC" + query = query.format(date, _days) + measure = self.influx_voltage_client.query(query) + tm = [] + P_max = [] + Wh_sol = [] + + for datapoint in measure['mppt']: + row = [] + tstamp = datapoint['time'] + Pmax = datapoint["Pmax"] - 10 + DayWh = datapoint["DayWh"] + result.append([tstamp[:10], Pmax, int(DayWh)]) + return result[:-1] + + def solar_graph_data(self, **q): + ''' + Function to get solar readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time,V_solar,I_solar,P_solar,V_array + ''' + mppt_query_str = "SELECT min(power) AS Pmin, max(power) AS Pmax," \ + + "mean(power) AS Pavg "\ + + "FROM mppt WHERE type='solar' "\ + + "AND time > now() - {} "\ + + "AND time > now() - {} "\ + + "GROUP BY time({}) fill(previous)"\ + + "ORDER BY time ASC" + mppt_query = mppt_query_str.format(q['range'], + q['end'], + q['granularity']) + query = "SELECT mean(voltage) as Usol, " \ + + "mean(power) as Psol, mean(power)/mean(voltage) as Isol " \ + + "FROM mppt WHERE type='solar' " \ + + "AND time > NOW() - {} " \ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}) fill(previous) ORDER BY time DESC" + query = query.format(q['range'], + q['end'], + q['granularity']) + bat_volt_query = "SELECT mean(voltage) as Varr "\ + + "FROM mppt WHERE type='bat' "\ + + "AND time > NOW() - {} "\ + + "AND time < NOW() - {} "\ + + "GROUP BY time({}) "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + bat_volt_query = bat_volt_query.format(q['range'], + q['end'], + q['granularity']) + bat_measures = self.influx_voltage_client.query(bat_volt_query) + measures = self.influx_voltage_client.query(query) + mppt_measures = self.influx_voltage_client.query(mppt_query) + header = "time,V_solar,I_solar,P_solar,V_array\n" + yield header + volt_dict = {} + for voltage in bat_measures["mppt"]: + volt_dict.update({voltage["time"]: voltage["Varr"]}) + for datapoint in measures["mppt"]: + tm = str(datapoint["time"]).strip() + solar_voltage = str(datapoint["Usol"]).strip() + solar_current = str(datapoint["Isol"]).strip() + try: + solar_power = int(datapoint["Psol"]) + solar_power = solar_power - 11 if solar_power > 11 else 0 + solar_power = str(solar_power).strip() + except: + solar_power = str(datapoint["Psol"]) + array_voltage = str(volt_dict[tm]) + yield "{},{},{},{},{}\n".format(tm, solar_voltage, + solar_current, solar_power, + array_voltage) + + +class Expose(object): + def __init__(self): + ''' Default expose class. Takes other classes and exposes them + via html. GET checks should be defined here. + Function args and kwargs don't need to be checked, as they are internal + and not exposed. + ''' + self.energy = DynamicEnergy() + self.weather = DynamicWeather() + self.status = DynamicStatus() + self.iot = DynamicIoT() + self.helpers = Helper() + + @cherrypy.expose + def index(self): + return "Index, MOFO" + + @cherrypy.expose + def solar_realtime_data(self, **kwargs): + q = check_GET(kwargs) + res_type = q['type'] + result = self.energy.FreshValues() + if res_type == 'json': + return json.dumps(result) + else: + return result + + @cherrypy.expose + def solar_monitor(self, **kwargs): + q = check_GET(kwargs) + sol_monitor = self.energy.solar_graph_data(**q) + return sol_monitor + + @cherrypy.expose + def wind_monitor(self, **kwargs): + q = check_GET(kwargs) + wind_monitor = self.weather.wind_graph_data(**q) + header = "time,Speed,Gusts,Direction\n" + yield header + for speed, gust, direction in zip(wind_monitor['w_speeds'], + wind_monitor['w_gusts'], + wind_monitor['w_dirs']): + yield "{},{},{},{}\n".format(speed['time'], + speed['value'], + gust['value'], + direction['value']) + + @cherrypy.expose + def temphumi_monitor(self, **kwargs): + q = check_GET(kwargs) + temphumi_monitor = self.weather.temphumi_graph_data(**q) + header = "time,T(ins),T(out),Humi(ins),Humi(out)\n" + yield header + for Thin, Thout in zip(temphumi_monitor['th_ins'], + temphumi_monitor['th_outs']): + tm_temp = str(Thin["time"]).strip() + temp_in_val = str(Thin["Temp"]).strip() + temp_out_val = str(Thout["Temp"]).strip() + hum_in_val = str(Thin["Hum"]).strip() + hum_out_val = str(Thout["Hum"]).strip() + yield "{},{},{},{},{}\n".format(tm_temp, + temp_in_val, + temp_out_val, + hum_in_val, + hum_out_val) + + @cherrypy.expose + def usense_temphumi_monitor(self, **kwargs): + q = check_GET(kwargs) + usense_temphumi_monitor = self.iot.usense_temphumi_graph_data(**q) + header = "time,T(tea),Humi(tea)\n" + yield header + for temp_humi in usense_temphumi_monitor['temphumis']: + tm_temp = temp_humi["time"] + temp_tea_val = temp_humi["temp"] + hum_tea_val = temp_humi["hum"] + yield "{},{},{}\n".format(tm_temp, temp_tea_val, hum_tea_val) + + @cherrypy.expose + def pressure_monitor(self, **kwargs): + q = check_GET(kwargs) + pressure_monitor = self.weather.pressure_graph_data(**q) + header = "time,Pressure\n" + yield header + for Press, Tout in zip(pressure_monitor["press_raws"], + pressure_monitor["Touts"]): + tm = str(Press["time"]).strip() + pressure = self.helpers.pressure_to_std_atm(Press["pressure"], + Tout["Tout"], + height_above_sea_level) + yield "{},{}\n".format(tm, pressure) + + @cherrypy.expose + def cpumem_monitor(self, **kwargs): + q = check_GET(kwargs) + cpumem_monitor = self.status.cpumem_graph_data(**q) + header = "time,Cpu,Mem,Disk\n" + yield header + for cpu, disk, mem in zip(cpumem_monitor["cpus"], + cpumem_monitor["disks"], + cpumem_monitor["mems"]): + tm = str(cpu["time"]).strip() + cpu = str(cpu["usage"]).strip() + mem = str(mem["usage"]).strip() + disk = str(disk["usage"]).strip() + yield "{},{},{},{}\n".format(tm, cpu, mem, disk) + + @cherrypy.expose + def network_monitor(self, **kwargs): + q = check_GET(kwargs) + network_monitor = self.status.network_graph_data(**q) + header = "time,Bin,Bout,Din,Dout,Ein,Eout\n" + yield header + for traf in network_monitor["traffic"]: + tm = str(traf["time"]).strip() + Bin = str(traf["traffic_b_in"]/1024).strip() + Bout = str(traf["traffic_b_out"]/1024).strip() + Din = str(traf["traffic_drop_in"]).strip() + Dout = str(traf["traffic_drop_out"]).strip() + Ein = str(traf["traffic_e_in"]).strip() + Eout = str(traf["traffic_e_out"]).strip() + yield "{},{},{},{},{},{},{}\n".format( + tm, + Bin, + Bout, + Din, + Dout, + Ein, + Eout + ) + + @cherrypy.expose + def solcap_monitor(self, **kwargs): + q = check_GET(kwargs) + solcap_monitor = self.status.solcap_graph_data(**q) + header = "time,Solar,Capacitor\n" + yield header + for Sol, Cap in zip(solcap_monitor['sols'], + solcap_monitor['caps']): + tm = str(Sol["time"]).strip() + solar_value = float(str(Sol["voltage"]).strip()) / 100 + cap_value = float(str(Cap["voltage"]).strip()) + yield "{},{},{}\n".format(tm, solar_value, cap_value) + + @cherrypy.expose + def esp_battery_monitor(self, **kwargs): + q = check_GET(kwargs) + place_tag = q['type'] + esp_bat_monitor = self.iot.esp_battery_graph_data(**q) + header = "time,batt({_place_tag}),batt_perc({_place_tag})\n".format( + _place_tag=place_tag + ) + yield header + for batt in esp_bat_monitor['volts']: + tm_batt = str(batt["time"]).strip() + try: + batt_val = str(float(batt["voltage"]) / 1023).strip() + except: + batt_val = 0 + batt_perc = 4.39 + yield "{},{},{}\n".format(tm_batt, batt_val, batt_perc) + + +class DynamicStatus(object): + def __init__(self): + self.influx_status_client = config.Conf.influx_status_client + + def cpumem_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(usage) AS usage "\ + + "FROM RasPI "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_status_client.query(query) + cpu = db_results.get_points(measurement='RasPI', + tags={'type': 'cpu'}) + disk = db_results.get_points(measurement='RasPI', + tags={'type': 'disk'}) + mem = db_results.get_points(measurement='RasPI', + tags={'type': 'mem'}) + cpus = [cpu_use for cpu_use in cpu] + disks = [disks_use for disks_use in disk] + mems = [mems_use for mems_use in mem] + # Let's get the data from DB + result = {'cpus':cpus, 'disks':disks, 'mems':mems} + return result + + def network_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT derivative(max(*)) AS traffic "\ + + "FROM net "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_status_client.query(query) + traffic = db_results.get_points(measurement='net', + tags={'type': q['type']}) + + traffics = [traf for traf in traffic] + result = {'traffic': traffics} + return result + + def solcap_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(voltage) as voltage "\ + + "FROM iss "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_status_client.query(query) + sol = db_results.get_points(measurement='iss', + tags={'type': 'solar'}) + cap = db_results.get_points(measurement='iss', + tags={'type': 'capcaitor'}) + + sols = [solar for solar in sol] + caps = [capacitor for capacitor in cap] + result = {'sols': sols, 'caps': caps} + return result + + + +
[docs]class DynamicIoT(object): + ''' All IoT related methods. Currently, this goes to the weatherDB, + but is subject to change in the future. + ''' + def __init__(self): + self.influx_iot_client = config.Conf.influx_iot_client + +
[docs] def esp_battery_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(battery) as voltage "\ + + "FROM usense "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_iot_client.query(query) + volt = db_results.get_points(measurement='usense', + tags={'type': q['type']}) + + volts = [bat_volt for bat_volt in volt] + result = {'volts': volts} + return result
+ +
[docs] def usense_temphumi_graph_data(self, **q): + ''' + Function to get RasPi value readings from InfluxDB. + These parsed into a CSV + ''' + query = "SELECT mean(temperature) as temp, "\ + + "mean(humidity) as hum "\ + + "FROM usense "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_iot_client.query(query) + temphumi = db_results.get_points(measurement='usense', + tags={'type': q['type']}) + + temphumis = [temp_humi for temp_humi in temphumi] + result = {'temphumis': temphumis} + return result
+ + +
[docs]class DynamicWeather(object): + '''Weather reports, taken dynamically from InfluxDB. + All measurements tailored to suit the Davis Vantage Vue weather + station''' + def __init__(self): + self.influx_weather_client = config.Conf.influx_weather_client + +
[docs] def wind_graph_data(self, **q): + '''Function to get wind value readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time, Speed, Gusts, Direction + ''' + query = "SELECT mean(value) AS value FROM wind "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_weather_client.query(query) + w_speed = db_results.get_points(measurement='wind', + tags={'type': 'speed'}) + w_dir = db_results.get_points(measurement='wind', + tags={'type': 'direction'}) + w_gust = db_results.get_points(measurement='wind', + tags={'type': 'windgust'}) + w_speeds = [speed for speed in w_speed] + w_dirs = [direction for direction in w_dir] + w_gusts = [gust for gust in w_gust] + # Let's get the data from DB + result = {'w_speeds':w_speeds, 'w_dirs':w_dirs, 'w_gusts':w_gusts} + return result
+ +
[docs] def temphumi_graph_data(self, **q): + '''Function to get ttmper and humidity value readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time, Speed, Gusts, Direction + ''' + query = "SELECT mean(humidity) AS Hum, "\ + + "mean(temperature) AS Temp "\ + + "FROM temphumi "\ + + "WHERE time > NOW() - {} "\ + + "AND time < NOW() - {} " \ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_weather_client.query(query) + th_in = db_results.get_points(measurement='temphumi', + tags={'type': 'internal'}) + th_out = db_results.get_points(measurement='temphumi', + tags={'type': 'external'}) + + th_ints = [temphumi_in for temphumi_in in th_in] + th_outs = [temphumi_out for temphumi_out in th_out] + # Let's get the data from DB + result = {'th_ins':th_ints, 'th_outs':th_outs} + return result
+ +
[docs] def pressure_graph_data(self, **q): + ''' + Function to get pressure readings from InfluxDB. + These parsed into a CSV + + yields: csv in raw, text format + time, Pressure + + ''' + query = "SELECT mean(pressure) AS pressure, "\ + + "mean(temperature) as Tout "\ + + "FROM temphumi "\ + + "WHERE type = 'raw' OR type='external' "\ + + "AND time > NOW() - {} "\ + + "AND time < NOW() - {} "\ + + "GROUP BY time({}), type "\ + + "FILL(previous) "\ + + "ORDER BY time ASC" + + query = query.format(q['range'], + q['end'], + q['granularity']) + db_results = self.influx_weather_client.query(query) + press_raws = db_results.get_points(measurement='temphumi', + tags={'type': 'raw'}) + Touts = db_results.get_points(measurement='temphumi', + tags={'type': 'external'}) + result = {'press_raws': press_raws, 'Touts': Touts} + return result
+
+ +
+ +
+
+ + +
+ +
+

+ © Copyright 2019, Milan 'Ventil' Toman + +

+
+ Built with Sphinx using a theme provided by Read the Docs. + +
+ +
+
+ +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/doc/build/html/_sources/examples.rst.txt b/doc/build/html/_sources/examples.rst.txt new file mode 100644 index 0000000..87e2866 --- /dev/null +++ b/doc/build/html/_sources/examples.rst.txt @@ -0,0 +1,31 @@ +.. Plutonium reporter documentation master file, created by + sphinx-quickstart on Wed Apr 3 15:53:15 2019. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +============================================== +! +============================================== + +.. toctree:: + :maxdepth: 3 + :caption: Contents: + + +Dynamic data +===================== +.. automodule:: modules.dynamic + :members: + +Dynamic Weather +================ +.. autoclass:: modules.dynamic.DynamicWeather + :members: + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/doc/build/html/_sources/index.rst.txt b/doc/build/html/_sources/index.rst.txt new file mode 100644 index 0000000..724c0e0 --- /dev/null +++ b/doc/build/html/_sources/index.rst.txt @@ -0,0 +1,78 @@ +.. Plutonium reporter documentation master file, created by + sphinx-quickstart on Wed Apr 3 15:53:15 2019. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +============================================== +DOC: Plutonium reporter +============================================== + +.. toctree:: + :maxdepth: 3 + :caption: Contents: + + introduction + + +Scope +===== +This document covers the **software part** of the reporter, although it consists +of a multitude of hw technologies, please keep that in mind. + +Purpose +======== + +Delivering aggregated and comprehensive representation of data-value pairs +in such a way, that even a complete idiot can read them. *This project is +created by AND for me.* + +In short, this application spins up a web server and on its address plots and +displays values gathered from various sources. + +An example granted: https://bastart.spoton.cz + +Sources +-------- + +The sources for feeding the **Plutonium** include: + +- Davis Vantage vue weather station (with a couple HW mods) +- Victron MPPT solar converter (Utilizing the Victron Direct RS232 protocol) +- CPU, MEM, DISK, (W)LAN statistics, plotted +- Custom ESP8266 data loggers + - Temp / Humidity + battery logging + - Current monitoring for LED lighting + +Discrepancies and hardware dependencies +--------------------------------------- +Obviously, all the monitoring cannot be done without proper HW equipment. +Although this server is primarily aimed at use on a Raspberry PI, it can be +installed on an old notebook, or similar, as the platform is Python3 and thus +independent of the OS. + +Solar / MPPT +++++++++++++ +- Victron MPPT solar charge controller (Bluesolar) +- RS232 -> USB or similar, to get the data to RasPi + +Davis Vantage Vue ++++++++++++++++++ +- Obviously the Davis Vantage Vue weather station +- The CC1101 / wireless version +- arduino mini / Uno @ 3.3V +- CC1101 receiver with a couple other components + +RasPI statistics +++++++++++++++++ +- Just the RasPI + +ESP8266 stuff ++++++++++++++ +- basically anything that can feed into the influxDB. + +Indices and tables +=================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/doc/build/html/_sources/introduction.rst.txt b/doc/build/html/_sources/introduction.rst.txt new file mode 100644 index 0000000..aa6f9d1 --- /dev/null +++ b/doc/build/html/_sources/introduction.rst.txt @@ -0,0 +1,134 @@ +.. Plutonium reporter documentation master file, created by + sphinx-quickstart on Wed Apr 3 15:53:15 2019. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + + +Introduction to Plutonium ++++++++++++++++++++++++++ + +.. toctree:: + :maxdepth: 5 + :caption: Contents: + +Directory structure +=================== +Following structure is applied to this project. Some directories are +minified in this view on purpose. +:: + . + ├── chttpd.py + ├── config + │   └── plutonium.ini + ├── config.py + ├── doc ... (documentation in sphinx) + ├── index.py + ├── localdeploy.sh + ├── modules + │   ├── dynamic.py + │   ├── status.py + │   ├── temphumi.py + │   ├── voltage.py + │   └── weather.py + ├── static + │   ├── css + │   │   ├── bootstrap.css + │   │   └── dygraph.css ... + │   ├── img + │   │   ├── battery_0.png ... + │   └── js + │   ├── solar_graph.js + │   ├── status_graph.js + │   ├── temphum_graph.js + │   └── weather_graph.js ... + ├── templates + │   ├── footer.html + │   ├── header.html + │   ├── landing_page.html + │   ├── status_admin.html + │   ├── temphumi_admin.html + │   ├── top_menu.html + │   ├── voltage_admin.html + │   └── weather_admin.html + └── TODO.txt + +CherryPy configuration (config.py) +================================== +Configuration is stored in a separate file statically, so each submodule can +load the same configuration. This should be variables, that are project-wide. + +CherryPy configuration file (plutonium.ini) +------------------------------------------- +Configuration file, .ini style. Option = value. File resides in ./config +directory. It is read by confi.py and parsed into a dict(), available +throughout the project. +:: + _server_protocol = https + _server_name = bastart.spoton.cz + _server_port = 80 + _server_bind_ip = 0.0.0.0 + _influx_host = localhost + _influx_port = 8086 + _influx_user = pi + _influx_pwd = password + _influx_weather_db = weather_v2 + _influx_status_db = status + _influx_voltage_db = voltage + _influx_IoT_db = weather_v2 + +Configuration classes and functions +------------------------------------ +.. automodule:: config + :members: + +CherryPy server (chttpd.py) +=========================== +The server uses CherryPy module. For more information, please consult the +Cherrypy documentation. + +CHTTPD.py is also the executable, that can be launched as a standalone +application by simply typing ./chttpd.py, or python3 chttpd.py + +.. automodule:: chttpd + :members: + +Modules and web paths +--------------------- + +Modules are located in the `modules` directory, hence the imports from a +subdirectory +:: + from modules import voltage + from modules import weather + from modules import dynamic + from modules import status + from modules import temphumi + +As can be seen, each class / module is mounted under a specific web path. This +is the preferred way of future expansion modules. +:: + cherrypy.tree.mount(voltage.EnergyInfo(), "/", conf) + cherrypy.tree.mount(voltage.EnergyInfo(), "/energy", conf) + cherrypy.tree.mount(weather.WeatherInfo(), "/weather", conf) + cherrypy.tree.mount(status.StatusInfo(), "/status", conf) + cherrypy.tree.mount(dynamic.Expose(), "/data", conf) + cherrypy.tree.mount(temphumi.PuerhInfo(), "/temphumi", conf) + +Index (index.py) +================ +Reserved for future use. Currently not displayed, as the EnergyInfo() class is +mounted under root(/) of the web, defined in chttpd.py +:: + cherrypy.tree.mount(voltage.EnergyInfo(), "/", conf) + +.. automodule:: index + :members: + + + +Indices and tables +================== + +* :ref:`genindex` +* :ref:`modindex` +* :ref:`search` diff --git a/doc/build/html/_static/ajax-loader.gif b/doc/build/html/_static/ajax-loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..61faf8cab23993bd3e1560bff0668bd628642330 GIT binary patch literal 673 zcmZ?wbhEHb6krfw_{6~Q|Nno%(3)e{?)x>&1u}A`t?OF7Z|1gRivOgXi&7IyQd1Pl zGfOfQ60;I3a`F>X^fL3(@);C=vM_KlFfb_o=k{|A33hf2a5d61U}gjg=>Rd%XaNQW zW@Cw{|b%Y*pl8F?4B9 zlo4Fz*0kZGJabY|>}Okf0}CCg{u4`zEPY^pV?j2@h+|igy0+Kz6p;@SpM4s6)XEMg z#3Y4GX>Hjlml5ftdH$4x0JGdn8~MX(U~_^d!Hi)=HU{V%g+mi8#UGbE-*ao8f#h+S z2a0-5+vc7MU$e-NhmBjLIC1v|)9+Im8x1yacJ7{^tLX(ZhYi^rpmXm0`@ku9b53aN zEXH@Y3JaztblgpxbJt{AtE1ad1Ca>{v$rwwvK(>{m~Gf_=-Ro7Fk{#;i~+{{>QtvI yb2P8Zac~?~=sRA>$6{!(^3;ZP0TPFR(G_-UDU(8Jl0?(IXu$~#4A!880|o%~Al1tN literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/alabaster.css b/doc/build/html/_static/alabaster.css new file mode 100644 index 0000000..0eddaeb --- /dev/null +++ b/doc/build/html/_static/alabaster.css @@ -0,0 +1,701 @@ +@import url("basic.css"); + +/* -- page layout ----------------------------------------------------------- */ + +body { + font-family: Georgia, serif; + font-size: 17px; + background-color: #fff; + color: #000; + margin: 0; + padding: 0; +} + + +div.document { + width: 940px; + margin: 30px auto 0 auto; +} + +div.documentwrapper { + float: left; + width: 100%; +} + +div.bodywrapper { + margin: 0 0 0 220px; +} + +div.sphinxsidebar { + width: 220px; + font-size: 14px; + line-height: 1.5; +} + +hr { + border: 1px solid #B1B4B6; +} + +div.body { + background-color: #fff; + color: #3E4349; + padding: 0 30px 0 30px; +} + +div.body > .section { + text-align: left; +} + +div.footer { + width: 940px; + margin: 20px auto 30px auto; + font-size: 14px; + color: #888; + text-align: right; +} + +div.footer a { + color: #888; +} + +p.caption { + font-family: inherit; + font-size: inherit; +} + + +div.relations { + display: none; +} + + +div.sphinxsidebar a { + color: #444; + text-decoration: none; + border-bottom: 1px dotted #999; +} + +div.sphinxsidebar a:hover { + border-bottom: 1px solid #999; +} + +div.sphinxsidebarwrapper { + padding: 18px 10px; +} + +div.sphinxsidebarwrapper p.logo { + padding: 0; + margin: -10px 0 0 0px; + text-align: center; +} + +div.sphinxsidebarwrapper h1.logo { + margin-top: -10px; + text-align: center; + margin-bottom: 5px; + text-align: left; +} + +div.sphinxsidebarwrapper h1.logo-name { + margin-top: 0px; +} + +div.sphinxsidebarwrapper p.blurb { + margin-top: 0; + font-style: normal; +} + +div.sphinxsidebar h3, +div.sphinxsidebar h4 { + font-family: Georgia, serif; + color: #444; + font-size: 24px; + font-weight: normal; + margin: 0 0 5px 0; + padding: 0; +} + +div.sphinxsidebar h4 { + font-size: 20px; +} + +div.sphinxsidebar h3 a { + color: #444; +} + +div.sphinxsidebar p.logo a, +div.sphinxsidebar h3 a, +div.sphinxsidebar p.logo a:hover, +div.sphinxsidebar h3 a:hover { + border: none; +} + +div.sphinxsidebar p { + color: #555; + margin: 10px 0; +} + +div.sphinxsidebar ul { + margin: 10px 0; + padding: 0; + color: #000; +} + +div.sphinxsidebar ul li.toctree-l1 > a { + font-size: 120%; +} + +div.sphinxsidebar ul li.toctree-l2 > a { + font-size: 110%; +} + +div.sphinxsidebar input { + border: 1px solid #CCC; + font-family: Georgia, serif; + font-size: 1em; +} + +div.sphinxsidebar hr { + border: none; + height: 1px; + color: #AAA; + background: #AAA; + + text-align: left; + margin-left: 0; + width: 50%; +} + +div.sphinxsidebar .badge { + border-bottom: none; +} + +div.sphinxsidebar .badge:hover { + border-bottom: none; +} + +/* To address an issue with donation coming after search */ +div.sphinxsidebar h3.donation { + margin-top: 10px; +} + +/* -- body styles ----------------------------------------------------------- */ + +a { + color: #004B6B; + text-decoration: underline; +} + +a:hover { + color: #6D4100; + text-decoration: underline; +} + +div.body h1, +div.body h2, +div.body h3, +div.body h4, +div.body h5, +div.body h6 { + font-family: Georgia, serif; + font-weight: normal; + margin: 30px 0px 10px 0px; + padding: 0; +} + +div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; } +div.body h2 { font-size: 180%; } +div.body h3 { font-size: 150%; } +div.body h4 { font-size: 130%; } +div.body h5 { font-size: 100%; } +div.body h6 { font-size: 100%; } + +a.headerlink { + color: #DDD; + padding: 0 4px; + text-decoration: none; +} + +a.headerlink:hover { + color: #444; + background: #EAEAEA; +} + +div.body p, div.body dd, div.body li { + line-height: 1.4em; +} + +div.admonition { + margin: 20px 0px; + padding: 10px 30px; + background-color: #EEE; + border: 1px solid #CCC; +} + +div.admonition tt.xref, div.admonition code.xref, div.admonition a tt { + background-color: #FBFBFB; + border-bottom: 1px solid #fafafa; +} + +div.admonition p.admonition-title { + font-family: Georgia, serif; + font-weight: normal; + font-size: 24px; + margin: 0 0 10px 0; + padding: 0; + line-height: 1; +} + +div.admonition p.last { + margin-bottom: 0; +} + +div.highlight { + background-color: #fff; +} + +dt:target, .highlight { + background: #FAF3E8; +} + +div.warning { + background-color: #FCC; + border: 1px solid #FAA; +} + +div.danger { + background-color: #FCC; + border: 1px solid #FAA; + -moz-box-shadow: 2px 2px 4px #D52C2C; + -webkit-box-shadow: 2px 2px 4px #D52C2C; + box-shadow: 2px 2px 4px #D52C2C; +} + +div.error { + background-color: #FCC; + border: 1px solid #FAA; + -moz-box-shadow: 2px 2px 4px #D52C2C; + -webkit-box-shadow: 2px 2px 4px #D52C2C; + box-shadow: 2px 2px 4px #D52C2C; +} + +div.caution { + background-color: #FCC; + border: 1px solid #FAA; +} + +div.attention { + background-color: #FCC; + border: 1px solid #FAA; +} + +div.important { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.note { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.tip { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.hint { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.seealso { + background-color: #EEE; + border: 1px solid #CCC; +} + +div.topic { + background-color: #EEE; +} + +p.admonition-title { + display: inline; +} + +p.admonition-title:after { + content: ":"; +} + +pre, tt, code { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; + font-size: 0.9em; +} + +.hll { + background-color: #FFC; + margin: 0 -12px; + padding: 0 12px; + display: block; +} + +img.screenshot { +} + +tt.descname, tt.descclassname, code.descname, code.descclassname { + font-size: 0.95em; +} + +tt.descname, code.descname { + padding-right: 0.08em; +} + +img.screenshot { + -moz-box-shadow: 2px 2px 4px #EEE; + -webkit-box-shadow: 2px 2px 4px #EEE; + box-shadow: 2px 2px 4px #EEE; +} + +table.docutils { + border: 1px solid #888; + -moz-box-shadow: 2px 2px 4px #EEE; + -webkit-box-shadow: 2px 2px 4px #EEE; + box-shadow: 2px 2px 4px #EEE; +} + +table.docutils td, table.docutils th { + border: 1px solid #888; + padding: 0.25em 0.7em; +} + +table.field-list, table.footnote { + border: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + +table.footnote { + margin: 15px 0; + width: 100%; + border: 1px solid #EEE; + background: #FDFDFD; + font-size: 0.9em; +} + +table.footnote + table.footnote { + margin-top: -15px; + border-top: none; +} + +table.field-list th { + padding: 0 0.8em 0 0; +} + +table.field-list td { + padding: 0; +} + +table.field-list p { + margin-bottom: 0.8em; +} + +/* Cloned from + * https://github.com/sphinx-doc/sphinx/commit/ef60dbfce09286b20b7385333d63a60321784e68 + */ +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +table.footnote td.label { + width: .1px; + padding: 0.3em 0 0.3em 0.5em; +} + +table.footnote td { + padding: 0.3em 0.5em; +} + +dl { + margin: 0; + padding: 0; +} + +dl dd { + margin-left: 30px; +} + +blockquote { + margin: 0 0 0 30px; + padding: 0; +} + +ul, ol { + /* Matches the 30px from the narrow-screen "li > ul" selector below */ + margin: 10px 0 10px 30px; + padding: 0; +} + +pre { + background: #EEE; + padding: 7px 30px; + margin: 15px 0px; + line-height: 1.3em; +} + +div.viewcode-block:target { + background: #ffd; +} + +dl pre, blockquote pre, li pre { + margin-left: 0; + padding-left: 30px; +} + +tt, code { + background-color: #ecf0f3; + color: #222; + /* padding: 1px 2px; */ +} + +tt.xref, code.xref, a tt { + background-color: #FBFBFB; + border-bottom: 1px solid #fff; +} + +a.reference { + text-decoration: none; + border-bottom: 1px dotted #004B6B; +} + +/* Don't put an underline on images */ +a.image-reference, a.image-reference:hover { + border-bottom: none; +} + +a.reference:hover { + border-bottom: 1px solid #6D4100; +} + +a.footnote-reference { + text-decoration: none; + font-size: 0.7em; + vertical-align: top; + border-bottom: 1px dotted #004B6B; +} + +a.footnote-reference:hover { + border-bottom: 1px solid #6D4100; +} + +a:hover tt, a:hover code { + background: #EEE; +} + + +@media screen and (max-width: 870px) { + + div.sphinxsidebar { + display: none; + } + + div.document { + width: 100%; + + } + + div.documentwrapper { + margin-left: 0; + margin-top: 0; + margin-right: 0; + margin-bottom: 0; + } + + div.bodywrapper { + margin-top: 0; + margin-right: 0; + margin-bottom: 0; + margin-left: 0; + } + + ul { + margin-left: 0; + } + + li > ul { + /* Matches the 30px from the "ul, ol" selector above */ + margin-left: 30px; + } + + .document { + width: auto; + } + + .footer { + width: auto; + } + + .bodywrapper { + margin: 0; + } + + .footer { + width: auto; + } + + .github { + display: none; + } + + + +} + + + +@media screen and (max-width: 875px) { + + body { + margin: 0; + padding: 20px 30px; + } + + div.documentwrapper { + float: none; + background: #fff; + } + + div.sphinxsidebar { + display: block; + float: none; + width: 102.5%; + margin: 50px -30px -20px -30px; + padding: 10px 20px; + background: #333; + color: #FFF; + } + + div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p, + div.sphinxsidebar h3 a { + color: #fff; + } + + div.sphinxsidebar a { + color: #AAA; + } + + div.sphinxsidebar p.logo { + display: none; + } + + div.document { + width: 100%; + margin: 0; + } + + div.footer { + display: none; + } + + div.bodywrapper { + margin: 0; + } + + div.body { + min-height: 0; + padding: 0; + } + + .rtd_doc_footer { + display: none; + } + + .document { + width: auto; + } + + .footer { + width: auto; + } + + .footer { + width: auto; + } + + .github { + display: none; + } +} + + +/* misc. */ + +.revsys-inline { + display: none!important; +} + +/* Make nested-list/multi-paragraph items look better in Releases changelog + * pages. Without this, docutils' magical list fuckery causes inconsistent + * formatting between different release sub-lists. + */ +div#changelog > div.section > ul > li > p:only-child { + margin-bottom: 0; +} + +/* Hide fugly table cell borders in ..bibliography:: directive output */ +table.docutils.citation, table.docutils.citation td, table.docutils.citation th { + border: none; + /* Below needed in some edge cases; if not applied, bottom shadows appear */ + -moz-box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; +} + + +/* relbar */ + +.related { + line-height: 30px; + width: 100%; + font-size: 0.9rem; +} + +.related.top { + border-bottom: 1px solid #EEE; + margin-bottom: 20px; +} + +.related.bottom { + border-top: 1px solid #EEE; +} + +.related ul { + padding: 0; + margin: 0; + list-style: none; +} + +.related li { + display: inline; +} + +nav#rellinks { + float: right; +} + +nav#rellinks li+li:before { + content: "|"; +} + +nav#breadcrumbs li+li:before { + content: "\00BB"; +} + +/* Hide certain items when printing */ +@media print { + div.related { + display: none; + } +} \ No newline at end of file diff --git a/doc/build/html/_static/basic.css b/doc/build/html/_static/basic.css new file mode 100644 index 0000000..0807176 --- /dev/null +++ b/doc/build/html/_static/basic.css @@ -0,0 +1,676 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 230px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li div.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 450px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px 7px 0 7px; + background-color: #ffe; + width: 40%; + float: right; +} + +p.sidebar-title { + font-weight: bold; +} + +/* -- topics ---------------------------------------------------------------- */ + +div.topic { + border: 1px solid #ccc; + padding: 7px 7px 0 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +div.admonition dl { + margin-bottom: 0; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +table.footnote td, table.footnote th { + border: 0 !important; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist td { + vertical-align: top; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +dl { + margin-bottom: 15px; +} + +dd p { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; +} + +td.linenos pre { + padding: 5px 0px; + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + margin-left: 0.5em; +} + +table.highlighttable td { + padding: 0 0.5em 0 0.5em; +} + +div.code-block-caption { + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +div.code-block-caption + div > div.highlight > pre { + margin-top: 0; +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + padding: 1em 1em 0; +} + +div.literal-block-wrapper div.highlight { + margin: 0; +} + +code.descname { + background-color: transparent; + font-weight: bold; + font-size: 1.2em; +} + +code.descclassname { + background-color: transparent; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: relative; + left: 0px; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.css b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.css new file mode 100644 index 0000000..09e88ce --- /dev/null +++ b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.css @@ -0,0 +1,1109 @@ +/*! + * Bootstrap Responsive v2.3.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */ + +.clearfix { + *zoom: 1; +} + +.clearfix:before, +.clearfix:after { + display: table; + line-height: 0; + content: ""; +} + +.clearfix:after { + clear: both; +} + +.hide-text { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.input-block-level { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +@-ms-viewport { + width: device-width; +} + +.hidden { + display: none; + visibility: hidden; +} + +.visible-phone { + display: none !important; +} + +.visible-tablet { + display: none !important; +} + +.hidden-desktop { + display: none !important; +} + +.visible-desktop { + display: inherit !important; +} + +@media (min-width: 768px) and (max-width: 979px) { + .hidden-desktop { + display: inherit !important; + } + .visible-desktop { + display: none !important ; + } + .visible-tablet { + display: inherit !important; + } + .hidden-tablet { + display: none !important; + } +} + +@media (max-width: 767px) { + .hidden-desktop { + display: inherit !important; + } + .visible-desktop { + display: none !important; + } + .visible-phone { + display: inherit !important; + } + .hidden-phone { + display: none !important; + } +} + +.visible-print { + display: none !important; +} + +@media print { + .visible-print { + display: inherit !important; + } + .hidden-print { + display: none !important; + } +} + +@media (min-width: 1200px) { + .row { + margin-left: -30px; + *zoom: 1; + } + .row:before, + .row:after { + display: table; + line-height: 0; + content: ""; + } + .row:after { + clear: both; + } + [class*="span"] { + float: left; + min-height: 1px; + margin-left: 30px; + } + .container, + .navbar-static-top .container, + .navbar-fixed-top .container, + .navbar-fixed-bottom .container { + width: 1170px; + } + .span12 { + width: 1170px; + } + .span11 { + width: 1070px; + } + .span10 { + width: 970px; + } + .span9 { + width: 870px; + } + .span8 { + width: 770px; + } + .span7 { + width: 670px; + } + .span6 { + width: 570px; + } + .span5 { + width: 470px; + } + .span4 { + width: 370px; + } + .span3 { + width: 270px; + } + .span2 { + width: 170px; + } + .span1 { + width: 70px; + } + .offset12 { + margin-left: 1230px; + } + .offset11 { + margin-left: 1130px; + } + .offset10 { + margin-left: 1030px; + } + .offset9 { + margin-left: 930px; + } + .offset8 { + margin-left: 830px; + } + .offset7 { + margin-left: 730px; + } + .offset6 { + margin-left: 630px; + } + .offset5 { + margin-left: 530px; + } + .offset4 { + margin-left: 430px; + } + .offset3 { + margin-left: 330px; + } + .offset2 { + margin-left: 230px; + } + .offset1 { + margin-left: 130px; + } + .row-fluid { + width: 100%; + *zoom: 1; + } + .row-fluid:before, + .row-fluid:after { + display: table; + line-height: 0; + content: ""; + } + .row-fluid:after { + clear: both; + } + .row-fluid [class*="span"] { + display: block; + float: left; + width: 100%; + min-height: 30px; + margin-left: 2.564102564102564%; + *margin-left: 2.5109110747408616%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + } + .row-fluid [class*="span"]:first-child { + margin-left: 0; + } + .row-fluid .controls-row [class*="span"] + [class*="span"] { + margin-left: 2.564102564102564%; + } + .row-fluid .span12 { + width: 100%; + *width: 99.94680851063829%; + } + .row-fluid .span11 { + width: 91.45299145299145%; + *width: 91.39979996362975%; + } + .row-fluid .span10 { + width: 82.90598290598291%; + *width: 82.8527914166212%; + } + .row-fluid .span9 { + width: 74.35897435897436%; + *width: 74.30578286961266%; + } + .row-fluid .span8 { + width: 65.81196581196582%; + *width: 65.75877432260411%; + } + .row-fluid .span7 { + width: 57.26495726495726%; + *width: 57.21176577559556%; + } + .row-fluid .span6 { + width: 48.717948717948715%; + *width: 48.664757228587014%; + } + .row-fluid .span5 { + width: 40.17094017094017%; + *width: 40.11774868157847%; + } + .row-fluid .span4 { + width: 31.623931623931625%; + *width: 31.570740134569924%; + } + .row-fluid .span3 { + width: 23.076923076923077%; + *width: 23.023731587561375%; + } + .row-fluid .span2 { + width: 14.52991452991453%; + *width: 14.476723040552828%; + } + .row-fluid .span1 { + width: 5.982905982905983%; + *width: 5.929714493544281%; + } + .row-fluid .offset12 { + margin-left: 105.12820512820512%; + *margin-left: 105.02182214948171%; + } + .row-fluid .offset12:first-child { + margin-left: 102.56410256410257%; + *margin-left: 102.45771958537915%; + } + .row-fluid .offset11 { + margin-left: 96.58119658119658%; + *margin-left: 96.47481360247316%; + } + .row-fluid .offset11:first-child { + margin-left: 94.01709401709402%; + *margin-left: 93.91071103837061%; + } + .row-fluid .offset10 { + margin-left: 88.03418803418803%; + *margin-left: 87.92780505546462%; + } + .row-fluid .offset10:first-child { + margin-left: 85.47008547008548%; + *margin-left: 85.36370249136206%; + } + .row-fluid .offset9 { + margin-left: 79.48717948717949%; + *margin-left: 79.38079650845607%; + } + .row-fluid .offset9:first-child { + margin-left: 76.92307692307693%; + *margin-left: 76.81669394435352%; + } + .row-fluid .offset8 { + margin-left: 70.94017094017094%; + *margin-left: 70.83378796144753%; + } + .row-fluid .offset8:first-child { + margin-left: 68.37606837606839%; + *margin-left: 68.26968539734497%; + } + .row-fluid .offset7 { + margin-left: 62.393162393162385%; + *margin-left: 62.28677941443899%; + } + .row-fluid .offset7:first-child { + margin-left: 59.82905982905982%; + *margin-left: 59.72267685033642%; + } + .row-fluid .offset6 { + margin-left: 53.84615384615384%; + *margin-left: 53.739770867430444%; + } + .row-fluid .offset6:first-child { + margin-left: 51.28205128205128%; + *margin-left: 51.175668303327875%; + } + .row-fluid .offset5 { + margin-left: 45.299145299145295%; + *margin-left: 45.1927623204219%; + } + .row-fluid .offset5:first-child { + margin-left: 42.73504273504273%; + *margin-left: 42.62865975631933%; + } + .row-fluid .offset4 { + margin-left: 36.75213675213675%; + *margin-left: 36.645753773413354%; + } + .row-fluid .offset4:first-child { + margin-left: 34.18803418803419%; + *margin-left: 34.081651209310785%; + } + .row-fluid .offset3 { + margin-left: 28.205128205128204%; + *margin-left: 28.0987452264048%; + } + .row-fluid .offset3:first-child { + margin-left: 25.641025641025642%; + *margin-left: 25.53464266230224%; + } + .row-fluid .offset2 { + margin-left: 19.65811965811966%; + *margin-left: 19.551736679396257%; + } + .row-fluid .offset2:first-child { + margin-left: 17.094017094017094%; + *margin-left: 16.98763411529369%; + } + .row-fluid .offset1 { + margin-left: 11.11111111111111%; + *margin-left: 11.004728132387708%; + } + .row-fluid .offset1:first-child { + margin-left: 8.547008547008547%; + *margin-left: 8.440625568285142%; + } + input, + textarea, + .uneditable-input { + margin-left: 0; + } + .controls-row [class*="span"] + [class*="span"] { + margin-left: 30px; + } + input.span12, + textarea.span12, + .uneditable-input.span12 { + width: 1156px; + } + input.span11, + textarea.span11, + .uneditable-input.span11 { + width: 1056px; + } + input.span10, + textarea.span10, + .uneditable-input.span10 { + width: 956px; + } + input.span9, + textarea.span9, + .uneditable-input.span9 { + width: 856px; + } + input.span8, + textarea.span8, + .uneditable-input.span8 { + width: 756px; + } + input.span7, + textarea.span7, + .uneditable-input.span7 { + width: 656px; + } + input.span6, + textarea.span6, + .uneditable-input.span6 { + width: 556px; + } + input.span5, + textarea.span5, + .uneditable-input.span5 { + width: 456px; + } + input.span4, + textarea.span4, + .uneditable-input.span4 { + width: 356px; + } + input.span3, + textarea.span3, + .uneditable-input.span3 { + width: 256px; + } + input.span2, + textarea.span2, + .uneditable-input.span2 { + width: 156px; + } + input.span1, + textarea.span1, + .uneditable-input.span1 { + width: 56px; + } + .thumbnails { + margin-left: -30px; + } + .thumbnails > li { + margin-left: 30px; + } + .row-fluid .thumbnails { + margin-left: 0; + } +} + +@media (min-width: 768px) and (max-width: 979px) { + .row { + margin-left: -20px; + *zoom: 1; + } + .row:before, + .row:after { + display: table; + line-height: 0; + content: ""; + } + .row:after { + clear: both; + } + [class*="span"] { + float: left; + min-height: 1px; + margin-left: 20px; + } + .container, + .navbar-static-top .container, + .navbar-fixed-top .container, + .navbar-fixed-bottom .container { + width: 724px; + } + .span12 { + width: 724px; + } + .span11 { + width: 662px; + } + .span10 { + width: 600px; + } + .span9 { + width: 538px; + } + .span8 { + width: 476px; + } + .span7 { + width: 414px; + } + .span6 { + width: 352px; + } + .span5 { + width: 290px; + } + .span4 { + width: 228px; + } + .span3 { + width: 166px; + } + .span2 { + width: 104px; + } + .span1 { + width: 42px; + } + .offset12 { + margin-left: 764px; + } + .offset11 { + margin-left: 702px; + } + .offset10 { + margin-left: 640px; + } + .offset9 { + margin-left: 578px; + } + .offset8 { + margin-left: 516px; + } + .offset7 { + margin-left: 454px; + } + .offset6 { + margin-left: 392px; + } + .offset5 { + margin-left: 330px; + } + .offset4 { + margin-left: 268px; + } + .offset3 { + margin-left: 206px; + } + .offset2 { + margin-left: 144px; + } + .offset1 { + margin-left: 82px; + } + .row-fluid { + width: 100%; + *zoom: 1; + } + .row-fluid:before, + .row-fluid:after { + display: table; + line-height: 0; + content: ""; + } + .row-fluid:after { + clear: both; + } + .row-fluid [class*="span"] { + display: block; + float: left; + width: 100%; + min-height: 30px; + margin-left: 2.7624309392265194%; + *margin-left: 2.709239449864817%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + } + .row-fluid [class*="span"]:first-child { + margin-left: 0; + } + .row-fluid .controls-row [class*="span"] + [class*="span"] { + margin-left: 2.7624309392265194%; + } + .row-fluid .span12 { + width: 100%; + *width: 99.94680851063829%; + } + .row-fluid .span11 { + width: 91.43646408839778%; + *width: 91.38327259903608%; + } + .row-fluid .span10 { + width: 82.87292817679558%; + *width: 82.81973668743387%; + } + .row-fluid .span9 { + width: 74.30939226519337%; + *width: 74.25620077583166%; + } + .row-fluid .span8 { + width: 65.74585635359117%; + *width: 65.69266486422946%; + } + .row-fluid .span7 { + width: 57.18232044198895%; + *width: 57.12912895262725%; + } + .row-fluid .span6 { + width: 48.61878453038674%; + *width: 48.56559304102504%; + } + .row-fluid .span5 { + width: 40.05524861878453%; + *width: 40.00205712942283%; + } + .row-fluid .span4 { + width: 31.491712707182323%; + *width: 31.43852121782062%; + } + .row-fluid .span3 { + width: 22.92817679558011%; + *width: 22.87498530621841%; + } + .row-fluid .span2 { + width: 14.3646408839779%; + *width: 14.311449394616199%; + } + .row-fluid .span1 { + width: 5.801104972375691%; + *width: 5.747913483013988%; + } + .row-fluid .offset12 { + margin-left: 105.52486187845304%; + *margin-left: 105.41847889972962%; + } + .row-fluid .offset12:first-child { + margin-left: 102.76243093922652%; + *margin-left: 102.6560479605031%; + } + .row-fluid .offset11 { + margin-left: 96.96132596685082%; + *margin-left: 96.8549429881274%; + } + .row-fluid .offset11:first-child { + margin-left: 94.1988950276243%; + *margin-left: 94.09251204890089%; + } + .row-fluid .offset10 { + margin-left: 88.39779005524862%; + *margin-left: 88.2914070765252%; + } + .row-fluid .offset10:first-child { + margin-left: 85.6353591160221%; + *margin-left: 85.52897613729868%; + } + .row-fluid .offset9 { + margin-left: 79.8342541436464%; + *margin-left: 79.72787116492299%; + } + .row-fluid .offset9:first-child { + margin-left: 77.07182320441989%; + *margin-left: 76.96544022569647%; + } + .row-fluid .offset8 { + margin-left: 71.2707182320442%; + *margin-left: 71.16433525332079%; + } + .row-fluid .offset8:first-child { + margin-left: 68.50828729281768%; + *margin-left: 68.40190431409427%; + } + .row-fluid .offset7 { + margin-left: 62.70718232044199%; + *margin-left: 62.600799341718584%; + } + .row-fluid .offset7:first-child { + margin-left: 59.94475138121547%; + *margin-left: 59.838368402492065%; + } + .row-fluid .offset6 { + margin-left: 54.14364640883978%; + *margin-left: 54.037263430116376%; + } + .row-fluid .offset6:first-child { + margin-left: 51.38121546961326%; + *margin-left: 51.27483249088986%; + } + .row-fluid .offset5 { + margin-left: 45.58011049723757%; + *margin-left: 45.47372751851417%; + } + .row-fluid .offset5:first-child { + margin-left: 42.81767955801105%; + *margin-left: 42.71129657928765%; + } + .row-fluid .offset4 { + margin-left: 37.01657458563536%; + *margin-left: 36.91019160691196%; + } + .row-fluid .offset4:first-child { + margin-left: 34.25414364640884%; + *margin-left: 34.14776066768544%; + } + .row-fluid .offset3 { + margin-left: 28.45303867403315%; + *margin-left: 28.346655695309746%; + } + .row-fluid .offset3:first-child { + margin-left: 25.69060773480663%; + *margin-left: 25.584224756083227%; + } + .row-fluid .offset2 { + margin-left: 19.88950276243094%; + *margin-left: 19.783119783707537%; + } + .row-fluid .offset2:first-child { + margin-left: 17.12707182320442%; + *margin-left: 17.02068884448102%; + } + .row-fluid .offset1 { + margin-left: 11.32596685082873%; + *margin-left: 11.219583872105325%; + } + .row-fluid .offset1:first-child { + margin-left: 8.56353591160221%; + *margin-left: 8.457152932878806%; + } + input, + textarea, + .uneditable-input { + margin-left: 0; + } + .controls-row [class*="span"] + [class*="span"] { + margin-left: 20px; + } + input.span12, + textarea.span12, + .uneditable-input.span12 { + width: 710px; + } + input.span11, + textarea.span11, + .uneditable-input.span11 { + width: 648px; + } + input.span10, + textarea.span10, + .uneditable-input.span10 { + width: 586px; + } + input.span9, + textarea.span9, + .uneditable-input.span9 { + width: 524px; + } + input.span8, + textarea.span8, + .uneditable-input.span8 { + width: 462px; + } + input.span7, + textarea.span7, + .uneditable-input.span7 { + width: 400px; + } + input.span6, + textarea.span6, + .uneditable-input.span6 { + width: 338px; + } + input.span5, + textarea.span5, + .uneditable-input.span5 { + width: 276px; + } + input.span4, + textarea.span4, + .uneditable-input.span4 { + width: 214px; + } + input.span3, + textarea.span3, + .uneditable-input.span3 { + width: 152px; + } + input.span2, + textarea.span2, + .uneditable-input.span2 { + width: 90px; + } + input.span1, + textarea.span1, + .uneditable-input.span1 { + width: 28px; + } +} + +@media (max-width: 767px) { + body { + padding-right: 20px; + padding-left: 20px; + } + .navbar-fixed-top, + .navbar-fixed-bottom, + .navbar-static-top { + margin-right: -20px; + margin-left: -20px; + } + .container-fluid { + padding: 0; + } + .dl-horizontal dt { + float: none; + width: auto; + clear: none; + text-align: left; + } + .dl-horizontal dd { + margin-left: 0; + } + .container { + width: auto; + } + .row-fluid { + width: 100%; + } + .row, + .thumbnails { + margin-left: 0; + } + .thumbnails > li { + float: none; + margin-left: 0; + } + [class*="span"], + .uneditable-input[class*="span"], + .row-fluid [class*="span"] { + display: block; + float: none; + width: 100%; + margin-left: 0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + } + .span12, + .row-fluid .span12 { + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + } + .row-fluid [class*="offset"]:first-child { + margin-left: 0; + } + .input-large, + .input-xlarge, + .input-xxlarge, + input[class*="span"], + select[class*="span"], + textarea[class*="span"], + .uneditable-input { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + } + .input-prepend input, + .input-append input, + .input-prepend input[class*="span"], + .input-append input[class*="span"] { + display: inline-block; + width: auto; + } + .controls-row [class*="span"] + [class*="span"] { + margin-left: 0; + } + .modal { + position: fixed; + top: 20px; + right: 20px; + left: 20px; + width: auto; + margin: 0; + } + .modal.fade { + top: -100px; + } + .modal.fade.in { + top: 20px; + } +} + +@media (max-width: 480px) { + .nav-collapse { + -webkit-transform: translate3d(0, 0, 0); + } + .page-header h1 small { + display: block; + line-height: 20px; + } + input[type="checkbox"], + input[type="radio"] { + border: 1px solid #ccc; + } + .form-horizontal .control-label { + float: none; + width: auto; + padding-top: 0; + text-align: left; + } + .form-horizontal .controls { + margin-left: 0; + } + .form-horizontal .control-list { + padding-top: 0; + } + .form-horizontal .form-actions { + padding-right: 10px; + padding-left: 10px; + } + .media .pull-left, + .media .pull-right { + display: block; + float: none; + margin-bottom: 10px; + } + .media-object { + margin-right: 0; + margin-left: 0; + } + .modal { + top: 10px; + right: 10px; + left: 10px; + } + .modal-header .close { + padding: 10px; + margin: -10px; + } + .carousel-caption { + position: static; + } +} + +@media (max-width: 979px) { + body { + padding-top: 0; + } + .navbar-fixed-top, + .navbar-fixed-bottom { + position: static; + } + .navbar-fixed-top { + margin-bottom: 20px; + } + .navbar-fixed-bottom { + margin-top: 20px; + } + .navbar-fixed-top .navbar-inner, + .navbar-fixed-bottom .navbar-inner { + padding: 5px; + } + .navbar .container { + width: auto; + padding: 0; + } + .navbar .brand { + padding-right: 10px; + padding-left: 10px; + margin: 0 0 0 -5px; + } + .nav-collapse { + clear: both; + } + .nav-collapse .nav { + float: none; + margin: 0 0 10px; + } + .nav-collapse .nav > li { + float: none; + } + .nav-collapse .nav > li > a { + margin-bottom: 2px; + } + .nav-collapse .nav > .divider-vertical { + display: none; + } + .nav-collapse .nav .nav-header { + color: #777777; + text-shadow: none; + } + .nav-collapse .nav > li > a, + .nav-collapse .dropdown-menu a { + padding: 9px 15px; + font-weight: bold; + color: #777777; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + } + .nav-collapse .btn { + padding: 4px 10px 4px; + font-weight: normal; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + } + .nav-collapse .dropdown-menu li + li a { + margin-bottom: 2px; + } + .nav-collapse .nav > li > a:hover, + .nav-collapse .nav > li > a:focus, + .nav-collapse .dropdown-menu a:hover, + .nav-collapse .dropdown-menu a:focus { + background-color: #f2f2f2; + } + .navbar-inverse .nav-collapse .nav > li > a, + .navbar-inverse .nav-collapse .dropdown-menu a { + color: #999999; + } + .navbar-inverse .nav-collapse .nav > li > a:hover, + .navbar-inverse .nav-collapse .nav > li > a:focus, + .navbar-inverse .nav-collapse .dropdown-menu a:hover, + .navbar-inverse .nav-collapse .dropdown-menu a:focus { + background-color: #111111; + } + .nav-collapse.in .btn-group { + padding: 0; + margin-top: 5px; + } + .nav-collapse .dropdown-menu { + position: static; + top: auto; + left: auto; + display: none; + float: none; + max-width: none; + padding: 0; + margin: 0 15px; + background-color: transparent; + border: none; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + } + .nav-collapse .open > .dropdown-menu { + display: block; + } + .nav-collapse .dropdown-menu:before, + .nav-collapse .dropdown-menu:after { + display: none; + } + .nav-collapse .dropdown-menu .divider { + display: none; + } + .nav-collapse .nav > li > .dropdown-menu:before, + .nav-collapse .nav > li > .dropdown-menu:after { + display: none; + } + .nav-collapse .navbar-form, + .nav-collapse .navbar-search { + float: none; + padding: 10px 15px; + margin: 10px 0; + border-top: 1px solid #f2f2f2; + border-bottom: 1px solid #f2f2f2; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + } + .navbar-inverse .nav-collapse .navbar-form, + .navbar-inverse .nav-collapse .navbar-search { + border-top-color: #111111; + border-bottom-color: #111111; + } + .navbar .nav-collapse .nav.pull-right { + float: none; + margin-left: 0; + } + .nav-collapse, + .nav-collapse.collapse { + height: 0; + overflow: hidden; + } + .navbar .btn-navbar { + display: block; + } + .navbar-static .navbar-inner { + padding-right: 10px; + padding-left: 10px; + } +} + +@media (min-width: 980px) { + .nav-collapse.collapse { + height: auto !important; + overflow: visible !important; + } +} diff --git a/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.min.css b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.min.css new file mode 100644 index 0000000..f4ede63 --- /dev/null +++ b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap-responsive.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap Responsive v2.3.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@-ms-viewport{width:device-width}.hidden{display:none;visibility:hidden}.visible-phone{display:none!important}.visible-tablet{display:none!important}.hidden-desktop{display:none!important}.visible-desktop{display:inherit!important}@media(min-width:768px) and (max-width:979px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-tablet{display:inherit!important}.hidden-tablet{display:none!important}}@media(max-width:767px){.hidden-desktop{display:inherit!important}.visible-desktop{display:none!important}.visible-phone{display:inherit!important}.hidden-phone{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:inherit!important}.hidden-print{display:none!important}}@media(min-width:1200px){.row{margin-left:-30px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:30px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:1170px}.span12{width:1170px}.span11{width:1070px}.span10{width:970px}.span9{width:870px}.span8{width:770px}.span7{width:670px}.span6{width:570px}.span5{width:470px}.span4{width:370px}.span3{width:270px}.span2{width:170px}.span1{width:70px}.offset12{margin-left:1230px}.offset11{margin-left:1130px}.offset10{margin-left:1030px}.offset9{margin-left:930px}.offset8{margin-left:830px}.offset7{margin-left:730px}.offset6{margin-left:630px}.offset5{margin-left:530px}.offset4{margin-left:430px}.offset3{margin-left:330px}.offset2{margin-left:230px}.offset1{margin-left:130px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.564102564102564%;*margin-left:2.5109110747408616%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.564102564102564%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.45299145299145%;*width:91.39979996362975%}.row-fluid .span10{width:82.90598290598291%;*width:82.8527914166212%}.row-fluid .span9{width:74.35897435897436%;*width:74.30578286961266%}.row-fluid .span8{width:65.81196581196582%;*width:65.75877432260411%}.row-fluid .span7{width:57.26495726495726%;*width:57.21176577559556%}.row-fluid .span6{width:48.717948717948715%;*width:48.664757228587014%}.row-fluid .span5{width:40.17094017094017%;*width:40.11774868157847%}.row-fluid .span4{width:31.623931623931625%;*width:31.570740134569924%}.row-fluid .span3{width:23.076923076923077%;*width:23.023731587561375%}.row-fluid .span2{width:14.52991452991453%;*width:14.476723040552828%}.row-fluid .span1{width:5.982905982905983%;*width:5.929714493544281%}.row-fluid .offset12{margin-left:105.12820512820512%;*margin-left:105.02182214948171%}.row-fluid .offset12:first-child{margin-left:102.56410256410257%;*margin-left:102.45771958537915%}.row-fluid .offset11{margin-left:96.58119658119658%;*margin-left:96.47481360247316%}.row-fluid .offset11:first-child{margin-left:94.01709401709402%;*margin-left:93.91071103837061%}.row-fluid .offset10{margin-left:88.03418803418803%;*margin-left:87.92780505546462%}.row-fluid .offset10:first-child{margin-left:85.47008547008548%;*margin-left:85.36370249136206%}.row-fluid .offset9{margin-left:79.48717948717949%;*margin-left:79.38079650845607%}.row-fluid .offset9:first-child{margin-left:76.92307692307693%;*margin-left:76.81669394435352%}.row-fluid .offset8{margin-left:70.94017094017094%;*margin-left:70.83378796144753%}.row-fluid .offset8:first-child{margin-left:68.37606837606839%;*margin-left:68.26968539734497%}.row-fluid .offset7{margin-left:62.393162393162385%;*margin-left:62.28677941443899%}.row-fluid .offset7:first-child{margin-left:59.82905982905982%;*margin-left:59.72267685033642%}.row-fluid .offset6{margin-left:53.84615384615384%;*margin-left:53.739770867430444%}.row-fluid .offset6:first-child{margin-left:51.28205128205128%;*margin-left:51.175668303327875%}.row-fluid .offset5{margin-left:45.299145299145295%;*margin-left:45.1927623204219%}.row-fluid .offset5:first-child{margin-left:42.73504273504273%;*margin-left:42.62865975631933%}.row-fluid .offset4{margin-left:36.75213675213675%;*margin-left:36.645753773413354%}.row-fluid .offset4:first-child{margin-left:34.18803418803419%;*margin-left:34.081651209310785%}.row-fluid .offset3{margin-left:28.205128205128204%;*margin-left:28.0987452264048%}.row-fluid .offset3:first-child{margin-left:25.641025641025642%;*margin-left:25.53464266230224%}.row-fluid .offset2{margin-left:19.65811965811966%;*margin-left:19.551736679396257%}.row-fluid .offset2:first-child{margin-left:17.094017094017094%;*margin-left:16.98763411529369%}.row-fluid .offset1{margin-left:11.11111111111111%;*margin-left:11.004728132387708%}.row-fluid .offset1:first-child{margin-left:8.547008547008547%;*margin-left:8.440625568285142%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:30px}input.span12,textarea.span12,.uneditable-input.span12{width:1156px}input.span11,textarea.span11,.uneditable-input.span11{width:1056px}input.span10,textarea.span10,.uneditable-input.span10{width:956px}input.span9,textarea.span9,.uneditable-input.span9{width:856px}input.span8,textarea.span8,.uneditable-input.span8{width:756px}input.span7,textarea.span7,.uneditable-input.span7{width:656px}input.span6,textarea.span6,.uneditable-input.span6{width:556px}input.span5,textarea.span5,.uneditable-input.span5{width:456px}input.span4,textarea.span4,.uneditable-input.span4{width:356px}input.span3,textarea.span3,.uneditable-input.span3{width:256px}input.span2,textarea.span2,.uneditable-input.span2{width:156px}input.span1,textarea.span1,.uneditable-input.span1{width:56px}.thumbnails{margin-left:-30px}.thumbnails>li{margin-left:30px}.row-fluid .thumbnails{margin-left:0}}@media(min-width:768px) and (max-width:979px){.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:724px}.span12{width:724px}.span11{width:662px}.span10{width:600px}.span9{width:538px}.span8{width:476px}.span7{width:414px}.span6{width:352px}.span5{width:290px}.span4{width:228px}.span3{width:166px}.span2{width:104px}.span1{width:42px}.offset12{margin-left:764px}.offset11{margin-left:702px}.offset10{margin-left:640px}.offset9{margin-left:578px}.offset8{margin-left:516px}.offset7{margin-left:454px}.offset6{margin-left:392px}.offset5{margin-left:330px}.offset4{margin-left:268px}.offset3{margin-left:206px}.offset2{margin-left:144px}.offset1{margin-left:82px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.7624309392265194%;*margin-left:2.709239449864817%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.7624309392265194%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.43646408839778%;*width:91.38327259903608%}.row-fluid .span10{width:82.87292817679558%;*width:82.81973668743387%}.row-fluid .span9{width:74.30939226519337%;*width:74.25620077583166%}.row-fluid .span8{width:65.74585635359117%;*width:65.69266486422946%}.row-fluid .span7{width:57.18232044198895%;*width:57.12912895262725%}.row-fluid .span6{width:48.61878453038674%;*width:48.56559304102504%}.row-fluid .span5{width:40.05524861878453%;*width:40.00205712942283%}.row-fluid .span4{width:31.491712707182323%;*width:31.43852121782062%}.row-fluid .span3{width:22.92817679558011%;*width:22.87498530621841%}.row-fluid .span2{width:14.3646408839779%;*width:14.311449394616199%}.row-fluid .span1{width:5.801104972375691%;*width:5.747913483013988%}.row-fluid .offset12{margin-left:105.52486187845304%;*margin-left:105.41847889972962%}.row-fluid .offset12:first-child{margin-left:102.76243093922652%;*margin-left:102.6560479605031%}.row-fluid .offset11{margin-left:96.96132596685082%;*margin-left:96.8549429881274%}.row-fluid .offset11:first-child{margin-left:94.1988950276243%;*margin-left:94.09251204890089%}.row-fluid .offset10{margin-left:88.39779005524862%;*margin-left:88.2914070765252%}.row-fluid .offset10:first-child{margin-left:85.6353591160221%;*margin-left:85.52897613729868%}.row-fluid .offset9{margin-left:79.8342541436464%;*margin-left:79.72787116492299%}.row-fluid .offset9:first-child{margin-left:77.07182320441989%;*margin-left:76.96544022569647%}.row-fluid .offset8{margin-left:71.2707182320442%;*margin-left:71.16433525332079%}.row-fluid .offset8:first-child{margin-left:68.50828729281768%;*margin-left:68.40190431409427%}.row-fluid .offset7{margin-left:62.70718232044199%;*margin-left:62.600799341718584%}.row-fluid .offset7:first-child{margin-left:59.94475138121547%;*margin-left:59.838368402492065%}.row-fluid .offset6{margin-left:54.14364640883978%;*margin-left:54.037263430116376%}.row-fluid .offset6:first-child{margin-left:51.38121546961326%;*margin-left:51.27483249088986%}.row-fluid .offset5{margin-left:45.58011049723757%;*margin-left:45.47372751851417%}.row-fluid .offset5:first-child{margin-left:42.81767955801105%;*margin-left:42.71129657928765%}.row-fluid .offset4{margin-left:37.01657458563536%;*margin-left:36.91019160691196%}.row-fluid .offset4:first-child{margin-left:34.25414364640884%;*margin-left:34.14776066768544%}.row-fluid .offset3{margin-left:28.45303867403315%;*margin-left:28.346655695309746%}.row-fluid .offset3:first-child{margin-left:25.69060773480663%;*margin-left:25.584224756083227%}.row-fluid .offset2{margin-left:19.88950276243094%;*margin-left:19.783119783707537%}.row-fluid .offset2:first-child{margin-left:17.12707182320442%;*margin-left:17.02068884448102%}.row-fluid .offset1{margin-left:11.32596685082873%;*margin-left:11.219583872105325%}.row-fluid .offset1:first-child{margin-left:8.56353591160221%;*margin-left:8.457152932878806%}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:710px}input.span11,textarea.span11,.uneditable-input.span11{width:648px}input.span10,textarea.span10,.uneditable-input.span10{width:586px}input.span9,textarea.span9,.uneditable-input.span9{width:524px}input.span8,textarea.span8,.uneditable-input.span8{width:462px}input.span7,textarea.span7,.uneditable-input.span7{width:400px}input.span6,textarea.span6,.uneditable-input.span6{width:338px}input.span5,textarea.span5,.uneditable-input.span5{width:276px}input.span4,textarea.span4,.uneditable-input.span4{width:214px}input.span3,textarea.span3,.uneditable-input.span3{width:152px}input.span2,textarea.span2,.uneditable-input.span2{width:90px}input.span1,textarea.span1,.uneditable-input.span1{width:28px}}@media(max-width:767px){body{padding-right:20px;padding-left:20px}.navbar-fixed-top,.navbar-fixed-bottom,.navbar-static-top{margin-right:-20px;margin-left:-20px}.container-fluid{padding:0}.dl-horizontal dt{float:none;width:auto;clear:none;text-align:left}.dl-horizontal dd{margin-left:0}.container{width:auto}.row-fluid{width:100%}.row,.thumbnails{margin-left:0}.thumbnails>li{float:none;margin-left:0}[class*="span"],.uneditable-input[class*="span"],.row-fluid [class*="span"]{display:block;float:none;width:100%;margin-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.span12,.row-fluid .span12{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="offset"]:first-child{margin-left:0}.input-large,.input-xlarge,.input-xxlarge,input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.input-prepend input,.input-append input,.input-prepend input[class*="span"],.input-append input[class*="span"]{display:inline-block;width:auto}.controls-row [class*="span"]+[class*="span"]{margin-left:0}.modal{position:fixed;top:20px;right:20px;left:20px;width:auto;margin:0}.modal.fade{top:-100px}.modal.fade.in{top:20px}}@media(max-width:480px){.nav-collapse{-webkit-transform:translate3d(0,0,0)}.page-header h1 small{display:block;line-height:20px}input[type="checkbox"],input[type="radio"]{border:1px solid #ccc}.form-horizontal .control-label{float:none;width:auto;padding-top:0;text-align:left}.form-horizontal .controls{margin-left:0}.form-horizontal .control-list{padding-top:0}.form-horizontal .form-actions{padding-right:10px;padding-left:10px}.media .pull-left,.media .pull-right{display:block;float:none;margin-bottom:10px}.media-object{margin-right:0;margin-left:0}.modal{top:10px;right:10px;left:10px}.modal-header .close{padding:10px;margin:-10px}.carousel-caption{position:static}}@media(max-width:979px){body{padding-top:0}.navbar-fixed-top,.navbar-fixed-bottom{position:static}.navbar-fixed-top{margin-bottom:20px}.navbar-fixed-bottom{margin-top:20px}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding:5px}.navbar .container{width:auto;padding:0}.navbar .brand{padding-right:10px;padding-left:10px;margin:0 0 0 -5px}.nav-collapse{clear:both}.nav-collapse .nav{float:none;margin:0 0 10px}.nav-collapse .nav>li{float:none}.nav-collapse .nav>li>a{margin-bottom:2px}.nav-collapse .nav>.divider-vertical{display:none}.nav-collapse .nav .nav-header{color:#777;text-shadow:none}.nav-collapse .nav>li>a,.nav-collapse .dropdown-menu a{padding:9px 15px;font-weight:bold;color:#777;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.nav-collapse .btn{padding:4px 10px 4px;font-weight:normal;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.nav-collapse .dropdown-menu li+li a{margin-bottom:2px}.nav-collapse .nav>li>a:hover,.nav-collapse .nav>li>a:focus,.nav-collapse .dropdown-menu a:hover,.nav-collapse .dropdown-menu a:focus{background-color:#f2f2f2}.navbar-inverse .nav-collapse .nav>li>a,.navbar-inverse .nav-collapse .dropdown-menu a{color:#999}.navbar-inverse .nav-collapse .nav>li>a:hover,.navbar-inverse .nav-collapse .nav>li>a:focus,.navbar-inverse .nav-collapse .dropdown-menu a:hover,.navbar-inverse .nav-collapse .dropdown-menu a:focus{background-color:#111}.nav-collapse.in .btn-group{padding:0;margin-top:5px}.nav-collapse .dropdown-menu{position:static;top:auto;left:auto;display:none;float:none;max-width:none;padding:0;margin:0 15px;background-color:transparent;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.nav-collapse .open>.dropdown-menu{display:block}.nav-collapse .dropdown-menu:before,.nav-collapse .dropdown-menu:after{display:none}.nav-collapse .dropdown-menu .divider{display:none}.nav-collapse .nav>li>.dropdown-menu:before,.nav-collapse .nav>li>.dropdown-menu:after{display:none}.nav-collapse .navbar-form,.nav-collapse .navbar-search{float:none;padding:10px 15px;margin:10px 0;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}.navbar-inverse .nav-collapse .navbar-form,.navbar-inverse .nav-collapse .navbar-search{border-top-color:#111;border-bottom-color:#111}.navbar .nav-collapse .nav.pull-right{float:none;margin-left:0}.nav-collapse,.nav-collapse.collapse{height:0;overflow:hidden}.navbar .btn-navbar{display:block}.navbar-static .navbar-inner{padding-right:10px;padding-left:10px}}@media(min-width:980px){.nav-collapse.collapse{height:auto!important;overflow:visible!important}} diff --git a/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.css b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.css new file mode 100644 index 0000000..b725064 --- /dev/null +++ b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.css @@ -0,0 +1,6167 @@ +/*! + * Bootstrap v2.3.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */ + +.clearfix { + *zoom: 1; +} + +.clearfix:before, +.clearfix:after { + display: table; + line-height: 0; + content: ""; +} + +.clearfix:after { + clear: both; +} + +.hide-text { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.input-block-level { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section { + display: block; +} + +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; +} + +audio:not([controls]) { + display: none; +} + +html { + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} + +a:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +a:hover, +a:active { + outline: 0; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +img { + width: auto\9; + height: auto; + max-width: 100%; + vertical-align: middle; + border: 0; + -ms-interpolation-mode: bicubic; +} + +#map_canvas img, +.google-maps img { + max-width: none; +} + +button, +input, +select, +textarea { + margin: 0; + font-size: 100%; + vertical-align: middle; +} + +button, +input { + *overflow: visible; + line-height: normal; +} + +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} + +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} + +label, +select, +button, +input[type="button"], +input[type="reset"], +input[type="submit"], +input[type="radio"], +input[type="checkbox"] { + cursor: pointer; +} + +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} + +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} + +textarea { + overflow: auto; + vertical-align: top; +} + +@media print { + * { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + .ir a:after, + a[href^="javascript:"]:after, + a[href^="#"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + @page { + margin: 0.5cm; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } +} + +body { + margin: 0; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 20px; + color: #333333; + background-color: #ffffff; +} + +a { + color: #0088cc; + text-decoration: none; +} + +a:hover, +a:focus { + color: #005580; + text-decoration: underline; +} + +.img-rounded { + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} + +.img-polaroid { + padding: 4px; + background-color: #fff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} + +.img-circle { + -webkit-border-radius: 500px; + -moz-border-radius: 500px; + border-radius: 500px; +} + +.row { + margin-left: -20px; + *zoom: 1; +} + +.row:before, +.row:after { + display: table; + line-height: 0; + content: ""; +} + +.row:after { + clear: both; +} + +[class*="span"] { + float: left; + min-height: 1px; + margin-left: 20px; +} + +.container, +.navbar-static-top .container, +.navbar-fixed-top .container, +.navbar-fixed-bottom .container { + width: 940px; +} + +.span12 { + width: 940px; +} + +.span11 { + width: 860px; +} + +.span10 { + width: 780px; +} + +.span9 { + width: 700px; +} + +.span8 { + width: 620px; +} + +.span7 { + width: 540px; +} + +.span6 { + width: 460px; +} + +.span5 { + width: 380px; +} + +.span4 { + width: 300px; +} + +.span3 { + width: 220px; +} + +.span2 { + width: 140px; +} + +.span1 { + width: 60px; +} + +.offset12 { + margin-left: 980px; +} + +.offset11 { + margin-left: 900px; +} + +.offset10 { + margin-left: 820px; +} + +.offset9 { + margin-left: 740px; +} + +.offset8 { + margin-left: 660px; +} + +.offset7 { + margin-left: 580px; +} + +.offset6 { + margin-left: 500px; +} + +.offset5 { + margin-left: 420px; +} + +.offset4 { + margin-left: 340px; +} + +.offset3 { + margin-left: 260px; +} + +.offset2 { + margin-left: 180px; +} + +.offset1 { + margin-left: 100px; +} + +.row-fluid { + width: 100%; + *zoom: 1; +} + +.row-fluid:before, +.row-fluid:after { + display: table; + line-height: 0; + content: ""; +} + +.row-fluid:after { + clear: both; +} + +.row-fluid [class*="span"] { + display: block; + float: left; + width: 100%; + min-height: 30px; + margin-left: 2.127659574468085%; + *margin-left: 2.074468085106383%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +.row-fluid [class*="span"]:first-child { + margin-left: 0; +} + +.row-fluid .controls-row [class*="span"] + [class*="span"] { + margin-left: 2.127659574468085%; +} + +.row-fluid .span12 { + width: 100%; + *width: 99.94680851063829%; +} + +.row-fluid .span11 { + width: 91.48936170212765%; + *width: 91.43617021276594%; +} + +.row-fluid .span10 { + width: 82.97872340425532%; + *width: 82.92553191489361%; +} + +.row-fluid .span9 { + width: 74.46808510638297%; + *width: 74.41489361702126%; +} + +.row-fluid .span8 { + width: 65.95744680851064%; + *width: 65.90425531914893%; +} + +.row-fluid .span7 { + width: 57.44680851063829%; + *width: 57.39361702127659%; +} + +.row-fluid .span6 { + width: 48.93617021276595%; + *width: 48.88297872340425%; +} + +.row-fluid .span5 { + width: 40.42553191489362%; + *width: 40.37234042553192%; +} + +.row-fluid .span4 { + width: 31.914893617021278%; + *width: 31.861702127659576%; +} + +.row-fluid .span3 { + width: 23.404255319148934%; + *width: 23.351063829787233%; +} + +.row-fluid .span2 { + width: 14.893617021276595%; + *width: 14.840425531914894%; +} + +.row-fluid .span1 { + width: 6.382978723404255%; + *width: 6.329787234042553%; +} + +.row-fluid .offset12 { + margin-left: 104.25531914893617%; + *margin-left: 104.14893617021275%; +} + +.row-fluid .offset12:first-child { + margin-left: 102.12765957446808%; + *margin-left: 102.02127659574467%; +} + +.row-fluid .offset11 { + margin-left: 95.74468085106382%; + *margin-left: 95.6382978723404%; +} + +.row-fluid .offset11:first-child { + margin-left: 93.61702127659574%; + *margin-left: 93.51063829787232%; +} + +.row-fluid .offset10 { + margin-left: 87.23404255319149%; + *margin-left: 87.12765957446807%; +} + +.row-fluid .offset10:first-child { + margin-left: 85.1063829787234%; + *margin-left: 84.99999999999999%; +} + +.row-fluid .offset9 { + margin-left: 78.72340425531914%; + *margin-left: 78.61702127659572%; +} + +.row-fluid .offset9:first-child { + margin-left: 76.59574468085106%; + *margin-left: 76.48936170212764%; +} + +.row-fluid .offset8 { + margin-left: 70.2127659574468%; + *margin-left: 70.10638297872339%; +} + +.row-fluid .offset8:first-child { + margin-left: 68.08510638297872%; + *margin-left: 67.9787234042553%; +} + +.row-fluid .offset7 { + margin-left: 61.70212765957446%; + *margin-left: 61.59574468085106%; +} + +.row-fluid .offset7:first-child { + margin-left: 59.574468085106375%; + *margin-left: 59.46808510638297%; +} + +.row-fluid .offset6 { + margin-left: 53.191489361702125%; + *margin-left: 53.085106382978715%; +} + +.row-fluid .offset6:first-child { + margin-left: 51.063829787234035%; + *margin-left: 50.95744680851063%; +} + +.row-fluid .offset5 { + margin-left: 44.68085106382979%; + *margin-left: 44.57446808510638%; +} + +.row-fluid .offset5:first-child { + margin-left: 42.5531914893617%; + *margin-left: 42.4468085106383%; +} + +.row-fluid .offset4 { + margin-left: 36.170212765957444%; + *margin-left: 36.06382978723405%; +} + +.row-fluid .offset4:first-child { + margin-left: 34.04255319148936%; + *margin-left: 33.93617021276596%; +} + +.row-fluid .offset3 { + margin-left: 27.659574468085104%; + *margin-left: 27.5531914893617%; +} + +.row-fluid .offset3:first-child { + margin-left: 25.53191489361702%; + *margin-left: 25.425531914893618%; +} + +.row-fluid .offset2 { + margin-left: 19.148936170212764%; + *margin-left: 19.04255319148936%; +} + +.row-fluid .offset2:first-child { + margin-left: 17.02127659574468%; + *margin-left: 16.914893617021278%; +} + +.row-fluid .offset1 { + margin-left: 10.638297872340425%; + *margin-left: 10.53191489361702%; +} + +.row-fluid .offset1:first-child { + margin-left: 8.51063829787234%; + *margin-left: 8.404255319148938%; +} + +[class*="span"].hide, +.row-fluid [class*="span"].hide { + display: none; +} + +[class*="span"].pull-right, +.row-fluid [class*="span"].pull-right { + float: right; +} + +.container { + margin-right: auto; + margin-left: auto; + *zoom: 1; +} + +.container:before, +.container:after { + display: table; + line-height: 0; + content: ""; +} + +.container:after { + clear: both; +} + +.container-fluid { + padding-right: 20px; + padding-left: 20px; + *zoom: 1; +} + +.container-fluid:before, +.container-fluid:after { + display: table; + line-height: 0; + content: ""; +} + +.container-fluid:after { + clear: both; +} + +p { + margin: 0 0 10px; +} + +.lead { + margin-bottom: 20px; + font-size: 21px; + font-weight: 200; + line-height: 30px; +} + +small { + font-size: 85%; +} + +strong { + font-weight: bold; +} + +em { + font-style: italic; +} + +cite { + font-style: normal; +} + +.muted { + color: #999999; +} + +a.muted:hover, +a.muted:focus { + color: #808080; +} + +.text-warning { + color: #c09853; +} + +a.text-warning:hover, +a.text-warning:focus { + color: #a47e3c; +} + +.text-error { + color: #b94a48; +} + +a.text-error:hover, +a.text-error:focus { + color: #953b39; +} + +.text-info { + color: #3a87ad; +} + +a.text-info:hover, +a.text-info:focus { + color: #2d6987; +} + +.text-success { + color: #468847; +} + +a.text-success:hover, +a.text-success:focus { + color: #356635; +} + +.text-left { + text-align: left; +} + +.text-right { + text-align: right; +} + +.text-center { + text-align: center; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 10px 0; + font-family: inherit; + font-weight: bold; + line-height: 20px; + color: inherit; + text-rendering: optimizelegibility; +} + +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small { + font-weight: normal; + line-height: 1; + color: #999999; +} + +h1, +h2, +h3 { + line-height: 40px; +} + +h1 { + font-size: 38.5px; +} + +h2 { + font-size: 31.5px; +} + +h3 { + font-size: 24.5px; +} + +h4 { + font-size: 17.5px; +} + +h5 { + font-size: 14px; +} + +h6 { + font-size: 11.9px; +} + +h1 small { + font-size: 24.5px; +} + +h2 small { + font-size: 17.5px; +} + +h3 small { + font-size: 14px; +} + +h4 small { + font-size: 14px; +} + +.page-header { + padding-bottom: 9px; + margin: 20px 0 30px; + border-bottom: 1px solid #eeeeee; +} + +ul, +ol { + padding: 0; + margin: 0 0 10px 25px; +} + +ul ul, +ul ol, +ol ol, +ol ul { + margin-bottom: 0; +} + +li { + line-height: 20px; +} + +ul.unstyled, +ol.unstyled { + margin-left: 0; + list-style: none; +} + +ul.inline, +ol.inline { + margin-left: 0; + list-style: none; +} + +ul.inline > li, +ol.inline > li { + display: inline-block; + *display: inline; + padding-right: 5px; + padding-left: 5px; + *zoom: 1; +} + +dl { + margin-bottom: 20px; +} + +dt, +dd { + line-height: 20px; +} + +dt { + font-weight: bold; +} + +dd { + margin-left: 10px; +} + +.dl-horizontal { + *zoom: 1; +} + +.dl-horizontal:before, +.dl-horizontal:after { + display: table; + line-height: 0; + content: ""; +} + +.dl-horizontal:after { + clear: both; +} + +.dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; +} + +.dl-horizontal dd { + margin-left: 180px; +} + +hr { + margin: 20px 0; + border: 0; + border-top: 1px solid #eeeeee; + border-bottom: 1px solid #ffffff; +} + +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #999999; +} + +abbr.initialism { + font-size: 90%; + text-transform: uppercase; +} + +blockquote { + padding: 0 0 0 15px; + margin: 0 0 20px; + border-left: 5px solid #eeeeee; +} + +blockquote p { + margin-bottom: 0; + font-size: 17.5px; + font-weight: 300; + line-height: 1.25; +} + +blockquote small { + display: block; + line-height: 20px; + color: #999999; +} + +blockquote small:before { + content: '\2014 \00A0'; +} + +blockquote.pull-right { + float: right; + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; +} + +blockquote.pull-right p, +blockquote.pull-right small { + text-align: right; +} + +blockquote.pull-right small:before { + content: ''; +} + +blockquote.pull-right small:after { + content: '\00A0 \2014'; +} + +q:before, +q:after, +blockquote:before, +blockquote:after { + content: ""; +} + +address { + display: block; + margin-bottom: 20px; + font-style: normal; + line-height: 20px; +} + +code, +pre { + padding: 0 3px 2px; + font-family: Monaco, Menlo, Consolas, "Courier New", monospace; + font-size: 12px; + color: #333333; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} + +code { + padding: 2px 4px; + color: #d14; + white-space: nowrap; + background-color: #f7f7f9; + border: 1px solid #e1e1e8; +} + +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 20px; + word-break: break-all; + word-wrap: break-word; + white-space: pre; + white-space: pre-wrap; + background-color: #f5f5f5; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +pre.prettyprint { + margin-bottom: 20px; +} + +pre code { + padding: 0; + color: inherit; + white-space: pre; + white-space: pre-wrap; + background-color: transparent; + border: 0; +} + +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} + +form { + margin: 0 0 20px; +} + +fieldset { + padding: 0; + margin: 0; + border: 0; +} + +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: 40px; + color: #333333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} + +legend small { + font-size: 15px; + color: #999999; +} + +label, +input, +button, +select, +textarea { + font-size: 14px; + font-weight: normal; + line-height: 20px; +} + +input, +button, +select, +textarea { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +label { + display: block; + margin-bottom: 5px; +} + +select, +textarea, +input[type="text"], +input[type="password"], +input[type="datetime"], +input[type="datetime-local"], +input[type="date"], +input[type="month"], +input[type="time"], +input[type="week"], +input[type="number"], +input[type="email"], +input[type="url"], +input[type="search"], +input[type="tel"], +input[type="color"], +.uneditable-input { + display: inline-block; + height: 20px; + padding: 4px 6px; + margin-bottom: 10px; + font-size: 14px; + line-height: 20px; + color: #555555; + vertical-align: middle; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +input, +textarea, +.uneditable-input { + width: 206px; +} + +textarea { + height: auto; +} + +textarea, +input[type="text"], +input[type="password"], +input[type="datetime"], +input[type="datetime-local"], +input[type="date"], +input[type="month"], +input[type="time"], +input[type="week"], +input[type="number"], +input[type="email"], +input[type="url"], +input[type="search"], +input[type="tel"], +input[type="color"], +.uneditable-input { + background-color: #ffffff; + border: 1px solid #cccccc; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; + -moz-transition: border linear 0.2s, box-shadow linear 0.2s; + -o-transition: border linear 0.2s, box-shadow linear 0.2s; + transition: border linear 0.2s, box-shadow linear 0.2s; +} + +textarea:focus, +input[type="text"]:focus, +input[type="password"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="time"]:focus, +input[type="week"]:focus, +input[type="number"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="search"]:focus, +input[type="tel"]:focus, +input[type="color"]:focus, +.uneditable-input:focus { + border-color: rgba(82, 168, 236, 0.8); + outline: 0; + outline: thin dotted \9; + /* IE6-9 */ + + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); +} + +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + *margin-top: 0; + line-height: normal; +} + +input[type="file"], +input[type="image"], +input[type="submit"], +input[type="reset"], +input[type="button"], +input[type="radio"], +input[type="checkbox"] { + width: auto; +} + +select, +input[type="file"] { + height: 30px; + /* In IE7, the height of the select element cannot be changed by height, only font-size */ + + *margin-top: 4px; + /* For IE7, add top margin to align select with labels */ + + line-height: 30px; +} + +select { + width: 220px; + background-color: #ffffff; + border: 1px solid #cccccc; +} + +select[multiple], +select[size] { + height: auto; +} + +select:focus, +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +.uneditable-input, +.uneditable-textarea { + color: #999999; + cursor: not-allowed; + background-color: #fcfcfc; + border-color: #cccccc; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); +} + +.uneditable-input { + overflow: hidden; + white-space: nowrap; +} + +.uneditable-textarea { + width: auto; + height: auto; +} + +input:-moz-placeholder, +textarea:-moz-placeholder { + color: #999999; +} + +input:-ms-input-placeholder, +textarea:-ms-input-placeholder { + color: #999999; +} + +input::-webkit-input-placeholder, +textarea::-webkit-input-placeholder { + color: #999999; +} + +.radio, +.checkbox { + min-height: 20px; + padding-left: 20px; +} + +.radio input[type="radio"], +.checkbox input[type="checkbox"] { + float: left; + margin-left: -20px; +} + +.controls > .radio:first-child, +.controls > .checkbox:first-child { + padding-top: 5px; +} + +.radio.inline, +.checkbox.inline { + display: inline-block; + padding-top: 5px; + margin-bottom: 0; + vertical-align: middle; +} + +.radio.inline + .radio.inline, +.checkbox.inline + .checkbox.inline { + margin-left: 10px; +} + +.input-mini { + width: 60px; +} + +.input-small { + width: 90px; +} + +.input-medium { + width: 150px; +} + +.input-large { + width: 210px; +} + +.input-xlarge { + width: 270px; +} + +.input-xxlarge { + width: 530px; +} + +input[class*="span"], +select[class*="span"], +textarea[class*="span"], +.uneditable-input[class*="span"], +.row-fluid input[class*="span"], +.row-fluid select[class*="span"], +.row-fluid textarea[class*="span"], +.row-fluid .uneditable-input[class*="span"] { + float: none; + margin-left: 0; +} + +.input-append input[class*="span"], +.input-append .uneditable-input[class*="span"], +.input-prepend input[class*="span"], +.input-prepend .uneditable-input[class*="span"], +.row-fluid input[class*="span"], +.row-fluid select[class*="span"], +.row-fluid textarea[class*="span"], +.row-fluid .uneditable-input[class*="span"], +.row-fluid .input-prepend [class*="span"], +.row-fluid .input-append [class*="span"] { + display: inline-block; +} + +input, +textarea, +.uneditable-input { + margin-left: 0; +} + +.controls-row [class*="span"] + [class*="span"] { + margin-left: 20px; +} + +input.span12, +textarea.span12, +.uneditable-input.span12 { + width: 926px; +} + +input.span11, +textarea.span11, +.uneditable-input.span11 { + width: 846px; +} + +input.span10, +textarea.span10, +.uneditable-input.span10 { + width: 766px; +} + +input.span9, +textarea.span9, +.uneditable-input.span9 { + width: 686px; +} + +input.span8, +textarea.span8, +.uneditable-input.span8 { + width: 606px; +} + +input.span7, +textarea.span7, +.uneditable-input.span7 { + width: 526px; +} + +input.span6, +textarea.span6, +.uneditable-input.span6 { + width: 446px; +} + +input.span5, +textarea.span5, +.uneditable-input.span5 { + width: 366px; +} + +input.span4, +textarea.span4, +.uneditable-input.span4 { + width: 286px; +} + +input.span3, +textarea.span3, +.uneditable-input.span3 { + width: 206px; +} + +input.span2, +textarea.span2, +.uneditable-input.span2 { + width: 126px; +} + +input.span1, +textarea.span1, +.uneditable-input.span1 { + width: 46px; +} + +.controls-row { + *zoom: 1; +} + +.controls-row:before, +.controls-row:after { + display: table; + line-height: 0; + content: ""; +} + +.controls-row:after { + clear: both; +} + +.controls-row [class*="span"], +.row-fluid .controls-row [class*="span"] { + float: left; +} + +.controls-row .checkbox[class*="span"], +.controls-row .radio[class*="span"] { + padding-top: 5px; +} + +input[disabled], +select[disabled], +textarea[disabled], +input[readonly], +select[readonly], +textarea[readonly] { + cursor: not-allowed; + background-color: #eeeeee; +} + +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"][readonly], +input[type="checkbox"][readonly] { + background-color: transparent; +} + +.control-group.warning .control-label, +.control-group.warning .help-block, +.control-group.warning .help-inline { + color: #c09853; +} + +.control-group.warning .checkbox, +.control-group.warning .radio, +.control-group.warning input, +.control-group.warning select, +.control-group.warning textarea { + color: #c09853; +} + +.control-group.warning input, +.control-group.warning select, +.control-group.warning textarea { + border-color: #c09853; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.control-group.warning input:focus, +.control-group.warning select:focus, +.control-group.warning textarea:focus { + border-color: #a47e3c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; +} + +.control-group.warning .input-prepend .add-on, +.control-group.warning .input-append .add-on { + color: #c09853; + background-color: #fcf8e3; + border-color: #c09853; +} + +.control-group.error .control-label, +.control-group.error .help-block, +.control-group.error .help-inline { + color: #b94a48; +} + +.control-group.error .checkbox, +.control-group.error .radio, +.control-group.error input, +.control-group.error select, +.control-group.error textarea { + color: #b94a48; +} + +.control-group.error input, +.control-group.error select, +.control-group.error textarea { + border-color: #b94a48; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.control-group.error input:focus, +.control-group.error select:focus, +.control-group.error textarea:focus { + border-color: #953b39; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; +} + +.control-group.error .input-prepend .add-on, +.control-group.error .input-append .add-on { + color: #b94a48; + background-color: #f2dede; + border-color: #b94a48; +} + +.control-group.success .control-label, +.control-group.success .help-block, +.control-group.success .help-inline { + color: #468847; +} + +.control-group.success .checkbox, +.control-group.success .radio, +.control-group.success input, +.control-group.success select, +.control-group.success textarea { + color: #468847; +} + +.control-group.success input, +.control-group.success select, +.control-group.success textarea { + border-color: #468847; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.control-group.success input:focus, +.control-group.success select:focus, +.control-group.success textarea:focus { + border-color: #356635; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; +} + +.control-group.success .input-prepend .add-on, +.control-group.success .input-append .add-on { + color: #468847; + background-color: #dff0d8; + border-color: #468847; +} + +.control-group.info .control-label, +.control-group.info .help-block, +.control-group.info .help-inline { + color: #3a87ad; +} + +.control-group.info .checkbox, +.control-group.info .radio, +.control-group.info input, +.control-group.info select, +.control-group.info textarea { + color: #3a87ad; +} + +.control-group.info input, +.control-group.info select, +.control-group.info textarea { + border-color: #3a87ad; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.control-group.info input:focus, +.control-group.info select:focus, +.control-group.info textarea:focus { + border-color: #2d6987; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; +} + +.control-group.info .input-prepend .add-on, +.control-group.info .input-append .add-on { + color: #3a87ad; + background-color: #d9edf7; + border-color: #3a87ad; +} + +input:focus:invalid, +textarea:focus:invalid, +select:focus:invalid { + color: #b94a48; + border-color: #ee5f5b; +} + +input:focus:invalid:focus, +textarea:focus:invalid:focus, +select:focus:invalid:focus { + border-color: #e9322d; + -webkit-box-shadow: 0 0 6px #f8b9b7; + -moz-box-shadow: 0 0 6px #f8b9b7; + box-shadow: 0 0 6px #f8b9b7; +} + +.form-actions { + padding: 19px 20px 20px; + margin-top: 20px; + margin-bottom: 20px; + background-color: #f5f5f5; + border-top: 1px solid #e5e5e5; + *zoom: 1; +} + +.form-actions:before, +.form-actions:after { + display: table; + line-height: 0; + content: ""; +} + +.form-actions:after { + clear: both; +} + +.help-block, +.help-inline { + color: #595959; +} + +.help-block { + display: block; + margin-bottom: 10px; +} + +.help-inline { + display: inline-block; + *display: inline; + padding-left: 5px; + vertical-align: middle; + *zoom: 1; +} + +.input-append, +.input-prepend { + display: inline-block; + margin-bottom: 10px; + font-size: 0; + white-space: nowrap; + vertical-align: middle; +} + +.input-append input, +.input-prepend input, +.input-append select, +.input-prepend select, +.input-append .uneditable-input, +.input-prepend .uneditable-input, +.input-append .dropdown-menu, +.input-prepend .dropdown-menu, +.input-append .popover, +.input-prepend .popover { + font-size: 14px; +} + +.input-append input, +.input-prepend input, +.input-append select, +.input-prepend select, +.input-append .uneditable-input, +.input-prepend .uneditable-input { + position: relative; + margin-bottom: 0; + *margin-left: 0; + vertical-align: top; + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.input-append input:focus, +.input-prepend input:focus, +.input-append select:focus, +.input-prepend select:focus, +.input-append .uneditable-input:focus, +.input-prepend .uneditable-input:focus { + z-index: 2; +} + +.input-append .add-on, +.input-prepend .add-on { + display: inline-block; + width: auto; + height: 20px; + min-width: 16px; + padding: 4px 5px; + font-size: 14px; + font-weight: normal; + line-height: 20px; + text-align: center; + text-shadow: 0 1px 0 #ffffff; + background-color: #eeeeee; + border: 1px solid #ccc; +} + +.input-append .add-on, +.input-prepend .add-on, +.input-append .btn, +.input-prepend .btn, +.input-append .btn-group > .dropdown-toggle, +.input-prepend .btn-group > .dropdown-toggle { + vertical-align: top; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.input-append .active, +.input-prepend .active { + background-color: #a9dba9; + border-color: #46a546; +} + +.input-prepend .add-on, +.input-prepend .btn { + margin-right: -1px; +} + +.input-prepend .add-on:first-child, +.input-prepend .btn:first-child { + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} + +.input-append input, +.input-append select, +.input-append .uneditable-input { + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} + +.input-append input + .btn-group .btn:last-child, +.input-append select + .btn-group .btn:last-child, +.input-append .uneditable-input + .btn-group .btn:last-child { + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.input-append .add-on, +.input-append .btn, +.input-append .btn-group { + margin-left: -1px; +} + +.input-append .add-on:last-child, +.input-append .btn:last-child, +.input-append .btn-group:last-child > .dropdown-toggle { + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.input-prepend.input-append input, +.input-prepend.input-append select, +.input-prepend.input-append .uneditable-input { + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.input-prepend.input-append input + .btn-group .btn, +.input-prepend.input-append select + .btn-group .btn, +.input-prepend.input-append .uneditable-input + .btn-group .btn { + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.input-prepend.input-append .add-on:first-child, +.input-prepend.input-append .btn:first-child { + margin-right: -1px; + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} + +.input-prepend.input-append .add-on:last-child, +.input-prepend.input-append .btn:last-child { + margin-left: -1px; + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.input-prepend.input-append .btn-group:first-child { + margin-left: 0; +} + +input.search-query { + padding-right: 14px; + padding-right: 4px \9; + padding-left: 14px; + padding-left: 4px \9; + /* IE7-8 doesn't have border-radius, so don't indent the padding */ + + margin-bottom: 0; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} + +/* Allow for input prepend/append in search forms */ + +.form-search .input-append .search-query, +.form-search .input-prepend .search-query { + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.form-search .input-append .search-query { + -webkit-border-radius: 14px 0 0 14px; + -moz-border-radius: 14px 0 0 14px; + border-radius: 14px 0 0 14px; +} + +.form-search .input-append .btn { + -webkit-border-radius: 0 14px 14px 0; + -moz-border-radius: 0 14px 14px 0; + border-radius: 0 14px 14px 0; +} + +.form-search .input-prepend .search-query { + -webkit-border-radius: 0 14px 14px 0; + -moz-border-radius: 0 14px 14px 0; + border-radius: 0 14px 14px 0; +} + +.form-search .input-prepend .btn { + -webkit-border-radius: 14px 0 0 14px; + -moz-border-radius: 14px 0 0 14px; + border-radius: 14px 0 0 14px; +} + +.form-search input, +.form-inline input, +.form-horizontal input, +.form-search textarea, +.form-inline textarea, +.form-horizontal textarea, +.form-search select, +.form-inline select, +.form-horizontal select, +.form-search .help-inline, +.form-inline .help-inline, +.form-horizontal .help-inline, +.form-search .uneditable-input, +.form-inline .uneditable-input, +.form-horizontal .uneditable-input, +.form-search .input-prepend, +.form-inline .input-prepend, +.form-horizontal .input-prepend, +.form-search .input-append, +.form-inline .input-append, +.form-horizontal .input-append { + display: inline-block; + *display: inline; + margin-bottom: 0; + vertical-align: middle; + *zoom: 1; +} + +.form-search .hide, +.form-inline .hide, +.form-horizontal .hide { + display: none; +} + +.form-search label, +.form-inline label, +.form-search .btn-group, +.form-inline .btn-group { + display: inline-block; +} + +.form-search .input-append, +.form-inline .input-append, +.form-search .input-prepend, +.form-inline .input-prepend { + margin-bottom: 0; +} + +.form-search .radio, +.form-search .checkbox, +.form-inline .radio, +.form-inline .checkbox { + padding-left: 0; + margin-bottom: 0; + vertical-align: middle; +} + +.form-search .radio input[type="radio"], +.form-search .checkbox input[type="checkbox"], +.form-inline .radio input[type="radio"], +.form-inline .checkbox input[type="checkbox"] { + float: left; + margin-right: 3px; + margin-left: 0; +} + +.control-group { + margin-bottom: 10px; +} + +legend + .control-group { + margin-top: 20px; + -webkit-margin-top-collapse: separate; +} + +.form-horizontal .control-group { + margin-bottom: 20px; + *zoom: 1; +} + +.form-horizontal .control-group:before, +.form-horizontal .control-group:after { + display: table; + line-height: 0; + content: ""; +} + +.form-horizontal .control-group:after { + clear: both; +} + +.form-horizontal .control-label { + float: left; + width: 160px; + padding-top: 5px; + text-align: right; +} + +.form-horizontal .controls { + *display: inline-block; + *padding-left: 20px; + margin-left: 180px; + *margin-left: 0; +} + +.form-horizontal .controls:first-child { + *padding-left: 180px; +} + +.form-horizontal .help-block { + margin-bottom: 0; +} + +.form-horizontal input + .help-block, +.form-horizontal select + .help-block, +.form-horizontal textarea + .help-block, +.form-horizontal .uneditable-input + .help-block, +.form-horizontal .input-prepend + .help-block, +.form-horizontal .input-append + .help-block { + margin-top: 10px; +} + +.form-horizontal .form-actions { + padding-left: 180px; +} + +table { + max-width: 100%; + background-color: transparent; + border-collapse: collapse; + border-spacing: 0; +} + +.table { + width: 100%; + margin-bottom: 20px; +} + +.table th, +.table td { + padding: 8px; + line-height: 20px; + text-align: left; + vertical-align: top; + border-top: 1px solid #dddddd; +} + +.table th { + font-weight: bold; +} + +.table thead th { + vertical-align: bottom; +} + +.table caption + thead tr:first-child th, +.table caption + thead tr:first-child td, +.table colgroup + thead tr:first-child th, +.table colgroup + thead tr:first-child td, +.table thead:first-child tr:first-child th, +.table thead:first-child tr:first-child td { + border-top: 0; +} + +.table tbody + tbody { + border-top: 2px solid #dddddd; +} + +.table .table { + background-color: #ffffff; +} + +.table-condensed th, +.table-condensed td { + padding: 4px 5px; +} + +.table-bordered { + border: 1px solid #dddddd; + border-collapse: separate; + *border-collapse: collapse; + border-left: 0; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +.table-bordered th, +.table-bordered td { + border-left: 1px solid #dddddd; +} + +.table-bordered caption + thead tr:first-child th, +.table-bordered caption + tbody tr:first-child th, +.table-bordered caption + tbody tr:first-child td, +.table-bordered colgroup + thead tr:first-child th, +.table-bordered colgroup + tbody tr:first-child th, +.table-bordered colgroup + tbody tr:first-child td, +.table-bordered thead:first-child tr:first-child th, +.table-bordered tbody:first-child tr:first-child th, +.table-bordered tbody:first-child tr:first-child td { + border-top: 0; +} + +.table-bordered thead:first-child tr:first-child > th:first-child, +.table-bordered tbody:first-child tr:first-child > td:first-child, +.table-bordered tbody:first-child tr:first-child > th:first-child { + -webkit-border-top-left-radius: 4px; + border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; +} + +.table-bordered thead:first-child tr:first-child > th:last-child, +.table-bordered tbody:first-child tr:first-child > td:last-child, +.table-bordered tbody:first-child tr:first-child > th:last-child { + -webkit-border-top-right-radius: 4px; + border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; +} + +.table-bordered thead:last-child tr:last-child > th:first-child, +.table-bordered tbody:last-child tr:last-child > td:first-child, +.table-bordered tbody:last-child tr:last-child > th:first-child, +.table-bordered tfoot:last-child tr:last-child > td:first-child, +.table-bordered tfoot:last-child tr:last-child > th:first-child { + -webkit-border-bottom-left-radius: 4px; + border-bottom-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; +} + +.table-bordered thead:last-child tr:last-child > th:last-child, +.table-bordered tbody:last-child tr:last-child > td:last-child, +.table-bordered tbody:last-child tr:last-child > th:last-child, +.table-bordered tfoot:last-child tr:last-child > td:last-child, +.table-bordered tfoot:last-child tr:last-child > th:last-child { + -webkit-border-bottom-right-radius: 4px; + border-bottom-right-radius: 4px; + -moz-border-radius-bottomright: 4px; +} + +.table-bordered tfoot + tbody:last-child tr:last-child td:first-child { + -webkit-border-bottom-left-radius: 0; + border-bottom-left-radius: 0; + -moz-border-radius-bottomleft: 0; +} + +.table-bordered tfoot + tbody:last-child tr:last-child td:last-child { + -webkit-border-bottom-right-radius: 0; + border-bottom-right-radius: 0; + -moz-border-radius-bottomright: 0; +} + +.table-bordered caption + thead tr:first-child th:first-child, +.table-bordered caption + tbody tr:first-child td:first-child, +.table-bordered colgroup + thead tr:first-child th:first-child, +.table-bordered colgroup + tbody tr:first-child td:first-child { + -webkit-border-top-left-radius: 4px; + border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; +} + +.table-bordered caption + thead tr:first-child th:last-child, +.table-bordered caption + tbody tr:first-child td:last-child, +.table-bordered colgroup + thead tr:first-child th:last-child, +.table-bordered colgroup + tbody tr:first-child td:last-child { + -webkit-border-top-right-radius: 4px; + border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; +} + +.table-striped tbody > tr:nth-child(odd) > td, +.table-striped tbody > tr:nth-child(odd) > th { + background-color: #f9f9f9; +} + +.table-hover tbody tr:hover > td, +.table-hover tbody tr:hover > th { + background-color: #f5f5f5; +} + +table td[class*="span"], +table th[class*="span"], +.row-fluid table td[class*="span"], +.row-fluid table th[class*="span"] { + display: table-cell; + float: none; + margin-left: 0; +} + +.table td.span1, +.table th.span1 { + float: none; + width: 44px; + margin-left: 0; +} + +.table td.span2, +.table th.span2 { + float: none; + width: 124px; + margin-left: 0; +} + +.table td.span3, +.table th.span3 { + float: none; + width: 204px; + margin-left: 0; +} + +.table td.span4, +.table th.span4 { + float: none; + width: 284px; + margin-left: 0; +} + +.table td.span5, +.table th.span5 { + float: none; + width: 364px; + margin-left: 0; +} + +.table td.span6, +.table th.span6 { + float: none; + width: 444px; + margin-left: 0; +} + +.table td.span7, +.table th.span7 { + float: none; + width: 524px; + margin-left: 0; +} + +.table td.span8, +.table th.span8 { + float: none; + width: 604px; + margin-left: 0; +} + +.table td.span9, +.table th.span9 { + float: none; + width: 684px; + margin-left: 0; +} + +.table td.span10, +.table th.span10 { + float: none; + width: 764px; + margin-left: 0; +} + +.table td.span11, +.table th.span11 { + float: none; + width: 844px; + margin-left: 0; +} + +.table td.span12, +.table th.span12 { + float: none; + width: 924px; + margin-left: 0; +} + +.table tbody tr.success > td { + background-color: #dff0d8; +} + +.table tbody tr.error > td { + background-color: #f2dede; +} + +.table tbody tr.warning > td { + background-color: #fcf8e3; +} + +.table tbody tr.info > td { + background-color: #d9edf7; +} + +.table-hover tbody tr.success:hover > td { + background-color: #d0e9c6; +} + +.table-hover tbody tr.error:hover > td { + background-color: #ebcccc; +} + +.table-hover tbody tr.warning:hover > td { + background-color: #faf2cc; +} + +.table-hover tbody tr.info:hover > td { + background-color: #c4e3f3; +} + +[class^="icon-"], +[class*=" icon-"] { + display: inline-block; + width: 14px; + height: 14px; + margin-top: 1px; + *margin-right: .3em; + line-height: 14px; + vertical-align: text-top; + background-image: url("../img/glyphicons-halflings.png"); + background-position: 14px 14px; + background-repeat: no-repeat; +} + +/* White icons with optional class, or on hover/focus/active states of certain elements */ + +.icon-white, +.nav-pills > .active > a > [class^="icon-"], +.nav-pills > .active > a > [class*=" icon-"], +.nav-list > .active > a > [class^="icon-"], +.nav-list > .active > a > [class*=" icon-"], +.navbar-inverse .nav > .active > a > [class^="icon-"], +.navbar-inverse .nav > .active > a > [class*=" icon-"], +.dropdown-menu > li > a:hover > [class^="icon-"], +.dropdown-menu > li > a:focus > [class^="icon-"], +.dropdown-menu > li > a:hover > [class*=" icon-"], +.dropdown-menu > li > a:focus > [class*=" icon-"], +.dropdown-menu > .active > a > [class^="icon-"], +.dropdown-menu > .active > a > [class*=" icon-"], +.dropdown-submenu:hover > a > [class^="icon-"], +.dropdown-submenu:focus > a > [class^="icon-"], +.dropdown-submenu:hover > a > [class*=" icon-"], +.dropdown-submenu:focus > a > [class*=" icon-"] { + background-image: url("../img/glyphicons-halflings-white.png"); +} + +.icon-glass { + background-position: 0 0; +} + +.icon-music { + background-position: -24px 0; +} + +.icon-search { + background-position: -48px 0; +} + +.icon-envelope { + background-position: -72px 0; +} + +.icon-heart { + background-position: -96px 0; +} + +.icon-star { + background-position: -120px 0; +} + +.icon-star-empty { + background-position: -144px 0; +} + +.icon-user { + background-position: -168px 0; +} + +.icon-film { + background-position: -192px 0; +} + +.icon-th-large { + background-position: -216px 0; +} + +.icon-th { + background-position: -240px 0; +} + +.icon-th-list { + background-position: -264px 0; +} + +.icon-ok { + background-position: -288px 0; +} + +.icon-remove { + background-position: -312px 0; +} + +.icon-zoom-in { + background-position: -336px 0; +} + +.icon-zoom-out { + background-position: -360px 0; +} + +.icon-off { + background-position: -384px 0; +} + +.icon-signal { + background-position: -408px 0; +} + +.icon-cog { + background-position: -432px 0; +} + +.icon-trash { + background-position: -456px 0; +} + +.icon-home { + background-position: 0 -24px; +} + +.icon-file { + background-position: -24px -24px; +} + +.icon-time { + background-position: -48px -24px; +} + +.icon-road { + background-position: -72px -24px; +} + +.icon-download-alt { + background-position: -96px -24px; +} + +.icon-download { + background-position: -120px -24px; +} + +.icon-upload { + background-position: -144px -24px; +} + +.icon-inbox { + background-position: -168px -24px; +} + +.icon-play-circle { + background-position: -192px -24px; +} + +.icon-repeat { + background-position: -216px -24px; +} + +.icon-refresh { + background-position: -240px -24px; +} + +.icon-list-alt { + background-position: -264px -24px; +} + +.icon-lock { + background-position: -287px -24px; +} + +.icon-flag { + background-position: -312px -24px; +} + +.icon-headphones { + background-position: -336px -24px; +} + +.icon-volume-off { + background-position: -360px -24px; +} + +.icon-volume-down { + background-position: -384px -24px; +} + +.icon-volume-up { + background-position: -408px -24px; +} + +.icon-qrcode { + background-position: -432px -24px; +} + +.icon-barcode { + background-position: -456px -24px; +} + +.icon-tag { + background-position: 0 -48px; +} + +.icon-tags { + background-position: -25px -48px; +} + +.icon-book { + background-position: -48px -48px; +} + +.icon-bookmark { + background-position: -72px -48px; +} + +.icon-print { + background-position: -96px -48px; +} + +.icon-camera { + background-position: -120px -48px; +} + +.icon-font { + background-position: -144px -48px; +} + +.icon-bold { + background-position: -167px -48px; +} + +.icon-italic { + background-position: -192px -48px; +} + +.icon-text-height { + background-position: -216px -48px; +} + +.icon-text-width { + background-position: -240px -48px; +} + +.icon-align-left { + background-position: -264px -48px; +} + +.icon-align-center { + background-position: -288px -48px; +} + +.icon-align-right { + background-position: -312px -48px; +} + +.icon-align-justify { + background-position: -336px -48px; +} + +.icon-list { + background-position: -360px -48px; +} + +.icon-indent-left { + background-position: -384px -48px; +} + +.icon-indent-right { + background-position: -408px -48px; +} + +.icon-facetime-video { + background-position: -432px -48px; +} + +.icon-picture { + background-position: -456px -48px; +} + +.icon-pencil { + background-position: 0 -72px; +} + +.icon-map-marker { + background-position: -24px -72px; +} + +.icon-adjust { + background-position: -48px -72px; +} + +.icon-tint { + background-position: -72px -72px; +} + +.icon-edit { + background-position: -96px -72px; +} + +.icon-share { + background-position: -120px -72px; +} + +.icon-check { + background-position: -144px -72px; +} + +.icon-move { + background-position: -168px -72px; +} + +.icon-step-backward { + background-position: -192px -72px; +} + +.icon-fast-backward { + background-position: -216px -72px; +} + +.icon-backward { + background-position: -240px -72px; +} + +.icon-play { + background-position: -264px -72px; +} + +.icon-pause { + background-position: -288px -72px; +} + +.icon-stop { + background-position: -312px -72px; +} + +.icon-forward { + background-position: -336px -72px; +} + +.icon-fast-forward { + background-position: -360px -72px; +} + +.icon-step-forward { + background-position: -384px -72px; +} + +.icon-eject { + background-position: -408px -72px; +} + +.icon-chevron-left { + background-position: -432px -72px; +} + +.icon-chevron-right { + background-position: -456px -72px; +} + +.icon-plus-sign { + background-position: 0 -96px; +} + +.icon-minus-sign { + background-position: -24px -96px; +} + +.icon-remove-sign { + background-position: -48px -96px; +} + +.icon-ok-sign { + background-position: -72px -96px; +} + +.icon-question-sign { + background-position: -96px -96px; +} + +.icon-info-sign { + background-position: -120px -96px; +} + +.icon-screenshot { + background-position: -144px -96px; +} + +.icon-remove-circle { + background-position: -168px -96px; +} + +.icon-ok-circle { + background-position: -192px -96px; +} + +.icon-ban-circle { + background-position: -216px -96px; +} + +.icon-arrow-left { + background-position: -240px -96px; +} + +.icon-arrow-right { + background-position: -264px -96px; +} + +.icon-arrow-up { + background-position: -289px -96px; +} + +.icon-arrow-down { + background-position: -312px -96px; +} + +.icon-share-alt { + background-position: -336px -96px; +} + +.icon-resize-full { + background-position: -360px -96px; +} + +.icon-resize-small { + background-position: -384px -96px; +} + +.icon-plus { + background-position: -408px -96px; +} + +.icon-minus { + background-position: -433px -96px; +} + +.icon-asterisk { + background-position: -456px -96px; +} + +.icon-exclamation-sign { + background-position: 0 -120px; +} + +.icon-gift { + background-position: -24px -120px; +} + +.icon-leaf { + background-position: -48px -120px; +} + +.icon-fire { + background-position: -72px -120px; +} + +.icon-eye-open { + background-position: -96px -120px; +} + +.icon-eye-close { + background-position: -120px -120px; +} + +.icon-warning-sign { + background-position: -144px -120px; +} + +.icon-plane { + background-position: -168px -120px; +} + +.icon-calendar { + background-position: -192px -120px; +} + +.icon-random { + width: 16px; + background-position: -216px -120px; +} + +.icon-comment { + background-position: -240px -120px; +} + +.icon-magnet { + background-position: -264px -120px; +} + +.icon-chevron-up { + background-position: -288px -120px; +} + +.icon-chevron-down { + background-position: -313px -119px; +} + +.icon-retweet { + background-position: -336px -120px; +} + +.icon-shopping-cart { + background-position: -360px -120px; +} + +.icon-folder-close { + width: 16px; + background-position: -384px -120px; +} + +.icon-folder-open { + width: 16px; + background-position: -408px -120px; +} + +.icon-resize-vertical { + background-position: -432px -119px; +} + +.icon-resize-horizontal { + background-position: -456px -118px; +} + +.icon-hdd { + background-position: 0 -144px; +} + +.icon-bullhorn { + background-position: -24px -144px; +} + +.icon-bell { + background-position: -48px -144px; +} + +.icon-certificate { + background-position: -72px -144px; +} + +.icon-thumbs-up { + background-position: -96px -144px; +} + +.icon-thumbs-down { + background-position: -120px -144px; +} + +.icon-hand-right { + background-position: -144px -144px; +} + +.icon-hand-left { + background-position: -168px -144px; +} + +.icon-hand-up { + background-position: -192px -144px; +} + +.icon-hand-down { + background-position: -216px -144px; +} + +.icon-circle-arrow-right { + background-position: -240px -144px; +} + +.icon-circle-arrow-left { + background-position: -264px -144px; +} + +.icon-circle-arrow-up { + background-position: -288px -144px; +} + +.icon-circle-arrow-down { + background-position: -312px -144px; +} + +.icon-globe { + background-position: -336px -144px; +} + +.icon-wrench { + background-position: -360px -144px; +} + +.icon-tasks { + background-position: -384px -144px; +} + +.icon-filter { + background-position: -408px -144px; +} + +.icon-briefcase { + background-position: -432px -144px; +} + +.icon-fullscreen { + background-position: -456px -144px; +} + +.dropup, +.dropdown { + position: relative; +} + +.dropdown-toggle { + *margin-bottom: -3px; +} + +.dropdown-toggle:active, +.open .dropdown-toggle { + outline: 0; +} + +.caret { + display: inline-block; + width: 0; + height: 0; + vertical-align: top; + border-top: 4px solid #000000; + border-right: 4px solid transparent; + border-left: 4px solid transparent; + content: ""; +} + +.dropdown .caret { + margin-top: 8px; + margin-left: 2px; +} + +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + background-color: #ffffff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + *border-right-width: 2px; + *border-bottom-width: 2px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -webkit-background-clip: padding-box; + -moz-background-clip: padding; + background-clip: padding-box; +} + +.dropdown-menu.pull-right { + right: 0; + left: auto; +} + +.dropdown-menu .divider { + *width: 100%; + height: 1px; + margin: 9px 1px; + *margin: -5px 0 5px; + overflow: hidden; + background-color: #e5e5e5; + border-bottom: 1px solid #ffffff; +} + +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 20px; + color: #333333; + white-space: nowrap; +} + +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus, +.dropdown-submenu:hover > a, +.dropdown-submenu:focus > a { + color: #ffffff; + text-decoration: none; + background-color: #0081c2; + background-image: -moz-linear-gradient(top, #0088cc, #0077b3); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); + background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); + background-image: -o-linear-gradient(top, #0088cc, #0077b3); + background-image: linear-gradient(to bottom, #0088cc, #0077b3); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); +} + +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + background-color: #0081c2; + background-image: -moz-linear-gradient(top, #0088cc, #0077b3); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); + background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); + background-image: -o-linear-gradient(top, #0088cc, #0077b3); + background-image: linear-gradient(to bottom, #0088cc, #0077b3); + background-repeat: repeat-x; + outline: 0; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); +} + +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #999999; +} + +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: default; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.open { + *z-index: 1000; +} + +.open > .dropdown-menu { + display: block; +} + +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} + +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} + +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px solid #000000; + content: ""; +} + +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 1px; +} + +.dropdown-submenu { + position: relative; +} + +.dropdown-submenu > .dropdown-menu { + top: 0; + left: 100%; + margin-top: -6px; + margin-left: -1px; + -webkit-border-radius: 0 6px 6px 6px; + -moz-border-radius: 0 6px 6px 6px; + border-radius: 0 6px 6px 6px; +} + +.dropdown-submenu:hover > .dropdown-menu { + display: block; +} + +.dropup .dropdown-submenu > .dropdown-menu { + top: auto; + bottom: 0; + margin-top: 0; + margin-bottom: -2px; + -webkit-border-radius: 5px 5px 5px 0; + -moz-border-radius: 5px 5px 5px 0; + border-radius: 5px 5px 5px 0; +} + +.dropdown-submenu > a:after { + display: block; + float: right; + width: 0; + height: 0; + margin-top: 5px; + margin-right: -10px; + border-color: transparent; + border-left-color: #cccccc; + border-style: solid; + border-width: 5px 0 5px 5px; + content: " "; +} + +.dropdown-submenu:hover > a:after { + border-left-color: #ffffff; +} + +.dropdown-submenu.pull-left { + float: none; +} + +.dropdown-submenu.pull-left > .dropdown-menu { + left: -100%; + margin-left: 10px; + -webkit-border-radius: 6px 0 6px 6px; + -moz-border-radius: 6px 0 6px 6px; + border-radius: 6px 0 6px 6px; +} + +.dropdown .dropdown-menu .nav-header { + padding-right: 20px; + padding-left: 20px; +} + +.typeahead { + z-index: 1051; + margin-top: 2px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} + +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} + +.well-large { + padding: 24px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} + +.well-small { + padding: 9px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} + +.fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + -moz-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} + +.fade.in { + opacity: 1; +} + +.collapse { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition: height 0.35s ease; + -moz-transition: height 0.35s ease; + -o-transition: height 0.35s ease; + transition: height 0.35s ease; +} + +.collapse.in { + height: auto; +} + +.close { + float: right; + font-size: 20px; + font-weight: bold; + line-height: 20px; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} + +.close:hover, +.close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.4; + filter: alpha(opacity=40); +} + +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} + +.btn { + display: inline-block; + *display: inline; + padding: 4px 12px; + margin-bottom: 0; + *margin-left: .3em; + font-size: 14px; + line-height: 20px; + color: #333333; + text-align: center; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + vertical-align: middle; + cursor: pointer; + background-color: #f5f5f5; + *background-color: #e6e6e6; + background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6)); + background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6); + background-image: -o-linear-gradient(top, #ffffff, #e6e6e6); + background-image: linear-gradient(to bottom, #ffffff, #e6e6e6); + background-repeat: repeat-x; + border: 1px solid #cccccc; + *border: 0; + border-color: #e6e6e6 #e6e6e6 #bfbfbf; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + border-bottom-color: #b3b3b3; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + *zoom: 1; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.btn:hover, +.btn:focus, +.btn:active, +.btn.active, +.btn.disabled, +.btn[disabled] { + color: #333333; + background-color: #e6e6e6; + *background-color: #d9d9d9; +} + +.btn:active, +.btn.active { + background-color: #cccccc \9; +} + +.btn:first-child { + *margin-left: 0; +} + +.btn:hover, +.btn:focus { + color: #333333; + text-decoration: none; + background-position: 0 -15px; + -webkit-transition: background-position 0.1s linear; + -moz-transition: background-position 0.1s linear; + -o-transition: background-position 0.1s linear; + transition: background-position 0.1s linear; +} + +.btn:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +.btn.active, +.btn:active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.btn.disabled, +.btn[disabled] { + cursor: default; + background-image: none; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} + +.btn-large { + padding: 11px 19px; + font-size: 17.5px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} + +.btn-large [class^="icon-"], +.btn-large [class*=" icon-"] { + margin-top: 4px; +} + +.btn-small { + padding: 2px 10px; + font-size: 11.9px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} + +.btn-small [class^="icon-"], +.btn-small [class*=" icon-"] { + margin-top: 0; +} + +.btn-mini [class^="icon-"], +.btn-mini [class*=" icon-"] { + margin-top: -1px; +} + +.btn-mini { + padding: 0 6px; + font-size: 10.5px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} + +.btn-block { + display: block; + width: 100%; + padding-right: 0; + padding-left: 0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +.btn-block + .btn-block { + margin-top: 5px; +} + +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} + +.btn-primary.active, +.btn-warning.active, +.btn-danger.active, +.btn-success.active, +.btn-info.active, +.btn-inverse.active { + color: rgba(255, 255, 255, 0.75); +} + +.btn-primary { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #006dcc; + *background-color: #0044cc; + background-image: -moz-linear-gradient(top, #0088cc, #0044cc); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc)); + background-image: -webkit-linear-gradient(top, #0088cc, #0044cc); + background-image: -o-linear-gradient(top, #0088cc, #0044cc); + background-image: linear-gradient(to bottom, #0088cc, #0044cc); + background-repeat: repeat-x; + border-color: #0044cc #0044cc #002a80; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.btn-primary:hover, +.btn-primary:focus, +.btn-primary:active, +.btn-primary.active, +.btn-primary.disabled, +.btn-primary[disabled] { + color: #ffffff; + background-color: #0044cc; + *background-color: #003bb3; +} + +.btn-primary:active, +.btn-primary.active { + background-color: #003399 \9; +} + +.btn-warning { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #faa732; + *background-color: #f89406; + background-image: -moz-linear-gradient(top, #fbb450, #f89406); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); + background-image: -webkit-linear-gradient(top, #fbb450, #f89406); + background-image: -o-linear-gradient(top, #fbb450, #f89406); + background-image: linear-gradient(to bottom, #fbb450, #f89406); + background-repeat: repeat-x; + border-color: #f89406 #f89406 #ad6704; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.btn-warning:hover, +.btn-warning:focus, +.btn-warning:active, +.btn-warning.active, +.btn-warning.disabled, +.btn-warning[disabled] { + color: #ffffff; + background-color: #f89406; + *background-color: #df8505; +} + +.btn-warning:active, +.btn-warning.active { + background-color: #c67605 \9; +} + +.btn-danger { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #da4f49; + *background-color: #bd362f; + background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f)); + background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f); + background-image: -o-linear-gradient(top, #ee5f5b, #bd362f); + background-image: linear-gradient(to bottom, #ee5f5b, #bd362f); + background-repeat: repeat-x; + border-color: #bd362f #bd362f #802420; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.btn-danger:hover, +.btn-danger:focus, +.btn-danger:active, +.btn-danger.active, +.btn-danger.disabled, +.btn-danger[disabled] { + color: #ffffff; + background-color: #bd362f; + *background-color: #a9302a; +} + +.btn-danger:active, +.btn-danger.active { + background-color: #942a25 \9; +} + +.btn-success { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #5bb75b; + *background-color: #51a351; + background-image: -moz-linear-gradient(top, #62c462, #51a351); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351)); + background-image: -webkit-linear-gradient(top, #62c462, #51a351); + background-image: -o-linear-gradient(top, #62c462, #51a351); + background-image: linear-gradient(to bottom, #62c462, #51a351); + background-repeat: repeat-x; + border-color: #51a351 #51a351 #387038; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.btn-success:hover, +.btn-success:focus, +.btn-success:active, +.btn-success.active, +.btn-success.disabled, +.btn-success[disabled] { + color: #ffffff; + background-color: #51a351; + *background-color: #499249; +} + +.btn-success:active, +.btn-success.active { + background-color: #408140 \9; +} + +.btn-info { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #49afcd; + *background-color: #2f96b4; + background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4)); + background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4); + background-image: -o-linear-gradient(top, #5bc0de, #2f96b4); + background-image: linear-gradient(to bottom, #5bc0de, #2f96b4); + background-repeat: repeat-x; + border-color: #2f96b4 #2f96b4 #1f6377; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.btn-info:hover, +.btn-info:focus, +.btn-info:active, +.btn-info.active, +.btn-info.disabled, +.btn-info[disabled] { + color: #ffffff; + background-color: #2f96b4; + *background-color: #2a85a0; +} + +.btn-info:active, +.btn-info.active { + background-color: #24748c \9; +} + +.btn-inverse { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #363636; + *background-color: #222222; + background-image: -moz-linear-gradient(top, #444444, #222222); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222)); + background-image: -webkit-linear-gradient(top, #444444, #222222); + background-image: -o-linear-gradient(top, #444444, #222222); + background-image: linear-gradient(to bottom, #444444, #222222); + background-repeat: repeat-x; + border-color: #222222 #222222 #000000; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.btn-inverse:hover, +.btn-inverse:focus, +.btn-inverse:active, +.btn-inverse.active, +.btn-inverse.disabled, +.btn-inverse[disabled] { + color: #ffffff; + background-color: #222222; + *background-color: #151515; +} + +.btn-inverse:active, +.btn-inverse.active { + background-color: #080808 \9; +} + +button.btn, +input[type="submit"].btn { + *padding-top: 3px; + *padding-bottom: 3px; +} + +button.btn::-moz-focus-inner, +input[type="submit"].btn::-moz-focus-inner { + padding: 0; + border: 0; +} + +button.btn.btn-large, +input[type="submit"].btn.btn-large { + *padding-top: 7px; + *padding-bottom: 7px; +} + +button.btn.btn-small, +input[type="submit"].btn.btn-small { + *padding-top: 3px; + *padding-bottom: 3px; +} + +button.btn.btn-mini, +input[type="submit"].btn.btn-mini { + *padding-top: 1px; + *padding-bottom: 1px; +} + +.btn-link, +.btn-link:active, +.btn-link[disabled] { + background-color: transparent; + background-image: none; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} + +.btn-link { + color: #0088cc; + cursor: pointer; + border-color: transparent; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.btn-link:hover, +.btn-link:focus { + color: #005580; + text-decoration: underline; + background-color: transparent; +} + +.btn-link[disabled]:hover, +.btn-link[disabled]:focus { + color: #333333; + text-decoration: none; +} + +.btn-group { + position: relative; + display: inline-block; + *display: inline; + *margin-left: .3em; + font-size: 0; + white-space: nowrap; + vertical-align: middle; + *zoom: 1; +} + +.btn-group:first-child { + *margin-left: 0; +} + +.btn-group + .btn-group { + margin-left: 5px; +} + +.btn-toolbar { + margin-top: 10px; + margin-bottom: 10px; + font-size: 0; +} + +.btn-toolbar > .btn + .btn, +.btn-toolbar > .btn-group + .btn, +.btn-toolbar > .btn + .btn-group { + margin-left: 5px; +} + +.btn-group > .btn { + position: relative; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.btn-group > .btn + .btn { + margin-left: -1px; +} + +.btn-group > .btn, +.btn-group > .dropdown-menu, +.btn-group > .popover { + font-size: 14px; +} + +.btn-group > .btn-mini { + font-size: 10.5px; +} + +.btn-group > .btn-small { + font-size: 11.9px; +} + +.btn-group > .btn-large { + font-size: 17.5px; +} + +.btn-group > .btn:first-child { + margin-left: 0; + -webkit-border-bottom-left-radius: 4px; + border-bottom-left-radius: 4px; + -webkit-border-top-left-radius: 4px; + border-top-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-topleft: 4px; +} + +.btn-group > .btn:last-child, +.btn-group > .dropdown-toggle { + -webkit-border-top-right-radius: 4px; + border-top-right-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + border-bottom-right-radius: 4px; + -moz-border-radius-topright: 4px; + -moz-border-radius-bottomright: 4px; +} + +.btn-group > .btn.large:first-child { + margin-left: 0; + -webkit-border-bottom-left-radius: 6px; + border-bottom-left-radius: 6px; + -webkit-border-top-left-radius: 6px; + border-top-left-radius: 6px; + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-topleft: 6px; +} + +.btn-group > .btn.large:last-child, +.btn-group > .large.dropdown-toggle { + -webkit-border-top-right-radius: 6px; + border-top-right-radius: 6px; + -webkit-border-bottom-right-radius: 6px; + border-bottom-right-radius: 6px; + -moz-border-radius-topright: 6px; + -moz-border-radius-bottomright: 6px; +} + +.btn-group > .btn:hover, +.btn-group > .btn:focus, +.btn-group > .btn:active, +.btn-group > .btn.active { + z-index: 2; +} + +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} + +.btn-group > .btn + .dropdown-toggle { + *padding-top: 5px; + padding-right: 8px; + *padding-bottom: 5px; + padding-left: 8px; + -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.btn-group > .btn-mini + .dropdown-toggle { + *padding-top: 2px; + padding-right: 5px; + *padding-bottom: 2px; + padding-left: 5px; +} + +.btn-group > .btn-small + .dropdown-toggle { + *padding-top: 5px; + *padding-bottom: 4px; +} + +.btn-group > .btn-large + .dropdown-toggle { + *padding-top: 7px; + padding-right: 12px; + *padding-bottom: 7px; + padding-left: 12px; +} + +.btn-group.open .dropdown-toggle { + background-image: none; + -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.btn-group.open .btn.dropdown-toggle { + background-color: #e6e6e6; +} + +.btn-group.open .btn-primary.dropdown-toggle { + background-color: #0044cc; +} + +.btn-group.open .btn-warning.dropdown-toggle { + background-color: #f89406; +} + +.btn-group.open .btn-danger.dropdown-toggle { + background-color: #bd362f; +} + +.btn-group.open .btn-success.dropdown-toggle { + background-color: #51a351; +} + +.btn-group.open .btn-info.dropdown-toggle { + background-color: #2f96b4; +} + +.btn-group.open .btn-inverse.dropdown-toggle { + background-color: #222222; +} + +.btn .caret { + margin-top: 8px; + margin-left: 0; +} + +.btn-large .caret { + margin-top: 6px; +} + +.btn-large .caret { + border-top-width: 5px; + border-right-width: 5px; + border-left-width: 5px; +} + +.btn-mini .caret, +.btn-small .caret { + margin-top: 8px; +} + +.dropup .btn-large .caret { + border-bottom-width: 5px; +} + +.btn-primary .caret, +.btn-warning .caret, +.btn-danger .caret, +.btn-info .caret, +.btn-success .caret, +.btn-inverse .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} + +.btn-group-vertical { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; +} + +.btn-group-vertical > .btn { + display: block; + float: none; + max-width: 100%; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.btn-group-vertical > .btn + .btn { + margin-top: -1px; + margin-left: 0; +} + +.btn-group-vertical > .btn:first-child { + -webkit-border-radius: 4px 4px 0 0; + -moz-border-radius: 4px 4px 0 0; + border-radius: 4px 4px 0 0; +} + +.btn-group-vertical > .btn:last-child { + -webkit-border-radius: 0 0 4px 4px; + -moz-border-radius: 0 0 4px 4px; + border-radius: 0 0 4px 4px; +} + +.btn-group-vertical > .btn-large:first-child { + -webkit-border-radius: 6px 6px 0 0; + -moz-border-radius: 6px 6px 0 0; + border-radius: 6px 6px 0 0; +} + +.btn-group-vertical > .btn-large:last-child { + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; +} + +.alert { + padding: 8px 35px 8px 14px; + margin-bottom: 20px; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + background-color: #fcf8e3; + border: 1px solid #fbeed5; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +.alert, +.alert h4 { + color: #c09853; +} + +.alert h4 { + margin: 0; +} + +.alert .close { + position: relative; + top: -2px; + right: -21px; + line-height: 20px; +} + +.alert-success { + color: #468847; + background-color: #dff0d8; + border-color: #d6e9c6; +} + +.alert-success h4 { + color: #468847; +} + +.alert-danger, +.alert-error { + color: #b94a48; + background-color: #f2dede; + border-color: #eed3d7; +} + +.alert-danger h4, +.alert-error h4 { + color: #b94a48; +} + +.alert-info { + color: #3a87ad; + background-color: #d9edf7; + border-color: #bce8f1; +} + +.alert-info h4 { + color: #3a87ad; +} + +.alert-block { + padding-top: 14px; + padding-bottom: 14px; +} + +.alert-block > p, +.alert-block > ul { + margin-bottom: 0; +} + +.alert-block p + p { + margin-top: 5px; +} + +.nav { + margin-bottom: 20px; + margin-left: 0; + list-style: none; +} + +.nav > li > a { + display: block; +} + +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} + +.nav > li > a > img { + max-width: none; +} + +.nav > .pull-right { + float: right; +} + +.nav-header { + display: block; + padding: 3px 15px; + font-size: 11px; + font-weight: bold; + line-height: 20px; + color: #999999; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + text-transform: uppercase; +} + +.nav li + .nav-header { + margin-top: 9px; +} + +.nav-list { + padding-right: 15px; + padding-left: 15px; + margin-bottom: 0; +} + +.nav-list > li > a, +.nav-list .nav-header { + margin-right: -15px; + margin-left: -15px; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} + +.nav-list > li > a { + padding: 3px 15px; +} + +.nav-list > .active > a, +.nav-list > .active > a:hover, +.nav-list > .active > a:focus { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); + background-color: #0088cc; +} + +.nav-list [class^="icon-"], +.nav-list [class*=" icon-"] { + margin-right: 2px; +} + +.nav-list .divider { + *width: 100%; + height: 1px; + margin: 9px 1px; + *margin: -5px 0 5px; + overflow: hidden; + background-color: #e5e5e5; + border-bottom: 1px solid #ffffff; +} + +.nav-tabs, +.nav-pills { + *zoom: 1; +} + +.nav-tabs:before, +.nav-pills:before, +.nav-tabs:after, +.nav-pills:after { + display: table; + line-height: 0; + content: ""; +} + +.nav-tabs:after, +.nav-pills:after { + clear: both; +} + +.nav-tabs > li, +.nav-pills > li { + float: left; +} + +.nav-tabs > li > a, +.nav-pills > li > a { + padding-right: 12px; + padding-left: 12px; + margin-right: 2px; + line-height: 14px; +} + +.nav-tabs { + border-bottom: 1px solid #ddd; +} + +.nav-tabs > li { + margin-bottom: -1px; +} + +.nav-tabs > li > a { + padding-top: 8px; + padding-bottom: 8px; + line-height: 20px; + border: 1px solid transparent; + -webkit-border-radius: 4px 4px 0 0; + -moz-border-radius: 4px 4px 0 0; + border-radius: 4px 4px 0 0; +} + +.nav-tabs > li > a:hover, +.nav-tabs > li > a:focus { + border-color: #eeeeee #eeeeee #dddddd; +} + +.nav-tabs > .active > a, +.nav-tabs > .active > a:hover, +.nav-tabs > .active > a:focus { + color: #555555; + cursor: default; + background-color: #ffffff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} + +.nav-pills > li > a { + padding-top: 8px; + padding-bottom: 8px; + margin-top: 2px; + margin-bottom: 2px; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; +} + +.nav-pills > .active > a, +.nav-pills > .active > a:hover, +.nav-pills > .active > a:focus { + color: #ffffff; + background-color: #0088cc; +} + +.nav-stacked > li { + float: none; +} + +.nav-stacked > li > a { + margin-right: 0; +} + +.nav-tabs.nav-stacked { + border-bottom: 0; +} + +.nav-tabs.nav-stacked > li > a { + border: 1px solid #ddd; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.nav-tabs.nav-stacked > li:first-child > a { + -webkit-border-top-right-radius: 4px; + border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + border-top-left-radius: 4px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; +} + +.nav-tabs.nav-stacked > li:last-child > a { + -webkit-border-bottom-right-radius: 4px; + border-bottom-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + border-bottom-left-radius: 4px; + -moz-border-radius-bottomright: 4px; + -moz-border-radius-bottomleft: 4px; +} + +.nav-tabs.nav-stacked > li > a:hover, +.nav-tabs.nav-stacked > li > a:focus { + z-index: 2; + border-color: #ddd; +} + +.nav-pills.nav-stacked > li > a { + margin-bottom: 3px; +} + +.nav-pills.nav-stacked > li:last-child > a { + margin-bottom: 1px; +} + +.nav-tabs .dropdown-menu { + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; +} + +.nav-pills .dropdown-menu { + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} + +.nav .dropdown-toggle .caret { + margin-top: 6px; + border-top-color: #0088cc; + border-bottom-color: #0088cc; +} + +.nav .dropdown-toggle:hover .caret, +.nav .dropdown-toggle:focus .caret { + border-top-color: #005580; + border-bottom-color: #005580; +} + +/* move down carets for tabs */ + +.nav-tabs .dropdown-toggle .caret { + margin-top: 8px; +} + +.nav .active .dropdown-toggle .caret { + border-top-color: #fff; + border-bottom-color: #fff; +} + +.nav-tabs .active .dropdown-toggle .caret { + border-top-color: #555555; + border-bottom-color: #555555; +} + +.nav > .dropdown.active > a:hover, +.nav > .dropdown.active > a:focus { + cursor: pointer; +} + +.nav-tabs .open .dropdown-toggle, +.nav-pills .open .dropdown-toggle, +.nav > li.dropdown.open.active > a:hover, +.nav > li.dropdown.open.active > a:focus { + color: #ffffff; + background-color: #999999; + border-color: #999999; +} + +.nav li.dropdown.open .caret, +.nav li.dropdown.open.active .caret, +.nav li.dropdown.open a:hover .caret, +.nav li.dropdown.open a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; + opacity: 1; + filter: alpha(opacity=100); +} + +.tabs-stacked .open > a:hover, +.tabs-stacked .open > a:focus { + border-color: #999999; +} + +.tabbable { + *zoom: 1; +} + +.tabbable:before, +.tabbable:after { + display: table; + line-height: 0; + content: ""; +} + +.tabbable:after { + clear: both; +} + +.tab-content { + overflow: auto; +} + +.tabs-below > .nav-tabs, +.tabs-right > .nav-tabs, +.tabs-left > .nav-tabs { + border-bottom: 0; +} + +.tab-content > .tab-pane, +.pill-content > .pill-pane { + display: none; +} + +.tab-content > .active, +.pill-content > .active { + display: block; +} + +.tabs-below > .nav-tabs { + border-top: 1px solid #ddd; +} + +.tabs-below > .nav-tabs > li { + margin-top: -1px; + margin-bottom: 0; +} + +.tabs-below > .nav-tabs > li > a { + -webkit-border-radius: 0 0 4px 4px; + -moz-border-radius: 0 0 4px 4px; + border-radius: 0 0 4px 4px; +} + +.tabs-below > .nav-tabs > li > a:hover, +.tabs-below > .nav-tabs > li > a:focus { + border-top-color: #ddd; + border-bottom-color: transparent; +} + +.tabs-below > .nav-tabs > .active > a, +.tabs-below > .nav-tabs > .active > a:hover, +.tabs-below > .nav-tabs > .active > a:focus { + border-color: transparent #ddd #ddd #ddd; +} + +.tabs-left > .nav-tabs > li, +.tabs-right > .nav-tabs > li { + float: none; +} + +.tabs-left > .nav-tabs > li > a, +.tabs-right > .nav-tabs > li > a { + min-width: 74px; + margin-right: 0; + margin-bottom: 3px; +} + +.tabs-left > .nav-tabs { + float: left; + margin-right: 19px; + border-right: 1px solid #ddd; +} + +.tabs-left > .nav-tabs > li > a { + margin-right: -1px; + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} + +.tabs-left > .nav-tabs > li > a:hover, +.tabs-left > .nav-tabs > li > a:focus { + border-color: #eeeeee #dddddd #eeeeee #eeeeee; +} + +.tabs-left > .nav-tabs .active > a, +.tabs-left > .nav-tabs .active > a:hover, +.tabs-left > .nav-tabs .active > a:focus { + border-color: #ddd transparent #ddd #ddd; + *border-right-color: #ffffff; +} + +.tabs-right > .nav-tabs { + float: right; + margin-left: 19px; + border-left: 1px solid #ddd; +} + +.tabs-right > .nav-tabs > li > a { + margin-left: -1px; + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.tabs-right > .nav-tabs > li > a:hover, +.tabs-right > .nav-tabs > li > a:focus { + border-color: #eeeeee #eeeeee #eeeeee #dddddd; +} + +.tabs-right > .nav-tabs .active > a, +.tabs-right > .nav-tabs .active > a:hover, +.tabs-right > .nav-tabs .active > a:focus { + border-color: #ddd #ddd #ddd transparent; + *border-left-color: #ffffff; +} + +.nav > .disabled > a { + color: #999999; +} + +.nav > .disabled > a:hover, +.nav > .disabled > a:focus { + text-decoration: none; + cursor: default; + background-color: transparent; +} + +.navbar { + *position: relative; + *z-index: 2; + margin-bottom: 20px; + overflow: visible; +} + +.navbar-inner { + min-height: 40px; + padding-right: 20px; + padding-left: 20px; + background-color: #fafafa; + background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2)); + background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -o-linear-gradient(top, #ffffff, #f2f2f2); + background-image: linear-gradient(to bottom, #ffffff, #f2f2f2); + background-repeat: repeat-x; + border: 1px solid #d4d4d4; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0); + *zoom: 1; + -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); + -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); + box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); +} + +.navbar-inner:before, +.navbar-inner:after { + display: table; + line-height: 0; + content: ""; +} + +.navbar-inner:after { + clear: both; +} + +.navbar .container { + width: auto; +} + +.nav-collapse.collapse { + height: auto; + overflow: visible; +} + +.navbar .brand { + display: block; + float: left; + padding: 10px 20px 10px; + margin-left: -20px; + font-size: 20px; + font-weight: 200; + color: #777777; + text-shadow: 0 1px 0 #ffffff; +} + +.navbar .brand:hover, +.navbar .brand:focus { + text-decoration: none; +} + +.navbar-text { + margin-bottom: 0; + line-height: 40px; + color: #777777; +} + +.navbar-link { + color: #777777; +} + +.navbar-link:hover, +.navbar-link:focus { + color: #333333; +} + +.navbar .divider-vertical { + height: 40px; + margin: 0 9px; + border-right: 1px solid #ffffff; + border-left: 1px solid #f2f2f2; +} + +.navbar .btn, +.navbar .btn-group { + margin-top: 5px; +} + +.navbar .btn-group .btn, +.navbar .input-prepend .btn, +.navbar .input-append .btn, +.navbar .input-prepend .btn-group, +.navbar .input-append .btn-group { + margin-top: 0; +} + +.navbar-form { + margin-bottom: 0; + *zoom: 1; +} + +.navbar-form:before, +.navbar-form:after { + display: table; + line-height: 0; + content: ""; +} + +.navbar-form:after { + clear: both; +} + +.navbar-form input, +.navbar-form select, +.navbar-form .radio, +.navbar-form .checkbox { + margin-top: 5px; +} + +.navbar-form input, +.navbar-form select, +.navbar-form .btn { + display: inline-block; + margin-bottom: 0; +} + +.navbar-form input[type="image"], +.navbar-form input[type="checkbox"], +.navbar-form input[type="radio"] { + margin-top: 3px; +} + +.navbar-form .input-append, +.navbar-form .input-prepend { + margin-top: 5px; + white-space: nowrap; +} + +.navbar-form .input-append input, +.navbar-form .input-prepend input { + margin-top: 0; +} + +.navbar-search { + position: relative; + float: left; + margin-top: 5px; + margin-bottom: 0; +} + +.navbar-search .search-query { + padding: 4px 14px; + margin-bottom: 0; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: 1; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} + +.navbar-static-top { + position: static; + margin-bottom: 0; +} + +.navbar-static-top .navbar-inner { + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; + margin-bottom: 0; +} + +.navbar-fixed-top .navbar-inner, +.navbar-static-top .navbar-inner { + border-width: 0 0 1px; +} + +.navbar-fixed-bottom .navbar-inner { + border-width: 1px 0 0; +} + +.navbar-fixed-top .navbar-inner, +.navbar-fixed-bottom .navbar-inner { + padding-right: 0; + padding-left: 0; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} + +.navbar-static-top .container, +.navbar-fixed-top .container, +.navbar-fixed-bottom .container { + width: 940px; +} + +.navbar-fixed-top { + top: 0; +} + +.navbar-fixed-top .navbar-inner, +.navbar-static-top .navbar-inner { + -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); + -moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); +} + +.navbar-fixed-bottom { + bottom: 0; +} + +.navbar-fixed-bottom .navbar-inner { + -webkit-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); + -moz-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); + box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1); +} + +.navbar .nav { + position: relative; + left: 0; + display: block; + float: left; + margin: 0 10px 0 0; +} + +.navbar .nav.pull-right { + float: right; + margin-right: 0; +} + +.navbar .nav > li { + float: left; +} + +.navbar .nav > li > a { + float: none; + padding: 10px 15px 10px; + color: #777777; + text-decoration: none; + text-shadow: 0 1px 0 #ffffff; +} + +.navbar .nav .dropdown-toggle .caret { + margin-top: 8px; +} + +.navbar .nav > li > a:focus, +.navbar .nav > li > a:hover { + color: #333333; + text-decoration: none; + background-color: transparent; +} + +.navbar .nav > .active > a, +.navbar .nav > .active > a:hover, +.navbar .nav > .active > a:focus { + color: #555555; + text-decoration: none; + background-color: #e5e5e5; + -webkit-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); + -moz-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); +} + +.navbar .btn-navbar { + display: none; + float: right; + padding: 7px 10px; + margin-right: 5px; + margin-left: 5px; + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #ededed; + *background-color: #e5e5e5; + background-image: -moz-linear-gradient(top, #f2f2f2, #e5e5e5); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5)); + background-image: -webkit-linear-gradient(top, #f2f2f2, #e5e5e5); + background-image: -o-linear-gradient(top, #f2f2f2, #e5e5e5); + background-image: linear-gradient(to bottom, #f2f2f2, #e5e5e5); + background-repeat: repeat-x; + border-color: #e5e5e5 #e5e5e5 #bfbfbf; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); +} + +.navbar .btn-navbar:hover, +.navbar .btn-navbar:focus, +.navbar .btn-navbar:active, +.navbar .btn-navbar.active, +.navbar .btn-navbar.disabled, +.navbar .btn-navbar[disabled] { + color: #ffffff; + background-color: #e5e5e5; + *background-color: #d9d9d9; +} + +.navbar .btn-navbar:active, +.navbar .btn-navbar.active { + background-color: #cccccc \9; +} + +.navbar .btn-navbar .icon-bar { + display: block; + width: 18px; + height: 2px; + background-color: #f5f5f5; + -webkit-border-radius: 1px; + -moz-border-radius: 1px; + border-radius: 1px; + -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); + -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); +} + +.btn-navbar .icon-bar + .icon-bar { + margin-top: 3px; +} + +.navbar .nav > li > .dropdown-menu:before { + position: absolute; + top: -7px; + left: 9px; + display: inline-block; + border-right: 7px solid transparent; + border-bottom: 7px solid #ccc; + border-left: 7px solid transparent; + border-bottom-color: rgba(0, 0, 0, 0.2); + content: ''; +} + +.navbar .nav > li > .dropdown-menu:after { + position: absolute; + top: -6px; + left: 10px; + display: inline-block; + border-right: 6px solid transparent; + border-bottom: 6px solid #ffffff; + border-left: 6px solid transparent; + content: ''; +} + +.navbar-fixed-bottom .nav > li > .dropdown-menu:before { + top: auto; + bottom: -7px; + border-top: 7px solid #ccc; + border-bottom: 0; + border-top-color: rgba(0, 0, 0, 0.2); +} + +.navbar-fixed-bottom .nav > li > .dropdown-menu:after { + top: auto; + bottom: -6px; + border-top: 6px solid #ffffff; + border-bottom: 0; +} + +.navbar .nav li.dropdown > a:hover .caret, +.navbar .nav li.dropdown > a:focus .caret { + border-top-color: #333333; + border-bottom-color: #333333; +} + +.navbar .nav li.dropdown.open > .dropdown-toggle, +.navbar .nav li.dropdown.active > .dropdown-toggle, +.navbar .nav li.dropdown.open.active > .dropdown-toggle { + color: #555555; + background-color: #e5e5e5; +} + +.navbar .nav li.dropdown > .dropdown-toggle .caret { + border-top-color: #777777; + border-bottom-color: #777777; +} + +.navbar .nav li.dropdown.open > .dropdown-toggle .caret, +.navbar .nav li.dropdown.active > .dropdown-toggle .caret, +.navbar .nav li.dropdown.open.active > .dropdown-toggle .caret { + border-top-color: #555555; + border-bottom-color: #555555; +} + +.navbar .pull-right > li > .dropdown-menu, +.navbar .nav > li > .dropdown-menu.pull-right { + right: 0; + left: auto; +} + +.navbar .pull-right > li > .dropdown-menu:before, +.navbar .nav > li > .dropdown-menu.pull-right:before { + right: 12px; + left: auto; +} + +.navbar .pull-right > li > .dropdown-menu:after, +.navbar .nav > li > .dropdown-menu.pull-right:after { + right: 13px; + left: auto; +} + +.navbar .pull-right > li > .dropdown-menu .dropdown-menu, +.navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu { + right: 100%; + left: auto; + margin-right: -1px; + margin-left: 0; + -webkit-border-radius: 6px 0 6px 6px; + -moz-border-radius: 6px 0 6px 6px; + border-radius: 6px 0 6px 6px; +} + +.navbar-inverse .navbar-inner { + background-color: #1b1b1b; + background-image: -moz-linear-gradient(top, #222222, #111111); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111)); + background-image: -webkit-linear-gradient(top, #222222, #111111); + background-image: -o-linear-gradient(top, #222222, #111111); + background-image: linear-gradient(to bottom, #222222, #111111); + background-repeat: repeat-x; + border-color: #252525; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0); +} + +.navbar-inverse .brand, +.navbar-inverse .nav > li > a { + color: #999999; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} + +.navbar-inverse .brand:hover, +.navbar-inverse .nav > li > a:hover, +.navbar-inverse .brand:focus, +.navbar-inverse .nav > li > a:focus { + color: #ffffff; +} + +.navbar-inverse .brand { + color: #999999; +} + +.navbar-inverse .navbar-text { + color: #999999; +} + +.navbar-inverse .nav > li > a:focus, +.navbar-inverse .nav > li > a:hover { + color: #ffffff; + background-color: transparent; +} + +.navbar-inverse .nav .active > a, +.navbar-inverse .nav .active > a:hover, +.navbar-inverse .nav .active > a:focus { + color: #ffffff; + background-color: #111111; +} + +.navbar-inverse .navbar-link { + color: #999999; +} + +.navbar-inverse .navbar-link:hover, +.navbar-inverse .navbar-link:focus { + color: #ffffff; +} + +.navbar-inverse .divider-vertical { + border-right-color: #222222; + border-left-color: #111111; +} + +.navbar-inverse .nav li.dropdown.open > .dropdown-toggle, +.navbar-inverse .nav li.dropdown.active > .dropdown-toggle, +.navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle { + color: #ffffff; + background-color: #111111; +} + +.navbar-inverse .nav li.dropdown > a:hover .caret, +.navbar-inverse .nav li.dropdown > a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} + +.navbar-inverse .nav li.dropdown > .dropdown-toggle .caret { + border-top-color: #999999; + border-bottom-color: #999999; +} + +.navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret, +.navbar-inverse .nav li.dropdown.active > .dropdown-toggle .caret, +.navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} + +.navbar-inverse .navbar-search .search-query { + color: #ffffff; + background-color: #515151; + border-color: #111111; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); + -webkit-transition: none; + -moz-transition: none; + -o-transition: none; + transition: none; +} + +.navbar-inverse .navbar-search .search-query:-moz-placeholder { + color: #cccccc; +} + +.navbar-inverse .navbar-search .search-query:-ms-input-placeholder { + color: #cccccc; +} + +.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder { + color: #cccccc; +} + +.navbar-inverse .navbar-search .search-query:focus, +.navbar-inverse .navbar-search .search-query.focused { + padding: 5px 15px; + color: #333333; + text-shadow: 0 1px 0 #ffffff; + background-color: #ffffff; + border: 0; + outline: 0; + -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); +} + +.navbar-inverse .btn-navbar { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #0e0e0e; + *background-color: #040404; + background-image: -moz-linear-gradient(top, #151515, #040404); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404)); + background-image: -webkit-linear-gradient(top, #151515, #040404); + background-image: -o-linear-gradient(top, #151515, #040404); + background-image: linear-gradient(to bottom, #151515, #040404); + background-repeat: repeat-x; + border-color: #040404 #040404 #000000; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.navbar-inverse .btn-navbar:hover, +.navbar-inverse .btn-navbar:focus, +.navbar-inverse .btn-navbar:active, +.navbar-inverse .btn-navbar.active, +.navbar-inverse .btn-navbar.disabled, +.navbar-inverse .btn-navbar[disabled] { + color: #ffffff; + background-color: #040404; + *background-color: #000000; +} + +.navbar-inverse .btn-navbar:active, +.navbar-inverse .btn-navbar.active { + background-color: #000000 \9; +} + +.breadcrumb { + padding: 8px 15px; + margin: 0 0 20px; + list-style: none; + background-color: #f5f5f5; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +.breadcrumb > li { + display: inline-block; + *display: inline; + text-shadow: 0 1px 0 #ffffff; + *zoom: 1; +} + +.breadcrumb > li > .divider { + padding: 0 5px; + color: #ccc; +} + +.breadcrumb > .active { + color: #999999; +} + +.pagination { + margin: 20px 0; +} + +.pagination ul { + display: inline-block; + *display: inline; + margin-bottom: 0; + margin-left: 0; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + *zoom: 1; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.pagination ul > li { + display: inline; +} + +.pagination ul > li > a, +.pagination ul > li > span { + float: left; + padding: 4px 12px; + line-height: 20px; + text-decoration: none; + background-color: #ffffff; + border: 1px solid #dddddd; + border-left-width: 0; +} + +.pagination ul > li > a:hover, +.pagination ul > li > a:focus, +.pagination ul > .active > a, +.pagination ul > .active > span { + background-color: #f5f5f5; +} + +.pagination ul > .active > a, +.pagination ul > .active > span { + color: #999999; + cursor: default; +} + +.pagination ul > .disabled > span, +.pagination ul > .disabled > a, +.pagination ul > .disabled > a:hover, +.pagination ul > .disabled > a:focus { + color: #999999; + cursor: default; + background-color: transparent; +} + +.pagination ul > li:first-child > a, +.pagination ul > li:first-child > span { + border-left-width: 1px; + -webkit-border-bottom-left-radius: 4px; + border-bottom-left-radius: 4px; + -webkit-border-top-left-radius: 4px; + border-top-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-topleft: 4px; +} + +.pagination ul > li:last-child > a, +.pagination ul > li:last-child > span { + -webkit-border-top-right-radius: 4px; + border-top-right-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + border-bottom-right-radius: 4px; + -moz-border-radius-topright: 4px; + -moz-border-radius-bottomright: 4px; +} + +.pagination-centered { + text-align: center; +} + +.pagination-right { + text-align: right; +} + +.pagination-large ul > li > a, +.pagination-large ul > li > span { + padding: 11px 19px; + font-size: 17.5px; +} + +.pagination-large ul > li:first-child > a, +.pagination-large ul > li:first-child > span { + -webkit-border-bottom-left-radius: 6px; + border-bottom-left-radius: 6px; + -webkit-border-top-left-radius: 6px; + border-top-left-radius: 6px; + -moz-border-radius-bottomleft: 6px; + -moz-border-radius-topleft: 6px; +} + +.pagination-large ul > li:last-child > a, +.pagination-large ul > li:last-child > span { + -webkit-border-top-right-radius: 6px; + border-top-right-radius: 6px; + -webkit-border-bottom-right-radius: 6px; + border-bottom-right-radius: 6px; + -moz-border-radius-topright: 6px; + -moz-border-radius-bottomright: 6px; +} + +.pagination-mini ul > li:first-child > a, +.pagination-small ul > li:first-child > a, +.pagination-mini ul > li:first-child > span, +.pagination-small ul > li:first-child > span { + -webkit-border-bottom-left-radius: 3px; + border-bottom-left-radius: 3px; + -webkit-border-top-left-radius: 3px; + border-top-left-radius: 3px; + -moz-border-radius-bottomleft: 3px; + -moz-border-radius-topleft: 3px; +} + +.pagination-mini ul > li:last-child > a, +.pagination-small ul > li:last-child > a, +.pagination-mini ul > li:last-child > span, +.pagination-small ul > li:last-child > span { + -webkit-border-top-right-radius: 3px; + border-top-right-radius: 3px; + -webkit-border-bottom-right-radius: 3px; + border-bottom-right-radius: 3px; + -moz-border-radius-topright: 3px; + -moz-border-radius-bottomright: 3px; +} + +.pagination-small ul > li > a, +.pagination-small ul > li > span { + padding: 2px 10px; + font-size: 11.9px; +} + +.pagination-mini ul > li > a, +.pagination-mini ul > li > span { + padding: 0 6px; + font-size: 10.5px; +} + +.pager { + margin: 20px 0; + text-align: center; + list-style: none; + *zoom: 1; +} + +.pager:before, +.pager:after { + display: table; + line-height: 0; + content: ""; +} + +.pager:after { + clear: both; +} + +.pager li { + display: inline; +} + +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} + +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #f5f5f5; +} + +.pager .next > a, +.pager .next > span { + float: right; +} + +.pager .previous > a, +.pager .previous > span { + float: left; +} + +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #999999; + cursor: default; + background-color: #fff; +} + +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000; +} + +.modal-backdrop.fade { + opacity: 0; +} + +.modal-backdrop, +.modal-backdrop.fade.in { + opacity: 0.8; + filter: alpha(opacity=80); +} + +.modal { + position: fixed; + top: 10%; + left: 50%; + z-index: 1050; + width: 560px; + margin-left: -280px; + background-color: #ffffff; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, 0.3); + *border: 1px solid #999; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + outline: none; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; +} + +.modal.fade { + top: -25%; + -webkit-transition: opacity 0.3s linear, top 0.3s ease-out; + -moz-transition: opacity 0.3s linear, top 0.3s ease-out; + -o-transition: opacity 0.3s linear, top 0.3s ease-out; + transition: opacity 0.3s linear, top 0.3s ease-out; +} + +.modal.fade.in { + top: 10%; +} + +.modal-header { + padding: 9px 15px; + border-bottom: 1px solid #eee; +} + +.modal-header .close { + margin-top: 2px; +} + +.modal-header h3 { + margin: 0; + line-height: 30px; +} + +.modal-body { + position: relative; + max-height: 400px; + padding: 15px; + overflow-y: auto; +} + +.modal-form { + margin-bottom: 0; +} + +.modal-footer { + padding: 14px 15px 15px; + margin-bottom: 0; + text-align: right; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + *zoom: 1; + -webkit-box-shadow: inset 0 1px 0 #ffffff; + -moz-box-shadow: inset 0 1px 0 #ffffff; + box-shadow: inset 0 1px 0 #ffffff; +} + +.modal-footer:before, +.modal-footer:after { + display: table; + line-height: 0; + content: ""; +} + +.modal-footer:after { + clear: both; +} + +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} + +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} + +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} + +.tooltip { + position: absolute; + z-index: 1030; + display: block; + font-size: 11px; + line-height: 1.4; + opacity: 0; + filter: alpha(opacity=0); + visibility: visible; +} + +.tooltip.in { + opacity: 0.8; + filter: alpha(opacity=80); +} + +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} + +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} + +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} + +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} + +.tooltip-inner { + max-width: 200px; + padding: 8px; + color: #ffffff; + text-align: center; + text-decoration: none; + background-color: #000000; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} + +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-top-color: #000000; + border-width: 5px 5px 0; +} + +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-right-color: #000000; + border-width: 5px 5px 5px 0; +} + +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-left-color: #000000; + border-width: 5px 0 5px 5px; +} + +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-bottom-color: #000000; + border-width: 0 5px 5px; +} + +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1010; + display: none; + max-width: 276px; + padding: 1px; + text-align: left; + white-space: normal; + background-color: #ffffff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -webkit-background-clip: padding-box; + -moz-background-clip: padding; + background-clip: padding-box; +} + +.popover.top { + margin-top: -10px; +} + +.popover.right { + margin-left: 10px; +} + +.popover.bottom { + margin-top: 10px; +} + +.popover.left { + margin-left: -10px; +} + +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + font-weight: normal; + line-height: 18px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + -webkit-border-radius: 5px 5px 0 0; + -moz-border-radius: 5px 5px 0 0; + border-radius: 5px 5px 0 0; +} + +.popover-title:empty { + display: none; +} + +.popover-content { + padding: 9px 14px; +} + +.popover .arrow, +.popover .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} + +.popover .arrow { + border-width: 11px; +} + +.popover .arrow:after { + border-width: 10px; + content: ""; +} + +.popover.top .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, 0.25); + border-bottom-width: 0; +} + +.popover.top .arrow:after { + bottom: 1px; + margin-left: -10px; + border-top-color: #ffffff; + border-bottom-width: 0; +} + +.popover.right .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, 0.25); + border-left-width: 0; +} + +.popover.right .arrow:after { + bottom: -10px; + left: 1px; + border-right-color: #ffffff; + border-left-width: 0; +} + +.popover.bottom .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, 0.25); + border-top-width: 0; +} + +.popover.bottom .arrow:after { + top: 1px; + margin-left: -10px; + border-bottom-color: #ffffff; + border-top-width: 0; +} + +.popover.left .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, 0.25); + border-right-width: 0; +} + +.popover.left .arrow:after { + right: 1px; + bottom: -10px; + border-left-color: #ffffff; + border-right-width: 0; +} + +.thumbnails { + margin-left: -20px; + list-style: none; + *zoom: 1; +} + +.thumbnails:before, +.thumbnails:after { + display: table; + line-height: 0; + content: ""; +} + +.thumbnails:after { + clear: both; +} + +.row-fluid .thumbnails { + margin-left: 0; +} + +.thumbnails > li { + float: left; + margin-bottom: 20px; + margin-left: 20px; +} + +.thumbnail { + display: block; + padding: 4px; + line-height: 20px; + border: 1px solid #ddd; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); + -webkit-transition: all 0.2s ease-in-out; + -moz-transition: all 0.2s ease-in-out; + -o-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} + +a.thumbnail:hover, +a.thumbnail:focus { + border-color: #0088cc; + -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); +} + +.thumbnail > img { + display: block; + max-width: 100%; + margin-right: auto; + margin-left: auto; +} + +.thumbnail .caption { + padding: 9px; + color: #555555; +} + +.media, +.media-body { + overflow: hidden; + *overflow: visible; + zoom: 1; +} + +.media, +.media .media { + margin-top: 15px; +} + +.media:first-child { + margin-top: 0; +} + +.media-object { + display: block; +} + +.media-heading { + margin: 0 0 5px; +} + +.media > .pull-left { + margin-right: 10px; +} + +.media > .pull-right { + margin-left: 10px; +} + +.media-list { + margin-left: 0; + list-style: none; +} + +.label, +.badge { + display: inline-block; + padding: 2px 4px; + font-size: 11.844px; + font-weight: bold; + line-height: 14px; + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + white-space: nowrap; + vertical-align: baseline; + background-color: #999999; +} + +.label { + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} + +.badge { + padding-right: 9px; + padding-left: 9px; + -webkit-border-radius: 9px; + -moz-border-radius: 9px; + border-radius: 9px; +} + +.label:empty, +.badge:empty { + display: none; +} + +a.label:hover, +a.label:focus, +a.badge:hover, +a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} + +.label-important, +.badge-important { + background-color: #b94a48; +} + +.label-important[href], +.badge-important[href] { + background-color: #953b39; +} + +.label-warning, +.badge-warning { + background-color: #f89406; +} + +.label-warning[href], +.badge-warning[href] { + background-color: #c67605; +} + +.label-success, +.badge-success { + background-color: #468847; +} + +.label-success[href], +.badge-success[href] { + background-color: #356635; +} + +.label-info, +.badge-info { + background-color: #3a87ad; +} + +.label-info[href], +.badge-info[href] { + background-color: #2d6987; +} + +.label-inverse, +.badge-inverse { + background-color: #333333; +} + +.label-inverse[href], +.badge-inverse[href] { + background-color: #1a1a1a; +} + +.btn .label, +.btn .badge { + position: relative; + top: -1px; +} + +.btn-mini .label, +.btn-mini .badge { + top: 0; +} + +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +@-moz-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +@-ms-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +@-o-keyframes progress-bar-stripes { + from { + background-position: 0 0; + } + to { + background-position: 40px 0; + } +} + +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f7f7f7; + background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9)); + background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9); + background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9); + background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9); + background-repeat: repeat-x; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0); + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); +} + +.progress .bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + color: #ffffff; + text-align: center; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #0e90d2; + background-image: -moz-linear-gradient(top, #149bdf, #0480be); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be)); + background-image: -webkit-linear-gradient(top, #149bdf, #0480be); + background-image: -o-linear-gradient(top, #149bdf, #0480be); + background-image: linear-gradient(to bottom, #149bdf, #0480be); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0); + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: width 0.6s ease; + -moz-transition: width 0.6s ease; + -o-transition: width 0.6s ease; + transition: width 0.6s ease; +} + +.progress .bar + .bar { + -webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); +} + +.progress-striped .bar { + background-color: #149bdf; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + -moz-background-size: 40px 40px; + -o-background-size: 40px 40px; + background-size: 40px 40px; +} + +.progress.active .bar { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -moz-animation: progress-bar-stripes 2s linear infinite; + -ms-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} + +.progress-danger .bar, +.progress .bar-danger { + background-color: #dd514c; + background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35)); + background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); + background-image: linear-gradient(to bottom, #ee5f5b, #c43c35); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0); +} + +.progress-danger.progress-striped .bar, +.progress-striped .bar-danger { + background-color: #ee5f5b; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.progress-success .bar, +.progress .bar-success { + background-color: #5eb95e; + background-image: -moz-linear-gradient(top, #62c462, #57a957); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957)); + background-image: -webkit-linear-gradient(top, #62c462, #57a957); + background-image: -o-linear-gradient(top, #62c462, #57a957); + background-image: linear-gradient(to bottom, #62c462, #57a957); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0); +} + +.progress-success.progress-striped .bar, +.progress-striped .bar-success { + background-color: #62c462; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.progress-info .bar, +.progress .bar-info { + background-color: #4bb1cf; + background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9)); + background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); + background-image: -o-linear-gradient(top, #5bc0de, #339bb9); + background-image: linear-gradient(to bottom, #5bc0de, #339bb9); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0); +} + +.progress-info.progress-striped .bar, +.progress-striped .bar-info { + background-color: #5bc0de; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.progress-warning .bar, +.progress .bar-warning { + background-color: #faa732; + background-image: -moz-linear-gradient(top, #fbb450, #f89406); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); + background-image: -webkit-linear-gradient(top, #fbb450, #f89406); + background-image: -o-linear-gradient(top, #fbb450, #f89406); + background-image: linear-gradient(to bottom, #fbb450, #f89406); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); +} + +.progress-warning.progress-striped .bar, +.progress-striped .bar-warning { + background-color: #fbb450; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.accordion { + margin-bottom: 20px; +} + +.accordion-group { + margin-bottom: 2px; + border: 1px solid #e5e5e5; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} + +.accordion-heading { + border-bottom: 0; +} + +.accordion-heading .accordion-toggle { + display: block; + padding: 8px 15px; +} + +.accordion-toggle { + cursor: pointer; +} + +.accordion-inner { + padding: 9px 15px; + border-top: 1px solid #e5e5e5; +} + +.carousel { + position: relative; + margin-bottom: 20px; + line-height: 1; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} + +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: 0.6s ease-in-out left; + -moz-transition: 0.6s ease-in-out left; + -o-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} + +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + line-height: 1; +} + +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} + +.carousel-inner > .active { + left: 0; +} + +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} + +.carousel-inner > .next { + left: 100%; +} + +.carousel-inner > .prev { + left: -100%; +} + +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} + +.carousel-inner > .active.left { + left: -100%; +} + +.carousel-inner > .active.right { + left: 100%; +} + +.carousel-control { + position: absolute; + top: 40%; + left: 15px; + width: 40px; + height: 40px; + margin-top: -20px; + font-size: 60px; + font-weight: 100; + line-height: 30px; + color: #ffffff; + text-align: center; + background: #222222; + border: 3px solid #ffffff; + -webkit-border-radius: 23px; + -moz-border-radius: 23px; + border-radius: 23px; + opacity: 0.5; + filter: alpha(opacity=50); +} + +.carousel-control.right { + right: 15px; + left: auto; +} + +.carousel-control:hover, +.carousel-control:focus { + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} + +.carousel-indicators { + position: absolute; + top: 15px; + right: 15px; + z-index: 5; + margin: 0; + list-style: none; +} + +.carousel-indicators li { + display: block; + float: left; + width: 10px; + height: 10px; + margin-left: 5px; + text-indent: -999px; + background-color: #ccc; + background-color: rgba(255, 255, 255, 0.25); + border-radius: 5px; +} + +.carousel-indicators .active { + background-color: #fff; +} + +.carousel-caption { + position: absolute; + right: 0; + bottom: 0; + left: 0; + padding: 15px; + background: #333333; + background: rgba(0, 0, 0, 0.75); +} + +.carousel-caption h4, +.carousel-caption p { + line-height: 20px; + color: #ffffff; +} + +.carousel-caption h4 { + margin: 0 0 5px; +} + +.carousel-caption p { + margin-bottom: 0; +} + +.hero-unit { + padding: 60px; + margin-bottom: 30px; + font-size: 18px; + font-weight: 200; + line-height: 30px; + color: inherit; + background-color: #eeeeee; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} + +.hero-unit h1 { + margin-bottom: 0; + font-size: 60px; + line-height: 1; + letter-spacing: -1px; + color: inherit; +} + +.hero-unit li { + line-height: 30px; +} + +.pull-right { + float: right; +} + +.pull-left { + float: left; +} + +.hide { + display: none; +} + +.show { + display: block; +} + +.invisible { + visibility: hidden; +} + +.affix { + position: fixed; +} diff --git a/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.min.css b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.min.css new file mode 100644 index 0000000..b6428e6 --- /dev/null +++ b/doc/build/html/_static/bootstrap-2.3.2/css/bootstrap.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v2.3.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{width:auto\9;height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}label,select,button,input[type="button"],input[type="reset"],input[type="submit"],input[type="radio"],input[type="checkbox"]{cursor:pointer}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover,a:focus{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}a.muted:hover,a.muted:focus{color:#808080}.text-warning{color:#c09853}a.text-warning:hover,a.text-warning:focus{color:#a47e3c}.text-error{color:#b94a48}a.text-error:hover,a.text-error:focus{color:#953b39}.text-info{color:#3a87ad}a.text-info:hover,a.text-info:focus{color:#2d6987}.text-success{color:#468847}a.text-success:hover,a.text-success:focus{color:#356635}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;padding-right:5px;padding-left:5px;*zoom:1}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;line-height:0;content:""}.dl-horizontal:after{clear:both}.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;white-space:nowrap;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #ccc}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}.controls-row .checkbox[class*="span"],.controls-row .radio[class*="span"]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning .control-label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error .control-label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success .control-label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}.control-group.info .control-label,.control-group.info .help-block,.control-group.info .help-inline{color:#3a87ad}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#3a87ad}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;font-size:0;white-space:nowrap;vertical-align:middle}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu,.input-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend .btn-group>.dropdown-toggle{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group .btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal .uneditable-input+.help-block,.form-horizontal .input-prepend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}.table-bordered tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-striped tbody>tr:nth-child(odd)>td,.table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover tbody tr:hover>td,.table-hover tbody tr:hover>th{background-color:#f5f5f5}table td[class*="span"],table th[class*="span"],.row-fluid table td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success>td{background-color:#dff0d8}.table tbody tr.error>td{background-color:#f2dede}.table tbody tr.warning>td{background-color:#fcf8e3}.table tbody tr.info>td{background-color:#d9edf7}.table-hover tbody tr.success:hover>td{background-color:#d0e9c6}.table-hover tbody tr.error:hover>td{background-color:#ebcccc}.table-hover tbody tr.warning:hover>td{background-color:#faf2cc}.table-hover tbody tr.info:hover>td{background-color:#c4e3f3}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:focus>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>li>a:focus>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:focus>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"],.dropdown-submenu:focus>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{width:16px;background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:default;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #ccc;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^="icon-"],.btn-mini [class*=" icon-"]{margin-top:-1px}.btn-mini{padding:0 6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-moz-linear-gradient(top,#444,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-repeat:repeat-x;border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#005580;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.btn-mini .caret,.btn-small .caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert,.alert h4{color:#c09853}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success h4{color:#468847}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger h4,.alert-error h4{color:#b94a48}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info h4{color:#3a87ad}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#eee #eee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav li.dropdown.open a:focus .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover,.tabs-stacked .open>a:focus{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left>.nav-tabs>li>a:focus{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#eee #eee #eee #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs .active>a:focus{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover,.navbar .brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px;color:#777}.navbar-link{color:#777}.navbar-link:hover,.navbar-link:focus{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:5px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append .btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,0.1);box-shadow:0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#777;border-bottom-color:#777}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse .nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#999}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top,#151515,#040404);background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb>li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb>li>.divider{padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#f5f5f5}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination ul>.disabled>a:focus{color:#999;cursor:default;background-color:transparent}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-moz-border-radius-topleft:3px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:default;background-color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:10%;left:50%;z-index:1050;width:560px;margin-left:-280px;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:10%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{position:relative;max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.tooltip{position:absolute;z-index:1030;display:block;font-size:11px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-title:empty{display:none}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-right:9px;padding-left:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none}.carousel-indicators li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,0.25);border-radius:5px}.carousel-indicators .active{background-color:#fff}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed} diff --git a/doc/build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings-white.png b/doc/build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings-white.png new file mode 100644 index 0000000000000000000000000000000000000000..3bf6484a29d8da269f9bc874b25493a45fae3bae GIT binary patch literal 8777 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 B7G?kd literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings.png b/doc/build/html/_static/bootstrap-2.3.2/img/glyphicons-halflings.png new file mode 100644 index 0000000000000000000000000000000000000000..a9969993201f9cee63cf9f49217646347297b643 GIT binary patch literal 12799 zcma*OWmH^Ivn@*S;K3nSf_t!#;0f+&pm7Po8`nk}2q8f5;M%x$SdAkd9FAvlc$ zx660V9e3Ox@4WZ^?7jZ%QFGU-T~%||Ug4iK6bbQY@zBuF2$hxOw9wF=A)nUSxR_5@ zEX>HBryGrjyuOFFv$Y4<+|3H@gQfEqD<)+}a~mryD|1U9*I_FOG&F%+Ww{SJ-V2BR zjt<81Ek$}Yb*95D4RS0HCps|uLyovt;P05hchQb-u2bzLtmog&f2}1VlNhxXV);S9 zM2buBg~!q9PtF)&KGRgf3#z7B(hm5WlNClaCWFs!-P!4-u*u5+=+D|ZE9e`KvhTHT zJBnLwGM%!u&vlE%1ytJ=!xt~y_YkFLQb6bS!E+s8l7PiPGSt9xrmg?LV&&SL?J~cI zS(e9TF1?SGyh+M_p@o1dyWu7o7_6p;N6hO!;4~ z2B`I;y`;$ZdtBpvK5%oQ^p4eR2L)BH>B$FQeC*t)c`L71gXHPUa|vyu`Bnz)H$ZcXGve(}XvR!+*8a>BLV;+ryG1kt0=)ytl zNJxFUN{V7P?#|Cp85QTa@(*Q3%K-R(Pkv1N8YU*(d(Y}9?PQ(j;NzWoEVWRD-~H$=f>j9~PN^BM2okI(gY-&_&BCV6RP&I$FnSEM3d=0fCxbxA6~l>54-upTrw zYgX@%m>jsSGi`0cQt6b8cX~+02IghVlNblR7eI;0ps}mpWUcxty1yG56C5rh%ep(X z?)#2d?C<4t-KLc*EAn>>M8%HvC1TyBSoPNg(4id~H8JwO#I)Bf;N*y6ai6K9_bA`4 z_g9(-R;qyH&6I$`b42v|0V3Z8IXN*p*8g$gE98+JpXNY+jXxU0zsR^W$#V=KP z3AEFp@OL}WqwOfsV<)A^UTF4&HF1vQecz?LWE@p^Z2){=KEC_3Iopx_eS42>DeiDG zWMXGbYfG~W7C8s@@m<_?#Gqk;!&)_Key@^0xJxrJahv{B&{^!>TV7TEDZlP|$=ZCz zmX=ZWtt4QZKx**)lQQoW8y-XLiOQy#T`2t}p6l*S`68ojyH@UXJ-b~@tN`WpjF z%7%Yzv807gsO!v=!(2uR)16!&U5~VPrPHtGzUU?2w(b1Xchq}(5Ed^G|SD7IG+kvgyVksU) z(0R)SW1V(>&q2nM%Z!C9=;pTg!(8pPSc%H01urXmQI6Gi^dkYCYfu6b4^tW))b^U+ z$2K&iOgN_OU7n#GC2jgiXU{caO5hZt0(>k+c^(r><#m|#J^s?zA6pi;^#*rp&;aqL zRcZi0Q4HhVX3$ybclxo4FFJW*`IV`)Bj_L3rQe?5{wLJh168Ve1jZv+f1D}f0S$N= zm4i|9cEWz&C9~ZI3q*gwWH^<6sBWuphgy@S3Qy?MJiL>gwd|E<2h9-$3;gT9V~S6r z)cAcmE0KXOwDA5eJ02-75d~f?3;n7a9d_xPBJaO;Z)#@s7gk5$Qn(Fc^w@9c5W0zY z59is0?Mt^@Rolcn{4%)Ioat(kxQH6}hIykSA)zht=9F_W*D#<}N(k&&;k;&gKkWIL z0Of*sP=X(Uyu$Pw;?F@?j{}=>{aSHFcii#78FC^6JGrg-)!)MV4AKz>pXnhVgTgx8 z1&5Y=>|8RGA6++FrSy=__k_imx|z-EI@foKi>tK0Hq2LetjUotCgk2QFXaej!BWYL zJc{fv(&qA7UUJ|AXLc5z*_NW#yWzKtl(c8mEW{A>5Hj^gfZ^HC9lQNQ?RowXjmuCj4!!54Us1=hY z0{@-phvC}yls!PmA~_z>Y&n&IW9FQcj}9(OLO-t^NN$c0o}YksCUWt|DV(MJB%%Sr zdf}8!9ylU2TW!=T{?)g-ojAMKc>3pW;KiZ7f0;&g)k}K^#HBhE5ot)%oxq$*$W@b# zg4p<Ou`ME|Kd1WHK@8 zzLD+0(NHWa`B{em3Ye?@aVsEi>y#0XVZfaFuq#;X5C3{*ikRx7UY4FF{ZtNHNO?A_ z#Q?hwRv~D8fPEc%B5E-ZMI&TAmikl||EERumQCRh7p;)>fdZMxvKq;ky0}7IjhJph zW*uuu*(Y6)S;Od--8uR^R#sb$cmFCnPcj9PPCWhPN;n`i1Q#Qn>ii z{WR|0>8F`vf&#E(c2NsoH=I7Cd-FV|%(7a`i}gZw4N~QFFG2WtS^H%@c?%9UZ+kez z;PwGgg_r6V>Kn5n(nZ40P4qMyrCP3bDkJp@hp6&X3>gzC>=f@Hsen<%I~7W+x@}b> z0}Et*vx_50-q@PIV=(3&Tbm}}QRo*FP2@)A#XX-8jYspIhah`9ukPBr)$8>Tmtg&R z?JBoH17?+1@Y@r>anoKPQ}F8o9?vhcG79Cjv^V6ct709VOQwg{c0Q#rBSsSmK3Q;O zBpNihl3S0_IGVE)^`#94#j~$;7+u870yWiV$@={|GrBmuz4b)*bCOPkaN0{6$MvazOEBxFdKZDlbVvv{8_*kJ zfE6C`4&Kkz<5u%dEdStd85-5UHG5IOWbo8i9azgg#zw-(P1AA049hddAB*UdG3Vn0 zX`OgM+EM|<+KhJ<=k?z~WA5waVj?T9eBdfJGebVifBKS1u<$#vl^BvSg)xsnT5Aw_ZY#}v*LXO#htB>f}x3qDdDHoFeb zAq7;0CW;XJ`d&G*9V)@H&739DpfWYzdQt+Kx_E1K#Cg1EMtFa8eQRk_JuUdHD*2;W zR~XFnl!L2A?48O;_iqCVr1oxEXvOIiN_9CUVTZs3C~P+11}ebyTRLACiJuMIG#`xP zKlC|E(S@QvN+%pBc6vPiQS8KgQAUh75C0a2xcPQDD$}*bM&z~g8+=9ltmkT$;c;s z5_=8%i0H^fEAOQbHXf0;?DN5z-5+1 zDxj50yYkz4ox9p$HbZ|H?8ukAbLE^P$@h}L%i6QVcY>)i!w=hkv2zvrduut%!8>6b zcus3bh1w~L804EZ*s96?GB&F7c5?m?|t$-tp2rKMy>F*=4;w*jW}^;8v`st&8)c; z2Ct2{)?S(Z;@_mjAEjb8x=qAQvx=}S6l9?~H?PmP`-xu;ME*B8sm|!h@BX4>u(xg_ zIHmQzp4Tgf*J}Y=8STR5_s)GKcmgV!$JKTg@LO402{{Wrg>#D4-L%vjmtJ4r?p&$F!o-BOf7ej~ z6)BuK^^g1b#(E>$s`t3i13{6-mmSp7{;QkeG5v}GAN&lM2lQT$@(aQCcFP(%UyZbF z#$HLTqGT^@F#A29b0HqiJsRJAlh8kngU`BDI6 zJUE~&!cQ*&f95Ot$#mxU5+*^$qg_DWNdfu+1irglB7yDglzH()2!@#rpu)^3S8weW z_FE$=j^GTY*|5SH95O8o8W9FluYwB=2PwtbW|JG6kcV^dMVmX(wG+Otj;E$%gfu^K z!t~<3??8=()WQSycsBKy24>NjRtuZ>zxJIED;YXaUz$@0z4rl+TW zWxmvM$%4jYIpO>j5k1t1&}1VKM~s!eLsCVQ`TTjn3JRXZD~>GM z$-IT~(Y)flNqDkC%DfbxaV9?QuWCV&-U1yzrV@0jRhE;)ZO0=r-{s@W?HOFbRHDDV zq;eLo+wOW;nI|#mNf(J?RImB9{YSO2Y`9825Lz#u4(nk3)RGv3X8B(A$TsontJ8L! z9JP^eWxtKC?G8^xAZa1HECx*rp35s!^%;&@Jyk)NexVc)@U4$^X1Dag6`WKs|(HhZ#rzO2KEw3xh~-0<;|zcs0L>OcO#YYX{SN8m6`9pp+ zQG@q$I)T?aoe#AoR@%om_#z=c@ych!bj~lV13Qi-xg$i$hXEAB#l=t7QWENGbma4L zbBf*X*4oNYZUd_;1{Ln_ZeAwQv4z?n9$eoxJeI?lU9^!AB2Y~AwOSq67dT9ADZ)s@ zCRYS7W$Zpkdx$3T>7$I%3EI2ik~m!f7&$Djpt6kZqDWZJ-G{*_eXs*B8$1R4+I}Kf zqniwCI64r;>h2Lu{0c(#Atn)%E8&)=0S4BMhq9$`vu|Ct;^ur~gL`bD>J@l)P$q_A zO7b3HGOUG`vgH{}&&AgrFy%K^>? z>wf**coZ2vdSDcNYSm~dZ(vk6&m6bVKmVgrx-X<>{QzA!)2*L+HLTQz$e8UcB&Djq zl)-%s$ZtUN-R!4ZiG=L0#_P=BbUyH+YPmFl_ogkkQ$=s@T1v}rNnZ^eMaqJ|quc+6 z*ygceDOrldsL30w`H;rNu+IjlS+G~p&0SawXCA1+D zC%cZtjUkLNq%FadtHE?O(yQTP486A{1x<{krq#rpauNQaeyhM3*i0%tBpQHQo-u)x z{0{&KS`>}vf2_}b160XZO2$b)cyrHq7ZSeiSbRvaxnKUH{Q`-P(nL&^fcF2){vhN- zbX&WEjP7?b4A%0y6n_=m%l00uZ+}mCYO(!x?j$+O$*TqoD_Q5EoyDJ?w?^UIa491H zE}87(bR`X;@u#3Qy~9wWdWQIg1`cXrk$x9=ccR|RY1~%{fAJ@uq@J3e872x0v$hmv ze_KcL(wM|n0EOp;t{hKoohYyDmYO;!`7^Lx;0k=PWPGZpI>V5qYlzjSL_(%|mud50 z7#{p97s`U|Sn$WYF>-i{i4`kzlrV6a<}=72q2sAT7Zh{>P%*6B;Zl;~0xWymt10Mo zl5{bmR(wJefJpNGK=fSRP|mpCI-)Nf6?Pv==FcFmpSwF1%CTOucV{yqxSyx4Zws3O z8hr5Uyd%ezIO7?PnEO0T%af#KOiXD$e?V&OX-B|ZX-YsgSs%sv-6U+sLPuz{D4bq| zpd&|o5tNCmpT>(uIbRf?8c}d3IpOb3sn6>_dr*26R#ev<_~vi)wleW$PX|5)$_ z+_|=pi(0D(AB_sjQ;sQQSM&AWqzDO1@NHw;C9cPdXRKRI#@nUW)CgFxzQ1nyd!+h& zcjU!U=&u|>@}R(9D$%lu2TlV>@I2-n@fCr5PrZNVyKWR7hm zWjoy^p7v8m#$qN0K#8jT- zq`mSirDZDa1Jxm;Rg3rAPhC)LcI4@-RvKT+@9&KsR3b0_0zuM!Fg7u>oF>3bzOxZPU&$ab$Z9@ zY)f7pKh22I7ZykL{YsdjcqeN++=0a}elQM-4;Q)(`Ep3|VFHqnXOh14`!Bus& z9w%*EWK6AiAM{s$6~SEQS;A>ey$#`7)khZvamem{P?>k)5&7Sl&&NXKk}o!%vd;-! zpo2p-_h^b$DNBO>{h4JdGB=D>fvGIYN8v&XsfxU~VaefL?q} z3ekM?iOKkCzQHkBkhg=hD!@&(L}FcHKoa zbZ7)H1C|lHjwEb@tu=n^OvdHOo7o+W`0-y3KdP#bb~wM=Vr_gyoEq|#B?$&d$tals ziIs-&7isBpvS|CjC|7C&3I0SE?~`a%g~$PI%;au^cUp@ER3?mn-|vyu!$7MV6(uvt z+CcGuM(Ku2&G0tcRCo7#D$Dirfqef2qPOE5I)oCGzmR5G!o#Q~(k~)c=LpIfrhHQk zeAva6MilEifE7rgP1M7AyWmLOXK}i8?=z2;N=no)`IGm#y%aGE>-FN zyXCp0Sln{IsfOBuCdE*#@CQof%jzuU*jkR*Su3?5t}F(#g0BD0Zzu|1MDes8U7f9; z$JBg|mqTXt`muZ8=Z`3wx$uizZG_7>GI7tcfOHW`C2bKxNOR)XAwRkLOaHS4xwlH4 zDpU29#6wLXI;H?0Se`SRa&I_QmI{zo7p%uveBZ0KZKd9H6@U?YGArbfm)D*^5=&Rp z`k{35?Z5GbZnv>z@NmJ%+sx=1WanWg)8r}C_>EGR8mk(NR$pW<-l8OTU^_u3M@gwS z7}GGa1)`z5G|DZirw;FB@VhH7Dq*0qc=|9lLe{w2#`g+_nt>_%o<~9(VZe=zI*SSz4w43-_o>4E4`M@NPKTWZuQJs)?KXbWp1M zimd5F;?AP(LWcaI-^Sl{`~>tmxsQB9Y$Xi*{Zr#py_+I$vx7@NY`S?HFfS!hUiz$a z{>!&e1(16T!Om)m)&k1W#*d#GslD^4!TwiF2WjFBvi=Ms!ADT)ArEW6zfVuIXcXVk z>AHjPADW+mJzY`_Ieq(s?jbk4iD2Rb8*V3t6?I+E06(K8H!!xnDzO%GB;Z$N-{M|B zeT`jo%9)s%op*XZKDd6*)-^lWO{#RaIGFdBH+;XXjI(8RxpBc~azG1H^2v7c^bkFE zZCVPE+E*Q=FSe8Vm&6|^3ki{9~qafiMAf7i4APZg>b%&5>nT@pHH z%O*pOv(77?ZiT{W zBibx}Q12tRc7Py1NcZTp`Q4ey%T_nj@1WKg5Fz_Rjl4wlJQj)rtp8yL3r!Shy zvZvnmh!tH4T6Js-?vI0<-rzzl{mgT*S0d_7^AU_8gBg^03o-J=p(1o6kww2hx|!%T z-jqp}m^G*W?$!R#M%Ef?&2jYxmx+lXWZszpI4d$pUN`(S)|*c^CgdwY>Fa>> zgGBJhwe8y#Xd*q0=@SLEgPF>+Qe4?%E*v{a`||luZ~&dqMBrRfJ{SDMaJ!s_;cSJp zSqZHXIdc@@XteNySUZs^9SG7xK`8=NBNM)fRVOjw)D^)w%L2OPkTQ$Tel-J)GD3=YXy+F4in(ILy*A3m@3o73uv?JC}Q>f zrY&8SWmesiba0|3X-jmlMT3 z*ST|_U@O=i*sM_*48G)dgXqlwoFp5G6qSM3&%_f_*n!PiT>?cNI)fAUkA{qWnqdMi+aNK_yVQ&lx4UZknAc9FIzVk% zo6JmFH~c{_tK!gt4+o2>)zoP{sR}!!vfRjI=13!z5}ijMFQ4a4?QIg-BE4T6!#%?d&L;`j5=a`4is>U;%@Rd~ zXC~H7eGQhhYWhMPWf9znDbYIgwud(6$W3e>$W4$~d%qoJ z+JE`1g$qJ%>b|z*xCKenmpV$0pM=Gl-Y*LT8K+P)2X#;XYEFF4mRbc~jj?DM@(1e`nL=F4Syv)TKIePQUz)bZ?Bi3@G@HO$Aps1DvDGkYF50O$_welu^cL7;vPiMGho74$;4fDqKbE{U zd1h{;LfM#Fb|Z&uH~Rm_J)R~Vy4b;1?tW_A)Iz#S_=F|~pISaVkCnQ0&u%Yz%o#|! zS-TSg87LUfFSs{tTuM3$!06ZzH&MFtG)X-l7>3)V?Txuj2HyG*5u;EY2_5vU0ujA? zHXh5G%6e3y7v?AjhyX79pnRBVr}RmPmtrxoB7lkxEzChX^(vKd+sLh?SBic=Q)5nA zdz7Mw3_iA>;T^_Kl~?1|5t%GZ;ki_+i>Q~Q1EVdKZ)$Sh3LM@ea&D~{2HOG++7*wF zAC6jW4>fa~!Vp5+$Z{<)Qxb|{unMgCv2)@%3j=7)Zc%U<^i|SAF88s!A^+Xs!OASYT%7;Jx?olg_6NFP1475N z#0s<@E~FI}#LNQ{?B1;t+N$2k*`K$Hxb%#8tRQi*Z#No0J}Pl;HWb){l7{A8(pu#@ zfE-OTvEreoz1+p`9sUI%Y{e5L-oTP_^NkgpYhZjp&ykinnW;(fu1;ttpSsgYM8ABX4dHe_HxU+%M(D=~) zYM}XUJ5guZ;=_ZcOsC`_{CiU$zN3$+x&5C`vX-V3`8&RjlBs^rf00MNYZW+jCd~7N z%{jJuUUwY(M`8$`B>K&_48!Li682ZaRknMgQ3~dnlp8C?__!P2z@=Auv;T^$yrsNy zCARmaA@^Yo2sS%2$`031-+h9KMZsIHfB>s@}>Y(z988e!`%4=EDoAQ0kbk>+lCoK60Mx9P!~I zlq~wf7kcm_NFImt3ZYlE(b3O1K^QWiFb$V^a2Jlwvm(!XYx<`i@ZMS3UwFt{;x+-v zhx{m=m;4dgvkKp5{*lfSN3o^keSpp9{hlXj%=}e_7Ou{Yiw(J@NXuh*;pL6@$HsfB zh?v+r^cp@jQ4EspC#RqpwPY(}_SS$wZ{S959`C25777&sgtNh%XTCo9VHJC-G z;;wi9{-iv+ETiY;K9qvlEc04f;ZnUP>cUL_T*ms``EtGoP^B#Q>n2dSrbAg8a>*Lg zd0EJ^=tdW~7fbcLFsqryFEcy*-8!?;n%;F+8i{eZyCDaiYxghr z$8k>L|2&-!lhvuVdk!r-kpSFl`5F5d4DJr%M4-qOy3gdmQbqF1=aBtRM7)c_Ae?$b8 zQg4c8*KQ{XJmL)1c7#0Yn0#PTMEs4-IHPjkn0!=;JdhMXqzMLeh`yOylXROP- zl#z3+fwM9l3%VN(6R77ua*uI9%hO7l7{+Hcbr(peh;afUK?B4EC09J{-u{mv)+u#? zdKVBCPt`eU@IzL)OXA`Ebu`Xp?u0m%h&X41}FNfnJ*g1!1wcbbpo%F4x!-#R9ft!8{5`Ho}04?FI#Kg zL|k`tF1t_`ywdy8(wnTut>HND(qNnq%Sq=AvvZbXnLx|mJhi!*&lwG2g|edBdVgLy zjvVTKHAx(+&P;P#2Xobo7_RttUi)Nllc}}hX>|N?-u5g7VJ-NNdwYcaOG?NK=5)}` zMtOL;o|i0mSKm(UI_7BL_^6HnVOTkuPI6y@ZLR(H?c1cr-_ouSLp{5!bx^DiKd*Yb z{K78Ci&Twup zTKm)ioN|wcYy%Qnwb)IzbH>W!;Ah5Zdm_jRY`+VRJ2 zhkspZ9hbK3iQD91A$d!0*-1i#%x81|s+SPRmD}d~<1p6!A13(!vABP2kNgqEG z?AMgl^P+iRoIY(9@_I?n1829lGvAsRnHwS~|5vD2+Zi53j<5N4wNn0{q>>jF9*bI) zL$kMXM-awNOElF>{?Jr^tOz1glbwaD-M0OKOlTeW3C!1ZyxRbB>8JDof(O&R1bh%3x#>y2~<>OXO#IIedH0Q`(&&?eo-c~ z>*Ah#3~09unym~UC-UFqqI>{dmUD$Y4@evG#ORLI*{ZM)Jl=e1it!XzY($S3V zLG!Y6fCjE>x6r@5FG1n|8ompSZaJ>9)q6jqU;XxCQk9zV(?C9+i*>w z21+KYt1gXX&0`x3E)hS7I5}snbBzox9C@Xzcr|{B8Hw;SY1$}&BoYKXH^hpjW-RgJ z-Fb}tannKCv>y~^`r|(1Q9;+sZlYf3XPSX|^gR01UFtu$B*R;$sPZdIZShRr>|b@J z;#G{EdoY+O;REEjQ}X7_YzWLO+Ey3>a_KDe1CjSe| z6arqcEZ)CX!8r(si`dqbF$uu&pnf^Np{1f*TdJ`r2;@SaZ z#hb4xlaCA@Pwqj#LlUEe5L{I$k(Zj$d3(~)u(F%&xb8={N9hKxlZIO1ABsM{Mt|)2 zJ^t9Id;?%4PfR4&Ph9B9cFK~@tG3wlFW-0fXZS_L4U*EiAA%+`h%q2^6BCC;t0iO4V=s4Qug{M|iDV@s zC7|ef-dxiR7T&Mpre!%hiUhHM%3Qxi$Lzw6&(Tvlx9QA_7LhYq<(o~=Y>3ka-zrQa zhGpfFK@)#)rtfz61w35^sN1=IFw&Oc!Nah+8@qhJ0UEGr;JplaxOGI82OVqZHsqfX ze1}r{jy;G?&}Da}a7>SCDsFDuzuseeCKof|Dz2BPsP8? zY;a)Tkr2P~0^2BeO?wnzF_Ul-ekY=-w26VnU%U3f19Z-pj&2 z4J_a|o4Dci+MO)mPQIM>kdPG1xydiR9@#8m zh27D7GF{p|a{8({Q-Pr-;#jV{2zHR>lGoFtIfIpoMo?exuQyX_A;;l0AP4!)JEM$EwMInZkj+8*IHP4vKRd zKx_l-i*>A*C@{u%ct`y~s6MWAfO{@FPIX&sg8H{GMDc{4M3%$@c8&RAlw0-R<4DO3 trJqdc$mBpWeznn?E0M$F`|3v=`3%T2A17h;rxP7$%JLd=6(2u;`(N3pt&so# literal 0 HcmV?d00001 diff --git a/doc/build/html/_static/bootstrap-2.3.2/js/bootstrap.js b/doc/build/html/_static/bootstrap-2.3.2/js/bootstrap.js new file mode 100644 index 0000000..638bb18 --- /dev/null +++ b/doc/build/html/_static/bootstrap-2.3.2/js/bootstrap.js @@ -0,0 +1,2287 @@ +/* =================================================== + * bootstrap-transition.js v2.3.2 + * http://twitter.github.com/bootstrap/javascript.html#transitions + * =================================================== + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ========================================================== */ + + +!function ($) { + + "use strict"; // jshint ;_; + + + /* CSS TRANSITION SUPPORT (http://www.modernizr.com/) + * ======================================================= */ + + $(function () { + + $.support.transition = (function () { + + var transitionEnd = (function () { + + var el = document.createElement('bootstrap') + , transEndEventNames = { + 'WebkitTransition' : 'webkitTransitionEnd' + , 'MozTransition' : 'transitionend' + , 'OTransition' : 'oTransitionEnd otransitionend' + , 'transition' : 'transitionend' + } + , name + + for (name in transEndEventNames){ + if (el.style[name] !== undefined) { + return transEndEventNames[name] + } + } + + }()) + + return transitionEnd && { + end: transitionEnd + } + + })() + + }) + +}(window.$jqTheme || window.jQuery); +/* ========================================================== + * bootstrap-alert.js v2.3.2 + * http://twitter.github.com/bootstrap/javascript.html#alerts + * ========================================================== + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ========================================================== */ + + +!function ($) { + + "use strict"; // jshint ;_; + + + /* ALERT CLASS DEFINITION + * ====================== */ + + var dismiss = '[data-dismiss="alert"]' + , Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.prototype.close = function (e) { + var $this = $(this) + , selector = $this.attr('data-target') + , $parent + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 + } + + $parent = $(selector) + + e && e.preventDefault() + + $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent()) + + $parent.trigger(e = $.Event('close')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + $parent + .trigger('closed') + .remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent.on($.support.transition.end, removeElement) : + removeElement() + } + + + /* ALERT PLUGIN DEFINITION + * ======================= */ + + var old = $.fn.alert + + $.fn.alert = function (option) { + return this.each(function () { + var $this = $(this) + , data = $this.data('alert') + if (!data) $this.data('alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + $.fn.alert.Constructor = Alert + + + /* ALERT NO CONFLICT + * ================= */ + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + /* ALERT DATA-API + * ============== */ + + $(document).on('click.alert.data-api', dismiss, Alert.prototype.close) + +}(window.$jqTheme || window.jQuery); +/* ============================================================ + * bootstrap-button.js v2.3.2 + * http://twitter.github.com/bootstrap/javascript.html#buttons + * ============================================================ + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================ */ + + +!function ($) { + + "use strict"; // jshint ;_; + + + /* BUTTON PUBLIC CLASS DEFINITION + * ============================== */ + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, $.fn.button.defaults, options) + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + , $el = this.$element + , data = $el.data() + , val = $el.is('input') ? 'val' : 'html' + + state = state + 'Text' + data.resetText || $el.data('resetText', $el[val]()) + + $el[val](data[state] || this.options[state]) + + // push to event loop to allow forms to submit + setTimeout(function () { + state == 'loadingText' ? + $el.addClass(d).attr(d, d) : + $el.removeClass(d).removeAttr(d) + }, 0) + } + + Button.prototype.toggle = function () { + var $parent = this.$element.closest('[data-toggle="buttons-radio"]') + + $parent && $parent + .find('.active') + .removeClass('active') + + this.$element.toggleClass('active') + } + + + /* BUTTON PLUGIN DEFINITION + * ======================== */ + + var old = $.fn.button + + $.fn.button = function (option) { + return this.each(function () { + var $this = $(this) + , data = $this.data('button') + , options = typeof option == 'object' && option + if (!data) $this.data('button', (data = new Button(this, options))) + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + $.fn.button.defaults = { + loadingText: 'loading...' + } + + $.fn.button.Constructor = Button + + + /* BUTTON NO CONFLICT + * ================== */ + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + /* BUTTON DATA-API + * =============== */ + + $(document).on('click.button.data-api', '[data-toggle^=button]', function (e) { + var $btn = $(e.target) + if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') + $btn.button('toggle') + }) + +}(window.$jqTheme || window.jQuery); +/* ========================================================== + * bootstrap-carousel.js v2.3.2 + * http://twitter.github.com/bootstrap/javascript.html#carousel + * ========================================================== + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ========================================================== */ + + +!function ($) { + + "use strict"; // jshint ;_; + + + /* CAROUSEL CLASS DEFINITION + * ========================= */ + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.options.pause == 'hover' && this.$element + .on('mouseenter', $.proxy(this.pause, this)) + .on('mouseleave', $.proxy(this.cycle, this)) + } + + Carousel.prototype = { + + cycle: function (e) { + if (!e) this.paused = false + if (this.interval) clearInterval(this.interval); + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + return this + } + + , getActiveIndex: function () { + this.$active = this.$element.find('.item.active') + this.$items = this.$active.parent().children() + return this.$items.index(this.$active) + } + + , to: function (pos) { + var activeIndex = this.getActiveIndex() + , that = this + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) { + return this.$element.one('slid', function () { + that.to(pos) + }) + } + + if (activeIndex == pos) { + return this.pause().cycle() + } + + return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos])) + } + + , pause: function (e) { + if (!e) this.paused = true + if (this.$element.find('.next, .prev').length && $.support.transition.end) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + clearInterval(this.interval) + this.interval = null + return this + } + + , next: function () { + if (this.sliding) return + return this.slide('next') + } + + , prev: function () { + if (this.sliding) return + return this.slide('prev') + } + + , slide: function (type, next) { + var $active = this.$element.find('.item.active') + , $next = next || $active[type]() + , isCycling = this.interval + , direction = type == 'next' ? 'left' : 'right' + , fallback = type == 'next' ? 'first' : 'last' + , that = this + , e + + this.sliding = true + + isCycling && this.pause() + + $next = $next.length ? $next : this.$element.find('.item')[fallback]() + + e = $.Event('slide', { + relatedTarget: $next[0] + , direction: direction + }) + + if ($next.hasClass('active')) return + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + this.$element.one('slid', function () { + var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()]) + $nextIndicator && $nextIndicator.addClass('active') + }) + } + + if ($.support.transition && this.$element.hasClass('slide')) { + this.$element.trigger(e) + if (e.isDefaultPrevented()) return + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + this.$element.one($.support.transition.end, function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { that.$element.trigger('slid') }, 0) + }) + } else { + this.$element.trigger(e) + if (e.isDefaultPrevented()) return + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger('slid') + } + + isCycling && this.cycle() + + return this + } + + } + + + /* CAROUSEL PLUGIN DEFINITION + * ========================== */ + + var old = $.fn.carousel + + $.fn.carousel = function (option) { + return this.each(function () { + var $this = $(this) + , data = $this.data('carousel') + , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option) + , action = typeof option == 'string' ? option : options.slide + if (!data) $this.data('carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + $.fn.carousel.defaults = { + interval: 5000 + , pause: 'hover' + } + + $.fn.carousel.Constructor = Carousel + + + /* CAROUSEL NO CONFLICT + * ==================== */ + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + /* CAROUSEL DATA-API + * ================= */ + + $(document).on('click.carousel.data-api', '[data-slide], [data-slide-to]', function (e) { + var $this = $(this), href + , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 + , options = $.extend({}, $target.data(), $this.data()) + , slideIndex + + $target.carousel(options) + + if (slideIndex = $this.attr('data-slide-to')) { + $target.data('carousel').pause().to(slideIndex).cycle() + } + + e.preventDefault() + }) + +}(window.$jqTheme || window.jQuery); +/* ============================================================= + * bootstrap-collapse.js v2.3.2 + * http://twitter.github.com/bootstrap/javascript.html#collapse + * ============================================================= + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================ */ + + +!function ($) { + + "use strict"; // jshint ;_; + + + /* COLLAPSE PUBLIC CLASS DEFINITION + * ================================ */ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, $.fn.collapse.defaults, options) + + if (this.options.parent) { + this.$parent = $(this.options.parent) + } + + this.options.toggle && this.toggle() + } + + Collapse.prototype = { + + constructor: Collapse + + , dimension: function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + , show: function () { + var dimension + , scroll + , actives + , hasData + + if (this.transitioning || this.$element.hasClass('in')) return + + dimension = this.dimension() + scroll = $.camelCase(['scroll', dimension].join('-')) + actives = this.$parent && this.$parent.find('> .accordion-group > .in') + + if (actives && actives.length) { + hasData = actives.data('collapse') + if (hasData && hasData.transitioning) return + actives.collapse('hide') + hasData || actives.data('collapse', null) + } + + this.$element[dimension](0) + this.transition('addClass', $.Event('show'), 'shown') + $.support.transition && this.$element[dimension](this.$element[0][scroll]) + } + + , hide: function () { + var dimension + if (this.transitioning || !this.$element.hasClass('in')) return + dimension = this.dimension() + this.reset(this.$element[dimension]()) + this.transition('removeClass', $.Event('hide'), 'hidden') + this.$element[dimension](0) + } + + , reset: function (size) { + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + [dimension](size || 'auto') + [0].offsetWidth + + this.$element[size !== null ? 'addClass' : 'removeClass']('collapse') + + return this + } + + , transition: function (method, startEvent, completeEvent) { + var that = this + , complete = function () { + if (startEvent.type == 'show') that.reset() + that.transitioning = 0 + that.$element.trigger(completeEvent) + } + + this.$element.trigger(startEvent) + + if (startEvent.isDefaultPrevented()) return + + this.transitioning = 1 + + this.$element[method]('in') + + $.support.transition && this.$element.hasClass('collapse') ? + this.$element.one($.support.transition.end, complete) : + complete() + } + + , toggle: function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + } + + + /* COLLAPSE PLUGIN DEFINITION + * ========================== */ + + var old = $.fn.collapse + + $.fn.collapse = function (option) { + return this.each(function () { + var $this = $(this) + , data = $this.data('collapse') + , options = $.extend({}, $.fn.collapse.defaults, $this.data(), typeof option == 'object' && option) + if (!data) $this.data('collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + $.fn.collapse.defaults = { + toggle: true + } + + $.fn.collapse.Constructor = Collapse + + + /* COLLAPSE NO CONFLICT + * ==================== */ + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + /* COLLAPSE DATA-API + * ================= */ + + $(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) { + var $this = $(this), href + , target = $this.attr('data-target') + || e.preventDefault() + || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 + , option = $(target).data('collapse') ? 'toggle' : $this.data() + $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed') + $(target).collapse(option) + }) + +}(window.$jqTheme || window.jQuery); +/* ============================================================ + * bootstrap-dropdown.js v2.3.2 + * http://twitter.github.com/bootstrap/javascript.html#dropdowns + * ============================================================ + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============================================================ */ + + +!function ($) { + + "use strict"; // jshint ;_; + + + /* DROPDOWN CLASS DEFINITION + * ========================= */ + + var toggle = '[data-toggle=dropdown]' + , Dropdown = function (element) { + var $el = $(element).on('click.dropdown.data-api', this.toggle) + $('html').on('click.dropdown.data-api', function () { + $el.parent().removeClass('open') + }) + } + + Dropdown.prototype = { + + constructor: Dropdown + + , toggle: function (e) { + var $this = $(this) + , $parent + , isActive + + if ($this.is('.disabled, :disabled')) return + + $parent = getParent($this) + + isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement) { + // if mobile we we use a backdrop because click events don't delegate + $('