summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorVasudev Kamath <kamathvasudev@gmail.com>2012-12-13 22:38:45 +0530
committerVasudev Kamath <kamathvasudev@gmail.com>2012-12-13 22:38:45 +0530
commit658e20cded80a08d097b7833afbe3b20ee9aa39b (patch)
treeee1e275637edfbb359ad856d04ecbe807bd39db3 /doc
Imported Upstream version 2.8.3
Diffstat (limited to 'doc')
-rw-r--r--doc/bootstrap.css4221
-rw-r--r--doc/colors.css16
-rw-r--r--doc/template_language.rst729
3 files changed, 4966 insertions, 0 deletions
diff --git a/doc/bootstrap.css b/doc/bootstrap.css
new file mode 100644
index 0000000..d280a31
--- /dev/null
+++ b/doc/bootstrap.css
@@ -0,0 +1,4221 @@
+/*!
+ * Bootstrap v2.0.4
+ *
+ * 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.
+ */
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+nav,
+section {
+ display:block;
+ padding-top:40px;
+ }
+section:first-of-type {
+ padding-top:0;
+ }
+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 {
+ max-width:100%;
+ vertical-align:middle;
+ border:0;
+ -ms-interpolation-mode:bicubic;
+ }
+#map_canvas 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,
+input[type="button"],
+input[type="reset"],
+input[type="submit"] {
+ cursor:pointer;
+ -webkit-appearance:button;
+ }
+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;
+ }
+.clearfix {
+ *zoom:1;
+ }
+.clearfix:before,
+.clearfix:after {
+ display:table;
+ 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:28px;
+ -webkit-box-sizing:border-box;
+ -moz-box-sizing:border-box;
+ -ms-box-sizing:border-box;
+ box-sizing:border-box;
+ }
+body {
+ margin:0;
+ padding:20px;
+ font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size:13px;
+ line-height:18px;
+ color:#333333;
+ background-color:#ffffff;
+ }
+a {
+ color:#0088cc;
+ text-decoration:none;
+ }
+a:hover {
+ color:#005580;
+ text-decoration:underline;
+ }
+.row {
+ margin-left:-20px;
+ *zoom:1;
+ }
+.row:before,
+.row:after {
+ display:table;
+ content:"";
+ }
+.row:after {
+ clear:both;
+ }
+[class*="span"] {
+ float:left;
+ margin-left:20px;
+ }
+.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;
+ content:"";
+ }
+.row-fluid:after {
+ clear:both;
+ }
+.row-fluid [class*="span"] {
+ display:block;
+ float:left;
+ width:100%;
+ min-height:28px;
+ margin-left:2.127659574%;
+ *margin-left:2.0744680846382977%;
+ -webkit-box-sizing:border-box;
+ -moz-box-sizing:border-box;
+ -ms-box-sizing:border-box;
+ box-sizing:border-box;
+ }
+.row-fluid [class*="span"]:first-child {
+ margin-left:0;
+ }
+.row-fluid .span12 {
+ width:99.99999998999999%;
+ *width:99.94680850063828%;
+ }
+.row-fluid .span11 {
+ width:91.489361693%;
+ *width:91.4361702036383%;
+ }
+.row-fluid .span10 {
+ width:82.97872339599999%;
+ *width:82.92553190663828%;
+ }
+.row-fluid .span9 {
+ width:74.468085099%;
+ *width:74.4148936096383%;
+ }
+.row-fluid .span8 {
+ width:65.95744680199999%;
+ *width:65.90425531263828%;
+ }
+.row-fluid .span7 {
+ width:57.446808505%;
+ *width:57.3936170156383%;
+ }
+.row-fluid .span6 {
+ width:48.93617020799999%;
+ *width:48.88297871863829%;
+ }
+.row-fluid .span5 {
+ width:40.425531911%;
+ *width:40.3723404216383%;
+ }
+.row-fluid .span4 {
+ width:31.914893614%;
+ *width:31.8617021246383%;
+ }
+.row-fluid .span3 {
+ width:23.404255317%;
+ *width:23.3510638276383%;
+ }
+.row-fluid .span2 {
+ width:14.89361702%;
+ *width:14.8404255306383%;
+ }
+.row-fluid .span1 {
+ width:6.382978723%;
+ *width:6.329787233638298%;
+ }
+.container {
+ margin-right:auto;
+ margin-left:auto;
+ *zoom:1;
+ }
+.container:before,
+.container:after {
+ display:table;
+ content:"";
+ }
+.container:after {
+ clear:both;
+ }
+.container-fluid {
+ padding-right:20px;
+ padding-left:20px;
+ *zoom:1;
+ }
+.container-fluid:before,
+.container-fluid:after {
+ display:table;
+ content:"";
+ }
+.container-fluid:after {
+ clear:both;
+ }
+p {
+ margin:0 0 9px;
+ }
+p small {
+ font-size:11px;
+ color:#999999;
+ }
+.lead {
+ margin-bottom:18px;
+ font-size:20px;
+ font-weight:200;
+ line-height:27px;
+ }
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ margin:0;
+ font-family:inherit;
+ font-weight:bold;
+ color:inherit;
+ text-rendering:optimizelegibility;
+ }
+h1 small,
+h2 small,
+h3 small,
+h4 small,
+h5 small,
+h6 small {
+ font-weight:normal;
+ color:#999999;
+ }
+h1 {
+ font-size:30px;
+ line-height:36px;
+ }
+h1 small {
+ font-size:18px;
+ }
+h2 {
+ font-size:24px;
+ line-height:36px;
+ }
+h2 small {
+ font-size:18px;
+ }
+h3 {
+ font-size:18px;
+ line-height:27px;
+ }
+h3 small {
+ font-size:14px;
+ }
+h4,
+h5,
+h6 {
+ line-height:18px;
+ }
+h4 {
+ font-size:14px;
+ }
+h4 small {
+ font-size:12px;
+ }
+h5 {
+ font-size:12px;
+ }
+h6 {
+ font-size:11px;
+ color:#999999;
+ text-transform:uppercase;
+ }
+.page-header {
+ padding-bottom:17px;
+ margin:18px 0;
+ border-bottom:1px solid #eeeeee;
+ }
+.page-header h1 {
+ line-height:1;
+ }
+ul,
+ol {
+ padding:0;
+ margin:0 0 9px 25px;
+ }
+ul ul,
+ul ol,
+ol ol,
+ol ul {
+ margin-bottom:0;
+ }
+ul {
+ list-style:disc;
+ }
+ol {
+ list-style:decimal;
+ }
+li {
+ line-height:18px;
+ }
+ul.unstyled,
+ol.unstyled {
+ margin-left:0;
+ list-style:none;
+ }
+dl {
+ margin-bottom:18px;
+ }
+dt,
+dd {
+ line-height:18px;
+ }
+dt {
+ font-weight:bold;
+ line-height:17px;
+ }
+dd {
+ margin-left:9px;
+ }
+.dl-horizontal dt {
+ float:left;
+ width:120px;
+ overflow:hidden;
+ clear:left;
+ text-align:right;
+ text-overflow:ellipsis;
+ white-space:nowrap;
+ }
+.dl-horizontal dd {
+ margin-left:130px;
+ }
+hr {
+ margin:18px 0;
+ border:0;
+ border-top:1px solid #eeeeee;
+ border-bottom:1px solid #ffffff;
+ }
+strong {
+ font-weight:bold;
+ }
+em {
+ font-style:italic;
+ }
+.muted {
+ color:#999999;
+ }
+abbr[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 18px;
+ border-left:5px solid #eeeeee;
+ }
+blockquote p {
+ margin-bottom:0;
+ font-size:16px;
+ font-weight:300;
+ line-height:22.5px;
+ }
+blockquote small {
+ display:block;
+ line-height:18px;
+ 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;
+ }
+q:before,
+q:after,
+blockquote:before,
+blockquote:after {
+ content:"";
+ }
+address {
+ display:block;
+ margin-bottom:18px;
+ font-style:normal;
+ line-height:18px;
+ }
+small {
+ font-size:100%;
+ }
+cite {
+ font-style:normal;
+ }
+code,
+pre {
+ padding:0 3px 2px;
+ font-family:Menlo, Monaco, 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:#333;
+ background-color:#f7f7f9;
+ border:1px solid #e1e1e8;
+ }
+pre {
+ display:block;
+ padding:8.5px;
+ margin:0 0 9px;
+ font-size:12.025px;
+ line-height:18px;
+ 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:18px;
+ }
+pre code {
+ padding:0;
+ color:inherit;
+ background-color:transparent;
+ border:0;
+ }
+.pre-scrollable {
+ max-height:340px;
+ overflow-y:scroll;
+ }
+form {
+ margin:0 0 18px;
+ }
+fieldset {
+ padding:0;
+ margin:0;
+ border:0;
+ }
+legend {
+ display:block;
+ width:100%;
+ padding:0;
+ margin-bottom:27px;
+ font-size:19.5px;
+ line-height:36px;
+ color:#333333;
+ border:0;
+ border-bottom:1px solid #e5e5e5;
+ }
+legend small {
+ font-size:13.5px;
+ color:#999999;
+ }
+label,
+input,
+button,
+select,
+textarea {
+ font-size:13px;
+ font-weight:normal;
+ line-height:18px;
+ }
+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:18px;
+ padding:4px;
+ margin-bottom:9px;
+ font-size:13px;
+ line-height:18px;
+ color:#555555;
+ }
+input,
+textarea {
+ width:210px;
+ }
+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-border-radius:3px;
+ -moz-border-radius:3px;
+ border-radius:3px;
+ -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;
+ -ms-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:3px 0;
+ *margin-top:0;
+ /* IE7 */
+
+ line-height:normal;
+ cursor:pointer;
+ }
+input[type="submit"],
+input[type="reset"],
+input[type="button"],
+input[type="radio"],
+input[type="checkbox"] {
+ width:auto;
+ }
+.uneditable-textarea {
+ width:auto;
+ height:auto;
+ }
+select,
+input[type="file"] {
+ height:28px;
+ /* 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:28px;
+ }
+select {
+ width:220px;
+ border:1px solid #bbb;
+ }
+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;
+ }
+.radio,
+.checkbox {
+ min-height:18px;
+ padding-left:18px;
+ }
+.radio input[type="radio"],
+.checkbox input[type="checkbox"] {
+ float:left;
+ margin-left:-18px;
+ }
+.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-prepend [class*="span"],
+.row-fluid .input-append [class*="span"] {
+ display:inline-block;
+ }
+input,
+textarea,
+.uneditable-input {
+ margin-left:0;
+ }
+input.span12,
+textarea.span12,
+.uneditable-input.span12 {
+ width:930px;
+ }
+input.span11,
+textarea.span11,
+.uneditable-input.span11 {
+ width:850px;
+ }
+input.span10,
+textarea.span10,
+.uneditable-input.span10 {
+ width:770px;
+ }
+input.span9,
+textarea.span9,
+.uneditable-input.span9 {
+ width:690px;
+ }
+input.span8,
+textarea.span8,
+.uneditable-input.span8 {
+ width:610px;
+ }
+input.span7,
+textarea.span7,
+.uneditable-input.span7 {
+ width:530px;
+ }
+input.span6,
+textarea.span6,
+.uneditable-input.span6 {
+ width:450px;
+ }
+input.span5,
+textarea.span5,
+.uneditable-input.span5 {
+ width:370px;
+ }
+input.span4,
+textarea.span4,
+.uneditable-input.span4 {
+ width:290px;
+ }
+input.span3,
+textarea.span3,
+.uneditable-input.span3 {
+ width:210px;
+ }
+input.span2,
+textarea.span2,
+.uneditable-input.span2 {
+ width:130px;
+ }
+input.span1,
+textarea.span1,
+.uneditable-input.span1 {
+ width:50px;
+ }
+input[disabled],
+select[disabled],
+textarea[disabled],
+input[readonly],
+select[readonly],
+textarea[readonly] {
+ cursor:not-allowed;
+ background-color:#eeeeee;
+ border-color:#ddd;
+ }
+input[type="radio"][disabled],
+input[type="checkbox"][disabled],
+input[type="radio"][readonly],
+input[type="checkbox"][readonly] {
+ background-color:transparent;
+ }
+.control-group.warning > 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;
+ border-color:#c09853;
+ }
+.control-group.warning .checkbox:focus,
+.control-group.warning .radio:focus,
+.control-group.warning input:focus,
+.control-group.warning select:focus,
+.control-group.warning textarea:focus {
+ border-color:#a47e3c;
+ -webkit-box-shadow:0 0 6px #dbc59e;
+ -moz-box-shadow:0 0 6px #dbc59e;
+ box-shadow: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 > 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;
+ border-color:#b94a48;
+ }
+.control-group.error .checkbox:focus,
+.control-group.error .radio:focus,
+.control-group.error input:focus,
+.control-group.error select:focus,
+.control-group.error textarea:focus {
+ border-color:#953b39;
+ -webkit-box-shadow:0 0 6px #d59392;
+ -moz-box-shadow:0 0 6px #d59392;
+ box-shadow: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 > 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;
+ border-color:#468847;
+ }
+.control-group.success .checkbox:focus,
+.control-group.success .radio:focus,
+.control-group.success input:focus,
+.control-group.success select:focus,
+.control-group.success textarea:focus {
+ border-color:#356635;
+ -webkit-box-shadow:0 0 6px #7aba7b;
+ -moz-box-shadow:0 0 6px #7aba7b;
+ box-shadow: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;
+ }
+input:focus:required:invalid,
+textarea:focus:required:invalid,
+select:focus:required:invalid {
+ color:#b94a48;
+ border-color:#ee5f5b;
+ }
+input:focus:required:invalid:focus,
+textarea:focus:required:invalid:focus,
+select:focus:required: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:17px 20px 18px;
+ margin-top:18px;
+ margin-bottom:18px;
+ background-color:#f5f5f5;
+ border-top:1px solid #e5e5e5;
+ *zoom:1;
+ }
+.form-actions:before,
+.form-actions:after {
+ display:table;
+ content:"";
+ }
+.form-actions:after {
+ clear:both;
+ }
+.uneditable-input {
+ overflow:hidden;
+ white-space:nowrap;
+ cursor:not-allowed;
+ background-color:#ffffff;
+ border-color:#eee;
+ -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);
+ }
+:-moz-placeholder {
+ color:#999999;
+ }
+:-ms-input-placeholder {
+ color:#999999;
+ }
+::-webkit-input-placeholder {
+ color:#999999;
+ }
+.help-block,
+.help-inline {
+ color:#555555;
+ }
+.help-block {
+ display:block;
+ margin-bottom:9px;
+ }
+.help-inline {
+ display:inline-block;
+ *display:inline;
+ padding-left:5px;
+ vertical-align:middle;
+ *zoom:1;
+ }
+.input-prepend,
+.input-append {
+ margin-bottom:5px;
+ }
+.input-prepend input,
+.input-append input,
+.input-prepend select,
+.input-append select,
+.input-prepend .uneditable-input,
+.input-append .uneditable-input {
+ position:relative;
+ margin-bottom:0;
+ *margin-left:0;
+ vertical-align:middle;
+ -webkit-border-radius:0 3px 3px 0;
+ -moz-border-radius:0 3px 3px 0;
+ border-radius:0 3px 3px 0;
+ }
+.input-prepend input:focus,
+.input-append input:focus,
+.input-prepend select:focus,
+.input-append select:focus,
+.input-prepend .uneditable-input:focus,
+.input-append .uneditable-input:focus {
+ z-index:2;
+ }
+.input-prepend .uneditable-input,
+.input-append .uneditable-input {
+ border-left-color:#ccc;
+ }
+.input-prepend .add-on,
+.input-append .add-on {
+ display:inline-block;
+ width:auto;
+ height:18px;
+ min-width:16px;
+ padding:4px 5px;
+ font-weight:normal;
+ line-height:18px;
+ text-align:center;
+ text-shadow:0 1px 0 #ffffff;
+ vertical-align:middle;
+ background-color:#eeeeee;
+ border:1px solid #ccc;
+ }
+.input-prepend .add-on,
+.input-append .add-on,
+.input-prepend .btn,
+.input-append .btn {
+ margin-left:-1px;
+ -webkit-border-radius:0;
+ -moz-border-radius:0;
+ border-radius:0;
+ }
+.input-prepend .active,
+.input-append .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:3px 0 0 3px;
+ -moz-border-radius:3px 0 0 3px;
+ border-radius:3px 0 0 3px;
+ }
+.input-append input,
+.input-append select,
+.input-append .uneditable-input {
+ -webkit-border-radius:3px 0 0 3px;
+ -moz-border-radius:3px 0 0 3px;
+ border-radius:3px 0 0 3px;
+ }
+.input-append .uneditable-input {
+ border-right-color:#ccc;
+ border-left-color:#eee;
+ }
+.input-append .add-on:last-child,
+.input-append .btn:last-child {
+ -webkit-border-radius:0 3px 3px 0;
+ -moz-border-radius:0 3px 3px 0;
+ border-radius:0 3px 3px 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 .add-on:first-child,
+.input-prepend.input-append .btn:first-child {
+ margin-right:-1px;
+ -webkit-border-radius:3px 0 0 3px;
+ -moz-border-radius:3px 0 0 3px;
+ border-radius:3px 0 0 3px;
+ }
+.input-prepend.input-append .add-on:last-child,
+.input-prepend.input-append .btn:last-child {
+ margin-left:-1px;
+ -webkit-border-radius:0 3px 3px 0;
+ -moz-border-radius:0 3px 3px 0;
+ border-radius:0 3px 3px 0;
+ }
+.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:14px;
+ -moz-border-radius:14px;
+ border-radius: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;
+ *zoom:1;
+ }
+.form-search .hide,
+.form-inline .hide,
+.form-horizontal .hide {
+ display:none;
+ }
+.form-search label,
+.form-inline label {
+ 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:9px;
+ }
+legend + .control-group {
+ margin-top:18px;
+ -webkit-margin-top-collapse:separate;
+ }
+.form-horizontal .control-group {
+ margin-bottom:18px;
+ *zoom:1;
+ }
+.form-horizontal .control-group:before,
+.form-horizontal .control-group:after {
+ display:table;
+ content:"";
+ }
+.form-horizontal .control-group:after {
+ clear:both;
+ }
+.form-horizontal .control-label {
+ float:left;
+ width:140px;
+ padding-top:5px;
+ text-align:right;
+ }
+.form-horizontal .controls {
+ *display:inline-block;
+ *padding-left:20px;
+ margin-left:160px;
+ *margin-left:0;
+ }
+.form-horizontal .controls:first-child {
+ *padding-left:160px;
+ }
+.form-horizontal .help-block {
+ margin-top:9px;
+ margin-bottom:0;
+ }
+.form-horizontal .form-actions {
+ padding-left:160px;
+ }
+table {
+ max-width:100%;
+ background-color:transparent;
+ border-collapse:collapse;
+ border-spacing:0;
+ }
+.table {
+ width:100%;
+ margin-bottom:18px;
+ }
+.table th,
+.table td {
+ padding:8px;
+ line-height:18px;
+ 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-condensed th,
+.table-condensed td {
+ padding:4px 5px;
+ }
+.table-bordered {
+ border:1px solid #dddddd;
+ border-collapse:separate;
+ *border-collapse:collapsed;
+ 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 {
+ -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 {
+ -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 {
+ -webkit-border-radius:0 0 0 4px;
+ -moz-border-radius:0 0 0 4px;
+ border-radius:0 0 0 4px;
+ -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 {
+ -webkit-border-bottom-right-radius:4px;
+ border-bottom-right-radius:4px;
+ -moz-border-radius-bottomright:4px;
+ }
+.table-striped tbody tr:nth-child(odd) td,
+.table-striped tbody tr:nth-child(odd) th {
+ background-color:#f9f9f9;
+ }
+.table tbody tr:hover td,
+.table tbody tr:hover th {
+ background-color:#f5f5f5;
+ }
+table .span1 {
+ float:none;
+ width:44px;
+ margin-left:0;
+ }
+table .span2 {
+ float:none;
+ width:124px;
+ margin-left:0;
+ }
+table .span3 {
+ float:none;
+ width:204px;
+ margin-left:0;
+ }
+table .span4 {
+ float:none;
+ width:284px;
+ margin-left:0;
+ }
+table .span5 {
+ float:none;
+ width:364px;
+ margin-left:0;
+ }
+table .span6 {
+ float:none;
+ width:444px;
+ margin-left:0;
+ }
+table .span7 {
+ float:none;
+ width:524px;
+ margin-left:0;
+ }
+table .span8 {
+ float:none;
+ width:604px;
+ margin-left:0;
+ }
+table .span9 {
+ float:none;
+ width:684px;
+ margin-left:0;
+ }
+table .span10 {
+ float:none;
+ width:764px;
+ margin-left:0;
+ }
+table .span11 {
+ float:none;
+ width:844px;
+ margin-left:0;
+ }
+table .span12 {
+ float:none;
+ width:924px;
+ margin-left:0;
+ }
+table .span13 {
+ float:none;
+ width:1004px;
+ margin-left:0;
+ }
+table .span14 {
+ float:none;
+ width:1084px;
+ margin-left:0;
+ }
+table .span15 {
+ float:none;
+ width:1164px;
+ margin-left:0;
+ }
+table .span16 {
+ float:none;
+ width:1244px;
+ margin-left:0;
+ }
+table .span17 {
+ float:none;
+ width:1324px;
+ margin-left:0;
+ }
+table .span18 {
+ float:none;
+ width:1404px;
+ margin-left:0;
+ }
+table .span19 {
+ float:none;
+ width:1484px;
+ margin-left:0;
+ }
+table .span20 {
+ float:none;
+ width:1564px;
+ margin-left:0;
+ }
+table .span21 {
+ float:none;
+ width:1644px;
+ margin-left:0;
+ }
+table .span22 {
+ float:none;
+ width:1724px;
+ margin-left:0;
+ }
+table .span23 {
+ float:none;
+ width:1804px;
+ margin-left:0;
+ }
+table .span24 {
+ float:none;
+ width:1884px;
+ margin-left:0;
+ }
+[class^="icon-"],
+[class*=" icon-"] {
+ display:inline-block;
+ width:14px;
+ height:14px;
+ *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;
+ }
+[class^="icon-"]:last-child,
+[class*=" icon-"]:last-child {
+ *margin-left:0;
+ }
+.icon-white {
+ 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 {
+ 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 {
+ background-position:-384px -120px;
+ }
+.icon-folder-open {
+ 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:"";
+ opacity:0.3;
+ filter:alpha(opacity=30);
+ }
+.dropdown .caret {
+ margin-top:8px;
+ margin-left:2px;
+ }
+.dropdown:hover .caret,
+.open .caret {
+ opacity:1;
+ filter:alpha(opacity=100);
+ }
+.dropdown-menu {
+ position:absolute;
+ top:100%;
+ left:0;
+ z-index:1000;
+ display:none;
+ float:left;
+ min-width:160px;
+ padding:4px 0;
+ margin:1px 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:5px;
+ -moz-border-radius:5px;
+ border-radius:5px;
+ -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:8px 1px;
+ *margin:-5px 0 5px;
+ overflow:hidden;
+ background-color:#e5e5e5;
+ border-bottom:1px solid #ffffff;
+ }
+.dropdown-menu a {
+ display:block;
+ padding:3px 15px;
+ clear:both;
+ font-weight:normal;
+ line-height:18px;
+ color:#333333;
+ white-space:nowrap;
+ }
+.dropdown-menu li > a:hover,
+.dropdown-menu .active > a,
+.dropdown-menu .active > a:hover {
+ color:#ffffff;
+ text-decoration:none;
+ background-color:#0088cc;
+ }
+.open {
+ *z-index:1000;
+ }
+.open > .dropdown-menu {
+ display:block;
+ }
+.pull-right > .dropdown-menu {
+ right:0;
+ left:auto;
+ }
+.dropup .caret,
+.navbar-fixed-bottom .dropdown .caret {
+ border-top:0;
+ border-bottom:4px solid #000000;
+ content:"\2191";
+ }
+.dropup .dropdown-menu,
+.navbar-fixed-bottom .dropdown .dropdown-menu {
+ top:auto;
+ bottom:100%;
+ margin-bottom:1px;
+ }
+.typeahead {
+ 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 #eee;
+ border:1px solid rgba(0, 0, 0, 0.05);
+ -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;
+ -ms-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;
+ -ms-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:18px;
+ color:#000000;
+ text-shadow:0 1px 0 #ffffff;
+ opacity:0.2;
+ filter:alpha(opacity=20);
+ }
+.close:hover {
+ 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 10px 4px;
+ margin-bottom:0;
+ *margin-left:.3em;
+ font-size:13px;
+ line-height:18px;
+ *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:-ms-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(top, #ffffff, #e6e6e6);
+ background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);
+ background-repeat:repeat-x;
+ border:1px solid #cccccc;
+ *border:0;
+ border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ border-color:#e6e6e6 #e6e6e6 #bfbfbf;
+ border-bottom-color:#b3b3b3;
+ -webkit-border-radius:4px;
+ -moz-border-radius:4px;
+ border-radius:4px;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', 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:active,
+.btn.active,
+.btn.disabled,
+.btn[disabled] {
+ background-color:#e6e6e6;
+ *background-color:#d9d9d9;
+ }
+.btn:active,
+.btn.active {
+ background-color:#cccccc \9;
+ }
+.btn:first-child {
+ *margin-left:0;
+ }
+.btn:hover {
+ color:#333333;
+ text-decoration:none;
+ background-color:#e6e6e6;
+ *background-color:#d9d9d9;
+ /* Buttons in IE7 don't get borders, so darken on hover */
+
+ background-position:0 -15px;
+ -webkit-transition:background-position 0.1s linear;
+ -moz-transition:background-position 0.1s linear;
+ -ms-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-color:#e6e6e6;
+ background-color:#d9d9d9 \9;
+ 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-color:#e6e6e6;
+ background-image:none;
+ opacity:0.65;
+ filter:alpha(opacity=65);
+ -webkit-box-shadow:none;
+ -moz-box-shadow:none;
+ box-shadow:none;
+ }
+.btn-large {
+ padding:9px 14px;
+ font-size:15px;
+ line-height:normal;
+ -webkit-border-radius:5px;
+ -moz-border-radius:5px;
+ border-radius:5px;
+ }
+.btn-large [class^="icon-"] {
+ margin-top:1px;
+ }
+.btn-small {
+ padding:5px 9px;
+ font-size:11px;
+ line-height:16px;
+ }
+.btn-small [class^="icon-"] {
+ margin-top:-1px;
+ }
+.btn-mini {
+ padding:2px 6px;
+ font-size:11px;
+ line-height:14px;
+ }
+.btn-primary,
+.btn-primary:hover,
+.btn-warning,
+.btn-warning:hover,
+.btn-danger,
+.btn-danger:hover,
+.btn-success,
+.btn-success:hover,
+.btn-info,
+.btn-info:hover,
+.btn-inverse,
+.btn-inverse:hover {
+ color:#ffffff;
+ text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
+ }
+.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 {
+ border-color:#ccc;
+ border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+ }
+.btn-primary {
+ background-color:#0074cc;
+ *background-color:#0055cc;
+ background-image:-ms-linear-gradient(top, #0088cc, #0055cc);
+ background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0055cc));
+ background-image:-webkit-linear-gradient(top, #0088cc, #0055cc);
+ background-image:-o-linear-gradient(top, #0088cc, #0055cc);
+ background-image:-moz-linear-gradient(top, #0088cc, #0055cc);
+ background-image:linear-gradient(top, #0088cc, #0055cc);
+ background-repeat:repeat-x;
+ border-color:#0055cc #0055cc #003580;
+ 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='#0088cc', endColorstr='#0055cc', GradientType=0);
+ filter:progid:dximagetransform.microsoft.gradient(enabled=false);
+ }
+.btn-primary:hover,
+.btn-primary:active,
+.btn-primary.active,
+.btn-primary.disabled,
+.btn-primary[disabled] {
+ background-color:#0055cc;
+ *background-color:#004ab3;
+ }
+.btn-primary:active,
+.btn-primary.active {
+ background-color:#004099 \9;
+ }
+.btn-warning {
+ background-color:#faa732;
+ *background-color:#f89406;
+ background-image:-ms-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:-moz-linear-gradient(top, #fbb450, #f89406);
+ background-image:linear-gradient(top, #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='#fbb450', endColorstr='#f89406', GradientType=0);
+ filter:progid:dximagetransform.microsoft.gradient(enabled=false);
+ }
+.btn-warning:hover,
+.btn-warning:active,
+.btn-warning.active,
+.btn-warning.disabled,
+.btn-warning[disabled] {
+ background-color:#f89406;
+ *background-color:#df8505;
+ }
+.btn-warning:active,
+.btn-warning.active {
+ background-color:#c67605 \9;
+ }
+.btn-danger {
+ background-color:#da4f49;
+ *background-color:#bd362f;
+ background-image:-ms-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:-moz-linear-gradient(top, #ee5f5b, #bd362f);
+ background-image:linear-gradient(top, #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='#ee5f5b', endColorstr='#bd362f', GradientType=0);
+ filter:progid:dximagetransform.microsoft.gradient(enabled=false);
+ }
+.btn-danger:hover,
+.btn-danger:active,
+.btn-danger.active,
+.btn-danger.disabled,
+.btn-danger[disabled] {
+ background-color:#bd362f;
+ *background-color:#a9302a;
+ }
+.btn-danger:active,
+.btn-danger.active {
+ background-color:#942a25 \9;
+ }
+.btn-success {
+ background-color:#5bb75b;
+ *background-color:#51a351;
+ background-image:-ms-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:-moz-linear-gradient(top, #62c462, #51a351);
+ background-image:linear-gradient(top, #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='#62c462', endColorstr='#51a351', GradientType=0);
+ filter:progid:dximagetransform.microsoft.gradient(enabled=false);
+ }
+.btn-success:hover,
+.btn-success:active,
+.btn-success.active,
+.btn-success.disabled,
+.btn-success[disabled] {
+ background-color:#51a351;
+ *background-color:#499249;
+ }
+.btn-success:active,
+.btn-success.active {
+ background-color:#408140 \9;
+ }
+.btn-info {
+ background-color:#49afcd;
+ *background-color:#2f96b4;
+ background-image:-ms-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:-moz-linear-gradient(top, #5bc0de, #2f96b4);
+ background-image:linear-gradient(top, #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='#5bc0de', endColorstr='#2f96b4', GradientType=0);
+ filter:progid:dximagetransform.microsoft.gradient(enabled=false);
+ }
+.btn-info:hover,
+.btn-info:active,
+.btn-info.active,
+.btn-info.disabled,
+.btn-info[disabled] {
+ background-color:#2f96b4;
+ *background-color:#2a85a0;
+ }
+.btn-info:active,
+.btn-info.active {
+ background-color:#24748c \9;
+ }
+.btn-inverse {
+ background-color:#414141;
+ *background-color:#222222;
+ background-image:-ms-linear-gradient(top, #555555, #222222);
+ background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#555555), to(#222222));
+ background-image:-webkit-linear-gradient(top, #555555, #222222);
+ background-image:-o-linear-gradient(top, #555555, #222222);
+ background-image:-moz-linear-gradient(top, #555555, #222222);
+ background-image:linear-gradient(top, #555555, #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='#555555', endColorstr='#222222', GradientType=0);
+ filter:progid:dximagetransform.microsoft.gradient(enabled=false);
+ }
+.btn-inverse:hover,
+.btn-inverse:active,
+.btn-inverse.active,
+.btn-inverse.disabled,
+.btn-inverse[disabled] {
+ background-color:#222222;
+ *background-color:#151515;
+ }
+.btn-inverse:active,
+.btn-inverse.active {
+ background-color:#080808 \9;
+ }
+button.btn,
+input[type="submit"].btn {
+ *padding-top:2px;
+ *padding-bottom:2px;
+ }
+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-group {
+ position:relative;
+ *margin-left:.3em;
+ *zoom:1;
+ }
+.btn-group:before,
+.btn-group:after {
+ display:table;
+ content:"";
+ }
+.btn-group:after {
+ clear:both;
+ }
+.btn-group:first-child {
+ *margin-left:0;
+ }
+.btn-group + .btn-group {
+ margin-left:5px;
+ }
+.btn-toolbar {
+ margin-top:9px;
+ margin-bottom:9px;
+ }
+.btn-toolbar .btn-group {
+ display:inline-block;
+ *display:inline;
+ /* IE7 inline-block hack */
+
+ *zoom:1;
+ }
+.btn-group > .btn {
+ position:relative;
+ float:left;
+ margin-left:-1px;
+ -webkit-border-radius:0;
+ -moz-border-radius:0;
+ border-radius:0;
+ }
+.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 > .dropdown-toggle {
+ *padding-top:4px;
+ padding-right:8px;
+ *padding-bottom:4px;
+ 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-right:5px;
+ padding-left:5px;
+ }
+.btn-group > .btn-small.dropdown-toggle {
+ *padding-top:4px;
+ *padding-bottom:4px;
+ }
+.btn-group > .btn-large.dropdown-toggle {
+ padding-right:12px;
+ 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:#0055cc;
+ }
+.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:7px;
+ margin-left:0;
+ }
+.btn:hover .caret,
+.open.btn-group .caret {
+ opacity:1;
+ filter:alpha(opacity=100);
+ }
+.btn-mini .caret {
+ margin-top:5px;
+ }
+.btn-small .caret {
+ margin-top:6px;
+ }
+.btn-large .caret {
+ margin-top:6px;
+ border-top-width:5px;
+ border-right-width:5px;
+ border-left-width:5px;
+ }
+.dropup .btn-large .caret {
+ border-top:0;
+ border-bottom:5px solid #000000;
+ }
+.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;
+ opacity:0.75;
+ filter:alpha(opacity=75);
+ }
+.alert {
+ padding:8px 35px 8px 14px;
+ margin-bottom:18px;
+ color:#c09853;
+ 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-heading {
+ color:inherit;
+ }
+.alert .close {
+ position:relative;
+ top:-2px;
+ right:-21px;
+ line-height:18px;
+ }
+.alert-success {
+ color:#468847;
+ background-color:#dff0d8;
+ border-color:#d6e9c6;
+ }
+.alert-danger,
+.alert-error {
+ color:#b94a48;
+ background-color:#f2dede;
+ border-color:#eed3d7;
+ }
+.alert-info {
+ color:#3a87ad;
+ background-color:#d9edf7;
+ border-color:#bce8f1;
+ }
+.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:18px;
+ margin-left:0;
+ list-style:none;
+ }
+.nav > li > a {
+ display:block;
+ }
+.nav > li > a:hover {
+ text-decoration:none;
+ background-color:#eeeeee;
+ }
+.nav > .pull-right {
+ float:right;
+ }
+.nav .nav-header {
+ display:block;
+ padding:3px 15px;
+ font-size:11px;
+ font-weight:bold;
+ line-height:18px;
+ 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 {
+ color:#ffffff;
+ text-shadow:0 -1px 0 rgba(0, 0, 0, 0.2);
+ background-color:#0088cc;
+ }
+.nav-list [class^="icon-"] {
+ margin-right:2px;
+ }
+.nav-list .divider {
+ *width:100%;
+ height:1px;
+ margin:8px 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;
+ 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:18px;
+ 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 {
+ border-color:#eeeeee #eeeeee #dddddd;
+ }
+.nav-tabs > .active > a,
+.nav-tabs > .active > a:hover {
+ 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 {
+ 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-radius:4px 4px 0 0;
+ -moz-border-radius:4px 4px 0 0;
+ border-radius:4px 4px 0 0;
+ }
+.nav-tabs.nav-stacked > li:last-child > a {
+ -webkit-border-radius:0 0 4px 4px;
+ -moz-border-radius:0 0 4px 4px;
+ border-radius:0 0 4px 4px;
+ }
+.nav-tabs.nav-stacked > li > a:hover {
+ 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 5px 5px;
+ -moz-border-radius:0 0 5px 5px;
+ border-radius:0 0 5px 5px;
+ }
+.nav-pills .dropdown-menu {
+ -webkit-border-radius:4px;
+ -moz-border-radius:4px;
+ border-radius:4px;
+ }
+.nav-tabs .dropdown-toggle .caret,
+.nav-pills .dropdown-toggle .caret {
+ margin-top:6px;
+ border-top-color:#0088cc;
+ border-bottom-color:#0088cc;
+ }
+.nav-tabs .dropdown-toggle:hover .caret,
+.nav-pills .dropdown-toggle:hover .caret {
+ border-top-color:#005580;
+ border-bottom-color:#005580;
+ }
+.nav-tabs .active .dropdown-toggle .caret,
+.nav-pills .active .dropdown-toggle .caret {
+ border-top-color:#333333;
+ border-bottom-color:#333333;
+ }
+.nav > .dropdown.active > a:hover {
+ color:#000000;
+ cursor:pointer;
+ }
+.nav-tabs .open .dropdown-toggle,
+.nav-pills .open .dropdown-toggle,
+.nav > li.dropdown.open.active > a:hover {
+ 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 {
+ border-top-color:#ffffff;
+ border-bottom-color:#ffffff;
+ opacity:1;
+ filter:alpha(opacity=100);
+ }
+.tabs-stacked .open > a:hover {
+ border-color:#999999;
+ }
+.tabbable {
+ *zoom:1;
+ }
+.tabbable:before,
+.tabbable:after {
+ display:table;
+ 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 {
+ border-top-color:#ddd;
+ border-bottom-color:transparent;
+ }
+.tabs-below > .nav-tabs > .active > a,
+.tabs-below > .nav-tabs > .active > a:hover {
+ 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 {
+ border-color:#eeeeee #dddddd #eeeeee #eeeeee;
+ }
+.tabs-left > .nav-tabs .active > a,
+.tabs-left > .nav-tabs .active > a:hover {
+ 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 {
+ border-color:#eeeeee #eeeeee #eeeeee #dddddd;
+ }
+.tabs-right > .nav-tabs .active > a,
+.tabs-right > .nav-tabs .active > a:hover {
+ border-color:#ddd #ddd #ddd transparent;
+ *border-left-color:#ffffff;
+ }
+.navbar {
+ *position:relative;
+ *z-index:2;
+ margin-bottom:18px;
+ overflow:visible;
+ }
+.navbar-inner {
+ min-height:40px;
+ padding-right:20px;
+ padding-left:20px;
+ background-color:#2c2c2c;
+ background-image:-moz-linear-gradient(top, #333333, #222222);
+ background-image:-ms-linear-gradient(top, #333333, #222222);
+ background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
+ background-image:-webkit-linear-gradient(top, #333333, #222222);
+ background-image:-o-linear-gradient(top, #333333, #222222);
+ background-image:linear-gradient(top, #333333, #222222);
+ background-repeat:repeat-x;
+ -webkit-border-radius:4px;
+ -moz-border-radius:4px;
+ border-radius:4px;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#333333', endColorstr='#222222', GradientType=0);
+ -webkit-box-shadow:0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+ -moz-box-shadow:0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+ box-shadow:0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
+ }
+.navbar .container {
+ width:auto;
+ }
+.nav-collapse.collapse {
+ height:auto;
+ }
+.navbar {
+ color:#999999;
+ }
+.navbar .brand:hover {
+ text-decoration:none;
+ }
+.navbar .brand {
+ display:block;
+ float:left;
+ padding:8px 20px 12px;
+ margin-left:-20px;
+ font-size:20px;
+ font-weight:200;
+ line-height:1;
+ color:#999999;
+ }
+.navbar .navbar-text {
+ margin-bottom:0;
+ line-height:40px;
+ }
+.navbar .navbar-link {
+ color:#999999;
+ }
+.navbar .navbar-link:hover {
+ color:#ffffff;
+ }
+.navbar .btn,
+.navbar .btn-group {
+ margin-top:5px;
+ }
+.navbar .btn-group .btn {
+ margin:0;
+ }
+.navbar-form {
+ margin-bottom:0;
+ *zoom:1;
+ }
+.navbar-form:before,
+.navbar-form:after {
+ display:table;
+ 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 {
+ 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:6px;
+ white-space:nowrap;
+ }
+.navbar-form .input-append input,
+.navbar-form .input-prepend input {
+ margin-top:0;
+ }
+.navbar-search {
+ position:relative;
+ float:left;
+ margin-top:6px;
+ margin-bottom:0;
+ }
+.navbar-search .search-query {
+ padding:4px 9px;
+ font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size:13px;
+ font-weight:normal;
+ line-height:1;
+ color:#ffffff;
+ background-color:#626262;
+ border:1px solid #151515;
+ -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;
+ -ms-transition:none;
+ -o-transition:none;
+ transition:none;
+ }
+.navbar-search .search-query:-moz-placeholder {
+ color:#cccccc;
+ }
+.navbar-search .search-query:-ms-input-placeholder {
+ color:#cccccc;
+ }
+.navbar-search .search-query::-webkit-input-placeholder {
+ color:#cccccc;
+ }
+.navbar-search .search-query:focus,
+.navbar-search .search-query.focused {
+ padding:5px 10px;
+ 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-fixed-top,
+.navbar-fixed-bottom {
+ position:fixed;
+ right:0;
+ left:0;
+ z-index:1030;
+ margin-bottom: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-fixed-top .container,
+.navbar-fixed-bottom .container {
+ width:940px;
+ }
+.navbar-fixed-top {
+ top:0;
+ }
+.navbar-fixed-bottom {
+ bottom:0;
+ }
+.navbar .nav {
+ position:relative;
+ left:0;
+ display:block;
+ float:left;
+ margin:0 10px 0 0;
+ }
+.navbar .nav.pull-right {
+ float:right;
+ }
+.navbar .nav > li {
+ display:block;
+ float:left;
+ }
+.navbar .nav > li > a {
+ float:none;
+ padding:9px 10px 11px;
+ line-height:19px;
+ color:#999999;
+ text-decoration:none;
+ text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
+ }
+.navbar .btn {
+ display:inline-block;
+ padding:4px 10px 4px;
+ margin:5px 5px 6px;
+ line-height:18px;
+ }
+.navbar .btn-group {
+ padding:5px 5px 6px;
+ margin:0;
+ }
+.navbar .nav > li > a:hover {
+ color:#ffffff;
+ text-decoration:none;
+ background-color:transparent;
+ }
+.navbar .nav .active > a,
+.navbar .nav .active > a:hover {
+ color:#ffffff;
+ text-decoration:none;
+ background-color:#222222;
+ }
+.navbar .divider-vertical {
+ width:1px;
+ height:40px;
+ margin:0 9px;
+ overflow:hidden;
+ background-color:#222222;
+ border-right:1px solid #333333;
+ }
+.navbar .nav.pull-right {
+ margin-right:0;
+ margin-left:10px;
+ }
+.navbar .btn-navbar {
+ display:none;
+ float:right;
+ padding:7px 10px;
+ margin-right:5px;
+ margin-left:5px;
+ background-color:#2c2c2c;
+ *background-color:#222222;
+ background-image:-ms-linear-gradient(top, #333333, #222222);
+ background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#222222));
+ background-image:-webkit-linear-gradient(top, #333333, #222222);
+ background-image:-o-linear-gradient(top, #333333, #222222);
+ background-image:linear-gradient(top, #333333, #222222);
+ background-image:-moz-linear-gradient(top, #333333, #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='#333333', endColorstr='#222222', 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:active,
+.navbar .btn-navbar.active,
+.navbar .btn-navbar.disabled,
+.navbar .btn-navbar[disabled] {
+ background-color:#222222;
+ *background-color:#151515;
+ }
+.navbar .btn-navbar:active,
+.navbar .btn-navbar.active {
+ background-color:#080808 \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 .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 .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 .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 .dropdown-menu:after {
+ top:auto;
+ bottom:-6px;
+ border-top:6px solid #ffffff;
+ border-bottom:0;
+ }
+.navbar .nav li.dropdown .dropdown-toggle .caret,
+.navbar .nav li.dropdown.open .caret {
+ border-top-color:#ffffff;
+ border-bottom-color:#ffffff;
+ }
+.navbar .nav li.dropdown.active .caret {
+ opacity:1;
+ filter:alpha(opacity=100);
+ }
+.navbar .nav li.dropdown.open > .dropdown-toggle,
+.navbar .nav li.dropdown.active > .dropdown-toggle,
+.navbar .nav li.dropdown.open.active > .dropdown-toggle {
+ background-color:transparent;
+ }
+.navbar .nav li.dropdown.active > .dropdown-toggle:hover {
+ color:#ffffff;
+ }
+.navbar .pull-right .dropdown-menu,
+.navbar .dropdown-menu.pull-right {
+ right:0;
+ left:auto;
+ }
+.navbar .pull-right .dropdown-menu:before,
+.navbar .dropdown-menu.pull-right:before {
+ right:12px;
+ left:auto;
+ }
+.navbar .pull-right .dropdown-menu:after,
+.navbar .dropdown-menu.pull-right:after {
+ right:13px;
+ left:auto;
+ }
+.breadcrumb {
+ padding:7px 14px;
+ margin:0 0 18px;
+ list-style:none;
+ background-color:#fbfbfb;
+ background-image:-moz-linear-gradient(top, #ffffff, #f5f5f5);
+ background-image:-ms-linear-gradient(top, #ffffff, #f5f5f5);
+ background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f5f5f5));
+ background-image:-webkit-linear-gradient(top, #ffffff, #f5f5f5);
+ background-image:-o-linear-gradient(top, #ffffff, #f5f5f5);
+ background-image:linear-gradient(top, #ffffff, #f5f5f5);
+ background-repeat:repeat-x;
+ border:1px solid #ddd;
+ -webkit-border-radius:3px;
+ -moz-border-radius:3px;
+ border-radius:3px;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#f5f5f5', GradientType=0);
+ -webkit-box-shadow:inset 0 1px 0 #ffffff;
+ -moz-box-shadow:inset 0 1px 0 #ffffff;
+ box-shadow:inset 0 1px 0 #ffffff;
+ }
+.breadcrumb li {
+ display:inline-block;
+ *display:inline;
+ text-shadow:0 1px 0 #ffffff;
+ *zoom:1;
+ }
+.breadcrumb .divider {
+ padding:0 5px;
+ color:#999999;
+ }
+.breadcrumb .active a {
+ color:#333333;
+ }
+.pagination {
+ height:36px;
+ margin:18px 0;
+ }
+.pagination ul {
+ display:inline-block;
+ *display:inline;
+ margin-bottom:0;
+ margin-left:0;
+ -webkit-border-radius:3px;
+ -moz-border-radius:3px;
+ border-radius:3px;
+ *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 li {
+ display:inline;
+ }
+.pagination a {
+ float:left;
+ padding:0 14px;
+ line-height:34px;
+ text-decoration:none;
+ border:1px solid #ddd;
+ border-left-width:0;
+ }
+.pagination a:hover,
+.pagination .active a {
+ background-color:#f5f5f5;
+ }
+.pagination .active a {
+ color:#999999;
+ cursor:default;
+ }
+.pagination .disabled span,
+.pagination .disabled a,
+.pagination .disabled a:hover {
+ color:#999999;
+ cursor:default;
+ background-color:transparent;
+ }
+.pagination li:first-child a {
+ border-left-width:1px;
+ -webkit-border-radius:3px 0 0 3px;
+ -moz-border-radius:3px 0 0 3px;
+ border-radius:3px 0 0 3px;
+ }
+.pagination li:last-child a {
+ -webkit-border-radius:0 3px 3px 0;
+ -moz-border-radius:0 3px 3px 0;
+ border-radius:0 3px 3px 0;
+ }
+.pagination-centered {
+ text-align:center;
+ }
+.pagination-right {
+ text-align:right;
+ }
+.pager {
+ margin-bottom:18px;
+ margin-left:0;
+ text-align:center;
+ list-style:none;
+ *zoom:1;
+ }
+.pager:before,
+.pager:after {
+ display:table;
+ content:"";
+ }
+.pager:after {
+ clear:both;
+ }
+.pager li {
+ display:inline;
+ }
+.pager a {
+ 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 a:hover {
+ text-decoration:none;
+ background-color:#f5f5f5;
+ }
+.pager .next a {
+ float:right;
+ }
+.pager .previous a {
+ float:left;
+ }
+.pager .disabled a,
+.pager .disabled a:hover {
+ color:#999999;
+ cursor:default;
+ background-color:#fff;
+ }
+.modal-open .dropdown-menu {
+ z-index:2050;
+ }
+.modal-open .dropdown.open {
+ *z-index:2050;
+ }
+.modal-open .popover {
+ z-index:2060;
+ }
+.modal-open .tooltip {
+ z-index:2070;
+ }
+.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:50%;
+ left:50%;
+ z-index:1050;
+ width:560px;
+ margin:-250px 0 0 -280px;
+ overflow:auto;
+ 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;
+ -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;
+ -ms-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:50%;
+ }
+.modal-header {
+ padding:9px 15px;
+ border-bottom:1px solid #eee;
+ }
+.modal-header .close {
+ margin-top:2px;
+ }
+.modal-body {
+ 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;
+ 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;
+ }
+.tooltip {
+ position:absolute;
+ z-index:1020;
+ display:block;
+ padding:5px;
+ font-size:11px;
+ opacity:0;
+ filter:alpha(opacity=0);
+ visibility:visible;
+ }
+.tooltip.in {
+ opacity:0.8;
+ filter:alpha(opacity=80);
+ }
+.tooltip.top {
+ margin-top:-2px;
+ }
+.tooltip.right {
+ margin-left:2px;
+ }
+.tooltip.bottom {
+ margin-top:2px;
+ }
+.tooltip.left {
+ margin-left:-2px;
+ }
+.tooltip.top .tooltip-arrow {
+ bottom:0;
+ left:50%;
+ margin-left:-5px;
+ border-top:5px solid #000000;
+ border-right:5px solid transparent;
+ border-left:5px solid transparent;
+ }
+.tooltip.left .tooltip-arrow {
+ top:50%;
+ right:0;
+ margin-top:-5px;
+ border-top:5px solid transparent;
+ border-bottom:5px solid transparent;
+ border-left:5px solid #000000;
+ }
+.tooltip.bottom .tooltip-arrow {
+ top:0;
+ left:50%;
+ margin-left:-5px;
+ border-right:5px solid transparent;
+ border-bottom:5px solid #000000;
+ border-left:5px solid transparent;
+ }
+.tooltip.right .tooltip-arrow {
+ top:50%;
+ left:0;
+ margin-top:-5px;
+ border-top:5px solid transparent;
+ border-right:5px solid #000000;
+ border-bottom:5px solid transparent;
+ }
+.tooltip-inner {
+ max-width:200px;
+ padding:3px 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;
+ }
+.popover {
+ position:absolute;
+ top:0;
+ left:0;
+ z-index:1010;
+ display:none;
+ padding:5px;
+ }
+.popover.top {
+ margin-top:-5px;
+ }
+.popover.right {
+ margin-left:5px;
+ }
+.popover.bottom {
+ margin-top:5px;
+ }
+.popover.left {
+ margin-left:-5px;
+ }
+.popover.top .arrow {
+ bottom:0;
+ left:50%;
+ margin-left:-5px;
+ border-top:5px solid #000000;
+ border-right:5px solid transparent;
+ border-left:5px solid transparent;
+ }
+.popover.right .arrow {
+ top:50%;
+ left:0;
+ margin-top:-5px;
+ border-top:5px solid transparent;
+ border-right:5px solid #000000;
+ border-bottom:5px solid transparent;
+ }
+.popover.bottom .arrow {
+ top:0;
+ left:50%;
+ margin-left:-5px;
+ border-right:5px solid transparent;
+ border-bottom:5px solid #000000;
+ border-left:5px solid transparent;
+ }
+.popover.left .arrow {
+ top:50%;
+ right:0;
+ margin-top:-5px;
+ border-top:5px solid transparent;
+ border-bottom:5px solid transparent;
+ border-left:5px solid #000000;
+ }
+.popover .arrow {
+ position:absolute;
+ width:0;
+ height:0;
+ }
+.popover-inner {
+ width:280px;
+ padding:3px;
+ overflow:hidden;
+ background:#000000;
+ background:rgba(0, 0, 0, 0.8);
+ -webkit-border-radius:6px;
+ -moz-border-radius:6px;
+ border-radius:6px;
+ -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);
+ }
+.popover-title {
+ padding:9px 15px;
+ line-height:1;
+ background-color:#f5f5f5;
+ border-bottom:1px solid #eee;
+ -webkit-border-radius:3px 3px 0 0;
+ -moz-border-radius:3px 3px 0 0;
+ border-radius:3px 3px 0 0;
+ }
+.popover-content {
+ padding:14px;
+ background-color:#ffffff;
+ -webkit-border-radius:0 0 3px 3px;
+ -moz-border-radius:0 0 3px 3px;
+ border-radius:0 0 3px 3px;
+ -webkit-background-clip:padding-box;
+ -moz-background-clip:padding-box;
+ background-clip:padding-box;
+ }
+.popover-content p,
+.popover-content ul,
+.popover-content ol {
+ margin-bottom:0;
+ }
+.thumbnails {
+ margin-left:-20px;
+ list-style:none;
+ *zoom:1;
+ }
+.thumbnails:before,
+.thumbnails:after {
+ display:table;
+ content:"";
+ }
+.thumbnails:after {
+ clear:both;
+ }
+.row-fluid .thumbnails {
+ margin-left:0;
+ }
+.thumbnails > li {
+ float:left;
+ margin-bottom:18px;
+ margin-left:20px;
+ }
+.thumbnail {
+ display:block;
+ padding:4px;
+ line-height:1;
+ border:1px solid #ddd;
+ -webkit-border-radius:4px;
+ -moz-border-radius:4px;
+ border-radius:4px;
+ -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.075);
+ -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.075);
+ box-shadow:0 1px 1px rgba(0, 0, 0, 0.075);
+ }
+a.thumbnail:hover {
+ 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;
+ }
+.label,
+.badge {
+ font-size:10.998px;
+ 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 {
+ padding:1px 4px 2px;
+ -webkit-border-radius:3px;
+ -moz-border-radius:3px;
+ border-radius:3px;
+ }
+.badge {
+ padding:1px 9px 2px;
+ -webkit-border-radius:9px;
+ -moz-border-radius:9px;
+ border-radius:9px;
+ }
+a.label:hover,
+a.badge:hover {
+ 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;
+ }
+@-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:18px;
+ margin-bottom:18px;
+ overflow:hidden;
+ background-color:#f7f7f7;
+ background-image:-moz-linear-gradient(top, #f5f5f5, #f9f9f9);
+ background-image:-ms-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(top, #f5f5f5, #f9f9f9);
+ background-repeat:repeat-x;
+ -webkit-border-radius:4px;
+ -moz-border-radius:4px;
+ border-radius:4px;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#f5f5f5', endColorstr='#f9f9f9', 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 {
+ width:0;
+ height:18px;
+ 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(top, #149bdf, #0480be);
+ background-image:-ms-linear-gradient(top, #149bdf, #0480be);
+ background-repeat:repeat-x;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#149bdf', endColorstr='#0480be', 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;
+ -ms-box-sizing:border-box;
+ box-sizing:border-box;
+ -webkit-transition:width 0.6s ease;
+ -moz-transition:width 0.6s ease;
+ -ms-transition:width 0.6s ease;
+ -o-transition:width 0.6s ease;
+ transition:width 0.6s ease;
+ }
+.progress-striped .bar {
+ background-color:#149bdf;
+ 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:-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:-ms-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:-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: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 {
+ background-color:#dd514c;
+ background-image:-moz-linear-gradient(top, #ee5f5b, #c43c35);
+ background-image:-ms-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(top, #ee5f5b, #c43c35);
+ background-repeat:repeat-x;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0);
+ }
+.progress-danger.progress-striped .bar {
+ 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:-ms-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 {
+ background-color:#5eb95e;
+ background-image:-moz-linear-gradient(top, #62c462, #57a957);
+ background-image:-ms-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(top, #62c462, #57a957);
+ background-repeat:repeat-x;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0);
+ }
+.progress-success.progress-striped .bar {
+ 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:-ms-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 {
+ background-color:#4bb1cf;
+ background-image:-moz-linear-gradient(top, #5bc0de, #339bb9);
+ background-image:-ms-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(top, #5bc0de, #339bb9);
+ background-repeat:repeat-x;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0);
+ }
+.progress-info.progress-striped .bar {
+ 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:-ms-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 {
+ background-color:#faa732;
+ background-image:-moz-linear-gradient(top, #fbb450, #f89406);
+ background-image:-ms-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(top, #fbb450, #f89406);
+ background-repeat:repeat-x;
+ filter:progid:dximagetransform.microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
+ }
+.progress-warning.progress-striped .bar {
+ 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:-ms-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:18px;
+ }
+.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:18px;
+ line-height:1;
+ }
+.carousel-inner {
+ position:relative;
+ width:100%;
+ overflow:hidden;
+ }
+.carousel .item {
+ position:relative;
+ display:none;
+ -webkit-transition:0.6s ease-in-out left;
+ -moz-transition:0.6s ease-in-out left;
+ -ms-transition:0.6s ease-in-out left;
+ -o-transition:0.6s ease-in-out left;
+ transition:0.6s ease-in-out left;
+ }
+.carousel .item > img {
+ display:block;
+ line-height:1;
+ }
+.carousel .active,
+.carousel .next,
+.carousel .prev {
+ display:block;
+ }
+.carousel .active {
+ left:0;
+ }
+.carousel .next,
+.carousel .prev {
+ position:absolute;
+ top:0;
+ width:100%;
+ }
+.carousel .next {
+ left:100%;
+ }
+.carousel .prev {
+ left:-100%;
+ }
+.carousel .next.left,
+.carousel .prev.right {
+ left:0;
+ }
+.carousel .active.left {
+ left:-100%;
+ }
+.carousel .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 {
+ color:#ffffff;
+ text-decoration:none;
+ opacity:0.9;
+ filter:alpha(opacity=90);
+ }
+.carousel-caption {
+ position:absolute;
+ right:0;
+ bottom:0;
+ left:0;
+ padding:10px 15px 5px;
+ background:#333333;
+ background:rgba(0, 0, 0, 0.75);
+ }
+.carousel-caption h4,
+.carousel-caption p {
+ color:#ffffff;
+ }
+.hero-unit {
+ padding:60px;
+ margin-bottom:30px;
+ 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 p {
+ font-size:18px;
+ font-weight:200;
+ line-height:27px;
+ color:inherit;
+ }
+.pull-right {
+ float:right;
+ }
+.pull-left {
+ float:left;
+ }
+.hide {
+ display:none;
+ }
+.show {
+ display:block;
+ }
+.invisible {
+ visibility:hidden;
+ }
+
+
+/* mine */
+
+.row-padded {
+ position:relative;
+ padding-top:40px;
+ padding-left:280px;
+ }
+ .aside {
+ position:absolute;
+ z-index:1;
+ top:40px;
+ left:0;
+ padding-top:7px;
+ }
+ .toc-backref {
+ color:#333;
+ }
diff --git a/doc/colors.css b/doc/colors.css
new file mode 100644
index 0000000..d0dfea9
--- /dev/null
+++ b/doc/colors.css
@@ -0,0 +1,16 @@
+.tmpl {
+ color: #008000;
+}
+
+.func {
+ color: #008000;
+}
+
+.arg {
+ color: blue;
+ font-style: italic;
+}
+
+.const {
+ color: #8E2323;
+}
diff --git a/doc/template_language.rst b/doc/template_language.rst
new file mode 100644
index 0000000..83a13a7
--- /dev/null
+++ b/doc/template_language.rst
@@ -0,0 +1,729 @@
+========================================
+The CT++ template language (2.8 version)
+========================================
+
+.. contents::
+ :depth: 2
+
+.. role:: tmpl
+.. role:: const
+.. role:: arg
+.. role:: func
+
+Templates
+=========
+
+ A template is a text file, that is marked-up using the CT++ template
+ language. It used to separate content from presentation in web design.
+
+ A template can contain CT++ tags. All CT++ tags have HTML-like syntax and
+ they start with :tmpl:`TMPL_`. Names of CT++ tags are case insensetive (for
+ example, :tmpl:`TMPL_var`, :tmpl:`tmpl_var`, or :tmpl:`TmPl_VaR`).
+
+ CT++ supports the next tags: :tmpl:`TMPL_var`, :tmpl:`TMPL_if`,
+ :tmpl:`TMPL_elsif`, :tmpl:`TMPL_else`, :tmpl:`TMPL_unless`,
+ :tmpl:`TMPL_foreach`, :tmpl:`TMPL_include`, :tmpl:`TMPL_comment`,
+ :tmpl:`TMPL_block`, :tmpl:`TMPL_call`, and :tmpl:`TMPL_verbose`.
+
+ Example of a template:
+
+ .. parsed-literal::
+
+ <!DOCTYPE html>
+ :tmpl:`<TMPL_include 'includes/html_lang.tmpl'>`
+ :tmpl:`<TMPL_include 'includes/html_head.tmpl'>`
+ <link rel="stylesheet" href="/static/css/m.posts.css">
+ </head>
+ <body class="posts">
+ <div id="body-wrapper" class="body-wrapper">
+ <div id="content-wrapper" class="content-wrapper">
+ :tmpl:`<TMPL_include 'includes/header.tmpl'>`
+ <section role="main" class="content-column">
+ <h1>\ :tmpl:`<TMPL_var _("Welcome to")>` :tmpl:`<TMPL_var project_name>`, :tmpl:`<TMPL_verbose>`
+ :tmpl:`<TMPL_if logged>`
+ :tmpl:`<TMPL_var HTMLESCAPE(DEFAULT(user_info.name, user_info.username))>`
+ :tmpl:`<TMPL_else>`
+ :tmpl:`<TMPL_var _("Anonymous")>`
+ :tmpl:`</TMPL_if>`\ </h1>
+ :tmpl:`</TMPL_verbose>`
+
+ :tmpl:`<TMPL_verbose>`
+ :tmpl:`<TMPL_foreach users as user>`
+ <h3><a class="user-page-link" href="/user/:tmpl:`<TMPL_var URLESCAPE(user.username)>`" title="
+ :tmpl:`<TMPL_var HTMLESCAPE(DEFAULT(user.name, user.username))>">`
+ :tmpl:`<TMPL_var HTMLESCAPE(DEFAULT(user.name, user.username))>`
+ </a></h3>
+ :tmpl:`</TMPL_foreach>
+ </TMPL_verbose>`
+
+ </section>
+ :tmpl:`<TMPL_include 'includes/noscript_alert.tmpl'>`
+ </div>
+ </div>
+ :tmpl:`<TMPL_include 'includes/footer.tmpl'>`
+ </body>
+ </html>
+
+Comments
+--------
+
+ Use the :tmpl:`TMPL_comment` tag to comment-out part of a template.
+
+ For example:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_comment>`\ <h3>Hello, :tmpl:`<TMPL_var username>`\ !</h3>\ :tmpl:`</TMPL_comment>`
+
+Formatting
+----------
+
+ The :tmpl:`TMPL_verbose` tag removes white-space characters (space,
+ form-feed, newline, carriage return, horizontal tab, and vertical tab)
+ between CT++ tags.
+
+ For example:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_verbose>`
+ foo: :tmpl:`<TMPL_var foo>` some text
+ bar: :tmpl:`<TMPL_var bar>` baz: :tmpl:`<TMPL_var baz>` :tmpl:`<TMPL_var spam>`
+ :tmpl:`</TMPL_verbose>`
+
+ For instance, variables foo, bar, baz, and spam are respectively
+ :const:`"{FOO}"`, :const:`"{BAR}"`, :const:`"{BAZ}"`, and
+ :const:`"{SPAM}"`. The template would be rendered as::
+
+ foo:{FOO}some text
+ bar:{BAR}baz:{BAZ}{SPAM}
+
+ Also, a dash could be used instead the :tmpl:`TMPL_verbose` tag:
+
+ .. parsed-literal::
+
+ foo: :tmpl:`<TMPL_var foo->` some text
+ bar: :tmpl:`<-TMPL_var bar->` baz: :tmpl:`<-TMPL_var baz->` :tmpl:`<-TMPL_var spam>`
+
+ There will same output.
+
+Including
+---------
+
+ The :tmpl:`TMPL_include` tag loads another template within the template.
+ The tag has the one attribute only. The attribute can't be a variable.
+ It's a filename in quotes::
+
+ <TMPL_include "filename.tmpl">
+
+ It is impossible to break conditions and loops between templates.
+
+Variables
+=========
+
+ The CT++ template engine evaluates variable and replaces it with the
+ result. The :tmpl:`TMPL_var` tag is used for evaluating variables.
+
+ The types of variables are undefined variable, string, integer,
+ floating-point number, mapping, and array. For undefined variables result
+ is an empty string.
+
+ The :tmpl:`TMPL_var` evaluates expressions: variables, operators, and
+ functions. For example::
+
+ <TMPL_var foo>
+ <TMPL_var (foo + bar + 1)>
+ <TMPL_var HTMLESCAPE(baz)>
+
+Arrays
+------
+
+ An array is a data type consisting of a collection of elements, each
+ identified by one array index. The first element of the array is indexed
+ by subscript of 0.
+
+ Examples::
+
+ <TMPL_var foo[0]> <- foo must be an array!
+ <TMPL_var foo[bar]> <- bar must be an integer!
+
+Mappings
+--------
+
+ A mapping is a data type composed of a collection of (key,value)
+ pairs, such that each possible key appears at most once in the collection.
+
+ Examples::
+
+ <TMPL_var foo.key> = <TMPL_var foo["key"]> <- foo must be a mapping
+ <TMPL_var foo.bar.baz> <- the mapping foo has the key "bar" with mapping value, that has the key "baz"
+
+ Use a dot to access attributes of a variable.
+
+Control flow
+============
+
+Choice
+------
+
+ The :tmpl:`TMPL_if` tag and the :tmpl:`TMPL_unless` tag evaluate a
+ condition. A condition can be variable, function calls, arithmetic and
+ logic expressions. Arithmetic and logic expressions must be inside of
+ parentheses.
+
+ Examples:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_if foo>`
+ Some text with :tmpl:`<TMPL_var foo>`
+ :tmpl:`</TMPL_if>`
+
+ :tmpl:`<TMPL_unless DEFINED(bar)>`
+ Some text
+ :tmpl:`<TMPL_else>`
+ Some text with :tmpl:`<TMPL_var bar>`
+ :tmpl:`</TMPL_unless>`
+
+ :tmpl:`<TMPL_if (x < 1)>`
+ eeny
+ :tmpl:`<TMPL_elsif (x < 2)>`
+ meeny
+ :tmpl:`<TMPL_elsif (x < 3)>`
+ miny
+ :tmpl:`<TMPL_else>`
+ moe
+ :tmpl:`</TMPL_if>`
+
+ The following table summarizes the operator precedences, from highest
+ precedence to lowest precedence:
+
+ =============== ===== ====================================
+ Operators Assoc Description
+ =============== ===== ====================================
+ (expression) parentheses used for grouping
+ --------------- ----- ------------------------------------
+ () LR parentheses used for a function call
+ --------------- ----- ------------------------------------
+ . LR member selection
+ --------------- ----- ------------------------------------
+ [] LR array/mapping element access
+ --------------- ----- ------------------------------------
+ !, +, - RL logical not, unary plus, unary minus
+ --------------- ----- ------------------------------------
+ \*, /, mod, div LR multiplication and division
+ --------------- ----- ------------------------------------
+ +, - LR addition and subtraction
+ --------------- ----- ------------------------------------
+ <, <=, >, >= LR inequality relational
+ --------------- ----- ------------------------------------
+ ==, != LR equality relational
+ --------------- ----- ------------------------------------
+ && LR logical and
+ --------------- ----- ------------------------------------
+ || LR logical or
+ =============== ===== ====================================
+
+ CT++ defines keywords to act as aliases for a number of operators: lt (<),
+ le (<=), gt (>), ge (>=), eq (==), ne (!=), and (&&), or (||).
+
+Loops
+-----
+
+ CT++ supports the :tmpl:`TMPL_foreach` only. It use an explicit iterator,
+ in which the loop variable takes on each of the values in an array or a
+ mapping.
+
+ An iterator has special attributes:
+
+ ========= ============================================
+ Attribute Description
+ ========= ============================================
+ __index__ index of array's element
+ --------- --------------------------------------------
+ __key__ key in mapping
+ --------- --------------------------------------------
+ __first__ "true" for first iteration
+ --------- --------------------------------------------
+ __last__ "true" for last iteration
+ --------- --------------------------------------------
+ __inner__ "true" if not first and not last iteration
+ --------- --------------------------------------------
+ __even__ "true" for even iteration
+ --------- --------------------------------------------
+ __odd__ "true" for odd iteration
+ --------- --------------------------------------------
+ __value__ value of element
+ ========= ============================================
+
+ Example of usage:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_foreach array as a>`
+ value: :tmpl:`<TMPL_var a>` or :tmpl:`<TMPL_var a.__value__>`
+ index: :tmpl:`<TMPL_var a.__index__>`
+ :tmpl:`<TMPL_if a.__first__>`\ #first#\ :tmpl:`</TMPL_if>`
+ :tmpl:`<TMPL_if a.__even__>`\ #even#\ :tmpl:`<TMPL_else>`\ #odd#\ :tmpl:`</TMPL_if>`
+ :tmpl:`</TMPL_foreach>`
+
+ :tmpl:`<TMPL_foreach map as m>`
+ value: :tmpl:`<TMPL_var m>` or :tmpl:`<TMPL_var m.__value__>`
+ key: :tmpl:`<TMPL_var m.__key__>`
+ :tmpl:`<TMPL_if m.__last__>`\ #last#\ :tmpl:`</TMPL_if>`
+ :tmpl:`</TMPL_foreach>`
+
+ The :tmpl:`TMPL_break` tag breaks the iteration of loop::
+
+ <TMPL_verbose>
+ <TMPL_foreach LIST("a", "b", "c") as char>
+ <TMPL_var char>
+ <TMPL_if (char == "b")><TMPL_break></TMPL_if>
+ </TMPL_foreach>
+ </TMPL_verbose>
+
+ Output of the template is "ab".
+
+Functions
+=========
+
+ CT++ has built-in functions, that is described in `Library reference`_.
+ CT++ tags, that support it: :tmpl:`TMPL_var`, :tmpl:`TMPL_if`,
+ :tmpl:`TMPL_unless`, :tmpl:`TMPL_elsif`, and :tmpl:`TMPL_foreach`. For
+ example:
+
+ .. parsed-literal::
+
+ <TMPL_var :func:`SPRINTF`\ (\ :func:`GETTEXT`\ ("%d minutes ago", min), min)>
+
+ <TMPL_var :func:`DEFAULT`\ (\ :func:`HTMLESCAPE`\ (url), "http://ctpp.havoc.ru")>
+
+ <TMPL_if (\ :func:`GET_TYPE`\ (var) == "STRING")>
+ <TMPL_var :func:`GETTEXT`\ ("var is string")>
+ </TMPL_if>
+
+ <TMPL_foreach :func:`LIST`\ ("eeny", "meeny", "miny", "moe") as item>
+ <TMPL_var item>
+ </TMPL_foreach>
+
+Blocks
+======
+
+ A block is reusable piece of a template called by name.
+
+ Example of usage:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_block "simple-block">`
+ Some text
+ :tmpl:`</TMPL_block>`
+
+ The :tmpl:`TMPL_call` tag is used for calling a block:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_call "simple-block">`
+ :tmpl:`<TMPL_call some_var>`
+
+ A block can have arguments:
+
+ .. parsed-literal::
+
+ :tmpl:`<TMPL_block 'some-block' args(a, b, c)>`
+ :tmpl:`<TMPL_var a>`\ , :tmpl:`<TMPL_var b>`\ , and :tmpl:`<TMPL_var c>`
+ :tmpl:`</TMPL_block>`
+
+ :tmpl:`<TMPL_call 'some-block' args(foo, bar, baz)>`
+
+ Definition blocks inside another blocks is forbidden.
+
+.. _`Library reference`:
+
+Library reference
+=================
+
+_ *(msgid[, msgid_plural, n][, domain])*
+----------------------------------------
+
+See `GETTEXT`_.
+
+AVG *(flag, a[, b, ...])*
+-------------------------
+
+ Return average of :arg:`a[, b, ...]`, according to chosen algorithm by
+ :arg:`flag`. The values of :arg:`flag` are :const:`'a'` for arithmetic mean,
+ :const:`'g'` for geometric mean, :const:`'h'` for harmonic mean, and :const:`'q'`
+ for quadratic mean.
+
+ Examples::
+
+ AVG('a', 1, 2, 3) -> 2
+ AVG('g', 1, 2, 3) -> 1.81712059283
+ AVG('h', 1, 2, 3) -> 1.63636363636
+ AVG('q', 1, 2, 3) -> 2.16024689947
+
+
+BASE64_DECODE *(x)*
+-------------------
+
+ Decode the Base64 encoded string :arg:`x`.
+
+
+BASE64_ENCODE *(x)*
+-------------------
+
+ Encode the string :arg:`x` use Base64.
+
+CAST *(flag, x)*
+----------------
+
+ Convert the type of :arg:`x` to a type specified by :arg:`flag`. The
+ values of :arg:`flag` are :const:`"i[nteger]"`, :const:`"o[ctal]"`,
+ :const:`"h[exadecimal]"`, :const:`"f[loat]"`, and :const:`"s[tring]"`.
+
+ For :arg:`x` starts with :const:`0x` or :const:`0X`, :const:`"integer"`
+ :arg:`flag` behaves as :const:`"hexadecimal"` :arg:`flag`. For :arg:`x`
+ starts with :const:`0`, :const:`"integer"` :arg:`flag` behaves as
+ :const:`"octal"` :arg:`flag`.
+
+ Examples::
+
+ CAST("int", 1.345) -> 1
+ CAST("dec", "010") -> 10
+ CAST("hex", "010") -> 16
+
+CONCAT *(a[, b, ...])*
+----------------------
+
+ Return a string which is the concatenation of the values :arg:`a[, b,
+ ...]`.
+
+ Example::
+
+ CONCAT('a', 1, 2, 3) -> a123
+
+CONTEXT *()*
+------------
+
+ Return a mapping of the rendered context.
+
+DATE_FORMAT *(x, format)*
+-------------------------
+
+ Formats :arg:`x` according to the format specification :arg:`format` (see
+ 'man 3 strftime'). The argument :arg:`x` is the number of seconds elapsed
+ since the Epoch, 1970-01-01 00:00:00 +0000 (UTC).
+
+ Example::
+
+ DATE_FORMAT(1200490323, "%Y-%m-%d %H:%M:%S") -> 2008-01-16 16:32:03
+
+
+DEFAULT *(x, y)*
+----------------------
+
+ If :arg:`x` is nonzero return :arg:`x` else return :arg:`y`.
+
+ Examples::
+
+ DEFAULT("", "default_string") -> default_string
+ DEFAULT(nonexistent, "default") -> default
+ DEFAULT(0, 1) -> 1
+
+DEFINED *(a[, b, ...])*
+-----------------------
+
+ If all of :arg:`a[, b, ...]` exist return :const:`1` else return
+ :const:`0`.
+
+ERROR *()*
+----------
+
+ Create runtime error.
+
+FORM_PARAM *(x, y)*
+-------------------
+
+ With name :arg:`x` and value :arg:`y`, output a hidden field of HTML form.
+
+ It is equivalent to the next::
+
+ <TMPL_verbose>
+ <TMPL_if y>
+ <input type="hidden" name="x" value="<TMPL_var URLESCAPE(y)>">
+ </TMPL_if>
+ </TMPL_verbose>
+
+.. _GETTEXT:
+
+GETTEXT *(msgid[, msgid_plural, n][, domain])*
+----------------------------------------------
+
+ Translate a text string :arg:`msgid` into the user's native language, by
+ looking up the translation in a message catalog.
+
+ If a translation was found, the message is converted to the locale's
+ codeset and returned. Otherwise :arg:`msgid` or :arg:`msgid_plural` is
+ returned.
+
+ The appropriate plural form depends on the number :arg:`n` and the language
+ of the message catalog where the translation was found.
+
+ The argument :arg:`domain` is a set of translatable messages.
+
+ The function :func:`_()` is alias of :func:`GETTEXT()`.
+
+ Examples::
+
+ GETTEXT("Hello, World!") -> Привет, Мир!
+ _("Hello, World!") -> Привет, Мир!
+ _("Hello, World!", "mydomain") -> Привет, Другой Мир!
+ SPRINTF(_("%d hour", "%d hours", 1), 1) -> 1 час
+ SPRINTF(_("%d minute", "%d minutes", 2, "mydomain"), 2) -> 2 минуты
+
+GET_TYPE *(x)*
+--------------
+
+ Return a printable type of :arg:`x`. The types are :const:`"\*UNDEF\*"` for
+ undefined variables, :const:`"STRING"` for strings, :const:`"INTEGER"` for
+ integers, :const:`"REAL"` for floating-point numbers, :const:`"HASH"` for
+ mappings, and :const:`"ARRAY"` for arrays.
+
+HASH_KEYS *(x)*
+------------------
+
+ Return an array of :arg:`x`'s keys. The argument :arg:`x` should be
+ mapping.
+
+HMAC_MD5 *(x, key)*
+-------------------------
+
+ Compute a hash value for the specified :arg:`x` using the supplied :arg:`key`.
+
+HOSTNAME *()*
+-------------
+
+ Return the hostname of the current processor.
+
+HREF_PARAM *(x, y)*
+--------------------------
+
+ With name :arg:`x` and value :arg:`y`, output parameters of HTML links.
+
+ It is equivalent to the next::
+
+ <TMPL_if a>x=<TMPL_var URLESCAPE(y)></TMPL_if>
+
+HTMLESCAPE *(a[, b, ...])*
+--------------------------
+
+ Escape :const:`&`, :const:`<`, :const:`'`, :const:`"`, and :const:`>` in
+ the strings of data :arg:`a[, b, ...]`.
+
+ :func:`HTMLESCAPE()` returns result of concatenation of the strings
+ :arg:`a[, b, ...]`.
+
+ICONV *(x, src, dst[, flags])*
+------------------------------
+
+ Convert the string :arg:`x` from the coded character set :arg:`src` to
+ :arg:`dst`.
+
+ The argument :arg:`flags` are :const:`'i'` or :const:`'I'` for discarding
+ illegal sequence, and :const:`'t'` or :const:`'T'` for enabling transliteration
+ in the conversion. The argument :arg:`flags` works in FreeBSD only.
+
+ See 'iconv -l` for list which contains all the coded character sets known.
+
+IN_ARRAY *(x, array)*
+---------------------
+
+ Return :const:`1` if :arg:`x` was found in :arg:`array`, else return
+ :const:`0`.
+
+IN_SET *(x, a[, b, ...])*
+-------------------------
+
+ Return :const:`1` if :arg:`x` was found in :arg:`a[, b, ...]`, else return
+ :const:`0`.
+
+JSONESCAPE *(a[, b, ...])*
+--------------------------
+
+ Escape :const:`"`, :const:`\\`, :const:`/`, :const:`\\b`, :const:`\\f`,
+ :const:`\\n`, :const:`\\r`, :const:`\\t`, :const:`'`, :const:`\\v`, and
+ :const:`\\0` in the strings of data :arg:`a[, b, ...]`. If character's
+ value is smaller than :const:`\\u0032`, it is encoded with :const:`\\uXXXX`
+ format for hex digits :const:`XXXX`.
+
+ :func:`JSONESCAPE()` returns result of concatenation of the strings
+ :arg:`a[, b, ...]`.
+
+JSON *(x)*
+----------
+
+ Serialize :arg:`x` to the JavaScript Object Notation (JSON).
+
+LIST_ELEMENT *(a[, b, ...], x)*
+-------------------------------
+
+ Return an element from :arg:`a[, b, ...]` by the index :arg:`x`.
+
+LIST *([a, b, ...])*
+--------------------
+
+ Return an array of :arg:`[a, b, ...]`. It can be empty.
+
+LOG *(x[, base])*
+---------------------
+
+ With one argument, return the natural logarithm of :arg:`x` (to base
+ :const:`e`).
+
+ With two arguments, return the logarithm of :arg:`x` to the given
+ :arg:`base`, calculated as :func:`LOG(x) / LOG(base)`.
+
+MAX *(a[, b, ...])*
+-------------------
+
+ Return the largest item of :arg:`a[, b, ...]`.
+
+MB_SIZE *(x)*
+-------------
+
+ MB\_ prefix marks function, which works with multibyte strings.
+
+ See SIZE_.
+
+MB_SUBSTR *(x, offset[, bytes[, y]]])*
+--------------------------------------------
+
+ MB\_ prefix marks function, which works with multibyte strings.
+
+ See SUBSTR_.
+
+MB_TRUNCATE *(x, offest[, addon])*
+----------------------------------
+
+ MB\_ prefix marks function, which works with multibyte strings.
+
+ See TRUNCATE_.
+
+MD5 *(a[, b, ...])*
+-------------------
+
+ Return the MD5 hash of :arg:`a[, b, ...]`.
+
+MIN *(a[, b, ...])*
+-------------------
+
+ Return the smallest item of :arg:`a[, b, ...]`.
+
+NUM_FORMAT *(x, y)*
+------------------------
+
+ Return the formatted integer :arg:`x` with period :arg:`y`.
+
+ Example::
+
+ NUM_FORMAT(1234567, ",") -> 1,234,567
+
+OBJ_DUMP *([a, b, ...])*
+------------------------
+
+ Return dump of the arguments :arg:`[a, b, ...]`. Return dump of all variables
+ if no arguments.
+
+RANDOM *([[min,] max])*
+-----------------------
+
+ Return a random number in the range (:arg:`min`, :arg:`max`]. The range
+ (:arg:`min`, :arg:`max`] equals to :const:`0 .. RAND_MAX`, if no arguments.
+
+.. _SIZE:
+
+SIZE *(x)*
+----------
+
+ Return the number of items of a sequence :arg:`x`.
+
+SPRINTF *(format, a[, b, ...])*
+-------------------------------
+
+ Produce output according to a format. After the argument :arg:`format`, it
+ expects at least as many additional arguments as specified in
+ :arg:`format`.
+
+ The argument :arg:`format` can optionaly contain embedded format tags that
+ are substituted by the values specified in :arg:`a[, b, ...]`.
+
+ See 'man 3 printf' for more information.
+
+.. _SUBSTR:
+
+SUBSTR *(x, offset[, bytes[, y]]])*
+-----------------------------------
+
+ Return the characters in the string :arg:`x` starting at a specified
+ position :arg:`offset` and continuing for a specified number of characters
+ :arg:`bytes`. If the argument :arg:`y` exists, then return the string
+ :arg:`x` with replaced the characters with :arg:`y`.
+
+.. _TRUNCATE:
+
+TRUNCATE *(x, offest[, addon])*
+-------------------------------
+
+ Return the string :arg:`x`, if it is less than or equal to :arg:`offset`
+ characters long. If it is longer, it truncates the string.
+
+ Return the string with :arg:`addon`, if the argument :arg:`addon` exists.
+
+URIESCAPE *(a[, b, ...])*
+-------------------------
+
+ Convert characters of the strings :arg:`a[, b, ...]` into their
+ corresponding escape sequences.
+
+ :func:`URIESCAPE()` returns result of concatenation of the strings
+ :arg:`a[, b, ...]`.
+
+URLESCAPE *(a[, b, ...])*
+-------------------------
+
+ Convert characters of the strings :arg:`a[, b, ...]` into their
+ corresponding escape sequences. It replaces spaces with :const:`"+"` instead
+ of :const:`"%20"`.
+
+ :func:`URLESCAPE()` returns result of concatenation of the strings
+ :arg:`a[, b, ...]`.
+
+VERSION *([x])*
+---------------
+
+ Return the current version of CT++.
+
+ Return extended information if :arg:`x` equals to :const:`"full"`.
+
+WMLESCAPE *(a[, b, ...])*
+-------------------------
+
+ Replace :const:`<` with :const:`&gt;`, :const:`>` with :const:`&lt;`,
+ :const:`"` with :const:`&quot;`, :const:`'` with :const:`&apos;`,
+ :const:`$` with :const:`$$`, and :const:`&` with :const:`&amp;` in the
+ strings of data :arg:`a[, b, ...]`.
+
+ :func:`WMLESCAPE()` returns result of concatenation of the strings
+ :arg:`a[, b, ...]`.
+
+XMLESCAPE *(a[, b, ...])*
+-------------------------
+
+ Replace :const:`<` with :const:`&gt;`, :const:`>` with :const:`&lt;`,
+ :const:`"` with :const:`&quot;`, :const:`'` with :const:`&apos;`, and
+ :const:`&` with :const:`&amp;` in the strings of data :arg:`a[, b, ...]`.
+
+ :func:`XMLESCAPE()` returns result of concatenation of the strings
+ :arg:`a[, b, ...]`.
+