Repository: foxythemes/jira-cli
Branch: master
Commit: f75d6eabd159
Files: 86
Total size: 942.1 KB
Directory structure:
gitextract_al9t7u8j/
├── .babelrc
├── .eslintignore
├── .eslintrc
├── .gitignore
├── LICENSE
├── README.md
├── config.yml
├── docs/
│ ├── config.toml
│ ├── content/
│ │ └── home/
│ │ ├── config.md
│ │ ├── index.md
│ │ ├── introduction-examples.md
│ │ ├── introduction-getting-started.md
│ │ ├── introduction-installation.md
│ │ ├── introduction.md
│ │ ├── issues-actions.md
│ │ ├── issues.md
│ │ ├── projects.md
│ │ ├── users.md
│ │ ├── versions-create.md
│ │ └── versions.md
│ ├── layouts/
│ │ ├── _default/
│ │ │ └── home.html
│ │ ├── partials/
│ │ │ ├── footer-scripts.html
│ │ │ ├── footer.html
│ │ │ ├── head.html
│ │ │ ├── navbar.html
│ │ │ └── sidebar.html
│ │ └── shortcodes/
│ │ ├── terminal.html
│ │ └── text-muted.html
│ └── static/
│ ├── css/
│ │ └── app.css
│ ├── js/
│ │ └── app.js
│ └── lib/
│ ├── bootstrap/
│ │ └── dist/
│ │ ├── css/
│ │ │ ├── bootstrap-grid.css
│ │ │ ├── bootstrap-reboot.css
│ │ │ └── bootstrap.css
│ │ └── js/
│ │ └── bootstrap.js
│ ├── prettify/
│ │ ├── lang-apollo.js
│ │ ├── lang-basic.js
│ │ ├── lang-clj.js
│ │ ├── lang-css.js
│ │ ├── lang-dart.js
│ │ ├── lang-erlang.js
│ │ ├── lang-ex.js
│ │ ├── lang-go.js
│ │ ├── lang-hs.js
│ │ ├── lang-kotlin.js
│ │ ├── lang-lasso.js
│ │ ├── lang-lisp.js
│ │ ├── lang-llvm.js
│ │ ├── lang-logtalk.js
│ │ ├── lang-lua.js
│ │ ├── lang-matlab.js
│ │ ├── lang-ml.js
│ │ ├── lang-mumps.js
│ │ ├── lang-n.js
│ │ ├── lang-pascal.js
│ │ ├── lang-proto.js
│ │ ├── lang-r.js
│ │ ├── lang-rd.js
│ │ ├── lang-rust.js
│ │ ├── lang-scala.js
│ │ ├── lang-sql.js
│ │ ├── lang-swift.js
│ │ ├── lang-tcl.js
│ │ ├── lang-tex.js
│ │ ├── lang-vb.js
│ │ ├── lang-vhdl.js
│ │ ├── lang-wiki.js
│ │ ├── lang-xq.js
│ │ ├── lang-yaml.js
│ │ ├── node_prettify.js
│ │ ├── prettify.css
│ │ ├── prettify.js
│ │ └── run_prettify.js
│ └── tether/
│ ├── css/
│ │ ├── tether-theme-arrows-dark.css
│ │ ├── tether-theme-arrows.css
│ │ ├── tether-theme-basic.css
│ │ └── tether.css
│ └── js/
│ └── tether.js
├── package.json
└── src/
├── boards.js
├── config.js
├── index.js
├── issues.js
├── jira.js
├── projects.js
├── users.js
└── versions.js
================================================
FILE CONTENTS
================================================
================================================
FILE: .babelrc
================================================
{
"presets": [
"es2015",
"stage-0"
],
"plugins": [
"add-module-exports",
"transform-runtime"
]
}
================================================
FILE: .eslintignore
================================================
lib/
node_modules/
================================================
FILE: .eslintrc
================================================
{
"env": {
"node": true
},
"parser": "babel-eslint"
}
================================================
FILE: .gitignore
================================================
node_modules
_gh_pages
/lib
*.log
*.swp
.idea
*.iml
================================================
FILE: LICENSE
================================================
MIT License
Copyright (c) 2017 Eduardo Henao & Miguel Henao
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: README.md
================================================
# jira-cli
This is a command line client Jira API, useful to create new issues.

## Getting Started
* Install with npm: `npm install -g jira-cl`
* Run it with `jira [command] [arguments]`
### Initial Setup
When running the first time (or if you didn't create a config file), it will ask you for your Jira host, username, password and if you use 'https' protocol and a new config file will be created in `~/.jira-cli.json` with this data. You can create or modify this file manually.
## Documentation
To get detailed information about JIRA-CLI usage please visit the documentation which is hosted [here](http://docs.jiracli.com).
## License
Copyright (c) 2019 by Miguel Henao & Eduardo Henao
Licensed under the MIT license.
================================================
FILE: config.yml
================================================
languageCode: "en"
title: "JIRA CLI"
baseURL: "https://docs.jiracli.com"
enableInlineShortcodes: true
pygmentsUseClasses: true
pygmentsCodeFences: true
buildDrafts: true
buildFuture: true
enableRobotsTXT: true
metaDataFormat: "yaml"
disableKinds: ["404", "taxonomy", "taxonomyTerm", "RSS"]
blackfriday:
fractions: false
publishDir: "_gh_pages"
archetypeDir: "docs/archetypes"
assetDir: "docs/assets"
contentDir: "docs/content"
dataDir: "docs/data"
layoutDir: "docs/layouts"
staticDir: "docs/static"
themesDir: "docs/themes"
================================================
FILE: docs/config.toml
================================================
baseURL = "http://example.org/"
languageCode = "en-us"
title = "My New Hugo Site"
================================================
FILE: docs/content/home/config.md
================================================
---
title: "Configuration"
headless: true
weight: 5
active: true
---
As seen in the [Getting Started](#introduction-getting-started), we use a config file to save the user auth data in your computer. There are some commands to manipulate this file.
{{< terminal >}}
jira config
{{< /terminal >}}
Description
Command
Update the JIRA host
host
Update username
username
Remove config file
remove
Set default board
board --set
================================================
FILE: docs/content/home/index.md
================================================
---
layout: docs
headless: true
---
================================================
FILE: docs/content/home/introduction-examples.md
================================================
---
title: "Examples"
headless: true
weight: 4
active: true
---
After you have made the [initial setup](#introduction-getting-started) you can test one of the following commands:
Description
Command
Alias
List your open issues
jira issue
jira i
Create new issue
jira create
List projects
jira project
jira p
List users
jira user
jira u
Open issue in browser
jira open <issue key>
jira o <issue key>
**Note:** You will only see data you have access to
================================================
FILE: docs/content/home/introduction-getting-started.md
================================================
---
title: "Getting started"
headless: true
weight: 3
active: true
---
**JIRA CLI** uses the jira rest [API](https://docs.atlassian.com/jira/REST/cloud/) to perform all the different actions and queries.
When running the first time, it will ask you for:
* JIRA host {{< text-muted "(example.atlassian.net)" >}}
* Email
* [Password (API Token)](https://confluence.atlassian.com/cloud/api-tokens-938839638.html)
* Enable https protocol
After that a new config file will be created in `"~/.jira-cli.json"`, you can create or modify this file manually. In order to run this initial setup you just need to enter the main command:
{{< terminal >}}
jira
{{< /terminal >}}
================================================
FILE: docs/content/home/introduction-installation.md
================================================
---
title: Installation
headless: true
weight: 2
active: true
---
You can install JIRA CLI globally in your computer with npm like this:
{{< terminal >}}
npm install -g jira-cl
{{< /terminal >}}
================================================
FILE: docs/content/home/introduction.md
================================================
---
title: "Introduction"
headless: true
weight: 1
active: true
css_class: "introduction"
---
JIRA CLI is a [JIRA](https://www.atlassian.com/software/jira) command line client written in JavaScript and running on top of Node.js, it will help you to easily manage issues, projects, users and much more!
#### Requirements
In order to run this project you'll need to have installed [Node.js](https://nodejs.org)
================================================
FILE: docs/content/home/issues-actions.md
================================================
---
title: "Issue Actions"
headless: true
weight: 7
active: true
---
We can also access to specific issue actions by inserting the issue id.
{{< terminal >}}
jira issue [options]
{{< /terminal >}}
Description
Command
Alias
Assign issue to user
--assign <username>
-a <username>
Execute issue transition if no transition name is passed it executes the next available one.
--transition [transition name]
-t [transition name]
Assign issue to user
--assign <username>
-a <username>
Add comment to issue
--comment <comment>
-c <comment>
================================================
FILE: docs/content/home/issues.md
================================================
---
title: "Issues"
headless: true
weight: 6
active: true
---
Depending on how your organization is using JIRA, an issue could represent a software bug, a project task, a helpdesk ticket, a leave request form, etc.
By default `jira issue` or `jira i` shows all the open issues assigned to you.
{{< terminal >}}
jira issue [options]
{{< /terminal >}}
##### Commands
Description
Command
Create a new issue
create
##### Options
Description
Option
Alias
Filter issues by project
--project <project key>
-p <project key>
Filter issues by user name
--user <user name>
-u <user name>
Filter issues by release
--release <release name>
-r <release name>
================================================
FILE: docs/content/home/projects.md
================================================
---
title: "Projects"
headless: true
weight: 8
active: true
---
Access to JIRA projects data, go [here](https://confluence.atlassian.com/adminjiraserver/defining-a-project-938847066.html) if you want to know more about what projects are.
#### List all projects
The `jira project` command allows you to list all your JIRA projects, you can also use its alias `jira p`
{{< terminal >}}
jira project
{{< /terminal >}}
#### Example output
{{< terminal >}}
Key Name
EP Example Project
AW Awesome Project
HD Help Desk
{{< /terminal >}}
================================================
FILE: docs/content/home/users.md
================================================
---
title: "Users"
headless: true
weight: 9
active: true
---
Access to your JIRA users data, the `user` command allows you to list all your JIRA users, you can also use its alias `u`.
{{< terminal >}}
jira user
{{< /terminal >}}
================================================
FILE: docs/content/home/versions-create.md
================================================
---
title: "Creating Versions"
headless: true
weight: 11
active: true
---
You can also create versions by passing the number version you want to create as parameter like this:
{{< terminal >}}
jira version [options]
{{< /terminal >}}
#### Options
You can set the description, start and release date by passing the following options:
Description
Option
Example
Version detail
--description <project key> <description>
jira version PK -d "Description"
Start date
--start-date <date in "d/MMM/yy" format>
jira version PK -s "13/Aug/2017"
Release date
--release-date <date in "d/MMM/yy" format>
jira version PK -r "13/Aug/2017"
================================================
FILE: docs/content/home/versions.md
================================================
---
title: "Versions"
headless: true
weight: 10
active: true
---
List your project versions by passing the project key after the `version` command.
{{< terminal >}}
jira version
{{< /terminal >}}
#### Example output
{{< terminal >}}
Name Status Release Date
v1.0.0 Released 2017-03-14
v1.3.0 Released 2018-08-01
v2.0.0 Unreleased
{{< /terminal >}}
================================================
FILE: docs/layouts/_default/home.html
================================================
{{ partial "head" . }}
{{ partial "navbar" . }}
{{ partial "sidebar" . }}
{{ $page := "" }}
{{ if .IsHome }}
{{ $page = "/home" }}
{{ else }}
{{ $page = .File.Path }}
{{ end }}
{{ $headless_bundle := site.GetPage $page }}
{{/* Load page sections */}}
{{ range $index, $st := where ( $headless_bundle.Resources.ByType "page" ) ".Params.active" "!=" false }}
{{ $hash_id := $st.File.ContentBaseName }}
{{ $css_classes := $st.Params.css_class | default "" }}
{{ with $st.Params.title }}
{{ if eq $st.Params.weight 1 }}
{{ $st.Params.title }}
{{ else }}
{{ $st.Params.title }}
{{ end }}
{{ end }}
{{ $st.Content }}
{{ end }}
{{ partial "footer" . }}
{{ partial "footer-scripts" . }}
================================================
FILE: docs/layouts/partials/footer-scripts.html
================================================
================================================
FILE: docs/layouts/partials/footer.html
================================================
================================================
FILE: docs/layouts/partials/head.html
================================================
JIRA CLI - Documentation
================================================
FILE: docs/layouts/partials/navbar.html
================================================
================================================
FILE: docs/layouts/partials/sidebar.html
================================================
================================================
FILE: docs/layouts/shortcodes/terminal.html
================================================
================================================
FILE: docs/layouts/shortcodes/text-muted.html
================================================
{{ .Get 0 }}
================================================
FILE: docs/static/css/app.css
================================================
/*!
* jira-cli-documentation v0.0.1 (http://jiracl.com)
* Copyright 2019 Foxy Themes all rights reserved
*/
/*Paths*/
/*General colors palette*/
/*!
* Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com)
* Copyright 2011-2017 The Bootstrap Authors
* Copyright 2011-2017 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
html {
font-family: sans-serif;
line-height: 1.15;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%; }
body {
margin: 0; }
article,
aside,
footer,
header,
nav,
section {
display: block; }
h1 {
font-size: 2em;
margin: 0.67em 0; }
figcaption,
figure,
main {
display: block; }
figure {
margin: 1em 40px; }
hr {
box-sizing: content-box;
height: 0;
overflow: visible; }
pre {
font-family: monospace, monospace;
font-size: 1em; }
a {
background-color: transparent;
-webkit-text-decoration-skip: objects; }
a:active,
a:hover {
outline-width: 0; }
abbr[title] {
border-bottom: none;
text-decoration: underline;
text-decoration: underline dotted; }
b,
strong {
font-weight: inherit; }
b,
strong {
font-weight: bolder; }
code,
kbd,
samp {
font-family: monospace, monospace;
font-size: 1em; }
dfn {
font-style: italic; }
mark {
background-color: #ff0;
color: #000; }
small {
font-size: 80%; }
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline; }
sub {
bottom: -0.25em; }
sup {
top: -0.5em; }
audio,
video {
display: inline-block; }
audio:not([controls]) {
display: none;
height: 0; }
img {
border-style: none; }
svg:not(:root) {
overflow: hidden; }
button,
input,
optgroup,
select,
textarea {
font-family: sans-serif;
font-size: 100%;
line-height: 1.15;
margin: 0; }
button,
input {
overflow: visible; }
button,
select {
text-transform: none; }
button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button; }
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0; }
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText; }
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em; }
legend {
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal; }
progress {
display: inline-block;
vertical-align: baseline; }
textarea {
overflow: auto; }
[type="checkbox"],
[type="radio"] {
box-sizing: border-box;
padding: 0; }
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto; }
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px; }
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none; }
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit; }
details,
menu {
display: block; }
summary {
display: list-item; }
canvas {
display: inline-block; }
template {
display: none; }
[hidden] {
display: none; }
@media print {
*,
*::before,
*::after,
p::first-letter,
div::first-letter,
blockquote::first-letter,
li::first-letter,
p::first-line,
div::first-line,
blockquote::first-line,
li::first-line {
text-shadow: none !important;
box-shadow: none !important; }
a,
a:visited {
text-decoration: underline; }
abbr[title]::after {
content: " (" attr(title) ")"; }
pre {
white-space: pre-wrap !important; }
pre,
blockquote {
border: 1px solid #999;
page-break-inside: avoid; }
thead {
display: table-header-group; }
tr,
img {
page-break-inside: avoid; }
p,
h2,
h3 {
orphans: 3;
widows: 3; }
h2,
h3 {
page-break-after: avoid; }
.navbar {
display: none; }
.badge {
border: 1px solid #000; }
.table {
border-collapse: collapse !important; }
.table td,
.table th {
background-color: #fff !important; }
.table-bordered th,
.table-bordered td {
border: 1px solid #ddd !important; } }
html {
box-sizing: border-box; }
*,
*::before,
*::after {
box-sizing: inherit; }
@-ms-viewport {
width: device-width; }
html {
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: transparent; }
body {
font-family: "aktiv-grotesk", sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-size: 1rem;
font-weight: normal;
line-height: 1.5;
color: #5c5c5c;
background-color: #fff; }
[tabindex="-1"]:focus {
outline: none !important; }
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: .5rem; }
p {
margin-top: 0;
margin-bottom: 1rem; }
abbr[title],
abbr[data-original-title] {
cursor: help; }
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit; }
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem; }
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0; }
dt {
font-weight: 700; }
dd {
margin-bottom: .5rem;
margin-left: 0; }
blockquote {
margin: 0 0 1rem; }
a {
color: #ff344b;
text-decoration: none; }
a:focus, a:hover {
color: #e7001a;
text-decoration: underline; }
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none; }
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
color: inherit;
text-decoration: none; }
a:not([href]):not([tabindex]):focus {
outline: 0; }
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto; }
figure {
margin: 0 0 1rem; }
img {
vertical-align: middle; }
[role="button"] {
cursor: pointer; }
a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
touch-action: manipulation; }
table {
border-collapse: collapse;
background-color: transparent; }
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #b3b9bd;
text-align: left;
caption-side: bottom; }
th {
text-align: left; }
label {
display: inline-block;
margin-bottom: .5rem; }
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color; }
input,
button,
select,
textarea {
line-height: inherit; }
input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
cursor: not-allowed; }
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox; }
textarea {
resize: vertical; }
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0; }
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit; }
input[type="search"] {
-webkit-appearance: none; }
output {
display: inline-block; }
[hidden] {
display: none !important; }
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
margin-bottom: 0.5rem;
font-family: inherit;
font-weight: 500;
line-height: 1.1;
color: inherit; }
h1, .h1 {
font-size: 2.625rem; }
h2, .h2 {
font-size: 2.1875rem; }
h3, .h3 {
font-size: 1.875rem; }
h4, .h4 {
font-size: 1.5rem; }
h5, .h5 {
font-size: 1.125rem; }
h6, .h6 {
font-size: 1rem; }
.lead {
font-size: 1.25rem;
font-weight: 300; }
.display-1 {
font-size: 6rem;
font-weight: 300;
line-height: 1.1; }
.display-2 {
font-size: 5.5rem;
font-weight: 300;
line-height: 1.1; }
.display-3 {
font-size: 4.5rem;
font-weight: 300;
line-height: 1.1; }
.display-4 {
font-size: 3.5rem;
font-weight: 300;
line-height: 1.1; }
hr {
margin-top: 1rem;
margin-bottom: 1rem;
border: 0;
border-top: 1px solid rgba(0, 0, 0, 0.1); }
small,
.small {
font-size: 80%;
font-weight: normal; }
mark,
.mark {
padding: 0.2em;
background-color: #fcf8e3; }
.list-unstyled {
padding-left: 0;
list-style: none; }
.list-inline {
padding-left: 0;
list-style: none; }
.list-inline-item {
display: inline-block; }
.list-inline-item:not(:last-child) {
margin-right: 5px; }
.initialism {
font-size: 90%;
text-transform: uppercase; }
.blockquote {
padding: 0.5rem 1rem;
margin-bottom: 1rem;
font-size: 1.25rem;
border-left: 0.25rem solid #eceeef; }
.blockquote-footer {
display: block;
font-size: 80%;
color: #636c72; }
.blockquote-footer::before {
content: "\2014 \00A0"; }
.blockquote-reverse {
padding-right: 1rem;
padding-left: 0;
text-align: right;
border-right: 0.25rem solid #eceeef;
border-left: 0; }
.blockquote-reverse .blockquote-footer::before {
content: ""; }
.blockquote-reverse .blockquote-footer::after {
content: "\00A0 \2014"; }
.img-fluid {
max-width: 100%;
height: auto; }
.img-thumbnail {
padding: 0.25rem;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 0.25rem;
transition: all 0.2s ease-in-out;
max-width: 100%;
height: auto; }
.figure {
display: inline-block; }
.figure-img {
margin-bottom: 0.5rem;
line-height: 1; }
.figure-caption {
font-size: 90%;
color: #636c72; }
kbd,
pre,
samp {
font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
code {
padding: 0.2rem 0.4rem;
font-size: 90%;
color: #ff6778;
background-color: #f7f7f9;
border-radius: 0.25rem; }
a > code {
padding: 0;
color: inherit;
background-color: inherit; }
kbd {
padding: 0.2rem 0.4rem;
font-size: 90%;
color: #fff;
background-color: #292b2c;
border-radius: 0.2rem; }
kbd kbd {
padding: 0;
font-size: 100%;
font-weight: 700; }
pre {
display: block;
margin-top: 0;
margin-bottom: 1rem;
font-size: 90%;
color: #292b2c; }
pre code {
padding: 0;
font-size: inherit;
color: inherit;
background-color: transparent;
border-radius: 0; }
.pre-scrollable {
max-height: 340px;
overflow-y: scroll; }
.container {
position: relative;
margin-left: auto;
margin-right: auto;
padding-right: 15px;
padding-left: 15px; }
@media (min-width: 576px) {
.container {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 768px) {
.container {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 992px) {
.container {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 1200px) {
.container {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 576px) {
.container {
width: 540px;
max-width: 100%; } }
@media (min-width: 768px) {
.container {
width: 720px;
max-width: 100%; } }
@media (min-width: 992px) {
.container {
width: 960px;
max-width: 100%; } }
@media (min-width: 1200px) {
.container {
width: 1140px;
max-width: 100%; } }
.container-fluid {
position: relative;
margin-left: auto;
margin-right: auto;
padding-right: 15px;
padding-left: 15px; }
@media (min-width: 576px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 768px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 992px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 1200px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px; } }
.row {
display: flex;
flex-wrap: wrap;
margin-right: -15px;
margin-left: -15px; }
@media (min-width: 576px) {
.row {
margin-right: -15px;
margin-left: -15px; } }
@media (min-width: 768px) {
.row {
margin-right: -15px;
margin-left: -15px; } }
@media (min-width: 992px) {
.row {
margin-right: -15px;
margin-left: -15px; } }
@media (min-width: 1200px) {
.row {
margin-right: -15px;
margin-left: -15px; } }
.no-gutters {
margin-right: 0;
margin-left: 0; }
.no-gutters > .col,
.no-gutters > [class*="col-"] {
padding-right: 0;
padding-left: 0; }
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
position: relative;
width: 100%;
min-height: 1px;
padding-right: 15px;
padding-left: 15px; }
@media (min-width: 576px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 768px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 992px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px; } }
@media (min-width: 1200px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px; } }
.col {
flex-basis: 0;
flex-grow: 1;
max-width: 100%; }
.col-auto {
flex: 0 0 auto;
width: auto; }
.col-1 {
flex: 0 0 8.3333333333%;
max-width: 8.3333333333%; }
.col-2 {
flex: 0 0 16.6666666667%;
max-width: 16.6666666667%; }
.col-3 {
flex: 0 0 25%;
max-width: 25%; }
.col-4 {
flex: 0 0 33.3333333333%;
max-width: 33.3333333333%; }
.col-5 {
flex: 0 0 41.6666666667%;
max-width: 41.6666666667%; }
.col-6 {
flex: 0 0 50%;
max-width: 50%; }
.col-7 {
flex: 0 0 58.3333333333%;
max-width: 58.3333333333%; }
.col-8 {
flex: 0 0 66.6666666667%;
max-width: 66.6666666667%; }
.col-9 {
flex: 0 0 75%;
max-width: 75%; }
.col-10 {
flex: 0 0 83.3333333333%;
max-width: 83.3333333333%; }
.col-11 {
flex: 0 0 91.6666666667%;
max-width: 91.6666666667%; }
.col-12 {
flex: 0 0 100%;
max-width: 100%; }
.pull-0 {
right: auto; }
.pull-1 {
right: 8.3333333333%; }
.pull-2 {
right: 16.6666666667%; }
.pull-3 {
right: 25%; }
.pull-4 {
right: 33.3333333333%; }
.pull-5 {
right: 41.6666666667%; }
.pull-6 {
right: 50%; }
.pull-7 {
right: 58.3333333333%; }
.pull-8 {
right: 66.6666666667%; }
.pull-9 {
right: 75%; }
.pull-10 {
right: 83.3333333333%; }
.pull-11 {
right: 91.6666666667%; }
.pull-12 {
right: 100%; }
.push-0 {
left: auto; }
.push-1 {
left: 8.3333333333%; }
.push-2 {
left: 16.6666666667%; }
.push-3 {
left: 25%; }
.push-4 {
left: 33.3333333333%; }
.push-5 {
left: 41.6666666667%; }
.push-6 {
left: 50%; }
.push-7 {
left: 58.3333333333%; }
.push-8 {
left: 66.6666666667%; }
.push-9 {
left: 75%; }
.push-10 {
left: 83.3333333333%; }
.push-11 {
left: 91.6666666667%; }
.push-12 {
left: 100%; }
.offset-1 {
margin-left: 8.3333333333%; }
.offset-2 {
margin-left: 16.6666666667%; }
.offset-3 {
margin-left: 25%; }
.offset-4 {
margin-left: 33.3333333333%; }
.offset-5 {
margin-left: 41.6666666667%; }
.offset-6 {
margin-left: 50%; }
.offset-7 {
margin-left: 58.3333333333%; }
.offset-8 {
margin-left: 66.6666666667%; }
.offset-9 {
margin-left: 75%; }
.offset-10 {
margin-left: 83.3333333333%; }
.offset-11 {
margin-left: 91.6666666667%; }
@media (min-width: 576px) {
.col-sm {
flex-basis: 0;
flex-grow: 1;
max-width: 100%; }
.col-sm-auto {
flex: 0 0 auto;
width: auto; }
.col-sm-1 {
flex: 0 0 8.3333333333%;
max-width: 8.3333333333%; }
.col-sm-2 {
flex: 0 0 16.6666666667%;
max-width: 16.6666666667%; }
.col-sm-3 {
flex: 0 0 25%;
max-width: 25%; }
.col-sm-4 {
flex: 0 0 33.3333333333%;
max-width: 33.3333333333%; }
.col-sm-5 {
flex: 0 0 41.6666666667%;
max-width: 41.6666666667%; }
.col-sm-6 {
flex: 0 0 50%;
max-width: 50%; }
.col-sm-7 {
flex: 0 0 58.3333333333%;
max-width: 58.3333333333%; }
.col-sm-8 {
flex: 0 0 66.6666666667%;
max-width: 66.6666666667%; }
.col-sm-9 {
flex: 0 0 75%;
max-width: 75%; }
.col-sm-10 {
flex: 0 0 83.3333333333%;
max-width: 83.3333333333%; }
.col-sm-11 {
flex: 0 0 91.6666666667%;
max-width: 91.6666666667%; }
.col-sm-12 {
flex: 0 0 100%;
max-width: 100%; }
.pull-sm-0 {
right: auto; }
.pull-sm-1 {
right: 8.3333333333%; }
.pull-sm-2 {
right: 16.6666666667%; }
.pull-sm-3 {
right: 25%; }
.pull-sm-4 {
right: 33.3333333333%; }
.pull-sm-5 {
right: 41.6666666667%; }
.pull-sm-6 {
right: 50%; }
.pull-sm-7 {
right: 58.3333333333%; }
.pull-sm-8 {
right: 66.6666666667%; }
.pull-sm-9 {
right: 75%; }
.pull-sm-10 {
right: 83.3333333333%; }
.pull-sm-11 {
right: 91.6666666667%; }
.pull-sm-12 {
right: 100%; }
.push-sm-0 {
left: auto; }
.push-sm-1 {
left: 8.3333333333%; }
.push-sm-2 {
left: 16.6666666667%; }
.push-sm-3 {
left: 25%; }
.push-sm-4 {
left: 33.3333333333%; }
.push-sm-5 {
left: 41.6666666667%; }
.push-sm-6 {
left: 50%; }
.push-sm-7 {
left: 58.3333333333%; }
.push-sm-8 {
left: 66.6666666667%; }
.push-sm-9 {
left: 75%; }
.push-sm-10 {
left: 83.3333333333%; }
.push-sm-11 {
left: 91.6666666667%; }
.push-sm-12 {
left: 100%; }
.offset-sm-0 {
margin-left: 0%; }
.offset-sm-1 {
margin-left: 8.3333333333%; }
.offset-sm-2 {
margin-left: 16.6666666667%; }
.offset-sm-3 {
margin-left: 25%; }
.offset-sm-4 {
margin-left: 33.3333333333%; }
.offset-sm-5 {
margin-left: 41.6666666667%; }
.offset-sm-6 {
margin-left: 50%; }
.offset-sm-7 {
margin-left: 58.3333333333%; }
.offset-sm-8 {
margin-left: 66.6666666667%; }
.offset-sm-9 {
margin-left: 75%; }
.offset-sm-10 {
margin-left: 83.3333333333%; }
.offset-sm-11 {
margin-left: 91.6666666667%; } }
@media (min-width: 768px) {
.col-md {
flex-basis: 0;
flex-grow: 1;
max-width: 100%; }
.col-md-auto {
flex: 0 0 auto;
width: auto; }
.col-md-1 {
flex: 0 0 8.3333333333%;
max-width: 8.3333333333%; }
.col-md-2 {
flex: 0 0 16.6666666667%;
max-width: 16.6666666667%; }
.col-md-3 {
flex: 0 0 25%;
max-width: 25%; }
.col-md-4 {
flex: 0 0 33.3333333333%;
max-width: 33.3333333333%; }
.col-md-5 {
flex: 0 0 41.6666666667%;
max-width: 41.6666666667%; }
.col-md-6 {
flex: 0 0 50%;
max-width: 50%; }
.col-md-7 {
flex: 0 0 58.3333333333%;
max-width: 58.3333333333%; }
.col-md-8 {
flex: 0 0 66.6666666667%;
max-width: 66.6666666667%; }
.col-md-9 {
flex: 0 0 75%;
max-width: 75%; }
.col-md-10 {
flex: 0 0 83.3333333333%;
max-width: 83.3333333333%; }
.col-md-11 {
flex: 0 0 91.6666666667%;
max-width: 91.6666666667%; }
.col-md-12 {
flex: 0 0 100%;
max-width: 100%; }
.pull-md-0 {
right: auto; }
.pull-md-1 {
right: 8.3333333333%; }
.pull-md-2 {
right: 16.6666666667%; }
.pull-md-3 {
right: 25%; }
.pull-md-4 {
right: 33.3333333333%; }
.pull-md-5 {
right: 41.6666666667%; }
.pull-md-6 {
right: 50%; }
.pull-md-7 {
right: 58.3333333333%; }
.pull-md-8 {
right: 66.6666666667%; }
.pull-md-9 {
right: 75%; }
.pull-md-10 {
right: 83.3333333333%; }
.pull-md-11 {
right: 91.6666666667%; }
.pull-md-12 {
right: 100%; }
.push-md-0 {
left: auto; }
.push-md-1 {
left: 8.3333333333%; }
.push-md-2 {
left: 16.6666666667%; }
.push-md-3 {
left: 25%; }
.push-md-4 {
left: 33.3333333333%; }
.push-md-5 {
left: 41.6666666667%; }
.push-md-6 {
left: 50%; }
.push-md-7 {
left: 58.3333333333%; }
.push-md-8 {
left: 66.6666666667%; }
.push-md-9 {
left: 75%; }
.push-md-10 {
left: 83.3333333333%; }
.push-md-11 {
left: 91.6666666667%; }
.push-md-12 {
left: 100%; }
.offset-md-0 {
margin-left: 0%; }
.offset-md-1 {
margin-left: 8.3333333333%; }
.offset-md-2 {
margin-left: 16.6666666667%; }
.offset-md-3 {
margin-left: 25%; }
.offset-md-4 {
margin-left: 33.3333333333%; }
.offset-md-5 {
margin-left: 41.6666666667%; }
.offset-md-6 {
margin-left: 50%; }
.offset-md-7 {
margin-left: 58.3333333333%; }
.offset-md-8 {
margin-left: 66.6666666667%; }
.offset-md-9 {
margin-left: 75%; }
.offset-md-10 {
margin-left: 83.3333333333%; }
.offset-md-11 {
margin-left: 91.6666666667%; } }
@media (min-width: 992px) {
.col-lg {
flex-basis: 0;
flex-grow: 1;
max-width: 100%; }
.col-lg-auto {
flex: 0 0 auto;
width: auto; }
.col-lg-1 {
flex: 0 0 8.3333333333%;
max-width: 8.3333333333%; }
.col-lg-2 {
flex: 0 0 16.6666666667%;
max-width: 16.6666666667%; }
.col-lg-3 {
flex: 0 0 25%;
max-width: 25%; }
.col-lg-4 {
flex: 0 0 33.3333333333%;
max-width: 33.3333333333%; }
.col-lg-5 {
flex: 0 0 41.6666666667%;
max-width: 41.6666666667%; }
.col-lg-6 {
flex: 0 0 50%;
max-width: 50%; }
.col-lg-7 {
flex: 0 0 58.3333333333%;
max-width: 58.3333333333%; }
.col-lg-8 {
flex: 0 0 66.6666666667%;
max-width: 66.6666666667%; }
.col-lg-9 {
flex: 0 0 75%;
max-width: 75%; }
.col-lg-10 {
flex: 0 0 83.3333333333%;
max-width: 83.3333333333%; }
.col-lg-11 {
flex: 0 0 91.6666666667%;
max-width: 91.6666666667%; }
.col-lg-12 {
flex: 0 0 100%;
max-width: 100%; }
.pull-lg-0 {
right: auto; }
.pull-lg-1 {
right: 8.3333333333%; }
.pull-lg-2 {
right: 16.6666666667%; }
.pull-lg-3 {
right: 25%; }
.pull-lg-4 {
right: 33.3333333333%; }
.pull-lg-5 {
right: 41.6666666667%; }
.pull-lg-6 {
right: 50%; }
.pull-lg-7 {
right: 58.3333333333%; }
.pull-lg-8 {
right: 66.6666666667%; }
.pull-lg-9 {
right: 75%; }
.pull-lg-10 {
right: 83.3333333333%; }
.pull-lg-11 {
right: 91.6666666667%; }
.pull-lg-12 {
right: 100%; }
.push-lg-0 {
left: auto; }
.push-lg-1 {
left: 8.3333333333%; }
.push-lg-2 {
left: 16.6666666667%; }
.push-lg-3 {
left: 25%; }
.push-lg-4 {
left: 33.3333333333%; }
.push-lg-5 {
left: 41.6666666667%; }
.push-lg-6 {
left: 50%; }
.push-lg-7 {
left: 58.3333333333%; }
.push-lg-8 {
left: 66.6666666667%; }
.push-lg-9 {
left: 75%; }
.push-lg-10 {
left: 83.3333333333%; }
.push-lg-11 {
left: 91.6666666667%; }
.push-lg-12 {
left: 100%; }
.offset-lg-0 {
margin-left: 0%; }
.offset-lg-1 {
margin-left: 8.3333333333%; }
.offset-lg-2 {
margin-left: 16.6666666667%; }
.offset-lg-3 {
margin-left: 25%; }
.offset-lg-4 {
margin-left: 33.3333333333%; }
.offset-lg-5 {
margin-left: 41.6666666667%; }
.offset-lg-6 {
margin-left: 50%; }
.offset-lg-7 {
margin-left: 58.3333333333%; }
.offset-lg-8 {
margin-left: 66.6666666667%; }
.offset-lg-9 {
margin-left: 75%; }
.offset-lg-10 {
margin-left: 83.3333333333%; }
.offset-lg-11 {
margin-left: 91.6666666667%; } }
@media (min-width: 1200px) {
.col-xl {
flex-basis: 0;
flex-grow: 1;
max-width: 100%; }
.col-xl-auto {
flex: 0 0 auto;
width: auto; }
.col-xl-1 {
flex: 0 0 8.3333333333%;
max-width: 8.3333333333%; }
.col-xl-2 {
flex: 0 0 16.6666666667%;
max-width: 16.6666666667%; }
.col-xl-3 {
flex: 0 0 25%;
max-width: 25%; }
.col-xl-4 {
flex: 0 0 33.3333333333%;
max-width: 33.3333333333%; }
.col-xl-5 {
flex: 0 0 41.6666666667%;
max-width: 41.6666666667%; }
.col-xl-6 {
flex: 0 0 50%;
max-width: 50%; }
.col-xl-7 {
flex: 0 0 58.3333333333%;
max-width: 58.3333333333%; }
.col-xl-8 {
flex: 0 0 66.6666666667%;
max-width: 66.6666666667%; }
.col-xl-9 {
flex: 0 0 75%;
max-width: 75%; }
.col-xl-10 {
flex: 0 0 83.3333333333%;
max-width: 83.3333333333%; }
.col-xl-11 {
flex: 0 0 91.6666666667%;
max-width: 91.6666666667%; }
.col-xl-12 {
flex: 0 0 100%;
max-width: 100%; }
.pull-xl-0 {
right: auto; }
.pull-xl-1 {
right: 8.3333333333%; }
.pull-xl-2 {
right: 16.6666666667%; }
.pull-xl-3 {
right: 25%; }
.pull-xl-4 {
right: 33.3333333333%; }
.pull-xl-5 {
right: 41.6666666667%; }
.pull-xl-6 {
right: 50%; }
.pull-xl-7 {
right: 58.3333333333%; }
.pull-xl-8 {
right: 66.6666666667%; }
.pull-xl-9 {
right: 75%; }
.pull-xl-10 {
right: 83.3333333333%; }
.pull-xl-11 {
right: 91.6666666667%; }
.pull-xl-12 {
right: 100%; }
.push-xl-0 {
left: auto; }
.push-xl-1 {
left: 8.3333333333%; }
.push-xl-2 {
left: 16.6666666667%; }
.push-xl-3 {
left: 25%; }
.push-xl-4 {
left: 33.3333333333%; }
.push-xl-5 {
left: 41.6666666667%; }
.push-xl-6 {
left: 50%; }
.push-xl-7 {
left: 58.3333333333%; }
.push-xl-8 {
left: 66.6666666667%; }
.push-xl-9 {
left: 75%; }
.push-xl-10 {
left: 83.3333333333%; }
.push-xl-11 {
left: 91.6666666667%; }
.push-xl-12 {
left: 100%; }
.offset-xl-0 {
margin-left: 0%; }
.offset-xl-1 {
margin-left: 8.3333333333%; }
.offset-xl-2 {
margin-left: 16.6666666667%; }
.offset-xl-3 {
margin-left: 25%; }
.offset-xl-4 {
margin-left: 33.3333333333%; }
.offset-xl-5 {
margin-left: 41.6666666667%; }
.offset-xl-6 {
margin-left: 50%; }
.offset-xl-7 {
margin-left: 58.3333333333%; }
.offset-xl-8 {
margin-left: 66.6666666667%; }
.offset-xl-9 {
margin-left: 75%; }
.offset-xl-10 {
margin-left: 83.3333333333%; }
.offset-xl-11 {
margin-left: 91.6666666667%; } }
.table {
width: 100%;
max-width: 100%;
margin-bottom: 1rem; }
.table th,
.table td {
padding: 0.75rem;
vertical-align: top;
border-top: 1px solid #eceeef; }
.table thead th {
vertical-align: bottom;
border-bottom: 2px solid #eceeef; }
.table tbody + tbody {
border-top: 2px solid #eceeef; }
.table .table {
background-color: #fff; }
.table-sm th,
.table-sm td {
padding: 0.3rem; }
.table-bordered {
border: 1px solid #eceeef; }
.table-bordered th,
.table-bordered td {
border: 1px solid #eceeef; }
.table-bordered thead th,
.table-bordered thead td {
border-bottom-width: 2px; }
.table-striped tbody tr:nth-of-type(odd) {
background-color: rgba(0, 0, 0, 0.05); }
.table-hover tbody tr:hover {
background-color: rgba(0, 0, 0, 0.075); }
.table-active,
.table-active > th,
.table-active > td {
background-color: rgba(0, 0, 0, 0.075); }
.table-hover .table-active:hover {
background-color: rgba(0, 0, 0, 0.075); }
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
background-color: rgba(0, 0, 0, 0.075); }
.table-success,
.table-success > th,
.table-success > td {
background-color: #dff0d8; }
.table-hover .table-success:hover {
background-color: #d0e9c6; }
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
background-color: #d0e9c6; }
.table-info,
.table-info > th,
.table-info > td {
background-color: #d9edf7; }
.table-hover .table-info:hover {
background-color: #c4e3f3; }
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
background-color: #c4e3f3; }
.table-warning,
.table-warning > th,
.table-warning > td {
background-color: #fcf8e3; }
.table-hover .table-warning:hover {
background-color: #faf2cc; }
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
background-color: #faf2cc; }
.table-danger,
.table-danger > th,
.table-danger > td {
background-color: #f2dede; }
.table-hover .table-danger:hover {
background-color: #ebcccc; }
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
background-color: #ebcccc; }
.thead-inverse th {
color: #fff;
background-color: #292b2c; }
.thead-default th {
color: #464a4c;
background-color: #eceeef; }
.table-inverse {
color: #fff;
background-color: #292b2c; }
.table-inverse th,
.table-inverse td,
.table-inverse thead th {
border-color: #fff; }
.table-inverse.table-bordered {
border: 0; }
.table-responsive {
display: block;
width: 100%;
overflow-x: auto;
-ms-overflow-style: -ms-autohiding-scrollbar; }
.table-responsive.table-bordered {
border: 0; }
.form-control {
display: block;
width: 100%;
padding: 0.5rem 0.75rem;
font-size: 1rem;
line-height: 1.25;
color: #464a4c;
background-color: #fff;
background-image: none;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
.form-control::-ms-expand {
background-color: transparent;
border: 0; }
.form-control:focus {
color: #464a4c;
background-color: #fff;
border-color: #7400b5;
outline: none; }
.form-control::placeholder {
color: #636c72;
opacity: 1; }
.form-control:disabled, .form-control[readonly] {
background-color: #eceeef;
opacity: 1; }
.form-control:disabled {
cursor: not-allowed; }
select.form-control:not([size]):not([multiple]) {
height: calc(2.25rem + 2px); }
select.form-control:focus::-ms-value {
color: #464a4c;
background-color: #fff; }
.form-control-file,
.form-control-range {
display: block; }
.col-form-label {
padding-top: calc(0.5rem - 1px * 2);
padding-bottom: calc(0.5rem - 1px * 2);
margin-bottom: 0; }
.col-form-label-lg {
padding-top: calc(0.75rem - 1px * 2);
padding-bottom: calc(0.75rem - 1px * 2);
font-size: 1.25rem; }
.col-form-label-sm {
padding-top: calc(0.25rem - 1px * 2);
padding-bottom: calc(0.25rem - 1px * 2);
font-size: 0.875rem; }
.col-form-legend {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
margin-bottom: 0;
font-size: 1rem; }
.form-control-static {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
margin-bottom: 0;
line-height: 1.25;
border: solid transparent;
border-width: 1px 0; }
.form-control-static.form-control-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn, .form-control-static.form-control-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn {
padding-right: 0;
padding-left: 0; }
.form-control-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.2rem; }
select.form-control-sm:not([size]):not([multiple]), .input-group-sm > select.form-control:not([size]):not([multiple]),
.input-group-sm > select.input-group-addon:not([size]):not([multiple]),
.input-group-sm > .input-group-btn > select.btn:not([size]):not([multiple]) {
height: 1.8125rem; }
.form-control-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
border-radius: 0.3rem; }
select.form-control-lg:not([size]):not([multiple]), .input-group-lg > select.form-control:not([size]):not([multiple]),
.input-group-lg > select.input-group-addon:not([size]):not([multiple]),
.input-group-lg > .input-group-btn > select.btn:not([size]):not([multiple]) {
height: 3.1666666667rem; }
.form-group {
margin-bottom: 1rem; }
.form-text {
display: block;
margin-top: 0.25rem; }
.form-check {
position: relative;
display: block;
margin-bottom: 0.5rem; }
.form-check.disabled .form-check-label {
color: #b3b9bd;
cursor: not-allowed; }
.form-check-label {
padding-left: 1.25rem;
margin-bottom: 0;
cursor: pointer; }
.form-check-input {
position: absolute;
margin-top: 0.25rem;
margin-left: -1.25rem; }
.form-check-input:only-child {
position: static; }
.form-check-inline {
display: inline-block; }
.form-check-inline .form-check-label {
vertical-align: middle; }
.form-check-inline + .form-check-inline {
margin-left: 0.75rem; }
.form-control-feedback {
margin-top: 0.25rem; }
.form-control-success,
.form-control-warning,
.form-control-danger {
padding-right: 2.25rem;
background-repeat: no-repeat;
background-position: center right 0.5625rem;
background-size: 1.125rem 1.125rem; }
.has-success .form-control-feedback,
.has-success .form-control-label,
.has-success .col-form-label,
.has-success .form-check-label,
.has-success .custom-control {
color: #5cb85c; }
.has-success .form-control {
border-color: #5cb85c; }
.has-success .input-group-addon {
color: #5cb85c;
border-color: #5cb85c;
background-color: #eaf6ea; }
.has-success .form-control-success {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%235cb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E"); }
.has-warning .form-control-feedback,
.has-warning .form-control-label,
.has-warning .col-form-label,
.has-warning .form-check-label,
.has-warning .custom-control {
color: #f0ad4e; }
.has-warning .form-control {
border-color: #f0ad4e; }
.has-warning .input-group-addon {
color: #f0ad4e;
border-color: #f0ad4e;
background-color: white; }
.has-warning .form-control-warning {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23f0ad4e' d='M4.4 5.324h-.8v-2.46h.8zm0 1.42h-.8V5.89h.8zM3.76.63L.04 7.075c-.115.2.016.425.26.426h7.397c.242 0 .372-.226.258-.426C6.726 4.924 5.47 2.79 4.253.63c-.113-.174-.39-.174-.494 0z'/%3E%3C/svg%3E"); }
.has-danger .form-control-feedback,
.has-danger .form-control-label,
.has-danger .col-form-label,
.has-danger .form-check-label,
.has-danger .custom-control {
color: #d9534f; }
.has-danger .form-control {
border-color: #d9534f; }
.has-danger .input-group-addon {
color: #d9534f;
border-color: #d9534f;
background-color: #fdf7f7; }
.has-danger .form-control-danger {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23d9534f' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E"); }
.form-inline {
display: flex;
flex-flow: row wrap;
align-items: center; }
.form-inline .form-check {
width: 100%; }
@media (min-width: 576px) {
.form-inline label {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 0; }
.form-inline .form-group {
display: flex;
flex: 0 0 auto;
flex-flow: row wrap;
align-items: center;
margin-bottom: 0; }
.form-inline .form-control {
display: inline-block;
width: auto;
vertical-align: middle; }
.form-inline .form-control-static {
display: inline-block; }
.form-inline .input-group {
width: auto; }
.form-inline .form-control-label {
margin-bottom: 0;
vertical-align: middle; }
.form-inline .form-check {
display: flex;
align-items: center;
justify-content: center;
width: auto;
margin-top: 0;
margin-bottom: 0; }
.form-inline .form-check-label {
padding-left: 0; }
.form-inline .form-check-input {
position: relative;
margin-top: 0;
margin-right: 0.25rem;
margin-left: 0; }
.form-inline .custom-control {
display: flex;
align-items: center;
justify-content: center;
padding-left: 0; }
.form-inline .custom-control-indicator {
position: static;
display: inline-block;
margin-right: 0.25rem;
vertical-align: text-bottom; }
.form-inline .has-feedback .form-control-feedback {
top: 0; } }
.btn {
display: inline-block;
font-weight: normal;
line-height: 1.25;
text-align: center;
white-space: nowrap;
vertical-align: middle;
user-select: none;
border: 1px solid transparent;
padding: 0.5rem 1rem;
font-size: 1rem;
border-radius: 0.25rem;
transition: all 0.2s ease-in-out; }
.btn:focus, .btn:hover {
text-decoration: none; }
.btn:focus, .btn.focus {
outline: 0;
box-shadow: 0 0 0 2px rgba(34, 0, 53, 0.25); }
.btn.disabled, .btn:disabled {
cursor: not-allowed;
opacity: .65; }
.btn:active, .btn.active {
background-image: none; }
a.btn.disabled,
fieldset[disabled] a.btn {
pointer-events: none; }
.btn-primary {
color: #fff;
background-color: #220035;
border-color: #220035; }
.btn-primary:hover {
color: #fff;
background-color: #010002;
border-color: black; }
.btn-primary:focus, .btn-primary.focus {
box-shadow: 0 0 0 2px rgba(34, 0, 53, 0.5); }
.btn-primary.disabled, .btn-primary:disabled {
background-color: #220035;
border-color: #220035; }
.btn-primary:active, .btn-primary.active,
.show > .btn-primary.dropdown-toggle {
color: #fff;
background-color: #010002;
background-image: none;
border-color: black; }
.btn-secondary {
color: #292b2c;
background-color: #fff;
border-color: #ccc; }
.btn-secondary:hover {
color: #292b2c;
background-color: #e6e5e5;
border-color: #adadad; }
.btn-secondary:focus, .btn-secondary.focus {
box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5); }
.btn-secondary.disabled, .btn-secondary:disabled {
background-color: #fff;
border-color: #ccc; }
.btn-secondary:active, .btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
color: #292b2c;
background-color: #e6e5e5;
background-image: none;
border-color: #adadad; }
.btn-info {
color: #fff;
background-color: #5bc0de;
border-color: #5bc0de; }
.btn-info:hover {
color: #fff;
background-color: #31b0d5;
border-color: #2aabd2; }
.btn-info:focus, .btn-info.focus {
box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5); }
.btn-info.disabled, .btn-info:disabled {
background-color: #5bc0de;
border-color: #5bc0de; }
.btn-info:active, .btn-info.active,
.show > .btn-info.dropdown-toggle {
color: #fff;
background-color: #31b0d5;
background-image: none;
border-color: #2aabd2; }
.btn-success {
color: #fff;
background-color: #5cb85c;
border-color: #5cb85c; }
.btn-success:hover {
color: #fff;
background-color: #449d44;
border-color: #419641; }
.btn-success:focus, .btn-success.focus {
box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5); }
.btn-success.disabled, .btn-success:disabled {
background-color: #5cb85c;
border-color: #5cb85c; }
.btn-success:active, .btn-success.active,
.show > .btn-success.dropdown-toggle {
color: #fff;
background-color: #449d44;
background-image: none;
border-color: #419641; }
.btn-warning {
color: #fff;
background-color: #f0ad4e;
border-color: #f0ad4e; }
.btn-warning:hover {
color: #fff;
background-color: #ec971f;
border-color: #eb9316; }
.btn-warning:focus, .btn-warning.focus {
box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5); }
.btn-warning.disabled, .btn-warning:disabled {
background-color: #f0ad4e;
border-color: #f0ad4e; }
.btn-warning:active, .btn-warning.active,
.show > .btn-warning.dropdown-toggle {
color: #fff;
background-color: #ec971f;
background-image: none;
border-color: #eb9316; }
.btn-danger {
color: #fff;
background-color: #d9534f;
border-color: #d9534f; }
.btn-danger:hover {
color: #fff;
background-color: #c9302c;
border-color: #c12e2a; }
.btn-danger:focus, .btn-danger.focus {
box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5); }
.btn-danger.disabled, .btn-danger:disabled {
background-color: #d9534f;
border-color: #d9534f; }
.btn-danger:active, .btn-danger.active,
.show > .btn-danger.dropdown-toggle {
color: #fff;
background-color: #c9302c;
background-image: none;
border-color: #c12e2a; }
.btn-outline-primary {
color: #220035;
background-image: none;
background-color: transparent;
border-color: #220035; }
.btn-outline-primary:hover {
color: #fff;
background-color: #220035;
border-color: #220035; }
.btn-outline-primary:focus, .btn-outline-primary.focus {
box-shadow: 0 0 0 2px rgba(34, 0, 53, 0.5); }
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
color: #220035;
background-color: transparent; }
.btn-outline-primary:active, .btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle {
color: #fff;
background-color: #220035;
border-color: #220035; }
.btn-outline-secondary {
color: #ccc;
background-image: none;
background-color: transparent;
border-color: #ccc; }
.btn-outline-secondary:hover {
color: #fff;
background-color: #ccc;
border-color: #ccc; }
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5); }
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
color: #ccc;
background-color: transparent; }
.btn-outline-secondary:active, .btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
color: #fff;
background-color: #ccc;
border-color: #ccc; }
.btn-outline-info {
color: #5bc0de;
background-image: none;
background-color: transparent;
border-color: #5bc0de; }
.btn-outline-info:hover {
color: #fff;
background-color: #5bc0de;
border-color: #5bc0de; }
.btn-outline-info:focus, .btn-outline-info.focus {
box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5); }
.btn-outline-info.disabled, .btn-outline-info:disabled {
color: #5bc0de;
background-color: transparent; }
.btn-outline-info:active, .btn-outline-info.active,
.show > .btn-outline-info.dropdown-toggle {
color: #fff;
background-color: #5bc0de;
border-color: #5bc0de; }
.btn-outline-success {
color: #5cb85c;
background-image: none;
background-color: transparent;
border-color: #5cb85c; }
.btn-outline-success:hover {
color: #fff;
background-color: #5cb85c;
border-color: #5cb85c; }
.btn-outline-success:focus, .btn-outline-success.focus {
box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5); }
.btn-outline-success.disabled, .btn-outline-success:disabled {
color: #5cb85c;
background-color: transparent; }
.btn-outline-success:active, .btn-outline-success.active,
.show > .btn-outline-success.dropdown-toggle {
color: #fff;
background-color: #5cb85c;
border-color: #5cb85c; }
.btn-outline-warning {
color: #f0ad4e;
background-image: none;
background-color: transparent;
border-color: #f0ad4e; }
.btn-outline-warning:hover {
color: #fff;
background-color: #f0ad4e;
border-color: #f0ad4e; }
.btn-outline-warning:focus, .btn-outline-warning.focus {
box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5); }
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
color: #f0ad4e;
background-color: transparent; }
.btn-outline-warning:active, .btn-outline-warning.active,
.show > .btn-outline-warning.dropdown-toggle {
color: #fff;
background-color: #f0ad4e;
border-color: #f0ad4e; }
.btn-outline-danger {
color: #d9534f;
background-image: none;
background-color: transparent;
border-color: #d9534f; }
.btn-outline-danger:hover {
color: #fff;
background-color: #d9534f;
border-color: #d9534f; }
.btn-outline-danger:focus, .btn-outline-danger.focus {
box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5); }
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
color: #d9534f;
background-color: transparent; }
.btn-outline-danger:active, .btn-outline-danger.active,
.show > .btn-outline-danger.dropdown-toggle {
color: #fff;
background-color: #d9534f;
border-color: #d9534f; }
.btn-link {
font-weight: normal;
color: #ff344b;
border-radius: 0; }
.btn-link, .btn-link:active, .btn-link.active, .btn-link:disabled {
background-color: transparent; }
.btn-link, .btn-link:focus, .btn-link:active {
border-color: transparent; }
.btn-link:hover {
border-color: transparent; }
.btn-link:focus, .btn-link:hover {
color: #e7001a;
text-decoration: underline;
background-color: transparent; }
.btn-link:disabled {
color: #636c72; }
.btn-link:disabled:focus, .btn-link:disabled:hover {
text-decoration: none; }
.btn-lg, .btn-group-lg > .btn {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
border-radius: 0.3rem; }
.btn-sm, .btn-group-sm > .btn {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.2rem; }
.btn-block {
display: block;
width: 100%; }
.btn-block + .btn-block {
margin-top: 0.5rem; }
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
width: 100%; }
.fade {
opacity: 0;
transition: opacity 0.15s linear; }
.fade.show {
opacity: 1; }
.collapse {
display: none; }
.collapse.show {
display: block; }
tr.collapse.show {
display: table-row; }
tbody.collapse.show {
display: table-row-group; }
.collapsing {
position: relative;
height: 0;
overflow: hidden;
transition: height 0.35s ease; }
.dropup,
.dropdown {
position: relative; }
.dropdown-toggle::after {
display: inline-block;
width: 0;
height: 0;
margin-left: 0.3em;
vertical-align: middle;
content: "";
border-top: 0.3em solid;
border-right: 0.3em solid transparent;
border-left: 0.3em solid transparent; }
.dropdown-toggle:focus {
outline: 0; }
.dropup .dropdown-toggle::after {
border-top: 0;
border-bottom: 0.3em solid; }
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
display: none;
float: left;
min-width: 10rem;
padding: 0.5rem 0;
margin: 0.125rem 0 0;
font-size: 1rem;
color: #5c5c5c;
text-align: left;
list-style: none;
background-color: #fff;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem; }
.dropdown-divider {
height: 1px;
margin: 0.5rem 0;
overflow: hidden;
background-color: #eceeef; }
.dropdown-item {
display: block;
width: 100%;
padding: 3px 1.5rem;
clear: both;
font-weight: normal;
color: #292b2c;
text-align: inherit;
white-space: nowrap;
background: none;
border: 0; }
.dropdown-item:focus, .dropdown-item:hover {
color: #1d1e1f;
text-decoration: none;
background-color: #f7f7f9; }
.dropdown-item.active, .dropdown-item:active {
color: #fff;
text-decoration: none;
background-color: #220035; }
.dropdown-item.disabled, .dropdown-item:disabled {
color: #636c72;
cursor: not-allowed;
background-color: transparent; }
.show > .dropdown-menu {
display: block; }
.show > a {
outline: 0; }
.dropdown-menu-right {
right: 0;
left: auto; }
.dropdown-menu-left {
right: auto;
left: 0; }
.dropdown-header {
display: block;
padding: 0.5rem 1.5rem;
margin-bottom: 0;
font-size: 0.875rem;
color: #636c72;
white-space: nowrap; }
.dropdown-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 990; }
.dropup .dropdown-menu {
top: auto;
bottom: 100%;
margin-bottom: 0.125rem; }
.btn-group,
.btn-group-vertical {
position: relative;
display: inline-flex;
vertical-align: middle; }
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
flex: 0 1 auto; }
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
z-index: 2; }
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
z-index: 2; }
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .btn-group + .btn-group {
margin-left: -1px; }
.btn-toolbar {
display: flex;
justify-content: flex-start; }
.btn-toolbar .input-group {
width: auto; }
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
border-radius: 0; }
.btn-group > .btn:first-child {
margin-left: 0; }
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
border-bottom-right-radius: 0;
border-top-right-radius: 0; }
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
border-bottom-left-radius: 0;
border-top-left-radius: 0; }
.btn-group > .btn-group {
float: left; }
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0; }
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
border-bottom-right-radius: 0;
border-top-right-radius: 0; }
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
border-bottom-left-radius: 0;
border-top-left-radius: 0; }
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
outline: 0; }
.btn + .dropdown-toggle-split {
padding-right: 0.75rem;
padding-left: 0.75rem; }
.btn + .dropdown-toggle-split::after {
margin-left: 0; }
.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
padding-right: 0.375rem;
padding-left: 0.375rem; }
.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
padding-right: 1.125rem;
padding-left: 1.125rem; }
.btn-group-vertical {
display: inline-flex;
flex-direction: column;
align-items: flex-start;
justify-content: center; }
.btn-group-vertical .btn,
.btn-group-vertical .btn-group {
width: 100%; }
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
margin-top: -1px;
margin-left: 0; }
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
border-radius: 0; }
.btn-group-vertical > .btn:first-child:not(:last-child) {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0; }
.btn-group-vertical > .btn:last-child:not(:first-child) {
border-top-right-radius: 0;
border-top-left-radius: 0; }
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0; }
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0; }
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
border-top-right-radius: 0;
border-top-left-radius: 0; }
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
position: absolute;
clip: rect(0, 0, 0, 0);
pointer-events: none; }
.input-group {
position: relative;
display: flex;
width: 100%; }
.input-group .form-control {
position: relative;
z-index: 2;
flex: 1 1 auto;
width: 1%;
margin-bottom: 0; }
.input-group .form-control:focus, .input-group .form-control:active, .input-group .form-control:hover {
z-index: 3; }
.input-group-addon,
.input-group-btn,
.input-group .form-control {
display: flex;
flex-direction: column;
justify-content: center; }
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
border-radius: 0; }
.input-group-addon,
.input-group-btn {
white-space: nowrap;
vertical-align: middle; }
.input-group-addon {
padding: 0.5rem 0.75rem;
margin-bottom: 0;
font-size: 1rem;
font-weight: normal;
line-height: 1.25;
color: #464a4c;
text-align: center;
background-color: #eceeef;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem; }
.input-group-addon.form-control-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.2rem; }
.input-group-addon.form-control-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
border-radius: 0.3rem; }
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
margin-top: 0; }
.input-group .form-control:not(:last-child),
.input-group-addon:not(:last-child),
.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group > .btn,
.input-group-btn:not(:last-child) > .dropdown-toggle,
.input-group-btn:not(:first-child) > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:not(:first-child) > .btn-group:not(:last-child) > .btn {
border-bottom-right-radius: 0;
border-top-right-radius: 0; }
.input-group-addon:not(:last-child) {
border-right: 0; }
.input-group .form-control:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group > .btn,
.input-group-btn:not(:first-child) > .dropdown-toggle,
.input-group-btn:not(:last-child) > .btn:not(:first-child),
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .btn {
border-bottom-left-radius: 0;
border-top-left-radius: 0; }
.form-control + .input-group-addon:not(:first-child) {
border-left: 0; }
.input-group-btn {
position: relative;
font-size: 0;
white-space: nowrap; }
.input-group-btn > .btn {
position: relative;
flex: 1; }
.input-group-btn > .btn + .btn {
margin-left: -1px; }
.input-group-btn > .btn:focus, .input-group-btn > .btn:active, .input-group-btn > .btn:hover {
z-index: 3; }
.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group {
margin-right: -1px; }
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group {
z-index: 2;
margin-left: -1px; }
.input-group-btn:not(:first-child) > .btn:focus, .input-group-btn:not(:first-child) > .btn:active, .input-group-btn:not(:first-child) > .btn:hover,
.input-group-btn:not(:first-child) > .btn-group:focus,
.input-group-btn:not(:first-child) > .btn-group:active,
.input-group-btn:not(:first-child) > .btn-group:hover {
z-index: 3; }
.custom-control {
position: relative;
display: inline-flex;
min-height: 1.5rem;
padding-left: 1.5rem;
margin-right: 1rem;
cursor: pointer; }
.custom-control-input {
position: absolute;
z-index: -1;
opacity: 0; }
.custom-control-input:checked ~ .custom-control-indicator {
color: #fff;
background-color: #220035; }
.custom-control-input:focus ~ .custom-control-indicator {
box-shadow: 0 0 0 1px #fff, 0 0 0 3px #220035; }
.custom-control-input:active ~ .custom-control-indicator {
color: #fff;
background-color: #9500e8; }
.custom-control-input:disabled ~ .custom-control-indicator {
cursor: not-allowed;
background-color: #eceeef; }
.custom-control-input:disabled ~ .custom-control-description {
color: #636c72;
cursor: not-allowed; }
.custom-control-indicator {
position: absolute;
top: 0.25rem;
left: 0;
display: block;
width: 1rem;
height: 1rem;
pointer-events: none;
user-select: none;
background-color: #ddd;
background-repeat: no-repeat;
background-position: center center;
background-size: 50% 50%; }
.custom-checkbox .custom-control-indicator {
border-radius: 0.25rem; }
.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"); }
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-indicator {
background-color: #220035;
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E"); }
.custom-radio .custom-control-indicator {
border-radius: 50%; }
.custom-radio .custom-control-input:checked ~ .custom-control-indicator {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E"); }
.custom-controls-stacked {
display: flex;
flex-direction: column; }
.custom-controls-stacked .custom-control {
margin-bottom: 0.25rem; }
.custom-controls-stacked .custom-control + .custom-control {
margin-left: 0; }
.custom-select {
display: inline-block;
max-width: 100%;
height: calc(2.25rem + 2px);
padding: 0.375rem 1.75rem 0.375rem 0.75rem;
line-height: 1.25;
color: #464a4c;
vertical-align: middle;
background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
background-size: 8px 10px;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
-moz-appearance: none;
-webkit-appearance: none; }
.custom-select:focus {
border-color: #7400b5;
outline: none; }
.custom-select:focus::-ms-value {
color: #464a4c;
background-color: #fff; }
.custom-select:disabled {
color: #636c72;
cursor: not-allowed;
background-color: #eceeef; }
.custom-select::-ms-expand {
opacity: 0; }
.custom-select-sm {
padding-top: 0.375rem;
padding-bottom: 0.375rem;
font-size: 75%; }
.custom-file {
position: relative;
display: inline-block;
max-width: 100%;
height: 2.5rem;
margin-bottom: 0;
cursor: pointer; }
.custom-file-input {
min-width: 14rem;
max-width: 100%;
height: 2.5rem;
margin: 0;
filter: alpha(opacity=0);
opacity: 0; }
.custom-file-control {
position: absolute;
top: 0;
right: 0;
left: 0;
z-index: 5;
height: 2.5rem;
padding: 0.5rem 1rem;
line-height: 1.5;
color: #464a4c;
pointer-events: none;
user-select: none;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem; }
.custom-file-control:lang(en)::after {
content: "Choose file..."; }
.custom-file-control::before {
position: absolute;
top: -1px;
right: -1px;
bottom: -1px;
z-index: 6;
display: block;
height: 2.5rem;
padding: 0.5rem 1rem;
line-height: 1.5;
color: #464a4c;
background-color: #eceeef;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0 0.25rem 0.25rem 0; }
.custom-file-control:lang(en)::before {
content: "Browse"; }
.nav {
display: flex;
padding-left: 0;
margin-bottom: 0;
list-style: none; }
.nav-link {
display: block;
padding: 0.5em 1em; }
.nav-link:focus, .nav-link:hover {
text-decoration: none; }
.nav-link.disabled {
color: #636c72;
cursor: not-allowed; }
.nav-tabs {
border-bottom: 1px solid #ddd; }
.nav-tabs .nav-item {
margin-bottom: -1px; }
.nav-tabs .nav-link {
border: 1px solid transparent;
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem; }
.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
border-color: #eceeef #eceeef #ddd; }
.nav-tabs .nav-link.disabled {
color: #636c72;
background-color: transparent;
border-color: transparent; }
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
color: #464a4c;
background-color: #fff;
border-color: #ddd #ddd #fff; }
.nav-tabs .dropdown-menu {
margin-top: -1px;
border-top-right-radius: 0;
border-top-left-radius: 0; }
.nav-pills .nav-link {
border-radius: 0.25rem; }
.nav-pills .nav-link.active,
.nav-pills .nav-item.show .nav-link {
color: #fff;
cursor: default;
background-color: #220035; }
.nav-fill .nav-item {
flex: 1 1 auto;
text-align: center; }
.nav-justified .nav-item {
flex: 1 1 100%;
text-align: center; }
.tab-content > .tab-pane {
display: none; }
.tab-content > .active {
display: block; }
.navbar {
position: relative;
display: flex;
flex-direction: column;
padding: 1rem 1rem; }
.navbar-brand {
display: inline-block;
padding-top: .25rem;
padding-bottom: .25rem;
margin-right: 1rem;
font-size: 1.25rem;
line-height: inherit;
white-space: nowrap; }
.navbar-brand:focus, .navbar-brand:hover {
text-decoration: none; }
.navbar-nav {
display: flex;
flex-direction: column;
padding-left: 0;
margin-bottom: 0;
list-style: none; }
.navbar-nav .nav-link {
padding-right: 0;
padding-left: 0; }
.navbar-text {
display: inline-block;
padding-top: .425rem;
padding-bottom: .425rem; }
.navbar-toggler {
align-self: flex-start;
padding: 0.25rem 0.75rem;
font-size: 1.25rem;
line-height: 1;
background: transparent;
border: 1px solid transparent;
border-radius: 0.25rem; }
.navbar-toggler:focus, .navbar-toggler:hover {
text-decoration: none; }
.navbar-toggler-icon {
display: inline-block;
width: 1.5em;
height: 1.5em;
vertical-align: middle;
content: "";
background: no-repeat center center;
background-size: 100% 100%; }
.navbar-toggler-left {
position: absolute;
left: 1rem; }
.navbar-toggler-right {
position: absolute;
right: 1rem; }
@media (max-width: 575px) {
.navbar-toggleable .navbar-nav .dropdown-menu {
position: static;
float: none; }
.navbar-toggleable > .container {
padding-right: 0;
padding-left: 0; } }
@media (min-width: 576px) {
.navbar-toggleable {
flex-direction: row;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable .navbar-nav {
flex-direction: row; }
.navbar-toggleable .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem; }
.navbar-toggleable > .container {
display: flex;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable .navbar-collapse {
display: flex !important;
width: 100%; }
.navbar-toggleable .navbar-toggler {
display: none; } }
@media (max-width: 767px) {
.navbar-toggleable-sm .navbar-nav .dropdown-menu {
position: static;
float: none; }
.navbar-toggleable-sm > .container {
padding-right: 0;
padding-left: 0; } }
@media (min-width: 768px) {
.navbar-toggleable-sm {
flex-direction: row;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-sm .navbar-nav {
flex-direction: row; }
.navbar-toggleable-sm .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem; }
.navbar-toggleable-sm > .container {
display: flex;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-sm .navbar-collapse {
display: flex !important;
width: 100%; }
.navbar-toggleable-sm .navbar-toggler {
display: none; } }
@media (max-width: 991px) {
.navbar-toggleable-md .navbar-nav .dropdown-menu {
position: static;
float: none; }
.navbar-toggleable-md > .container {
padding-right: 0;
padding-left: 0; } }
@media (min-width: 992px) {
.navbar-toggleable-md {
flex-direction: row;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-md .navbar-nav {
flex-direction: row; }
.navbar-toggleable-md .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem; }
.navbar-toggleable-md > .container {
display: flex;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-md .navbar-collapse {
display: flex !important;
width: 100%; }
.navbar-toggleable-md .navbar-toggler {
display: none; } }
@media (max-width: 1199px) {
.navbar-toggleable-lg .navbar-nav .dropdown-menu {
position: static;
float: none; }
.navbar-toggleable-lg > .container {
padding-right: 0;
padding-left: 0; } }
@media (min-width: 1200px) {
.navbar-toggleable-lg {
flex-direction: row;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-lg .navbar-nav {
flex-direction: row; }
.navbar-toggleable-lg .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem; }
.navbar-toggleable-lg > .container {
display: flex;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-lg .navbar-collapse {
display: flex !important;
width: 100%; }
.navbar-toggleable-lg .navbar-toggler {
display: none; } }
.navbar-toggleable-xl {
flex-direction: row;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-xl .navbar-nav .dropdown-menu {
position: static;
float: none; }
.navbar-toggleable-xl > .container {
padding-right: 0;
padding-left: 0; }
.navbar-toggleable-xl .navbar-nav {
flex-direction: row; }
.navbar-toggleable-xl .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem; }
.navbar-toggleable-xl > .container {
display: flex;
flex-wrap: nowrap;
align-items: center; }
.navbar-toggleable-xl .navbar-collapse {
display: flex !important;
width: 100%; }
.navbar-toggleable-xl .navbar-toggler {
display: none; }
.navbar-light .navbar-brand,
.navbar-light .navbar-toggler {
color: rgba(0, 0, 0, 0.9); }
.navbar-light .navbar-brand:focus, .navbar-light .navbar-brand:hover,
.navbar-light .navbar-toggler:focus,
.navbar-light .navbar-toggler:hover {
color: rgba(0, 0, 0, 0.9); }
.navbar-light .navbar-nav .nav-link {
color: rgba(0, 0, 0, 0.5); }
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
color: rgba(0, 0, 0, 0.7); }
.navbar-light .navbar-nav .nav-link.disabled {
color: rgba(0, 0, 0, 0.3); }
.navbar-light .navbar-nav .open > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .nav-link.active {
color: rgba(0, 0, 0, 0.9); }
.navbar-light .navbar-toggler {
border-color: rgba(0, 0, 0, 0.1); }
.navbar-light .navbar-toggler-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E"); }
.navbar-light .navbar-text {
color: rgba(0, 0, 0, 0.5); }
.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-toggler {
color: white; }
.navbar-inverse .navbar-brand:focus, .navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-toggler:focus,
.navbar-inverse .navbar-toggler:hover {
color: white; }
.navbar-inverse .navbar-nav .nav-link {
color: rgba(255, 255, 255, 0.5); }
.navbar-inverse .navbar-nav .nav-link:focus, .navbar-inverse .navbar-nav .nav-link:hover {
color: rgba(255, 255, 255, 0.75); }
.navbar-inverse .navbar-nav .nav-link.disabled {
color: rgba(255, 255, 255, 0.25); }
.navbar-inverse .navbar-nav .open > .nav-link,
.navbar-inverse .navbar-nav .active > .nav-link,
.navbar-inverse .navbar-nav .nav-link.open,
.navbar-inverse .navbar-nav .nav-link.active {
color: white; }
.navbar-inverse .navbar-toggler {
border-color: rgba(255, 255, 255, 0.1); }
.navbar-inverse .navbar-toggler-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E"); }
.navbar-inverse .navbar-text {
color: rgba(255, 255, 255, 0.5); }
.card {
position: relative;
display: flex;
flex-direction: column;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 0.25rem; }
.card-block {
flex: 1 1 auto;
padding: 1.25rem; }
.card-title {
margin-bottom: 0.75rem; }
.card-subtitle {
margin-top: -0.375rem;
margin-bottom: 0; }
.card-text:last-child {
margin-bottom: 0; }
.card-link:hover {
text-decoration: none; }
.card-link + .card-link {
margin-left: 1.25rem; }
.card > .list-group:first-child .list-group-item:first-child {
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem; }
.card > .list-group:last-child .list-group-item:last-child {
border-bottom-right-radius: 0.25rem;
border-bottom-left-radius: 0.25rem; }
.card-header {
padding: 0.75rem 1.25rem;
margin-bottom: 0;
background-color: #f7f7f9;
border-bottom: 1px solid rgba(0, 0, 0, 0.125); }
.card-header:first-child {
border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; }
.card-footer {
padding: 0.75rem 1.25rem;
background-color: #f7f7f9;
border-top: 1px solid rgba(0, 0, 0, 0.125); }
.card-footer:last-child {
border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); }
.card-header-tabs {
margin-right: -0.625rem;
margin-bottom: -0.75rem;
margin-left: -0.625rem;
border-bottom: 0; }
.card-header-pills {
margin-right: -0.625rem;
margin-left: -0.625rem; }
.card-primary {
background-color: #220035;
border-color: #220035; }
.card-primary .card-header,
.card-primary .card-footer {
background-color: transparent; }
.card-success {
background-color: #5cb85c;
border-color: #5cb85c; }
.card-success .card-header,
.card-success .card-footer {
background-color: transparent; }
.card-info {
background-color: #5bc0de;
border-color: #5bc0de; }
.card-info .card-header,
.card-info .card-footer {
background-color: transparent; }
.card-warning {
background-color: #f0ad4e;
border-color: #f0ad4e; }
.card-warning .card-header,
.card-warning .card-footer {
background-color: transparent; }
.card-danger {
background-color: #d9534f;
border-color: #d9534f; }
.card-danger .card-header,
.card-danger .card-footer {
background-color: transparent; }
.card-outline-primary {
background-color: transparent;
border-color: #220035; }
.card-outline-secondary {
background-color: transparent;
border-color: #ccc; }
.card-outline-info {
background-color: transparent;
border-color: #5bc0de; }
.card-outline-success {
background-color: transparent;
border-color: #5cb85c; }
.card-outline-warning {
background-color: transparent;
border-color: #f0ad4e; }
.card-outline-danger {
background-color: transparent;
border-color: #d9534f; }
.card-inverse {
color: rgba(255, 255, 255, 0.65); }
.card-inverse .card-header,
.card-inverse .card-footer {
background-color: transparent;
border-color: rgba(255, 255, 255, 0.2); }
.card-inverse .card-header,
.card-inverse .card-footer,
.card-inverse .card-title,
.card-inverse .card-blockquote {
color: #fff; }
.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-subtitle,
.card-inverse .card-blockquote .blockquote-footer {
color: rgba(255, 255, 255, 0.65); }
.card-inverse .card-link:focus, .card-inverse .card-link:hover {
color: #fff; }
.card-blockquote {
padding: 0;
margin-bottom: 0;
border-left: 0; }
.card-img {
border-radius: calc(0.25rem - 1px); }
.card-img-overlay {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
padding: 1.25rem; }
.card-img-top {
border-top-right-radius: calc(0.25rem - 1px);
border-top-left-radius: calc(0.25rem - 1px); }
.card-img-bottom {
border-bottom-right-radius: calc(0.25rem - 1px);
border-bottom-left-radius: calc(0.25rem - 1px); }
@media (min-width: 576px) {
.card-deck {
display: flex;
flex-flow: row wrap; }
.card-deck .card {
display: flex;
flex: 1 0 0;
flex-direction: column; }
.card-deck .card:not(:first-child) {
margin-left: 15px; }
.card-deck .card:not(:last-child) {
margin-right: 15px; } }
@media (min-width: 576px) {
.card-group {
display: flex;
flex-flow: row wrap; }
.card-group .card {
flex: 1 0 0; }
.card-group .card + .card {
margin-left: 0;
border-left: 0; }
.card-group .card:first-child {
border-bottom-right-radius: 0;
border-top-right-radius: 0; }
.card-group .card:first-child .card-img-top {
border-top-right-radius: 0; }
.card-group .card:first-child .card-img-bottom {
border-bottom-right-radius: 0; }
.card-group .card:last-child {
border-bottom-left-radius: 0;
border-top-left-radius: 0; }
.card-group .card:last-child .card-img-top {
border-top-left-radius: 0; }
.card-group .card:last-child .card-img-bottom {
border-bottom-left-radius: 0; }
.card-group .card:not(:first-child):not(:last-child) {
border-radius: 0; }
.card-group .card:not(:first-child):not(:last-child) .card-img-top,
.card-group .card:not(:first-child):not(:last-child) .card-img-bottom {
border-radius: 0; } }
@media (min-width: 576px) {
.card-columns {
column-count: 3;
column-gap: 1.25rem; }
.card-columns .card {
display: inline-block;
width: 100%;
margin-bottom: 0.75rem; } }
.breadcrumb {
padding: 0.75rem 1rem;
margin-bottom: 1rem;
list-style: none;
background-color: #eceeef;
border-radius: 0.25rem; }
.breadcrumb::after {
display: block;
content: "";
clear: both; }
.breadcrumb-item {
float: left; }
.breadcrumb-item + .breadcrumb-item::before {
display: inline-block;
padding-right: 0.5rem;
padding-left: 0.5rem;
color: #636c72;
content: "/"; }
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: underline; }
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: none; }
.breadcrumb-item.active {
color: #636c72; }
.pagination {
display: flex;
padding-left: 0;
list-style: none;
border-radius: 0.25rem; }
.page-item:first-child .page-link {
margin-left: 0;
border-bottom-left-radius: 0.25rem;
border-top-left-radius: 0.25rem; }
.page-item:last-child .page-link {
border-bottom-right-radius: 0.25rem;
border-top-right-radius: 0.25rem; }
.page-item.active .page-link {
z-index: 2;
color: #fff;
background-color: #220035;
border-color: #220035; }
.page-item.disabled .page-link {
color: #636c72;
pointer-events: none;
cursor: not-allowed;
background-color: #fff;
border-color: #ddd; }
.page-link {
position: relative;
display: block;
padding: 0.5rem 0.75rem;
margin-left: -1px;
line-height: 1.25;
color: #ff344b;
background-color: #fff;
border: 1px solid #ddd; }
.page-link:focus, .page-link:hover {
color: #e7001a;
text-decoration: none;
background-color: #eceeef;
border-color: #ddd; }
.pagination-lg .page-link {
padding: 0.75rem 1.5rem;
font-size: 1.25rem; }
.pagination-lg .page-item:first-child .page-link {
border-bottom-left-radius: 0.3rem;
border-top-left-radius: 0.3rem; }
.pagination-lg .page-item:last-child .page-link {
border-bottom-right-radius: 0.3rem;
border-top-right-radius: 0.3rem; }
.pagination-sm .page-link {
padding: 0.25rem 0.5rem;
font-size: 0.875rem; }
.pagination-sm .page-item:first-child .page-link {
border-bottom-left-radius: 0.2rem;
border-top-left-radius: 0.2rem; }
.pagination-sm .page-item:last-child .page-link {
border-bottom-right-radius: 0.2rem;
border-top-right-radius: 0.2rem; }
.badge {
display: inline-block;
padding: 0.25em 0.4em;
font-size: 75%;
font-weight: 700;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: 0.25rem; }
.badge:empty {
display: none; }
.btn .badge {
position: relative;
top: -1px; }
a.badge:focus, a.badge:hover {
color: #fff;
text-decoration: none;
cursor: pointer; }
.badge-pill {
padding-right: 0.6em;
padding-left: 0.6em;
border-radius: 10rem; }
.badge-default {
background-color: #636c72; }
.badge-default[href]:focus, .badge-default[href]:hover {
background-color: #4b5257; }
.badge-primary {
background-color: #220035; }
.badge-primary[href]:focus, .badge-primary[href]:hover {
background-color: #010002; }
.badge-success {
background-color: #5cb85c; }
.badge-success[href]:focus, .badge-success[href]:hover {
background-color: #449d44; }
.badge-info {
background-color: #5bc0de; }
.badge-info[href]:focus, .badge-info[href]:hover {
background-color: #31b0d5; }
.badge-warning {
background-color: #f0ad4e; }
.badge-warning[href]:focus, .badge-warning[href]:hover {
background-color: #ec971f; }
.badge-danger {
background-color: #d9534f; }
.badge-danger[href]:focus, .badge-danger[href]:hover {
background-color: #c9302c; }
.jumbotron {
padding: 2rem 1rem;
margin-bottom: 2rem;
background-color: #eceeef;
border-radius: 0.3rem; }
@media (min-width: 576px) {
.jumbotron {
padding: 4rem 2rem; } }
.jumbotron-hr {
border-top-color: #d0d5d8; }
.jumbotron-fluid {
padding-right: 0;
padding-left: 0;
border-radius: 0; }
.alert {
padding: 0.75rem 1.25rem;
margin-bottom: 1rem;
border: 1px solid transparent;
border-radius: 0.25rem; }
.alert-heading {
color: inherit; }
.alert-link {
font-weight: 700; }
.alert-dismissible .close {
position: relative;
top: -0.75rem;
right: -1.25rem;
padding: 0.75rem 1.25rem;
color: inherit; }
.alert-success {
background-color: #dff0d8;
border-color: #d0e9c6;
color: #3c763d; }
.alert-success hr {
border-top-color: #c1e2b3; }
.alert-success .alert-link {
color: #2b542c; }
.alert-info {
background-color: #d9edf7;
border-color: #bcdff1;
color: #31708f; }
.alert-info hr {
border-top-color: #a6d5ec; }
.alert-info .alert-link {
color: #245269; }
.alert-warning {
background-color: #fcf8e3;
border-color: #faf2cc;
color: #8a6d3b; }
.alert-warning hr {
border-top-color: #f7ecb5; }
.alert-warning .alert-link {
color: #66512c; }
.alert-danger {
background-color: #f2dede;
border-color: #ebcccc;
color: #a94442; }
.alert-danger hr {
border-top-color: #e4b9b9; }
.alert-danger .alert-link {
color: #843534; }
@keyframes progress-bar-stripes {
from {
background-position: 1rem 0; }
to {
background-position: 0 0; } }
.progress {
display: flex;
overflow: hidden;
font-size: 0.75rem;
line-height: 1rem;
text-align: center;
background-color: #eceeef;
border-radius: 0.25rem; }
.progress-bar {
height: 1rem;
color: #fff;
background-color: #220035; }
.progress-bar-striped {
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);
background-size: 1rem 1rem; }
.progress-bar-animated {
animation: progress-bar-stripes 1s linear infinite; }
.media {
display: flex;
align-items: flex-start; }
.media-body {
flex: 1; }
.list-group {
display: flex;
flex-direction: column;
padding-left: 0;
margin-bottom: 0; }
.list-group-item-action {
width: 100%;
color: #464a4c;
text-align: inherit; }
.list-group-item-action .list-group-item-heading {
color: #292b2c; }
.list-group-item-action:focus, .list-group-item-action:hover {
color: #464a4c;
text-decoration: none;
background-color: #f7f7f9; }
.list-group-item-action:active {
color: #5c5c5c;
background-color: #eceeef; }
.list-group-item {
position: relative;
display: flex;
flex-flow: row wrap;
align-items: center;
padding: 0.75rem 1.25rem;
margin-bottom: -1px;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125); }
.list-group-item:first-child {
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem; }
.list-group-item:last-child {
margin-bottom: 0;
border-bottom-right-radius: 0.25rem;
border-bottom-left-radius: 0.25rem; }
.list-group-item:focus, .list-group-item:hover {
text-decoration: none; }
.list-group-item.disabled, .list-group-item:disabled {
color: #636c72;
cursor: not-allowed;
background-color: #fff; }
.list-group-item.disabled .list-group-item-heading, .list-group-item:disabled .list-group-item-heading {
color: inherit; }
.list-group-item.disabled .list-group-item-text, .list-group-item:disabled .list-group-item-text {
color: #636c72; }
.list-group-item.active {
z-index: 2;
color: #fff;
background-color: #220035;
border-color: #220035; }
.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small {
color: inherit; }
.list-group-item.active .list-group-item-text {
color: #b735ff; }
.list-group-flush .list-group-item {
border-right: 0;
border-left: 0;
border-radius: 0; }
.list-group-flush:first-child .list-group-item:first-child {
border-top: 0; }
.list-group-flush:last-child .list-group-item:last-child {
border-bottom: 0; }
.list-group-item-success {
color: #3c763d;
background-color: #dff0d8; }
a.list-group-item-success,
button.list-group-item-success {
color: #3c763d; }
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
color: inherit; }
a.list-group-item-success:focus, a.list-group-item-success:hover,
button.list-group-item-success:focus,
button.list-group-item-success:hover {
color: #3c763d;
background-color: #d0e9c6; }
a.list-group-item-success.active,
button.list-group-item-success.active {
color: #fff;
background-color: #3c763d;
border-color: #3c763d; }
.list-group-item-info {
color: #31708f;
background-color: #d9edf7; }
a.list-group-item-info,
button.list-group-item-info {
color: #31708f; }
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
color: inherit; }
a.list-group-item-info:focus, a.list-group-item-info:hover,
button.list-group-item-info:focus,
button.list-group-item-info:hover {
color: #31708f;
background-color: #c4e3f3; }
a.list-group-item-info.active,
button.list-group-item-info.active {
color: #fff;
background-color: #31708f;
border-color: #31708f; }
.list-group-item-warning {
color: #8a6d3b;
background-color: #fcf8e3; }
a.list-group-item-warning,
button.list-group-item-warning {
color: #8a6d3b; }
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
color: inherit; }
a.list-group-item-warning:focus, a.list-group-item-warning:hover,
button.list-group-item-warning:focus,
button.list-group-item-warning:hover {
color: #8a6d3b;
background-color: #faf2cc; }
a.list-group-item-warning.active,
button.list-group-item-warning.active {
color: #fff;
background-color: #8a6d3b;
border-color: #8a6d3b; }
.list-group-item-danger {
color: #a94442;
background-color: #f2dede; }
a.list-group-item-danger,
button.list-group-item-danger {
color: #a94442; }
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
color: inherit; }
a.list-group-item-danger:focus, a.list-group-item-danger:hover,
button.list-group-item-danger:focus,
button.list-group-item-danger:hover {
color: #a94442;
background-color: #ebcccc; }
a.list-group-item-danger.active,
button.list-group-item-danger.active {
color: #fff;
background-color: #a94442;
border-color: #a94442; }
.embed-responsive {
position: relative;
display: block;
width: 100%;
padding: 0;
overflow: hidden; }
.embed-responsive::before {
display: block;
content: ""; }
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
border: 0; }
.embed-responsive-21by9::before {
padding-top: 42.8571428571%; }
.embed-responsive-16by9::before {
padding-top: 56.25%; }
.embed-responsive-4by3::before {
padding-top: 75%; }
.embed-responsive-1by1::before {
padding-top: 100%; }
.close {
float: right;
font-size: 1.5rem;
font-weight: 700;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: .5; }
.close:focus, .close:hover {
color: #000;
text-decoration: none;
cursor: pointer;
opacity: .75; }
button.close {
padding: 0;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none; }
.modal-open {
overflow: hidden; }
.modal {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1050;
display: none;
overflow: hidden;
outline: 0; }
.modal.fade .modal-dialog {
transition: transform 0.3s ease-out;
transform: translate(0, -25%); }
.modal.show .modal-dialog {
transform: translate(0, 0); }
.modal-open .modal {
overflow-x: hidden;
overflow-y: auto; }
.modal-dialog {
position: relative;
width: auto;
margin: 10px; }
.modal-content {
position: relative;
display: flex;
flex-direction: column;
background-color: #fff;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 0.3rem;
outline: 0; }
.modal-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1040;
background-color: #000; }
.modal-backdrop.fade {
opacity: 0; }
.modal-backdrop.show {
opacity: 0.5; }
.modal-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 15px;
border-bottom: 1px solid #eceeef; }
.modal-title {
margin-bottom: 0;
line-height: 1.5; }
.modal-body {
position: relative;
flex: 1 1 auto;
padding: 15px; }
.modal-footer {
display: flex;
align-items: center;
justify-content: flex-end;
padding: 15px;
border-top: 1px solid #eceeef; }
.modal-footer > :not(:first-child) {
margin-left: .25rem; }
.modal-footer > :not(:last-child) {
margin-right: .25rem; }
.modal-scrollbar-measure {
position: absolute;
top: -9999px;
width: 50px;
height: 50px;
overflow: scroll; }
@media (min-width: 576px) {
.modal-dialog {
max-width: 500px;
margin: 30px auto; }
.modal-sm {
max-width: 300px; } }
@media (min-width: 992px) {
.modal-lg {
max-width: 800px; } }
.tooltip {
position: absolute;
z-index: 1070;
display: block;
font-family: "aktiv-grotesk", sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
font-size: 0.875rem;
word-wrap: break-word;
opacity: 0; }
.tooltip.show {
opacity: 0.9; }
.tooltip.tooltip-top, .tooltip.bs-tether-element-attached-bottom {
padding: 5px 0;
margin-top: -3px; }
.tooltip.tooltip-top .tooltip-inner::before, .tooltip.bs-tether-element-attached-bottom .tooltip-inner::before {
bottom: 0;
left: 50%;
margin-left: -5px;
content: "";
border-width: 5px 5px 0;
border-top-color: #000; }
.tooltip.tooltip-right, .tooltip.bs-tether-element-attached-left {
padding: 0 5px;
margin-left: 3px; }
.tooltip.tooltip-right .tooltip-inner::before, .tooltip.bs-tether-element-attached-left .tooltip-inner::before {
top: 50%;
left: 0;
margin-top: -5px;
content: "";
border-width: 5px 5px 5px 0;
border-right-color: #000; }
.tooltip.tooltip-bottom, .tooltip.bs-tether-element-attached-top {
padding: 5px 0;
margin-top: 3px; }
.tooltip.tooltip-bottom .tooltip-inner::before, .tooltip.bs-tether-element-attached-top .tooltip-inner::before {
top: 0;
left: 50%;
margin-left: -5px;
content: "";
border-width: 0 5px 5px;
border-bottom-color: #000; }
.tooltip.tooltip-left, .tooltip.bs-tether-element-attached-right {
padding: 0 5px;
margin-left: -3px; }
.tooltip.tooltip-left .tooltip-inner::before, .tooltip.bs-tether-element-attached-right .tooltip-inner::before {
top: 50%;
right: 0;
margin-top: -5px;
content: "";
border-width: 5px 0 5px 5px;
border-left-color: #000; }
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
color: #fff;
text-align: center;
background-color: #000;
border-radius: 0.25rem; }
.tooltip-inner::before {
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid; }
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1060;
display: block;
max-width: 276px;
padding: 1px;
font-family: "aktiv-grotesk", sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
font-size: 0.875rem;
word-wrap: break-word;
background-color: #fff;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 0.3rem; }
.popover.popover-top, .popover.bs-tether-element-attached-bottom {
margin-top: -10px; }
.popover.popover-top::before, .popover.popover-top::after, .popover.bs-tether-element-attached-bottom::before, .popover.bs-tether-element-attached-bottom::after {
left: 50%;
border-bottom-width: 0; }
.popover.popover-top::before, .popover.bs-tether-element-attached-bottom::before {
bottom: -11px;
margin-left: -11px;
border-top-color: rgba(0, 0, 0, 0.25); }
.popover.popover-top::after, .popover.bs-tether-element-attached-bottom::after {
bottom: -10px;
margin-left: -10px;
border-top-color: #fff; }
.popover.popover-right, .popover.bs-tether-element-attached-left {
margin-left: 10px; }
.popover.popover-right::before, .popover.popover-right::after, .popover.bs-tether-element-attached-left::before, .popover.bs-tether-element-attached-left::after {
top: 50%;
border-left-width: 0; }
.popover.popover-right::before, .popover.bs-tether-element-attached-left::before {
left: -11px;
margin-top: -11px;
border-right-color: rgba(0, 0, 0, 0.25); }
.popover.popover-right::after, .popover.bs-tether-element-attached-left::after {
left: -10px;
margin-top: -10px;
border-right-color: #fff; }
.popover.popover-bottom, .popover.bs-tether-element-attached-top {
margin-top: 10px; }
.popover.popover-bottom::before, .popover.popover-bottom::after, .popover.bs-tether-element-attached-top::before, .popover.bs-tether-element-attached-top::after {
left: 50%;
border-top-width: 0; }
.popover.popover-bottom::before, .popover.bs-tether-element-attached-top::before {
top: -11px;
margin-left: -11px;
border-bottom-color: rgba(0, 0, 0, 0.25); }
.popover.popover-bottom::after, .popover.bs-tether-element-attached-top::after {
top: -10px;
margin-left: -10px;
border-bottom-color: #f7f7f7; }
.popover.popover-bottom .popover-title::before, .popover.bs-tether-element-attached-top .popover-title::before {
position: absolute;
top: 0;
left: 50%;
display: block;
width: 20px;
margin-left: -10px;
content: "";
border-bottom: 1px solid #f7f7f7; }
.popover.popover-left, .popover.bs-tether-element-attached-right {
margin-left: -10px; }
.popover.popover-left::before, .popover.popover-left::after, .popover.bs-tether-element-attached-right::before, .popover.bs-tether-element-attached-right::after {
top: 50%;
border-right-width: 0; }
.popover.popover-left::before, .popover.bs-tether-element-attached-right::before {
right: -11px;
margin-top: -11px;
border-left-color: rgba(0, 0, 0, 0.25); }
.popover.popover-left::after, .popover.bs-tether-element-attached-right::after {
right: -10px;
margin-top: -10px;
border-left-color: #fff; }
.popover-title {
padding: 8px 14px;
margin-bottom: 0;
font-size: 1rem;
background-color: #f7f7f7;
border-bottom: 1px solid #ebebeb;
border-top-right-radius: calc(0.3rem - 1px);
border-top-left-radius: calc(0.3rem - 1px); }
.popover-title:empty {
display: none; }
.popover-content {
padding: 9px 14px; }
.popover::before,
.popover::after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid; }
.popover::before {
content: "";
border-width: 11px; }
.popover::after {
content: "";
border-width: 10px; }
.carousel {
position: relative; }
.carousel-inner {
position: relative;
width: 100%;
overflow: hidden; }
.carousel-item {
position: relative;
display: none;
width: 100%; }
@media (-webkit-transform-3d) {
.carousel-item {
transition: transform 0.6s ease-in-out;
backface-visibility: hidden;
perspective: 1000px; } }
@supports (transform: translate3d(0, 0, 0)) {
.carousel-item {
transition: transform 0.6s ease-in-out;
backface-visibility: hidden;
perspective: 1000px; } }
.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
display: flex; }
.carousel-item-next,
.carousel-item-prev {
position: absolute;
top: 0; }
@media (-webkit-transform-3d) {
.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
transform: translate3d(0, 0, 0); }
.carousel-item-next,
.active.carousel-item-right {
transform: translate3d(100%, 0, 0); }
.carousel-item-prev,
.active.carousel-item-left {
transform: translate3d(-100%, 0, 0); } }
@supports (transform: translate3d(0, 0, 0)) {
.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
transform: translate3d(0, 0, 0); }
.carousel-item-next,
.active.carousel-item-right {
transform: translate3d(100%, 0, 0); }
.carousel-item-prev,
.active.carousel-item-left {
transform: translate3d(-100%, 0, 0); } }
.carousel-control-prev,
.carousel-control-next {
position: absolute;
top: 0;
bottom: 0;
display: flex;
align-items: center;
justify-content: center;
width: 15%;
color: #fff;
text-align: center;
opacity: 0.5; }
.carousel-control-prev:focus, .carousel-control-prev:hover,
.carousel-control-next:focus,
.carousel-control-next:hover {
color: #fff;
text-decoration: none;
outline: 0;
opacity: .9; }
.carousel-control-prev {
left: 0; }
.carousel-control-next {
right: 0; }
.carousel-control-prev-icon,
.carousel-control-next-icon {
display: inline-block;
width: 20px;
height: 20px;
background: transparent no-repeat center center;
background-size: 100% 100%; }
.carousel-control-prev-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M4 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"); }
.carousel-control-next-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M1.5 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"); }
.carousel-indicators {
position: absolute;
right: 0;
bottom: 10px;
left: 0;
z-index: 15;
display: flex;
justify-content: center;
padding-left: 0;
margin-right: 15%;
margin-left: 15%;
list-style: none; }
.carousel-indicators li {
position: relative;
flex: 1 0 auto;
max-width: 30px;
height: 3px;
margin-right: 3px;
margin-left: 3px;
text-indent: -999px;
cursor: pointer;
background-color: rgba(255, 255, 255, 0.5); }
.carousel-indicators li::before {
position: absolute;
top: -10px;
left: 0;
display: inline-block;
width: 100%;
height: 10px;
content: ""; }
.carousel-indicators li::after {
position: absolute;
bottom: -10px;
left: 0;
display: inline-block;
width: 100%;
height: 10px;
content: ""; }
.carousel-indicators .active {
background-color: #fff; }
.carousel-caption {
position: absolute;
right: 15%;
bottom: 20px;
left: 15%;
z-index: 10;
padding-top: 20px;
padding-bottom: 20px;
color: #fff;
text-align: center; }
.align-baseline {
vertical-align: baseline !important; }
.align-top {
vertical-align: top !important; }
.align-middle {
vertical-align: middle !important; }
.align-bottom {
vertical-align: bottom !important; }
.align-text-bottom {
vertical-align: text-bottom !important; }
.align-text-top {
vertical-align: text-top !important; }
.bg-faded {
background-color: #f7f7f7; }
.bg-primary {
background-color: #220035 !important; }
a.bg-primary:focus, a.bg-primary:hover {
background-color: #010002 !important; }
.bg-success {
background-color: #5cb85c !important; }
a.bg-success:focus, a.bg-success:hover {
background-color: #449d44 !important; }
.bg-info {
background-color: #5bc0de !important; }
a.bg-info:focus, a.bg-info:hover {
background-color: #31b0d5 !important; }
.bg-warning {
background-color: #f0ad4e !important; }
a.bg-warning:focus, a.bg-warning:hover {
background-color: #ec971f !important; }
.bg-danger {
background-color: #d9534f !important; }
a.bg-danger:focus, a.bg-danger:hover {
background-color: #c9302c !important; }
.bg-inverse {
background-color: #292b2c !important; }
a.bg-inverse:focus, a.bg-inverse:hover {
background-color: #101112 !important; }
.border-0 {
border: 0 !important; }
.border-top-0 {
border-top: 0 !important; }
.border-right-0 {
border-right: 0 !important; }
.border-bottom-0 {
border-bottom: 0 !important; }
.border-left-0 {
border-left: 0 !important; }
.rounded {
border-radius: 0.25rem; }
.rounded-top {
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem; }
.rounded-right {
border-bottom-right-radius: 0.25rem;
border-top-right-radius: 0.25rem; }
.rounded-bottom {
border-bottom-right-radius: 0.25rem;
border-bottom-left-radius: 0.25rem; }
.rounded-left {
border-bottom-left-radius: 0.25rem;
border-top-left-radius: 0.25rem; }
.rounded-circle {
border-radius: 50%; }
.rounded-0 {
border-radius: 0; }
.clearfix::after {
display: block;
content: "";
clear: both; }
.d-none {
display: none !important; }
.d-inline {
display: inline !important; }
.d-inline-block {
display: inline-block !important; }
.d-block {
display: block !important; }
.d-table {
display: table !important; }
.d-table-cell {
display: table-cell !important; }
.d-flex {
display: flex !important; }
.d-inline-flex {
display: inline-flex !important; }
@media (min-width: 576px) {
.d-sm-none {
display: none !important; }
.d-sm-inline {
display: inline !important; }
.d-sm-inline-block {
display: inline-block !important; }
.d-sm-block {
display: block !important; }
.d-sm-table {
display: table !important; }
.d-sm-table-cell {
display: table-cell !important; }
.d-sm-flex {
display: flex !important; }
.d-sm-inline-flex {
display: inline-flex !important; } }
@media (min-width: 768px) {
.d-md-none {
display: none !important; }
.d-md-inline {
display: inline !important; }
.d-md-inline-block {
display: inline-block !important; }
.d-md-block {
display: block !important; }
.d-md-table {
display: table !important; }
.d-md-table-cell {
display: table-cell !important; }
.d-md-flex {
display: flex !important; }
.d-md-inline-flex {
display: inline-flex !important; } }
@media (min-width: 992px) {
.d-lg-none {
display: none !important; }
.d-lg-inline {
display: inline !important; }
.d-lg-inline-block {
display: inline-block !important; }
.d-lg-block {
display: block !important; }
.d-lg-table {
display: table !important; }
.d-lg-table-cell {
display: table-cell !important; }
.d-lg-flex {
display: flex !important; }
.d-lg-inline-flex {
display: inline-flex !important; } }
@media (min-width: 1200px) {
.d-xl-none {
display: none !important; }
.d-xl-inline {
display: inline !important; }
.d-xl-inline-block {
display: inline-block !important; }
.d-xl-block {
display: block !important; }
.d-xl-table {
display: table !important; }
.d-xl-table-cell {
display: table-cell !important; }
.d-xl-flex {
display: flex !important; }
.d-xl-inline-flex {
display: inline-flex !important; } }
.flex-first {
order: -1; }
.flex-last {
order: 1; }
.flex-unordered {
order: 0; }
.flex-row {
flex-direction: row !important; }
.flex-column {
flex-direction: column !important; }
.flex-row-reverse {
flex-direction: row-reverse !important; }
.flex-column-reverse {
flex-direction: column-reverse !important; }
.flex-wrap {
flex-wrap: wrap !important; }
.flex-nowrap {
flex-wrap: nowrap !important; }
.flex-wrap-reverse {
flex-wrap: wrap-reverse !important; }
.justify-content-start {
justify-content: flex-start !important; }
.justify-content-end {
justify-content: flex-end !important; }
.justify-content-center {
justify-content: center !important; }
.justify-content-between {
justify-content: space-between !important; }
.justify-content-around {
justify-content: space-around !important; }
.align-items-start {
align-items: flex-start !important; }
.align-items-end {
align-items: flex-end !important; }
.align-items-center {
align-items: center !important; }
.align-items-baseline {
align-items: baseline !important; }
.align-items-stretch {
align-items: stretch !important; }
.align-content-start {
align-content: flex-start !important; }
.align-content-end {
align-content: flex-end !important; }
.align-content-center {
align-content: center !important; }
.align-content-between {
align-content: space-between !important; }
.align-content-around {
align-content: space-around !important; }
.align-content-stretch {
align-content: stretch !important; }
.align-self-auto {
align-self: auto !important; }
.align-self-start {
align-self: flex-start !important; }
.align-self-end {
align-self: flex-end !important; }
.align-self-center {
align-self: center !important; }
.align-self-baseline {
align-self: baseline !important; }
.align-self-stretch {
align-self: stretch !important; }
@media (min-width: 576px) {
.flex-sm-first {
order: -1; }
.flex-sm-last {
order: 1; }
.flex-sm-unordered {
order: 0; }
.flex-sm-row {
flex-direction: row !important; }
.flex-sm-column {
flex-direction: column !important; }
.flex-sm-row-reverse {
flex-direction: row-reverse !important; }
.flex-sm-column-reverse {
flex-direction: column-reverse !important; }
.flex-sm-wrap {
flex-wrap: wrap !important; }
.flex-sm-nowrap {
flex-wrap: nowrap !important; }
.flex-sm-wrap-reverse {
flex-wrap: wrap-reverse !important; }
.justify-content-sm-start {
justify-content: flex-start !important; }
.justify-content-sm-end {
justify-content: flex-end !important; }
.justify-content-sm-center {
justify-content: center !important; }
.justify-content-sm-between {
justify-content: space-between !important; }
.justify-content-sm-around {
justify-content: space-around !important; }
.align-items-sm-start {
align-items: flex-start !important; }
.align-items-sm-end {
align-items: flex-end !important; }
.align-items-sm-center {
align-items: center !important; }
.align-items-sm-baseline {
align-items: baseline !important; }
.align-items-sm-stretch {
align-items: stretch !important; }
.align-content-sm-start {
align-content: flex-start !important; }
.align-content-sm-end {
align-content: flex-end !important; }
.align-content-sm-center {
align-content: center !important; }
.align-content-sm-between {
align-content: space-between !important; }
.align-content-sm-around {
align-content: space-around !important; }
.align-content-sm-stretch {
align-content: stretch !important; }
.align-self-sm-auto {
align-self: auto !important; }
.align-self-sm-start {
align-self: flex-start !important; }
.align-self-sm-end {
align-self: flex-end !important; }
.align-self-sm-center {
align-self: center !important; }
.align-self-sm-baseline {
align-self: baseline !important; }
.align-self-sm-stretch {
align-self: stretch !important; } }
@media (min-width: 768px) {
.flex-md-first {
order: -1; }
.flex-md-last {
order: 1; }
.flex-md-unordered {
order: 0; }
.flex-md-row {
flex-direction: row !important; }
.flex-md-column {
flex-direction: column !important; }
.flex-md-row-reverse {
flex-direction: row-reverse !important; }
.flex-md-column-reverse {
flex-direction: column-reverse !important; }
.flex-md-wrap {
flex-wrap: wrap !important; }
.flex-md-nowrap {
flex-wrap: nowrap !important; }
.flex-md-wrap-reverse {
flex-wrap: wrap-reverse !important; }
.justify-content-md-start {
justify-content: flex-start !important; }
.justify-content-md-end {
justify-content: flex-end !important; }
.justify-content-md-center {
justify-content: center !important; }
.justify-content-md-between {
justify-content: space-between !important; }
.justify-content-md-around {
justify-content: space-around !important; }
.align-items-md-start {
align-items: flex-start !important; }
.align-items-md-end {
align-items: flex-end !important; }
.align-items-md-center {
align-items: center !important; }
.align-items-md-baseline {
align-items: baseline !important; }
.align-items-md-stretch {
align-items: stretch !important; }
.align-content-md-start {
align-content: flex-start !important; }
.align-content-md-end {
align-content: flex-end !important; }
.align-content-md-center {
align-content: center !important; }
.align-content-md-between {
align-content: space-between !important; }
.align-content-md-around {
align-content: space-around !important; }
.align-content-md-stretch {
align-content: stretch !important; }
.align-self-md-auto {
align-self: auto !important; }
.align-self-md-start {
align-self: flex-start !important; }
.align-self-md-end {
align-self: flex-end !important; }
.align-self-md-center {
align-self: center !important; }
.align-self-md-baseline {
align-self: baseline !important; }
.align-self-md-stretch {
align-self: stretch !important; } }
@media (min-width: 992px) {
.flex-lg-first {
order: -1; }
.flex-lg-last {
order: 1; }
.flex-lg-unordered {
order: 0; }
.flex-lg-row {
flex-direction: row !important; }
.flex-lg-column {
flex-direction: column !important; }
.flex-lg-row-reverse {
flex-direction: row-reverse !important; }
.flex-lg-column-reverse {
flex-direction: column-reverse !important; }
.flex-lg-wrap {
flex-wrap: wrap !important; }
.flex-lg-nowrap {
flex-wrap: nowrap !important; }
.flex-lg-wrap-reverse {
flex-wrap: wrap-reverse !important; }
.justify-content-lg-start {
justify-content: flex-start !important; }
.justify-content-lg-end {
justify-content: flex-end !important; }
.justify-content-lg-center {
justify-content: center !important; }
.justify-content-lg-between {
justify-content: space-between !important; }
.justify-content-lg-around {
justify-content: space-around !important; }
.align-items-lg-start {
align-items: flex-start !important; }
.align-items-lg-end {
align-items: flex-end !important; }
.align-items-lg-center {
align-items: center !important; }
.align-items-lg-baseline {
align-items: baseline !important; }
.align-items-lg-stretch {
align-items: stretch !important; }
.align-content-lg-start {
align-content: flex-start !important; }
.align-content-lg-end {
align-content: flex-end !important; }
.align-content-lg-center {
align-content: center !important; }
.align-content-lg-between {
align-content: space-between !important; }
.align-content-lg-around {
align-content: space-around !important; }
.align-content-lg-stretch {
align-content: stretch !important; }
.align-self-lg-auto {
align-self: auto !important; }
.align-self-lg-start {
align-self: flex-start !important; }
.align-self-lg-end {
align-self: flex-end !important; }
.align-self-lg-center {
align-self: center !important; }
.align-self-lg-baseline {
align-self: baseline !important; }
.align-self-lg-stretch {
align-self: stretch !important; } }
@media (min-width: 1200px) {
.flex-xl-first {
order: -1; }
.flex-xl-last {
order: 1; }
.flex-xl-unordered {
order: 0; }
.flex-xl-row {
flex-direction: row !important; }
.flex-xl-column {
flex-direction: column !important; }
.flex-xl-row-reverse {
flex-direction: row-reverse !important; }
.flex-xl-column-reverse {
flex-direction: column-reverse !important; }
.flex-xl-wrap {
flex-wrap: wrap !important; }
.flex-xl-nowrap {
flex-wrap: nowrap !important; }
.flex-xl-wrap-reverse {
flex-wrap: wrap-reverse !important; }
.justify-content-xl-start {
justify-content: flex-start !important; }
.justify-content-xl-end {
justify-content: flex-end !important; }
.justify-content-xl-center {
justify-content: center !important; }
.justify-content-xl-between {
justify-content: space-between !important; }
.justify-content-xl-around {
justify-content: space-around !important; }
.align-items-xl-start {
align-items: flex-start !important; }
.align-items-xl-end {
align-items: flex-end !important; }
.align-items-xl-center {
align-items: center !important; }
.align-items-xl-baseline {
align-items: baseline !important; }
.align-items-xl-stretch {
align-items: stretch !important; }
.align-content-xl-start {
align-content: flex-start !important; }
.align-content-xl-end {
align-content: flex-end !important; }
.align-content-xl-center {
align-content: center !important; }
.align-content-xl-between {
align-content: space-between !important; }
.align-content-xl-around {
align-content: space-around !important; }
.align-content-xl-stretch {
align-content: stretch !important; }
.align-self-xl-auto {
align-self: auto !important; }
.align-self-xl-start {
align-self: flex-start !important; }
.align-self-xl-end {
align-self: flex-end !important; }
.align-self-xl-center {
align-self: center !important; }
.align-self-xl-baseline {
align-self: baseline !important; }
.align-self-xl-stretch {
align-self: stretch !important; } }
.float-left {
float: left !important; }
.float-right {
float: right !important; }
.float-none {
float: none !important; }
@media (min-width: 576px) {
.float-sm-left {
float: left !important; }
.float-sm-right {
float: right !important; }
.float-sm-none {
float: none !important; } }
@media (min-width: 768px) {
.float-md-left {
float: left !important; }
.float-md-right {
float: right !important; }
.float-md-none {
float: none !important; } }
@media (min-width: 992px) {
.float-lg-left {
float: left !important; }
.float-lg-right {
float: right !important; }
.float-lg-none {
float: none !important; } }
@media (min-width: 1200px) {
.float-xl-left {
float: left !important; }
.float-xl-right {
float: right !important; }
.float-xl-none {
float: none !important; } }
.fixed-top {
position: fixed;
top: 0;
right: 0;
left: 0;
z-index: 1030; }
.fixed-bottom {
position: fixed;
right: 0;
bottom: 0;
left: 0;
z-index: 1030; }
.sticky-top {
position: sticky;
top: 0;
z-index: 1030; }
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
border: 0; }
.sr-only-focusable:active, .sr-only-focusable:focus {
position: static;
width: auto;
height: auto;
margin: 0;
overflow: visible;
clip: auto; }
.w-25 {
width: 25% !important; }
.w-50 {
width: 50% !important; }
.w-75 {
width: 75% !important; }
.w-100 {
width: 100% !important; }
.h-25 {
height: 25% !important; }
.h-50 {
height: 50% !important; }
.h-75 {
height: 75% !important; }
.h-100 {
height: 100% !important; }
.mw-100 {
max-width: 100% !important; }
.mh-100 {
max-height: 100% !important; }
.m-0 {
margin: 0 0 !important; }
.mt-0 {
margin-top: 0 !important; }
.mr-0 {
margin-right: 0 !important; }
.mb-0 {
margin-bottom: 0 !important; }
.ml-0 {
margin-left: 0 !important; }
.mx-0 {
margin-right: 0 !important;
margin-left: 0 !important; }
.my-0 {
margin-top: 0 !important;
margin-bottom: 0 !important; }
.m-1 {
margin: 0.25rem 0.25rem !important; }
.mt-1 {
margin-top: 0.25rem !important; }
.mr-1 {
margin-right: 0.25rem !important; }
.mb-1 {
margin-bottom: 0.25rem !important; }
.ml-1 {
margin-left: 0.25rem !important; }
.mx-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important; }
.my-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important; }
.m-2 {
margin: 0.5rem 0.5rem !important; }
.mt-2 {
margin-top: 0.5rem !important; }
.mr-2 {
margin-right: 0.5rem !important; }
.mb-2 {
margin-bottom: 0.5rem !important; }
.ml-2 {
margin-left: 0.5rem !important; }
.mx-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important; }
.my-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important; }
.m-3 {
margin: 1rem 1rem !important; }
.mt-3 {
margin-top: 1rem !important; }
.mr-3 {
margin-right: 1rem !important; }
.mb-3 {
margin-bottom: 1rem !important; }
.ml-3 {
margin-left: 1rem !important; }
.mx-3 {
margin-right: 1rem !important;
margin-left: 1rem !important; }
.my-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important; }
.m-4 {
margin: 1.5rem 1.5rem !important; }
.mt-4 {
margin-top: 1.5rem !important; }
.mr-4 {
margin-right: 1.5rem !important; }
.mb-4 {
margin-bottom: 1.5rem !important; }
.ml-4 {
margin-left: 1.5rem !important; }
.mx-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important; }
.my-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important; }
.m-5 {
margin: 3rem 3rem !important; }
.mt-5 {
margin-top: 3rem !important; }
.mr-5 {
margin-right: 3rem !important; }
.mb-5 {
margin-bottom: 3rem !important; }
.ml-5 {
margin-left: 3rem !important; }
.mx-5 {
margin-right: 3rem !important;
margin-left: 3rem !important; }
.my-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important; }
.p-0 {
padding: 0 0 !important; }
.pt-0 {
padding-top: 0 !important; }
.pr-0 {
padding-right: 0 !important; }
.pb-0 {
padding-bottom: 0 !important; }
.pl-0 {
padding-left: 0 !important; }
.px-0 {
padding-right: 0 !important;
padding-left: 0 !important; }
.py-0 {
padding-top: 0 !important;
padding-bottom: 0 !important; }
.p-1 {
padding: 0.25rem 0.25rem !important; }
.pt-1 {
padding-top: 0.25rem !important; }
.pr-1 {
padding-right: 0.25rem !important; }
.pb-1 {
padding-bottom: 0.25rem !important; }
.pl-1 {
padding-left: 0.25rem !important; }
.px-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important; }
.py-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important; }
.p-2 {
padding: 0.5rem 0.5rem !important; }
.pt-2 {
padding-top: 0.5rem !important; }
.pr-2 {
padding-right: 0.5rem !important; }
.pb-2 {
padding-bottom: 0.5rem !important; }
.pl-2 {
padding-left: 0.5rem !important; }
.px-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important; }
.py-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important; }
.p-3 {
padding: 1rem 1rem !important; }
.pt-3 {
padding-top: 1rem !important; }
.pr-3 {
padding-right: 1rem !important; }
.pb-3 {
padding-bottom: 1rem !important; }
.pl-3 {
padding-left: 1rem !important; }
.px-3 {
padding-right: 1rem !important;
padding-left: 1rem !important; }
.py-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important; }
.p-4 {
padding: 1.5rem 1.5rem !important; }
.pt-4 {
padding-top: 1.5rem !important; }
.pr-4 {
padding-right: 1.5rem !important; }
.pb-4 {
padding-bottom: 1.5rem !important; }
.pl-4 {
padding-left: 1.5rem !important; }
.px-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important; }
.py-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important; }
.p-5 {
padding: 3rem 3rem !important; }
.pt-5 {
padding-top: 3rem !important; }
.pr-5 {
padding-right: 3rem !important; }
.pb-5 {
padding-bottom: 3rem !important; }
.pl-5 {
padding-left: 3rem !important; }
.px-5 {
padding-right: 3rem !important;
padding-left: 3rem !important; }
.py-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important; }
.m-auto {
margin: auto !important; }
.mt-auto {
margin-top: auto !important; }
.mr-auto {
margin-right: auto !important; }
.mb-auto {
margin-bottom: auto !important; }
.ml-auto {
margin-left: auto !important; }
.mx-auto {
margin-right: auto !important;
margin-left: auto !important; }
.my-auto {
margin-top: auto !important;
margin-bottom: auto !important; }
@media (min-width: 576px) {
.m-sm-0 {
margin: 0 0 !important; }
.mt-sm-0 {
margin-top: 0 !important; }
.mr-sm-0 {
margin-right: 0 !important; }
.mb-sm-0 {
margin-bottom: 0 !important; }
.ml-sm-0 {
margin-left: 0 !important; }
.mx-sm-0 {
margin-right: 0 !important;
margin-left: 0 !important; }
.my-sm-0 {
margin-top: 0 !important;
margin-bottom: 0 !important; }
.m-sm-1 {
margin: 0.25rem 0.25rem !important; }
.mt-sm-1 {
margin-top: 0.25rem !important; }
.mr-sm-1 {
margin-right: 0.25rem !important; }
.mb-sm-1 {
margin-bottom: 0.25rem !important; }
.ml-sm-1 {
margin-left: 0.25rem !important; }
.mx-sm-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important; }
.my-sm-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important; }
.m-sm-2 {
margin: 0.5rem 0.5rem !important; }
.mt-sm-2 {
margin-top: 0.5rem !important; }
.mr-sm-2 {
margin-right: 0.5rem !important; }
.mb-sm-2 {
margin-bottom: 0.5rem !important; }
.ml-sm-2 {
margin-left: 0.5rem !important; }
.mx-sm-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important; }
.my-sm-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important; }
.m-sm-3 {
margin: 1rem 1rem !important; }
.mt-sm-3 {
margin-top: 1rem !important; }
.mr-sm-3 {
margin-right: 1rem !important; }
.mb-sm-3 {
margin-bottom: 1rem !important; }
.ml-sm-3 {
margin-left: 1rem !important; }
.mx-sm-3 {
margin-right: 1rem !important;
margin-left: 1rem !important; }
.my-sm-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important; }
.m-sm-4 {
margin: 1.5rem 1.5rem !important; }
.mt-sm-4 {
margin-top: 1.5rem !important; }
.mr-sm-4 {
margin-right: 1.5rem !important; }
.mb-sm-4 {
margin-bottom: 1.5rem !important; }
.ml-sm-4 {
margin-left: 1.5rem !important; }
.mx-sm-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important; }
.my-sm-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important; }
.m-sm-5 {
margin: 3rem 3rem !important; }
.mt-sm-5 {
margin-top: 3rem !important; }
.mr-sm-5 {
margin-right: 3rem !important; }
.mb-sm-5 {
margin-bottom: 3rem !important; }
.ml-sm-5 {
margin-left: 3rem !important; }
.mx-sm-5 {
margin-right: 3rem !important;
margin-left: 3rem !important; }
.my-sm-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important; }
.p-sm-0 {
padding: 0 0 !important; }
.pt-sm-0 {
padding-top: 0 !important; }
.pr-sm-0 {
padding-right: 0 !important; }
.pb-sm-0 {
padding-bottom: 0 !important; }
.pl-sm-0 {
padding-left: 0 !important; }
.px-sm-0 {
padding-right: 0 !important;
padding-left: 0 !important; }
.py-sm-0 {
padding-top: 0 !important;
padding-bottom: 0 !important; }
.p-sm-1 {
padding: 0.25rem 0.25rem !important; }
.pt-sm-1 {
padding-top: 0.25rem !important; }
.pr-sm-1 {
padding-right: 0.25rem !important; }
.pb-sm-1 {
padding-bottom: 0.25rem !important; }
.pl-sm-1 {
padding-left: 0.25rem !important; }
.px-sm-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important; }
.py-sm-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important; }
.p-sm-2 {
padding: 0.5rem 0.5rem !important; }
.pt-sm-2 {
padding-top: 0.5rem !important; }
.pr-sm-2 {
padding-right: 0.5rem !important; }
.pb-sm-2 {
padding-bottom: 0.5rem !important; }
.pl-sm-2 {
padding-left: 0.5rem !important; }
.px-sm-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important; }
.py-sm-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important; }
.p-sm-3 {
padding: 1rem 1rem !important; }
.pt-sm-3 {
padding-top: 1rem !important; }
.pr-sm-3 {
padding-right: 1rem !important; }
.pb-sm-3 {
padding-bottom: 1rem !important; }
.pl-sm-3 {
padding-left: 1rem !important; }
.px-sm-3 {
padding-right: 1rem !important;
padding-left: 1rem !important; }
.py-sm-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important; }
.p-sm-4 {
padding: 1.5rem 1.5rem !important; }
.pt-sm-4 {
padding-top: 1.5rem !important; }
.pr-sm-4 {
padding-right: 1.5rem !important; }
.pb-sm-4 {
padding-bottom: 1.5rem !important; }
.pl-sm-4 {
padding-left: 1.5rem !important; }
.px-sm-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important; }
.py-sm-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important; }
.p-sm-5 {
padding: 3rem 3rem !important; }
.pt-sm-5 {
padding-top: 3rem !important; }
.pr-sm-5 {
padding-right: 3rem !important; }
.pb-sm-5 {
padding-bottom: 3rem !important; }
.pl-sm-5 {
padding-left: 3rem !important; }
.px-sm-5 {
padding-right: 3rem !important;
padding-left: 3rem !important; }
.py-sm-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important; }
.m-sm-auto {
margin: auto !important; }
.mt-sm-auto {
margin-top: auto !important; }
.mr-sm-auto {
margin-right: auto !important; }
.mb-sm-auto {
margin-bottom: auto !important; }
.ml-sm-auto {
margin-left: auto !important; }
.mx-sm-auto {
margin-right: auto !important;
margin-left: auto !important; }
.my-sm-auto {
margin-top: auto !important;
margin-bottom: auto !important; } }
@media (min-width: 768px) {
.m-md-0 {
margin: 0 0 !important; }
.mt-md-0 {
margin-top: 0 !important; }
.mr-md-0 {
margin-right: 0 !important; }
.mb-md-0 {
margin-bottom: 0 !important; }
.ml-md-0 {
margin-left: 0 !important; }
.mx-md-0 {
margin-right: 0 !important;
margin-left: 0 !important; }
.my-md-0 {
margin-top: 0 !important;
margin-bottom: 0 !important; }
.m-md-1 {
margin: 0.25rem 0.25rem !important; }
.mt-md-1 {
margin-top: 0.25rem !important; }
.mr-md-1 {
margin-right: 0.25rem !important; }
.mb-md-1 {
margin-bottom: 0.25rem !important; }
.ml-md-1 {
margin-left: 0.25rem !important; }
.mx-md-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important; }
.my-md-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important; }
.m-md-2 {
margin: 0.5rem 0.5rem !important; }
.mt-md-2 {
margin-top: 0.5rem !important; }
.mr-md-2 {
margin-right: 0.5rem !important; }
.mb-md-2 {
margin-bottom: 0.5rem !important; }
.ml-md-2 {
margin-left: 0.5rem !important; }
.mx-md-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important; }
.my-md-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important; }
.m-md-3 {
margin: 1rem 1rem !important; }
.mt-md-3 {
margin-top: 1rem !important; }
.mr-md-3 {
margin-right: 1rem !important; }
.mb-md-3 {
margin-bottom: 1rem !important; }
.ml-md-3 {
margin-left: 1rem !important; }
.mx-md-3 {
margin-right: 1rem !important;
margin-left: 1rem !important; }
.my-md-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important; }
.m-md-4 {
margin: 1.5rem 1.5rem !important; }
.mt-md-4 {
margin-top: 1.5rem !important; }
.mr-md-4 {
margin-right: 1.5rem !important; }
.mb-md-4 {
margin-bottom: 1.5rem !important; }
.ml-md-4 {
margin-left: 1.5rem !important; }
.mx-md-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important; }
.my-md-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important; }
.m-md-5 {
margin: 3rem 3rem !important; }
.mt-md-5 {
margin-top: 3rem !important; }
.mr-md-5 {
margin-right: 3rem !important; }
.mb-md-5 {
margin-bottom: 3rem !important; }
.ml-md-5 {
margin-left: 3rem !important; }
.mx-md-5 {
margin-right: 3rem !important;
margin-left: 3rem !important; }
.my-md-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important; }
.p-md-0 {
padding: 0 0 !important; }
.pt-md-0 {
padding-top: 0 !important; }
.pr-md-0 {
padding-right: 0 !important; }
.pb-md-0 {
padding-bottom: 0 !important; }
.pl-md-0 {
padding-left: 0 !important; }
.px-md-0 {
padding-right: 0 !important;
padding-left: 0 !important; }
.py-md-0 {
padding-top: 0 !important;
padding-bottom: 0 !important; }
.p-md-1 {
padding: 0.25rem 0.25rem !important; }
.pt-md-1 {
padding-top: 0.25rem !important; }
.pr-md-1 {
padding-right: 0.25rem !important; }
.pb-md-1 {
padding-bottom: 0.25rem !important; }
.pl-md-1 {
padding-left: 0.25rem !important; }
.px-md-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important; }
.py-md-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important; }
.p-md-2 {
padding: 0.5rem 0.5rem !important; }
.pt-md-2 {
padding-top: 0.5rem !important; }
.pr-md-2 {
padding-right: 0.5rem !important; }
.pb-md-2 {
padding-bottom: 0.5rem !important; }
.pl-md-2 {
padding-left: 0.5rem !important; }
.px-md-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important; }
.py-md-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important; }
.p-md-3 {
padding: 1rem 1rem !important; }
.pt-md-3 {
padding-top: 1rem !important; }
.pr-md-3 {
padding-right: 1rem !important; }
.pb-md-3 {
padding-bottom: 1rem !important; }
.pl-md-3 {
padding-left: 1rem !important; }
.px-md-3 {
padding-right: 1rem !important;
padding-left: 1rem !important; }
.py-md-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important; }
.p-md-4 {
padding: 1.5rem 1.5rem !important; }
.pt-md-4 {
padding-top: 1.5rem !important; }
.pr-md-4 {
padding-right: 1.5rem !important; }
.pb-md-4 {
padding-bottom: 1.5rem !important; }
.pl-md-4 {
padding-left: 1.5rem !important; }
.px-md-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important; }
.py-md-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important; }
.p-md-5 {
padding: 3rem 3rem !important; }
.pt-md-5 {
padding-top: 3rem !important; }
.pr-md-5 {
padding-right: 3rem !important; }
.pb-md-5 {
padding-bottom: 3rem !important; }
.pl-md-5 {
padding-left: 3rem !important; }
.px-md-5 {
padding-right: 3rem !important;
padding-left: 3rem !important; }
.py-md-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important; }
.m-md-auto {
margin: auto !important; }
.mt-md-auto {
margin-top: auto !important; }
.mr-md-auto {
margin-right: auto !important; }
.mb-md-auto {
margin-bottom: auto !important; }
.ml-md-auto {
margin-left: auto !important; }
.mx-md-auto {
margin-right: auto !important;
margin-left: auto !important; }
.my-md-auto {
margin-top: auto !important;
margin-bottom: auto !important; } }
@media (min-width: 992px) {
.m-lg-0 {
margin: 0 0 !important; }
.mt-lg-0 {
margin-top: 0 !important; }
.mr-lg-0 {
margin-right: 0 !important; }
.mb-lg-0 {
margin-bottom: 0 !important; }
.ml-lg-0 {
margin-left: 0 !important; }
.mx-lg-0 {
margin-right: 0 !important;
margin-left: 0 !important; }
.my-lg-0 {
margin-top: 0 !important;
margin-bottom: 0 !important; }
.m-lg-1 {
margin: 0.25rem 0.25rem !important; }
.mt-lg-1 {
margin-top: 0.25rem !important; }
.mr-lg-1 {
margin-right: 0.25rem !important; }
.mb-lg-1 {
margin-bottom: 0.25rem !important; }
.ml-lg-1 {
margin-left: 0.25rem !important; }
.mx-lg-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important; }
.my-lg-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important; }
.m-lg-2 {
margin: 0.5rem 0.5rem !important; }
.mt-lg-2 {
margin-top: 0.5rem !important; }
.mr-lg-2 {
margin-right: 0.5rem !important; }
.mb-lg-2 {
margin-bottom: 0.5rem !important; }
.ml-lg-2 {
margin-left: 0.5rem !important; }
.mx-lg-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important; }
.my-lg-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important; }
.m-lg-3 {
margin: 1rem 1rem !important; }
.mt-lg-3 {
margin-top: 1rem !important; }
.mr-lg-3 {
margin-right: 1rem !important; }
.mb-lg-3 {
margin-bottom: 1rem !important; }
.ml-lg-3 {
margin-left: 1rem !important; }
.mx-lg-3 {
margin-right: 1rem !important;
margin-left: 1rem !important; }
.my-lg-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important; }
.m-lg-4 {
margin: 1.5rem 1.5rem !important; }
.mt-lg-4 {
margin-top: 1.5rem !important; }
.mr-lg-4 {
margin-right: 1.5rem !important; }
.mb-lg-4 {
margin-bottom: 1.5rem !important; }
.ml-lg-4 {
margin-left: 1.5rem !important; }
.mx-lg-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important; }
.my-lg-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important; }
.m-lg-5 {
margin: 3rem 3rem !important; }
.mt-lg-5 {
margin-top: 3rem !important; }
.mr-lg-5 {
margin-right: 3rem !important; }
.mb-lg-5 {
margin-bottom: 3rem !important; }
.ml-lg-5 {
margin-left: 3rem !important; }
.mx-lg-5 {
margin-right: 3rem !important;
margin-left: 3rem !important; }
.my-lg-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important; }
.p-lg-0 {
padding: 0 0 !important; }
.pt-lg-0 {
padding-top: 0 !important; }
.pr-lg-0 {
padding-right: 0 !important; }
.pb-lg-0 {
padding-bottom: 0 !important; }
.pl-lg-0 {
padding-left: 0 !important; }
.px-lg-0 {
padding-right: 0 !important;
padding-left: 0 !important; }
.py-lg-0 {
padding-top: 0 !important;
padding-bottom: 0 !important; }
.p-lg-1 {
padding: 0.25rem 0.25rem !important; }
.pt-lg-1 {
padding-top: 0.25rem !important; }
.pr-lg-1 {
padding-right: 0.25rem !important; }
.pb-lg-1 {
padding-bottom: 0.25rem !important; }
.pl-lg-1 {
padding-left: 0.25rem !important; }
.px-lg-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important; }
.py-lg-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important; }
.p-lg-2 {
padding: 0.5rem 0.5rem !important; }
.pt-lg-2 {
padding-top: 0.5rem !important; }
.pr-lg-2 {
padding-right: 0.5rem !important; }
.pb-lg-2 {
padding-bottom: 0.5rem !important; }
.pl-lg-2 {
padding-left: 0.5rem !important; }
.px-lg-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important; }
.py-lg-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important; }
.p-lg-3 {
padding: 1rem 1rem !important; }
.pt-lg-3 {
padding-top: 1rem !important; }
.pr-lg-3 {
padding-right: 1rem !important; }
.pb-lg-3 {
padding-bottom: 1rem !important; }
.pl-lg-3 {
padding-left: 1rem !important; }
.px-lg-3 {
padding-right: 1rem !important;
padding-left: 1rem !important; }
.py-lg-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important; }
.p-lg-4 {
padding: 1.5rem 1.5rem !important; }
.pt-lg-4 {
padding-top: 1.5rem !important; }
.pr-lg-4 {
padding-right: 1.5rem !important; }
.pb-lg-4 {
padding-bottom: 1.5rem !important; }
.pl-lg-4 {
padding-left: 1.5rem !important; }
.px-lg-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important; }
.py-lg-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important; }
.p-lg-5 {
padding: 3rem 3rem !important; }
.pt-lg-5 {
padding-top: 3rem !important; }
.pr-lg-5 {
padding-right: 3rem !important; }
.pb-lg-5 {
padding-bottom: 3rem !important; }
.pl-lg-5 {
padding-left: 3rem !important; }
.px-lg-5 {
padding-right: 3rem !important;
padding-left: 3rem !important; }
.py-lg-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important; }
.m-lg-auto {
margin: auto !important; }
.mt-lg-auto {
margin-top: auto !important; }
.mr-lg-auto {
margin-right: auto !important; }
.mb-lg-auto {
margin-bottom: auto !important; }
.ml-lg-auto {
margin-left: auto !important; }
.mx-lg-auto {
margin-right: auto !important;
margin-left: auto !important; }
.my-lg-auto {
margin-top: auto !important;
margin-bottom: auto !important; } }
@media (min-width: 1200px) {
.m-xl-0 {
margin: 0 0 !important; }
.mt-xl-0 {
margin-top: 0 !important; }
.mr-xl-0 {
margin-right: 0 !important; }
.mb-xl-0 {
margin-bottom: 0 !important; }
.ml-xl-0 {
margin-left: 0 !important; }
.mx-xl-0 {
margin-right: 0 !important;
margin-left: 0 !important; }
.my-xl-0 {
margin-top: 0 !important;
margin-bottom: 0 !important; }
.m-xl-1 {
margin: 0.25rem 0.25rem !important; }
.mt-xl-1 {
margin-top: 0.25rem !important; }
.mr-xl-1 {
margin-right: 0.25rem !important; }
.mb-xl-1 {
margin-bottom: 0.25rem !important; }
.ml-xl-1 {
margin-left: 0.25rem !important; }
.mx-xl-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important; }
.my-xl-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important; }
.m-xl-2 {
margin: 0.5rem 0.5rem !important; }
.mt-xl-2 {
margin-top: 0.5rem !important; }
.mr-xl-2 {
margin-right: 0.5rem !important; }
.mb-xl-2 {
margin-bottom: 0.5rem !important; }
.ml-xl-2 {
margin-left: 0.5rem !important; }
.mx-xl-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important; }
.my-xl-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important; }
.m-xl-3 {
margin: 1rem 1rem !important; }
.mt-xl-3 {
margin-top: 1rem !important; }
.mr-xl-3 {
margin-right: 1rem !important; }
.mb-xl-3 {
margin-bottom: 1rem !important; }
.ml-xl-3 {
margin-left: 1rem !important; }
.mx-xl-3 {
margin-right: 1rem !important;
margin-left: 1rem !important; }
.my-xl-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important; }
.m-xl-4 {
margin: 1.5rem 1.5rem !important; }
.mt-xl-4 {
margin-top: 1.5rem !important; }
.mr-xl-4 {
margin-right: 1.5rem !important; }
.mb-xl-4 {
margin-bottom: 1.5rem !important; }
.ml-xl-4 {
margin-left: 1.5rem !important; }
.mx-xl-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important; }
.my-xl-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important; }
.m-xl-5 {
margin: 3rem 3rem !important; }
.mt-xl-5 {
margin-top: 3rem !important; }
.mr-xl-5 {
margin-right: 3rem !important; }
.mb-xl-5 {
margin-bottom: 3rem !important; }
.ml-xl-5 {
margin-left: 3rem !important; }
.mx-xl-5 {
margin-right: 3rem !important;
margin-left: 3rem !important; }
.my-xl-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important; }
.p-xl-0 {
padding: 0 0 !important; }
.pt-xl-0 {
padding-top: 0 !important; }
.pr-xl-0 {
padding-right: 0 !important; }
.pb-xl-0 {
padding-bottom: 0 !important; }
.pl-xl-0 {
padding-left: 0 !important; }
.px-xl-0 {
padding-right: 0 !important;
padding-left: 0 !important; }
.py-xl-0 {
padding-top: 0 !important;
padding-bottom: 0 !important; }
.p-xl-1 {
padding: 0.25rem 0.25rem !important; }
.pt-xl-1 {
padding-top: 0.25rem !important; }
.pr-xl-1 {
padding-right: 0.25rem !important; }
.pb-xl-1 {
padding-bottom: 0.25rem !important; }
.pl-xl-1 {
padding-left: 0.25rem !important; }
.px-xl-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important; }
.py-xl-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important; }
.p-xl-2 {
padding: 0.5rem 0.5rem !important; }
.pt-xl-2 {
padding-top: 0.5rem !important; }
.pr-xl-2 {
padding-right: 0.5rem !important; }
.pb-xl-2 {
padding-bottom: 0.5rem !important; }
.pl-xl-2 {
padding-left: 0.5rem !important; }
.px-xl-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important; }
.py-xl-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important; }
.p-xl-3 {
padding: 1rem 1rem !important; }
.pt-xl-3 {
padding-top: 1rem !important; }
.pr-xl-3 {
padding-right: 1rem !important; }
.pb-xl-3 {
padding-bottom: 1rem !important; }
.pl-xl-3 {
padding-left: 1rem !important; }
.px-xl-3 {
padding-right: 1rem !important;
padding-left: 1rem !important; }
.py-xl-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important; }
.p-xl-4 {
padding: 1.5rem 1.5rem !important; }
.pt-xl-4 {
padding-top: 1.5rem !important; }
.pr-xl-4 {
padding-right: 1.5rem !important; }
.pb-xl-4 {
padding-bottom: 1.5rem !important; }
.pl-xl-4 {
padding-left: 1.5rem !important; }
.px-xl-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important; }
.py-xl-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important; }
.p-xl-5 {
padding: 3rem 3rem !important; }
.pt-xl-5 {
padding-top: 3rem !important; }
.pr-xl-5 {
padding-right: 3rem !important; }
.pb-xl-5 {
padding-bottom: 3rem !important; }
.pl-xl-5 {
padding-left: 3rem !important; }
.px-xl-5 {
padding-right: 3rem !important;
padding-left: 3rem !important; }
.py-xl-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important; }
.m-xl-auto {
margin: auto !important; }
.mt-xl-auto {
margin-top: auto !important; }
.mr-xl-auto {
margin-right: auto !important; }
.mb-xl-auto {
margin-bottom: auto !important; }
.ml-xl-auto {
margin-left: auto !important; }
.mx-xl-auto {
margin-right: auto !important;
margin-left: auto !important; }
.my-xl-auto {
margin-top: auto !important;
margin-bottom: auto !important; } }
.text-justify {
text-align: justify !important; }
.text-nowrap {
white-space: nowrap !important; }
.text-truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap; }
.text-left {
text-align: left !important; }
.text-right {
text-align: right !important; }
.text-center {
text-align: center !important; }
@media (min-width: 576px) {
.text-sm-left {
text-align: left !important; }
.text-sm-right {
text-align: right !important; }
.text-sm-center {
text-align: center !important; } }
@media (min-width: 768px) {
.text-md-left {
text-align: left !important; }
.text-md-right {
text-align: right !important; }
.text-md-center {
text-align: center !important; } }
@media (min-width: 992px) {
.text-lg-left {
text-align: left !important; }
.text-lg-right {
text-align: right !important; }
.text-lg-center {
text-align: center !important; } }
@media (min-width: 1200px) {
.text-xl-left {
text-align: left !important; }
.text-xl-right {
text-align: right !important; }
.text-xl-center {
text-align: center !important; } }
.text-lowercase {
text-transform: lowercase !important; }
.text-uppercase {
text-transform: uppercase !important; }
.text-capitalize {
text-transform: capitalize !important; }
.font-weight-normal {
font-weight: normal; }
.font-weight-bold {
font-weight: 700; }
.font-italic {
font-style: italic; }
.text-white {
color: #fff !important; }
.text-muted {
color: #b3b9bd !important; }
a.text-muted:focus, a.text-muted:hover {
color: #979fa5 !important; }
.text-primary {
color: #220035 !important; }
a.text-primary:focus, a.text-primary:hover {
color: #010002 !important; }
.text-success {
color: #5cb85c !important; }
a.text-success:focus, a.text-success:hover {
color: #449d44 !important; }
.text-info {
color: #5bc0de !important; }
a.text-info:focus, a.text-info:hover {
color: #31b0d5 !important; }
.text-warning {
color: #f0ad4e !important; }
a.text-warning:focus, a.text-warning:hover {
color: #ec971f !important; }
.text-danger {
color: #d9534f !important; }
a.text-danger:focus, a.text-danger:hover {
color: #c9302c !important; }
.text-gray-dark {
color: #292b2c !important; }
a.text-gray-dark:focus, a.text-gray-dark:hover {
color: #101112 !important; }
.text-hide {
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0; }
.invisible {
visibility: hidden !important; }
.hidden-xs-up {
display: none !important; }
@media (max-width: 575px) {
.hidden-xs-down {
display: none !important; } }
@media (min-width: 576px) {
.hidden-sm-up {
display: none !important; } }
@media (max-width: 767px) {
.hidden-sm-down {
display: none !important; } }
@media (min-width: 768px) {
.hidden-md-up {
display: none !important; } }
@media (max-width: 991px) {
.hidden-md-down {
display: none !important; } }
@media (min-width: 992px) {
.hidden-lg-up {
display: none !important; } }
@media (max-width: 1199px) {
.hidden-lg-down {
display: none !important; } }
@media (min-width: 1200px) {
.hidden-xl-up {
display: none !important; } }
.hidden-xl-down {
display: none !important; }
.visible-print-block {
display: none !important; }
@media print {
.visible-print-block {
display: block !important; } }
.visible-print-inline {
display: none !important; }
@media print {
.visible-print-inline {
display: inline !important; } }
.visible-print-inline-block {
display: none !important; }
@media print {
.visible-print-inline-block {
display: inline-block !important; } }
@media print {
.hidden-print {
display: none !important; } }
html {
height: 100%;
overflow-x: hidden; }
body {
padding: 0;
height: 100%;
position: relative; }
h1, .h1, h2, .h2 {
margin-top: 40px;
margin-bottom: 25px;
padding-bottom: 15px;
font-weight: 400; }
h3, .h3 {
margin-top: 45px;
margin-bottom: 15px;
font-weight: 400; }
h4, .h4 {
margin-top: 45px;
margin-bottom: 15px;
font-weight: 400; }
a:hover, a:focus {
text-decoration: none;
outline: none; }
p {
font-size: 1.125rem;
line-height: 1.7;
font-weight: 400;
color: #626262;
margin-bottom: 30px; }
p b, p strong {
font-weight: 400; }
button:focus {
outline: none !important; }
.header {
display: flex;
flex-direction: row;
justify-content: space-between;
border-bottom: 1px solid #f0f0f0;
height: 57px;
align-items: center; }
.header:last-child {
border-bottom: 0; }
.header h1, .header h2, .header h3 {
margin: 0;
padding: 0; }
.header .description {
color: #a9a9a9; }
.docs-topheader {
position: fixed;
top: 0;
width: 100%;
background-color: #220035;
flex-direction: row;
align-items: center;
padding: 20px 40px; }
.navbar-brand {
height: 26px;
width: 130px;
background-image: url("../img/logo.png");
background-size: 130px auto;
background-repeat: no-repeat; }
.left-sidebar-toggle {
display: inline-block;
width: 1.5rem;
height: 1.5rem;
vertical-align: middle;
content: '';
margin-right: 20px;
background: no-repeat center center;
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 34 34' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='3' stroke-miterlimit='10' d='M4 8h26M4 16h26M4 24h26'/%3E%3C/svg%3E"); }
.left-sidebar {
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 391px;
background-color: #220035; }
@media (max-width: 575px) {
.left-sidebar {
position: fixed;
display: table;
height: 100%;
top: 66px;
left: -401px;
box-shadow: 0 6px 18px 0 rgba(0, 0, 0, 0.18);
width: 250px; }
.left-sidebar.left-sidebar-open {
left: 0; } }
.docs-animate .left-sidebar {
transition: all 0.35s ease; }
.left-sidebar__logo {
padding: 59px 50px; }
@media (max-width: 575px) {
.left-sidebar__logo {
display: none; } }
.left-sidebar__logo img.logo {
width: 171px;
height: 34px; }
@media (max-width: 575px) {
.left-sidebar__logo img.logo {
width: 130px;
height: 26px; } }
.left-sidebar__elements {
margin-top: 30px;
padding: 0;
list-style: none;
flex-direction: column;
text-align: right; }
@media (max-width: 575px) {
.left-sidebar__elements {
margin-top: 10px; } }
.left-sidebar__elements > li a {
display: block; }
.left-sidebar__elements > li > a {
color: #b2b2b2;
padding: 15px 40px;
font-size: .9em;
font-weight: 500;
line-height: 1;
text-transform: uppercase;
border-right: 6px solid transparent; }
.left-sidebar__elements > li > a:hover, .left-sidebar__elements > li > a:focus {
background-color: transparent;
color: #cccbcb; }
.left-sidebar__elements > li > a.active {
color: #ff344b;
border-right: 6px solid; }
.left-sidebar__elements > li > a.active + ul.sub-menu {
display: block; }
.left-sidebar__elements > li > a.active + ul.sub-menu > li.active > a {
color: #430068; }
.left-sidebar__elements > li > ul.sub-menu {
display: none;
margin: 0;
padding: 15px 40px;
background-color: #1a002d; }
.left-sidebar__elements > li > ul.sub-menu > li {
list-style: none; }
.left-sidebar__elements > li > ul.sub-menu > li > a {
font-size: .8rem;
font-weight: 400;
padding: 8px 0;
color: #ffffff;
opacity: .48; }
.left-sidebar__elements > li > ul.sub-menu > li > a:hover, .left-sidebar__elements > li > ul.sub-menu > li > a:focus {
background-color: transparent;
opacity: .9; }
.left-sidebar__elements > li > ul.sub-menu > li > a.active {
opacity: 1; }
.docs-content {
margin-left: 391px;
color: #626262; }
@media (max-width: 575px) {
.docs-content {
margin-left: 0;
margin-top: 66px; } }
.docs-content section:nth-child(odd) {
background-color: #fafafa; }
.docs-content section:nth-last-child(1):nth-last-child(odd) {
background-color: #fafafa; }
.docs-content section:nth-last-child(1):nth-last-child(even) {
background-color: #fff; }
.docs-content > section {
padding: 40px 118px; }
@media (max-width: 575px) {
.docs-content > section {
padding: 20px 40px; } }
.docs-content ul, .docs-content ol {
margin-bottom: 20px; }
.docs-content ul li, .docs-content ol li {
line-height: 35px; }
.docs-content b, .docs-content strong {
font-weight: 500; }
.docs-content .introduction {
padding-top: 50px;
padding-bottom: 144px;
background-image: url("../img/space-ship.png");
background-repeat: no-repeat;
background-position: 90% bottom;
background-size: 250px auto; }
@media (max-width: 575px) {
.docs-content .introduction {
padding-top: 20px;
padding-bottom: 40px;
background-image: none; } }
@media (max-width: 575px) {
.footer-nav {
margin-bottom: 20px;
flex-direction: column; } }
.footer-nav .nav-link {
color: #5b5b5b;
text-transform: uppercase;
font-weight: 500;
font-size: .9375rem; }
.footer-nav .nav-link:first-child {
padding-left: 0; }
.footer-description {
font-size: .875rem;
color: #888;
line-height: 1.8; }
/* Pretty printing styles. Used with prettify.js. */
pre {
font-size: 1rem;
line-height: 1.5;
font-family: "Source Code Pro", monospace;
border-radius: 4px;
}
.code-panel__heading {
background: #070016;
color: #cecece;
font-size: 15px;
padding: 21px 30px; }
.code-panel__button {
display: inline-block;
border-radius: 50%;
height: 13px;
width: 13px;
background-color: #3d2948;
margin-right: 13px; }
pre {
border: 0;
padding: 30px;
margin-bottom: 35px;
background-color: #070016;
color: #EDEBE6;
}
@media (max-width: 575px) {
pre {
padding: 25px; } }
pre .pln {
color: #e3e2e0; }
pre .str {
color: #DD1144; }
pre .kwd {
color: #f386ac; }
pre .com {
color: #696969; }
pre .typ {
color: #9fd0ec; }
pre .lit {
color: #dcc175; }
pre .pun,
pre .opn,
pre .clo {
color: #e3e2e0; }
pre .tag {
color: #f386ac; }
pre .atn {
color: #9fd0ec; }
pre .atv {
color: #dcc175; }
pre .dec,
pre .var {
color: #DD1144; }
pre .fun {
color: #445588; }
/* Specify class=linenums on a pre to get line numbering */
ol.linenums {
margin-top: 0;
margin-bottom: 0; }
/* IE indents via margin-left */
li.L0,
li.L1,
li.L2,
li.L3,
li.L5,
li.L6,
li.L7,
li.L8 {
list-style-type: none; }
/* Alternate shading for lines */
li.L1,
li.L3,
li.L5,
li.L7,
li.L9 {
background: #eee; }
.table {
margin-bottom: 2.5rem; }
.table > thead > tr > th {
border-bottom-width: 1px;
font-weight: 500;
font-size: 16px; }
.table > thead.primary > tr > th {
color: #220035; }
.table > thead.alt3 > tr > th {
color: #7a98bf; }
.table > tbody > tr > td {
font-weight: 400;
font-size: 14px;
color: #747474;
vertical-align: middle; }
.table > tbody.no-border-x > tr > td {
border-top-width: 0; }
.table-condensed > thead > tr > th {
padding-top: 10px;
padding-bottom: 8px; }
.table-responsive {
border: 0; }
.table tbody tr td.user-avatar img {
height: 30px;
width: 30px;
border-radius: 50%;
margin-right: 10px; }
@media (max-width: 575px) {
.table tbody tr td.user-avatar img {
display: none; } }
.table .number {
text-align: right; }
.table-fw-widget tr th:first-child, .table-fw-widget tr td:first-child {
padding-left: 15px; }
.table-fw-widget tr th:last-child, .table-fw-widget tr td:last-child {
padding-right: 15px; }
.table-fw-widget thead tr th {
padding-top: 15px;
padding-bottom: 10px; }
.table-hover > tbody > tr:hover {
background-color: rgba(0, 0, 0, 0.075); }
================================================
FILE: docs/static/js/app.js
================================================
/*!
* jira-cli-documentation v0.0.1 (http://jiracl.com)
* Copyright 2019 Foxy Themes all rights reserved
*/
var App = (function () {
//Core private functions
function leftSidebarInit(){
$( ".left-sidebar-toggle" ).click(function() {
$( '.left-sidebar' ).toggleClass( "left-sidebar-open" );
});
/*Close sidebar on click outside*/
$( document ).on("mousedown touchstart",function( e ){
if ( !$( e.target ).closest( '.left-sidebar' ).length && !$( e.target ).closest( $( ".left-sidebar-toggle" ) ).length && $('.left-sidebar').hasClass('left-sidebar-open') ) {
$('.left-sidebar').removeClass( 'left-sidebar-open' );
}
});
}
return {
init: function (options) {
leftSidebarInit();
prettyPrint();
}
};
})();
================================================
FILE: docs/static/lib/bootstrap/dist/css/bootstrap-grid.css
================================================
@-ms-viewport {
width: device-width;
}
html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
-ms-overflow-style: scrollbar;
}
*,
*::before,
*::after {
-webkit-box-sizing: inherit;
box-sizing: inherit;
}
.container {
position: relative;
margin-left: auto;
margin-right: auto;
padding-right: 15px;
padding-left: 15px;
}
@media (min-width: 576px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 768px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 992px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 1200px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 576px) {
.container {
width: 540px;
max-width: 100%;
}
}
@media (min-width: 768px) {
.container {
width: 720px;
max-width: 100%;
}
}
@media (min-width: 992px) {
.container {
width: 960px;
max-width: 100%;
}
}
@media (min-width: 1200px) {
.container {
width: 1140px;
max-width: 100%;
}
}
.container-fluid {
position: relative;
margin-left: auto;
margin-right: auto;
padding-right: 15px;
padding-left: 15px;
}
@media (min-width: 576px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 768px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 992px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 1200px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
.row {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-right: -15px;
margin-left: -15px;
}
@media (min-width: 576px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
@media (min-width: 768px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
@media (min-width: 992px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
@media (min-width: 1200px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
.no-gutters {
margin-right: 0;
margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*="col-"] {
padding-right: 0;
padding-left: 0;
}
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
position: relative;
width: 100%;
min-height: 1px;
padding-right: 15px;
padding-left: 15px;
}
@media (min-width: 576px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 768px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 992px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 1200px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
.col {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-0 {
right: auto;
}
.pull-1 {
right: 8.333333%;
}
.pull-2 {
right: 16.666667%;
}
.pull-3 {
right: 25%;
}
.pull-4 {
right: 33.333333%;
}
.pull-5 {
right: 41.666667%;
}
.pull-6 {
right: 50%;
}
.pull-7 {
right: 58.333333%;
}
.pull-8 {
right: 66.666667%;
}
.pull-9 {
right: 75%;
}
.pull-10 {
right: 83.333333%;
}
.pull-11 {
right: 91.666667%;
}
.pull-12 {
right: 100%;
}
.push-0 {
left: auto;
}
.push-1 {
left: 8.333333%;
}
.push-2 {
left: 16.666667%;
}
.push-3 {
left: 25%;
}
.push-4 {
left: 33.333333%;
}
.push-5 {
left: 41.666667%;
}
.push-6 {
left: 50%;
}
.push-7 {
left: 58.333333%;
}
.push-8 {
left: 66.666667%;
}
.push-9 {
left: 75%;
}
.push-10 {
left: 83.333333%;
}
.push-11 {
left: 91.666667%;
}
.push-12 {
left: 100%;
}
.offset-1 {
margin-left: 8.333333%;
}
.offset-2 {
margin-left: 16.666667%;
}
.offset-3 {
margin-left: 25%;
}
.offset-4 {
margin-left: 33.333333%;
}
.offset-5 {
margin-left: 41.666667%;
}
.offset-6 {
margin-left: 50%;
}
.offset-7 {
margin-left: 58.333333%;
}
.offset-8 {
margin-left: 66.666667%;
}
.offset-9 {
margin-left: 75%;
}
.offset-10 {
margin-left: 83.333333%;
}
.offset-11 {
margin-left: 91.666667%;
}
@media (min-width: 576px) {
.col-sm {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-sm-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-sm-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-sm-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-sm-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-sm-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-sm-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-sm-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-sm-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-sm-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-sm-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-sm-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-sm-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-sm-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-sm-0 {
right: auto;
}
.pull-sm-1 {
right: 8.333333%;
}
.pull-sm-2 {
right: 16.666667%;
}
.pull-sm-3 {
right: 25%;
}
.pull-sm-4 {
right: 33.333333%;
}
.pull-sm-5 {
right: 41.666667%;
}
.pull-sm-6 {
right: 50%;
}
.pull-sm-7 {
right: 58.333333%;
}
.pull-sm-8 {
right: 66.666667%;
}
.pull-sm-9 {
right: 75%;
}
.pull-sm-10 {
right: 83.333333%;
}
.pull-sm-11 {
right: 91.666667%;
}
.pull-sm-12 {
right: 100%;
}
.push-sm-0 {
left: auto;
}
.push-sm-1 {
left: 8.333333%;
}
.push-sm-2 {
left: 16.666667%;
}
.push-sm-3 {
left: 25%;
}
.push-sm-4 {
left: 33.333333%;
}
.push-sm-5 {
left: 41.666667%;
}
.push-sm-6 {
left: 50%;
}
.push-sm-7 {
left: 58.333333%;
}
.push-sm-8 {
left: 66.666667%;
}
.push-sm-9 {
left: 75%;
}
.push-sm-10 {
left: 83.333333%;
}
.push-sm-11 {
left: 91.666667%;
}
.push-sm-12 {
left: 100%;
}
.offset-sm-0 {
margin-left: 0%;
}
.offset-sm-1 {
margin-left: 8.333333%;
}
.offset-sm-2 {
margin-left: 16.666667%;
}
.offset-sm-3 {
margin-left: 25%;
}
.offset-sm-4 {
margin-left: 33.333333%;
}
.offset-sm-5 {
margin-left: 41.666667%;
}
.offset-sm-6 {
margin-left: 50%;
}
.offset-sm-7 {
margin-left: 58.333333%;
}
.offset-sm-8 {
margin-left: 66.666667%;
}
.offset-sm-9 {
margin-left: 75%;
}
.offset-sm-10 {
margin-left: 83.333333%;
}
.offset-sm-11 {
margin-left: 91.666667%;
}
}
@media (min-width: 768px) {
.col-md {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-md-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-md-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-md-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-md-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-md-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-md-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-md-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-md-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-md-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-md-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-md-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-md-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-md-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-md-0 {
right: auto;
}
.pull-md-1 {
right: 8.333333%;
}
.pull-md-2 {
right: 16.666667%;
}
.pull-md-3 {
right: 25%;
}
.pull-md-4 {
right: 33.333333%;
}
.pull-md-5 {
right: 41.666667%;
}
.pull-md-6 {
right: 50%;
}
.pull-md-7 {
right: 58.333333%;
}
.pull-md-8 {
right: 66.666667%;
}
.pull-md-9 {
right: 75%;
}
.pull-md-10 {
right: 83.333333%;
}
.pull-md-11 {
right: 91.666667%;
}
.pull-md-12 {
right: 100%;
}
.push-md-0 {
left: auto;
}
.push-md-1 {
left: 8.333333%;
}
.push-md-2 {
left: 16.666667%;
}
.push-md-3 {
left: 25%;
}
.push-md-4 {
left: 33.333333%;
}
.push-md-5 {
left: 41.666667%;
}
.push-md-6 {
left: 50%;
}
.push-md-7 {
left: 58.333333%;
}
.push-md-8 {
left: 66.666667%;
}
.push-md-9 {
left: 75%;
}
.push-md-10 {
left: 83.333333%;
}
.push-md-11 {
left: 91.666667%;
}
.push-md-12 {
left: 100%;
}
.offset-md-0 {
margin-left: 0%;
}
.offset-md-1 {
margin-left: 8.333333%;
}
.offset-md-2 {
margin-left: 16.666667%;
}
.offset-md-3 {
margin-left: 25%;
}
.offset-md-4 {
margin-left: 33.333333%;
}
.offset-md-5 {
margin-left: 41.666667%;
}
.offset-md-6 {
margin-left: 50%;
}
.offset-md-7 {
margin-left: 58.333333%;
}
.offset-md-8 {
margin-left: 66.666667%;
}
.offset-md-9 {
margin-left: 75%;
}
.offset-md-10 {
margin-left: 83.333333%;
}
.offset-md-11 {
margin-left: 91.666667%;
}
}
@media (min-width: 992px) {
.col-lg {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-lg-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-lg-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-lg-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-lg-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-lg-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-lg-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-lg-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-lg-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-lg-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-lg-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-lg-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-lg-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-lg-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-lg-0 {
right: auto;
}
.pull-lg-1 {
right: 8.333333%;
}
.pull-lg-2 {
right: 16.666667%;
}
.pull-lg-3 {
right: 25%;
}
.pull-lg-4 {
right: 33.333333%;
}
.pull-lg-5 {
right: 41.666667%;
}
.pull-lg-6 {
right: 50%;
}
.pull-lg-7 {
right: 58.333333%;
}
.pull-lg-8 {
right: 66.666667%;
}
.pull-lg-9 {
right: 75%;
}
.pull-lg-10 {
right: 83.333333%;
}
.pull-lg-11 {
right: 91.666667%;
}
.pull-lg-12 {
right: 100%;
}
.push-lg-0 {
left: auto;
}
.push-lg-1 {
left: 8.333333%;
}
.push-lg-2 {
left: 16.666667%;
}
.push-lg-3 {
left: 25%;
}
.push-lg-4 {
left: 33.333333%;
}
.push-lg-5 {
left: 41.666667%;
}
.push-lg-6 {
left: 50%;
}
.push-lg-7 {
left: 58.333333%;
}
.push-lg-8 {
left: 66.666667%;
}
.push-lg-9 {
left: 75%;
}
.push-lg-10 {
left: 83.333333%;
}
.push-lg-11 {
left: 91.666667%;
}
.push-lg-12 {
left: 100%;
}
.offset-lg-0 {
margin-left: 0%;
}
.offset-lg-1 {
margin-left: 8.333333%;
}
.offset-lg-2 {
margin-left: 16.666667%;
}
.offset-lg-3 {
margin-left: 25%;
}
.offset-lg-4 {
margin-left: 33.333333%;
}
.offset-lg-5 {
margin-left: 41.666667%;
}
.offset-lg-6 {
margin-left: 50%;
}
.offset-lg-7 {
margin-left: 58.333333%;
}
.offset-lg-8 {
margin-left: 66.666667%;
}
.offset-lg-9 {
margin-left: 75%;
}
.offset-lg-10 {
margin-left: 83.333333%;
}
.offset-lg-11 {
margin-left: 91.666667%;
}
}
@media (min-width: 1200px) {
.col-xl {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-xl-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-xl-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-xl-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-xl-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-xl-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-xl-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-xl-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-xl-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-xl-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-xl-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-xl-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-xl-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-xl-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-xl-0 {
right: auto;
}
.pull-xl-1 {
right: 8.333333%;
}
.pull-xl-2 {
right: 16.666667%;
}
.pull-xl-3 {
right: 25%;
}
.pull-xl-4 {
right: 33.333333%;
}
.pull-xl-5 {
right: 41.666667%;
}
.pull-xl-6 {
right: 50%;
}
.pull-xl-7 {
right: 58.333333%;
}
.pull-xl-8 {
right: 66.666667%;
}
.pull-xl-9 {
right: 75%;
}
.pull-xl-10 {
right: 83.333333%;
}
.pull-xl-11 {
right: 91.666667%;
}
.pull-xl-12 {
right: 100%;
}
.push-xl-0 {
left: auto;
}
.push-xl-1 {
left: 8.333333%;
}
.push-xl-2 {
left: 16.666667%;
}
.push-xl-3 {
left: 25%;
}
.push-xl-4 {
left: 33.333333%;
}
.push-xl-5 {
left: 41.666667%;
}
.push-xl-6 {
left: 50%;
}
.push-xl-7 {
left: 58.333333%;
}
.push-xl-8 {
left: 66.666667%;
}
.push-xl-9 {
left: 75%;
}
.push-xl-10 {
left: 83.333333%;
}
.push-xl-11 {
left: 91.666667%;
}
.push-xl-12 {
left: 100%;
}
.offset-xl-0 {
margin-left: 0%;
}
.offset-xl-1 {
margin-left: 8.333333%;
}
.offset-xl-2 {
margin-left: 16.666667%;
}
.offset-xl-3 {
margin-left: 25%;
}
.offset-xl-4 {
margin-left: 33.333333%;
}
.offset-xl-5 {
margin-left: 41.666667%;
}
.offset-xl-6 {
margin-left: 50%;
}
.offset-xl-7 {
margin-left: 58.333333%;
}
.offset-xl-8 {
margin-left: 66.666667%;
}
.offset-xl-9 {
margin-left: 75%;
}
.offset-xl-10 {
margin-left: 83.333333%;
}
.offset-xl-11 {
margin-left: 91.666667%;
}
}
/*# sourceMappingURL=bootstrap-grid.css.map */
================================================
FILE: docs/static/lib/bootstrap/dist/css/bootstrap-reboot.css
================================================
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
html {
font-family: sans-serif;
line-height: 1.15;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
margin: 0;
}
article,
aside,
footer,
header,
nav,
section {
display: block;
}
h1 {
font-size: 2em;
margin: 0.67em 0;
}
figcaption,
figure,
main {
display: block;
}
figure {
margin: 1em 40px;
}
hr {
-webkit-box-sizing: content-box;
box-sizing: content-box;
height: 0;
overflow: visible;
}
pre {
font-family: monospace, monospace;
font-size: 1em;
}
a {
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a:active,
a:hover {
outline-width: 0;
}
abbr[title] {
border-bottom: none;
text-decoration: underline;
text-decoration: underline dotted;
}
b,
strong {
font-weight: inherit;
}
b,
strong {
font-weight: bolder;
}
code,
kbd,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
dfn {
font-style: italic;
}
mark {
background-color: #ff0;
color: #000;
}
small {
font-size: 80%;
}
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
audio,
video {
display: inline-block;
}
audio:not([controls]) {
display: none;
height: 0;
}
img {
border-style: none;
}
svg:not(:root) {
overflow: hidden;
}
button,
input,
optgroup,
select,
textarea {
font-family: sans-serif;
font-size: 100%;
line-height: 1.15;
margin: 0;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
}
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
legend {
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal;
}
progress {
display: inline-block;
vertical-align: baseline;
}
textarea {
overflow: auto;
}
[type="checkbox"],
[type="radio"] {
-webkit-box-sizing: border-box;
box-sizing: border-box;
padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}
details,
menu {
display: block;
}
summary {
display: list-item;
}
canvas {
display: inline-block;
}
template {
display: none;
}
[hidden] {
display: none;
}
html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
*,
*::before,
*::after {
-webkit-box-sizing: inherit;
box-sizing: inherit;
}
@-ms-viewport {
width: device-width;
}
html {
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: transparent;
}
body {
font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-size: 1rem;
font-weight: normal;
line-height: 1.5;
color: #292b2c;
background-color: #fff;
}
[tabindex="-1"]:focus {
outline: none !important;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: .5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
cursor: help;
}
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit;
}
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0;
}
dt {
font-weight: bold;
}
dd {
margin-bottom: .5rem;
margin-left: 0;
}
blockquote {
margin: 0 0 1rem;
}
a {
color: #0275d8;
text-decoration: none;
}
a:focus, a:hover {
color: #014c8c;
text-decoration: underline;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
outline: 0;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
}
figure {
margin: 0 0 1rem;
}
img {
vertical-align: middle;
}
[role="button"] {
cursor: pointer;
}
a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
-ms-touch-action: manipulation;
touch-action: manipulation;
}
table {
border-collapse: collapse;
background-color: transparent;
}
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #636c72;
text-align: left;
caption-side: bottom;
}
th {
text-align: left;
}
label {
display: inline-block;
margin-bottom: .5rem;
}
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
textarea {
line-height: inherit;
}
input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
cursor: not-allowed;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox;
}
textarea {
resize: vertical;
}
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit;
}
input[type="search"] {
-webkit-appearance: none;
}
output {
display: inline-block;
}
[hidden] {
display: none !important;
}
/*# sourceMappingURL=bootstrap-reboot.css.map */
================================================
FILE: docs/static/lib/bootstrap/dist/css/bootstrap.css
================================================
/*!
* Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com)
* Copyright 2011-2017 The Bootstrap Authors
* Copyright 2011-2017 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
html {
font-family: sans-serif;
line-height: 1.15;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
margin: 0;
}
article,
aside,
footer,
header,
nav,
section {
display: block;
}
h1 {
font-size: 2em;
margin: 0.67em 0;
}
figcaption,
figure,
main {
display: block;
}
figure {
margin: 1em 40px;
}
hr {
-webkit-box-sizing: content-box;
box-sizing: content-box;
height: 0;
overflow: visible;
}
pre {
font-family: monospace, monospace;
font-size: 1em;
}
a {
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a:active,
a:hover {
outline-width: 0;
}
abbr[title] {
border-bottom: none;
text-decoration: underline;
text-decoration: underline dotted;
}
b,
strong {
font-weight: inherit;
}
b,
strong {
font-weight: bolder;
}
code,
kbd,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
dfn {
font-style: italic;
}
mark {
background-color: #ff0;
color: #000;
}
small {
font-size: 80%;
}
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
audio,
video {
display: inline-block;
}
audio:not([controls]) {
display: none;
height: 0;
}
img {
border-style: none;
}
svg:not(:root) {
overflow: hidden;
}
button,
input,
optgroup,
select,
textarea {
font-family: sans-serif;
font-size: 100%;
line-height: 1.15;
margin: 0;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
}
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
legend {
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal;
}
progress {
display: inline-block;
vertical-align: baseline;
}
textarea {
overflow: auto;
}
[type="checkbox"],
[type="radio"] {
-webkit-box-sizing: border-box;
box-sizing: border-box;
padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}
details,
menu {
display: block;
}
summary {
display: list-item;
}
canvas {
display: inline-block;
}
template {
display: none;
}
[hidden] {
display: none;
}
@media print {
*,
*::before,
*::after,
p::first-letter,
div::first-letter,
blockquote::first-letter,
li::first-letter,
p::first-line,
div::first-line,
blockquote::first-line,
li::first-line {
text-shadow: none !important;
-webkit-box-shadow: none !important;
box-shadow: none !important;
}
a,
a:visited {
text-decoration: underline;
}
abbr[title]::after {
content: " (" attr(title) ")";
}
pre {
white-space: pre-wrap !important;
}
pre,
blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
thead {
display: table-header-group;
}
tr,
img {
page-break-inside: avoid;
}
p,
h2,
h3 {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
.navbar {
display: none;
}
.badge {
border: 1px solid #000;
}
.table {
border-collapse: collapse !important;
}
.table td,
.table th {
background-color: #fff !important;
}
.table-bordered th,
.table-bordered td {
border: 1px solid #ddd !important;
}
}
html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
*,
*::before,
*::after {
-webkit-box-sizing: inherit;
box-sizing: inherit;
}
@-ms-viewport {
width: device-width;
}
html {
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: transparent;
}
body {
font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-size: 1rem;
font-weight: normal;
line-height: 1.5;
color: #292b2c;
background-color: #fff;
}
[tabindex="-1"]:focus {
outline: none !important;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: .5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
cursor: help;
}
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit;
}
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0;
}
dt {
font-weight: bold;
}
dd {
margin-bottom: .5rem;
margin-left: 0;
}
blockquote {
margin: 0 0 1rem;
}
a {
color: #0275d8;
text-decoration: none;
}
a:focus, a:hover {
color: #014c8c;
text-decoration: underline;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
outline: 0;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
}
figure {
margin: 0 0 1rem;
}
img {
vertical-align: middle;
}
[role="button"] {
cursor: pointer;
}
a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
-ms-touch-action: manipulation;
touch-action: manipulation;
}
table {
border-collapse: collapse;
background-color: transparent;
}
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #636c72;
text-align: left;
caption-side: bottom;
}
th {
text-align: left;
}
label {
display: inline-block;
margin-bottom: .5rem;
}
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
textarea {
line-height: inherit;
}
input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
cursor: not-allowed;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox;
}
textarea {
resize: vertical;
}
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit;
}
input[type="search"] {
-webkit-appearance: none;
}
output {
display: inline-block;
}
[hidden] {
display: none !important;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
margin-bottom: 0.5rem;
font-family: inherit;
font-weight: 500;
line-height: 1.1;
color: inherit;
}
h1, .h1 {
font-size: 2.5rem;
}
h2, .h2 {
font-size: 2rem;
}
h3, .h3 {
font-size: 1.75rem;
}
h4, .h4 {
font-size: 1.5rem;
}
h5, .h5 {
font-size: 1.25rem;
}
h6, .h6 {
font-size: 1rem;
}
.lead {
font-size: 1.25rem;
font-weight: 300;
}
.display-1 {
font-size: 6rem;
font-weight: 300;
line-height: 1.1;
}
.display-2 {
font-size: 5.5rem;
font-weight: 300;
line-height: 1.1;
}
.display-3 {
font-size: 4.5rem;
font-weight: 300;
line-height: 1.1;
}
.display-4 {
font-size: 3.5rem;
font-weight: 300;
line-height: 1.1;
}
hr {
margin-top: 1rem;
margin-bottom: 1rem;
border: 0;
border-top: 1px solid rgba(0, 0, 0, 0.1);
}
small,
.small {
font-size: 80%;
font-weight: normal;
}
mark,
.mark {
padding: 0.2em;
background-color: #fcf8e3;
}
.list-unstyled {
padding-left: 0;
list-style: none;
}
.list-inline {
padding-left: 0;
list-style: none;
}
.list-inline-item {
display: inline-block;
}
.list-inline-item:not(:last-child) {
margin-right: 5px;
}
.initialism {
font-size: 90%;
text-transform: uppercase;
}
.blockquote {
padding: 0.5rem 1rem;
margin-bottom: 1rem;
font-size: 1.25rem;
border-left: 0.25rem solid #eceeef;
}
.blockquote-footer {
display: block;
font-size: 80%;
color: #636c72;
}
.blockquote-footer::before {
content: "\2014 \00A0";
}
.blockquote-reverse {
padding-right: 1rem;
padding-left: 0;
text-align: right;
border-right: 0.25rem solid #eceeef;
border-left: 0;
}
.blockquote-reverse .blockquote-footer::before {
content: "";
}
.blockquote-reverse .blockquote-footer::after {
content: "\00A0 \2014";
}
.img-fluid {
max-width: 100%;
height: auto;
}
.img-thumbnail {
padding: 0.25rem;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 0.25rem;
-webkit-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
max-width: 100%;
height: auto;
}
.figure {
display: inline-block;
}
.figure-img {
margin-bottom: 0.5rem;
line-height: 1;
}
.figure-caption {
font-size: 90%;
color: #636c72;
}
code,
kbd,
pre,
samp {
font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
code {
padding: 0.2rem 0.4rem;
font-size: 90%;
color: #bd4147;
background-color: #f7f7f9;
border-radius: 0.25rem;
}
a > code {
padding: 0;
color: inherit;
background-color: inherit;
}
kbd {
padding: 0.2rem 0.4rem;
font-size: 90%;
color: #fff;
background-color: #292b2c;
border-radius: 0.2rem;
}
kbd kbd {
padding: 0;
font-size: 100%;
font-weight: bold;
}
pre {
display: block;
margin-top: 0;
margin-bottom: 1rem;
font-size: 90%;
color: #292b2c;
}
pre code {
padding: 0;
font-size: inherit;
color: inherit;
background-color: transparent;
border-radius: 0;
}
.pre-scrollable {
max-height: 340px;
overflow-y: scroll;
}
.container {
position: relative;
margin-left: auto;
margin-right: auto;
padding-right: 15px;
padding-left: 15px;
}
@media (min-width: 576px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 768px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 992px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 1200px) {
.container {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 576px) {
.container {
width: 540px;
max-width: 100%;
}
}
@media (min-width: 768px) {
.container {
width: 720px;
max-width: 100%;
}
}
@media (min-width: 992px) {
.container {
width: 960px;
max-width: 100%;
}
}
@media (min-width: 1200px) {
.container {
width: 1140px;
max-width: 100%;
}
}
.container-fluid {
position: relative;
margin-left: auto;
margin-right: auto;
padding-right: 15px;
padding-left: 15px;
}
@media (min-width: 576px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 768px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 992px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 1200px) {
.container-fluid {
padding-right: 15px;
padding-left: 15px;
}
}
.row {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-right: -15px;
margin-left: -15px;
}
@media (min-width: 576px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
@media (min-width: 768px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
@media (min-width: 992px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
@media (min-width: 1200px) {
.row {
margin-right: -15px;
margin-left: -15px;
}
}
.no-gutters {
margin-right: 0;
margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*="col-"] {
padding-right: 0;
padding-left: 0;
}
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
position: relative;
width: 100%;
min-height: 1px;
padding-right: 15px;
padding-left: 15px;
}
@media (min-width: 576px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 768px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 992px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
@media (min-width: 1200px) {
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl {
padding-right: 15px;
padding-left: 15px;
}
}
.col {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-0 {
right: auto;
}
.pull-1 {
right: 8.333333%;
}
.pull-2 {
right: 16.666667%;
}
.pull-3 {
right: 25%;
}
.pull-4 {
right: 33.333333%;
}
.pull-5 {
right: 41.666667%;
}
.pull-6 {
right: 50%;
}
.pull-7 {
right: 58.333333%;
}
.pull-8 {
right: 66.666667%;
}
.pull-9 {
right: 75%;
}
.pull-10 {
right: 83.333333%;
}
.pull-11 {
right: 91.666667%;
}
.pull-12 {
right: 100%;
}
.push-0 {
left: auto;
}
.push-1 {
left: 8.333333%;
}
.push-2 {
left: 16.666667%;
}
.push-3 {
left: 25%;
}
.push-4 {
left: 33.333333%;
}
.push-5 {
left: 41.666667%;
}
.push-6 {
left: 50%;
}
.push-7 {
left: 58.333333%;
}
.push-8 {
left: 66.666667%;
}
.push-9 {
left: 75%;
}
.push-10 {
left: 83.333333%;
}
.push-11 {
left: 91.666667%;
}
.push-12 {
left: 100%;
}
.offset-1 {
margin-left: 8.333333%;
}
.offset-2 {
margin-left: 16.666667%;
}
.offset-3 {
margin-left: 25%;
}
.offset-4 {
margin-left: 33.333333%;
}
.offset-5 {
margin-left: 41.666667%;
}
.offset-6 {
margin-left: 50%;
}
.offset-7 {
margin-left: 58.333333%;
}
.offset-8 {
margin-left: 66.666667%;
}
.offset-9 {
margin-left: 75%;
}
.offset-10 {
margin-left: 83.333333%;
}
.offset-11 {
margin-left: 91.666667%;
}
@media (min-width: 576px) {
.col-sm {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-sm-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-sm-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-sm-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-sm-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-sm-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-sm-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-sm-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-sm-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-sm-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-sm-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-sm-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-sm-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-sm-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-sm-0 {
right: auto;
}
.pull-sm-1 {
right: 8.333333%;
}
.pull-sm-2 {
right: 16.666667%;
}
.pull-sm-3 {
right: 25%;
}
.pull-sm-4 {
right: 33.333333%;
}
.pull-sm-5 {
right: 41.666667%;
}
.pull-sm-6 {
right: 50%;
}
.pull-sm-7 {
right: 58.333333%;
}
.pull-sm-8 {
right: 66.666667%;
}
.pull-sm-9 {
right: 75%;
}
.pull-sm-10 {
right: 83.333333%;
}
.pull-sm-11 {
right: 91.666667%;
}
.pull-sm-12 {
right: 100%;
}
.push-sm-0 {
left: auto;
}
.push-sm-1 {
left: 8.333333%;
}
.push-sm-2 {
left: 16.666667%;
}
.push-sm-3 {
left: 25%;
}
.push-sm-4 {
left: 33.333333%;
}
.push-sm-5 {
left: 41.666667%;
}
.push-sm-6 {
left: 50%;
}
.push-sm-7 {
left: 58.333333%;
}
.push-sm-8 {
left: 66.666667%;
}
.push-sm-9 {
left: 75%;
}
.push-sm-10 {
left: 83.333333%;
}
.push-sm-11 {
left: 91.666667%;
}
.push-sm-12 {
left: 100%;
}
.offset-sm-0 {
margin-left: 0%;
}
.offset-sm-1 {
margin-left: 8.333333%;
}
.offset-sm-2 {
margin-left: 16.666667%;
}
.offset-sm-3 {
margin-left: 25%;
}
.offset-sm-4 {
margin-left: 33.333333%;
}
.offset-sm-5 {
margin-left: 41.666667%;
}
.offset-sm-6 {
margin-left: 50%;
}
.offset-sm-7 {
margin-left: 58.333333%;
}
.offset-sm-8 {
margin-left: 66.666667%;
}
.offset-sm-9 {
margin-left: 75%;
}
.offset-sm-10 {
margin-left: 83.333333%;
}
.offset-sm-11 {
margin-left: 91.666667%;
}
}
@media (min-width: 768px) {
.col-md {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-md-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-md-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-md-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-md-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-md-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-md-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-md-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-md-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-md-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-md-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-md-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-md-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-md-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-md-0 {
right: auto;
}
.pull-md-1 {
right: 8.333333%;
}
.pull-md-2 {
right: 16.666667%;
}
.pull-md-3 {
right: 25%;
}
.pull-md-4 {
right: 33.333333%;
}
.pull-md-5 {
right: 41.666667%;
}
.pull-md-6 {
right: 50%;
}
.pull-md-7 {
right: 58.333333%;
}
.pull-md-8 {
right: 66.666667%;
}
.pull-md-9 {
right: 75%;
}
.pull-md-10 {
right: 83.333333%;
}
.pull-md-11 {
right: 91.666667%;
}
.pull-md-12 {
right: 100%;
}
.push-md-0 {
left: auto;
}
.push-md-1 {
left: 8.333333%;
}
.push-md-2 {
left: 16.666667%;
}
.push-md-3 {
left: 25%;
}
.push-md-4 {
left: 33.333333%;
}
.push-md-5 {
left: 41.666667%;
}
.push-md-6 {
left: 50%;
}
.push-md-7 {
left: 58.333333%;
}
.push-md-8 {
left: 66.666667%;
}
.push-md-9 {
left: 75%;
}
.push-md-10 {
left: 83.333333%;
}
.push-md-11 {
left: 91.666667%;
}
.push-md-12 {
left: 100%;
}
.offset-md-0 {
margin-left: 0%;
}
.offset-md-1 {
margin-left: 8.333333%;
}
.offset-md-2 {
margin-left: 16.666667%;
}
.offset-md-3 {
margin-left: 25%;
}
.offset-md-4 {
margin-left: 33.333333%;
}
.offset-md-5 {
margin-left: 41.666667%;
}
.offset-md-6 {
margin-left: 50%;
}
.offset-md-7 {
margin-left: 58.333333%;
}
.offset-md-8 {
margin-left: 66.666667%;
}
.offset-md-9 {
margin-left: 75%;
}
.offset-md-10 {
margin-left: 83.333333%;
}
.offset-md-11 {
margin-left: 91.666667%;
}
}
@media (min-width: 992px) {
.col-lg {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-lg-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-lg-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-lg-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-lg-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-lg-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-lg-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-lg-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-lg-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-lg-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-lg-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-lg-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-lg-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-lg-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-lg-0 {
right: auto;
}
.pull-lg-1 {
right: 8.333333%;
}
.pull-lg-2 {
right: 16.666667%;
}
.pull-lg-3 {
right: 25%;
}
.pull-lg-4 {
right: 33.333333%;
}
.pull-lg-5 {
right: 41.666667%;
}
.pull-lg-6 {
right: 50%;
}
.pull-lg-7 {
right: 58.333333%;
}
.pull-lg-8 {
right: 66.666667%;
}
.pull-lg-9 {
right: 75%;
}
.pull-lg-10 {
right: 83.333333%;
}
.pull-lg-11 {
right: 91.666667%;
}
.pull-lg-12 {
right: 100%;
}
.push-lg-0 {
left: auto;
}
.push-lg-1 {
left: 8.333333%;
}
.push-lg-2 {
left: 16.666667%;
}
.push-lg-3 {
left: 25%;
}
.push-lg-4 {
left: 33.333333%;
}
.push-lg-5 {
left: 41.666667%;
}
.push-lg-6 {
left: 50%;
}
.push-lg-7 {
left: 58.333333%;
}
.push-lg-8 {
left: 66.666667%;
}
.push-lg-9 {
left: 75%;
}
.push-lg-10 {
left: 83.333333%;
}
.push-lg-11 {
left: 91.666667%;
}
.push-lg-12 {
left: 100%;
}
.offset-lg-0 {
margin-left: 0%;
}
.offset-lg-1 {
margin-left: 8.333333%;
}
.offset-lg-2 {
margin-left: 16.666667%;
}
.offset-lg-3 {
margin-left: 25%;
}
.offset-lg-4 {
margin-left: 33.333333%;
}
.offset-lg-5 {
margin-left: 41.666667%;
}
.offset-lg-6 {
margin-left: 50%;
}
.offset-lg-7 {
margin-left: 58.333333%;
}
.offset-lg-8 {
margin-left: 66.666667%;
}
.offset-lg-9 {
margin-left: 75%;
}
.offset-lg-10 {
margin-left: 83.333333%;
}
.offset-lg-11 {
margin-left: 91.666667%;
}
}
@media (min-width: 1200px) {
.col-xl {
-webkit-flex-basis: 0;
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-webkit-flex-grow: 1;
-ms-flex-positive: 1;
flex-grow: 1;
max-width: 100%;
}
.col-xl-auto {
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
width: auto;
}
.col-xl-1 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 8.333333%;
-ms-flex: 0 0 8.333333%;
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
.col-xl-2 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 16.666667%;
-ms-flex: 0 0 16.666667%;
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
.col-xl-3 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 25%;
-ms-flex: 0 0 25%;
flex: 0 0 25%;
max-width: 25%;
}
.col-xl-4 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 33.333333%;
-ms-flex: 0 0 33.333333%;
flex: 0 0 33.333333%;
max-width: 33.333333%;
}
.col-xl-5 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 41.666667%;
-ms-flex: 0 0 41.666667%;
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
.col-xl-6 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 50%;
-ms-flex: 0 0 50%;
flex: 0 0 50%;
max-width: 50%;
}
.col-xl-7 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 58.333333%;
-ms-flex: 0 0 58.333333%;
flex: 0 0 58.333333%;
max-width: 58.333333%;
}
.col-xl-8 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 66.666667%;
-ms-flex: 0 0 66.666667%;
flex: 0 0 66.666667%;
max-width: 66.666667%;
}
.col-xl-9 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 75%;
-ms-flex: 0 0 75%;
flex: 0 0 75%;
max-width: 75%;
}
.col-xl-10 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 83.333333%;
-ms-flex: 0 0 83.333333%;
flex: 0 0 83.333333%;
max-width: 83.333333%;
}
.col-xl-11 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 91.666667%;
-ms-flex: 0 0 91.666667%;
flex: 0 0 91.666667%;
max-width: 91.666667%;
}
.col-xl-12 {
-webkit-box-flex: 0;
-webkit-flex: 0 0 100%;
-ms-flex: 0 0 100%;
flex: 0 0 100%;
max-width: 100%;
}
.pull-xl-0 {
right: auto;
}
.pull-xl-1 {
right: 8.333333%;
}
.pull-xl-2 {
right: 16.666667%;
}
.pull-xl-3 {
right: 25%;
}
.pull-xl-4 {
right: 33.333333%;
}
.pull-xl-5 {
right: 41.666667%;
}
.pull-xl-6 {
right: 50%;
}
.pull-xl-7 {
right: 58.333333%;
}
.pull-xl-8 {
right: 66.666667%;
}
.pull-xl-9 {
right: 75%;
}
.pull-xl-10 {
right: 83.333333%;
}
.pull-xl-11 {
right: 91.666667%;
}
.pull-xl-12 {
right: 100%;
}
.push-xl-0 {
left: auto;
}
.push-xl-1 {
left: 8.333333%;
}
.push-xl-2 {
left: 16.666667%;
}
.push-xl-3 {
left: 25%;
}
.push-xl-4 {
left: 33.333333%;
}
.push-xl-5 {
left: 41.666667%;
}
.push-xl-6 {
left: 50%;
}
.push-xl-7 {
left: 58.333333%;
}
.push-xl-8 {
left: 66.666667%;
}
.push-xl-9 {
left: 75%;
}
.push-xl-10 {
left: 83.333333%;
}
.push-xl-11 {
left: 91.666667%;
}
.push-xl-12 {
left: 100%;
}
.offset-xl-0 {
margin-left: 0%;
}
.offset-xl-1 {
margin-left: 8.333333%;
}
.offset-xl-2 {
margin-left: 16.666667%;
}
.offset-xl-3 {
margin-left: 25%;
}
.offset-xl-4 {
margin-left: 33.333333%;
}
.offset-xl-5 {
margin-left: 41.666667%;
}
.offset-xl-6 {
margin-left: 50%;
}
.offset-xl-7 {
margin-left: 58.333333%;
}
.offset-xl-8 {
margin-left: 66.666667%;
}
.offset-xl-9 {
margin-left: 75%;
}
.offset-xl-10 {
margin-left: 83.333333%;
}
.offset-xl-11 {
margin-left: 91.666667%;
}
}
.table {
width: 100%;
max-width: 100%;
margin-bottom: 1rem;
}
.table th,
.table td {
padding: 0.75rem;
vertical-align: top;
border-top: 1px solid #eceeef;
}
.table thead th {
vertical-align: bottom;
border-bottom: 2px solid #eceeef;
}
.table tbody + tbody {
border-top: 2px solid #eceeef;
}
.table .table {
background-color: #fff;
}
.table-sm th,
.table-sm td {
padding: 0.3rem;
}
.table-bordered {
border: 1px solid #eceeef;
}
.table-bordered th,
.table-bordered td {
border: 1px solid #eceeef;
}
.table-bordered thead th,
.table-bordered thead td {
border-bottom-width: 2px;
}
.table-striped tbody tr:nth-of-type(odd) {
background-color: rgba(0, 0, 0, 0.05);
}
.table-hover tbody tr:hover {
background-color: rgba(0, 0, 0, 0.075);
}
.table-active,
.table-active > th,
.table-active > td {
background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover {
background-color: rgba(0, 0, 0, 0.075);
}
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
background-color: rgba(0, 0, 0, 0.075);
}
.table-success,
.table-success > th,
.table-success > td {
background-color: #dff0d8;
}
.table-hover .table-success:hover {
background-color: #d0e9c6;
}
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
background-color: #d0e9c6;
}
.table-info,
.table-info > th,
.table-info > td {
background-color: #d9edf7;
}
.table-hover .table-info:hover {
background-color: #c4e3f3;
}
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
background-color: #c4e3f3;
}
.table-warning,
.table-warning > th,
.table-warning > td {
background-color: #fcf8e3;
}
.table-hover .table-warning:hover {
background-color: #faf2cc;
}
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
background-color: #faf2cc;
}
.table-danger,
.table-danger > th,
.table-danger > td {
background-color: #f2dede;
}
.table-hover .table-danger:hover {
background-color: #ebcccc;
}
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
background-color: #ebcccc;
}
.thead-inverse th {
color: #fff;
background-color: #292b2c;
}
.thead-default th {
color: #464a4c;
background-color: #eceeef;
}
.table-inverse {
color: #fff;
background-color: #292b2c;
}
.table-inverse th,
.table-inverse td,
.table-inverse thead th {
border-color: #fff;
}
.table-inverse.table-bordered {
border: 0;
}
.table-responsive {
display: block;
width: 100%;
overflow-x: auto;
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.table-responsive.table-bordered {
border: 0;
}
.form-control {
display: block;
width: 100%;
padding: 0.5rem 0.75rem;
font-size: 1rem;
line-height: 1.25;
color: #464a4c;
background-color: #fff;
background-image: none;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
-webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
-o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
}
.form-control::-ms-expand {
background-color: transparent;
border: 0;
}
.form-control:focus {
color: #464a4c;
background-color: #fff;
border-color: #5cb3fd;
outline: none;
}
.form-control::-webkit-input-placeholder {
color: #636c72;
opacity: 1;
}
.form-control::-moz-placeholder {
color: #636c72;
opacity: 1;
}
.form-control:-ms-input-placeholder {
color: #636c72;
opacity: 1;
}
.form-control::placeholder {
color: #636c72;
opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
background-color: #eceeef;
opacity: 1;
}
.form-control:disabled {
cursor: not-allowed;
}
select.form-control:not([size]):not([multiple]) {
height: calc(2.25rem + 2px);
}
select.form-control:focus::-ms-value {
color: #464a4c;
background-color: #fff;
}
.form-control-file,
.form-control-range {
display: block;
}
.col-form-label {
padding-top: calc(0.5rem - 1px * 2);
padding-bottom: calc(0.5rem - 1px * 2);
margin-bottom: 0;
}
.col-form-label-lg {
padding-top: calc(0.75rem - 1px * 2);
padding-bottom: calc(0.75rem - 1px * 2);
font-size: 1.25rem;
}
.col-form-label-sm {
padding-top: calc(0.25rem - 1px * 2);
padding-bottom: calc(0.25rem - 1px * 2);
font-size: 0.875rem;
}
.col-form-legend {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
margin-bottom: 0;
font-size: 1rem;
}
.form-control-static {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
margin-bottom: 0;
line-height: 1.25;
border: solid transparent;
border-width: 1px 0;
}
.form-control-static.form-control-sm, .input-group-sm > .form-control-static.form-control,
.input-group-sm > .form-control-static.input-group-addon,
.input-group-sm > .input-group-btn > .form-control-static.btn, .form-control-static.form-control-lg, .input-group-lg > .form-control-static.form-control,
.input-group-lg > .form-control-static.input-group-addon,
.input-group-lg > .input-group-btn > .form-control-static.btn {
padding-right: 0;
padding-left: 0;
}
.form-control-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.2rem;
}
select.form-control-sm:not([size]):not([multiple]), .input-group-sm > select.form-control:not([size]):not([multiple]),
.input-group-sm > select.input-group-addon:not([size]):not([multiple]),
.input-group-sm > .input-group-btn > select.btn:not([size]):not([multiple]) {
height: 1.8125rem;
}
.form-control-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
border-radius: 0.3rem;
}
select.form-control-lg:not([size]):not([multiple]), .input-group-lg > select.form-control:not([size]):not([multiple]),
.input-group-lg > select.input-group-addon:not([size]):not([multiple]),
.input-group-lg > .input-group-btn > select.btn:not([size]):not([multiple]) {
height: 3.166667rem;
}
.form-group {
margin-bottom: 1rem;
}
.form-text {
display: block;
margin-top: 0.25rem;
}
.form-check {
position: relative;
display: block;
margin-bottom: 0.5rem;
}
.form-check.disabled .form-check-label {
color: #636c72;
cursor: not-allowed;
}
.form-check-label {
padding-left: 1.25rem;
margin-bottom: 0;
cursor: pointer;
}
.form-check-input {
position: absolute;
margin-top: 0.25rem;
margin-left: -1.25rem;
}
.form-check-input:only-child {
position: static;
}
.form-check-inline {
display: inline-block;
}
.form-check-inline .form-check-label {
vertical-align: middle;
}
.form-check-inline + .form-check-inline {
margin-left: 0.75rem;
}
.form-control-feedback {
margin-top: 0.25rem;
}
.form-control-success,
.form-control-warning,
.form-control-danger {
padding-right: 2.25rem;
background-repeat: no-repeat;
background-position: center right 0.5625rem;
-webkit-background-size: 1.125rem 1.125rem;
background-size: 1.125rem 1.125rem;
}
.has-success .form-control-feedback,
.has-success .form-control-label,
.has-success .col-form-label,
.has-success .form-check-label,
.has-success .custom-control {
color: #5cb85c;
}
.has-success .form-control {
border-color: #5cb85c;
}
.has-success .input-group-addon {
color: #5cb85c;
border-color: #5cb85c;
background-color: #eaf6ea;
}
.has-success .form-control-success {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%235cb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");
}
.has-warning .form-control-feedback,
.has-warning .form-control-label,
.has-warning .col-form-label,
.has-warning .form-check-label,
.has-warning .custom-control {
color: #f0ad4e;
}
.has-warning .form-control {
border-color: #f0ad4e;
}
.has-warning .input-group-addon {
color: #f0ad4e;
border-color: #f0ad4e;
background-color: white;
}
.has-warning .form-control-warning {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23f0ad4e' d='M4.4 5.324h-.8v-2.46h.8zm0 1.42h-.8V5.89h.8zM3.76.63L.04 7.075c-.115.2.016.425.26.426h7.397c.242 0 .372-.226.258-.426C6.726 4.924 5.47 2.79 4.253.63c-.113-.174-.39-.174-.494 0z'/%3E%3C/svg%3E");
}
.has-danger .form-control-feedback,
.has-danger .form-control-label,
.has-danger .col-form-label,
.has-danger .form-check-label,
.has-danger .custom-control {
color: #d9534f;
}
.has-danger .form-control {
border-color: #d9534f;
}
.has-danger .input-group-addon {
color: #d9534f;
border-color: #d9534f;
background-color: #fdf7f7;
}
.has-danger .form-control-danger {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23d9534f' viewBox='-2 -2 7 7'%3E%3Cpath stroke='%23d9534f' d='M0 0l3 3m0-3L0 3'/%3E%3Ccircle r='.5'/%3E%3Ccircle cx='3' r='.5'/%3E%3Ccircle cy='3' r='.5'/%3E%3Ccircle cx='3' cy='3' r='.5'/%3E%3C/svg%3E");
}
.form-inline {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-flow: row wrap;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.form-inline .form-check {
width: 100%;
}
@media (min-width: 576px) {
.form-inline label {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
margin-bottom: 0;
}
.form-inline .form-group {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-flex: 0;
-webkit-flex: 0 0 auto;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
-webkit-flex-flow: row wrap;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
margin-bottom: 0;
}
.form-inline .form-control {
display: inline-block;
width: auto;
vertical-align: middle;
}
.form-inline .form-control-static {
display: inline-block;
}
.form-inline .input-group {
width: auto;
}
.form-inline .form-control-label {
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .form-check {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
width: auto;
margin-top: 0;
margin-bottom: 0;
}
.form-inline .form-check-label {
padding-left: 0;
}
.form-inline .form-check-input {
position: relative;
margin-top: 0;
margin-right: 0.25rem;
margin-left: 0;
}
.form-inline .custom-control {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
padding-left: 0;
}
.form-inline .custom-control-indicator {
position: static;
display: inline-block;
margin-right: 0.25rem;
vertical-align: text-bottom;
}
.form-inline .has-feedback .form-control-feedback {
top: 0;
}
}
.btn {
display: inline-block;
font-weight: normal;
line-height: 1.25;
text-align: center;
white-space: nowrap;
vertical-align: middle;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
border: 1px solid transparent;
padding: 0.5rem 1rem;
font-size: 1rem;
border-radius: 0.25rem;
-webkit-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.btn:focus, .btn:hover {
text-decoration: none;
}
.btn:focus, .btn.focus {
outline: 0;
-webkit-box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.25);
box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.25);
}
.btn.disabled, .btn:disabled {
cursor: not-allowed;
opacity: .65;
}
.btn:active, .btn.active {
background-image: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
pointer-events: none;
}
.btn-primary {
color: #fff;
background-color: #0275d8;
border-color: #0275d8;
}
.btn-primary:hover {
color: #fff;
background-color: #025aa5;
border-color: #01549b;
}
.btn-primary:focus, .btn-primary.focus {
-webkit-box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);
box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
background-color: #0275d8;
border-color: #0275d8;
}
.btn-primary:active, .btn-primary.active,
.show > .btn-primary.dropdown-toggle {
color: #fff;
background-color: #025aa5;
background-image: none;
border-color: #01549b;
}
.btn-secondary {
color: #292b2c;
background-color: #fff;
border-color: #ccc;
}
.btn-secondary:hover {
color: #292b2c;
background-color: #e6e6e6;
border-color: #adadad;
}
.btn-secondary:focus, .btn-secondary.focus {
-webkit-box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
background-color: #fff;
border-color: #ccc;
}
.btn-secondary:active, .btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
color: #292b2c;
background-color: #e6e6e6;
background-image: none;
border-color: #adadad;
}
.btn-info {
color: #fff;
background-color: #5bc0de;
border-color: #5bc0de;
}
.btn-info:hover {
color: #fff;
background-color: #31b0d5;
border-color: #2aabd2;
}
.btn-info:focus, .btn-info.focus {
-webkit-box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
background-color: #5bc0de;
border-color: #5bc0de;
}
.btn-info:active, .btn-info.active,
.show > .btn-info.dropdown-toggle {
color: #fff;
background-color: #31b0d5;
background-image: none;
border-color: #2aabd2;
}
.btn-success {
color: #fff;
background-color: #5cb85c;
border-color: #5cb85c;
}
.btn-success:hover {
color: #fff;
background-color: #449d44;
border-color: #419641;
}
.btn-success:focus, .btn-success.focus {
-webkit-box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
background-color: #5cb85c;
border-color: #5cb85c;
}
.btn-success:active, .btn-success.active,
.show > .btn-success.dropdown-toggle {
color: #fff;
background-color: #449d44;
background-image: none;
border-color: #419641;
}
.btn-warning {
color: #fff;
background-color: #f0ad4e;
border-color: #f0ad4e;
}
.btn-warning:hover {
color: #fff;
background-color: #ec971f;
border-color: #eb9316;
}
.btn-warning:focus, .btn-warning.focus {
-webkit-box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
background-color: #f0ad4e;
border-color: #f0ad4e;
}
.btn-warning:active, .btn-warning.active,
.show > .btn-warning.dropdown-toggle {
color: #fff;
background-color: #ec971f;
background-image: none;
border-color: #eb9316;
}
.btn-danger {
color: #fff;
background-color: #d9534f;
border-color: #d9534f;
}
.btn-danger:hover {
color: #fff;
background-color: #c9302c;
border-color: #c12e2a;
}
.btn-danger:focus, .btn-danger.focus {
-webkit-box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
background-color: #d9534f;
border-color: #d9534f;
}
.btn-danger:active, .btn-danger.active,
.show > .btn-danger.dropdown-toggle {
color: #fff;
background-color: #c9302c;
background-image: none;
border-color: #c12e2a;
}
.btn-outline-primary {
color: #0275d8;
background-image: none;
background-color: transparent;
border-color: #0275d8;
}
.btn-outline-primary:hover {
color: #fff;
background-color: #0275d8;
border-color: #0275d8;
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
-webkit-box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);
box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
color: #0275d8;
background-color: transparent;
}
.btn-outline-primary:active, .btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle {
color: #fff;
background-color: #0275d8;
border-color: #0275d8;
}
.btn-outline-secondary {
color: #ccc;
background-image: none;
background-color: transparent;
border-color: #ccc;
}
.btn-outline-secondary:hover {
color: #fff;
background-color: #ccc;
border-color: #ccc;
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
-webkit-box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
color: #ccc;
background-color: transparent;
}
.btn-outline-secondary:active, .btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
color: #fff;
background-color: #ccc;
border-color: #ccc;
}
.btn-outline-info {
color: #5bc0de;
background-image: none;
background-color: transparent;
border-color: #5bc0de;
}
.btn-outline-info:hover {
color: #fff;
background-color: #5bc0de;
border-color: #5bc0de;
}
.btn-outline-info:focus, .btn-outline-info.focus {
-webkit-box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
color: #5bc0de;
background-color: transparent;
}
.btn-outline-info:active, .btn-outline-info.active,
.show > .btn-outline-info.dropdown-toggle {
color: #fff;
background-color: #5bc0de;
border-color: #5bc0de;
}
.btn-outline-success {
color: #5cb85c;
background-image: none;
background-color: transparent;
border-color: #5cb85c;
}
.btn-outline-success:hover {
color: #fff;
background-color: #5cb85c;
border-color: #5cb85c;
}
.btn-outline-success:focus, .btn-outline-success.focus {
-webkit-box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
color: #5cb85c;
background-color: transparent;
}
.btn-outline-success:active, .btn-outline-success.active,
.show > .btn-outline-success.dropdown-toggle {
color: #fff;
background-color: #5cb85c;
border-color: #5cb85c;
}
.btn-outline-warning {
color: #f0ad4e;
background-image: none;
background-color: transparent;
border-color: #f0ad4e;
}
.btn-outline-warning:hover {
color: #fff;
background-color: #f0ad4e;
border-color: #f0ad4e;
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
-webkit-box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
color: #f0ad4e;
background-color: transparent;
}
.btn-outline-warning:active, .btn-outline-warning.active,
.show > .btn-outline-warning.dropdown-toggle {
color: #fff;
background-color: #f0ad4e;
border-color: #f0ad4e;
}
.btn-outline-danger {
color: #d9534f;
background-image: none;
background-color: transparent;
border-color: #d9534f;
}
.btn-outline-danger:hover {
color: #fff;
background-color: #d9534f;
border-color: #d9534f;
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
-webkit-box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
color: #d9534f;
background-color: transparent;
}
.btn-outline-danger:active, .btn-outline-danger.active,
.show > .btn-outline-danger.dropdown-toggle {
color: #fff;
background-color: #d9534f;
border-color: #d9534f;
}
.btn-link {
font-weight: normal;
color: #0275d8;
border-radius: 0;
}
.btn-link, .btn-link:active, .btn-link.active, .btn-link:disabled {
background-color: transparent;
}
.btn-link, .btn-link:focus, .btn-link:active {
border-color: transparent;
}
.btn-link:hover {
border-color: transparent;
}
.btn-link:focus, .btn-link:hover {
color: #014c8c;
text-decoration: underline;
background-color: transparent;
}
.btn-link:disabled {
color: #636c72;
}
.btn-link:disabled:focus, .btn-link:disabled:hover {
text-decoration: none;
}
.btn-lg, .btn-group-lg > .btn {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
border-radius: 0.3rem;
}
.btn-sm, .btn-group-sm > .btn {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.2rem;
}
.btn-block {
display: block;
width: 100%;
}
.btn-block + .btn-block {
margin-top: 0.5rem;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
width: 100%;
}
.fade {
opacity: 0;
-webkit-transition: opacity 0.15s linear;
-o-transition: opacity 0.15s linear;
transition: opacity 0.15s linear;
}
.fade.show {
opacity: 1;
}
.collapse {
display: none;
}
.collapse.show {
display: block;
}
tr.collapse.show {
display: table-row;
}
tbody.collapse.show {
display: table-row-group;
}
.collapsing {
position: relative;
height: 0;
overflow: hidden;
-webkit-transition: height 0.35s ease;
-o-transition: height 0.35s ease;
transition: height 0.35s ease;
}
.dropup,
.dropdown {
position: relative;
}
.dropdown-toggle::after {
display: inline-block;
width: 0;
height: 0;
margin-left: 0.3em;
vertical-align: middle;
content: "";
border-top: 0.3em solid;
border-right: 0.3em solid transparent;
border-left: 0.3em solid transparent;
}
.dropdown-toggle:focus {
outline: 0;
}
.dropup .dropdown-toggle::after {
border-top: 0;
border-bottom: 0.3em solid;
}
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
display: none;
float: left;
min-width: 10rem;
padding: 0.5rem 0;
margin: 0.125rem 0 0;
font-size: 1rem;
color: #292b2c;
text-align: left;
list-style: none;
background-color: #fff;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
}
.dropdown-divider {
height: 1px;
margin: 0.5rem 0;
overflow: hidden;
background-color: #eceeef;
}
.dropdown-item {
display: block;
width: 100%;
padding: 3px 1.5rem;
clear: both;
font-weight: normal;
color: #292b2c;
text-align: inherit;
white-space: nowrap;
background: none;
border: 0;
}
.dropdown-item:focus, .dropdown-item:hover {
color: #1d1e1f;
text-decoration: none;
background-color: #f7f7f9;
}
.dropdown-item.active, .dropdown-item:active {
color: #fff;
text-decoration: none;
background-color: #0275d8;
}
.dropdown-item.disabled, .dropdown-item:disabled {
color: #636c72;
cursor: not-allowed;
background-color: transparent;
}
.show > .dropdown-menu {
display: block;
}
.show > a {
outline: 0;
}
.dropdown-menu-right {
right: 0;
left: auto;
}
.dropdown-menu-left {
right: auto;
left: 0;
}
.dropdown-header {
display: block;
padding: 0.5rem 1.5rem;
margin-bottom: 0;
font-size: 0.875rem;
color: #636c72;
white-space: nowrap;
}
.dropdown-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 990;
}
.dropup .dropdown-menu {
top: auto;
bottom: 100%;
margin-bottom: 0.125rem;
}
.btn-group,
.btn-group-vertical {
position: relative;
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
-webkit-box-flex: 0;
-webkit-flex: 0 1 auto;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
z-index: 2;
}
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn + .btn-group,
.btn-group-vertical .btn-group + .btn,
.btn-group-vertical .btn-group + .btn-group {
margin-left: -1px;
}
.btn-toolbar {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
-webkit-justify-content: flex-start;
-ms-flex-pack: start;
justify-content: flex-start;
}
.btn-toolbar .input-group {
width: auto;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
border-radius: 0;
}
.btn-group > .btn:first-child {
margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.btn-group > .btn-group {
float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
outline: 0;
}
.btn + .dropdown-toggle-split {
padding-right: 0.75rem;
padding-left: 0.75rem;
}
.btn + .dropdown-toggle-split::after {
margin-left: 0;
}
.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
padding-right: 0.375rem;
padding-left: 0.375rem;
}
.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
padding-right: 1.125rem;
padding-left: 1.125rem;
}
.btn-group-vertical {
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-align: start;
-webkit-align-items: flex-start;
-ms-flex-align: start;
align-items: flex-start;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
}
.btn-group-vertical .btn,
.btn-group-vertical .btn-group {
width: 100%;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
margin-top: -1px;
margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
border-top-right-radius: 0;
border-top-left-radius: 0;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
position: absolute;
clip: rect(0, 0, 0, 0);
pointer-events: none;
}
.input-group {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
width: 100%;
}
.input-group .form-control {
position: relative;
z-index: 2;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
width: 1%;
margin-bottom: 0;
}
.input-group .form-control:focus, .input-group .form-control:active, .input-group .form-control:hover {
z-index: 3;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
border-radius: 0;
}
.input-group-addon,
.input-group-btn {
white-space: nowrap;
vertical-align: middle;
}
.input-group-addon {
padding: 0.5rem 0.75rem;
margin-bottom: 0;
font-size: 1rem;
font-weight: normal;
line-height: 1.25;
color: #464a4c;
text-align: center;
background-color: #eceeef;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
}
.input-group-addon.form-control-sm,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .input-group-addon.btn {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.2rem;
}
.input-group-addon.form-control-lg,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .input-group-addon.btn {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
border-radius: 0.3rem;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
margin-top: 0;
}
.input-group .form-control:not(:last-child),
.input-group-addon:not(:last-child),
.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group > .btn,
.input-group-btn:not(:last-child) > .dropdown-toggle,
.input-group-btn:not(:first-child) > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:not(:first-child) > .btn-group:not(:last-child) > .btn {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.input-group-addon:not(:last-child) {
border-right: 0;
}
.input-group .form-control:not(:first-child),
.input-group-addon:not(:first-child),
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group > .btn,
.input-group-btn:not(:first-child) > .dropdown-toggle,
.input-group-btn:not(:last-child) > .btn:not(:first-child),
.input-group-btn:not(:last-child) > .btn-group:not(:first-child) > .btn {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.form-control + .input-group-addon:not(:first-child) {
border-left: 0;
}
.input-group-btn {
position: relative;
font-size: 0;
white-space: nowrap;
}
.input-group-btn > .btn {
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 1 0%;
-ms-flex: 1 1 0%;
flex: 1 1 0%;
}
.input-group-btn > .btn + .btn {
margin-left: -1px;
}
.input-group-btn > .btn:focus, .input-group-btn > .btn:active, .input-group-btn > .btn:hover {
z-index: 3;
}
.input-group-btn:not(:last-child) > .btn,
.input-group-btn:not(:last-child) > .btn-group {
margin-right: -1px;
}
.input-group-btn:not(:first-child) > .btn,
.input-group-btn:not(:first-child) > .btn-group {
z-index: 2;
margin-left: -1px;
}
.input-group-btn:not(:first-child) > .btn:focus, .input-group-btn:not(:first-child) > .btn:active, .input-group-btn:not(:first-child) > .btn:hover,
.input-group-btn:not(:first-child) > .btn-group:focus,
.input-group-btn:not(:first-child) > .btn-group:active,
.input-group-btn:not(:first-child) > .btn-group:hover {
z-index: 3;
}
.custom-control {
position: relative;
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
min-height: 1.5rem;
padding-left: 1.5rem;
margin-right: 1rem;
cursor: pointer;
}
.custom-control-input {
position: absolute;
z-index: -1;
opacity: 0;
}
.custom-control-input:checked ~ .custom-control-indicator {
color: #fff;
background-color: #0275d8;
}
.custom-control-input:focus ~ .custom-control-indicator {
-webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 3px #0275d8;
box-shadow: 0 0 0 1px #fff, 0 0 0 3px #0275d8;
}
.custom-control-input:active ~ .custom-control-indicator {
color: #fff;
background-color: #8fcafe;
}
.custom-control-input:disabled ~ .custom-control-indicator {
cursor: not-allowed;
background-color: #eceeef;
}
.custom-control-input:disabled ~ .custom-control-description {
color: #636c72;
cursor: not-allowed;
}
.custom-control-indicator {
position: absolute;
top: 0.25rem;
left: 0;
display: block;
width: 1rem;
height: 1rem;
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-color: #ddd;
background-repeat: no-repeat;
background-position: center center;
-webkit-background-size: 50% 50%;
background-size: 50% 50%;
}
.custom-checkbox .custom-control-indicator {
border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-indicator {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-indicator {
background-color: #0275d8;
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E");
}
.custom-radio .custom-control-indicator {
border-radius: 50%;
}
.custom-radio .custom-control-input:checked ~ .custom-control-indicator {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");
}
.custom-controls-stacked {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
}
.custom-controls-stacked .custom-control {
margin-bottom: 0.25rem;
}
.custom-controls-stacked .custom-control + .custom-control {
margin-left: 0;
}
.custom-select {
display: inline-block;
max-width: 100%;
height: calc(2.25rem + 2px);
padding: 0.375rem 1.75rem 0.375rem 0.75rem;
line-height: 1.25;
color: #464a4c;
vertical-align: middle;
background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23333' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
-webkit-background-size: 8px 10px;
background-size: 8px 10px;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
-moz-appearance: none;
-webkit-appearance: none;
}
.custom-select:focus {
border-color: #5cb3fd;
outline: none;
}
.custom-select:focus::-ms-value {
color: #464a4c;
background-color: #fff;
}
.custom-select:disabled {
color: #636c72;
cursor: not-allowed;
background-color: #eceeef;
}
.custom-select::-ms-expand {
opacity: 0;
}
.custom-select-sm {
padding-top: 0.375rem;
padding-bottom: 0.375rem;
font-size: 75%;
}
.custom-file {
position: relative;
display: inline-block;
max-width: 100%;
height: 2.5rem;
margin-bottom: 0;
cursor: pointer;
}
.custom-file-input {
min-width: 14rem;
max-width: 100%;
height: 2.5rem;
margin: 0;
filter: alpha(opacity=0);
opacity: 0;
}
.custom-file-control {
position: absolute;
top: 0;
right: 0;
left: 0;
z-index: 5;
height: 2.5rem;
padding: 0.5rem 1rem;
line-height: 1.5;
color: #464a4c;
pointer-events: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.25rem;
}
.custom-file-control:lang(en)::after {
content: "Choose file...";
}
.custom-file-control::before {
position: absolute;
top: -1px;
right: -1px;
bottom: -1px;
z-index: 6;
display: block;
height: 2.5rem;
padding: 0.5rem 1rem;
line-height: 1.5;
color: #464a4c;
background-color: #eceeef;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0 0.25rem 0.25rem 0;
}
.custom-file-control:lang(en)::before {
content: "Browse";
}
.nav {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
padding-left: 0;
margin-bottom: 0;
list-style: none;
}
.nav-link {
display: block;
padding: 0.5em 1em;
}
.nav-link:focus, .nav-link:hover {
text-decoration: none;
}
.nav-link.disabled {
color: #636c72;
cursor: not-allowed;
}
.nav-tabs {
border-bottom: 1px solid #ddd;
}
.nav-tabs .nav-item {
margin-bottom: -1px;
}
.nav-tabs .nav-link {
border: 1px solid transparent;
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem;
}
.nav-tabs .nav-link:focus, .nav-tabs .nav-link:hover {
border-color: #eceeef #eceeef #ddd;
}
.nav-tabs .nav-link.disabled {
color: #636c72;
background-color: transparent;
border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
color: #464a4c;
background-color: #fff;
border-color: #ddd #ddd #fff;
}
.nav-tabs .dropdown-menu {
margin-top: -1px;
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.nav-pills .nav-link {
border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .nav-item.show .nav-link {
color: #fff;
cursor: default;
background-color: #0275d8;
}
.nav-fill .nav-item {
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
text-align: center;
}
.nav-justified .nav-item {
-webkit-box-flex: 1;
-webkit-flex: 1 1 100%;
-ms-flex: 1 1 100%;
flex: 1 1 100%;
text-align: center;
}
.tab-content > .tab-pane {
display: none;
}
.tab-content > .active {
display: block;
}
.navbar {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
padding: 0.5rem 1rem;
}
.navbar-brand {
display: inline-block;
padding-top: .25rem;
padding-bottom: .25rem;
margin-right: 1rem;
font-size: 1.25rem;
line-height: inherit;
white-space: nowrap;
}
.navbar-brand:focus, .navbar-brand:hover {
text-decoration: none;
}
.navbar-nav {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
padding-left: 0;
margin-bottom: 0;
list-style: none;
}
.navbar-nav .nav-link {
padding-right: 0;
padding-left: 0;
}
.navbar-text {
display: inline-block;
padding-top: .425rem;
padding-bottom: .425rem;
}
.navbar-toggler {
-webkit-align-self: flex-start;
-ms-flex-item-align: start;
align-self: flex-start;
padding: 0.25rem 0.75rem;
font-size: 1.25rem;
line-height: 1;
background: transparent;
border: 1px solid transparent;
border-radius: 0.25rem;
}
.navbar-toggler:focus, .navbar-toggler:hover {
text-decoration: none;
}
.navbar-toggler-icon {
display: inline-block;
width: 1.5em;
height: 1.5em;
vertical-align: middle;
content: "";
background: no-repeat center center;
-webkit-background-size: 100% 100%;
background-size: 100% 100%;
}
.navbar-toggler-left {
position: absolute;
left: 1rem;
}
.navbar-toggler-right {
position: absolute;
right: 1rem;
}
@media (max-width: 575px) {
.navbar-toggleable .navbar-nav .dropdown-menu {
position: static;
float: none;
}
.navbar-toggleable > .container {
padding-right: 0;
padding-left: 0;
}
}
@media (min-width: 576px) {
.navbar-toggleable {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable .navbar-nav {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
.navbar-toggleable .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem;
}
.navbar-toggleable > .container {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable .navbar-collapse {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
width: 100%;
}
.navbar-toggleable .navbar-toggler {
display: none;
}
}
@media (max-width: 767px) {
.navbar-toggleable-sm .navbar-nav .dropdown-menu {
position: static;
float: none;
}
.navbar-toggleable-sm > .container {
padding-right: 0;
padding-left: 0;
}
}
@media (min-width: 768px) {
.navbar-toggleable-sm {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-sm .navbar-nav {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
.navbar-toggleable-sm .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem;
}
.navbar-toggleable-sm > .container {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-sm .navbar-collapse {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
width: 100%;
}
.navbar-toggleable-sm .navbar-toggler {
display: none;
}
}
@media (max-width: 991px) {
.navbar-toggleable-md .navbar-nav .dropdown-menu {
position: static;
float: none;
}
.navbar-toggleable-md > .container {
padding-right: 0;
padding-left: 0;
}
}
@media (min-width: 992px) {
.navbar-toggleable-md {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-md .navbar-nav {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
.navbar-toggleable-md .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem;
}
.navbar-toggleable-md > .container {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-md .navbar-collapse {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
width: 100%;
}
.navbar-toggleable-md .navbar-toggler {
display: none;
}
}
@media (max-width: 1199px) {
.navbar-toggleable-lg .navbar-nav .dropdown-menu {
position: static;
float: none;
}
.navbar-toggleable-lg > .container {
padding-right: 0;
padding-left: 0;
}
}
@media (min-width: 1200px) {
.navbar-toggleable-lg {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-lg .navbar-nav {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
.navbar-toggleable-lg .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem;
}
.navbar-toggleable-lg > .container {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-lg .navbar-collapse {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
width: 100%;
}
.navbar-toggleable-lg .navbar-toggler {
display: none;
}
}
.navbar-toggleable-xl {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-xl .navbar-nav .dropdown-menu {
position: static;
float: none;
}
.navbar-toggleable-xl > .container {
padding-right: 0;
padding-left: 0;
}
.navbar-toggleable-xl .navbar-nav {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
flex-direction: row;
}
.navbar-toggleable-xl .navbar-nav .nav-link {
padding-right: .5rem;
padding-left: .5rem;
}
.navbar-toggleable-xl > .container {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: nowrap;
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}
.navbar-toggleable-xl .navbar-collapse {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
width: 100%;
}
.navbar-toggleable-xl .navbar-toggler {
display: none;
}
.navbar-light .navbar-brand,
.navbar-light .navbar-toggler {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-brand:focus, .navbar-light .navbar-brand:hover,
.navbar-light .navbar-toggler:focus,
.navbar-light .navbar-toggler:hover {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-nav .nav-link {
color: rgba(0, 0, 0, 0.5);
}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
color: rgba(0, 0, 0, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
color: rgba(0, 0, 0, 0.3);
}
.navbar-light .navbar-nav .open > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .nav-link.active {
color: rgba(0, 0, 0, 0.9);
}
.navbar-light .navbar-toggler {
border-color: rgba(0, 0, 0, 0.1);
}
.navbar-light .navbar-toggler-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
.navbar-light .navbar-text {
color: rgba(0, 0, 0, 0.5);
}
.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-toggler {
color: white;
}
.navbar-inverse .navbar-brand:focus, .navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-toggler:focus,
.navbar-inverse .navbar-toggler:hover {
color: white;
}
.navbar-inverse .navbar-nav .nav-link {
color: rgba(255, 255, 255, 0.5);
}
.navbar-inverse .navbar-nav .nav-link:focus, .navbar-inverse .navbar-nav .nav-link:hover {
color: rgba(255, 255, 255, 0.75);
}
.navbar-inverse .navbar-nav .nav-link.disabled {
color: rgba(255, 255, 255, 0.25);
}
.navbar-inverse .navbar-nav .open > .nav-link,
.navbar-inverse .navbar-nav .active > .nav-link,
.navbar-inverse .navbar-nav .nav-link.open,
.navbar-inverse .navbar-nav .nav-link.active {
color: white;
}
.navbar-inverse .navbar-toggler {
border-color: rgba(255, 255, 255, 0.1);
}
.navbar-inverse .navbar-toggler-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
.navbar-inverse .navbar-text {
color: rgba(255, 255, 255, 0.5);
}
.card {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 0.25rem;
}
.card-block {
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
padding: 1.25rem;
}
.card-title {
margin-bottom: 0.75rem;
}
.card-subtitle {
margin-top: -0.375rem;
margin-bottom: 0;
}
.card-text:last-child {
margin-bottom: 0;
}
.card-link:hover {
text-decoration: none;
}
.card-link + .card-link {
margin-left: 1.25rem;
}
.card > .list-group:first-child .list-group-item:first-child {
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem;
}
.card > .list-group:last-child .list-group-item:last-child {
border-bottom-right-radius: 0.25rem;
border-bottom-left-radius: 0.25rem;
}
.card-header {
padding: 0.75rem 1.25rem;
margin-bottom: 0;
background-color: #f7f7f9;
border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header:first-child {
border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}
.card-footer {
padding: 0.75rem 1.25rem;
background-color: #f7f7f9;
border-top: 1px solid rgba(0, 0, 0, 0.125);
}
.card-footer:last-child {
border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}
.card-header-tabs {
margin-right: -0.625rem;
margin-bottom: -0.75rem;
margin-left: -0.625rem;
border-bottom: 0;
}
.card-header-pills {
margin-right: -0.625rem;
margin-left: -0.625rem;
}
.card-primary {
background-color: #0275d8;
border-color: #0275d8;
}
.card-primary .card-header,
.card-primary .card-footer {
background-color: transparent;
}
.card-success {
background-color: #5cb85c;
border-color: #5cb85c;
}
.card-success .card-header,
.card-success .card-footer {
background-color: transparent;
}
.card-info {
background-color: #5bc0de;
border-color: #5bc0de;
}
.card-info .card-header,
.card-info .card-footer {
background-color: transparent;
}
.card-warning {
background-color: #f0ad4e;
border-color: #f0ad4e;
}
.card-warning .card-header,
.card-warning .card-footer {
background-color: transparent;
}
.card-danger {
background-color: #d9534f;
border-color: #d9534f;
}
.card-danger .card-header,
.card-danger .card-footer {
background-color: transparent;
}
.card-outline-primary {
background-color: transparent;
border-color: #0275d8;
}
.card-outline-secondary {
background-color: transparent;
border-color: #ccc;
}
.card-outline-info {
background-color: transparent;
border-color: #5bc0de;
}
.card-outline-success {
background-color: transparent;
border-color: #5cb85c;
}
.card-outline-warning {
background-color: transparent;
border-color: #f0ad4e;
}
.card-outline-danger {
background-color: transparent;
border-color: #d9534f;
}
.card-inverse {
color: rgba(255, 255, 255, 0.65);
}
.card-inverse .card-header,
.card-inverse .card-footer {
background-color: transparent;
border-color: rgba(255, 255, 255, 0.2);
}
.card-inverse .card-header,
.card-inverse .card-footer,
.card-inverse .card-title,
.card-inverse .card-blockquote {
color: #fff;
}
.card-inverse .card-link,
.card-inverse .card-text,
.card-inverse .card-subtitle,
.card-inverse .card-blockquote .blockquote-footer {
color: rgba(255, 255, 255, 0.65);
}
.card-inverse .card-link:focus, .card-inverse .card-link:hover {
color: #fff;
}
.card-blockquote {
padding: 0;
margin-bottom: 0;
border-left: 0;
}
.card-img {
border-radius: calc(0.25rem - 1px);
}
.card-img-overlay {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
padding: 1.25rem;
}
.card-img-top {
border-top-right-radius: calc(0.25rem - 1px);
border-top-left-radius: calc(0.25rem - 1px);
}
.card-img-bottom {
border-bottom-right-radius: calc(0.25rem - 1px);
border-bottom-left-radius: calc(0.25rem - 1px);
}
@media (min-width: 576px) {
.card-deck {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-flow: row wrap;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
}
.card-deck .card {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-flex: 1;
-webkit-flex: 1 0 0%;
-ms-flex: 1 0 0%;
flex: 1 0 0%;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
}
.card-deck .card:not(:first-child) {
margin-left: 15px;
}
.card-deck .card:not(:last-child) {
margin-right: 15px;
}
}
@media (min-width: 576px) {
.card-group {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-flow: row wrap;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
}
.card-group .card {
-webkit-box-flex: 1;
-webkit-flex: 1 0 0%;
-ms-flex: 1 0 0%;
flex: 1 0 0%;
}
.card-group .card + .card {
margin-left: 0;
border-left: 0;
}
.card-group .card:first-child {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.card-group .card:first-child .card-img-top {
border-top-right-radius: 0;
}
.card-group .card:first-child .card-img-bottom {
border-bottom-right-radius: 0;
}
.card-group .card:last-child {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.card-group .card:last-child .card-img-top {
border-top-left-radius: 0;
}
.card-group .card:last-child .card-img-bottom {
border-bottom-left-radius: 0;
}
.card-group .card:not(:first-child):not(:last-child) {
border-radius: 0;
}
.card-group .card:not(:first-child):not(:last-child) .card-img-top,
.card-group .card:not(:first-child):not(:last-child) .card-img-bottom {
border-radius: 0;
}
}
@media (min-width: 576px) {
.card-columns {
-webkit-column-count: 3;
-moz-column-count: 3;
column-count: 3;
-webkit-column-gap: 1.25rem;
-moz-column-gap: 1.25rem;
column-gap: 1.25rem;
}
.card-columns .card {
display: inline-block;
width: 100%;
margin-bottom: 0.75rem;
}
}
.breadcrumb {
padding: 0.75rem 1rem;
margin-bottom: 1rem;
list-style: none;
background-color: #eceeef;
border-radius: 0.25rem;
}
.breadcrumb::after {
display: block;
content: "";
clear: both;
}
.breadcrumb-item {
float: left;
}
.breadcrumb-item + .breadcrumb-item::before {
display: inline-block;
padding-right: 0.5rem;
padding-left: 0.5rem;
color: #636c72;
content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: none;
}
.breadcrumb-item.active {
color: #636c72;
}
.pagination {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
padding-left: 0;
list-style: none;
border-radius: 0.25rem;
}
.page-item:first-child .page-link {
margin-left: 0;
border-bottom-left-radius: 0.25rem;
border-top-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
border-bottom-right-radius: 0.25rem;
border-top-right-radius: 0.25rem;
}
.page-item.active .page-link {
z-index: 2;
color: #fff;
background-color: #0275d8;
border-color: #0275d8;
}
.page-item.disabled .page-link {
color: #636c72;
pointer-events: none;
cursor: not-allowed;
background-color: #fff;
border-color: #ddd;
}
.page-link {
position: relative;
display: block;
padding: 0.5rem 0.75rem;
margin-left: -1px;
line-height: 1.25;
color: #0275d8;
background-color: #fff;
border: 1px solid #ddd;
}
.page-link:focus, .page-link:hover {
color: #014c8c;
text-decoration: none;
background-color: #eceeef;
border-color: #ddd;
}
.pagination-lg .page-link {
padding: 0.75rem 1.5rem;
font-size: 1.25rem;
}
.pagination-lg .page-item:first-child .page-link {
border-bottom-left-radius: 0.3rem;
border-top-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
border-bottom-right-radius: 0.3rem;
border-top-right-radius: 0.3rem;
}
.pagination-sm .page-link {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
}
.pagination-sm .page-item:first-child .page-link {
border-bottom-left-radius: 0.2rem;
border-top-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
border-bottom-right-radius: 0.2rem;
border-top-right-radius: 0.2rem;
}
.badge {
display: inline-block;
padding: 0.25em 0.4em;
font-size: 75%;
font-weight: bold;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: 0.25rem;
}
.badge:empty {
display: none;
}
.btn .badge {
position: relative;
top: -1px;
}
a.badge:focus, a.badge:hover {
color: #fff;
text-decoration: none;
cursor: pointer;
}
.badge-pill {
padding-right: 0.6em;
padding-left: 0.6em;
border-radius: 10rem;
}
.badge-default {
background-color: #636c72;
}
.badge-default[href]:focus, .badge-default[href]:hover {
background-color: #4b5257;
}
.badge-primary {
background-color: #0275d8;
}
.badge-primary[href]:focus, .badge-primary[href]:hover {
background-color: #025aa5;
}
.badge-success {
background-color: #5cb85c;
}
.badge-success[href]:focus, .badge-success[href]:hover {
background-color: #449d44;
}
.badge-info {
background-color: #5bc0de;
}
.badge-info[href]:focus, .badge-info[href]:hover {
background-color: #31b0d5;
}
.badge-warning {
background-color: #f0ad4e;
}
.badge-warning[href]:focus, .badge-warning[href]:hover {
background-color: #ec971f;
}
.badge-danger {
background-color: #d9534f;
}
.badge-danger[href]:focus, .badge-danger[href]:hover {
background-color: #c9302c;
}
.jumbotron {
padding: 2rem 1rem;
margin-bottom: 2rem;
background-color: #eceeef;
border-radius: 0.3rem;
}
@media (min-width: 576px) {
.jumbotron {
padding: 4rem 2rem;
}
}
.jumbotron-hr {
border-top-color: #d0d5d8;
}
.jumbotron-fluid {
padding-right: 0;
padding-left: 0;
border-radius: 0;
}
.alert {
padding: 0.75rem 1.25rem;
margin-bottom: 1rem;
border: 1px solid transparent;
border-radius: 0.25rem;
}
.alert-heading {
color: inherit;
}
.alert-link {
font-weight: bold;
}
.alert-dismissible .close {
position: relative;
top: -0.75rem;
right: -1.25rem;
padding: 0.75rem 1.25rem;
color: inherit;
}
.alert-success {
background-color: #dff0d8;
border-color: #d0e9c6;
color: #3c763d;
}
.alert-success hr {
border-top-color: #c1e2b3;
}
.alert-success .alert-link {
color: #2b542c;
}
.alert-info {
background-color: #d9edf7;
border-color: #bcdff1;
color: #31708f;
}
.alert-info hr {
border-top-color: #a6d5ec;
}
.alert-info .alert-link {
color: #245269;
}
.alert-warning {
background-color: #fcf8e3;
border-color: #faf2cc;
color: #8a6d3b;
}
.alert-warning hr {
border-top-color: #f7ecb5;
}
.alert-warning .alert-link {
color: #66512c;
}
.alert-danger {
background-color: #f2dede;
border-color: #ebcccc;
color: #a94442;
}
.alert-danger hr {
border-top-color: #e4b9b9;
}
.alert-danger .alert-link {
color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
from {
background-position: 1rem 0;
}
to {
background-position: 0 0;
}
}
@-o-keyframes progress-bar-stripes {
from {
background-position: 1rem 0;
}
to {
background-position: 0 0;
}
}
@keyframes progress-bar-stripes {
from {
background-position: 1rem 0;
}
to {
background-position: 0 0;
}
}
.progress {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
overflow: hidden;
font-size: 0.75rem;
line-height: 1rem;
text-align: center;
background-color: #eceeef;
border-radius: 0.25rem;
}
.progress-bar {
height: 1rem;
color: #fff;
background-color: #0275d8;
}
.progress-bar-striped {
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: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
-webkit-background-size: 1rem 1rem;
background-size: 1rem 1rem;
}
.progress-bar-animated {
-webkit-animation: progress-bar-stripes 1s linear infinite;
-o-animation: progress-bar-stripes 1s linear infinite;
animation: progress-bar-stripes 1s linear infinite;
}
.media {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-webkit-align-items: flex-start;
-ms-flex-align: start;
align-items: flex-start;
}
.media-body {
-webkit-box-flex: 1;
-webkit-flex: 1 1 0%;
-ms-flex: 1 1 0%;
flex: 1 1 0%;
}
.list-group {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
padding-left: 0;
margin-bottom: 0;
}
.list-group-item-action {
width: 100%;
color: #464a4c;
text-align: inherit;
}
.list-group-item-action .list-group-item-heading {
color: #292b2c;
}
.list-group-item-action:focus, .list-group-item-action:hover {
color: #464a4c;
text-decoration: none;
background-color: #f7f7f9;
}
.list-group-item-action:active {
color: #292b2c;
background-color: #eceeef;
}
.list-group-item {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-flow: row wrap;
-ms-flex-flow: row wrap;
flex-flow: row wrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
padding: 0.75rem 1.25rem;
margin-bottom: -1px;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125);
}
.list-group-item:first-child {
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem;
}
.list-group-item:last-child {
margin-bottom: 0;
border-bottom-right-radius: 0.25rem;
border-bottom-left-radius: 0.25rem;
}
.list-group-item:focus, .list-group-item:hover {
text-decoration: none;
}
.list-group-item.disabled, .list-group-item:disabled {
color: #636c72;
cursor: not-allowed;
background-color: #fff;
}
.list-group-item.disabled .list-group-item-heading, .list-group-item:disabled .list-group-item-heading {
color: inherit;
}
.list-group-item.disabled .list-group-item-text, .list-group-item:disabled .list-group-item-text {
color: #636c72;
}
.list-group-item.active {
z-index: 2;
color: #fff;
background-color: #0275d8;
border-color: #0275d8;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small {
color: inherit;
}
.list-group-item.active .list-group-item-text {
color: #daeeff;
}
.list-group-flush .list-group-item {
border-right: 0;
border-left: 0;
border-radius: 0;
}
.list-group-flush:first-child .list-group-item:first-child {
border-top: 0;
}
.list-group-flush:last-child .list-group-item:last-child {
border-bottom: 0;
}
.list-group-item-success {
color: #3c763d;
background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
color: inherit;
}
a.list-group-item-success:focus, a.list-group-item-success:hover,
button.list-group-item-success:focus,
button.list-group-item-success:hover {
color: #3c763d;
background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active {
color: #fff;
background-color: #3c763d;
border-color: #3c763d;
}
.list-group-item-info {
color: #31708f;
background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
color: inherit;
}
a.list-group-item-info:focus, a.list-group-item-info:hover,
button.list-group-item-info:focus,
button.list-group-item-info:hover {
color: #31708f;
background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active {
color: #fff;
background-color: #31708f;
border-color: #31708f;
}
.list-group-item-warning {
color: #8a6d3b;
background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
color: inherit;
}
a.list-group-item-warning:focus, a.list-group-item-warning:hover,
button.list-group-item-warning:focus,
button.list-group-item-warning:hover {
color: #8a6d3b;
background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active {
color: #fff;
background-color: #8a6d3b;
border-color: #8a6d3b;
}
.list-group-item-danger {
color: #a94442;
background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
color: inherit;
}
a.list-group-item-danger:focus, a.list-group-item-danger:hover,
button.list-group-item-danger:focus,
button.list-group-item-danger:hover {
color: #a94442;
background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active {
color: #fff;
background-color: #a94442;
border-color: #a94442;
}
.embed-responsive {
position: relative;
display: block;
width: 100%;
padding: 0;
overflow: hidden;
}
.embed-responsive::before {
display: block;
content: "";
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}
.embed-responsive-21by9::before {
padding-top: 42.857143%;
}
.embed-responsive-16by9::before {
padding-top: 56.25%;
}
.embed-responsive-4by3::before {
padding-top: 75%;
}
.embed-responsive-1by1::before {
padding-top: 100%;
}
.close {
float: right;
font-size: 1.5rem;
font-weight: bold;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: .5;
}
.close:focus, .close:hover {
color: #000;
text-decoration: none;
cursor: pointer;
opacity: .75;
}
button.close {
padding: 0;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none;
}
.modal-open {
overflow: hidden;
}
.modal {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1050;
display: none;
overflow: hidden;
outline: 0;
}
.modal.fade .modal-dialog {
-webkit-transition: -webkit-transform 0.3s ease-out;
transition: -webkit-transform 0.3s ease-out;
-o-transition: -o-transform 0.3s ease-out;
transition: transform 0.3s ease-out;
transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -o-transform 0.3s ease-out;
-webkit-transform: translate(0, -25%);
-o-transform: translate(0, -25%);
transform: translate(0, -25%);
}
.modal.show .modal-dialog {
-webkit-transform: translate(0, 0);
-o-transform: translate(0, 0);
transform: translate(0, 0);
}
.modal-open .modal {
overflow-x: hidden;
overflow-y: auto;
}
.modal-dialog {
position: relative;
width: auto;
margin: 10px;
}
.modal-content {
position: relative;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
background-color: #fff;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 0.3rem;
outline: 0;
}
.modal-backdrop {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1040;
background-color: #000;
}
.modal-backdrop.fade {
opacity: 0;
}
.modal-backdrop.show {
opacity: 0.5;
}
.modal-header {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
padding: 15px;
border-bottom: 1px solid #eceeef;
}
.modal-title {
margin-bottom: 0;
line-height: 1.5;
}
.modal-body {
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
padding: 15px;
}
.modal-footer {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: end;
-webkit-justify-content: flex-end;
-ms-flex-pack: end;
justify-content: flex-end;
padding: 15px;
border-top: 1px solid #eceeef;
}
.modal-footer > :not(:first-child) {
margin-left: .25rem;
}
.modal-footer > :not(:last-child) {
margin-right: .25rem;
}
.modal-scrollbar-measure {
position: absolute;
top: -9999px;
width: 50px;
height: 50px;
overflow: scroll;
}
@media (min-width: 576px) {
.modal-dialog {
max-width: 500px;
margin: 30px auto;
}
.modal-sm {
max-width: 300px;
}
}
@media (min-width: 992px) {
.modal-lg {
max-width: 800px;
}
}
.tooltip {
position: absolute;
z-index: 1070;
display: block;
font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
font-size: 0.875rem;
word-wrap: break-word;
opacity: 0;
}
.tooltip.show {
opacity: 0.9;
}
.tooltip.tooltip-top, .tooltip.bs-tether-element-attached-bottom {
padding: 5px 0;
margin-top: -3px;
}
.tooltip.tooltip-top .tooltip-inner::before, .tooltip.bs-tether-element-attached-bottom .tooltip-inner::before {
bottom: 0;
left: 50%;
margin-left: -5px;
content: "";
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.tooltip-right, .tooltip.bs-tether-element-attached-left {
padding: 0 5px;
margin-left: 3px;
}
.tooltip.tooltip-right .tooltip-inner::before, .tooltip.bs-tether-element-attached-left .tooltip-inner::before {
top: 50%;
left: 0;
margin-top: -5px;
content: "";
border-width: 5px 5px 5px 0;
border-right-color: #000;
}
.tooltip.tooltip-bottom, .tooltip.bs-tether-element-attached-top {
padding: 5px 0;
margin-top: 3px;
}
.tooltip.tooltip-bottom .tooltip-inner::before, .tooltip.bs-tether-element-attached-top .tooltip-inner::before {
top: 0;
left: 50%;
margin-left: -5px;
content: "";
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.tooltip.tooltip-left, .tooltip.bs-tether-element-attached-right {
padding: 0 5px;
margin-left: -3px;
}
.tooltip.tooltip-left .tooltip-inner::before, .tooltip.bs-tether-element-attached-right .tooltip-inner::before {
top: 50%;
right: 0;
margin-top: -5px;
content: "";
border-width: 5px 0 5px 5px;
border-left-color: #000;
}
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
color: #fff;
text-align: center;
background-color: #000;
border-radius: 0.25rem;
}
.tooltip-inner::before {
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1060;
display: block;
max-width: 276px;
padding: 1px;
font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.5;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
font-size: 0.875rem;
word-wrap: break-word;
background-color: #fff;
-webkit-background-clip: padding-box;
background-clip: padding-box;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 0.3rem;
}
.popover.popover-top, .popover.bs-tether-element-attached-bottom {
margin-top: -10px;
}
.popover.popover-top::before, .popover.popover-top::after, .popover.bs-tether-element-attached-bottom::before, .popover.bs-tether-element-attached-bottom::after {
left: 50%;
border-bottom-width: 0;
}
.popover.popover-top::before, .popover.bs-tether-element-attached-bottom::before {
bottom: -11px;
margin-left: -11px;
border-top-color: rgba(0, 0, 0, 0.25);
}
.popover.popover-top::after, .popover.bs-tether-element-attached-bottom::after {
bottom: -10px;
margin-left: -10px;
border-top-color: #fff;
}
.popover.popover-right, .popover.bs-tether-element-attached-left {
margin-left: 10px;
}
.popover.popover-right::before, .popover.popover-right::after, .popover.bs-tether-element-attached-left::before, .popover.bs-tether-element-attached-left::after {
top: 50%;
border-left-width: 0;
}
.popover.popover-right::before, .popover.bs-tether-element-attached-left::before {
left: -11px;
margin-top: -11px;
border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.popover-right::after, .popover.bs-tether-element-attached-left::after {
left: -10px;
margin-top: -10px;
border-right-color: #fff;
}
.popover.popover-bottom, .popover.bs-tether-element-attached-top {
margin-top: 10px;
}
.popover.popover-bottom::before, .popover.popover-bottom::after, .popover.bs-tether-element-attached-top::before, .popover.bs-tether-element-attached-top::after {
left: 50%;
border-top-width: 0;
}
.popover.popover-bottom::before, .popover.bs-tether-element-attached-top::before {
top: -11px;
margin-left: -11px;
border-bottom-color: rgba(0, 0, 0, 0.25);
}
.popover.popover-bottom::after, .popover.bs-tether-element-attached-top::after {
top: -10px;
margin-left: -10px;
border-bottom-color: #f7f7f7;
}
.popover.popover-bottom .popover-title::before, .popover.bs-tether-element-attached-top .popover-title::before {
position: absolute;
top: 0;
left: 50%;
display: block;
width: 20px;
margin-left: -10px;
content: "";
border-bottom: 1px solid #f7f7f7;
}
.popover.popover-left, .popover.bs-tether-element-attached-right {
margin-left: -10px;
}
.popover.popover-left::before, .popover.popover-left::after, .popover.bs-tether-element-attached-right::before, .popover.bs-tether-element-attached-right::after {
top: 50%;
border-right-width: 0;
}
.popover.popover-left::before, .popover.bs-tether-element-attached-right::before {
right: -11px;
margin-top: -11px;
border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.popover-left::after, .popover.bs-tether-element-attached-right::after {
right: -10px;
margin-top: -10px;
border-left-color: #fff;
}
.popover-title {
padding: 8px 14px;
margin-bottom: 0;
font-size: 1rem;
background-color: #f7f7f7;
border-bottom: 1px solid #ebebeb;
border-top-right-radius: calc(0.3rem - 1px);
border-top-left-radius: calc(0.3rem - 1px);
}
.popover-title:empty {
display: none;
}
.popover-content {
padding: 9px 14px;
}
.popover::before,
.popover::after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.popover::before {
content: "";
border-width: 11px;
}
.popover::after {
content: "";
border-width: 10px;
}
.carousel {
position: relative;
}
.carousel-inner {
position: relative;
width: 100%;
overflow: hidden;
}
.carousel-item {
position: relative;
display: none;
width: 100%;
}
@media (-webkit-transform-3d) {
.carousel-item {
-webkit-transition: -webkit-transform 0.6s ease-in-out;
transition: -webkit-transform 0.6s ease-in-out;
-o-transition: -o-transform 0.6s ease-in-out;
transition: transform 0.6s ease-in-out;
transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-perspective: 1000px;
perspective: 1000px;
}
}
@supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
.carousel-item {
-webkit-transition: -webkit-transform 0.6s ease-in-out;
transition: -webkit-transform 0.6s ease-in-out;
-o-transition: -o-transform 0.6s ease-in-out;
transition: transform 0.6s ease-in-out;
transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-perspective: 1000px;
perspective: 1000px;
}
}
.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
}
.carousel-item-next,
.carousel-item-prev {
position: absolute;
top: 0;
}
@media (-webkit-transform-3d) {
.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
.carousel-item-next,
.active.carousel-item-right {
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}
.carousel-item-prev,
.active.carousel-item-left {
-webkit-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
}
}
@supports ((-webkit-transform: translate3d(0, 0, 0)) or (transform: translate3d(0, 0, 0))) {
.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
.carousel-item-next,
.active.carousel-item-right {
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}
.carousel-item-prev,
.active.carousel-item-left {
-webkit-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
}
}
.carousel-control-prev,
.carousel-control-next {
position: absolute;
top: 0;
bottom: 0;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
width: 15%;
color: #fff;
text-align: center;
opacity: 0.5;
}
.carousel-control-prev:focus, .carousel-control-prev:hover,
.carousel-control-next:focus,
.carousel-control-next:hover {
color: #fff;
text-decoration: none;
outline: 0;
opacity: .9;
}
.carousel-control-prev {
left: 0;
}
.carousel-control-next {
right: 0;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
display: inline-block;
width: 20px;
height: 20px;
background: transparent no-repeat center center;
-webkit-background-size: 100% 100%;
background-size: 100% 100%;
}
.carousel-control-prev-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M4 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E");
}
.carousel-control-next-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M1.5 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E");
}
.carousel-indicators {
position: absolute;
right: 0;
bottom: 10px;
left: 0;
z-index: 15;
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
padding-left: 0;
margin-right: 15%;
margin-left: 15%;
list-style: none;
}
.carousel-indicators li {
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 0 auto;
-ms-flex: 1 0 auto;
flex: 1 0 auto;
max-width: 30px;
height: 3px;
margin-right: 3px;
margin-left: 3px;
text-indent: -999px;
cursor: pointer;
background-color: rgba(255, 255, 255, 0.5);
}
.carousel-indicators li::before {
position: absolute;
top: -10px;
left: 0;
display: inline-block;
width: 100%;
height: 10px;
content: "";
}
.carousel-indicators li::after {
position: absolute;
bottom: -10px;
left: 0;
display: inline-block;
width: 100%;
height: 10px;
content: "";
}
.carousel-indicators .active {
background-color: #fff;
}
.carousel-caption {
position: absolute;
right: 15%;
bottom: 20px;
left: 15%;
z-index: 10;
padding-top: 20px;
padding-bottom: 20px;
color: #fff;
text-align: center;
}
.align-baseline {
vertical-align: baseline !important;
}
.align-top {
vertical-align: top !important;
}
.align-middle {
vertical-align: middle !important;
}
.align-bottom {
vertical-align: bottom !important;
}
.align-text-bottom {
vertical-align: text-bottom !important;
}
.align-text-top {
vertical-align: text-top !important;
}
.bg-faded {
background-color: #f7f7f7;
}
.bg-primary {
background-color: #0275d8 !important;
}
a.bg-primary:focus, a.bg-primary:hover {
background-color: #025aa5 !important;
}
.bg-success {
background-color: #5cb85c !important;
}
a.bg-success:focus, a.bg-success:hover {
background-color: #449d44 !important;
}
.bg-info {
background-color: #5bc0de !important;
}
a.bg-info:focus, a.bg-info:hover {
background-color: #31b0d5 !important;
}
.bg-warning {
background-color: #f0ad4e !important;
}
a.bg-warning:focus, a.bg-warning:hover {
background-color: #ec971f !important;
}
.bg-danger {
background-color: #d9534f !important;
}
a.bg-danger:focus, a.bg-danger:hover {
background-color: #c9302c !important;
}
.bg-inverse {
background-color: #292b2c !important;
}
a.bg-inverse:focus, a.bg-inverse:hover {
background-color: #101112 !important;
}
.border-0 {
border: 0 !important;
}
.border-top-0 {
border-top: 0 !important;
}
.border-right-0 {
border-right: 0 !important;
}
.border-bottom-0 {
border-bottom: 0 !important;
}
.border-left-0 {
border-left: 0 !important;
}
.rounded {
border-radius: 0.25rem;
}
.rounded-top {
border-top-right-radius: 0.25rem;
border-top-left-radius: 0.25rem;
}
.rounded-right {
border-bottom-right-radius: 0.25rem;
border-top-right-radius: 0.25rem;
}
.rounded-bottom {
border-bottom-right-radius: 0.25rem;
border-bottom-left-radius: 0.25rem;
}
.rounded-left {
border-bottom-left-radius: 0.25rem;
border-top-left-radius: 0.25rem;
}
.rounded-circle {
border-radius: 50%;
}
.rounded-0 {
border-radius: 0;
}
.clearfix::after {
display: block;
content: "";
clear: both;
}
.d-none {
display: none !important;
}
.d-inline {
display: inline !important;
}
.d-inline-block {
display: inline-block !important;
}
.d-block {
display: block !important;
}
.d-table {
display: table !important;
}
.d-table-cell {
display: table-cell !important;
}
.d-flex {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
}
.d-inline-flex {
display: -webkit-inline-box !important;
display: -webkit-inline-flex !important;
display: -ms-inline-flexbox !important;
display: inline-flex !important;
}
@media (min-width: 576px) {
.d-sm-none {
display: none !important;
}
.d-sm-inline {
display: inline !important;
}
.d-sm-inline-block {
display: inline-block !important;
}
.d-sm-block {
display: block !important;
}
.d-sm-table {
display: table !important;
}
.d-sm-table-cell {
display: table-cell !important;
}
.d-sm-flex {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
}
.d-sm-inline-flex {
display: -webkit-inline-box !important;
display: -webkit-inline-flex !important;
display: -ms-inline-flexbox !important;
display: inline-flex !important;
}
}
@media (min-width: 768px) {
.d-md-none {
display: none !important;
}
.d-md-inline {
display: inline !important;
}
.d-md-inline-block {
display: inline-block !important;
}
.d-md-block {
display: block !important;
}
.d-md-table {
display: table !important;
}
.d-md-table-cell {
display: table-cell !important;
}
.d-md-flex {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
}
.d-md-inline-flex {
display: -webkit-inline-box !important;
display: -webkit-inline-flex !important;
display: -ms-inline-flexbox !important;
display: inline-flex !important;
}
}
@media (min-width: 992px) {
.d-lg-none {
display: none !important;
}
.d-lg-inline {
display: inline !important;
}
.d-lg-inline-block {
display: inline-block !important;
}
.d-lg-block {
display: block !important;
}
.d-lg-table {
display: table !important;
}
.d-lg-table-cell {
display: table-cell !important;
}
.d-lg-flex {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
}
.d-lg-inline-flex {
display: -webkit-inline-box !important;
display: -webkit-inline-flex !important;
display: -ms-inline-flexbox !important;
display: inline-flex !important;
}
}
@media (min-width: 1200px) {
.d-xl-none {
display: none !important;
}
.d-xl-inline {
display: inline !important;
}
.d-xl-inline-block {
display: inline-block !important;
}
.d-xl-block {
display: block !important;
}
.d-xl-table {
display: table !important;
}
.d-xl-table-cell {
display: table-cell !important;
}
.d-xl-flex {
display: -webkit-box !important;
display: -webkit-flex !important;
display: -ms-flexbox !important;
display: flex !important;
}
.d-xl-inline-flex {
display: -webkit-inline-box !important;
display: -webkit-inline-flex !important;
display: -ms-inline-flexbox !important;
display: inline-flex !important;
}
}
.flex-first {
-webkit-box-ordinal-group: 0;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1;
}
.flex-last {
-webkit-box-ordinal-group: 2;
-webkit-order: 1;
-ms-flex-order: 1;
order: 1;
}
.flex-unordered {
-webkit-box-ordinal-group: 1;
-webkit-order: 0;
-ms-flex-order: 0;
order: 0;
}
.flex-row {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: row !important;
-ms-flex-direction: row !important;
flex-direction: row !important;
}
.flex-column {
-webkit-box-orient: vertical !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: column !important;
-ms-flex-direction: column !important;
flex-direction: column !important;
}
.flex-row-reverse {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: row-reverse !important;
-ms-flex-direction: row-reverse !important;
flex-direction: row-reverse !important;
}
.flex-column-reverse {
-webkit-box-orient: vertical !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: column-reverse !important;
-ms-flex-direction: column-reverse !important;
flex-direction: column-reverse !important;
}
.flex-wrap {
-webkit-flex-wrap: wrap !important;
-ms-flex-wrap: wrap !important;
flex-wrap: wrap !important;
}
.flex-nowrap {
-webkit-flex-wrap: nowrap !important;
-ms-flex-wrap: nowrap !important;
flex-wrap: nowrap !important;
}
.flex-wrap-reverse {
-webkit-flex-wrap: wrap-reverse !important;
-ms-flex-wrap: wrap-reverse !important;
flex-wrap: wrap-reverse !important;
}
.justify-content-start {
-webkit-box-pack: start !important;
-webkit-justify-content: flex-start !important;
-ms-flex-pack: start !important;
justify-content: flex-start !important;
}
.justify-content-end {
-webkit-box-pack: end !important;
-webkit-justify-content: flex-end !important;
-ms-flex-pack: end !important;
justify-content: flex-end !important;
}
.justify-content-center {
-webkit-box-pack: center !important;
-webkit-justify-content: center !important;
-ms-flex-pack: center !important;
justify-content: center !important;
}
.justify-content-between {
-webkit-box-pack: justify !important;
-webkit-justify-content: space-between !important;
-ms-flex-pack: justify !important;
justify-content: space-between !important;
}
.justify-content-around {
-webkit-justify-content: space-around !important;
-ms-flex-pack: distribute !important;
justify-content: space-around !important;
}
.align-items-start {
-webkit-box-align: start !important;
-webkit-align-items: flex-start !important;
-ms-flex-align: start !important;
align-items: flex-start !important;
}
.align-items-end {
-webkit-box-align: end !important;
-webkit-align-items: flex-end !important;
-ms-flex-align: end !important;
align-items: flex-end !important;
}
.align-items-center {
-webkit-box-align: center !important;
-webkit-align-items: center !important;
-ms-flex-align: center !important;
align-items: center !important;
}
.align-items-baseline {
-webkit-box-align: baseline !important;
-webkit-align-items: baseline !important;
-ms-flex-align: baseline !important;
align-items: baseline !important;
}
.align-items-stretch {
-webkit-box-align: stretch !important;
-webkit-align-items: stretch !important;
-ms-flex-align: stretch !important;
align-items: stretch !important;
}
.align-content-start {
-webkit-align-content: flex-start !important;
-ms-flex-line-pack: start !important;
align-content: flex-start !important;
}
.align-content-end {
-webkit-align-content: flex-end !important;
-ms-flex-line-pack: end !important;
align-content: flex-end !important;
}
.align-content-center {
-webkit-align-content: center !important;
-ms-flex-line-pack: center !important;
align-content: center !important;
}
.align-content-between {
-webkit-align-content: space-between !important;
-ms-flex-line-pack: justify !important;
align-content: space-between !important;
}
.align-content-around {
-webkit-align-content: space-around !important;
-ms-flex-line-pack: distribute !important;
align-content: space-around !important;
}
.align-content-stretch {
-webkit-align-content: stretch !important;
-ms-flex-line-pack: stretch !important;
align-content: stretch !important;
}
.align-self-auto {
-webkit-align-self: auto !important;
-ms-flex-item-align: auto !important;
-ms-grid-row-align: auto !important;
align-self: auto !important;
}
.align-self-start {
-webkit-align-self: flex-start !important;
-ms-flex-item-align: start !important;
align-self: flex-start !important;
}
.align-self-end {
-webkit-align-self: flex-end !important;
-ms-flex-item-align: end !important;
align-self: flex-end !important;
}
.align-self-center {
-webkit-align-self: center !important;
-ms-flex-item-align: center !important;
-ms-grid-row-align: center !important;
align-self: center !important;
}
.align-self-baseline {
-webkit-align-self: baseline !important;
-ms-flex-item-align: baseline !important;
align-self: baseline !important;
}
.align-self-stretch {
-webkit-align-self: stretch !important;
-ms-flex-item-align: stretch !important;
-ms-grid-row-align: stretch !important;
align-self: stretch !important;
}
@media (min-width: 576px) {
.flex-sm-first {
-webkit-box-ordinal-group: 0;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1;
}
.flex-sm-last {
-webkit-box-ordinal-group: 2;
-webkit-order: 1;
-ms-flex-order: 1;
order: 1;
}
.flex-sm-unordered {
-webkit-box-ordinal-group: 1;
-webkit-order: 0;
-ms-flex-order: 0;
order: 0;
}
.flex-sm-row {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: row !important;
-ms-flex-direction: row !important;
flex-direction: row !important;
}
.flex-sm-column {
-webkit-box-orient: vertical !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: column !important;
-ms-flex-direction: column !important;
flex-direction: column !important;
}
.flex-sm-row-reverse {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: row-reverse !important;
-ms-flex-direction: row-reverse !important;
flex-direction: row-reverse !important;
}
.flex-sm-column-reverse {
-webkit-box-orient: vertical !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: column-reverse !important;
-ms-flex-direction: column-reverse !important;
flex-direction: column-reverse !important;
}
.flex-sm-wrap {
-webkit-flex-wrap: wrap !important;
-ms-flex-wrap: wrap !important;
flex-wrap: wrap !important;
}
.flex-sm-nowrap {
-webkit-flex-wrap: nowrap !important;
-ms-flex-wrap: nowrap !important;
flex-wrap: nowrap !important;
}
.flex-sm-wrap-reverse {
-webkit-flex-wrap: wrap-reverse !important;
-ms-flex-wrap: wrap-reverse !important;
flex-wrap: wrap-reverse !important;
}
.justify-content-sm-start {
-webkit-box-pack: start !important;
-webkit-justify-content: flex-start !important;
-ms-flex-pack: start !important;
justify-content: flex-start !important;
}
.justify-content-sm-end {
-webkit-box-pack: end !important;
-webkit-justify-content: flex-end !important;
-ms-flex-pack: end !important;
justify-content: flex-end !important;
}
.justify-content-sm-center {
-webkit-box-pack: center !important;
-webkit-justify-content: center !important;
-ms-flex-pack: center !important;
justify-content: center !important;
}
.justify-content-sm-between {
-webkit-box-pack: justify !important;
-webkit-justify-content: space-between !important;
-ms-flex-pack: justify !important;
justify-content: space-between !important;
}
.justify-content-sm-around {
-webkit-justify-content: space-around !important;
-ms-flex-pack: distribute !important;
justify-content: space-around !important;
}
.align-items-sm-start {
-webkit-box-align: start !important;
-webkit-align-items: flex-start !important;
-ms-flex-align: start !important;
align-items: flex-start !important;
}
.align-items-sm-end {
-webkit-box-align: end !important;
-webkit-align-items: flex-end !important;
-ms-flex-align: end !important;
align-items: flex-end !important;
}
.align-items-sm-center {
-webkit-box-align: center !important;
-webkit-align-items: center !important;
-ms-flex-align: center !important;
align-items: center !important;
}
.align-items-sm-baseline {
-webkit-box-align: baseline !important;
-webkit-align-items: baseline !important;
-ms-flex-align: baseline !important;
align-items: baseline !important;
}
.align-items-sm-stretch {
-webkit-box-align: stretch !important;
-webkit-align-items: stretch !important;
-ms-flex-align: stretch !important;
align-items: stretch !important;
}
.align-content-sm-start {
-webkit-align-content: flex-start !important;
-ms-flex-line-pack: start !important;
align-content: flex-start !important;
}
.align-content-sm-end {
-webkit-align-content: flex-end !important;
-ms-flex-line-pack: end !important;
align-content: flex-end !important;
}
.align-content-sm-center {
-webkit-align-content: center !important;
-ms-flex-line-pack: center !important;
align-content: center !important;
}
.align-content-sm-between {
-webkit-align-content: space-between !important;
-ms-flex-line-pack: justify !important;
align-content: space-between !important;
}
.align-content-sm-around {
-webkit-align-content: space-around !important;
-ms-flex-line-pack: distribute !important;
align-content: space-around !important;
}
.align-content-sm-stretch {
-webkit-align-content: stretch !important;
-ms-flex-line-pack: stretch !important;
align-content: stretch !important;
}
.align-self-sm-auto {
-webkit-align-self: auto !important;
-ms-flex-item-align: auto !important;
-ms-grid-row-align: auto !important;
align-self: auto !important;
}
.align-self-sm-start {
-webkit-align-self: flex-start !important;
-ms-flex-item-align: start !important;
align-self: flex-start !important;
}
.align-self-sm-end {
-webkit-align-self: flex-end !important;
-ms-flex-item-align: end !important;
align-self: flex-end !important;
}
.align-self-sm-center {
-webkit-align-self: center !important;
-ms-flex-item-align: center !important;
-ms-grid-row-align: center !important;
align-self: center !important;
}
.align-self-sm-baseline {
-webkit-align-self: baseline !important;
-ms-flex-item-align: baseline !important;
align-self: baseline !important;
}
.align-self-sm-stretch {
-webkit-align-self: stretch !important;
-ms-flex-item-align: stretch !important;
-ms-grid-row-align: stretch !important;
align-self: stretch !important;
}
}
@media (min-width: 768px) {
.flex-md-first {
-webkit-box-ordinal-group: 0;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1;
}
.flex-md-last {
-webkit-box-ordinal-group: 2;
-webkit-order: 1;
-ms-flex-order: 1;
order: 1;
}
.flex-md-unordered {
-webkit-box-ordinal-group: 1;
-webkit-order: 0;
-ms-flex-order: 0;
order: 0;
}
.flex-md-row {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: row !important;
-ms-flex-direction: row !important;
flex-direction: row !important;
}
.flex-md-column {
-webkit-box-orient: vertical !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: column !important;
-ms-flex-direction: column !important;
flex-direction: column !important;
}
.flex-md-row-reverse {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: row-reverse !important;
-ms-flex-direction: row-reverse !important;
flex-direction: row-reverse !important;
}
.flex-md-column-reverse {
-webkit-box-orient: vertical !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: column-reverse !important;
-ms-flex-direction: column-reverse !important;
flex-direction: column-reverse !important;
}
.flex-md-wrap {
-webkit-flex-wrap: wrap !important;
-ms-flex-wrap: wrap !important;
flex-wrap: wrap !important;
}
.flex-md-nowrap {
-webkit-flex-wrap: nowrap !important;
-ms-flex-wrap: nowrap !important;
flex-wrap: nowrap !important;
}
.flex-md-wrap-reverse {
-webkit-flex-wrap: wrap-reverse !important;
-ms-flex-wrap: wrap-reverse !important;
flex-wrap: wrap-reverse !important;
}
.justify-content-md-start {
-webkit-box-pack: start !important;
-webkit-justify-content: flex-start !important;
-ms-flex-pack: start !important;
justify-content: flex-start !important;
}
.justify-content-md-end {
-webkit-box-pack: end !important;
-webkit-justify-content: flex-end !important;
-ms-flex-pack: end !important;
justify-content: flex-end !important;
}
.justify-content-md-center {
-webkit-box-pack: center !important;
-webkit-justify-content: center !important;
-ms-flex-pack: center !important;
justify-content: center !important;
}
.justify-content-md-between {
-webkit-box-pack: justify !important;
-webkit-justify-content: space-between !important;
-ms-flex-pack: justify !important;
justify-content: space-between !important;
}
.justify-content-md-around {
-webkit-justify-content: space-around !important;
-ms-flex-pack: distribute !important;
justify-content: space-around !important;
}
.align-items-md-start {
-webkit-box-align: start !important;
-webkit-align-items: flex-start !important;
-ms-flex-align: start !important;
align-items: flex-start !important;
}
.align-items-md-end {
-webkit-box-align: end !important;
-webkit-align-items: flex-end !important;
-ms-flex-align: end !important;
align-items: flex-end !important;
}
.align-items-md-center {
-webkit-box-align: center !important;
-webkit-align-items: center !important;
-ms-flex-align: center !important;
align-items: center !important;
}
.align-items-md-baseline {
-webkit-box-align: baseline !important;
-webkit-align-items: baseline !important;
-ms-flex-align: baseline !important;
align-items: baseline !important;
}
.align-items-md-stretch {
-webkit-box-align: stretch !important;
-webkit-align-items: stretch !important;
-ms-flex-align: stretch !important;
align-items: stretch !important;
}
.align-content-md-start {
-webkit-align-content: flex-start !important;
-ms-flex-line-pack: start !important;
align-content: flex-start !important;
}
.align-content-md-end {
-webkit-align-content: flex-end !important;
-ms-flex-line-pack: end !important;
align-content: flex-end !important;
}
.align-content-md-center {
-webkit-align-content: center !important;
-ms-flex-line-pack: center !important;
align-content: center !important;
}
.align-content-md-between {
-webkit-align-content: space-between !important;
-ms-flex-line-pack: justify !important;
align-content: space-between !important;
}
.align-content-md-around {
-webkit-align-content: space-around !important;
-ms-flex-line-pack: distribute !important;
align-content: space-around !important;
}
.align-content-md-stretch {
-webkit-align-content: stretch !important;
-ms-flex-line-pack: stretch !important;
align-content: stretch !important;
}
.align-self-md-auto {
-webkit-align-self: auto !important;
-ms-flex-item-align: auto !important;
-ms-grid-row-align: auto !important;
align-self: auto !important;
}
.align-self-md-start {
-webkit-align-self: flex-start !important;
-ms-flex-item-align: start !important;
align-self: flex-start !important;
}
.align-self-md-end {
-webkit-align-self: flex-end !important;
-ms-flex-item-align: end !important;
align-self: flex-end !important;
}
.align-self-md-center {
-webkit-align-self: center !important;
-ms-flex-item-align: center !important;
-ms-grid-row-align: center !important;
align-self: center !important;
}
.align-self-md-baseline {
-webkit-align-self: baseline !important;
-ms-flex-item-align: baseline !important;
align-self: baseline !important;
}
.align-self-md-stretch {
-webkit-align-self: stretch !important;
-ms-flex-item-align: stretch !important;
-ms-grid-row-align: stretch !important;
align-self: stretch !important;
}
}
@media (min-width: 992px) {
.flex-lg-first {
-webkit-box-ordinal-group: 0;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1;
}
.flex-lg-last {
-webkit-box-ordinal-group: 2;
-webkit-order: 1;
-ms-flex-order: 1;
order: 1;
}
.flex-lg-unordered {
-webkit-box-ordinal-group: 1;
-webkit-order: 0;
-ms-flex-order: 0;
order: 0;
}
.flex-lg-row {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: row !important;
-ms-flex-direction: row !important;
flex-direction: row !important;
}
.flex-lg-column {
-webkit-box-orient: vertical !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: column !important;
-ms-flex-direction: column !important;
flex-direction: column !important;
}
.flex-lg-row-reverse {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: row-reverse !important;
-ms-flex-direction: row-reverse !important;
flex-direction: row-reverse !important;
}
.flex-lg-column-reverse {
-webkit-box-orient: vertical !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: column-reverse !important;
-ms-flex-direction: column-reverse !important;
flex-direction: column-reverse !important;
}
.flex-lg-wrap {
-webkit-flex-wrap: wrap !important;
-ms-flex-wrap: wrap !important;
flex-wrap: wrap !important;
}
.flex-lg-nowrap {
-webkit-flex-wrap: nowrap !important;
-ms-flex-wrap: nowrap !important;
flex-wrap: nowrap !important;
}
.flex-lg-wrap-reverse {
-webkit-flex-wrap: wrap-reverse !important;
-ms-flex-wrap: wrap-reverse !important;
flex-wrap: wrap-reverse !important;
}
.justify-content-lg-start {
-webkit-box-pack: start !important;
-webkit-justify-content: flex-start !important;
-ms-flex-pack: start !important;
justify-content: flex-start !important;
}
.justify-content-lg-end {
-webkit-box-pack: end !important;
-webkit-justify-content: flex-end !important;
-ms-flex-pack: end !important;
justify-content: flex-end !important;
}
.justify-content-lg-center {
-webkit-box-pack: center !important;
-webkit-justify-content: center !important;
-ms-flex-pack: center !important;
justify-content: center !important;
}
.justify-content-lg-between {
-webkit-box-pack: justify !important;
-webkit-justify-content: space-between !important;
-ms-flex-pack: justify !important;
justify-content: space-between !important;
}
.justify-content-lg-around {
-webkit-justify-content: space-around !important;
-ms-flex-pack: distribute !important;
justify-content: space-around !important;
}
.align-items-lg-start {
-webkit-box-align: start !important;
-webkit-align-items: flex-start !important;
-ms-flex-align: start !important;
align-items: flex-start !important;
}
.align-items-lg-end {
-webkit-box-align: end !important;
-webkit-align-items: flex-end !important;
-ms-flex-align: end !important;
align-items: flex-end !important;
}
.align-items-lg-center {
-webkit-box-align: center !important;
-webkit-align-items: center !important;
-ms-flex-align: center !important;
align-items: center !important;
}
.align-items-lg-baseline {
-webkit-box-align: baseline !important;
-webkit-align-items: baseline !important;
-ms-flex-align: baseline !important;
align-items: baseline !important;
}
.align-items-lg-stretch {
-webkit-box-align: stretch !important;
-webkit-align-items: stretch !important;
-ms-flex-align: stretch !important;
align-items: stretch !important;
}
.align-content-lg-start {
-webkit-align-content: flex-start !important;
-ms-flex-line-pack: start !important;
align-content: flex-start !important;
}
.align-content-lg-end {
-webkit-align-content: flex-end !important;
-ms-flex-line-pack: end !important;
align-content: flex-end !important;
}
.align-content-lg-center {
-webkit-align-content: center !important;
-ms-flex-line-pack: center !important;
align-content: center !important;
}
.align-content-lg-between {
-webkit-align-content: space-between !important;
-ms-flex-line-pack: justify !important;
align-content: space-between !important;
}
.align-content-lg-around {
-webkit-align-content: space-around !important;
-ms-flex-line-pack: distribute !important;
align-content: space-around !important;
}
.align-content-lg-stretch {
-webkit-align-content: stretch !important;
-ms-flex-line-pack: stretch !important;
align-content: stretch !important;
}
.align-self-lg-auto {
-webkit-align-self: auto !important;
-ms-flex-item-align: auto !important;
-ms-grid-row-align: auto !important;
align-self: auto !important;
}
.align-self-lg-start {
-webkit-align-self: flex-start !important;
-ms-flex-item-align: start !important;
align-self: flex-start !important;
}
.align-self-lg-end {
-webkit-align-self: flex-end !important;
-ms-flex-item-align: end !important;
align-self: flex-end !important;
}
.align-self-lg-center {
-webkit-align-self: center !important;
-ms-flex-item-align: center !important;
-ms-grid-row-align: center !important;
align-self: center !important;
}
.align-self-lg-baseline {
-webkit-align-self: baseline !important;
-ms-flex-item-align: baseline !important;
align-self: baseline !important;
}
.align-self-lg-stretch {
-webkit-align-self: stretch !important;
-ms-flex-item-align: stretch !important;
-ms-grid-row-align: stretch !important;
align-self: stretch !important;
}
}
@media (min-width: 1200px) {
.flex-xl-first {
-webkit-box-ordinal-group: 0;
-webkit-order: -1;
-ms-flex-order: -1;
order: -1;
}
.flex-xl-last {
-webkit-box-ordinal-group: 2;
-webkit-order: 1;
-ms-flex-order: 1;
order: 1;
}
.flex-xl-unordered {
-webkit-box-ordinal-group: 1;
-webkit-order: 0;
-ms-flex-order: 0;
order: 0;
}
.flex-xl-row {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: row !important;
-ms-flex-direction: row !important;
flex-direction: row !important;
}
.flex-xl-column {
-webkit-box-orient: vertical !important;
-webkit-box-direction: normal !important;
-webkit-flex-direction: column !important;
-ms-flex-direction: column !important;
flex-direction: column !important;
}
.flex-xl-row-reverse {
-webkit-box-orient: horizontal !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: row-reverse !important;
-ms-flex-direction: row-reverse !important;
flex-direction: row-reverse !important;
}
.flex-xl-column-reverse {
-webkit-box-orient: vertical !important;
-webkit-box-direction: reverse !important;
-webkit-flex-direction: column-reverse !important;
-ms-flex-direction: column-reverse !important;
flex-direction: column-reverse !important;
}
.flex-xl-wrap {
-webkit-flex-wrap: wrap !important;
-ms-flex-wrap: wrap !important;
flex-wrap: wrap !important;
}
.flex-xl-nowrap {
-webkit-flex-wrap: nowrap !important;
-ms-flex-wrap: nowrap !important;
flex-wrap: nowrap !important;
}
.flex-xl-wrap-reverse {
-webkit-flex-wrap: wrap-reverse !important;
-ms-flex-wrap: wrap-reverse !important;
flex-wrap: wrap-reverse !important;
}
.justify-content-xl-start {
-webkit-box-pack: start !important;
-webkit-justify-content: flex-start !important;
-ms-flex-pack: start !important;
justify-content: flex-start !important;
}
.justify-content-xl-end {
-webkit-box-pack: end !important;
-webkit-justify-content: flex-end !important;
-ms-flex-pack: end !important;
justify-content: flex-end !important;
}
.justify-content-xl-center {
-webkit-box-pack: center !important;
-webkit-justify-content: center !important;
-ms-flex-pack: center !important;
justify-content: center !important;
}
.justify-content-xl-between {
-webkit-box-pack: justify !important;
-webkit-justify-content: space-between !important;
-ms-flex-pack: justify !important;
justify-content: space-between !important;
}
.justify-content-xl-around {
-webkit-justify-content: space-around !important;
-ms-flex-pack: distribute !important;
justify-content: space-around !important;
}
.align-items-xl-start {
-webkit-box-align: start !important;
-webkit-align-items: flex-start !important;
-ms-flex-align: start !important;
align-items: flex-start !important;
}
.align-items-xl-end {
-webkit-box-align: end !important;
-webkit-align-items: flex-end !important;
-ms-flex-align: end !important;
align-items: flex-end !important;
}
.align-items-xl-center {
-webkit-box-align: center !important;
-webkit-align-items: center !important;
-ms-flex-align: center !important;
align-items: center !important;
}
.align-items-xl-baseline {
-webkit-box-align: baseline !important;
-webkit-align-items: baseline !important;
-ms-flex-align: baseline !important;
align-items: baseline !important;
}
.align-items-xl-stretch {
-webkit-box-align: stretch !important;
-webkit-align-items: stretch !important;
-ms-flex-align: stretch !important;
align-items: stretch !important;
}
.align-content-xl-start {
-webkit-align-content: flex-start !important;
-ms-flex-line-pack: start !important;
align-content: flex-start !important;
}
.align-content-xl-end {
-webkit-align-content: flex-end !important;
-ms-flex-line-pack: end !important;
align-content: flex-end !important;
}
.align-content-xl-center {
-webkit-align-content: center !important;
-ms-flex-line-pack: center !important;
align-content: center !important;
}
.align-content-xl-between {
-webkit-align-content: space-between !important;
-ms-flex-line-pack: justify !important;
align-content: space-between !important;
}
.align-content-xl-around {
-webkit-align-content: space-around !important;
-ms-flex-line-pack: distribute !important;
align-content: space-around !important;
}
.align-content-xl-stretch {
-webkit-align-content: stretch !important;
-ms-flex-line-pack: stretch !important;
align-content: stretch !important;
}
.align-self-xl-auto {
-webkit-align-self: auto !important;
-ms-flex-item-align: auto !important;
-ms-grid-row-align: auto !important;
align-self: auto !important;
}
.align-self-xl-start {
-webkit-align-self: flex-start !important;
-ms-flex-item-align: start !important;
align-self: flex-start !important;
}
.align-self-xl-end {
-webkit-align-self: flex-end !important;
-ms-flex-item-align: end !important;
align-self: flex-end !important;
}
.align-self-xl-center {
-webkit-align-self: center !important;
-ms-flex-item-align: center !important;
-ms-grid-row-align: center !important;
align-self: center !important;
}
.align-self-xl-baseline {
-webkit-align-self: baseline !important;
-ms-flex-item-align: baseline !important;
align-self: baseline !important;
}
.align-self-xl-stretch {
-webkit-align-self: stretch !important;
-ms-flex-item-align: stretch !important;
-ms-grid-row-align: stretch !important;
align-self: stretch !important;
}
}
.float-left {
float: left !important;
}
.float-right {
float: right !important;
}
.float-none {
float: none !important;
}
@media (min-width: 576px) {
.float-sm-left {
float: left !important;
}
.float-sm-right {
float: right !important;
}
.float-sm-none {
float: none !important;
}
}
@media (min-width: 768px) {
.float-md-left {
float: left !important;
}
.float-md-right {
float: right !important;
}
.float-md-none {
float: none !important;
}
}
@media (min-width: 992px) {
.float-lg-left {
float: left !important;
}
.float-lg-right {
float: right !important;
}
.float-lg-none {
float: none !important;
}
}
@media (min-width: 1200px) {
.float-xl-left {
float: left !important;
}
.float-xl-right {
float: right !important;
}
.float-xl-none {
float: none !important;
}
}
.fixed-top {
position: fixed;
top: 0;
right: 0;
left: 0;
z-index: 1030;
}
.fixed-bottom {
position: fixed;
right: 0;
bottom: 0;
left: 0;
z-index: 1030;
}
.sticky-top {
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 1030;
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
border: 0;
}
.sr-only-focusable:active, .sr-only-focusable:focus {
position: static;
width: auto;
height: auto;
margin: 0;
overflow: visible;
clip: auto;
}
.w-25 {
width: 25% !important;
}
.w-50 {
width: 50% !important;
}
.w-75 {
width: 75% !important;
}
.w-100 {
width: 100% !important;
}
.h-25 {
height: 25% !important;
}
.h-50 {
height: 50% !important;
}
.h-75 {
height: 75% !important;
}
.h-100 {
height: 100% !important;
}
.mw-100 {
max-width: 100% !important;
}
.mh-100 {
max-height: 100% !important;
}
.m-0 {
margin: 0 0 !important;
}
.mt-0 {
margin-top: 0 !important;
}
.mr-0 {
margin-right: 0 !important;
}
.mb-0 {
margin-bottom: 0 !important;
}
.ml-0 {
margin-left: 0 !important;
}
.mx-0 {
margin-right: 0 !important;
margin-left: 0 !important;
}
.my-0 {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.m-1 {
margin: 0.25rem 0.25rem !important;
}
.mt-1 {
margin-top: 0.25rem !important;
}
.mr-1 {
margin-right: 0.25rem !important;
}
.mb-1 {
margin-bottom: 0.25rem !important;
}
.ml-1 {
margin-left: 0.25rem !important;
}
.mx-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important;
}
.my-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important;
}
.m-2 {
margin: 0.5rem 0.5rem !important;
}
.mt-2 {
margin-top: 0.5rem !important;
}
.mr-2 {
margin-right: 0.5rem !important;
}
.mb-2 {
margin-bottom: 0.5rem !important;
}
.ml-2 {
margin-left: 0.5rem !important;
}
.mx-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important;
}
.my-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important;
}
.m-3 {
margin: 1rem 1rem !important;
}
.mt-3 {
margin-top: 1rem !important;
}
.mr-3 {
margin-right: 1rem !important;
}
.mb-3 {
margin-bottom: 1rem !important;
}
.ml-3 {
margin-left: 1rem !important;
}
.mx-3 {
margin-right: 1rem !important;
margin-left: 1rem !important;
}
.my-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
}
.m-4 {
margin: 1.5rem 1.5rem !important;
}
.mt-4 {
margin-top: 1.5rem !important;
}
.mr-4 {
margin-right: 1.5rem !important;
}
.mb-4 {
margin-bottom: 1.5rem !important;
}
.ml-4 {
margin-left: 1.5rem !important;
}
.mx-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important;
}
.my-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important;
}
.m-5 {
margin: 3rem 3rem !important;
}
.mt-5 {
margin-top: 3rem !important;
}
.mr-5 {
margin-right: 3rem !important;
}
.mb-5 {
margin-bottom: 3rem !important;
}
.ml-5 {
margin-left: 3rem !important;
}
.mx-5 {
margin-right: 3rem !important;
margin-left: 3rem !important;
}
.my-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important;
}
.p-0 {
padding: 0 0 !important;
}
.pt-0 {
padding-top: 0 !important;
}
.pr-0 {
padding-right: 0 !important;
}
.pb-0 {
padding-bottom: 0 !important;
}
.pl-0 {
padding-left: 0 !important;
}
.px-0 {
padding-right: 0 !important;
padding-left: 0 !important;
}
.py-0 {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.p-1 {
padding: 0.25rem 0.25rem !important;
}
.pt-1 {
padding-top: 0.25rem !important;
}
.pr-1 {
padding-right: 0.25rem !important;
}
.pb-1 {
padding-bottom: 0.25rem !important;
}
.pl-1 {
padding-left: 0.25rem !important;
}
.px-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important;
}
.py-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important;
}
.p-2 {
padding: 0.5rem 0.5rem !important;
}
.pt-2 {
padding-top: 0.5rem !important;
}
.pr-2 {
padding-right: 0.5rem !important;
}
.pb-2 {
padding-bottom: 0.5rem !important;
}
.pl-2 {
padding-left: 0.5rem !important;
}
.px-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important;
}
.py-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important;
}
.p-3 {
padding: 1rem 1rem !important;
}
.pt-3 {
padding-top: 1rem !important;
}
.pr-3 {
padding-right: 1rem !important;
}
.pb-3 {
padding-bottom: 1rem !important;
}
.pl-3 {
padding-left: 1rem !important;
}
.px-3 {
padding-right: 1rem !important;
padding-left: 1rem !important;
}
.py-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important;
}
.p-4 {
padding: 1.5rem 1.5rem !important;
}
.pt-4 {
padding-top: 1.5rem !important;
}
.pr-4 {
padding-right: 1.5rem !important;
}
.pb-4 {
padding-bottom: 1.5rem !important;
}
.pl-4 {
padding-left: 1.5rem !important;
}
.px-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important;
}
.py-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important;
}
.p-5 {
padding: 3rem 3rem !important;
}
.pt-5 {
padding-top: 3rem !important;
}
.pr-5 {
padding-right: 3rem !important;
}
.pb-5 {
padding-bottom: 3rem !important;
}
.pl-5 {
padding-left: 3rem !important;
}
.px-5 {
padding-right: 3rem !important;
padding-left: 3rem !important;
}
.py-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important;
}
.m-auto {
margin: auto !important;
}
.mt-auto {
margin-top: auto !important;
}
.mr-auto {
margin-right: auto !important;
}
.mb-auto {
margin-bottom: auto !important;
}
.ml-auto {
margin-left: auto !important;
}
.mx-auto {
margin-right: auto !important;
margin-left: auto !important;
}
.my-auto {
margin-top: auto !important;
margin-bottom: auto !important;
}
@media (min-width: 576px) {
.m-sm-0 {
margin: 0 0 !important;
}
.mt-sm-0 {
margin-top: 0 !important;
}
.mr-sm-0 {
margin-right: 0 !important;
}
.mb-sm-0 {
margin-bottom: 0 !important;
}
.ml-sm-0 {
margin-left: 0 !important;
}
.mx-sm-0 {
margin-right: 0 !important;
margin-left: 0 !important;
}
.my-sm-0 {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.m-sm-1 {
margin: 0.25rem 0.25rem !important;
}
.mt-sm-1 {
margin-top: 0.25rem !important;
}
.mr-sm-1 {
margin-right: 0.25rem !important;
}
.mb-sm-1 {
margin-bottom: 0.25rem !important;
}
.ml-sm-1 {
margin-left: 0.25rem !important;
}
.mx-sm-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important;
}
.my-sm-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important;
}
.m-sm-2 {
margin: 0.5rem 0.5rem !important;
}
.mt-sm-2 {
margin-top: 0.5rem !important;
}
.mr-sm-2 {
margin-right: 0.5rem !important;
}
.mb-sm-2 {
margin-bottom: 0.5rem !important;
}
.ml-sm-2 {
margin-left: 0.5rem !important;
}
.mx-sm-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important;
}
.my-sm-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important;
}
.m-sm-3 {
margin: 1rem 1rem !important;
}
.mt-sm-3 {
margin-top: 1rem !important;
}
.mr-sm-3 {
margin-right: 1rem !important;
}
.mb-sm-3 {
margin-bottom: 1rem !important;
}
.ml-sm-3 {
margin-left: 1rem !important;
}
.mx-sm-3 {
margin-right: 1rem !important;
margin-left: 1rem !important;
}
.my-sm-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
}
.m-sm-4 {
margin: 1.5rem 1.5rem !important;
}
.mt-sm-4 {
margin-top: 1.5rem !important;
}
.mr-sm-4 {
margin-right: 1.5rem !important;
}
.mb-sm-4 {
margin-bottom: 1.5rem !important;
}
.ml-sm-4 {
margin-left: 1.5rem !important;
}
.mx-sm-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important;
}
.my-sm-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important;
}
.m-sm-5 {
margin: 3rem 3rem !important;
}
.mt-sm-5 {
margin-top: 3rem !important;
}
.mr-sm-5 {
margin-right: 3rem !important;
}
.mb-sm-5 {
margin-bottom: 3rem !important;
}
.ml-sm-5 {
margin-left: 3rem !important;
}
.mx-sm-5 {
margin-right: 3rem !important;
margin-left: 3rem !important;
}
.my-sm-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important;
}
.p-sm-0 {
padding: 0 0 !important;
}
.pt-sm-0 {
padding-top: 0 !important;
}
.pr-sm-0 {
padding-right: 0 !important;
}
.pb-sm-0 {
padding-bottom: 0 !important;
}
.pl-sm-0 {
padding-left: 0 !important;
}
.px-sm-0 {
padding-right: 0 !important;
padding-left: 0 !important;
}
.py-sm-0 {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.p-sm-1 {
padding: 0.25rem 0.25rem !important;
}
.pt-sm-1 {
padding-top: 0.25rem !important;
}
.pr-sm-1 {
padding-right: 0.25rem !important;
}
.pb-sm-1 {
padding-bottom: 0.25rem !important;
}
.pl-sm-1 {
padding-left: 0.25rem !important;
}
.px-sm-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important;
}
.py-sm-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important;
}
.p-sm-2 {
padding: 0.5rem 0.5rem !important;
}
.pt-sm-2 {
padding-top: 0.5rem !important;
}
.pr-sm-2 {
padding-right: 0.5rem !important;
}
.pb-sm-2 {
padding-bottom: 0.5rem !important;
}
.pl-sm-2 {
padding-left: 0.5rem !important;
}
.px-sm-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important;
}
.py-sm-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important;
}
.p-sm-3 {
padding: 1rem 1rem !important;
}
.pt-sm-3 {
padding-top: 1rem !important;
}
.pr-sm-3 {
padding-right: 1rem !important;
}
.pb-sm-3 {
padding-bottom: 1rem !important;
}
.pl-sm-3 {
padding-left: 1rem !important;
}
.px-sm-3 {
padding-right: 1rem !important;
padding-left: 1rem !important;
}
.py-sm-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important;
}
.p-sm-4 {
padding: 1.5rem 1.5rem !important;
}
.pt-sm-4 {
padding-top: 1.5rem !important;
}
.pr-sm-4 {
padding-right: 1.5rem !important;
}
.pb-sm-4 {
padding-bottom: 1.5rem !important;
}
.pl-sm-4 {
padding-left: 1.5rem !important;
}
.px-sm-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important;
}
.py-sm-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important;
}
.p-sm-5 {
padding: 3rem 3rem !important;
}
.pt-sm-5 {
padding-top: 3rem !important;
}
.pr-sm-5 {
padding-right: 3rem !important;
}
.pb-sm-5 {
padding-bottom: 3rem !important;
}
.pl-sm-5 {
padding-left: 3rem !important;
}
.px-sm-5 {
padding-right: 3rem !important;
padding-left: 3rem !important;
}
.py-sm-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important;
}
.m-sm-auto {
margin: auto !important;
}
.mt-sm-auto {
margin-top: auto !important;
}
.mr-sm-auto {
margin-right: auto !important;
}
.mb-sm-auto {
margin-bottom: auto !important;
}
.ml-sm-auto {
margin-left: auto !important;
}
.mx-sm-auto {
margin-right: auto !important;
margin-left: auto !important;
}
.my-sm-auto {
margin-top: auto !important;
margin-bottom: auto !important;
}
}
@media (min-width: 768px) {
.m-md-0 {
margin: 0 0 !important;
}
.mt-md-0 {
margin-top: 0 !important;
}
.mr-md-0 {
margin-right: 0 !important;
}
.mb-md-0 {
margin-bottom: 0 !important;
}
.ml-md-0 {
margin-left: 0 !important;
}
.mx-md-0 {
margin-right: 0 !important;
margin-left: 0 !important;
}
.my-md-0 {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.m-md-1 {
margin: 0.25rem 0.25rem !important;
}
.mt-md-1 {
margin-top: 0.25rem !important;
}
.mr-md-1 {
margin-right: 0.25rem !important;
}
.mb-md-1 {
margin-bottom: 0.25rem !important;
}
.ml-md-1 {
margin-left: 0.25rem !important;
}
.mx-md-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important;
}
.my-md-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important;
}
.m-md-2 {
margin: 0.5rem 0.5rem !important;
}
.mt-md-2 {
margin-top: 0.5rem !important;
}
.mr-md-2 {
margin-right: 0.5rem !important;
}
.mb-md-2 {
margin-bottom: 0.5rem !important;
}
.ml-md-2 {
margin-left: 0.5rem !important;
}
.mx-md-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important;
}
.my-md-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important;
}
.m-md-3 {
margin: 1rem 1rem !important;
}
.mt-md-3 {
margin-top: 1rem !important;
}
.mr-md-3 {
margin-right: 1rem !important;
}
.mb-md-3 {
margin-bottom: 1rem !important;
}
.ml-md-3 {
margin-left: 1rem !important;
}
.mx-md-3 {
margin-right: 1rem !important;
margin-left: 1rem !important;
}
.my-md-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
}
.m-md-4 {
margin: 1.5rem 1.5rem !important;
}
.mt-md-4 {
margin-top: 1.5rem !important;
}
.mr-md-4 {
margin-right: 1.5rem !important;
}
.mb-md-4 {
margin-bottom: 1.5rem !important;
}
.ml-md-4 {
margin-left: 1.5rem !important;
}
.mx-md-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important;
}
.my-md-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important;
}
.m-md-5 {
margin: 3rem 3rem !important;
}
.mt-md-5 {
margin-top: 3rem !important;
}
.mr-md-5 {
margin-right: 3rem !important;
}
.mb-md-5 {
margin-bottom: 3rem !important;
}
.ml-md-5 {
margin-left: 3rem !important;
}
.mx-md-5 {
margin-right: 3rem !important;
margin-left: 3rem !important;
}
.my-md-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important;
}
.p-md-0 {
padding: 0 0 !important;
}
.pt-md-0 {
padding-top: 0 !important;
}
.pr-md-0 {
padding-right: 0 !important;
}
.pb-md-0 {
padding-bottom: 0 !important;
}
.pl-md-0 {
padding-left: 0 !important;
}
.px-md-0 {
padding-right: 0 !important;
padding-left: 0 !important;
}
.py-md-0 {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.p-md-1 {
padding: 0.25rem 0.25rem !important;
}
.pt-md-1 {
padding-top: 0.25rem !important;
}
.pr-md-1 {
padding-right: 0.25rem !important;
}
.pb-md-1 {
padding-bottom: 0.25rem !important;
}
.pl-md-1 {
padding-left: 0.25rem !important;
}
.px-md-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important;
}
.py-md-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important;
}
.p-md-2 {
padding: 0.5rem 0.5rem !important;
}
.pt-md-2 {
padding-top: 0.5rem !important;
}
.pr-md-2 {
padding-right: 0.5rem !important;
}
.pb-md-2 {
padding-bottom: 0.5rem !important;
}
.pl-md-2 {
padding-left: 0.5rem !important;
}
.px-md-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important;
}
.py-md-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important;
}
.p-md-3 {
padding: 1rem 1rem !important;
}
.pt-md-3 {
padding-top: 1rem !important;
}
.pr-md-3 {
padding-right: 1rem !important;
}
.pb-md-3 {
padding-bottom: 1rem !important;
}
.pl-md-3 {
padding-left: 1rem !important;
}
.px-md-3 {
padding-right: 1rem !important;
padding-left: 1rem !important;
}
.py-md-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important;
}
.p-md-4 {
padding: 1.5rem 1.5rem !important;
}
.pt-md-4 {
padding-top: 1.5rem !important;
}
.pr-md-4 {
padding-right: 1.5rem !important;
}
.pb-md-4 {
padding-bottom: 1.5rem !important;
}
.pl-md-4 {
padding-left: 1.5rem !important;
}
.px-md-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important;
}
.py-md-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important;
}
.p-md-5 {
padding: 3rem 3rem !important;
}
.pt-md-5 {
padding-top: 3rem !important;
}
.pr-md-5 {
padding-right: 3rem !important;
}
.pb-md-5 {
padding-bottom: 3rem !important;
}
.pl-md-5 {
padding-left: 3rem !important;
}
.px-md-5 {
padding-right: 3rem !important;
padding-left: 3rem !important;
}
.py-md-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important;
}
.m-md-auto {
margin: auto !important;
}
.mt-md-auto {
margin-top: auto !important;
}
.mr-md-auto {
margin-right: auto !important;
}
.mb-md-auto {
margin-bottom: auto !important;
}
.ml-md-auto {
margin-left: auto !important;
}
.mx-md-auto {
margin-right: auto !important;
margin-left: auto !important;
}
.my-md-auto {
margin-top: auto !important;
margin-bottom: auto !important;
}
}
@media (min-width: 992px) {
.m-lg-0 {
margin: 0 0 !important;
}
.mt-lg-0 {
margin-top: 0 !important;
}
.mr-lg-0 {
margin-right: 0 !important;
}
.mb-lg-0 {
margin-bottom: 0 !important;
}
.ml-lg-0 {
margin-left: 0 !important;
}
.mx-lg-0 {
margin-right: 0 !important;
margin-left: 0 !important;
}
.my-lg-0 {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.m-lg-1 {
margin: 0.25rem 0.25rem !important;
}
.mt-lg-1 {
margin-top: 0.25rem !important;
}
.mr-lg-1 {
margin-right: 0.25rem !important;
}
.mb-lg-1 {
margin-bottom: 0.25rem !important;
}
.ml-lg-1 {
margin-left: 0.25rem !important;
}
.mx-lg-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important;
}
.my-lg-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important;
}
.m-lg-2 {
margin: 0.5rem 0.5rem !important;
}
.mt-lg-2 {
margin-top: 0.5rem !important;
}
.mr-lg-2 {
margin-right: 0.5rem !important;
}
.mb-lg-2 {
margin-bottom: 0.5rem !important;
}
.ml-lg-2 {
margin-left: 0.5rem !important;
}
.mx-lg-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important;
}
.my-lg-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important;
}
.m-lg-3 {
margin: 1rem 1rem !important;
}
.mt-lg-3 {
margin-top: 1rem !important;
}
.mr-lg-3 {
margin-right: 1rem !important;
}
.mb-lg-3 {
margin-bottom: 1rem !important;
}
.ml-lg-3 {
margin-left: 1rem !important;
}
.mx-lg-3 {
margin-right: 1rem !important;
margin-left: 1rem !important;
}
.my-lg-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
}
.m-lg-4 {
margin: 1.5rem 1.5rem !important;
}
.mt-lg-4 {
margin-top: 1.5rem !important;
}
.mr-lg-4 {
margin-right: 1.5rem !important;
}
.mb-lg-4 {
margin-bottom: 1.5rem !important;
}
.ml-lg-4 {
margin-left: 1.5rem !important;
}
.mx-lg-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important;
}
.my-lg-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important;
}
.m-lg-5 {
margin: 3rem 3rem !important;
}
.mt-lg-5 {
margin-top: 3rem !important;
}
.mr-lg-5 {
margin-right: 3rem !important;
}
.mb-lg-5 {
margin-bottom: 3rem !important;
}
.ml-lg-5 {
margin-left: 3rem !important;
}
.mx-lg-5 {
margin-right: 3rem !important;
margin-left: 3rem !important;
}
.my-lg-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important;
}
.p-lg-0 {
padding: 0 0 !important;
}
.pt-lg-0 {
padding-top: 0 !important;
}
.pr-lg-0 {
padding-right: 0 !important;
}
.pb-lg-0 {
padding-bottom: 0 !important;
}
.pl-lg-0 {
padding-left: 0 !important;
}
.px-lg-0 {
padding-right: 0 !important;
padding-left: 0 !important;
}
.py-lg-0 {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.p-lg-1 {
padding: 0.25rem 0.25rem !important;
}
.pt-lg-1 {
padding-top: 0.25rem !important;
}
.pr-lg-1 {
padding-right: 0.25rem !important;
}
.pb-lg-1 {
padding-bottom: 0.25rem !important;
}
.pl-lg-1 {
padding-left: 0.25rem !important;
}
.px-lg-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important;
}
.py-lg-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important;
}
.p-lg-2 {
padding: 0.5rem 0.5rem !important;
}
.pt-lg-2 {
padding-top: 0.5rem !important;
}
.pr-lg-2 {
padding-right: 0.5rem !important;
}
.pb-lg-2 {
padding-bottom: 0.5rem !important;
}
.pl-lg-2 {
padding-left: 0.5rem !important;
}
.px-lg-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important;
}
.py-lg-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important;
}
.p-lg-3 {
padding: 1rem 1rem !important;
}
.pt-lg-3 {
padding-top: 1rem !important;
}
.pr-lg-3 {
padding-right: 1rem !important;
}
.pb-lg-3 {
padding-bottom: 1rem !important;
}
.pl-lg-3 {
padding-left: 1rem !important;
}
.px-lg-3 {
padding-right: 1rem !important;
padding-left: 1rem !important;
}
.py-lg-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important;
}
.p-lg-4 {
padding: 1.5rem 1.5rem !important;
}
.pt-lg-4 {
padding-top: 1.5rem !important;
}
.pr-lg-4 {
padding-right: 1.5rem !important;
}
.pb-lg-4 {
padding-bottom: 1.5rem !important;
}
.pl-lg-4 {
padding-left: 1.5rem !important;
}
.px-lg-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important;
}
.py-lg-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important;
}
.p-lg-5 {
padding: 3rem 3rem !important;
}
.pt-lg-5 {
padding-top: 3rem !important;
}
.pr-lg-5 {
padding-right: 3rem !important;
}
.pb-lg-5 {
padding-bottom: 3rem !important;
}
.pl-lg-5 {
padding-left: 3rem !important;
}
.px-lg-5 {
padding-right: 3rem !important;
padding-left: 3rem !important;
}
.py-lg-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important;
}
.m-lg-auto {
margin: auto !important;
}
.mt-lg-auto {
margin-top: auto !important;
}
.mr-lg-auto {
margin-right: auto !important;
}
.mb-lg-auto {
margin-bottom: auto !important;
}
.ml-lg-auto {
margin-left: auto !important;
}
.mx-lg-auto {
margin-right: auto !important;
margin-left: auto !important;
}
.my-lg-auto {
margin-top: auto !important;
margin-bottom: auto !important;
}
}
@media (min-width: 1200px) {
.m-xl-0 {
margin: 0 0 !important;
}
.mt-xl-0 {
margin-top: 0 !important;
}
.mr-xl-0 {
margin-right: 0 !important;
}
.mb-xl-0 {
margin-bottom: 0 !important;
}
.ml-xl-0 {
margin-left: 0 !important;
}
.mx-xl-0 {
margin-right: 0 !important;
margin-left: 0 !important;
}
.my-xl-0 {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.m-xl-1 {
margin: 0.25rem 0.25rem !important;
}
.mt-xl-1 {
margin-top: 0.25rem !important;
}
.mr-xl-1 {
margin-right: 0.25rem !important;
}
.mb-xl-1 {
margin-bottom: 0.25rem !important;
}
.ml-xl-1 {
margin-left: 0.25rem !important;
}
.mx-xl-1 {
margin-right: 0.25rem !important;
margin-left: 0.25rem !important;
}
.my-xl-1 {
margin-top: 0.25rem !important;
margin-bottom: 0.25rem !important;
}
.m-xl-2 {
margin: 0.5rem 0.5rem !important;
}
.mt-xl-2 {
margin-top: 0.5rem !important;
}
.mr-xl-2 {
margin-right: 0.5rem !important;
}
.mb-xl-2 {
margin-bottom: 0.5rem !important;
}
.ml-xl-2 {
margin-left: 0.5rem !important;
}
.mx-xl-2 {
margin-right: 0.5rem !important;
margin-left: 0.5rem !important;
}
.my-xl-2 {
margin-top: 0.5rem !important;
margin-bottom: 0.5rem !important;
}
.m-xl-3 {
margin: 1rem 1rem !important;
}
.mt-xl-3 {
margin-top: 1rem !important;
}
.mr-xl-3 {
margin-right: 1rem !important;
}
.mb-xl-3 {
margin-bottom: 1rem !important;
}
.ml-xl-3 {
margin-left: 1rem !important;
}
.mx-xl-3 {
margin-right: 1rem !important;
margin-left: 1rem !important;
}
.my-xl-3 {
margin-top: 1rem !important;
margin-bottom: 1rem !important;
}
.m-xl-4 {
margin: 1.5rem 1.5rem !important;
}
.mt-xl-4 {
margin-top: 1.5rem !important;
}
.mr-xl-4 {
margin-right: 1.5rem !important;
}
.mb-xl-4 {
margin-bottom: 1.5rem !important;
}
.ml-xl-4 {
margin-left: 1.5rem !important;
}
.mx-xl-4 {
margin-right: 1.5rem !important;
margin-left: 1.5rem !important;
}
.my-xl-4 {
margin-top: 1.5rem !important;
margin-bottom: 1.5rem !important;
}
.m-xl-5 {
margin: 3rem 3rem !important;
}
.mt-xl-5 {
margin-top: 3rem !important;
}
.mr-xl-5 {
margin-right: 3rem !important;
}
.mb-xl-5 {
margin-bottom: 3rem !important;
}
.ml-xl-5 {
margin-left: 3rem !important;
}
.mx-xl-5 {
margin-right: 3rem !important;
margin-left: 3rem !important;
}
.my-xl-5 {
margin-top: 3rem !important;
margin-bottom: 3rem !important;
}
.p-xl-0 {
padding: 0 0 !important;
}
.pt-xl-0 {
padding-top: 0 !important;
}
.pr-xl-0 {
padding-right: 0 !important;
}
.pb-xl-0 {
padding-bottom: 0 !important;
}
.pl-xl-0 {
padding-left: 0 !important;
}
.px-xl-0 {
padding-right: 0 !important;
padding-left: 0 !important;
}
.py-xl-0 {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.p-xl-1 {
padding: 0.25rem 0.25rem !important;
}
.pt-xl-1 {
padding-top: 0.25rem !important;
}
.pr-xl-1 {
padding-right: 0.25rem !important;
}
.pb-xl-1 {
padding-bottom: 0.25rem !important;
}
.pl-xl-1 {
padding-left: 0.25rem !important;
}
.px-xl-1 {
padding-right: 0.25rem !important;
padding-left: 0.25rem !important;
}
.py-xl-1 {
padding-top: 0.25rem !important;
padding-bottom: 0.25rem !important;
}
.p-xl-2 {
padding: 0.5rem 0.5rem !important;
}
.pt-xl-2 {
padding-top: 0.5rem !important;
}
.pr-xl-2 {
padding-right: 0.5rem !important;
}
.pb-xl-2 {
padding-bottom: 0.5rem !important;
}
.pl-xl-2 {
padding-left: 0.5rem !important;
}
.px-xl-2 {
padding-right: 0.5rem !important;
padding-left: 0.5rem !important;
}
.py-xl-2 {
padding-top: 0.5rem !important;
padding-bottom: 0.5rem !important;
}
.p-xl-3 {
padding: 1rem 1rem !important;
}
.pt-xl-3 {
padding-top: 1rem !important;
}
.pr-xl-3 {
padding-right: 1rem !important;
}
.pb-xl-3 {
padding-bottom: 1rem !important;
}
.pl-xl-3 {
padding-left: 1rem !important;
}
.px-xl-3 {
padding-right: 1rem !important;
padding-left: 1rem !important;
}
.py-xl-3 {
padding-top: 1rem !important;
padding-bottom: 1rem !important;
}
.p-xl-4 {
padding: 1.5rem 1.5rem !important;
}
.pt-xl-4 {
padding-top: 1.5rem !important;
}
.pr-xl-4 {
padding-right: 1.5rem !important;
}
.pb-xl-4 {
padding-bottom: 1.5rem !important;
}
.pl-xl-4 {
padding-left: 1.5rem !important;
}
.px-xl-4 {
padding-right: 1.5rem !important;
padding-left: 1.5rem !important;
}
.py-xl-4 {
padding-top: 1.5rem !important;
padding-bottom: 1.5rem !important;
}
.p-xl-5 {
padding: 3rem 3rem !important;
}
.pt-xl-5 {
padding-top: 3rem !important;
}
.pr-xl-5 {
padding-right: 3rem !important;
}
.pb-xl-5 {
padding-bottom: 3rem !important;
}
.pl-xl-5 {
padding-left: 3rem !important;
}
.px-xl-5 {
padding-right: 3rem !important;
padding-left: 3rem !important;
}
.py-xl-5 {
padding-top: 3rem !important;
padding-bottom: 3rem !important;
}
.m-xl-auto {
margin: auto !important;
}
.mt-xl-auto {
margin-top: auto !important;
}
.mr-xl-auto {
margin-right: auto !important;
}
.mb-xl-auto {
margin-bottom: auto !important;
}
.ml-xl-auto {
margin-left: auto !important;
}
.mx-xl-auto {
margin-right: auto !important;
margin-left: auto !important;
}
.my-xl-auto {
margin-top: auto !important;
margin-bottom: auto !important;
}
}
.text-justify {
text-align: justify !important;
}
.text-nowrap {
white-space: nowrap !important;
}
.text-truncate {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.text-left {
text-align: left !important;
}
.text-right {
text-align: right !important;
}
.text-center {
text-align: center !important;
}
@media (min-width: 576px) {
.text-sm-left {
text-align: left !important;
}
.text-sm-right {
text-align: right !important;
}
.text-sm-center {
text-align: center !important;
}
}
@media (min-width: 768px) {
.text-md-left {
text-align: left !important;
}
.text-md-right {
text-align: right !important;
}
.text-md-center {
text-align: center !important;
}
}
@media (min-width: 992px) {
.text-lg-left {
text-align: left !important;
}
.text-lg-right {
text-align: right !important;
}
.text-lg-center {
text-align: center !important;
}
}
@media (min-width: 1200px) {
.text-xl-left {
text-align: left !important;
}
.text-xl-right {
text-align: right !important;
}
.text-xl-center {
text-align: center !important;
}
}
.text-lowercase {
text-transform: lowercase !important;
}
.text-uppercase {
text-transform: uppercase !important;
}
.text-capitalize {
text-transform: capitalize !important;
}
.font-weight-normal {
font-weight: normal;
}
.font-weight-bold {
font-weight: bold;
}
.font-italic {
font-style: italic;
}
.text-white {
color: #fff !important;
}
.text-muted {
color: #636c72 !important;
}
a.text-muted:focus, a.text-muted:hover {
color: #4b5257 !important;
}
.text-primary {
color: #0275d8 !important;
}
a.text-primary:focus, a.text-primary:hover {
color: #025aa5 !important;
}
.text-success {
color: #5cb85c !important;
}
a.text-success:focus, a.text-success:hover {
color: #449d44 !important;
}
.text-info {
color: #5bc0de !important;
}
a.text-info:focus, a.text-info:hover {
color: #31b0d5 !important;
}
.text-warning {
color: #f0ad4e !important;
}
a.text-warning:focus, a.text-warning:hover {
color: #ec971f !important;
}
.text-danger {
color: #d9534f !important;
}
a.text-danger:focus, a.text-danger:hover {
color: #c9302c !important;
}
.text-gray-dark {
color: #292b2c !important;
}
a.text-gray-dark:focus, a.text-gray-dark:hover {
color: #101112 !important;
}
.text-hide {
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
.invisible {
visibility: hidden !important;
}
.hidden-xs-up {
display: none !important;
}
@media (max-width: 575px) {
.hidden-xs-down {
display: none !important;
}
}
@media (min-width: 576px) {
.hidden-sm-up {
display: none !important;
}
}
@media (max-width: 767px) {
.hidden-sm-down {
display: none !important;
}
}
@media (min-width: 768px) {
.hidden-md-up {
display: none !important;
}
}
@media (max-width: 991px) {
.hidden-md-down {
display: none !important;
}
}
@media (min-width: 992px) {
.hidden-lg-up {
display: none !important;
}
}
@media (max-width: 1199px) {
.hidden-lg-down {
display: none !important;
}
}
@media (min-width: 1200px) {
.hidden-xl-up {
display: none !important;
}
}
.hidden-xl-down {
display: none !important;
}
.visible-print-block {
display: none !important;
}
@media print {
.visible-print-block {
display: block !important;
}
}
.visible-print-inline {
display: none !important;
}
@media print {
.visible-print-inline {
display: inline !important;
}
}
.visible-print-inline-block {
display: none !important;
}
@media print {
.visible-print-inline-block {
display: inline-block !important;
}
}
@media print {
.hidden-print {
display: none !important;
}
}
/*# sourceMappingURL=bootstrap.css.map */
================================================
FILE: docs/static/lib/bootstrap/dist/js/bootstrap.js
================================================
/*!
* Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com)
* Copyright 2011-2017 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
if (typeof jQuery === 'undefined') {
throw new Error('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.')
}
+function ($) {
var version = $.fn.jquery.split(' ')[0].split('.')
if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] >= 4)) {
throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0')
}
}(jQuery);
+function () {
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): util.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Util = function ($) {
/**
* ------------------------------------------------------------------------
* Private TransitionEnd Helpers
* ------------------------------------------------------------------------
*/
var transition = false;
var MAX_UID = 1000000;
var TransitionEndEvent = {
WebkitTransition: 'webkitTransitionEnd',
MozTransition: 'transitionend',
OTransition: 'oTransitionEnd otransitionend',
transition: 'transitionend'
};
// shoutout AngusCroll (https://goo.gl/pxwQGp)
function toType(obj) {
return {}.toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase();
}
function isElement(obj) {
return (obj[0] || obj).nodeType;
}
function getSpecialTransitionEndEvent() {
return {
bindType: transition.end,
delegateType: transition.end,
handle: function handle(event) {
if ($(event.target).is(this)) {
return event.handleObj.handler.apply(this, arguments); // eslint-disable-line prefer-rest-params
}
return undefined;
}
};
}
function transitionEndTest() {
if (window.QUnit) {
return false;
}
var el = document.createElement('bootstrap');
for (var name in TransitionEndEvent) {
if (el.style[name] !== undefined) {
return {
end: TransitionEndEvent[name]
};
}
}
return false;
}
function transitionEndEmulator(duration) {
var _this = this;
var called = false;
$(this).one(Util.TRANSITION_END, function () {
called = true;
});
setTimeout(function () {
if (!called) {
Util.triggerTransitionEnd(_this);
}
}, duration);
return this;
}
function setTransitionEndSupport() {
transition = transitionEndTest();
$.fn.emulateTransitionEnd = transitionEndEmulator;
if (Util.supportsTransitionEnd()) {
$.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
}
}
/**
* --------------------------------------------------------------------------
* Public Util Api
* --------------------------------------------------------------------------
*/
var Util = {
TRANSITION_END: 'bsTransitionEnd',
getUID: function getUID(prefix) {
do {
// eslint-disable-next-line no-bitwise
prefix += ~~(Math.random() * MAX_UID); // "~~" acts like a faster Math.floor() here
} while (document.getElementById(prefix));
return prefix;
},
getSelectorFromElement: function getSelectorFromElement(element) {
var selector = element.getAttribute('data-target');
if (!selector) {
selector = element.getAttribute('href') || '';
selector = /^#[a-z]/i.test(selector) ? selector : null;
}
return selector;
},
reflow: function reflow(element) {
return element.offsetHeight;
},
triggerTransitionEnd: function triggerTransitionEnd(element) {
$(element).trigger(transition.end);
},
supportsTransitionEnd: function supportsTransitionEnd() {
return Boolean(transition);
},
typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) {
for (var property in configTypes) {
if (configTypes.hasOwnProperty(property)) {
var expectedTypes = configTypes[property];
var value = config[property];
var valueType = value && isElement(value) ? 'element' : toType(value);
if (!new RegExp(expectedTypes).test(valueType)) {
throw new Error(componentName.toUpperCase() + ': ' + ('Option "' + property + '" provided type "' + valueType + '" ') + ('but expected type "' + expectedTypes + '".'));
}
}
}
}
};
setTransitionEndSupport();
return Util;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): alert.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Alert = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'alert';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.alert';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var TRANSITION_DURATION = 150;
var Selector = {
DISMISS: '[data-dismiss="alert"]'
};
var Event = {
CLOSE: 'close' + EVENT_KEY,
CLOSED: 'closed' + EVENT_KEY,
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
ALERT: 'alert',
FADE: 'fade',
SHOW: 'show'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Alert = function () {
function Alert(element) {
_classCallCheck(this, Alert);
this._element = element;
}
// getters
// public
Alert.prototype.close = function close(element) {
element = element || this._element;
var rootElement = this._getRootElement(element);
var customEvent = this._triggerCloseEvent(rootElement);
if (customEvent.isDefaultPrevented()) {
return;
}
this._removeElement(rootElement);
};
Alert.prototype.dispose = function dispose() {
$.removeData(this._element, DATA_KEY);
this._element = null;
};
// private
Alert.prototype._getRootElement = function _getRootElement(element) {
var selector = Util.getSelectorFromElement(element);
var parent = false;
if (selector) {
parent = $(selector)[0];
}
if (!parent) {
parent = $(element).closest('.' + ClassName.ALERT)[0];
}
return parent;
};
Alert.prototype._triggerCloseEvent = function _triggerCloseEvent(element) {
var closeEvent = $.Event(Event.CLOSE);
$(element).trigger(closeEvent);
return closeEvent;
};
Alert.prototype._removeElement = function _removeElement(element) {
var _this2 = this;
$(element).removeClass(ClassName.SHOW);
if (!Util.supportsTransitionEnd() || !$(element).hasClass(ClassName.FADE)) {
this._destroyElement(element);
return;
}
$(element).one(Util.TRANSITION_END, function (event) {
return _this2._destroyElement(element, event);
}).emulateTransitionEnd(TRANSITION_DURATION);
};
Alert.prototype._destroyElement = function _destroyElement(element) {
$(element).detach().trigger(Event.CLOSED).remove();
};
// static
Alert._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var $element = $(this);
var data = $element.data(DATA_KEY);
if (!data) {
data = new Alert(this);
$element.data(DATA_KEY, data);
}
if (config === 'close') {
data[config](this);
}
});
};
Alert._handleDismiss = function _handleDismiss(alertInstance) {
return function (event) {
if (event) {
event.preventDefault();
}
alertInstance.close(this);
};
};
_createClass(Alert, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}]);
return Alert;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Alert._jQueryInterface;
$.fn[NAME].Constructor = Alert;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Alert._jQueryInterface;
};
return Alert;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): button.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Button = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'button';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.button';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var ClassName = {
ACTIVE: 'active',
BUTTON: 'btn',
FOCUS: 'focus'
};
var Selector = {
DATA_TOGGLE_CARROT: '[data-toggle^="button"]',
DATA_TOGGLE: '[data-toggle="buttons"]',
INPUT: 'input',
ACTIVE: '.active',
BUTTON: '.btn'
};
var Event = {
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY,
FOCUS_BLUR_DATA_API: 'focus' + EVENT_KEY + DATA_API_KEY + ' ' + ('blur' + EVENT_KEY + DATA_API_KEY)
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Button = function () {
function Button(element) {
_classCallCheck(this, Button);
this._element = element;
}
// getters
// public
Button.prototype.toggle = function toggle() {
var triggerChangeEvent = true;
var rootElement = $(this._element).closest(Selector.DATA_TOGGLE)[0];
if (rootElement) {
var input = $(this._element).find(Selector.INPUT)[0];
if (input) {
if (input.type === 'radio') {
if (input.checked && $(this._element).hasClass(ClassName.ACTIVE)) {
triggerChangeEvent = false;
} else {
var activeElement = $(rootElement).find(Selector.ACTIVE)[0];
if (activeElement) {
$(activeElement).removeClass(ClassName.ACTIVE);
}
}
}
if (triggerChangeEvent) {
input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
$(input).trigger('change');
}
input.focus();
}
}
this._element.setAttribute('aria-pressed', !$(this._element).hasClass(ClassName.ACTIVE));
if (triggerChangeEvent) {
$(this._element).toggleClass(ClassName.ACTIVE);
}
};
Button.prototype.dispose = function dispose() {
$.removeData(this._element, DATA_KEY);
this._element = null;
};
// static
Button._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
if (!data) {
data = new Button(this);
$(this).data(DATA_KEY, data);
}
if (config === 'toggle') {
data[config]();
}
});
};
_createClass(Button, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}]);
return Button;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
event.preventDefault();
var button = event.target;
if (!$(button).hasClass(ClassName.BUTTON)) {
button = $(button).closest(Selector.BUTTON);
}
Button._jQueryInterface.call($(button), 'toggle');
}).on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
var button = $(event.target).closest(Selector.BUTTON)[0];
$(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type));
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Button._jQueryInterface;
$.fn[NAME].Constructor = Button;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Button._jQueryInterface;
};
return Button;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): carousel.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Carousel = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'carousel';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.carousel';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var TRANSITION_DURATION = 600;
var ARROW_LEFT_KEYCODE = 37; // KeyboardEvent.which value for left arrow key
var ARROW_RIGHT_KEYCODE = 39; // KeyboardEvent.which value for right arrow key
var Default = {
interval: 5000,
keyboard: true,
slide: false,
pause: 'hover',
wrap: true
};
var DefaultType = {
interval: '(number|boolean)',
keyboard: 'boolean',
slide: '(boolean|string)',
pause: '(string|boolean)',
wrap: 'boolean'
};
var Direction = {
NEXT: 'next',
PREV: 'prev',
LEFT: 'left',
RIGHT: 'right'
};
var Event = {
SLIDE: 'slide' + EVENT_KEY,
SLID: 'slid' + EVENT_KEY,
KEYDOWN: 'keydown' + EVENT_KEY,
MOUSEENTER: 'mouseenter' + EVENT_KEY,
MOUSELEAVE: 'mouseleave' + EVENT_KEY,
LOAD_DATA_API: 'load' + EVENT_KEY + DATA_API_KEY,
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
CAROUSEL: 'carousel',
ACTIVE: 'active',
SLIDE: 'slide',
RIGHT: 'carousel-item-right',
LEFT: 'carousel-item-left',
NEXT: 'carousel-item-next',
PREV: 'carousel-item-prev',
ITEM: 'carousel-item'
};
var Selector = {
ACTIVE: '.active',
ACTIVE_ITEM: '.active.carousel-item',
ITEM: '.carousel-item',
NEXT_PREV: '.carousel-item-next, .carousel-item-prev',
INDICATORS: '.carousel-indicators',
DATA_SLIDE: '[data-slide], [data-slide-to]',
DATA_RIDE: '[data-ride="carousel"]'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Carousel = function () {
function Carousel(element, config) {
_classCallCheck(this, Carousel);
this._items = null;
this._interval = null;
this._activeElement = null;
this._isPaused = false;
this._isSliding = false;
this._config = this._getConfig(config);
this._element = $(element)[0];
this._indicatorsElement = $(this._element).find(Selector.INDICATORS)[0];
this._addEventListeners();
}
// getters
// public
Carousel.prototype.next = function next() {
if (this._isSliding) {
throw new Error('Carousel is sliding');
}
this._slide(Direction.NEXT);
};
Carousel.prototype.nextWhenVisible = function nextWhenVisible() {
// Don't call next when the page isn't visible
if (!document.hidden) {
this.next();
}
};
Carousel.prototype.prev = function prev() {
if (this._isSliding) {
throw new Error('Carousel is sliding');
}
this._slide(Direction.PREVIOUS);
};
Carousel.prototype.pause = function pause(event) {
if (!event) {
this._isPaused = true;
}
if ($(this._element).find(Selector.NEXT_PREV)[0] && Util.supportsTransitionEnd()) {
Util.triggerTransitionEnd(this._element);
this.cycle(true);
}
clearInterval(this._interval);
this._interval = null;
};
Carousel.prototype.cycle = function cycle(event) {
if (!event) {
this._isPaused = false;
}
if (this._interval) {
clearInterval(this._interval);
this._interval = null;
}
if (this._config.interval && !this._isPaused) {
this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
}
};
Carousel.prototype.to = function to(index) {
var _this3 = this;
this._activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0];
var activeIndex = this._getItemIndex(this._activeElement);
if (index > this._items.length - 1 || index < 0) {
return;
}
if (this._isSliding) {
$(this._element).one(Event.SLID, function () {
return _this3.to(index);
});
return;
}
if (activeIndex === index) {
this.pause();
this.cycle();
return;
}
var direction = index > activeIndex ? Direction.NEXT : Direction.PREVIOUS;
this._slide(direction, this._items[index]);
};
Carousel.prototype.dispose = function dispose() {
$(this._element).off(EVENT_KEY);
$.removeData(this._element, DATA_KEY);
this._items = null;
this._config = null;
this._element = null;
this._interval = null;
this._isPaused = null;
this._isSliding = null;
this._activeElement = null;
this._indicatorsElement = null;
};
// private
Carousel.prototype._getConfig = function _getConfig(config) {
config = $.extend({}, Default, config);
Util.typeCheckConfig(NAME, config, DefaultType);
return config;
};
Carousel.prototype._addEventListeners = function _addEventListeners() {
var _this4 = this;
if (this._config.keyboard) {
$(this._element).on(Event.KEYDOWN, function (event) {
return _this4._keydown(event);
});
}
if (this._config.pause === 'hover' && !('ontouchstart' in document.documentElement)) {
$(this._element).on(Event.MOUSEENTER, function (event) {
return _this4.pause(event);
}).on(Event.MOUSELEAVE, function (event) {
return _this4.cycle(event);
});
}
};
Carousel.prototype._keydown = function _keydown(event) {
if (/input|textarea/i.test(event.target.tagName)) {
return;
}
switch (event.which) {
case ARROW_LEFT_KEYCODE:
event.preventDefault();
this.prev();
break;
case ARROW_RIGHT_KEYCODE:
event.preventDefault();
this.next();
break;
default:
return;
}
};
Carousel.prototype._getItemIndex = function _getItemIndex(element) {
this._items = $.makeArray($(element).parent().find(Selector.ITEM));
return this._items.indexOf(element);
};
Carousel.prototype._getItemByDirection = function _getItemByDirection(direction, activeElement) {
var isNextDirection = direction === Direction.NEXT;
var isPrevDirection = direction === Direction.PREVIOUS;
var activeIndex = this._getItemIndex(activeElement);
var lastItemIndex = this._items.length - 1;
var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex;
if (isGoingToWrap && !this._config.wrap) {
return activeElement;
}
var delta = direction === Direction.PREVIOUS ? -1 : 1;
var itemIndex = (activeIndex + delta) % this._items.length;
return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex];
};
Carousel.prototype._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
var slideEvent = $.Event(Event.SLIDE, {
relatedTarget: relatedTarget,
direction: eventDirectionName
});
$(this._element).trigger(slideEvent);
return slideEvent;
};
Carousel.prototype._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
if (this._indicatorsElement) {
$(this._indicatorsElement).find(Selector.ACTIVE).removeClass(ClassName.ACTIVE);
var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
if (nextIndicator) {
$(nextIndicator).addClass(ClassName.ACTIVE);
}
}
};
Carousel.prototype._slide = function _slide(direction, element) {
var _this5 = this;
var activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0];
var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement);
var isCycling = Boolean(this._interval);
var directionalClassName = void 0;
var orderClassName = void 0;
var eventDirectionName = void 0;
if (direction === Direction.NEXT) {
directionalClassName = ClassName.LEFT;
orderClassName = ClassName.NEXT;
eventDirectionName = Direction.LEFT;
} else {
directionalClassName = ClassName.RIGHT;
orderClassName = ClassName.PREV;
eventDirectionName = Direction.RIGHT;
}
if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {
this._isSliding = false;
return;
}
var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
if (slideEvent.isDefaultPrevented()) {
return;
}
if (!activeElement || !nextElement) {
// some weirdness is happening, so we bail
return;
}
this._isSliding = true;
if (isCycling) {
this.pause();
}
this._setActiveIndicatorElement(nextElement);
var slidEvent = $.Event(Event.SLID, {
relatedTarget: nextElement,
direction: eventDirectionName
});
if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.SLIDE)) {
$(nextElement).addClass(orderClassName);
Util.reflow(nextElement);
$(activeElement).addClass(directionalClassName);
$(nextElement).addClass(directionalClassName);
$(activeElement).one(Util.TRANSITION_END, function () {
$(nextElement).removeClass(directionalClassName + ' ' + orderClassName).addClass(ClassName.ACTIVE);
$(activeElement).removeClass(ClassName.ACTIVE + ' ' + orderClassName + ' ' + directionalClassName);
_this5._isSliding = false;
setTimeout(function () {
return $(_this5._element).trigger(slidEvent);
}, 0);
}).emulateTransitionEnd(TRANSITION_DURATION);
} else {
$(activeElement).removeClass(ClassName.ACTIVE);
$(nextElement).addClass(ClassName.ACTIVE);
this._isSliding = false;
$(this._element).trigger(slidEvent);
}
if (isCycling) {
this.cycle();
}
};
// static
Carousel._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
var _config = $.extend({}, Default, $(this).data());
if ((typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object') {
$.extend(_config, config);
}
var action = typeof config === 'string' ? config : _config.slide;
if (!data) {
data = new Carousel(this, _config);
$(this).data(DATA_KEY, data);
}
if (typeof config === 'number') {
data.to(config);
} else if (typeof action === 'string') {
if (data[action] === undefined) {
throw new Error('No method named "' + action + '"');
}
data[action]();
} else if (_config.interval) {
data.pause();
data.cycle();
}
});
};
Carousel._dataApiClickHandler = function _dataApiClickHandler(event) {
var selector = Util.getSelectorFromElement(this);
if (!selector) {
return;
}
var target = $(selector)[0];
if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {
return;
}
var config = $.extend({}, $(target).data(), $(this).data());
var slideIndex = this.getAttribute('data-slide-to');
if (slideIndex) {
config.interval = false;
}
Carousel._jQueryInterface.call($(target), config);
if (slideIndex) {
$(target).data(DATA_KEY).to(slideIndex);
}
event.preventDefault();
};
_createClass(Carousel, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}, {
key: 'Default',
get: function get() {
return Default;
}
}]);
return Carousel;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler);
$(window).on(Event.LOAD_DATA_API, function () {
$(Selector.DATA_RIDE).each(function () {
var $carousel = $(this);
Carousel._jQueryInterface.call($carousel, $carousel.data());
});
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Carousel._jQueryInterface;
$.fn[NAME].Constructor = Carousel;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Carousel._jQueryInterface;
};
return Carousel;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): collapse.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Collapse = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'collapse';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.collapse';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var TRANSITION_DURATION = 600;
var Default = {
toggle: true,
parent: ''
};
var DefaultType = {
toggle: 'boolean',
parent: 'string'
};
var Event = {
SHOW: 'show' + EVENT_KEY,
SHOWN: 'shown' + EVENT_KEY,
HIDE: 'hide' + EVENT_KEY,
HIDDEN: 'hidden' + EVENT_KEY,
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
SHOW: 'show',
COLLAPSE: 'collapse',
COLLAPSING: 'collapsing',
COLLAPSED: 'collapsed'
};
var Dimension = {
WIDTH: 'width',
HEIGHT: 'height'
};
var Selector = {
ACTIVES: '.card > .show, .card > .collapsing',
DATA_TOGGLE: '[data-toggle="collapse"]'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Collapse = function () {
function Collapse(element, config) {
_classCallCheck(this, Collapse);
this._isTransitioning = false;
this._element = element;
this._config = this._getConfig(config);
this._triggerArray = $.makeArray($('[data-toggle="collapse"][href="#' + element.id + '"],' + ('[data-toggle="collapse"][data-target="#' + element.id + '"]')));
this._parent = this._config.parent ? this._getParent() : null;
if (!this._config.parent) {
this._addAriaAndCollapsedClass(this._element, this._triggerArray);
}
if (this._config.toggle) {
this.toggle();
}
}
// getters
// public
Collapse.prototype.toggle = function toggle() {
if ($(this._element).hasClass(ClassName.SHOW)) {
this.hide();
} else {
this.show();
}
};
Collapse.prototype.show = function show() {
var _this6 = this;
if (this._isTransitioning) {
throw new Error('Collapse is transitioning');
}
if ($(this._element).hasClass(ClassName.SHOW)) {
return;
}
var actives = void 0;
var activesData = void 0;
if (this._parent) {
actives = $.makeArray($(this._parent).find(Selector.ACTIVES));
if (!actives.length) {
actives = null;
}
}
if (actives) {
activesData = $(actives).data(DATA_KEY);
if (activesData && activesData._isTransitioning) {
return;
}
}
var startEvent = $.Event(Event.SHOW);
$(this._element).trigger(startEvent);
if (startEvent.isDefaultPrevented()) {
return;
}
if (actives) {
Collapse._jQueryInterface.call($(actives), 'hide');
if (!activesData) {
$(actives).data(DATA_KEY, null);
}
}
var dimension = this._getDimension();
$(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING);
this._element.style[dimension] = 0;
this._element.setAttribute('aria-expanded', true);
if (this._triggerArray.length) {
$(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true);
}
this.setTransitioning(true);
var complete = function complete() {
$(_this6._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).addClass(ClassName.SHOW);
_this6._element.style[dimension] = '';
_this6.setTransitioning(false);
$(_this6._element).trigger(Event.SHOWN);
};
if (!Util.supportsTransitionEnd()) {
complete();
return;
}
var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
var scrollSize = 'scroll' + capitalizedDimension;
$(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
this._element.style[dimension] = this._element[scrollSize] + 'px';
};
Collapse.prototype.hide = function hide() {
var _this7 = this;
if (this._isTransitioning) {
throw new Error('Collapse is transitioning');
}
if (!$(this._element).hasClass(ClassName.SHOW)) {
return;
}
var startEvent = $.Event(Event.HIDE);
$(this._element).trigger(startEvent);
if (startEvent.isDefaultPrevented()) {
return;
}
var dimension = this._getDimension();
var offsetDimension = dimension === Dimension.WIDTH ? 'offsetWidth' : 'offsetHeight';
this._element.style[dimension] = this._element[offsetDimension] + 'px';
Util.reflow(this._element);
$(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW);
this._element.setAttribute('aria-expanded', false);
if (this._triggerArray.length) {
$(this._triggerArray).addClass(ClassName.COLLAPSED).attr('aria-expanded', false);
}
this.setTransitioning(true);
var complete = function complete() {
_this7.setTransitioning(false);
$(_this7._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).trigger(Event.HIDDEN);
};
this._element.style[dimension] = '';
if (!Util.supportsTransitionEnd()) {
complete();
return;
}
$(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
};
Collapse.prototype.setTransitioning = function setTransitioning(isTransitioning) {
this._isTransitioning = isTransitioning;
};
Collapse.prototype.dispose = function dispose() {
$.removeData(this._element, DATA_KEY);
this._config = null;
this._parent = null;
this._element = null;
this._triggerArray = null;
this._isTransitioning = null;
};
// private
Collapse.prototype._getConfig = function _getConfig(config) {
config = $.extend({}, Default, config);
config.toggle = Boolean(config.toggle); // coerce string values
Util.typeCheckConfig(NAME, config, DefaultType);
return config;
};
Collapse.prototype._getDimension = function _getDimension() {
var hasWidth = $(this._element).hasClass(Dimension.WIDTH);
return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT;
};
Collapse.prototype._getParent = function _getParent() {
var _this8 = this;
var parent = $(this._config.parent)[0];
var selector = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]';
$(parent).find(selector).each(function (i, element) {
_this8._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
});
return parent;
};
Collapse.prototype._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
if (element) {
var isOpen = $(element).hasClass(ClassName.SHOW);
element.setAttribute('aria-expanded', isOpen);
if (triggerArray.length) {
$(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
}
}
};
// static
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
var selector = Util.getSelectorFromElement(element);
return selector ? $(selector)[0] : null;
};
Collapse._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var $this = $(this);
var data = $this.data(DATA_KEY);
var _config = $.extend({}, Default, $this.data(), (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' && config);
if (!data && _config.toggle && /show|hide/.test(config)) {
_config.toggle = false;
}
if (!data) {
data = new Collapse(this, _config);
$this.data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config]();
}
});
};
_createClass(Collapse, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}, {
key: 'Default',
get: function get() {
return Default;
}
}]);
return Collapse;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
event.preventDefault();
var target = Collapse._getTargetFromElement(this);
var data = $(target).data(DATA_KEY);
var config = data ? 'toggle' : $(this).data();
Collapse._jQueryInterface.call($(target), config);
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Collapse._jQueryInterface;
$.fn[NAME].Constructor = Collapse;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Collapse._jQueryInterface;
};
return Collapse;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): dropdown.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Dropdown = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'dropdown';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.dropdown';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
var ARROW_UP_KEYCODE = 38; // KeyboardEvent.which value for up arrow key
var ARROW_DOWN_KEYCODE = 40; // KeyboardEvent.which value for down arrow key
var RIGHT_MOUSE_BUTTON_WHICH = 3; // MouseEvent.which value for the right button (assuming a right-handed mouse)
var Event = {
HIDE: 'hide' + EVENT_KEY,
HIDDEN: 'hidden' + EVENT_KEY,
SHOW: 'show' + EVENT_KEY,
SHOWN: 'shown' + EVENT_KEY,
CLICK: 'click' + EVENT_KEY,
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY,
FOCUSIN_DATA_API: 'focusin' + EVENT_KEY + DATA_API_KEY,
KEYDOWN_DATA_API: 'keydown' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
BACKDROP: 'dropdown-backdrop',
DISABLED: 'disabled',
SHOW: 'show'
};
var Selector = {
BACKDROP: '.dropdown-backdrop',
DATA_TOGGLE: '[data-toggle="dropdown"]',
FORM_CHILD: '.dropdown form',
ROLE_MENU: '[role="menu"]',
ROLE_LISTBOX: '[role="listbox"]',
NAVBAR_NAV: '.navbar-nav',
VISIBLE_ITEMS: '[role="menu"] li:not(.disabled) a, ' + '[role="listbox"] li:not(.disabled) a'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Dropdown = function () {
function Dropdown(element) {
_classCallCheck(this, Dropdown);
this._element = element;
this._addEventListeners();
}
// getters
// public
Dropdown.prototype.toggle = function toggle() {
if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
return false;
}
var parent = Dropdown._getParentFromElement(this);
var isActive = $(parent).hasClass(ClassName.SHOW);
Dropdown._clearMenus();
if (isActive) {
return false;
}
if ('ontouchstart' in document.documentElement && !$(parent).closest(Selector.NAVBAR_NAV).length) {
// if mobile we use a backdrop because click events don't delegate
var dropdown = document.createElement('div');
dropdown.className = ClassName.BACKDROP;
$(dropdown).insertBefore(this);
$(dropdown).on('click', Dropdown._clearMenus);
}
var relatedTarget = {
relatedTarget: this
};
var showEvent = $.Event(Event.SHOW, relatedTarget);
$(parent).trigger(showEvent);
if (showEvent.isDefaultPrevented()) {
return false;
}
this.focus();
this.setAttribute('aria-expanded', true);
$(parent).toggleClass(ClassName.SHOW);
$(parent).trigger($.Event(Event.SHOWN, relatedTarget));
return false;
};
Dropdown.prototype.dispose = function dispose() {
$.removeData(this._element, DATA_KEY);
$(this._element).off(EVENT_KEY);
this._element = null;
};
// private
Dropdown.prototype._addEventListeners = function _addEventListeners() {
$(this._element).on(Event.CLICK, this.toggle);
};
// static
Dropdown._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
if (!data) {
data = new Dropdown(this);
$(this).data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config].call(this);
}
});
};
Dropdown._clearMenus = function _clearMenus(event) {
if (event && event.which === RIGHT_MOUSE_BUTTON_WHICH) {
return;
}
var backdrop = $(Selector.BACKDROP)[0];
if (backdrop) {
backdrop.parentNode.removeChild(backdrop);
}
var toggles = $.makeArray($(Selector.DATA_TOGGLE));
for (var i = 0; i < toggles.length; i++) {
var parent = Dropdown._getParentFromElement(toggles[i]);
var relatedTarget = {
relatedTarget: toggles[i]
};
if (!$(parent).hasClass(ClassName.SHOW)) {
continue;
}
if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'focusin') && $.contains(parent, event.target)) {
continue;
}
var hideEvent = $.Event(Event.HIDE, relatedTarget);
$(parent).trigger(hideEvent);
if (hideEvent.isDefaultPrevented()) {
continue;
}
toggles[i].setAttribute('aria-expanded', 'false');
$(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
}
};
Dropdown._getParentFromElement = function _getParentFromElement(element) {
var parent = void 0;
var selector = Util.getSelectorFromElement(element);
if (selector) {
parent = $(selector)[0];
}
return parent || element.parentNode;
};
Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
if (!/(38|40|27|32)/.test(event.which) || /input|textarea/i.test(event.target.tagName)) {
return;
}
event.preventDefault();
event.stopPropagation();
if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
return;
}
var parent = Dropdown._getParentFromElement(this);
var isActive = $(parent).hasClass(ClassName.SHOW);
if (!isActive && event.which !== ESCAPE_KEYCODE || isActive && event.which === ESCAPE_KEYCODE) {
if (event.which === ESCAPE_KEYCODE) {
var toggle = $(parent).find(Selector.DATA_TOGGLE)[0];
$(toggle).trigger('focus');
}
$(this).trigger('click');
return;
}
var items = $(parent).find(Selector.VISIBLE_ITEMS).get();
if (!items.length) {
return;
}
var index = items.indexOf(event.target);
if (event.which === ARROW_UP_KEYCODE && index > 0) {
// up
index--;
}
if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) {
// down
index++;
}
if (index < 0) {
index = 0;
}
items[index].focus();
};
_createClass(Dropdown, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}]);
return Dropdown;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.ROLE_MENU, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.ROLE_LISTBOX, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + ' ' + Event.FOCUSIN_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, Dropdown.prototype.toggle).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
e.stopPropagation();
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Dropdown._jQueryInterface;
$.fn[NAME].Constructor = Dropdown;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Dropdown._jQueryInterface;
};
return Dropdown;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): modal.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Modal = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'modal';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.modal';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var TRANSITION_DURATION = 300;
var BACKDROP_TRANSITION_DURATION = 150;
var ESCAPE_KEYCODE = 27; // KeyboardEvent.which value for Escape (Esc) key
var Default = {
backdrop: true,
keyboard: true,
focus: true,
show: true
};
var DefaultType = {
backdrop: '(boolean|string)',
keyboard: 'boolean',
focus: 'boolean',
show: 'boolean'
};
var Event = {
HIDE: 'hide' + EVENT_KEY,
HIDDEN: 'hidden' + EVENT_KEY,
SHOW: 'show' + EVENT_KEY,
SHOWN: 'shown' + EVENT_KEY,
FOCUSIN: 'focusin' + EVENT_KEY,
RESIZE: 'resize' + EVENT_KEY,
CLICK_DISMISS: 'click.dismiss' + EVENT_KEY,
KEYDOWN_DISMISS: 'keydown.dismiss' + EVENT_KEY,
MOUSEUP_DISMISS: 'mouseup.dismiss' + EVENT_KEY,
MOUSEDOWN_DISMISS: 'mousedown.dismiss' + EVENT_KEY,
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
BACKDROP: 'modal-backdrop',
OPEN: 'modal-open',
FADE: 'fade',
SHOW: 'show'
};
var Selector = {
DIALOG: '.modal-dialog',
DATA_TOGGLE: '[data-toggle="modal"]',
DATA_DISMISS: '[data-dismiss="modal"]',
FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Modal = function () {
function Modal(element, config) {
_classCallCheck(this, Modal);
this._config = this._getConfig(config);
this._element = element;
this._dialog = $(element).find(Selector.DIALOG)[0];
this._backdrop = null;
this._isShown = false;
this._isBodyOverflowing = false;
this._ignoreBackdropClick = false;
this._isTransitioning = false;
this._originalBodyPadding = 0;
this._scrollbarWidth = 0;
}
// getters
// public
Modal.prototype.toggle = function toggle(relatedTarget) {
return this._isShown ? this.hide() : this.show(relatedTarget);
};
Modal.prototype.show = function show(relatedTarget) {
var _this9 = this;
if (this._isTransitioning) {
throw new Error('Modal is transitioning');
}
if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE)) {
this._isTransitioning = true;
}
var showEvent = $.Event(Event.SHOW, {
relatedTarget: relatedTarget
});
$(this._element).trigger(showEvent);
if (this._isShown || showEvent.isDefaultPrevented()) {
return;
}
this._isShown = true;
this._checkScrollbar();
this._setScrollbar();
$(document.body).addClass(ClassName.OPEN);
this._setEscapeEvent();
this._setResizeEvent();
$(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
return _this9.hide(event);
});
$(this._dialog).on(Event.MOUSEDOWN_DISMISS, function () {
$(_this9._element).one(Event.MOUSEUP_DISMISS, function (event) {
if ($(event.target).is(_this9._element)) {
_this9._ignoreBackdropClick = true;
}
});
});
this._showBackdrop(function () {
return _this9._showElement(relatedTarget);
});
};
Modal.prototype.hide = function hide(event) {
var _this10 = this;
if (event) {
event.preventDefault();
}
if (this._isTransitioning) {
throw new Error('Modal is transitioning');
}
var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
if (transition) {
this._isTransitioning = true;
}
var hideEvent = $.Event(Event.HIDE);
$(this._element).trigger(hideEvent);
if (!this._isShown || hideEvent.isDefaultPrevented()) {
return;
}
this._isShown = false;
this._setEscapeEvent();
this._setResizeEvent();
$(document).off(Event.FOCUSIN);
$(this._element).removeClass(ClassName.SHOW);
$(this._element).off(Event.CLICK_DISMISS);
$(this._dialog).off(Event.MOUSEDOWN_DISMISS);
if (transition) {
$(this._element).one(Util.TRANSITION_END, function (event) {
return _this10._hideModal(event);
}).emulateTransitionEnd(TRANSITION_DURATION);
} else {
this._hideModal();
}
};
Modal.prototype.dispose = function dispose() {
$.removeData(this._element, DATA_KEY);
$(window, document, this._element, this._backdrop).off(EVENT_KEY);
this._config = null;
this._element = null;
this._dialog = null;
this._backdrop = null;
this._isShown = null;
this._isBodyOverflowing = null;
this._ignoreBackdropClick = null;
this._originalBodyPadding = null;
this._scrollbarWidth = null;
};
// private
Modal.prototype._getConfig = function _getConfig(config) {
config = $.extend({}, Default, config);
Util.typeCheckConfig(NAME, config, DefaultType);
return config;
};
Modal.prototype._showElement = function _showElement(relatedTarget) {
var _this11 = this;
var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {
// don't move modals dom position
document.body.appendChild(this._element);
}
this._element.style.display = 'block';
this._element.removeAttribute('aria-hidden');
this._element.scrollTop = 0;
if (transition) {
Util.reflow(this._element);
}
$(this._element).addClass(ClassName.SHOW);
if (this._config.focus) {
this._enforceFocus();
}
var shownEvent = $.Event(Event.SHOWN, {
relatedTarget: relatedTarget
});
var transitionComplete = function transitionComplete() {
if (_this11._config.focus) {
_this11._element.focus();
}
_this11._isTransitioning = false;
$(_this11._element).trigger(shownEvent);
};
if (transition) {
$(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(TRANSITION_DURATION);
} else {
transitionComplete();
}
};
Modal.prototype._enforceFocus = function _enforceFocus() {
var _this12 = this;
$(document).off(Event.FOCUSIN) // guard against infinite focus loop
.on(Event.FOCUSIN, function (event) {
if (document !== event.target && _this12._element !== event.target && !$(_this12._element).has(event.target).length) {
_this12._element.focus();
}
});
};
Modal.prototype._setEscapeEvent = function _setEscapeEvent() {
var _this13 = this;
if (this._isShown && this._config.keyboard) {
$(this._element).on(Event.KEYDOWN_DISMISS, function (event) {
if (event.which === ESCAPE_KEYCODE) {
_this13.hide();
}
});
} else if (!this._isShown) {
$(this._element).off(Event.KEYDOWN_DISMISS);
}
};
Modal.prototype._setResizeEvent = function _setResizeEvent() {
var _this14 = this;
if (this._isShown) {
$(window).on(Event.RESIZE, function (event) {
return _this14._handleUpdate(event);
});
} else {
$(window).off(Event.RESIZE);
}
};
Modal.prototype._hideModal = function _hideModal() {
var _this15 = this;
this._element.style.display = 'none';
this._element.setAttribute('aria-hidden', 'true');
this._isTransitioning = false;
this._showBackdrop(function () {
$(document.body).removeClass(ClassName.OPEN);
_this15._resetAdjustments();
_this15._resetScrollbar();
$(_this15._element).trigger(Event.HIDDEN);
});
};
Modal.prototype._removeBackdrop = function _removeBackdrop() {
if (this._backdrop) {
$(this._backdrop).remove();
this._backdrop = null;
}
};
Modal.prototype._showBackdrop = function _showBackdrop(callback) {
var _this16 = this;
var animate = $(this._element).hasClass(ClassName.FADE) ? ClassName.FADE : '';
if (this._isShown && this._config.backdrop) {
var doAnimate = Util.supportsTransitionEnd() && animate;
this._backdrop = document.createElement('div');
this._backdrop.className = ClassName.BACKDROP;
if (animate) {
$(this._backdrop).addClass(animate);
}
$(this._backdrop).appendTo(document.body);
$(this._element).on(Event.CLICK_DISMISS, function (event) {
if (_this16._ignoreBackdropClick) {
_this16._ignoreBackdropClick = false;
return;
}
if (event.target !== event.currentTarget) {
return;
}
if (_this16._config.backdrop === 'static') {
_this16._element.focus();
} else {
_this16.hide();
}
});
if (doAnimate) {
Util.reflow(this._backdrop);
}
$(this._backdrop).addClass(ClassName.SHOW);
if (!callback) {
return;
}
if (!doAnimate) {
callback();
return;
}
$(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(BACKDROP_TRANSITION_DURATION);
} else if (!this._isShown && this._backdrop) {
$(this._backdrop).removeClass(ClassName.SHOW);
var callbackRemove = function callbackRemove() {
_this16._removeBackdrop();
if (callback) {
callback();
}
};
if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE)) {
$(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(BACKDROP_TRANSITION_DURATION);
} else {
callbackRemove();
}
} else if (callback) {
callback();
}
};
// ----------------------------------------------------------------------
// the following methods are used to handle overflowing modals
// todo (fat): these should probably be refactored out of modal.js
// ----------------------------------------------------------------------
Modal.prototype._handleUpdate = function _handleUpdate() {
this._adjustDialog();
};
Modal.prototype._adjustDialog = function _adjustDialog() {
var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
if (!this._isBodyOverflowing && isModalOverflowing) {
this._element.style.paddingLeft = this._scrollbarWidth + 'px';
}
if (this._isBodyOverflowing && !isModalOverflowing) {
this._element.style.paddingRight = this._scrollbarWidth + 'px';
}
};
Modal.prototype._resetAdjustments = function _resetAdjustments() {
this._element.style.paddingLeft = '';
this._element.style.paddingRight = '';
};
Modal.prototype._checkScrollbar = function _checkScrollbar() {
this._isBodyOverflowing = document.body.clientWidth < window.innerWidth;
this._scrollbarWidth = this._getScrollbarWidth();
};
Modal.prototype._setScrollbar = function _setScrollbar() {
var bodyPadding = parseInt($(Selector.FIXED_CONTENT).css('padding-right') || 0, 10);
this._originalBodyPadding = document.body.style.paddingRight || '';
if (this._isBodyOverflowing) {
document.body.style.paddingRight = bodyPadding + this._scrollbarWidth + 'px';
}
};
Modal.prototype._resetScrollbar = function _resetScrollbar() {
document.body.style.paddingRight = this._originalBodyPadding;
};
Modal.prototype._getScrollbarWidth = function _getScrollbarWidth() {
// thx d.walsh
var scrollDiv = document.createElement('div');
scrollDiv.className = ClassName.SCROLLBAR_MEASURER;
document.body.appendChild(scrollDiv);
var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;
document.body.removeChild(scrollDiv);
return scrollbarWidth;
};
// static
Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
var _config = $.extend({}, Modal.Default, $(this).data(), (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' && config);
if (!data) {
data = new Modal(this, _config);
$(this).data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config](relatedTarget);
} else if (_config.show) {
data.show(relatedTarget);
}
});
};
_createClass(Modal, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}, {
key: 'Default',
get: function get() {
return Default;
}
}]);
return Modal;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
var _this17 = this;
var target = void 0;
var selector = Util.getSelectorFromElement(this);
if (selector) {
target = $(selector)[0];
}
var config = $(target).data(DATA_KEY) ? 'toggle' : $.extend({}, $(target).data(), $(this).data());
if (this.tagName === 'A' || this.tagName === 'AREA') {
event.preventDefault();
}
var $target = $(target).one(Event.SHOW, function (showEvent) {
if (showEvent.isDefaultPrevented()) {
// only register focus restorer if modal will actually get shown
return;
}
$target.one(Event.HIDDEN, function () {
if ($(_this17).is(':visible')) {
_this17.focus();
}
});
});
Modal._jQueryInterface.call($(target), config, this);
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Modal._jQueryInterface;
$.fn[NAME].Constructor = Modal;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Modal._jQueryInterface;
};
return Modal;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): scrollspy.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var ScrollSpy = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'scrollspy';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.scrollspy';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var Default = {
offset: 10,
method: 'auto',
target: ''
};
var DefaultType = {
offset: 'number',
method: 'string',
target: '(string|element)'
};
var Event = {
ACTIVATE: 'activate' + EVENT_KEY,
SCROLL: 'scroll' + EVENT_KEY,
LOAD_DATA_API: 'load' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
DROPDOWN_ITEM: 'dropdown-item',
DROPDOWN_MENU: 'dropdown-menu',
NAV_LINK: 'nav-link',
NAV: 'nav',
ACTIVE: 'active'
};
var Selector = {
DATA_SPY: '[data-spy="scroll"]',
ACTIVE: '.active',
LIST_ITEM: '.list-item',
LI: 'li',
LI_DROPDOWN: 'li.dropdown',
NAV_LINKS: '.nav-link',
DROPDOWN: '.dropdown',
DROPDOWN_ITEMS: '.dropdown-item',
DROPDOWN_TOGGLE: '.dropdown-toggle'
};
var OffsetMethod = {
OFFSET: 'offset',
POSITION: 'position'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var ScrollSpy = function () {
function ScrollSpy(element, config) {
var _this18 = this;
_classCallCheck(this, ScrollSpy);
this._element = element;
this._scrollElement = element.tagName === 'BODY' ? window : element;
this._config = this._getConfig(config);
this._selector = this._config.target + ' ' + Selector.NAV_LINKS + ',' + (this._config.target + ' ' + Selector.DROPDOWN_ITEMS);
this._offsets = [];
this._targets = [];
this._activeTarget = null;
this._scrollHeight = 0;
$(this._scrollElement).on(Event.SCROLL, function (event) {
return _this18._process(event);
});
this.refresh();
this._process();
}
// getters
// public
ScrollSpy.prototype.refresh = function refresh() {
var _this19 = this;
var autoMethod = this._scrollElement !== this._scrollElement.window ? OffsetMethod.POSITION : OffsetMethod.OFFSET;
var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
this._offsets = [];
this._targets = [];
this._scrollHeight = this._getScrollHeight();
var targets = $.makeArray($(this._selector));
targets.map(function (element) {
var target = void 0;
var targetSelector = Util.getSelectorFromElement(element);
if (targetSelector) {
target = $(targetSelector)[0];
}
if (target && (target.offsetWidth || target.offsetHeight)) {
// todo (fat): remove sketch reliance on jQuery position/offset
return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
}
return null;
}).filter(function (item) {
return item;
}).sort(function (a, b) {
return a[0] - b[0];
}).forEach(function (item) {
_this19._offsets.push(item[0]);
_this19._targets.push(item[1]);
});
};
ScrollSpy.prototype.dispose = function dispose() {
$.removeData(this._element, DATA_KEY);
$(this._scrollElement).off(EVENT_KEY);
this._element = null;
this._scrollElement = null;
this._config = null;
this._selector = null;
this._offsets = null;
this._targets = null;
this._activeTarget = null;
this._scrollHeight = null;
};
// private
ScrollSpy.prototype._getConfig = function _getConfig(config) {
config = $.extend({}, Default, config);
if (typeof config.target !== 'string') {
var id = $(config.target).attr('id');
if (!id) {
id = Util.getUID(NAME);
$(config.target).attr('id', id);
}
config.target = '#' + id;
}
Util.typeCheckConfig(NAME, config, DefaultType);
return config;
};
ScrollSpy.prototype._getScrollTop = function _getScrollTop() {
return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
};
ScrollSpy.prototype._getScrollHeight = function _getScrollHeight() {
return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
};
ScrollSpy.prototype._getOffsetHeight = function _getOffsetHeight() {
return this._scrollElement === window ? window.innerHeight : this._scrollElement.offsetHeight;
};
ScrollSpy.prototype._process = function _process() {
var scrollTop = this._getScrollTop() + this._config.offset;
var scrollHeight = this._getScrollHeight();
var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight();
if (this._scrollHeight !== scrollHeight) {
this.refresh();
}
if (scrollTop >= maxScroll) {
var target = this._targets[this._targets.length - 1];
if (this._activeTarget !== target) {
this._activate(target);
}
return;
}
if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {
this._activeTarget = null;
this._clear();
return;
}
for (var i = this._offsets.length; i--;) {
var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (this._offsets[i + 1] === undefined || scrollTop < this._offsets[i + 1]);
if (isActiveTarget) {
this._activate(this._targets[i]);
}
}
};
ScrollSpy.prototype._activate = function _activate(target) {
this._activeTarget = target;
this._clear();
var queries = this._selector.split(',');
queries = queries.map(function (selector) {
return selector + '[data-target="' + target + '"],' + (selector + '[href="' + target + '"]');
});
var $link = $(queries.join(','));
if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {
$link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
$link.addClass(ClassName.ACTIVE);
} else {
// todo (fat) this is kinda sus...
// recursively add actives to tested nav-links
$link.parents(Selector.LI).find('> ' + Selector.NAV_LINKS).addClass(ClassName.ACTIVE);
}
$(this._scrollElement).trigger(Event.ACTIVATE, {
relatedTarget: target
});
};
ScrollSpy.prototype._clear = function _clear() {
$(this._selector).filter(Selector.ACTIVE).removeClass(ClassName.ACTIVE);
};
// static
ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
var _config = (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' && config;
if (!data) {
data = new ScrollSpy(this, _config);
$(this).data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config]();
}
});
};
_createClass(ScrollSpy, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}, {
key: 'Default',
get: function get() {
return Default;
}
}]);
return ScrollSpy;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(window).on(Event.LOAD_DATA_API, function () {
var scrollSpys = $.makeArray($(Selector.DATA_SPY));
for (var i = scrollSpys.length; i--;) {
var $spy = $(scrollSpys[i]);
ScrollSpy._jQueryInterface.call($spy, $spy.data());
}
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = ScrollSpy._jQueryInterface;
$.fn[NAME].Constructor = ScrollSpy;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return ScrollSpy._jQueryInterface;
};
return ScrollSpy;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): tab.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Tab = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'tab';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.tab';
var EVENT_KEY = '.' + DATA_KEY;
var DATA_API_KEY = '.data-api';
var JQUERY_NO_CONFLICT = $.fn[NAME];
var TRANSITION_DURATION = 150;
var Event = {
HIDE: 'hide' + EVENT_KEY,
HIDDEN: 'hidden' + EVENT_KEY,
SHOW: 'show' + EVENT_KEY,
SHOWN: 'shown' + EVENT_KEY,
CLICK_DATA_API: 'click' + EVENT_KEY + DATA_API_KEY
};
var ClassName = {
DROPDOWN_MENU: 'dropdown-menu',
ACTIVE: 'active',
DISABLED: 'disabled',
FADE: 'fade',
SHOW: 'show'
};
var Selector = {
A: 'a',
LI: 'li',
DROPDOWN: '.dropdown',
LIST: 'ul:not(.dropdown-menu), ol:not(.dropdown-menu), nav:not(.dropdown-menu)',
FADE_CHILD: '> .nav-item .fade, > .fade',
ACTIVE: '.active',
ACTIVE_CHILD: '> .nav-item > .active, > .active',
DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"]',
DROPDOWN_TOGGLE: '.dropdown-toggle',
DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Tab = function () {
function Tab(element) {
_classCallCheck(this, Tab);
this._element = element;
}
// getters
// public
Tab.prototype.show = function show() {
var _this20 = this;
if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
return;
}
var target = void 0;
var previous = void 0;
var listElement = $(this._element).closest(Selector.LIST)[0];
var selector = Util.getSelectorFromElement(this._element);
if (listElement) {
previous = $.makeArray($(listElement).find(Selector.ACTIVE));
previous = previous[previous.length - 1];
}
var hideEvent = $.Event(Event.HIDE, {
relatedTarget: this._element
});
var showEvent = $.Event(Event.SHOW, {
relatedTarget: previous
});
if (previous) {
$(previous).trigger(hideEvent);
}
$(this._element).trigger(showEvent);
if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
return;
}
if (selector) {
target = $(selector)[0];
}
this._activate(this._element, listElement);
var complete = function complete() {
var hiddenEvent = $.Event(Event.HIDDEN, {
relatedTarget: _this20._element
});
var shownEvent = $.Event(Event.SHOWN, {
relatedTarget: previous
});
$(previous).trigger(hiddenEvent);
$(_this20._element).trigger(shownEvent);
};
if (target) {
this._activate(target, target.parentNode, complete);
} else {
complete();
}
};
Tab.prototype.dispose = function dispose() {
$.removeClass(this._element, DATA_KEY);
this._element = null;
};
// private
Tab.prototype._activate = function _activate(element, container, callback) {
var _this21 = this;
var active = $(container).find(Selector.ACTIVE_CHILD)[0];
var isTransitioning = callback && Util.supportsTransitionEnd() && (active && $(active).hasClass(ClassName.FADE) || Boolean($(container).find(Selector.FADE_CHILD)[0]));
var complete = function complete() {
return _this21._transitionComplete(element, active, isTransitioning, callback);
};
if (active && isTransitioning) {
$(active).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
} else {
complete();
}
if (active) {
$(active).removeClass(ClassName.SHOW);
}
};
Tab.prototype._transitionComplete = function _transitionComplete(element, active, isTransitioning, callback) {
if (active) {
$(active).removeClass(ClassName.ACTIVE);
var dropdownChild = $(active.parentNode).find(Selector.DROPDOWN_ACTIVE_CHILD)[0];
if (dropdownChild) {
$(dropdownChild).removeClass(ClassName.ACTIVE);
}
active.setAttribute('aria-expanded', false);
}
$(element).addClass(ClassName.ACTIVE);
element.setAttribute('aria-expanded', true);
if (isTransitioning) {
Util.reflow(element);
$(element).addClass(ClassName.SHOW);
} else {
$(element).removeClass(ClassName.FADE);
}
if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {
var dropdownElement = $(element).closest(Selector.DROPDOWN)[0];
if (dropdownElement) {
$(dropdownElement).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
}
element.setAttribute('aria-expanded', true);
}
if (callback) {
callback();
}
};
// static
Tab._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var $this = $(this);
var data = $this.data(DATA_KEY);
if (!data) {
data = new Tab(this);
$this.data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config]();
}
});
};
_createClass(Tab, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}]);
return Tab;
}();
/**
* ------------------------------------------------------------------------
* Data Api implementation
* ------------------------------------------------------------------------
*/
$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
event.preventDefault();
Tab._jQueryInterface.call($(this), 'show');
});
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Tab._jQueryInterface;
$.fn[NAME].Constructor = Tab;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Tab._jQueryInterface;
};
return Tab;
}(jQuery);
/* global Tether */
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): tooltip.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Tooltip = function ($) {
/**
* Check for Tether dependency
* Tether - http://tether.io/
*/
if (typeof Tether === 'undefined') {
throw new Error('Bootstrap tooltips require Tether (http://tether.io/)');
}
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'tooltip';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.tooltip';
var EVENT_KEY = '.' + DATA_KEY;
var JQUERY_NO_CONFLICT = $.fn[NAME];
var TRANSITION_DURATION = 150;
var CLASS_PREFIX = 'bs-tether';
var Default = {
animation: true,
template: '',
trigger: 'hover focus',
title: '',
delay: 0,
html: false,
selector: false,
placement: 'top',
offset: '0 0',
constraints: [],
container: false
};
var DefaultType = {
animation: 'boolean',
template: 'string',
title: '(string|element|function)',
trigger: 'string',
delay: '(number|object)',
html: 'boolean',
selector: '(string|boolean)',
placement: '(string|function)',
offset: 'string',
constraints: 'array',
container: '(string|element|boolean)'
};
var AttachmentMap = {
TOP: 'bottom center',
RIGHT: 'middle left',
BOTTOM: 'top center',
LEFT: 'middle right'
};
var HoverState = {
SHOW: 'show',
OUT: 'out'
};
var Event = {
HIDE: 'hide' + EVENT_KEY,
HIDDEN: 'hidden' + EVENT_KEY,
SHOW: 'show' + EVENT_KEY,
SHOWN: 'shown' + EVENT_KEY,
INSERTED: 'inserted' + EVENT_KEY,
CLICK: 'click' + EVENT_KEY,
FOCUSIN: 'focusin' + EVENT_KEY,
FOCUSOUT: 'focusout' + EVENT_KEY,
MOUSEENTER: 'mouseenter' + EVENT_KEY,
MOUSELEAVE: 'mouseleave' + EVENT_KEY
};
var ClassName = {
FADE: 'fade',
SHOW: 'show'
};
var Selector = {
TOOLTIP: '.tooltip',
TOOLTIP_INNER: '.tooltip-inner'
};
var TetherClass = {
element: false,
enabled: false
};
var Trigger = {
HOVER: 'hover',
FOCUS: 'focus',
CLICK: 'click',
MANUAL: 'manual'
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Tooltip = function () {
function Tooltip(element, config) {
_classCallCheck(this, Tooltip);
// private
this._isEnabled = true;
this._timeout = 0;
this._hoverState = '';
this._activeTrigger = {};
this._isTransitioning = false;
this._tether = null;
// protected
this.element = element;
this.config = this._getConfig(config);
this.tip = null;
this._setListeners();
}
// getters
// public
Tooltip.prototype.enable = function enable() {
this._isEnabled = true;
};
Tooltip.prototype.disable = function disable() {
this._isEnabled = false;
};
Tooltip.prototype.toggleEnabled = function toggleEnabled() {
this._isEnabled = !this._isEnabled;
};
Tooltip.prototype.toggle = function toggle(event) {
if (event) {
var dataKey = this.constructor.DATA_KEY;
var context = $(event.currentTarget).data(dataKey);
if (!context) {
context = new this.constructor(event.currentTarget, this._getDelegateConfig());
$(event.currentTarget).data(dataKey, context);
}
context._activeTrigger.click = !context._activeTrigger.click;
if (context._isWithActiveTrigger()) {
context._enter(null, context);
} else {
context._leave(null, context);
}
} else {
if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {
this._leave(null, this);
return;
}
this._enter(null, this);
}
};
Tooltip.prototype.dispose = function dispose() {
clearTimeout(this._timeout);
this.cleanupTether();
$.removeData(this.element, this.constructor.DATA_KEY);
$(this.element).off(this.constructor.EVENT_KEY);
$(this.element).closest('.modal').off('hide.bs.modal');
if (this.tip) {
$(this.tip).remove();
}
this._isEnabled = null;
this._timeout = null;
this._hoverState = null;
this._activeTrigger = null;
this._tether = null;
this.element = null;
this.config = null;
this.tip = null;
};
Tooltip.prototype.show = function show() {
var _this22 = this;
if ($(this.element).css('display') === 'none') {
throw new Error('Please use show on visible elements');
}
var showEvent = $.Event(this.constructor.Event.SHOW);
if (this.isWithContent() && this._isEnabled) {
if (this._isTransitioning) {
throw new Error('Tooltip is transitioning');
}
$(this.element).trigger(showEvent);
var isInTheDom = $.contains(this.element.ownerDocument.documentElement, this.element);
if (showEvent.isDefaultPrevented() || !isInTheDom) {
return;
}
var tip = this.getTipElement();
var tipId = Util.getUID(this.constructor.NAME);
tip.setAttribute('id', tipId);
this.element.setAttribute('aria-describedby', tipId);
this.setContent();
if (this.config.animation) {
$(tip).addClass(ClassName.FADE);
}
var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
var attachment = this._getAttachment(placement);
var container = this.config.container === false ? document.body : $(this.config.container);
$(tip).data(this.constructor.DATA_KEY, this).appendTo(container);
$(this.element).trigger(this.constructor.Event.INSERTED);
this._tether = new Tether({
attachment: attachment,
element: tip,
target: this.element,
classes: TetherClass,
classPrefix: CLASS_PREFIX,
offset: this.config.offset,
constraints: this.config.constraints,
addTargetClasses: false
});
Util.reflow(tip);
this._tether.position();
$(tip).addClass(ClassName.SHOW);
var complete = function complete() {
var prevHoverState = _this22._hoverState;
_this22._hoverState = null;
_this22._isTransitioning = false;
$(_this22.element).trigger(_this22.constructor.Event.SHOWN);
if (prevHoverState === HoverState.OUT) {
_this22._leave(null, _this22);
}
};
if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
this._isTransitioning = true;
$(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
return;
}
complete();
}
};
Tooltip.prototype.hide = function hide(callback) {
var _this23 = this;
var tip = this.getTipElement();
var hideEvent = $.Event(this.constructor.Event.HIDE);
if (this._isTransitioning) {
throw new Error('Tooltip is transitioning');
}
var complete = function complete() {
if (_this23._hoverState !== HoverState.SHOW && tip.parentNode) {
tip.parentNode.removeChild(tip);
}
_this23.element.removeAttribute('aria-describedby');
$(_this23.element).trigger(_this23.constructor.Event.HIDDEN);
_this23._isTransitioning = false;
_this23.cleanupTether();
if (callback) {
callback();
}
};
$(this.element).trigger(hideEvent);
if (hideEvent.isDefaultPrevented()) {
return;
}
$(tip).removeClass(ClassName.SHOW);
this._activeTrigger[Trigger.CLICK] = false;
this._activeTrigger[Trigger.FOCUS] = false;
this._activeTrigger[Trigger.HOVER] = false;
if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
this._isTransitioning = true;
$(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
} else {
complete();
}
this._hoverState = '';
};
// protected
Tooltip.prototype.isWithContent = function isWithContent() {
return Boolean(this.getTitle());
};
Tooltip.prototype.getTipElement = function getTipElement() {
return this.tip = this.tip || $(this.config.template)[0];
};
Tooltip.prototype.setContent = function setContent() {
var $tip = $(this.getTipElement());
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
this.cleanupTether();
};
Tooltip.prototype.setElementContent = function setElementContent($element, content) {
var html = this.config.html;
if ((typeof content === 'undefined' ? 'undefined' : _typeof(content)) === 'object' && (content.nodeType || content.jquery)) {
// content is a DOM node or a jQuery
if (html) {
if (!$(content).parent().is($element)) {
$element.empty().append(content);
}
} else {
$element.text($(content).text());
}
} else {
$element[html ? 'html' : 'text'](content);
}
};
Tooltip.prototype.getTitle = function getTitle() {
var title = this.element.getAttribute('data-original-title');
if (!title) {
title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title;
}
return title;
};
Tooltip.prototype.cleanupTether = function cleanupTether() {
if (this._tether) {
this._tether.destroy();
}
};
// private
Tooltip.prototype._getAttachment = function _getAttachment(placement) {
return AttachmentMap[placement.toUpperCase()];
};
Tooltip.prototype._setListeners = function _setListeners() {
var _this24 = this;
var triggers = this.config.trigger.split(' ');
triggers.forEach(function (trigger) {
if (trigger === 'click') {
$(_this24.element).on(_this24.constructor.Event.CLICK, _this24.config.selector, function (event) {
return _this24.toggle(event);
});
} else if (trigger !== Trigger.MANUAL) {
var eventIn = trigger === Trigger.HOVER ? _this24.constructor.Event.MOUSEENTER : _this24.constructor.Event.FOCUSIN;
var eventOut = trigger === Trigger.HOVER ? _this24.constructor.Event.MOUSELEAVE : _this24.constructor.Event.FOCUSOUT;
$(_this24.element).on(eventIn, _this24.config.selector, function (event) {
return _this24._enter(event);
}).on(eventOut, _this24.config.selector, function (event) {
return _this24._leave(event);
});
}
$(_this24.element).closest('.modal').on('hide.bs.modal', function () {
return _this24.hide();
});
});
if (this.config.selector) {
this.config = $.extend({}, this.config, {
trigger: 'manual',
selector: ''
});
} else {
this._fixTitle();
}
};
Tooltip.prototype._fixTitle = function _fixTitle() {
var titleType = _typeof(this.element.getAttribute('data-original-title'));
if (this.element.getAttribute('title') || titleType !== 'string') {
this.element.setAttribute('data-original-title', this.element.getAttribute('title') || '');
this.element.setAttribute('title', '');
}
};
Tooltip.prototype._enter = function _enter(event, context) {
var dataKey = this.constructor.DATA_KEY;
context = context || $(event.currentTarget).data(dataKey);
if (!context) {
context = new this.constructor(event.currentTarget, this._getDelegateConfig());
$(event.currentTarget).data(dataKey, context);
}
if (event) {
context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true;
}
if ($(context.getTipElement()).hasClass(ClassName.SHOW) || context._hoverState === HoverState.SHOW) {
context._hoverState = HoverState.SHOW;
return;
}
clearTimeout(context._timeout);
context._hoverState = HoverState.SHOW;
if (!context.config.delay || !context.config.delay.show) {
context.show();
return;
}
context._timeout = setTimeout(function () {
if (context._hoverState === HoverState.SHOW) {
context.show();
}
}, context.config.delay.show);
};
Tooltip.prototype._leave = function _leave(event, context) {
var dataKey = this.constructor.DATA_KEY;
context = context || $(event.currentTarget).data(dataKey);
if (!context) {
context = new this.constructor(event.currentTarget, this._getDelegateConfig());
$(event.currentTarget).data(dataKey, context);
}
if (event) {
context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false;
}
if (context._isWithActiveTrigger()) {
return;
}
clearTimeout(context._timeout);
context._hoverState = HoverState.OUT;
if (!context.config.delay || !context.config.delay.hide) {
context.hide();
return;
}
context._timeout = setTimeout(function () {
if (context._hoverState === HoverState.OUT) {
context.hide();
}
}, context.config.delay.hide);
};
Tooltip.prototype._isWithActiveTrigger = function _isWithActiveTrigger() {
for (var trigger in this._activeTrigger) {
if (this._activeTrigger[trigger]) {
return true;
}
}
return false;
};
Tooltip.prototype._getConfig = function _getConfig(config) {
config = $.extend({}, this.constructor.Default, $(this.element).data(), config);
if (config.delay && typeof config.delay === 'number') {
config.delay = {
show: config.delay,
hide: config.delay
};
}
Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
return config;
};
Tooltip.prototype._getDelegateConfig = function _getDelegateConfig() {
var config = {};
if (this.config) {
for (var key in this.config) {
if (this.constructor.Default[key] !== this.config[key]) {
config[key] = this.config[key];
}
}
}
return config;
};
// static
Tooltip._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
var _config = (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' && config;
if (!data && /dispose|hide/.test(config)) {
return;
}
if (!data) {
data = new Tooltip(this, _config);
$(this).data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config]();
}
});
};
_createClass(Tooltip, null, [{
key: 'VERSION',
get: function get() {
return VERSION;
}
}, {
key: 'Default',
get: function get() {
return Default;
}
}, {
key: 'NAME',
get: function get() {
return NAME;
}
}, {
key: 'DATA_KEY',
get: function get() {
return DATA_KEY;
}
}, {
key: 'Event',
get: function get() {
return Event;
}
}, {
key: 'EVENT_KEY',
get: function get() {
return EVENT_KEY;
}
}, {
key: 'DefaultType',
get: function get() {
return DefaultType;
}
}]);
return Tooltip;
}();
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Tooltip._jQueryInterface;
$.fn[NAME].Constructor = Tooltip;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Tooltip._jQueryInterface;
};
return Tooltip;
}(jQuery);
/**
* --------------------------------------------------------------------------
* Bootstrap (v4.0.0-alpha.6): popover.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* --------------------------------------------------------------------------
*/
var Popover = function ($) {
/**
* ------------------------------------------------------------------------
* Constants
* ------------------------------------------------------------------------
*/
var NAME = 'popover';
var VERSION = '4.0.0-alpha.6';
var DATA_KEY = 'bs.popover';
var EVENT_KEY = '.' + DATA_KEY;
var JQUERY_NO_CONFLICT = $.fn[NAME];
var Default = $.extend({}, Tooltip.Default, {
placement: 'right',
trigger: 'click',
content: '',
template: ''
});
var DefaultType = $.extend({}, Tooltip.DefaultType, {
content: '(string|element|function)'
});
var ClassName = {
FADE: 'fade',
SHOW: 'show'
};
var Selector = {
TITLE: '.popover-title',
CONTENT: '.popover-content'
};
var Event = {
HIDE: 'hide' + EVENT_KEY,
HIDDEN: 'hidden' + EVENT_KEY,
SHOW: 'show' + EVENT_KEY,
SHOWN: 'shown' + EVENT_KEY,
INSERTED: 'inserted' + EVENT_KEY,
CLICK: 'click' + EVENT_KEY,
FOCUSIN: 'focusin' + EVENT_KEY,
FOCUSOUT: 'focusout' + EVENT_KEY,
MOUSEENTER: 'mouseenter' + EVENT_KEY,
MOUSELEAVE: 'mouseleave' + EVENT_KEY
};
/**
* ------------------------------------------------------------------------
* Class Definition
* ------------------------------------------------------------------------
*/
var Popover = function (_Tooltip) {
_inherits(Popover, _Tooltip);
function Popover() {
_classCallCheck(this, Popover);
return _possibleConstructorReturn(this, _Tooltip.apply(this, arguments));
}
// overrides
Popover.prototype.isWithContent = function isWithContent() {
return this.getTitle() || this._getContent();
};
Popover.prototype.getTipElement = function getTipElement() {
return this.tip = this.tip || $(this.config.template)[0];
};
Popover.prototype.setContent = function setContent() {
var $tip = $(this.getTipElement());
// we use append for html objects to maintain js events
this.setElementContent($tip.find(Selector.TITLE), this.getTitle());
this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
this.cleanupTether();
};
// private
Popover.prototype._getContent = function _getContent() {
return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
};
// static
Popover._jQueryInterface = function _jQueryInterface(config) {
return this.each(function () {
var data = $(this).data(DATA_KEY);
var _config = (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' ? config : null;
if (!data && /destroy|hide/.test(config)) {
return;
}
if (!data) {
data = new Popover(this, _config);
$(this).data(DATA_KEY, data);
}
if (typeof config === 'string') {
if (data[config] === undefined) {
throw new Error('No method named "' + config + '"');
}
data[config]();
}
});
};
_createClass(Popover, null, [{
key: 'VERSION',
// getters
get: function get() {
return VERSION;
}
}, {
key: 'Default',
get: function get() {
return Default;
}
}, {
key: 'NAME',
get: function get() {
return NAME;
}
}, {
key: 'DATA_KEY',
get: function get() {
return DATA_KEY;
}
}, {
key: 'Event',
get: function get() {
return Event;
}
}, {
key: 'EVENT_KEY',
get: function get() {
return EVENT_KEY;
}
}, {
key: 'DefaultType',
get: function get() {
return DefaultType;
}
}]);
return Popover;
}(Tooltip);
/**
* ------------------------------------------------------------------------
* jQuery
* ------------------------------------------------------------------------
*/
$.fn[NAME] = Popover._jQueryInterface;
$.fn[NAME].Constructor = Popover;
$.fn[NAME].noConflict = function () {
$.fn[NAME] = JQUERY_NO_CONFLICT;
return Popover._jQueryInterface;
};
return Popover;
}(jQuery);
}();
================================================
FILE: docs/static/lib/prettify/lang-apollo.js
================================================
/**
* @license
* Copyright (C) 2009 Onno Hommes.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview
* Registers a language handler for the AGC/AEA Assembly Language as described
* at http://virtualagc.googlecode.com
*
* This file could be used by goodle code to allow syntax highlight for
* Virtual AGC SVN repository or if you don't want to commonize
* the header for the agc/aea html assembly listing.
*
* @author ohommes@alumni.cmu.edu
*/
PR['registerLangHandler'](
PR['createSimpleLexer'](
[
// A line comment that starts with ;
[PR['PR_COMMENT'], /^#[^\r\n]*/, null, '#'],
// Whitespace
[PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'],
// A double quoted, possibly multi-line, string.
[PR['PR_STRING'], /^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/, null, '"']
],
[
[PR['PR_KEYWORD'], /^(?:ADS|AD|AUG|BZF|BZMF|CAE|CAF|CA|CCS|COM|CS|DAS|DCA|DCOM|DCS|DDOUBL|DIM|DOUBLE|DTCB|DTCF|DV|DXCH|EDRUPT|EXTEND|INCR|INDEX|NDX|INHINT|LXCH|MASK|MSK|MP|MSU|NOOP|OVSK|QXCH|RAND|READ|RELINT|RESUME|RETURN|ROR|RXOR|SQUARE|SU|TCR|TCAA|OVSK|TCF|TC|TS|WAND|WOR|WRITE|XCH|XLQ|XXALQ|ZL|ZQ|ADD|ADZ|SUB|SUZ|MPY|MPR|MPZ|DVP|COM|ABS|CLA|CLZ|LDQ|STO|STQ|ALS|LLS|LRS|TRA|TSQ|TMI|TOV|AXT|TIX|DLY|INP|OUT)\s/,null],
[PR['PR_TYPE'], /^(?:-?GENADR|=MINUS|2BCADR|VN|BOF|MM|-?2CADR|-?[1-6]DNADR|ADRES|BBCON|[SE]?BANK\=?|BLOCK|BNKSUM|E?CADR|COUNT\*?|2?DEC\*?|-?DNCHAN|-?DNPTR|EQUALS|ERASE|MEMORY|2?OCT|REMADR|SETLOC|SUBRO|ORG|BSS|BES|SYN|EQU|DEFINE|END)\s/,null],
// A single quote possibly followed by a word that optionally ends with
// = ! or ?.
[PR['PR_LITERAL'],
/^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/],
// Any word including labels that optionally ends with = ! or ?.
[PR['PR_PLAIN'],
/^-*(?:[!-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i],
// A printable non-space non-special character
[PR['PR_PUNCTUATION'], /^[^\w\t\n\r \xA0()\"\\\';]+/]
]),
['apollo', 'agc', 'aea']);
================================================
FILE: docs/static/lib/prettify/lang-basic.js
================================================
/**
* @license
* Copyright (C) 2013 Peter Kofler
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Contributed by peter dot kofler at code minus cop dot org
/**
* @fileoverview
* Registers a language handler for Basic.
*
* To use, include prettify.js and this file in your HTML page.
* Then put your code in an HTML tag like
*
(my BASIC code)
*
* @author peter dot kofler at code minus cop dot org
*/
PR.registerLangHandler(
PR.createSimpleLexer(
[ // shortcutStylePatterns
// "single-line-string"
[PR.PR_STRING, /^(?:"(?:[^\\"\r\n]|\\.)*(?:"|$))/, null, '"'],
// Whitespace
[PR.PR_PLAIN, /^\s+/, null, ' \r\n\t\xA0']
],
[ // fallthroughStylePatterns
// A line comment that starts with REM
[PR.PR_COMMENT, /^REM[^\r\n]*/, null],
[PR.PR_KEYWORD, /^\b(?:AND|CLOSE|CLR|CMD|CONT|DATA|DEF ?FN|DIM|END|FOR|GET|GOSUB|GOTO|IF|INPUT|LET|LIST|LOAD|NEW|NEXT|NOT|ON|OPEN|OR|POKE|PRINT|READ|RESTORE|RETURN|RUN|SAVE|STEP|STOP|SYS|THEN|TO|VERIFY|WAIT)\b/, null],
[PR.PR_PLAIN, /^[A-Z][A-Z0-9]?(?:\$|%)?/i, null],
// Literals .0, 0, 0.0 0E13
[PR.PR_LITERAL, /^(?:\d+(?:\.\d*)?|\.\d+)(?:e[+\-]?\d+)?/i, null, '0123456789'],
[PR.PR_PUNCTUATION, /^.[^\s\w\.$%"]*/, null]
// [PR.PR_PUNCTUATION, /^[-,:;!<>=\+^\/\*]+/]
]),
['basic','cbm']);
================================================
FILE: docs/static/lib/prettify/lang-clj.js
================================================
/**
* @license Copyright (C) 2011 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview
* Registers a language handler for Clojure.
*
*
* To use, include prettify.js and this file in your HTML page.
* Then put your code in an HTML tag like
* (my lisp code)
* The lang-cl class identifies the language as common lisp.
* This file supports the following language extensions:
* lang-clj - Clojure
*
*
* I used lang-lisp.js as the basis for this adding the clojure specific
* keywords and syntax.
*
* "Name" = 'Clojure'
* "Author" = 'Rich Hickey'
* "Version" = '1.2'
* "About" = 'Clojure is a lisp for the jvm with concurrency primitives and a richer set of types.'
*
*
* I used Clojure.org Reference as
* the basis for the reserved word list.
*
*
* @author jwall@google.com
*/
PR['registerLangHandler'](
PR['createSimpleLexer'](
[
// clojure has more paren types than minimal lisp.
['opn', /^[\(\{\[]+/, null, '([{'],
['clo', /^[\)\}\]]+/, null, ')]}'],
// A line comment that starts with ;
[PR['PR_COMMENT'], /^;[^\r\n]*/, null, ';'],
// Whitespace
[PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'],
// A double quoted, possibly multi-line, string.
[PR['PR_STRING'], /^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/, null, '"']
],
[
// clojure has a much larger set of keywords
[PR['PR_KEYWORD'], /^(?:def|if|do|let|quote|var|fn|loop|recur|throw|try|monitor-enter|monitor-exit|defmacro|defn|defn-|macroexpand|macroexpand-1|for|doseq|dosync|dotimes|and|or|when|not|assert|doto|proxy|defstruct|first|rest|cons|defprotocol|deftype|defrecord|reify|defmulti|defmethod|meta|with-meta|ns|in-ns|create-ns|import|intern|refer|alias|namespace|resolve|ref|deref|refset|new|set!|memfn|to-array|into-array|aset|gen-class|reduce|map|filter|find|nil?|empty?|hash-map|hash-set|vec|vector|seq|flatten|reverse|assoc|dissoc|list|list?|disj|get|union|difference|intersection|extend|extend-type|extend-protocol|prn)\b/, null],
[PR['PR_TYPE'], /^:[0-9a-zA-Z\-]+/]
]),
['clj']);
================================================
FILE: docs/static/lib/prettify/lang-css.js
================================================
/**
* @license
* Copyright (C) 2009 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview
* Registers a language handler for CSS.
*
*
* To use, include prettify.js and this file in your HTML page.
* Then put your code in an HTML tag like
*
*
*
* http://www.w3.org/TR/CSS21/grammar.html Section G2 defines the lexical
* grammar. This scheme does not recognize keywords containing escapes.
*
* @author mikesamuel@gmail.com
*/
// This file is a call to a function defined in prettify.js which defines a
// lexical scanner for CSS and maps tokens to styles.
// The call to PR['registerLangHandler'] is quoted so that Closure Compiler
// will not rename the call so that this language extensions can be
// compiled/minified separately from one another. Other symbols defined in
// prettify.js are similarly quoted.
// The call is structured thus:
// PR['registerLangHandler'](
// PR['createSimpleLexer'](
// shortcutPatterns,
// fallThroughPatterns),
// [languageId0, ..., languageIdN])
// Langugage IDs
// =============
// The language IDs are typically the file extensions of source files for
// that language so that users can syntax highlight arbitrary files based
// on just the extension. This is heuristic, but works pretty well in
// practice.
// Patterns
// ========
// Lexers are typically implemented as a set of regular expressions.
// The SimpleLexer function takes regular expressions, styles, and some
// pragma-info and produces a lexer. A token description looks like
// [STYLE_NAME, /regular-expression/, pragmas]
// Initially, simple lexer's inner loop looked like:
// while sourceCode is not empty:
// try each regular expression in order until one matches
// remove the matched portion from sourceCode
// This was really slow for large files because some JS interpreters
// do a buffer copy on the matched portion which is O(n*n)
// The current loop now looks like
// 1. use js-modules/combinePrefixPatterns.js to
// combine all regular expressions into one
// 2. use a single global regular expresion match to extract all tokens
// 3. for each token try regular expressions in order until one matches it
// and classify it using the associated style
// This is a lot more efficient but it does mean that lookahead and lookbehind
// can't be used across boundaries to classify tokens.
// Sometimes we need lookahead and lookbehind and sometimes we want to handle
// embedded language -- JavaScript or CSS embedded in HTML, or inline assembly
// in C.
// If a particular pattern has a numbered group, and its style pattern starts
// with "lang-" as in
// ['lang-js', /}
* define style rules. See the example page for examples.
* mark the {@code } and {@code } tags in your source with
* {@code class=prettyprint.}
* You can also use the (html deprecated) {@code } tag, but the pretty
* printer needs to do more substantial DOM manipulations to support that, so
* some css styles may not be preserved.
*
* That's it. I wanted to keep the API as simple as possible, so there's no
* need to specify which language the code is in, but if you wish, you can add
* another class to the {@code } or {@code } element to specify the
* language, as in {@code }. Any class that
* starts with "lang-" followed by a file extension, specifies the file type.
* See the "lang-*.js" files in this directory for code that implements
* per-language file handlers.
*
* Change log:
* cbeust, 2006/08/22
*
* Java annotations (start with "@") are now captured as literals ("lit")
*
* @requires console
*/
// JSLint declarations
/*global console, document, navigator, setTimeout, window, define */
/**
* {@type !{
* 'createSimpleLexer': function (Array, Array): (function (JobT)),
* 'registerLangHandler': function (function (JobT), Array.),
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_VALUE': string,
* 'PR_COMMENT': string,
* 'PR_DECLARATION': string,
* 'PR_KEYWORD': string,
* 'PR_LITERAL': string,
* 'PR_NOCODE': string,
* 'PR_PLAIN': string,
* 'PR_PUNCTUATION': string,
* 'PR_SOURCE': string,
* 'PR_STRING': string,
* 'PR_TAG': string,
* 'PR_TYPE': string,
* 'prettyPrintOne': function (string, string, number|boolean),
* 'prettyPrint': function (?function, ?(HTMLElement|HTMLDocument))
* }}
* @const
*/
var PR;
/**
* Split {@code prettyPrint} into multiple timeouts so as not to interfere with
* UI events.
* If set to {@code false}, {@code prettyPrint()} is synchronous.
*/
var PR_SHOULD_USE_CONTINUATION = true
if (typeof window !== 'undefined') {
window['PR_SHOULD_USE_CONTINUATION'] = PR_SHOULD_USE_CONTINUATION;
}
/**
* Pretty print a chunk of code.
* @param {string} sourceCodeHtml The HTML to pretty print.
* @param {string} opt_langExtension The language name to use.
* Typically, a filename extension like 'cpp' or 'java'.
* @param {number|boolean} opt_numberLines True to number lines,
* or the 1-indexed number of the first line in sourceCodeHtml.
* @return {string} code as html, but prettier
*/
var prettyPrintOne;
/**
* Find all the {@code } and {@code } tags in the DOM with
* {@code class=prettyprint} and prettify them.
*
* @param {Function} opt_whenDone called when prettifying is done.
* @param {HTMLElement|HTMLDocument} opt_root an element or document
* containing all the elements to pretty print.
* Defaults to {@code document.body}.
*/
var prettyPrint;
(function () {
var win = (typeof window !== 'undefined') ? window : {};
// Keyword lists for various languages.
// We use things that coerce to strings to make them compact when minified
// and to defeat aggressive optimizers that fold large string constants.
var FLOW_CONTROL_KEYWORDS = ["break,continue,do,else,for,if,return,while"];
var C_KEYWORDS = [FLOW_CONTROL_KEYWORDS,"auto,case,char,const,default," +
"double,enum,extern,float,goto,inline,int,long,register,restrict,short,signed," +
"sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];
var COMMON_KEYWORDS = [C_KEYWORDS,"catch,class,delete,false,import," +
"new,operator,private,protected,public,this,throw,true,try,typeof"];
var CPP_KEYWORDS = [COMMON_KEYWORDS,"alignas,alignof,align_union,asm,axiom,bool," +
"concept,concept_map,const_cast,constexpr,decltype,delegate," +
"dynamic_cast,explicit,export,friend,generic,late_check," +
"mutable,namespace,noexcept,noreturn,nullptr,property,reinterpret_cast,static_assert," +
"static_cast,template,typeid,typename,using,virtual,where"];
var JAVA_KEYWORDS = [COMMON_KEYWORDS,
"abstract,assert,boolean,byte,extends,finally,final,implements,import," +
"instanceof,interface,null,native,package,strictfp,super,synchronized," +
"throws,transient"];
var CSHARP_KEYWORDS = [COMMON_KEYWORDS,
"abstract,add,alias,as,ascending,async,await,base,bool,by,byte,checked,decimal,delegate,descending," +
"dynamic,event,finally,fixed,foreach,from,get,global,group,implicit,in,interface," +
"internal,into,is,join,let,lock,null,object,out,override,orderby,params," +
"partial,readonly,ref,remove,sbyte,sealed,select,set,stackalloc,string,select,uint,ulong," +
"unchecked,unsafe,ushort,value,var,virtual,where,yield"];
var COFFEE_KEYWORDS = "all,and,by,catch,class,else,extends,false,finally," +
"for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then," +
"throw,true,try,unless,until,when,while,yes";
var JSCRIPT_KEYWORDS = [COMMON_KEYWORDS,
"abstract,async,await,constructor,debugger,enum,eval,export,from,function," +
"get,import,implements,instanceof,interface,let,null,of,set,undefined," +
"var,with,yield,Infinity,NaN"];
var PERL_KEYWORDS = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for," +
"goto,if,import,last,local,my,next,no,our,print,package,redo,require," +
"sub,undef,unless,until,use,wantarray,while,BEGIN,END";
var PYTHON_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "and,as,assert,class,def,del," +
"elif,except,exec,finally,from,global,import,in,is,lambda," +
"nonlocal,not,or,pass,print,raise,try,with,yield," +
"False,True,None"];
var RUBY_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "alias,and,begin,case,class," +
"def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo," +
"rescue,retry,self,super,then,true,undef,unless,until,when,yield," +
"BEGIN,END"];
var SH_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "case,done,elif,esac,eval,fi," +
"function,in,local,set,then,until"];
var ALL_KEYWORDS = [
CPP_KEYWORDS, CSHARP_KEYWORDS, JAVA_KEYWORDS, JSCRIPT_KEYWORDS,
PERL_KEYWORDS, PYTHON_KEYWORDS, RUBY_KEYWORDS, SH_KEYWORDS];
var C_TYPES = /^(DIR|FILE|array|vector|(de|priority_)?queue|(forward_)?list|stack|(const_)?(reverse_)?iterator|(unordered_)?(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;
// token style names. correspond to css classes
/**
* token style for a string literal
* @const
*/
var PR_STRING = 'str';
/**
* token style for a keyword
* @const
*/
var PR_KEYWORD = 'kwd';
/**
* token style for a comment
* @const
*/
var PR_COMMENT = 'com';
/**
* token style for a type
* @const
*/
var PR_TYPE = 'typ';
/**
* token style for a literal value. e.g. 1, null, true.
* @const
*/
var PR_LITERAL = 'lit';
/**
* token style for a punctuation string.
* @const
*/
var PR_PUNCTUATION = 'pun';
/**
* token style for plain text.
* @const
*/
var PR_PLAIN = 'pln';
/**
* token style for an sgml tag.
* @const
*/
var PR_TAG = 'tag';
/**
* token style for a markup declaration such as a DOCTYPE.
* @const
*/
var PR_DECLARATION = 'dec';
/**
* token style for embedded source.
* @const
*/
var PR_SOURCE = 'src';
/**
* token style for an sgml attribute name.
* @const
*/
var PR_ATTRIB_NAME = 'atn';
/**
* token style for an sgml attribute value.
* @const
*/
var PR_ATTRIB_VALUE = 'atv';
/**
* A class that indicates a section of markup that is not code, e.g. to allow
* embedding of line numbers within code listings.
* @const
*/
var PR_NOCODE = 'nocode';
// Regex pattern below is automatically generated by regexpPrecederPatterns.pl
// Do not modify, your changes will be erased.
// CAVEAT: this does not properly handle the case where a regular
// expression immediately follows another since a regular expression may
// have flags for case-sensitivity and the like. Having regexp tokens
// adjacent is not valid in any language I'm aware of, so I'm punting.
// TODO: maybe style special characters inside a regexp as punctuation.
/**
* A set of tokens that can precede a regular expression literal in
* javascript
* http://web.archive.org/web/20070717142515/http://www.mozilla.org/js/language/js20/rationale/syntax.html
* has the full list, but I've removed ones that might be problematic when
* seen in languages that don't support regular expression literals.
*
* Specifically, I've removed any keywords that can't precede a regexp
* literal in a syntactically legal javascript program, and I've removed the
* "in" keyword since it's not a keyword in many languages, and might be used
* as a count of inches.
*
* The link above does not accurately describe EcmaScript rules since
* it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
* very well in practice.
*
* @private
* @const
*/
var REGEXP_PRECEDER_PATTERN = '(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
/**
* Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
* matches the union of the sets of strings matched by the input RegExp.
* Since it matches globally, if the input strings have a start-of-input
* anchor (/^.../), it is ignored for the purposes of unioning.
* @param {Array.} regexs non multiline, non-global regexs.
* @return {RegExp} a global regex.
*/
function combinePrefixPatterns(regexs) {
var capturedGroupIndex = 0;
var needToFoldCase = false;
var ignoreCase = false;
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.ignoreCase) {
ignoreCase = true;
} else if (/[a-z]/i.test(regex.source.replace(
/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
needToFoldCase = true;
ignoreCase = false;
break;
}
}
var escapeCharToCodeUnit = {
'b': 8,
't': 9,
'n': 0xa,
'v': 0xb,
'f': 0xc,
'r': 0xd
};
function decodeEscape(charsetPart) {
var cc0 = charsetPart.charCodeAt(0);
if (cc0 !== 92 /* \\ */) {
return cc0;
}
var c1 = charsetPart.charAt(1);
cc0 = escapeCharToCodeUnit[c1];
if (cc0) {
return cc0;
} else if ('0' <= c1 && c1 <= '7') {
return parseInt(charsetPart.substring(1), 8);
} else if (c1 === 'u' || c1 === 'x') {
return parseInt(charsetPart.substring(2), 16);
} else {
return charsetPart.charCodeAt(1);
}
}
function encodeEscape(charCode) {
if (charCode < 0x20) {
return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
}
var ch = String.fromCharCode(charCode);
return (ch === '\\' || ch === '-' || ch === ']' || ch === '^')
? "\\" + ch : ch;
}
function caseFoldCharset(charSet) {
var charsetParts = charSet.substring(1, charSet.length - 1).match(
new RegExp(
'\\\\u[0-9A-Fa-f]{4}'
+ '|\\\\x[0-9A-Fa-f]{2}'
+ '|\\\\[0-3][0-7]{0,2}'
+ '|\\\\[0-7]{1,2}'
+ '|\\\\[\\s\\S]'
+ '|-'
+ '|[^-\\\\]',
'g'));
var ranges = [];
var inverse = charsetParts[0] === '^';
var out = ['['];
if (inverse) { out.push('^'); }
for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
var p = charsetParts[i];
if (/\\[bdsw]/i.test(p)) { // Don't muck with named groups.
out.push(p);
} else {
var start = decodeEscape(p);
var end;
if (i + 2 < n && '-' === charsetParts[i + 1]) {
end = decodeEscape(charsetParts[i + 2]);
i += 2;
} else {
end = start;
}
ranges.push([start, end]);
// If the range might intersect letters, then expand it.
// This case handling is too simplistic.
// It does not deal with non-latin case folding.
// It works for latin source code identifiers though.
if (!(end < 65 || start > 122)) {
if (!(end < 65 || start > 90)) {
ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
}
if (!(end < 97 || start > 122)) {
ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
}
}
}
}
// [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
// -> [[1, 12], [14, 14], [16, 17]]
ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1] - a[1]); });
var consolidatedRanges = [];
var lastRange = [];
for (var i = 0; i < ranges.length; ++i) {
var range = ranges[i];
if (range[0] <= lastRange[1] + 1) {
lastRange[1] = Math.max(lastRange[1], range[1]);
} else {
consolidatedRanges.push(lastRange = range);
}
}
for (var i = 0; i < consolidatedRanges.length; ++i) {
var range = consolidatedRanges[i];
out.push(encodeEscape(range[0]));
if (range[1] > range[0]) {
if (range[1] + 1 > range[0]) { out.push('-'); }
out.push(encodeEscape(range[1]));
}
}
out.push(']');
return out.join('');
}
function allowAnywhereFoldCaseAndRenumberGroups(regex) {
// Split into character sets, escape sequences, punctuation strings
// like ('(', '(?:', ')', '^'), and runs of characters that do not
// include any of the above.
var parts = regex.source.match(
new RegExp(
'(?:'
+ '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]' // a character set
+ '|\\\\u[A-Fa-f0-9]{4}' // a unicode escape
+ '|\\\\x[A-Fa-f0-9]{2}' // a hex escape
+ '|\\\\[0-9]+' // a back-reference or octal escape
+ '|\\\\[^ux0-9]' // other escape sequence
+ '|\\(\\?[:!=]' // start of a non-capturing group
+ '|[\\(\\)\\^]' // start/end of a group, or line start
+ '|[^\\x5B\\x5C\\(\\)\\^]+' // run of other characters
+ ')',
'g'));
var n = parts.length;
// Maps captured group numbers to the number they will occupy in
// the output or to -1 if that has not been determined, or to
// undefined if they need not be capturing in the output.
var capturedGroups = [];
// Walk over and identify back references to build the capturedGroups
// mapping.
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
// groups are 1-indexed, so max group index is count of '('
++groupIndex;
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue) {
if (decimalValue <= groupIndex) {
capturedGroups[decimalValue] = -1;
} else {
// Replace with an unambiguous escape sequence so that
// an octal escape sequence does not turn into a backreference
// to a capturing group from an earlier regex.
parts[i] = encodeEscape(decimalValue);
}
}
}
}
// Renumber groups and reduce capturing groups to non-capturing groups
// where possible.
for (var i = 1; i < capturedGroups.length; ++i) {
if (-1 === capturedGroups[i]) {
capturedGroups[i] = ++capturedGroupIndex;
}
}
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
++groupIndex;
if (!capturedGroups[groupIndex]) {
parts[i] = '(?:';
}
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue && decimalValue <= groupIndex) {
parts[i] = '\\' + capturedGroups[decimalValue];
}
}
}
// Remove any prefix anchors so that the output will match anywhere.
// ^^ really does mean an anchored match though.
for (var i = 0; i < n; ++i) {
if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
}
// Expand letters to groups to handle mixing of case-sensitive and
// case-insensitive patterns if necessary.
if (regex.ignoreCase && needToFoldCase) {
for (var i = 0; i < n; ++i) {
var p = parts[i];
var ch0 = p.charAt(0);
if (p.length >= 2 && ch0 === '[') {
parts[i] = caseFoldCharset(p);
} else if (ch0 !== '\\') {
// TODO: handle letters in numeric escapes.
parts[i] = p.replace(
/[a-zA-Z]/g,
function (ch) {
var cc = ch.charCodeAt(0);
return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
});
}
}
}
return parts.join('');
}
var rewritten = [];
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.global || regex.multiline) { throw new Error('' + regex); }
rewritten.push(
'(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
}
return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
}
/**
* Split markup into a string of source code and an array mapping ranges in
* that string to the text nodes in which they appear.
*
*
* The HTML DOM structure:
*
* (Element "p"
* (Element "b"
* (Text "print ")) ; #1
* (Text "'Hello '") ; #2
* (Element "br") ; #3
* (Text " + 'World';")) ; #4
*
*
* corresponds to the HTML
* {@code
print 'Hello ' + 'World';
}.
*
*
* It will produce the output:
*
* {
* sourceCode: "print 'Hello '\n + 'World';",
* // 1 2
* // 012345678901234 5678901234567
* spans: [0, #1, 6, #2, 14, #3, 15, #4]
* }
*
*
* where #1 is a reference to the {@code "print "} text node above, and so
* on for the other text nodes.
*
*
*
* The {@code} spans array is an array of pairs. Even elements are the start
* indices of substrings, and odd elements are the text nodes (or BR elements)
* that contain the text for those substrings.
* Substrings continue until the next index or the end of the source.
*
*
* @param {Node} node an HTML DOM subtree containing source-code.
* @param {boolean|number} isPreformatted truthy if white-space in
* text nodes should be considered significant.
* @return {SourceSpansT} source code and the nodes in which they occur.
*/
function extractSourceSpans(node, isPreformatted) {
var nocode = /(?:^|\s)nocode(?:\s|$)/;
var chunks = [];
var length = 0;
var spans = [];
var k = 0;
function walk(node) {
var type = node.nodeType;
if (type == 1) { // Element
if (nocode.test(node.className)) { return; }
for (var child = node.firstChild; child; child = child.nextSibling) {
walk(child);
}
var nodeName = node.nodeName.toLowerCase();
if ('br' === nodeName || 'li' === nodeName) {
chunks[k] = '\n';
spans[k << 1] = length++;
spans[(k++ << 1) | 1] = node;
}
} else if (type == 3 || type == 4) { // Text
var text = node.nodeValue;
if (text.length) {
if (!isPreformatted) {
text = text.replace(/[ \t\r\n]+/g, ' ');
} else {
text = text.replace(/\r\n?/g, '\n'); // Normalize newlines.
}
// TODO: handle tabs here?
chunks[k] = text;
spans[k << 1] = length;
length += text.length;
spans[(k++ << 1) | 1] = node;
}
}
}
walk(node);
return {
sourceCode: chunks.join('').replace(/\n$/, ''),
spans: spans
};
}
/**
* Apply the given language handler to sourceCode and add the resulting
* decorations to out.
* @param {!Element} sourceNode
* @param {number} basePos the index of sourceCode within the chunk of source
* whose decorations are already present on out.
* @param {string} sourceCode
* @param {function(JobT)} langHandler
* @param {DecorationsT} out
*/
function appendDecorations(
sourceNode, basePos, sourceCode, langHandler, out) {
if (!sourceCode) { return; }
/** @type {JobT} */
var job = {
sourceNode: sourceNode,
pre: 1,
langExtension: null,
numberLines: null,
sourceCode: sourceCode,
spans: null,
basePos: basePos,
decorations: null
};
langHandler(job);
out.push.apply(out, job.decorations);
}
var notWs = /\S/;
/**
* Given an element, if it contains only one child element and any text nodes
* it contains contain only space characters, return the sole child element.
* Otherwise returns undefined.
*
* This is meant to return the CODE element in {@code
} when
* there is a single child element that contains all the non-space textual
* content, but not to return anything where there are multiple child elements
* as in {@code ...... } or when there
* is textual content.
*/
function childContentWrapper(element) {
var wrapper = undefined;
for (var c = element.firstChild; c; c = c.nextSibling) {
var type = c.nodeType;
wrapper = (type === 1) // Element Node
? (wrapper ? element : c)
: (type === 3) // Text Node
? (notWs.test(c.nodeValue) ? element : wrapper)
: wrapper;
}
return wrapper === element ? undefined : wrapper;
}
/** Given triples of [style, pattern, context] returns a lexing function,
* The lexing function interprets the patterns to find token boundaries and
* returns a decoration list of the form
* [index_0, style_0, index_1, style_1, ..., index_n, style_n]
* where index_n is an index into the sourceCode, and style_n is a style
* constant like PR_PLAIN. index_n-1 <= index_n, and style_n-1 applies to
* all characters in sourceCode[index_n-1:index_n].
*
* The stylePatterns is a list whose elements have the form
* [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
*
* Style is a style constant like PR_PLAIN, or can be a string of the
* form 'lang-FOO', where FOO is a language extension describing the
* language of the portion of the token in $1 after pattern executes.
* E.g., if style is 'lang-lisp', and group 1 contains the text
* '(hello (world))', then that portion of the token will be passed to the
* registered lisp handler for formatting.
* The text before and after group 1 will be restyled using this decorator
* so decorators should take care that this doesn't result in infinite
* recursion. For example, the HTML lexer rule for SCRIPT elements looks
* something like ['lang-js', /<[s]cript>(.+?)<\/script>/]. This may match
* '}
* define style rules. See the example page for examples.
* mark the {@code } and {@code } tags in your source with
* {@code class=prettyprint.}
* You can also use the (html deprecated) {@code } tag, but the pretty
* printer needs to do more substantial DOM manipulations to support that, so
* some css styles may not be preserved.
*
* That's it. I wanted to keep the API as simple as possible, so there's no
* need to specify which language the code is in, but if you wish, you can add
* another class to the {@code } or {@code } element to specify the
* language, as in {@code }. Any class that
* starts with "lang-" followed by a file extension, specifies the file type.
* See the "lang-*.js" files in this directory for code that implements
* per-language file handlers.
*
* Change log:
* cbeust, 2006/08/22
*
* Java annotations (start with "@") are now captured as literals ("lit")
*
* @requires console
*/
// JSLint declarations
/*global console, document, navigator, setTimeout, window, define */
/**
* @typedef {!Array.}
* Alternating indices and the decorations that should be inserted there.
* The indices are monotonically increasing.
*/
var DecorationsT;
/**
* @typedef {!{
* sourceNode: !Element,
* pre: !(number|boolean),
* langExtension: ?string,
* numberLines: ?(number|boolean),
* sourceCode: ?string,
* spans: ?(Array.),
* basePos: ?number,
* decorations: ?DecorationsT
* }}
*
* sourceNode the element containing the source
* sourceCode source as plain text
* pre truthy if white-space in text nodes
* should be considered significant.
* spans alternating span start indices into source
* and the text node or element (e.g. {@code }) corresponding to that
* span.
* decorations an array of style classes preceded
* by the position at which they start in job.sourceCode in order
* basePos integer position of this.sourceCode in the larger chunk of
* source.
*
*/
var JobT;
/**
* @typedef {!{
* sourceCode: string,
* spans: !(Array.)
* }}
*
* sourceCode source as plain text
* spans alternating span start indices into source
* and the text node or element (e.g. {@code }) corresponding to that
* span.
*
*/
var SourceSpansT;
/** @define {boolean} */
var IN_GLOBAL_SCOPE = true;
/**
* {@type !{
* 'createSimpleLexer': function (Array, Array): (function (JobT)),
* 'registerLangHandler': function (function (JobT), Array.),
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_VALUE': string,
* 'PR_COMMENT': string,
* 'PR_DECLARATION': string,
* 'PR_KEYWORD': string,
* 'PR_LITERAL': string,
* 'PR_NOCODE': string,
* 'PR_PLAIN': string,
* 'PR_PUNCTUATION': string,
* 'PR_SOURCE': string,
* 'PR_STRING': string,
* 'PR_TAG': string,
* 'PR_TYPE': string,
* 'prettyPrintOne': function (string, string, number|boolean),
* 'prettyPrint': function (?function, ?(HTMLElement|HTMLDocument))
* }}
* @const
*/
var PR;
/**
* Split {@code prettyPrint} into multiple timeouts so as not to interfere with
* UI events.
* If set to {@code false}, {@code prettyPrint()} is synchronous.
*/
var PR_SHOULD_USE_CONTINUATION = true
if (typeof window !== 'undefined') {
window['PR_SHOULD_USE_CONTINUATION'] = PR_SHOULD_USE_CONTINUATION;
}
/**
* Pretty print a chunk of code.
* @param {string} sourceCodeHtml The HTML to pretty print.
* @param {string} opt_langExtension The language name to use.
* Typically, a filename extension like 'cpp' or 'java'.
* @param {number|boolean} opt_numberLines True to number lines,
* or the 1-indexed number of the first line in sourceCodeHtml.
* @return {string} code as html, but prettier
*/
var prettyPrintOne;
/**
* Find all the {@code } and {@code } tags in the DOM with
* {@code class=prettyprint} and prettify them.
*
* @param {Function} opt_whenDone called when prettifying is done.
* @param {HTMLElement|HTMLDocument} opt_root an element or document
* containing all the elements to pretty print.
* Defaults to {@code document.body}.
*/
var prettyPrint;
(function () {
var win = (typeof window !== 'undefined') ? window : {};
// Keyword lists for various languages.
// We use things that coerce to strings to make them compact when minified
// and to defeat aggressive optimizers that fold large string constants.
var FLOW_CONTROL_KEYWORDS = ["break,continue,do,else,for,if,return,while"];
var C_KEYWORDS = [FLOW_CONTROL_KEYWORDS,"auto,case,char,const,default," +
"double,enum,extern,float,goto,inline,int,long,register,restrict,short,signed," +
"sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];
var COMMON_KEYWORDS = [C_KEYWORDS,"catch,class,delete,false,import," +
"new,operator,private,protected,public,this,throw,true,try,typeof"];
var CPP_KEYWORDS = [COMMON_KEYWORDS,"alignas,alignof,align_union,asm,axiom,bool," +
"concept,concept_map,const_cast,constexpr,decltype,delegate," +
"dynamic_cast,explicit,export,friend,generic,late_check," +
"mutable,namespace,noexcept,noreturn,nullptr,property,reinterpret_cast,static_assert," +
"static_cast,template,typeid,typename,using,virtual,where"];
var JAVA_KEYWORDS = [COMMON_KEYWORDS,
"abstract,assert,boolean,byte,extends,finally,final,implements,import," +
"instanceof,interface,null,native,package,strictfp,super,synchronized," +
"throws,transient"];
var CSHARP_KEYWORDS = [COMMON_KEYWORDS,
"abstract,add,alias,as,ascending,async,await,base,bool,by,byte,checked,decimal,delegate,descending," +
"dynamic,event,finally,fixed,foreach,from,get,global,group,implicit,in,interface," +
"internal,into,is,join,let,lock,null,object,out,override,orderby,params," +
"partial,readonly,ref,remove,sbyte,sealed,select,set,stackalloc,string,select,uint,ulong," +
"unchecked,unsafe,ushort,value,var,virtual,where,yield"];
var COFFEE_KEYWORDS = "all,and,by,catch,class,else,extends,false,finally," +
"for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then," +
"throw,true,try,unless,until,when,while,yes";
var JSCRIPT_KEYWORDS = [COMMON_KEYWORDS,
"abstract,async,await,constructor,debugger,enum,eval,export,from,function," +
"get,import,implements,instanceof,interface,let,null,of,set,undefined," +
"var,with,yield,Infinity,NaN"];
var PERL_KEYWORDS = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for," +
"goto,if,import,last,local,my,next,no,our,print,package,redo,require," +
"sub,undef,unless,until,use,wantarray,while,BEGIN,END";
var PYTHON_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "and,as,assert,class,def,del," +
"elif,except,exec,finally,from,global,import,in,is,lambda," +
"nonlocal,not,or,pass,print,raise,try,with,yield," +
"False,True,None"];
var RUBY_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "alias,and,begin,case,class," +
"def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo," +
"rescue,retry,self,super,then,true,undef,unless,until,when,yield," +
"BEGIN,END"];
var SH_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "case,done,elif,esac,eval,fi," +
"function,in,local,set,then,until"];
var ALL_KEYWORDS = [
CPP_KEYWORDS, CSHARP_KEYWORDS, JAVA_KEYWORDS, JSCRIPT_KEYWORDS,
PERL_KEYWORDS, PYTHON_KEYWORDS, RUBY_KEYWORDS, SH_KEYWORDS];
var C_TYPES = /^(DIR|FILE|array|vector|(de|priority_)?queue|(forward_)?list|stack|(const_)?(reverse_)?iterator|(unordered_)?(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;
// token style names. correspond to css classes
/**
* token style for a string literal
* @const
*/
var PR_STRING = 'str';
/**
* token style for a keyword
* @const
*/
var PR_KEYWORD = 'kwd';
/**
* token style for a comment
* @const
*/
var PR_COMMENT = 'com';
/**
* token style for a type
* @const
*/
var PR_TYPE = 'typ';
/**
* token style for a literal value. e.g. 1, null, true.
* @const
*/
var PR_LITERAL = 'lit';
/**
* token style for a punctuation string.
* @const
*/
var PR_PUNCTUATION = 'pun';
/**
* token style for plain text.
* @const
*/
var PR_PLAIN = 'pln';
/**
* token style for an sgml tag.
* @const
*/
var PR_TAG = 'tag';
/**
* token style for a markup declaration such as a DOCTYPE.
* @const
*/
var PR_DECLARATION = 'dec';
/**
* token style for embedded source.
* @const
*/
var PR_SOURCE = 'src';
/**
* token style for an sgml attribute name.
* @const
*/
var PR_ATTRIB_NAME = 'atn';
/**
* token style for an sgml attribute value.
* @const
*/
var PR_ATTRIB_VALUE = 'atv';
/**
* A class that indicates a section of markup that is not code, e.g. to allow
* embedding of line numbers within code listings.
* @const
*/
var PR_NOCODE = 'nocode';
// Regex pattern below is automatically generated by regexpPrecederPatterns.pl
// Do not modify, your changes will be erased.
// CAVEAT: this does not properly handle the case where a regular
// expression immediately follows another since a regular expression may
// have flags for case-sensitivity and the like. Having regexp tokens
// adjacent is not valid in any language I'm aware of, so I'm punting.
// TODO: maybe style special characters inside a regexp as punctuation.
/**
* A set of tokens that can precede a regular expression literal in
* javascript
* http://web.archive.org/web/20070717142515/http://www.mozilla.org/js/language/js20/rationale/syntax.html
* has the full list, but I've removed ones that might be problematic when
* seen in languages that don't support regular expression literals.
*
* Specifically, I've removed any keywords that can't precede a regexp
* literal in a syntactically legal javascript program, and I've removed the
* "in" keyword since it's not a keyword in many languages, and might be used
* as a count of inches.
*
* The link above does not accurately describe EcmaScript rules since
* it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
* very well in practice.
*
* @private
* @const
*/
var REGEXP_PRECEDER_PATTERN = '(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
/**
* Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
* matches the union of the sets of strings matched by the input RegExp.
* Since it matches globally, if the input strings have a start-of-input
* anchor (/^.../), it is ignored for the purposes of unioning.
* @param {Array.} regexs non multiline, non-global regexs.
* @return {RegExp} a global regex.
*/
function combinePrefixPatterns(regexs) {
var capturedGroupIndex = 0;
var needToFoldCase = false;
var ignoreCase = false;
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.ignoreCase) {
ignoreCase = true;
} else if (/[a-z]/i.test(regex.source.replace(
/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
needToFoldCase = true;
ignoreCase = false;
break;
}
}
var escapeCharToCodeUnit = {
'b': 8,
't': 9,
'n': 0xa,
'v': 0xb,
'f': 0xc,
'r': 0xd
};
function decodeEscape(charsetPart) {
var cc0 = charsetPart.charCodeAt(0);
if (cc0 !== 92 /* \\ */) {
return cc0;
}
var c1 = charsetPart.charAt(1);
cc0 = escapeCharToCodeUnit[c1];
if (cc0) {
return cc0;
} else if ('0' <= c1 && c1 <= '7') {
return parseInt(charsetPart.substring(1), 8);
} else if (c1 === 'u' || c1 === 'x') {
return parseInt(charsetPart.substring(2), 16);
} else {
return charsetPart.charCodeAt(1);
}
}
function encodeEscape(charCode) {
if (charCode < 0x20) {
return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
}
var ch = String.fromCharCode(charCode);
return (ch === '\\' || ch === '-' || ch === ']' || ch === '^')
? "\\" + ch : ch;
}
function caseFoldCharset(charSet) {
var charsetParts = charSet.substring(1, charSet.length - 1).match(
new RegExp(
'\\\\u[0-9A-Fa-f]{4}'
+ '|\\\\x[0-9A-Fa-f]{2}'
+ '|\\\\[0-3][0-7]{0,2}'
+ '|\\\\[0-7]{1,2}'
+ '|\\\\[\\s\\S]'
+ '|-'
+ '|[^-\\\\]',
'g'));
var ranges = [];
var inverse = charsetParts[0] === '^';
var out = ['['];
if (inverse) { out.push('^'); }
for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
var p = charsetParts[i];
if (/\\[bdsw]/i.test(p)) { // Don't muck with named groups.
out.push(p);
} else {
var start = decodeEscape(p);
var end;
if (i + 2 < n && '-' === charsetParts[i + 1]) {
end = decodeEscape(charsetParts[i + 2]);
i += 2;
} else {
end = start;
}
ranges.push([start, end]);
// If the range might intersect letters, then expand it.
// This case handling is too simplistic.
// It does not deal with non-latin case folding.
// It works for latin source code identifiers though.
if (!(end < 65 || start > 122)) {
if (!(end < 65 || start > 90)) {
ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
}
if (!(end < 97 || start > 122)) {
ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
}
}
}
}
// [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
// -> [[1, 12], [14, 14], [16, 17]]
ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1] - a[1]); });
var consolidatedRanges = [];
var lastRange = [];
for (var i = 0; i < ranges.length; ++i) {
var range = ranges[i];
if (range[0] <= lastRange[1] + 1) {
lastRange[1] = Math.max(lastRange[1], range[1]);
} else {
consolidatedRanges.push(lastRange = range);
}
}
for (var i = 0; i < consolidatedRanges.length; ++i) {
var range = consolidatedRanges[i];
out.push(encodeEscape(range[0]));
if (range[1] > range[0]) {
if (range[1] + 1 > range[0]) { out.push('-'); }
out.push(encodeEscape(range[1]));
}
}
out.push(']');
return out.join('');
}
function allowAnywhereFoldCaseAndRenumberGroups(regex) {
// Split into character sets, escape sequences, punctuation strings
// like ('(', '(?:', ')', '^'), and runs of characters that do not
// include any of the above.
var parts = regex.source.match(
new RegExp(
'(?:'
+ '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]' // a character set
+ '|\\\\u[A-Fa-f0-9]{4}' // a unicode escape
+ '|\\\\x[A-Fa-f0-9]{2}' // a hex escape
+ '|\\\\[0-9]+' // a back-reference or octal escape
+ '|\\\\[^ux0-9]' // other escape sequence
+ '|\\(\\?[:!=]' // start of a non-capturing group
+ '|[\\(\\)\\^]' // start/end of a group, or line start
+ '|[^\\x5B\\x5C\\(\\)\\^]+' // run of other characters
+ ')',
'g'));
var n = parts.length;
// Maps captured group numbers to the number they will occupy in
// the output or to -1 if that has not been determined, or to
// undefined if they need not be capturing in the output.
var capturedGroups = [];
// Walk over and identify back references to build the capturedGroups
// mapping.
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
// groups are 1-indexed, so max group index is count of '('
++groupIndex;
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue) {
if (decimalValue <= groupIndex) {
capturedGroups[decimalValue] = -1;
} else {
// Replace with an unambiguous escape sequence so that
// an octal escape sequence does not turn into a backreference
// to a capturing group from an earlier regex.
parts[i] = encodeEscape(decimalValue);
}
}
}
}
// Renumber groups and reduce capturing groups to non-capturing groups
// where possible.
for (var i = 1; i < capturedGroups.length; ++i) {
if (-1 === capturedGroups[i]) {
capturedGroups[i] = ++capturedGroupIndex;
}
}
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
++groupIndex;
if (!capturedGroups[groupIndex]) {
parts[i] = '(?:';
}
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue && decimalValue <= groupIndex) {
parts[i] = '\\' + capturedGroups[decimalValue];
}
}
}
// Remove any prefix anchors so that the output will match anywhere.
// ^^ really does mean an anchored match though.
for (var i = 0; i < n; ++i) {
if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
}
// Expand letters to groups to handle mixing of case-sensitive and
// case-insensitive patterns if necessary.
if (regex.ignoreCase && needToFoldCase) {
for (var i = 0; i < n; ++i) {
var p = parts[i];
var ch0 = p.charAt(0);
if (p.length >= 2 && ch0 === '[') {
parts[i] = caseFoldCharset(p);
} else if (ch0 !== '\\') {
// TODO: handle letters in numeric escapes.
parts[i] = p.replace(
/[a-zA-Z]/g,
function (ch) {
var cc = ch.charCodeAt(0);
return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
});
}
}
}
return parts.join('');
}
var rewritten = [];
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.global || regex.multiline) { throw new Error('' + regex); }
rewritten.push(
'(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
}
return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
}
/**
* Split markup into a string of source code and an array mapping ranges in
* that string to the text nodes in which they appear.
*
*
* The HTML DOM structure:
*
* (Element "p"
* (Element "b"
* (Text "print ")) ; #1
* (Text "'Hello '") ; #2
* (Element "br") ; #3
* (Text " + 'World';")) ; #4
*
*
* corresponds to the HTML
* {@code
print 'Hello ' + 'World';
}.
*
*
* It will produce the output:
*
* {
* sourceCode: "print 'Hello '\n + 'World';",
* // 1 2
* // 012345678901234 5678901234567
* spans: [0, #1, 6, #2, 14, #3, 15, #4]
* }
*
*
* where #1 is a reference to the {@code "print "} text node above, and so
* on for the other text nodes.
*
*
*
* The {@code} spans array is an array of pairs. Even elements are the start
* indices of substrings, and odd elements are the text nodes (or BR elements)
* that contain the text for those substrings.
* Substrings continue until the next index or the end of the source.
*
*
* @param {Node} node an HTML DOM subtree containing source-code.
* @param {boolean|number} isPreformatted truthy if white-space in
* text nodes should be considered significant.
* @return {SourceSpansT} source code and the nodes in which they occur.
*/
function extractSourceSpans(node, isPreformatted) {
var nocode = /(?:^|\s)nocode(?:\s|$)/;
var chunks = [];
var length = 0;
var spans = [];
var k = 0;
function walk(node) {
var type = node.nodeType;
if (type == 1) { // Element
if (nocode.test(node.className)) { return; }
for (var child = node.firstChild; child; child = child.nextSibling) {
walk(child);
}
var nodeName = node.nodeName.toLowerCase();
if ('br' === nodeName || 'li' === nodeName) {
chunks[k] = '\n';
spans[k << 1] = length++;
spans[(k++ << 1) | 1] = node;
}
} else if (type == 3 || type == 4) { // Text
var text = node.nodeValue;
if (text.length) {
if (!isPreformatted) {
text = text.replace(/[ \t\r\n]+/g, ' ');
} else {
text = text.replace(/\r\n?/g, '\n'); // Normalize newlines.
}
// TODO: handle tabs here?
chunks[k] = text;
spans[k << 1] = length;
length += text.length;
spans[(k++ << 1) | 1] = node;
}
}
}
walk(node);
return {
sourceCode: chunks.join('').replace(/\n$/, ''),
spans: spans
};
}
/**
* Apply the given language handler to sourceCode and add the resulting
* decorations to out.
* @param {!Element} sourceNode
* @param {number} basePos the index of sourceCode within the chunk of source
* whose decorations are already present on out.
* @param {string} sourceCode
* @param {function(JobT)} langHandler
* @param {DecorationsT} out
*/
function appendDecorations(
sourceNode, basePos, sourceCode, langHandler, out) {
if (!sourceCode) { return; }
/** @type {JobT} */
var job = {
sourceNode: sourceNode,
pre: 1,
langExtension: null,
numberLines: null,
sourceCode: sourceCode,
spans: null,
basePos: basePos,
decorations: null
};
langHandler(job);
out.push.apply(out, job.decorations);
}
var notWs = /\S/;
/**
* Given an element, if it contains only one child element and any text nodes
* it contains contain only space characters, return the sole child element.
* Otherwise returns undefined.
*
* This is meant to return the CODE element in {@code
} when
* there is a single child element that contains all the non-space textual
* content, but not to return anything where there are multiple child elements
* as in {@code ...... } or when there
* is textual content.
*/
function childContentWrapper(element) {
var wrapper = undefined;
for (var c = element.firstChild; c; c = c.nextSibling) {
var type = c.nodeType;
wrapper = (type === 1) // Element Node
? (wrapper ? element : c)
: (type === 3) // Text Node
? (notWs.test(c.nodeValue) ? element : wrapper)
: wrapper;
}
return wrapper === element ? undefined : wrapper;
}
/** Given triples of [style, pattern, context] returns a lexing function,
* The lexing function interprets the patterns to find token boundaries and
* returns a decoration list of the form
* [index_0, style_0, index_1, style_1, ..., index_n, style_n]
* where index_n is an index into the sourceCode, and style_n is a style
* constant like PR_PLAIN. index_n-1 <= index_n, and style_n-1 applies to
* all characters in sourceCode[index_n-1:index_n].
*
* The stylePatterns is a list whose elements have the form
* [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
*
* Style is a style constant like PR_PLAIN, or can be a string of the
* form 'lang-FOO', where FOO is a language extension describing the
* language of the portion of the token in $1 after pattern executes.
* E.g., if style is 'lang-lisp', and group 1 contains the text
* '(hello (world))', then that portion of the token will be passed to the
* registered lisp handler for formatting.
* The text before and after group 1 will be restyled using this decorator
* so decorators should take care that this doesn't result in infinite
* recursion. For example, the HTML lexer rule for SCRIPT elements looks
* something like ['lang-js', /<[s]cript>(.+?)<\/script>/]. This may match
* '}
* define style rules. See the example page for examples.
* mark the {@code } and {@code } tags in your source with
* {@code class=prettyprint.}
* You can also use the (html deprecated) {@code } tag, but the pretty
* printer needs to do more substantial DOM manipulations to support that, so
* some css styles may not be preserved.
*
* That's it. I wanted to keep the API as simple as possible, so there's no
* need to specify which language the code is in, but if you wish, you can add
* another class to the {@code } or {@code } element to specify the
* language, as in {@code }. Any class that
* starts with "lang-" followed by a file extension, specifies the file type.
* See the "lang-*.js" files in this directory for code that implements
* per-language file handlers.
*
* Change log:
* cbeust, 2006/08/22
*
* Java annotations (start with "@") are now captured as literals ("lit")
*
* @requires console
*/
// JSLint declarations
/*global console, document, navigator, setTimeout, window, define */
/**
* {@type !{
* 'createSimpleLexer': function (Array, Array): (function (JobT)),
* 'registerLangHandler': function (function (JobT), Array.),
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_NAME': string,
* 'PR_ATTRIB_VALUE': string,
* 'PR_COMMENT': string,
* 'PR_DECLARATION': string,
* 'PR_KEYWORD': string,
* 'PR_LITERAL': string,
* 'PR_NOCODE': string,
* 'PR_PLAIN': string,
* 'PR_PUNCTUATION': string,
* 'PR_SOURCE': string,
* 'PR_STRING': string,
* 'PR_TAG': string,
* 'PR_TYPE': string,
* 'prettyPrintOne': function (string, string, number|boolean),
* 'prettyPrint': function (?function, ?(HTMLElement|HTMLDocument))
* }}
* @const
*/
var PR;
/**
* Split {@code prettyPrint} into multiple timeouts so as not to interfere with
* UI events.
* If set to {@code false}, {@code prettyPrint()} is synchronous.
*/
var PR_SHOULD_USE_CONTINUATION = true
if (typeof window !== 'undefined') {
window['PR_SHOULD_USE_CONTINUATION'] = PR_SHOULD_USE_CONTINUATION;
}
/**
* Pretty print a chunk of code.
* @param {string} sourceCodeHtml The HTML to pretty print.
* @param {string} opt_langExtension The language name to use.
* Typically, a filename extension like 'cpp' or 'java'.
* @param {number|boolean} opt_numberLines True to number lines,
* or the 1-indexed number of the first line in sourceCodeHtml.
* @return {string} code as html, but prettier
*/
var prettyPrintOne;
/**
* Find all the {@code } and {@code } tags in the DOM with
* {@code class=prettyprint} and prettify them.
*
* @param {Function} opt_whenDone called when prettifying is done.
* @param {HTMLElement|HTMLDocument} opt_root an element or document
* containing all the elements to pretty print.
* Defaults to {@code document.body}.
*/
var prettyPrint;
(function () {
var win = (typeof window !== 'undefined') ? window : {};
// Keyword lists for various languages.
// We use things that coerce to strings to make them compact when minified
// and to defeat aggressive optimizers that fold large string constants.
var FLOW_CONTROL_KEYWORDS = ["break,continue,do,else,for,if,return,while"];
var C_KEYWORDS = [FLOW_CONTROL_KEYWORDS,"auto,case,char,const,default," +
"double,enum,extern,float,goto,inline,int,long,register,restrict,short,signed," +
"sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];
var COMMON_KEYWORDS = [C_KEYWORDS,"catch,class,delete,false,import," +
"new,operator,private,protected,public,this,throw,true,try,typeof"];
var CPP_KEYWORDS = [COMMON_KEYWORDS,"alignas,alignof,align_union,asm,axiom,bool," +
"concept,concept_map,const_cast,constexpr,decltype,delegate," +
"dynamic_cast,explicit,export,friend,generic,late_check," +
"mutable,namespace,noexcept,noreturn,nullptr,property,reinterpret_cast,static_assert," +
"static_cast,template,typeid,typename,using,virtual,where"];
var JAVA_KEYWORDS = [COMMON_KEYWORDS,
"abstract,assert,boolean,byte,extends,finally,final,implements,import," +
"instanceof,interface,null,native,package,strictfp,super,synchronized," +
"throws,transient"];
var CSHARP_KEYWORDS = [COMMON_KEYWORDS,
"abstract,add,alias,as,ascending,async,await,base,bool,by,byte,checked,decimal,delegate,descending," +
"dynamic,event,finally,fixed,foreach,from,get,global,group,implicit,in,interface," +
"internal,into,is,join,let,lock,null,object,out,override,orderby,params," +
"partial,readonly,ref,remove,sbyte,sealed,select,set,stackalloc,string,select,uint,ulong," +
"unchecked,unsafe,ushort,value,var,virtual,where,yield"];
var COFFEE_KEYWORDS = "all,and,by,catch,class,else,extends,false,finally," +
"for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then," +
"throw,true,try,unless,until,when,while,yes";
var JSCRIPT_KEYWORDS = [COMMON_KEYWORDS,
"abstract,async,await,constructor,debugger,enum,eval,export,from,function," +
"get,import,implements,instanceof,interface,let,null,of,set,undefined," +
"var,with,yield,Infinity,NaN"];
var PERL_KEYWORDS = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for," +
"goto,if,import,last,local,my,next,no,our,print,package,redo,require," +
"sub,undef,unless,until,use,wantarray,while,BEGIN,END";
var PYTHON_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "and,as,assert,class,def,del," +
"elif,except,exec,finally,from,global,import,in,is,lambda," +
"nonlocal,not,or,pass,print,raise,try,with,yield," +
"False,True,None"];
var RUBY_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "alias,and,begin,case,class," +
"def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo," +
"rescue,retry,self,super,then,true,undef,unless,until,when,yield," +
"BEGIN,END"];
var SH_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "case,done,elif,esac,eval,fi," +
"function,in,local,set,then,until"];
var ALL_KEYWORDS = [
CPP_KEYWORDS, CSHARP_KEYWORDS, JAVA_KEYWORDS, JSCRIPT_KEYWORDS,
PERL_KEYWORDS, PYTHON_KEYWORDS, RUBY_KEYWORDS, SH_KEYWORDS];
var C_TYPES = /^(DIR|FILE|array|vector|(de|priority_)?queue|(forward_)?list|stack|(const_)?(reverse_)?iterator|(unordered_)?(multi)?(set|map)|bitset|u?(int|float)\d*)\b/;
// token style names. correspond to css classes
/**
* token style for a string literal
* @const
*/
var PR_STRING = 'str';
/**
* token style for a keyword
* @const
*/
var PR_KEYWORD = 'kwd';
/**
* token style for a comment
* @const
*/
var PR_COMMENT = 'com';
/**
* token style for a type
* @const
*/
var PR_TYPE = 'typ';
/**
* token style for a literal value. e.g. 1, null, true.
* @const
*/
var PR_LITERAL = 'lit';
/**
* token style for a punctuation string.
* @const
*/
var PR_PUNCTUATION = 'pun';
/**
* token style for plain text.
* @const
*/
var PR_PLAIN = 'pln';
/**
* token style for an sgml tag.
* @const
*/
var PR_TAG = 'tag';
/**
* token style for a markup declaration such as a DOCTYPE.
* @const
*/
var PR_DECLARATION = 'dec';
/**
* token style for embedded source.
* @const
*/
var PR_SOURCE = 'src';
/**
* token style for an sgml attribute name.
* @const
*/
var PR_ATTRIB_NAME = 'atn';
/**
* token style for an sgml attribute value.
* @const
*/
var PR_ATTRIB_VALUE = 'atv';
/**
* A class that indicates a section of markup that is not code, e.g. to allow
* embedding of line numbers within code listings.
* @const
*/
var PR_NOCODE = 'nocode';
// Regex pattern below is automatically generated by regexpPrecederPatterns.pl
// Do not modify, your changes will be erased.
// CAVEAT: this does not properly handle the case where a regular
// expression immediately follows another since a regular expression may
// have flags for case-sensitivity and the like. Having regexp tokens
// adjacent is not valid in any language I'm aware of, so I'm punting.
// TODO: maybe style special characters inside a regexp as punctuation.
/**
* A set of tokens that can precede a regular expression literal in
* javascript
* http://web.archive.org/web/20070717142515/http://www.mozilla.org/js/language/js20/rationale/syntax.html
* has the full list, but I've removed ones that might be problematic when
* seen in languages that don't support regular expression literals.
*
* Specifically, I've removed any keywords that can't precede a regexp
* literal in a syntactically legal javascript program, and I've removed the
* "in" keyword since it's not a keyword in many languages, and might be used
* as a count of inches.
*
* The link above does not accurately describe EcmaScript rules since
* it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
* very well in practice.
*
* @private
* @const
*/
var REGEXP_PRECEDER_PATTERN = '(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<=?|>>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
/**
* Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
* matches the union of the sets of strings matched by the input RegExp.
* Since it matches globally, if the input strings have a start-of-input
* anchor (/^.../), it is ignored for the purposes of unioning.
* @param {Array.} regexs non multiline, non-global regexs.
* @return {RegExp} a global regex.
*/
function combinePrefixPatterns(regexs) {
var capturedGroupIndex = 0;
var needToFoldCase = false;
var ignoreCase = false;
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.ignoreCase) {
ignoreCase = true;
} else if (/[a-z]/i.test(regex.source.replace(
/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
needToFoldCase = true;
ignoreCase = false;
break;
}
}
var escapeCharToCodeUnit = {
'b': 8,
't': 9,
'n': 0xa,
'v': 0xb,
'f': 0xc,
'r': 0xd
};
function decodeEscape(charsetPart) {
var cc0 = charsetPart.charCodeAt(0);
if (cc0 !== 92 /* \\ */) {
return cc0;
}
var c1 = charsetPart.charAt(1);
cc0 = escapeCharToCodeUnit[c1];
if (cc0) {
return cc0;
} else if ('0' <= c1 && c1 <= '7') {
return parseInt(charsetPart.substring(1), 8);
} else if (c1 === 'u' || c1 === 'x') {
return parseInt(charsetPart.substring(2), 16);
} else {
return charsetPart.charCodeAt(1);
}
}
function encodeEscape(charCode) {
if (charCode < 0x20) {
return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
}
var ch = String.fromCharCode(charCode);
return (ch === '\\' || ch === '-' || ch === ']' || ch === '^')
? "\\" + ch : ch;
}
function caseFoldCharset(charSet) {
var charsetParts = charSet.substring(1, charSet.length - 1).match(
new RegExp(
'\\\\u[0-9A-Fa-f]{4}'
+ '|\\\\x[0-9A-Fa-f]{2}'
+ '|\\\\[0-3][0-7]{0,2}'
+ '|\\\\[0-7]{1,2}'
+ '|\\\\[\\s\\S]'
+ '|-'
+ '|[^-\\\\]',
'g'));
var ranges = [];
var inverse = charsetParts[0] === '^';
var out = ['['];
if (inverse) { out.push('^'); }
for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
var p = charsetParts[i];
if (/\\[bdsw]/i.test(p)) { // Don't muck with named groups.
out.push(p);
} else {
var start = decodeEscape(p);
var end;
if (i + 2 < n && '-' === charsetParts[i + 1]) {
end = decodeEscape(charsetParts[i + 2]);
i += 2;
} else {
end = start;
}
ranges.push([start, end]);
// If the range might intersect letters, then expand it.
// This case handling is too simplistic.
// It does not deal with non-latin case folding.
// It works for latin source code identifiers though.
if (!(end < 65 || start > 122)) {
if (!(end < 65 || start > 90)) {
ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
}
if (!(end < 97 || start > 122)) {
ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
}
}
}
}
// [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
// -> [[1, 12], [14, 14], [16, 17]]
ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1] - a[1]); });
var consolidatedRanges = [];
var lastRange = [];
for (var i = 0; i < ranges.length; ++i) {
var range = ranges[i];
if (range[0] <= lastRange[1] + 1) {
lastRange[1] = Math.max(lastRange[1], range[1]);
} else {
consolidatedRanges.push(lastRange = range);
}
}
for (var i = 0; i < consolidatedRanges.length; ++i) {
var range = consolidatedRanges[i];
out.push(encodeEscape(range[0]));
if (range[1] > range[0]) {
if (range[1] + 1 > range[0]) { out.push('-'); }
out.push(encodeEscape(range[1]));
}
}
out.push(']');
return out.join('');
}
function allowAnywhereFoldCaseAndRenumberGroups(regex) {
// Split into character sets, escape sequences, punctuation strings
// like ('(', '(?:', ')', '^'), and runs of characters that do not
// include any of the above.
var parts = regex.source.match(
new RegExp(
'(?:'
+ '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]' // a character set
+ '|\\\\u[A-Fa-f0-9]{4}' // a unicode escape
+ '|\\\\x[A-Fa-f0-9]{2}' // a hex escape
+ '|\\\\[0-9]+' // a back-reference or octal escape
+ '|\\\\[^ux0-9]' // other escape sequence
+ '|\\(\\?[:!=]' // start of a non-capturing group
+ '|[\\(\\)\\^]' // start/end of a group, or line start
+ '|[^\\x5B\\x5C\\(\\)\\^]+' // run of other characters
+ ')',
'g'));
var n = parts.length;
// Maps captured group numbers to the number they will occupy in
// the output or to -1 if that has not been determined, or to
// undefined if they need not be capturing in the output.
var capturedGroups = [];
// Walk over and identify back references to build the capturedGroups
// mapping.
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
// groups are 1-indexed, so max group index is count of '('
++groupIndex;
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue) {
if (decimalValue <= groupIndex) {
capturedGroups[decimalValue] = -1;
} else {
// Replace with an unambiguous escape sequence so that
// an octal escape sequence does not turn into a backreference
// to a capturing group from an earlier regex.
parts[i] = encodeEscape(decimalValue);
}
}
}
}
// Renumber groups and reduce capturing groups to non-capturing groups
// where possible.
for (var i = 1; i < capturedGroups.length; ++i) {
if (-1 === capturedGroups[i]) {
capturedGroups[i] = ++capturedGroupIndex;
}
}
for (var i = 0, groupIndex = 0; i < n; ++i) {
var p = parts[i];
if (p === '(') {
++groupIndex;
if (!capturedGroups[groupIndex]) {
parts[i] = '(?:';
}
} else if ('\\' === p.charAt(0)) {
var decimalValue = +p.substring(1);
if (decimalValue && decimalValue <= groupIndex) {
parts[i] = '\\' + capturedGroups[decimalValue];
}
}
}
// Remove any prefix anchors so that the output will match anywhere.
// ^^ really does mean an anchored match though.
for (var i = 0; i < n; ++i) {
if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
}
// Expand letters to groups to handle mixing of case-sensitive and
// case-insensitive patterns if necessary.
if (regex.ignoreCase && needToFoldCase) {
for (var i = 0; i < n; ++i) {
var p = parts[i];
var ch0 = p.charAt(0);
if (p.length >= 2 && ch0 === '[') {
parts[i] = caseFoldCharset(p);
} else if (ch0 !== '\\') {
// TODO: handle letters in numeric escapes.
parts[i] = p.replace(
/[a-zA-Z]/g,
function (ch) {
var cc = ch.charCodeAt(0);
return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
});
}
}
}
return parts.join('');
}
var rewritten = [];
for (var i = 0, n = regexs.length; i < n; ++i) {
var regex = regexs[i];
if (regex.global || regex.multiline) { throw new Error('' + regex); }
rewritten.push(
'(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
}
return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
}
/**
* Split markup into a string of source code and an array mapping ranges in
* that string to the text nodes in which they appear.
*
*
* The HTML DOM structure:
*
* (Element "p"
* (Element "b"
* (Text "print ")) ; #1
* (Text "'Hello '") ; #2
* (Element "br") ; #3
* (Text " + 'World';")) ; #4
*
*
* corresponds to the HTML
* {@code
print 'Hello ' + 'World';
}.
*
*
* It will produce the output:
*
* {
* sourceCode: "print 'Hello '\n + 'World';",
* // 1 2
* // 012345678901234 5678901234567
* spans: [0, #1, 6, #2, 14, #3, 15, #4]
* }
*
*
* where #1 is a reference to the {@code "print "} text node above, and so
* on for the other text nodes.
*
*
*
* The {@code} spans array is an array of pairs. Even elements are the start
* indices of substrings, and odd elements are the text nodes (or BR elements)
* that contain the text for those substrings.
* Substrings continue until the next index or the end of the source.
*
*
* @param {Node} node an HTML DOM subtree containing source-code.
* @param {boolean|number} isPreformatted truthy if white-space in
* text nodes should be considered significant.
* @return {SourceSpansT} source code and the nodes in which they occur.
*/
function extractSourceSpans(node, isPreformatted) {
var nocode = /(?:^|\s)nocode(?:\s|$)/;
var chunks = [];
var length = 0;
var spans = [];
var k = 0;
function walk(node) {
var type = node.nodeType;
if (type == 1) { // Element
if (nocode.test(node.className)) { return; }
for (var child = node.firstChild; child; child = child.nextSibling) {
walk(child);
}
var nodeName = node.nodeName.toLowerCase();
if ('br' === nodeName || 'li' === nodeName) {
chunks[k] = '\n';
spans[k << 1] = length++;
spans[(k++ << 1) | 1] = node;
}
} else if (type == 3 || type == 4) { // Text
var text = node.nodeValue;
if (text.length) {
if (!isPreformatted) {
text = text.replace(/[ \t\r\n]+/g, ' ');
} else {
text = text.replace(/\r\n?/g, '\n'); // Normalize newlines.
}
// TODO: handle tabs here?
chunks[k] = text;
spans[k << 1] = length;
length += text.length;
spans[(k++ << 1) | 1] = node;
}
}
}
walk(node);
return {
sourceCode: chunks.join('').replace(/\n$/, ''),
spans: spans
};
}
/**
* Apply the given language handler to sourceCode and add the resulting
* decorations to out.
* @param {!Element} sourceNode
* @param {number} basePos the index of sourceCode within the chunk of source
* whose decorations are already present on out.
* @param {string} sourceCode
* @param {function(JobT)} langHandler
* @param {DecorationsT} out
*/
function appendDecorations(
sourceNode, basePos, sourceCode, langHandler, out) {
if (!sourceCode) { return; }
/** @type {JobT} */
var job = {
sourceNode: sourceNode,
pre: 1,
langExtension: null,
numberLines: null,
sourceCode: sourceCode,
spans: null,
basePos: basePos,
decorations: null
};
langHandler(job);
out.push.apply(out, job.decorations);
}
var notWs = /\S/;
/**
* Given an element, if it contains only one child element and any text nodes
* it contains contain only space characters, return the sole child element.
* Otherwise returns undefined.
*
* This is meant to return the CODE element in {@code
} when
* there is a single child element that contains all the non-space textual
* content, but not to return anything where there are multiple child elements
* as in {@code ...... } or when there
* is textual content.
*/
function childContentWrapper(element) {
var wrapper = undefined;
for (var c = element.firstChild; c; c = c.nextSibling) {
var type = c.nodeType;
wrapper = (type === 1) // Element Node
? (wrapper ? element : c)
: (type === 3) // Text Node
? (notWs.test(c.nodeValue) ? element : wrapper)
: wrapper;
}
return wrapper === element ? undefined : wrapper;
}
/** Given triples of [style, pattern, context] returns a lexing function,
* The lexing function interprets the patterns to find token boundaries and
* returns a decoration list of the form
* [index_0, style_0, index_1, style_1, ..., index_n, style_n]
* where index_n is an index into the sourceCode, and style_n is a style
* constant like PR_PLAIN. index_n-1 <= index_n, and style_n-1 applies to
* all characters in sourceCode[index_n-1:index_n].
*
* The stylePatterns is a list whose elements have the form
* [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
*
* Style is a style constant like PR_PLAIN, or can be a string of the
* form 'lang-FOO', where FOO is a language extension describing the
* language of the portion of the token in $1 after pattern executes.
* E.g., if style is 'lang-lisp', and group 1 contains the text
* '(hello (world))', then that portion of the token will be passed to the
* registered lisp handler for formatting.
* The text before and after group 1 will be restyled using this decorator
* so decorators should take care that this doesn't result in infinite
* recursion. For example, the HTML lexer rule for SCRIPT elements looks
* something like ['lang-js', /<[s]cript>(.+?)<\/script>/]. This may match
* '