<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<title>LtaoShWfs</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<style type="text/css">
/*!
*
* Twitter Bootstrap
*
*/
/*!
* Bootstrap v3.3.7 (http://getbootstrap.com)
* Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
font-family: sans-serif;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
body {
margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}
audio,
canvas,
progress,
video {
display: inline-block;
vertical-align: baseline;
}
audio:not([controls]) {
display: none;
height: 0;
}
[hidden],
template {
display: none;
}
a {
background-color: transparent;
}
a:active,
a:hover {
outline: 0;
}
abbr[title] {
border-bottom: 1px dotted;
}
b,
strong {
font-weight: bold;
}
dfn {
font-style: italic;
}
h1 {
font-size: 2em;
margin: 0.67em 0;
}
mark {
background: #ff0;
color: #000;
}
small {
font-size: 80%;
}
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
img {
border: 0;
}
svg:not(:root) {
overflow: hidden;
}
figure {
margin: 1em 40px;
}
hr {
box-sizing: content-box;
height: 0;
}
pre {
overflow: auto;
}
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
color: inherit;
font: inherit;
margin: 0;
}
button {
overflow: visible;
}
button,
select {
text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button;
cursor: pointer;
}
button[disabled],
html input[disabled] {
cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
input {
line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box;
padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}
input[type="search"] {
-webkit-appearance: textfield;
box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
legend {
border: 0;
padding: 0;
}
textarea {
overflow: auto;
}
optgroup {
font-weight: bold;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
*,
*:before,
*:after {
background: transparent !important;
color: #000 !important;
box-shadow: none !important;
text-shadow: none !important;
}
a,
a:visited {
text-decoration: underline;
}
a[href]:after {
content: " (" attr(href) ")";
}
abbr[title]:after {
content: " (" attr(title) ")";
}
a[href^="#"]:after,
a[href^="javascript:"]:after {
content: "";
}
pre,
blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
thead {
display: table-header-group;
}
tr,
img {
page-break-inside: avoid;
}
img {
max-width: 100% !important;
}
p,
h2,
h3 {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
.navbar {
display: none;
}
.btn > .caret,
.dropup > .btn > .caret {
border-top-color: #000 !important;
}
.label {
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;
}
}
@font-face {
font-family: 'Glyphicons Halflings';
src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot');
src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
position: relative;
top: 1px;
display: inline-block;
font-family: 'Glyphicons Halflings';
font-style: normal;
font-weight: normal;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
content: "\002a";
}
.glyphicon-plus:before {
content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
content: "\20ac";
}
.glyphicon-minus:before {
content: "\2212";
}
.glyphicon-cloud:before {
content: "\2601";
}
.glyphicon-envelope:before {
content: "\2709";
}
.glyphicon-pencil:before {
content: "\270f";
}
.glyphicon-glass:before {
content: "\e001";
}
.glyphicon-music:before {
content: "\e002";
}
.glyphicon-search:before {
content: "\e003";
}
.glyphicon-heart:before {
content: "\e005";
}
.glyphicon-star:before {
content: "\e006";
}
.glyphicon-star-empty:before {
content: "\e007";
}
.glyphicon-user:before {
content: "\e008";
}
.glyphicon-film:before {
content: "\e009";
}
.glyphicon-th-large:before {
content: "\e010";
}
.glyphicon-th:before {
content: "\e011";
}
.glyphicon-th-list:before {
content: "\e012";
}
.glyphicon-ok:before {
content: "\e013";
}
.glyphicon-remove:before {
content: "\e014";
}
.glyphicon-zoom-in:before {
content: "\e015";
}
.glyphicon-zoom-out:before {
content: "\e016";
}
.glyphicon-off:before {
content: "\e017";
}
.glyphicon-signal:before {
content: "\e018";
}
.glyphicon-cog:before {
content: "\e019";
}
.glyphicon-trash:before {
content: "\e020";
}
.glyphicon-home:before {
content: "\e021";
}
.glyphicon-file:before {
content: "\e022";
}
.glyphicon-time:before {
content: "\e023";
}
.glyphicon-road:before {
content: "\e024";
}
.glyphicon-download-alt:before {
content: "\e025";
}
.glyphicon-download:before {
content: "\e026";
}
.glyphicon-upload:before {
content: "\e027";
}
.glyphicon-inbox:before {
content: "\e028";
}
.glyphicon-play-circle:before {
content: "\e029";
}
.glyphicon-repeat:before {
content: "\e030";
}
.glyphicon-refresh:before {
content: "\e031";
}
.glyphicon-list-alt:before {
content: "\e032";
}
.glyphicon-lock:before {
content: "\e033";
}
.glyphicon-flag:before {
content: "\e034";
}
.glyphicon-headphones:before {
content: "\e035";
}
.glyphicon-volume-off:before {
content: "\e036";
}
.glyphicon-volume-down:before {
content: "\e037";
}
.glyphicon-volume-up:before {
content: "\e038";
}
.glyphicon-qrcode:before {
content: "\e039";
}
.glyphicon-barcode:before {
content: "\e040";
}
.glyphicon-tag:before {
content: "\e041";
}
.glyphicon-tags:before {
content: "\e042";
}
.glyphicon-book:before {
content: "\e043";
}
.glyphicon-bookmark:before {
content: "\e044";
}
.glyphicon-print:before {
content: "\e045";
}
.glyphicon-camera:before {
content: "\e046";
}
.glyphicon-font:before {
content: "\e047";
}
.glyphicon-bold:before {
content: "\e048";
}
.glyphicon-italic:before {
content: "\e049";
}
.glyphicon-text-height:before {
content: "\e050";
}
.glyphicon-text-width:before {
content: "\e051";
}
.glyphicon-align-left:before {
content: "\e052";
}
.glyphicon-align-center:before {
content: "\e053";
}
.glyphicon-align-right:before {
content: "\e054";
}
.glyphicon-align-justify:before {
content: "\e055";
}
.glyphicon-list:before {
content: "\e056";
}
.glyphicon-indent-left:before {
content: "\e057";
}
.glyphicon-indent-right:before {
content: "\e058";
}
.glyphicon-facetime-video:before {
content: "\e059";
}
.glyphicon-picture:before {
content: "\e060";
}
.glyphicon-map-marker:before {
content: "\e062";
}
.glyphicon-adjust:before {
content: "\e063";
}
.glyphicon-tint:before {
content: "\e064";
}
.glyphicon-edit:before {
content: "\e065";
}
.glyphicon-share:before {
content: "\e066";
}
.glyphicon-check:before {
content: "\e067";
}
.glyphicon-move:before {
content: "\e068";
}
.glyphicon-step-backward:before {
content: "\e069";
}
.glyphicon-fast-backward:before {
content: "\e070";
}
.glyphicon-backward:before {
content: "\e071";
}
.glyphicon-play:before {
content: "\e072";
}
.glyphicon-pause:before {
content: "\e073";
}
.glyphicon-stop:before {
content: "\e074";
}
.glyphicon-forward:before {
content: "\e075";
}
.glyphicon-fast-forward:before {
content: "\e076";
}
.glyphicon-step-forward:before {
content: "\e077";
}
.glyphicon-eject:before {
content: "\e078";
}
.glyphicon-chevron-left:before {
content: "\e079";
}
.glyphicon-chevron-right:before {
content: "\e080";
}
.glyphicon-plus-sign:before {
content: "\e081";
}
.glyphicon-minus-sign:before {
content: "\e082";
}
.glyphicon-remove-sign:before {
content: "\e083";
}
.glyphicon-ok-sign:before {
content: "\e084";
}
.glyphicon-question-sign:before {
content: "\e085";
}
.glyphicon-info-sign:before {
content: "\e086";
}
.glyphicon-screenshot:before {
content: "\e087";
}
.glyphicon-remove-circle:before {
content: "\e088";
}
.glyphicon-ok-circle:before {
content: "\e089";
}
.glyphicon-ban-circle:before {
content: "\e090";
}
.glyphicon-arrow-left:before {
content: "\e091";
}
.glyphicon-arrow-right:before {
content: "\e092";
}
.glyphicon-arrow-up:before {
content: "\e093";
}
.glyphicon-arrow-down:before {
content: "\e094";
}
.glyphicon-share-alt:before {
content: "\e095";
}
.glyphicon-resize-full:before {
content: "\e096";
}
.glyphicon-resize-small:before {
content: "\e097";
}
.glyphicon-exclamation-sign:before {
content: "\e101";
}
.glyphicon-gift:before {
content: "\e102";
}
.glyphicon-leaf:before {
content: "\e103";
}
.glyphicon-fire:before {
content: "\e104";
}
.glyphicon-eye-open:before {
content: "\e105";
}
.glyphicon-eye-close:before {
content: "\e106";
}
.glyphicon-warning-sign:before {
content: "\e107";
}
.glyphicon-plane:before {
content: "\e108";
}
.glyphicon-calendar:before {
content: "\e109";
}
.glyphicon-random:before {
content: "\e110";
}
.glyphicon-comment:before {
content: "\e111";
}
.glyphicon-magnet:before {
content: "\e112";
}
.glyphicon-chevron-up:before {
content: "\e113";
}
.glyphicon-chevron-down:before {
content: "\e114";
}
.glyphicon-retweet:before {
content: "\e115";
}
.glyphicon-shopping-cart:before {
content: "\e116";
}
.glyphicon-folder-close:before {
content: "\e117";
}
.glyphicon-folder-open:before {
content: "\e118";
}
.glyphicon-resize-vertical:before {
content: "\e119";
}
.glyphicon-resize-horizontal:before {
content: "\e120";
}
.glyphicon-hdd:before {
content: "\e121";
}
.glyphicon-bullhorn:before {
content: "\e122";
}
.glyphicon-bell:before {
content: "\e123";
}
.glyphicon-certificate:before {
content: "\e124";
}
.glyphicon-thumbs-up:before {
content: "\e125";
}
.glyphicon-thumbs-down:before {
content: "\e126";
}
.glyphicon-hand-right:before {
content: "\e127";
}
.glyphicon-hand-left:before {
content: "\e128";
}
.glyphicon-hand-up:before {
content: "\e129";
}
.glyphicon-hand-down:before {
content: "\e130";
}
.glyphicon-circle-arrow-right:before {
content: "\e131";
}
.glyphicon-circle-arrow-left:before {
content: "\e132";
}
.glyphicon-circle-arrow-up:before {
content: "\e133";
}
.glyphicon-circle-arrow-down:before {
content: "\e134";
}
.glyphicon-globe:before {
content: "\e135";
}
.glyphicon-wrench:before {
content: "\e136";
}
.glyphicon-tasks:before {
content: "\e137";
}
.glyphicon-filter:before {
content: "\e138";
}
.glyphicon-briefcase:before {
content: "\e139";
}
.glyphicon-fullscreen:before {
content: "\e140";
}
.glyphicon-dashboard:before {
content: "\e141";
}
.glyphicon-paperclip:before {
content: "\e142";
}
.glyphicon-heart-empty:before {
content: "\e143";
}
.glyphicon-link:before {
content: "\e144";
}
.glyphicon-phone:before {
content: "\e145";
}
.glyphicon-pushpin:before {
content: "\e146";
}
.glyphicon-usd:before {
content: "\e148";
}
.glyphicon-gbp:before {
content: "\e149";
}
.glyphicon-sort:before {
content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
content: "\e152";
}
.glyphicon-sort-by-order:before {
content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
content: "\e154";
}
.glyphicon-sort-by-attributes:before {
content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
content: "\e156";
}
.glyphicon-unchecked:before {
content: "\e157";
}
.glyphicon-expand:before {
content: "\e158";
}
.glyphicon-collapse-down:before {
content: "\e159";
}
.glyphicon-collapse-up:before {
content: "\e160";
}
.glyphicon-log-in:before {
content: "\e161";
}
.glyphicon-flash:before {
content: "\e162";
}
.glyphicon-log-out:before {
content: "\e163";
}
.glyphicon-new-window:before {
content: "\e164";
}
.glyphicon-record:before {
content: "\e165";
}
.glyphicon-save:before {
content: "\e166";
}
.glyphicon-open:before {
content: "\e167";
}
.glyphicon-saved:before {
content: "\e168";
}
.glyphicon-import:before {
content: "\e169";
}
.glyphicon-export:before {
content: "\e170";
}
.glyphicon-send:before {
content: "\e171";
}
.glyphicon-floppy-disk:before {
content: "\e172";
}
.glyphicon-floppy-saved:before {
content: "\e173";
}
.glyphicon-floppy-remove:before {
content: "\e174";
}
.glyphicon-floppy-save:before {
content: "\e175";
}
.glyphicon-floppy-open:before {
content: "\e176";
}
.glyphicon-credit-card:before {
content: "\e177";
}
.glyphicon-transfer:before {
content: "\e178";
}
.glyphicon-cutlery:before {
content: "\e179";
}
.glyphicon-header:before {
content: "\e180";
}
.glyphicon-compressed:before {
content: "\e181";
}
.glyphicon-earphone:before {
content: "\e182";
}
.glyphicon-phone-alt:before {
content: "\e183";
}
.glyphicon-tower:before {
content: "\e184";
}
.glyphicon-stats:before {
content: "\e185";
}
.glyphicon-sd-video:before {
content: "\e186";
}
.glyphicon-hd-video:before {
content: "\e187";
}
.glyphicon-subtitles:before {
content: "\e188";
}
.glyphicon-sound-stereo:before {
content: "\e189";
}
.glyphicon-sound-dolby:before {
content: "\e190";
}
.glyphicon-sound-5-1:before {
content: "\e191";
}
.glyphicon-sound-6-1:before {
content: "\e192";
}
.glyphicon-sound-7-1:before {
content: "\e193";
}
.glyphicon-copyright-mark:before {
content: "\e194";
}
.glyphicon-registration-mark:before {
content: "\e195";
}
.glyphicon-cloud-download:before {
content: "\e197";
}
.glyphicon-cloud-upload:before {
content: "\e198";
}
.glyphicon-tree-conifer:before {
content: "\e199";
}
.glyphicon-tree-deciduous:before {
content: "\e200";
}
.glyphicon-cd:before {
content: "\e201";
}
.glyphicon-save-file:before {
content: "\e202";
}
.glyphicon-open-file:before {
content: "\e203";
}
.glyphicon-level-up:before {
content: "\e204";
}
.glyphicon-copy:before {
content: "\e205";
}
.glyphicon-paste:before {
content: "\e206";
}
.glyphicon-alert:before {
content: "\e209";
}
.glyphicon-equalizer:before {
content: "\e210";
}
.glyphicon-king:before {
content: "\e211";
}
.glyphicon-queen:before {
content: "\e212";
}
.glyphicon-pawn:before {
content: "\e213";
}
.glyphicon-bishop:before {
content: "\e214";
}
.glyphicon-knight:before {
content: "\e215";
}
.glyphicon-baby-formula:before {
content: "\e216";
}
.glyphicon-tent:before {
content: "\26fa";
}
.glyphicon-blackboard:before {
content: "\e218";
}
.glyphicon-bed:before {
content: "\e219";
}
.glyphicon-apple:before {
content: "\f8ff";
}
.glyphicon-erase:before {
content: "\e221";
}
.glyphicon-hourglass:before {
content: "\231b";
}
.glyphicon-lamp:before {
content: "\e223";
}
.glyphicon-duplicate:before {
content: "\e224";
}
.glyphicon-piggy-bank:before {
content: "\e225";
}
.glyphicon-scissors:before {
content: "\e226";
}
.glyphicon-bitcoin:before {
content: "\e227";
}
.glyphicon-btc:before {
content: "\e227";
}
.glyphicon-xbt:before {
content: "\e227";
}
.glyphicon-yen:before {
content: "\00a5";
}
.glyphicon-jpy:before {
content: "\00a5";
}
.glyphicon-ruble:before {
content: "\20bd";
}
.glyphicon-rub:before {
content: "\20bd";
}
.glyphicon-scale:before {
content: "\e230";
}
.glyphicon-ice-lolly:before {
content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
content: "\e232";
}
.glyphicon-education:before {
content: "\e233";
}
.glyphicon-option-horizontal:before {
content: "\e234";
}
.glyphicon-option-vertical:before {
content: "\e235";
}
.glyphicon-menu-hamburger:before {
content: "\e236";
}
.glyphicon-modal-window:before {
content: "\e237";
}
.glyphicon-oil:before {
content: "\e238";
}
.glyphicon-grain:before {
content: "\e239";
}
.glyphicon-sunglasses:before {
content: "\e240";
}
.glyphicon-text-size:before {
content: "\e241";
}
.glyphicon-text-color:before {
content: "\e242";
}
.glyphicon-text-background:before {
content: "\e243";
}
.glyphicon-object-align-top:before {
content: "\e244";
}
.glyphicon-object-align-bottom:before {
content: "\e245";
}
.glyphicon-object-align-horizontal:before {
content: "\e246";
}
.glyphicon-object-align-left:before {
content: "\e247";
}
.glyphicon-object-align-vertical:before {
content: "\e248";
}
.glyphicon-object-align-right:before {
content: "\e249";
}
.glyphicon-triangle-right:before {
content: "\e250";
}
.glyphicon-triangle-left:before {
content: "\e251";
}
.glyphicon-triangle-bottom:before {
content: "\e252";
}
.glyphicon-triangle-top:before {
content: "\e253";
}
.glyphicon-console:before {
content: "\e254";
}
.glyphicon-superscript:before {
content: "\e255";
}
.glyphicon-subscript:before {
content: "\e256";
}
.glyphicon-menu-left:before {
content: "\e257";
}
.glyphicon-menu-right:before {
content: "\e258";
}
.glyphicon-menu-down:before {
content: "\e259";
}
.glyphicon-menu-up:before {
content: "\e260";
}
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
*:before,
*:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html {
font-size: 10px;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 13px;
line-height: 1.42857143;
color: #000;
background-color: #fff;
}
input,
button,
select,
textarea {
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
a {
color: #337ab7;
text-decoration: none;
}
a:hover,
a:focus {
color: #23527c;
text-decoration: underline;
}
a:focus {
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
figure {
margin: 0;
}
img {
vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
display: block;
max-width: 100%;
height: auto;
}
.img-rounded {
border-radius: 3px;
}
.img-thumbnail {
padding: 4px;
line-height: 1.42857143;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 2px;
-webkit-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
display: inline-block;
max-width: 100%;
height: auto;
}
.img-circle {
border-radius: 50%;
}
hr {
margin-top: 18px;
margin-bottom: 18px;
border: 0;
border-top: 1px solid #eeeeee;
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
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;
}
[role="button"] {
cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
font-family: inherit;
font-weight: 500;
line-height: 1.1;
color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
font-weight: normal;
line-height: 1;
color: #777777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
margin-top: 18px;
margin-bottom: 9px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
margin-top: 9px;
margin-bottom: 9px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
font-size: 75%;
}
h1,
.h1 {
font-size: 33px;
}
h2,
.h2 {
font-size: 27px;
}
h3,
.h3 {
font-size: 23px;
}
h4,
.h4 {
font-size: 17px;
}
h5,
.h5 {
font-size: 13px;
}
h6,
.h6 {
font-size: 12px;
}
p {
margin: 0 0 9px;
}
.lead {
margin-bottom: 18px;
font-size: 14px;
font-weight: 300;
line-height: 1.4;
}
@media (min-width: 768px) {
.lead {
font-size: 19.5px;
}
}
small,
.small {
font-size: 92%;
}
mark,
.mark {
background-color: #fcf8e3;
padding: .2em;
}
.text-left {
text-align: left;
}
.text-right {
text-align: right;
}
.text-center {
text-align: center;
}
.text-justify {
text-align: justify;
}
.text-nowrap {
white-space: nowrap;
}
.text-lowercase {
text-transform: lowercase;
}
.text-uppercase {
text-transform: uppercase;
}
.text-capitalize {
text-transform: capitalize;
}
.text-muted {
color: #777777;
}
.text-primary {
color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
color: #286090;
}
.text-success {
color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
color: #2b542c;
}
.text-info {
color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
color: #245269;
}
.text-warning {
color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
color: #66512c;
}
.text-danger {
color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
color: #843534;
}
.bg-primary {
color: #fff;
background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
background-color: #286090;
}
.bg-success {
background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
background-color: #c1e2b3;
}
.bg-info {
background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
background-color: #afd9ee;
}
.bg-warning {
background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
background-color: #f7ecb5;
}
.bg-danger {
background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
background-color: #e4b9b9;
}
.page-header {
padding-bottom: 8px;
margin: 36px 0 18px;
border-bottom: 1px solid #eeeeee;
}
ul,
ol {
margin-top: 0;
margin-bottom: 9px;
}
ul ul,
ol ul,
ul ol,
ol ol {
margin-bottom: 0;
}
.list-unstyled {
padding-left: 0;
list-style: none;
}
.list-inline {
padding-left: 0;
list-style: none;
margin-left: -5px;
}
.list-inline > li {
display: inline-block;
padding-left: 5px;
padding-right: 5px;
}
dl {
margin-top: 0;
margin-bottom: 18px;
}
dt,
dd {
line-height: 1.42857143;
}
dt {
font-weight: bold;
}
dd {
margin-left: 0;
}
@media (min-width: 541px) {
.dl-horizontal dt {
float: left;
width: 160px;
clear: left;
text-align: right;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.dl-horizontal dd {
margin-left: 180px;
}
}
abbr[title],
abbr[data-original-title] {
cursor: help;
border-bottom: 1px dotted #777777;
}
.initialism {
font-size: 90%;
text-transform: uppercase;
}
blockquote {
padding: 9px 18px;
margin: 0 0 18px;
font-size: inherit;
border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
display: block;
font-size: 80%;
line-height: 1.42857143;
color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
padding-right: 15px;
padding-left: 0;
border-right: 5px solid #eeeeee;
border-left: 0;
text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
content: '\00A0 \2014';
}
address {
margin-bottom: 18px;
font-style: normal;
line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
font-family: monospace;
}
code {
padding: 2px 4px;
font-size: 90%;
color: #c7254e;
background-color: #f9f2f4;
border-radius: 2px;
}
kbd {
padding: 2px 4px;
font-size: 90%;
color: #888;
background-color: transparent;
border-radius: 1px;
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
padding: 0;
font-size: 100%;
font-weight: bold;
box-shadow: none;
}
pre {
display: block;
padding: 8.5px;
margin: 0 0 9px;
font-size: 12px;
line-height: 1.42857143;
word-break: break-all;
word-wrap: break-word;
color: #333333;
background-color: #f5f5f5;
border: 1px solid #ccc;
border-radius: 2px;
}
pre code {
padding: 0;
font-size: inherit;
color: inherit;
white-space: pre-wrap;
background-color: transparent;
border-radius: 0;
}
.pre-scrollable {
max-height: 340px;
overflow-y: scroll;
}
.container {
margin-right: auto;
margin-left: auto;
padding-left: 0px;
padding-right: 0px;
}
@media (min-width: 768px) {
.container {
width: 768px;
}
}
@media (min-width: 992px) {
.container {
width: 940px;
}
}
@media (min-width: 1200px) {
.container {
width: 1140px;
}
}
.container-fluid {
margin-right: auto;
margin-left: auto;
padding-left: 0px;
padding-right: 0px;
}
.row {
margin-left: 0px;
margin-right: 0px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
position: relative;
min-height: 1px;
padding-left: 0px;
padding-right: 0px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
float: left;
}
.col-xs-12 {
width: 100%;
}
.col-xs-11 {
width: 91.66666667%;
}
.col-xs-10 {
width: 83.33333333%;
}
.col-xs-9 {
width: 75%;
}
.col-xs-8 {
width: 66.66666667%;
}
.col-xs-7 {
width: 58.33333333%;
}
.col-xs-6 {
width: 50%;
}
.col-xs-5 {
width: 41.66666667%;
}
.col-xs-4 {
width: 33.33333333%;
}
.col-xs-3 {
width: 25%;
}
.col-xs-2 {
width: 16.66666667%;
}
.col-xs-1 {
width: 8.33333333%;
}
.col-xs-pull-12 {
right: 100%;
}
.col-xs-pull-11 {
right: 91.66666667%;
}
.col-xs-pull-10 {
right: 83.33333333%;
}
.col-xs-pull-9 {
right: 75%;
}
.col-xs-pull-8 {
right: 66.66666667%;
}
.col-xs-pull-7 {
right: 58.33333333%;
}
.col-xs-pull-6 {
right: 50%;
}
.col-xs-pull-5 {
right: 41.66666667%;
}
.col-xs-pull-4 {
right: 33.33333333%;
}
.col-xs-pull-3 {
right: 25%;
}
.col-xs-pull-2 {
right: 16.66666667%;
}
.col-xs-pull-1 {
right: 8.33333333%;
}
.col-xs-pull-0 {
right: auto;
}
.col-xs-push-12 {
left: 100%;
}
.col-xs-push-11 {
left: 91.66666667%;
}
.col-xs-push-10 {
left: 83.33333333%;
}
.col-xs-push-9 {
left: 75%;
}
.col-xs-push-8 {
left: 66.66666667%;
}
.col-xs-push-7 {
left: 58.33333333%;
}
.col-xs-push-6 {
left: 50%;
}
.col-xs-push-5 {
left: 41.66666667%;
}
.col-xs-push-4 {
left: 33.33333333%;
}
.col-xs-push-3 {
left: 25%;
}
.col-xs-push-2 {
left: 16.66666667%;
}
.col-xs-push-1 {
left: 8.33333333%;
}
.col-xs-push-0 {
left: auto;
}
.col-xs-offset-12 {
margin-left: 100%;
}
.col-xs-offset-11 {
margin-left: 91.66666667%;
}
.col-xs-offset-10 {
margin-left: 83.33333333%;
}
.col-xs-offset-9 {
margin-left: 75%;
}
.col-xs-offset-8 {
margin-left: 66.66666667%;
}
.col-xs-offset-7 {
margin-left: 58.33333333%;
}
.col-xs-offset-6 {
margin-left: 50%;
}
.col-xs-offset-5 {
margin-left: 41.66666667%;
}
.col-xs-offset-4 {
margin-left: 33.33333333%;
}
.col-xs-offset-3 {
margin-left: 25%;
}
.col-xs-offset-2 {
margin-left: 16.66666667%;
}
.col-xs-offset-1 {
margin-left: 8.33333333%;
}
.col-xs-offset-0 {
margin-left: 0%;
}
@media (min-width: 768px) {
.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 {
float: left;
}
.col-sm-12 {
width: 100%;
}
.col-sm-11 {
width: 91.66666667%;
}
.col-sm-10 {
width: 83.33333333%;
}
.col-sm-9 {
width: 75%;
}
.col-sm-8 {
width: 66.66666667%;
}
.col-sm-7 {
width: 58.33333333%;
}
.col-sm-6 {
width: 50%;
}
.col-sm-5 {
width: 41.66666667%;
}
.col-sm-4 {
width: 33.33333333%;
}
.col-sm-3 {
width: 25%;
}
.col-sm-2 {
width: 16.66666667%;
}
.col-sm-1 {
width: 8.33333333%;
}
.col-sm-pull-12 {
right: 100%;
}
.col-sm-pull-11 {
right: 91.66666667%;
}
.col-sm-pull-10 {
right: 83.33333333%;
}
.col-sm-pull-9 {
right: 75%;
}
.col-sm-pull-8 {
right: 66.66666667%;
}
.col-sm-pull-7 {
right: 58.33333333%;
}
.col-sm-pull-6 {
right: 50%;
}
.col-sm-pull-5 {
right: 41.66666667%;
}
.col-sm-pull-4 {
right: 33.33333333%;
}
.col-sm-pull-3 {
right: 25%;
}
.col-sm-pull-2 {
right: 16.66666667%;
}
.col-sm-pull-1 {
right: 8.33333333%;
}
.col-sm-pull-0 {
right: auto;
}
.col-sm-push-12 {
left: 100%;
}
.col-sm-push-11 {
left: 91.66666667%;
}
.col-sm-push-10 {
left: 83.33333333%;
}
.col-sm-push-9 {
left: 75%;
}
.col-sm-push-8 {
left: 66.66666667%;
}
.col-sm-push-7 {
left: 58.33333333%;
}
.col-sm-push-6 {
left: 50%;
}
.col-sm-push-5 {
left: 41.66666667%;
}
.col-sm-push-4 {
left: 33.33333333%;
}
.col-sm-push-3 {
left: 25%;
}
.col-sm-push-2 {
left: 16.66666667%;
}
.col-sm-push-1 {
left: 8.33333333%;
}
.col-sm-push-0 {
left: auto;
}
.col-sm-offset-12 {
margin-left: 100%;
}
.col-sm-offset-11 {
margin-left: 91.66666667%;
}
.col-sm-offset-10 {
margin-left: 83.33333333%;
}
.col-sm-offset-9 {
margin-left: 75%;
}
.col-sm-offset-8 {
margin-left: 66.66666667%;
}
.col-sm-offset-7 {
margin-left: 58.33333333%;
}
.col-sm-offset-6 {
margin-left: 50%;
}
.col-sm-offset-5 {
margin-left: 41.66666667%;
}
.col-sm-offset-4 {
margin-left: 33.33333333%;
}
.col-sm-offset-3 {
margin-left: 25%;
}
.col-sm-offset-2 {
margin-left: 16.66666667%;
}
.col-sm-offset-1 {
margin-left: 8.33333333%;
}
.col-sm-offset-0 {
margin-left: 0%;
}
}
@media (min-width: 992px) {
.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 {
float: left;
}
.col-md-12 {
width: 100%;
}
.col-md-11 {
width: 91.66666667%;
}
.col-md-10 {
width: 83.33333333%;
}
.col-md-9 {
width: 75%;
}
.col-md-8 {
width: 66.66666667%;
}
.col-md-7 {
width: 58.33333333%;
}
.col-md-6 {
width: 50%;
}
.col-md-5 {
width: 41.66666667%;
}
.col-md-4 {
width: 33.33333333%;
}
.col-md-3 {
width: 25%;
}
.col-md-2 {
width: 16.66666667%;
}
.col-md-1 {
width: 8.33333333%;
}
.col-md-pull-12 {
right: 100%;
}
.col-md-pull-11 {
right: 91.66666667%;
}
.col-md-pull-10 {
right: 83.33333333%;
}
.col-md-pull-9 {
right: 75%;
}
.col-md-pull-8 {
right: 66.66666667%;
}
.col-md-pull-7 {
right: 58.33333333%;
}
.col-md-pull-6 {
right: 50%;
}
.col-md-pull-5 {
right: 41.66666667%;
}
.col-md-pull-4 {
right: 33.33333333%;
}
.col-md-pull-3 {
right: 25%;
}
.col-md-pull-2 {
right: 16.66666667%;
}
.col-md-pull-1 {
right: 8.33333333%;
}
.col-md-pull-0 {
right: auto;
}
.col-md-push-12 {
left: 100%;
}
.col-md-push-11 {
left: 91.66666667%;
}
.col-md-push-10 {
left: 83.33333333%;
}
.col-md-push-9 {
left: 75%;
}
.col-md-push-8 {
left: 66.66666667%;
}
.col-md-push-7 {
left: 58.33333333%;
}
.col-md-push-6 {
left: 50%;
}
.col-md-push-5 {
left: 41.66666667%;
}
.col-md-push-4 {
left: 33.33333333%;
}
.col-md-push-3 {
left: 25%;
}
.col-md-push-2 {
left: 16.66666667%;
}
.col-md-push-1 {
left: 8.33333333%;
}
.col-md-push-0 {
left: auto;
}
.col-md-offset-12 {
margin-left: 100%;
}
.col-md-offset-11 {
margin-left: 91.66666667%;
}
.col-md-offset-10 {
margin-left: 83.33333333%;
}
.col-md-offset-9 {
margin-left: 75%;
}
.col-md-offset-8 {
margin-left: 66.66666667%;
}
.col-md-offset-7 {
margin-left: 58.33333333%;
}
.col-md-offset-6 {
margin-left: 50%;
}
.col-md-offset-5 {
margin-left: 41.66666667%;
}
.col-md-offset-4 {
margin-left: 33.33333333%;
}
.col-md-offset-3 {
margin-left: 25%;
}
.col-md-offset-2 {
margin-left: 16.66666667%;
}
.col-md-offset-1 {
margin-left: 8.33333333%;
}
.col-md-offset-0 {
margin-left: 0%;
}
}
@media (min-width: 1200px) {
.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 {
float: left;
}
.col-lg-12 {
width: 100%;
}
.col-lg-11 {
width: 91.66666667%;
}
.col-lg-10 {
width: 83.33333333%;
}
.col-lg-9 {
width: 75%;
}
.col-lg-8 {
width: 66.66666667%;
}
.col-lg-7 {
width: 58.33333333%;
}
.col-lg-6 {
width: 50%;
}
.col-lg-5 {
width: 41.66666667%;
}
.col-lg-4 {
width: 33.33333333%;
}
.col-lg-3 {
width: 25%;
}
.col-lg-2 {
width: 16.66666667%;
}
.col-lg-1 {
width: 8.33333333%;
}
.col-lg-pull-12 {
right: 100%;
}
.col-lg-pull-11 {
right: 91.66666667%;
}
.col-lg-pull-10 {
right: 83.33333333%;
}
.col-lg-pull-9 {
right: 75%;
}
.col-lg-pull-8 {
right: 66.66666667%;
}
.col-lg-pull-7 {
right: 58.33333333%;
}
.col-lg-pull-6 {
right: 50%;
}
.col-lg-pull-5 {
right: 41.66666667%;
}
.col-lg-pull-4 {
right: 33.33333333%;
}
.col-lg-pull-3 {
right: 25%;
}
.col-lg-pull-2 {
right: 16.66666667%;
}
.col-lg-pull-1 {
right: 8.33333333%;
}
.col-lg-pull-0 {
right: auto;
}
.col-lg-push-12 {
left: 100%;
}
.col-lg-push-11 {
left: 91.66666667%;
}
.col-lg-push-10 {
left: 83.33333333%;
}
.col-lg-push-9 {
left: 75%;
}
.col-lg-push-8 {
left: 66.66666667%;
}
.col-lg-push-7 {
left: 58.33333333%;
}
.col-lg-push-6 {
left: 50%;
}
.col-lg-push-5 {
left: 41.66666667%;
}
.col-lg-push-4 {
left: 33.33333333%;
}
.col-lg-push-3 {
left: 25%;
}
.col-lg-push-2 {
left: 16.66666667%;
}
.col-lg-push-1 {
left: 8.33333333%;
}
.col-lg-push-0 {
left: auto;
}
.col-lg-offset-12 {
margin-left: 100%;
}
.col-lg-offset-11 {
margin-left: 91.66666667%;
}
.col-lg-offset-10 {
margin-left: 83.33333333%;
}
.col-lg-offset-9 {
margin-left: 75%;
}
.col-lg-offset-8 {
margin-left: 66.66666667%;
}
.col-lg-offset-7 {
margin-left: 58.33333333%;
}
.col-lg-offset-6 {
margin-left: 50%;
}
.col-lg-offset-5 {
margin-left: 41.66666667%;
}
.col-lg-offset-4 {
margin-left: 33.33333333%;
}
.col-lg-offset-3 {
margin-left: 25%;
}
.col-lg-offset-2 {
margin-left: 16.66666667%;
}
.col-lg-offset-1 {
margin-left: 8.33333333%;
}
.col-lg-offset-0 {
margin-left: 0%;
}
}
table {
background-color: transparent;
}
caption {
padding-top: 8px;
padding-bottom: 8px;
color: #777777;
text-align: left;
}
th {
text-align: left;
}
.table {
width: 100%;
max-width: 100%;
margin-bottom: 18px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
padding: 8px;
line-height: 1.42857143;
vertical-align: top;
border-top: 1px solid #ddd;
}
.table > thead > tr > th {
vertical-align: bottom;
border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
border-top: 0;
}
.table > tbody + tbody {
border-top: 2px solid #ddd;
}
.table .table {
background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
padding: 5px;
}
.table-bordered {
border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
background-color: #f5f5f5;
}
table col[class*="col-"] {
position: static;
float: none;
display: table-column;
}
table td[class*="col-"],
table th[class*="col-"] {
position: static;
float: none;
display: table-cell;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
background-color: #ebcccc;
}
.table-responsive {
overflow-x: auto;
min-height: 0.01%;
}
@media screen and (max-width: 767px) {
.table-responsive {
width: 100%;
margin-bottom: 13.5px;
overflow-y: hidden;
-ms-overflow-style: -ms-autohiding-scrollbar;
border: 1px solid #ddd;
}
.table-responsive > .table {
margin-bottom: 0;
}
.table-responsive > .table > thead > tr > th,
.table-responsive > .table > tbody > tr > th,
.table-responsive > .table > tfoot > tr > th,
.table-responsive > .table > thead > tr > td,
.table-responsive > .table > tbody > tr > td,
.table-responsive > .table > tfoot > tr > td {
white-space: nowrap;
}
.table-responsive > .table-bordered {
border: 0;
}
.table-responsive > .table-bordered > thead > tr > th:first-child,
.table-responsive > .table-bordered > tbody > tr > th:first-child,
.table-responsive > .table-bordered > tfoot > tr > th:first-child,
.table-responsive > .table-bordered > thead > tr > td:first-child,
.table-responsive > .table-bordered > tbody > tr > td:first-child,
.table-responsive > .table-bordered > tfoot > tr > td:first-child {
border-left: 0;
}
.table-responsive > .table-bordered > thead > tr > th:last-child,
.table-responsive > .table-bordered > tbody > tr > th:last-child,
.table-responsive > .table-bordered > tfoot > tr > th:last-child,
.table-responsive > .table-bordered > thead > tr > td:last-child,
.table-responsive > .table-bordered > tbody > tr > td:last-child,
.table-responsive > .table-bordered > tfoot > tr > td:last-child {
border-right: 0;
}
.table-responsive > .table-bordered > tbody > tr:last-child > th,
.table-responsive > .table-bordered > tfoot > tr:last-child > th,
.table-responsive > .table-bordered > tbody > tr:last-child > td,
.table-responsive > .table-bordered > tfoot > tr:last-child > td {
border-bottom: 0;
}
}
fieldset {
padding: 0;
margin: 0;
border: 0;
min-width: 0;
}
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: 18px;
font-size: 19.5px;
line-height: inherit;
color: #333333;
border: 0;
border-bottom: 1px solid #e5e5e5;
}
label {
display: inline-block;
max-width: 100%;
margin-bottom: 5px;
font-weight: bold;
}
input[type="search"] {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
margin: 4px 0 0;
margin-top: 1px \9;
line-height: normal;
}
input[type="file"] {
display: block;
}
input[type="range"] {
display: block;
width: 100%;
}
select[multiple],
select[size] {
height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
output {
display: block;
padding-top: 7px;
font-size: 13px;
line-height: 1.42857143;
color: #555555;
}
.form-control {
display: block;
width: 100%;
height: 32px;
padding: 6px 12px;
font-size: 13px;
line-height: 1.42857143;
color: #555555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
border-color: #66afe9;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
color: #999;
opacity: 1;
}
.form-control:-ms-input-placeholder {
color: #999;
}
.form-control::-webkit-input-placeholder {
color: #999;
}
.form-control::-ms-expand {
border: 0;
background-color: transparent;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
background-color: #eeeeee;
opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
cursor: not-allowed;
}
textarea.form-control {
height: auto;
}
input[type="search"] {
-webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
line-height: 32px;
}
input[type="date"].input-sm,
input[type="time"].input-sm,
input[type="datetime-local"].input-sm,
input[type="month"].input-sm,
.input-group-sm input[type="date"],
.input-group-sm input[type="time"],
.input-group-sm input[type="datetime-local"],
.input-group-sm input[type="month"] {
line-height: 30px;
}
input[type="date"].input-lg,
input[type="time"].input-lg,
input[type="datetime-local"].input-lg,
input[type="month"].input-lg,
.input-group-lg input[type="date"],
.input-group-lg input[type="time"],
.input-group-lg input[type="datetime-local"],
.input-group-lg input[type="month"] {
line-height: 45px;
}
}
.form-group {
margin-bottom: 15px;
}
.radio,
.checkbox {
position: relative;
display: block;
margin-top: 10px;
margin-bottom: 10px;
}
.radio label,
.checkbox label {
min-height: 18px;
padding-left: 20px;
margin-bottom: 0;
font-weight: normal;
cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
position: absolute;
margin-left: -20px;
margin-top: 4px \9;
}
.radio + .radio,
.checkbox + .checkbox {
margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
position: relative;
display: inline-block;
padding-left: 20px;
margin-bottom: 0;
vertical-align: middle;
font-weight: normal;
cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
margin-top: 0;
margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
cursor: not-allowed;
}
.form-control-static {
padding-top: 7px;
padding-bottom: 7px;
margin-bottom: 0;
min-height: 31px;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
padding-left: 0;
padding-right: 0;
}
.input-sm {
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
select.input-sm {
height: 30px;
line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
height: auto;
}
.form-group-sm .form-control {
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
.form-group-sm select.form-control {
height: 30px;
line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
height: auto;
}
.form-group-sm .form-control-static {
height: 30px;
min-height: 30px;
padding: 6px 10px;
font-size: 12px;
line-height: 1.5;
}
.input-lg {
height: 45px;
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
select.input-lg {
height: 45px;
line-height: 45px;
}
textarea.input-lg,
select[multiple].input-lg {
height: auto;
}
.form-group-lg .form-control {
height: 45px;
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
.form-group-lg select.form-control {
height: 45px;
line-height: 45px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
height: auto;
}
.form-group-lg .form-control-static {
height: 45px;
min-height: 35px;
padding: 11px 16px;
font-size: 17px;
line-height: 1.3333333;
}
.has-feedback {
position: relative;
}
.has-feedback .form-control {
padding-right: 40px;
}
.form-control-feedback {
position: absolute;
top: 0;
right: 0;
z-index: 2;
display: block;
width: 32px;
height: 32px;
line-height: 32px;
text-align: center;
pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
width: 45px;
height: 45px;
line-height: 45px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
width: 30px;
height: 30px;
line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
color: #3c763d;
}
.has-success .form-control {
border-color: #3c763d;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
border-color: #2b542c;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
color: #3c763d;
border-color: #3c763d;
background-color: #dff0d8;
}
.has-success .form-control-feedback {
color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
color: #8a6d3b;
}
.has-warning .form-control {
border-color: #8a6d3b;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
border-color: #66512c;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
color: #8a6d3b;
border-color: #8a6d3b;
background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
color: #a94442;
}
.has-error .form-control {
border-color: #a94442;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
border-color: #843534;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
color: #a94442;
border-color: #a94442;
background-color: #f2dede;
}
.has-error .form-control-feedback {
color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
top: 23px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
top: 0;
}
.help-block {
display: block;
margin-top: 5px;
margin-bottom: 10px;
color: #404040;
}
@media (min-width: 768px) {
.form-inline .form-group {
display: inline-block;
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .form-control {
display: inline-block;
width: auto;
vertical-align: middle;
}
.form-inline .form-control-static {
display: inline-block;
}
.form-inline .input-group {
display: inline-table;
vertical-align: middle;
}
.form-inline .input-group .input-group-addon,
.form-inline .input-group .input-group-btn,
.form-inline .input-group .form-control {
width: auto;
}
.form-inline .input-group > .form-control {
width: 100%;
}
.form-inline .control-label {
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .radio,
.form-inline .checkbox {
display: inline-block;
margin-top: 0;
margin-bottom: 0;
vertical-align: middle;
}
.form-inline .radio label,
.form-inline .checkbox label {
padding-left: 0;
}
.form-inline .radio input[type="radio"],
.form-inline .checkbox input[type="checkbox"] {
position: relative;
margin-left: 0;
}
.form-inline .has-feedback .form-control-feedback {
top: 0;
}
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
margin-top: 0;
margin-bottom: 0;
padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
min-height: 25px;
}
.form-horizontal .form-group {
margin-left: 0px;
margin-right: 0px;
}
@media (min-width: 768px) {
.form-horizontal .control-label {
text-align: right;
margin-bottom: 0;
padding-top: 7px;
}
}
.form-horizontal .has-feedback .form-control-feedback {
right: 0px;
}
@media (min-width: 768px) {
.form-horizontal .form-group-lg .control-label {
padding-top: 11px;
font-size: 17px;
}
}
@media (min-width: 768px) {
.form-horizontal .form-group-sm .control-label {
padding-top: 6px;
font-size: 12px;
}
}
.btn {
display: inline-block;
margin-bottom: 0;
font-weight: normal;
text-align: center;
vertical-align: middle;
touch-action: manipulation;
cursor: pointer;
background-image: none;
border: 1px solid transparent;
white-space: nowrap;
padding: 6px 12px;
font-size: 13px;
line-height: 1.42857143;
border-radius: 2px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
color: #333;
text-decoration: none;
}
.btn:active,
.btn.active {
outline: 0;
background-image: none;
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
cursor: not-allowed;
opacity: 0.65;
filter: alpha(opacity=65);
-webkit-box-shadow: none;
box-shadow: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
pointer-events: none;
}
.btn-default {
color: #333;
background-color: #fff;
border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
.btn-default:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
background-color: #fff;
border-color: #ccc;
}
.btn-default .badge {
color: #fff;
background-color: #333;
}
.btn-primary {
color: #fff;
background-color: #337ab7;
border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
color: #fff;
background-color: #286090;
border-color: #122b40;
}
.btn-primary:hover {
color: #fff;
background-color: #286090;
border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
color: #fff;
background-color: #286090;
border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
color: #fff;
background-color: #204d74;
border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
background-color: #337ab7;
border-color: #2e6da4;
}
.btn-primary .badge {
color: #337ab7;
background-color: #fff;
}
.btn-success {
color: #fff;
background-color: #5cb85c;
border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
color: #fff;
background-color: #449d44;
border-color: #255625;
}
.btn-success:hover {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
color: #fff;
background-color: #398439;
border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
background-color: #5cb85c;
border-color: #4cae4c;
}
.btn-success .badge {
color: #5cb85c;
background-color: #fff;
}
.btn-info {
color: #fff;
background-color: #5bc0de;
border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
color: #fff;
background-color: #31b0d5;
border-color: #1b6d85;
}
.btn-info:hover {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
color: #fff;
background-color: #269abc;
border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
background-color: #5bc0de;
border-color: #46b8da;
}
.btn-info .badge {
color: #5bc0de;
background-color: #fff;
}
.btn-warning {
color: #fff;
background-color: #f0ad4e;
border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
color: #fff;
background-color: #ec971f;
border-color: #985f0d;
}
.btn-warning:hover {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
color: #fff;
background-color: #d58512;
border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
background-color: #f0ad4e;
border-color: #eea236;
}
.btn-warning .badge {
color: #f0ad4e;
background-color: #fff;
}
.btn-danger {
color: #fff;
background-color: #d9534f;
border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
color: #fff;
background-color: #c9302c;
border-color: #761c19;
}
.btn-danger:hover {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
color: #fff;
background-color: #ac2925;
border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
background-color: #d9534f;
border-color: #d43f3a;
}
.btn-danger .badge {
color: #d9534f;
background-color: #fff;
}
.btn-link {
color: #337ab7;
font-weight: normal;
border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
background-color: transparent;
-webkit-box-shadow: none;
box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
color: #23527c;
text-decoration: underline;
background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
color: #777777;
text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
.btn-sm,
.btn-group-sm > .btn {
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
.btn-xs,
.btn-group-xs > .btn {
padding: 1px 5px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
.btn-block {
display: block;
width: 100%;
}
.btn-block + .btn-block {
margin-top: 5px;
}
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.in {
opacity: 1;
}
.collapse {
display: none;
}
.collapse.in {
display: block;
}
tr.collapse.in {
display: table-row;
}
tbody.collapse.in {
display: table-row-group;
}
.collapsing {
position: relative;
height: 0;
overflow: hidden;
-webkit-transition-property: height, visibility;
transition-property: height, visibility;
-webkit-transition-duration: 0.35s;
transition-duration: 0.35s;
-webkit-transition-timing-function: ease;
transition-timing-function: ease;
}
.caret {
display: inline-block;
width: 0;
height: 0;
margin-left: 2px;
vertical-align: middle;
border-top: 4px dashed;
border-top: 4px solid \9;
border-right: 4px solid transparent;
border-left: 4px solid transparent;
}
.dropup,
.dropdown {
position: relative;
}
.dropdown-toggle:focus {
outline: 0;
}
.dropdown-menu {
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
display: none;
float: left;
min-width: 160px;
padding: 5px 0;
margin: 2px 0 0;
list-style: none;
font-size: 13px;
text-align: left;
background-color: #fff;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 2px;
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
background-clip: padding-box;
}
.dropdown-menu.pull-right {
right: 0;
left: auto;
}
.dropdown-menu .divider {
height: 1px;
margin: 8px 0;
overflow: hidden;
background-color: #e5e5e5;
}
.dropdown-menu > li > a {
display: block;
padding: 3px 20px;
clear: both;
font-weight: normal;
line-height: 1.42857143;
color: #333333;
white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
text-decoration: none;
color: #262626;
background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
color: #fff;
text-decoration: none;
outline: 0;
background-color: #337ab7;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
color: #777777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
text-decoration: none;
background-color: transparent;
background-image: none;
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
cursor: not-allowed;
}
.open > .dropdown-menu {
display: block;
}
.open > a {
outline: 0;
}
.dropdown-menu-right {
left: auto;
right: 0;
}
.dropdown-menu-left {
left: 0;
right: auto;
}
.dropdown-header {
display: block;
padding: 3px 20px;
font-size: 12px;
line-height: 1.42857143;
color: #777777;
white-space: nowrap;
}
.dropdown-backdrop {
position: fixed;
left: 0;
right: 0;
bottom: 0;
top: 0;
z-index: 990;
}
.pull-right > .dropdown-menu {
right: 0;
left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
border-top: 0;
border-bottom: 4px dashed;
border-bottom: 4px solid \9;
content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
top: auto;
bottom: 100%;
margin-bottom: 2px;
}
@media (min-width: 541px) {
.navbar-right .dropdown-menu {
left: auto;
right: 0;
}
.navbar-right .dropdown-menu-left {
left: 0;
right: auto;
}
}
.btn-group,
.btn-group-vertical {
position: relative;
display: inline-block;
vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .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 {
margin-left: -1px;
}
.btn-toolbar {
margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
margin-left: 5px;
}
.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-group > .btn + .dropdown-toggle {
padding-left: 8px;
padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
padding-left: 12px;
padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
-webkit-box-shadow: none;
box-shadow: none;
}
.btn .caret {
margin-left: 0;
}
.btn-lg .caret {
border-width: 5px 5px 0;
border-bottom-width: 0;
}
.dropup .btn-lg .caret {
border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
display: block;
float: none;
width: 100%;
max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
float: none;
}
.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-top-right-radius: 2px;
border-top-left-radius: 2px;
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;
border-bottom-right-radius: 2px;
border-bottom-left-radius: 2px;
}
.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;
}
.btn-group-justified {
display: table;
width: 100%;
table-layout: fixed;
border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
float: none;
display: table-cell;
width: 1%;
}
.btn-group-justified > .btn-group .btn {
width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[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: table;
border-collapse: separate;
}
.input-group[class*="col-"] {
float: none;
padding-left: 0;
padding-right: 0;
}
.input-group .form-control {
position: relative;
z-index: 2;
float: left;
width: 100%;
margin-bottom: 0;
}
.input-group .form-control:focus {
z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
height: 45px;
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
border-radius: 3px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
height: 45px;
line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
height: 30px;
line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
display: table-cell;
}
.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 {
width: 1%;
white-space: nowrap;
vertical-align: middle;
}
.input-group-addon {
padding: 6px 12px;
font-size: 13px;
font-weight: normal;
line-height: 1;
color: #555555;
text-align: center;
background-color: #eeeeee;
border: 1px solid #ccc;
border-radius: 2px;
}
.input-group-addon.input-sm {
padding: 5px 10px;
font-size: 12px;
border-radius: 1px;
}
.input-group-addon.input-lg {
padding: 10px 16px;
font-size: 17px;
border-radius: 3px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
}
.input-group-addon:first-child {
border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.input-group-addon:last-child {
border-left: 0;
}
.input-group-btn {
position: relative;
font-size: 0;
white-space: nowrap;
}
.input-group-btn > .btn {
position: relative;
}
.input-group-btn > .btn + .btn {
margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
z-index: 2;
margin-left: -1px;
}
.nav {
margin-bottom: 0;
padding-left: 0;
list-style: none;
}
.nav > li {
position: relative;
display: block;
}
.nav > li > a {
position: relative;
display: block;
padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
text-decoration: none;
background-color: #eeeeee;
}
.nav > li.disabled > a {
color: #777777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
color: #777777;
text-decoration: none;
background-color: transparent;
cursor: not-allowed;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
background-color: #eeeeee;
border-color: #337ab7;
}
.nav .nav-divider {
height: 1px;
margin: 8px 0;
overflow: hidden;
background-color: #e5e5e5;
}
.nav > li > a > img {
max-width: none;
}
.nav-tabs {
border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
float: left;
margin-bottom: -1px;
}
.nav-tabs > li > a {
margin-right: 2px;
line-height: 1.42857143;
border: 1px solid transparent;
border-radius: 2px 2px 0 0;
}
.nav-tabs > li > a:hover {
border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
color: #555555;
background-color: #fff;
border: 1px solid #ddd;
border-bottom-color: transparent;
cursor: default;
}
.nav-tabs.nav-justified {
width: 100%;
border-bottom: 0;
}
.nav-tabs.nav-justified > li {
float: none;
}
.nav-tabs.nav-justified > li > a {
text-align: center;
margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
top: auto;
left: auto;
}
@media (min-width: 768px) {
.nav-tabs.nav-justified > li {
display: table-cell;
width: 1%;
}
.nav-tabs.nav-justified > li > a {
margin-bottom: 0;
}
}
.nav-tabs.nav-justified > li > a {
margin-right: 0;
border-radius: 2px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
border: 1px solid #ddd;
}
@media (min-width: 768px) {
.nav-tabs.nav-justified > li > a {
border-bottom: 1px solid #ddd;
border-radius: 2px 2px 0 0;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
border-bottom-color: #fff;
}
}
.nav-pills > li {
float: left;
}
.nav-pills > li > a {
border-radius: 2px;
}
.nav-pills > li + li {
margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
color: #fff;
background-color: #337ab7;
}
.nav-stacked > li {
float: none;
}
.nav-stacked > li + li {
margin-top: 2px;
margin-left: 0;
}
.nav-justified {
width: 100%;
}
.nav-justified > li {
float: none;
}
.nav-justified > li > a {
text-align: center;
margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
top: auto;
left: auto;
}
@media (min-width: 768px) {
.nav-justified > li {
display: table-cell;
width: 1%;
}
.nav-justified > li > a {
margin-bottom: 0;
}
}
.nav-tabs-justified {
border-bottom: 0;
}
.nav-tabs-justified > li > a {
margin-right: 0;
border-radius: 2px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
border: 1px solid #ddd;
}
@media (min-width: 768px) {
.nav-tabs-justified > li > a {
border-bottom: 1px solid #ddd;
border-radius: 2px 2px 0 0;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
border-bottom-color: #fff;
}
}
.tab-content > .tab-pane {
display: none;
}
.tab-content > .active {
display: block;
}
.nav-tabs .dropdown-menu {
margin-top: -1px;
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.navbar {
position: relative;
min-height: 30px;
margin-bottom: 18px;
border: 1px solid transparent;
}
@media (min-width: 541px) {
.navbar {
border-radius: 2px;
}
}
@media (min-width: 541px) {
.navbar-header {
float: left;
}
}
.navbar-collapse {
overflow-x: visible;
padding-right: 0px;
padding-left: 0px;
border-top: 1px solid transparent;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
-webkit-overflow-scrolling: touch;
}
.navbar-collapse.in {
overflow-y: auto;
}
@media (min-width: 541px) {
.navbar-collapse {
width: auto;
border-top: 0;
box-shadow: none;
}
.navbar-collapse.collapse {
display: block !important;
height: auto !important;
padding-bottom: 0;
overflow: visible !important;
}
.navbar-collapse.in {
overflow-y: visible;
}
.navbar-fixed-top .navbar-collapse,
.navbar-static-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
padding-left: 0;
padding-right: 0;
}
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
max-height: 340px;
}
@media (max-device-width: 540px) and (orientation: landscape) {
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
max-height: 200px;
}
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
margin-right: 0px;
margin-left: 0px;
}
@media (min-width: 541px) {
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
margin-right: 0;
margin-left: 0;
}
}
.navbar-static-top {
z-index: 1000;
border-width: 0 0 1px;
}
@media (min-width: 541px) {
.navbar-static-top {
border-radius: 0;
}
}
.navbar-fixed-top,
.navbar-fixed-bottom {
position: fixed;
right: 0;
left: 0;
z-index: 1030;
}
@media (min-width: 541px) {
.navbar-fixed-top,
.navbar-fixed-bottom {
border-radius: 0;
}
}
.navbar-fixed-top {
top: 0;
border-width: 0 0 1px;
}
.navbar-fixed-bottom {
bottom: 0;
margin-bottom: 0;
border-width: 1px 0 0;
}
.navbar-brand {
float: left;
padding: 6px 0px;
font-size: 17px;
line-height: 18px;
height: 30px;
}
.navbar-brand:hover,
.navbar-brand:focus {
text-decoration: none;
}
.navbar-brand > img {
display: block;
}
@media (min-width: 541px) {
.navbar > .container .navbar-brand,
.navbar > .container-fluid .navbar-brand {
margin-left: 0px;
}
}
.navbar-toggle {
position: relative;
float: right;
margin-right: 0px;
padding: 9px 10px;
margin-top: -2px;
margin-bottom: -2px;
background-color: transparent;
background-image: none;
border: 1px solid transparent;
border-radius: 2px;
}
.navbar-toggle:focus {
outline: 0;
}
.navbar-toggle .icon-bar {
display: block;
width: 22px;
height: 2px;
border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
margin-top: 4px;
}
@media (min-width: 541px) {
.navbar-toggle {
display: none;
}
}
.navbar-nav {
margin: 3px 0px;
}
.navbar-nav > li > a {
padding-top: 10px;
padding-bottom: 10px;
line-height: 18px;
}
@media (max-width: 540px) {
.navbar-nav .open .dropdown-menu {
position: static;
float: none;
width: auto;
margin-top: 0;
background-color: transparent;
border: 0;
box-shadow: none;
}
.navbar-nav .open .dropdown-menu > li > a,
.navbar-nav .open .dropdown-menu .dropdown-header {
padding: 5px 15px 5px 25px;
}
.navbar-nav .open .dropdown-menu > li > a {
line-height: 18px;
}
.navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-nav .open .dropdown-menu > li > a:focus {
background-image: none;
}
}
@media (min-width: 541px) {
.navbar-nav {
float: left;
margin: 0;
}
.navbar-nav > li {
float: left;
}
.navbar-nav > li > a {
padding-top: 6px;
padding-bottom: 6px;
}
}
.navbar-form {
margin-left: 0px;
margin-right: 0px;
padding: 10px 0px;
border-top: 1px solid transparent;
border-bottom: 1px solid transparent;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
margin-top: -1px;
margin-bottom: -1px;
}
@media (min-width: 768px) {
.navbar-form .form-group {
display: inline-block;
margin-bottom: 0;
vertical-align: middle;
}
.navbar-form .form-control {
display: inline-block;
width: auto;
vertical-align: middle;
}
.navbar-form .form-control-static {
display: inline-block;
}
.navbar-form .input-group {
display: inline-table;
vertical-align: middle;
}
.navbar-form .input-group .input-group-addon,
.navbar-form .input-group .input-group-btn,
.navbar-form .input-group .form-control {
width: auto;
}
.navbar-form .input-group > .form-control {
width: 100%;
}
.navbar-form .control-label {
margin-bottom: 0;
vertical-align: middle;
}
.navbar-form .radio,
.navbar-form .checkbox {
display: inline-block;
margin-top: 0;
margin-bottom: 0;
vertical-align: middle;
}
.navbar-form .radio label,
.navbar-form .checkbox label {
padding-left: 0;
}
.navbar-form .radio input[type="radio"],
.navbar-form .checkbox input[type="checkbox"] {
position: relative;
margin-left: 0;
}
.navbar-form .has-feedback .form-control-feedback {
top: 0;
}
}
@media (max-width: 540px) {
.navbar-form .form-group {
margin-bottom: 5px;
}
.navbar-form .form-group:last-child {
margin-bottom: 0;
}
}
@media (min-width: 541px) {
.navbar-form {
width: auto;
border: 0;
margin-left: 0;
margin-right: 0;
padding-top: 0;
padding-bottom: 0;
-webkit-box-shadow: none;
box-shadow: none;
}
}
.navbar-nav > li > .dropdown-menu {
margin-top: 0;
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
margin-bottom: 0;
border-top-right-radius: 2px;
border-top-left-radius: 2px;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.navbar-btn {
margin-top: -1px;
margin-bottom: -1px;
}
.navbar-btn.btn-sm {
margin-top: 0px;
margin-bottom: 0px;
}
.navbar-btn.btn-xs {
margin-top: 4px;
margin-bottom: 4px;
}
.navbar-text {
margin-top: 6px;
margin-bottom: 6px;
}
@media (min-width: 541px) {
.navbar-text {
float: left;
margin-left: 0px;
margin-right: 0px;
}
}
@media (min-width: 541px) {
.navbar-left {
float: left !important;
float: left;
}
.navbar-right {
float: right !important;
float: right;
margin-right: 0px;
}
.navbar-right ~ .navbar-right {
margin-right: 0;
}
}
.navbar-default {
background-color: #f8f8f8;
border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
color: #5e5e5e;
background-color: transparent;
}
.navbar-default .navbar-text {
color: #777;
}
.navbar-default .navbar-nav > li > a {
color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
color: #333;
background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
color: #555;
background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
color: #ccc;
background-color: transparent;
}
.navbar-default .navbar-toggle {
border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
background-color: #e7e7e7;
color: #555;
}
@media (max-width: 540px) {
.navbar-default .navbar-nav .open .dropdown-menu > li > a {
color: #777;
}
.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
color: #333;
background-color: transparent;
}
.navbar-default .navbar-nav .open .dropdown-menu > .active > a,
.navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #555;
background-color: #e7e7e7;
}
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
.navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
color: #ccc;
background-color: transparent;
}
}
.navbar-default .navbar-link {
color: #777;
}
.navbar-default .navbar-link:hover {
color: #333;
}
.navbar-default .btn-link {
color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
color: #ccc;
}
.navbar-inverse {
background-color: #222;
border-color: #080808;
}
.navbar-inverse .navbar-brand {
color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-text {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
color: #fff;
background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
color: #444;
background-color: transparent;
}
.navbar-inverse .navbar-toggle {
border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
background-color: #080808;
color: #fff;
}
@media (max-width: 540px) {
.navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
border-color: #080808;
}
.navbar-inverse .navbar-nav .open .dropdown-menu .divider {
background-color: #080808;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
color: #9d9d9d;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
color: #fff;
background-color: transparent;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #fff;
background-color: #080808;
}
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
.navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
color: #444;
background-color: transparent;
}
}
.navbar-inverse .navbar-link {
color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
color: #fff;
}
.navbar-inverse .btn-link {
color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
color: #444;
}
.breadcrumb {
padding: 8px 15px;
margin-bottom: 18px;
list-style: none;
background-color: #f5f5f5;
border-radius: 2px;
}
.breadcrumb > li {
display: inline-block;
}
.breadcrumb > li + li:before {
content: "/\00a0";
padding: 0 5px;
color: #5e5e5e;
}
.breadcrumb > .active {
color: #777777;
}
.pagination {
display: inline-block;
padding-left: 0;
margin: 18px 0;
border-radius: 2px;
}
.pagination > li {
display: inline;
}
.pagination > li > a,
.pagination > li > span {
position: relative;
float: left;
padding: 6px 12px;
line-height: 1.42857143;
text-decoration: none;
color: #337ab7;
background-color: #fff;
border: 1px solid #ddd;
margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
margin-left: 0;
border-bottom-left-radius: 2px;
border-top-left-radius: 2px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
border-bottom-right-radius: 2px;
border-top-right-radius: 2px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
z-index: 2;
color: #23527c;
background-color: #eeeeee;
border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
z-index: 3;
color: #fff;
background-color: #337ab7;
border-color: #337ab7;
cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
color: #777777;
background-color: #fff;
border-color: #ddd;
cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
padding: 10px 16px;
font-size: 17px;
line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
border-bottom-left-radius: 3px;
border-top-left-radius: 3px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
border-bottom-right-radius: 3px;
border-top-right-radius: 3px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
border-bottom-left-radius: 1px;
border-top-left-radius: 1px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
border-bottom-right-radius: 1px;
border-top-right-radius: 1px;
}
.pager {
padding-left: 0;
margin: 18px 0;
list-style: none;
text-align: center;
}
.pager li {
display: inline;
}
.pager li > a,
.pager li > span {
display: inline-block;
padding: 5px 14px;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
text-decoration: none;
background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
float: right;
}
.pager .previous > a,
.pager .previous > span {
float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
color: #777777;
background-color: #fff;
cursor: not-allowed;
}
.label {
display: inline;
padding: .2em .6em .3em;
font-size: 75%;
font-weight: bold;
line-height: 1;
color: #fff;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: .25em;
}
a.label:hover,
a.label:focus {
color: #fff;
text-decoration: none;
cursor: pointer;
}
.label:empty {
display: none;
}
.btn .label {
position: relative;
top: -1px;
}
.label-default {
background-color: #777777;
}
.label-default[href]:hover,
.label-default[href]:focus {
background-color: #5e5e5e;
}
.label-primary {
background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
background-color: #286090;
}
.label-success {
background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
background-color: #449d44;
}
.label-info {
background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
background-color: #31b0d5;
}
.label-warning {
background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
background-color: #ec971f;
}
.label-danger {
background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
background-color: #c9302c;
}
.badge {
display: inline-block;
min-width: 10px;
padding: 3px 7px;
font-size: 12px;
font-weight: bold;
color: #fff;
line-height: 1;
vertical-align: middle;
white-space: nowrap;
text-align: center;
background-color: #777777;
border-radius: 10px;
}
.badge:empty {
display: none;
}
.btn .badge {
position: relative;
top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
top: 0;
padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
color: #fff;
text-decoration: none;
cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
color: #337ab7;
background-color: #fff;
}
.list-group-item > .badge {
float: right;
}
.list-group-item > .badge + .badge {
margin-right: 5px;
}
.nav-pills > li > a > .badge {
margin-left: 3px;
}
.jumbotron {
padding-top: 30px;
padding-bottom: 30px;
margin-bottom: 30px;
color: inherit;
background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
color: inherit;
}
.jumbotron p {
margin-bottom: 15px;
font-size: 20px;
font-weight: 200;
}
.jumbotron > hr {
border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
border-radius: 3px;
padding-left: 0px;
padding-right: 0px;
}
.jumbotron .container {
max-width: 100%;
}
@media screen and (min-width: 768px) {
.jumbotron {
padding-top: 48px;
padding-bottom: 48px;
}
.container .jumbotron,
.container-fluid .jumbotron {
padding-left: 60px;
padding-right: 60px;
}
.jumbotron h1,
.jumbotron .h1 {
font-size: 59px;
}
}
.thumbnail {
display: block;
padding: 4px;
margin-bottom: 18px;
line-height: 1.42857143;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 2px;
-webkit-transition: border 0.2s ease-in-out;
-o-transition: border 0.2s ease-in-out;
transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
margin-left: auto;
margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
border-color: #337ab7;
}
.thumbnail .caption {
padding: 9px;
color: #000;
}
.alert {
padding: 15px;
margin-bottom: 18px;
border: 1px solid transparent;
border-radius: 2px;
}
.alert h4 {
margin-top: 0;
color: inherit;
}
.alert .alert-link {
font-weight: bold;
}
.alert > p,
.alert > ul {
margin-bottom: 0;
}
.alert > p + p {
margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
position: relative;
top: -2px;
right: -21px;
color: inherit;
}
.alert-success {
background-color: #dff0d8;
border-color: #d6e9c6;
color: #3c763d;
}
.alert-success hr {
border-top-color: #c9e2b3;
}
.alert-success .alert-link {
color: #2b542c;
}
.alert-info {
background-color: #d9edf7;
border-color: #bce8f1;
color: #31708f;
}
.alert-info hr {
border-top-color: #a6e1ec;
}
.alert-info .alert-link {
color: #245269;
}
.alert-warning {
background-color: #fcf8e3;
border-color: #faebcc;
color: #8a6d3b;
}
.alert-warning hr {
border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
color: #66512c;
}
.alert-danger {
background-color: #f2dede;
border-color: #ebccd1;
color: #a94442;
}
.alert-danger hr {
border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
from {
background-position: 40px 0;
}
to {
background-position: 0 0;
}
}
@keyframes progress-bar-stripes {
from {
background-position: 40px 0;
}
to {
background-position: 0 0;
}
}
.progress {
overflow: hidden;
height: 18px;
margin-bottom: 18px;
background-color: #f5f5f5;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.progress-bar {
float: left;
width: 0%;
height: 100%;
font-size: 12px;
line-height: 18px;
color: #fff;
text-align: center;
background-color: #337ab7;
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
-webkit-transition: width 0.6s ease;
-o-transition: width 0.6s ease;
transition: width 0.6s ease;
}
.progress-striped .progress-bar,
.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);
background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
-webkit-animation: progress-bar-stripes 2s linear infinite;
-o-animation: progress-bar-stripes 2s linear infinite;
animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
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);
}
.progress-bar-info {
background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
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);
}
.progress-bar-warning {
background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
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);
}
.progress-bar-danger {
background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
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);
}
.media {
margin-top: 15px;
}
.media:first-child {
margin-top: 0;
}
.media,
.media-body {
zoom: 1;
overflow: hidden;
}
.media-body {
width: 10000px;
}
.media-object {
display: block;
}
.media-object.img-thumbnail {
max-width: none;
}
.media-right,
.media > .pull-right {
padding-left: 10px;
}
.media-left,
.media > .pull-left {
padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
display: table-cell;
vertical-align: top;
}
.media-middle {
vertical-align: middle;
}
.media-bottom {
vertical-align: bottom;
}
.media-heading {
margin-top: 0;
margin-bottom: 5px;
}
.media-list {
padding-left: 0;
list-style: none;
}
.list-group {
margin-bottom: 20px;
padding-left: 0;
}
.list-group-item {
position: relative;
display: block;
padding: 10px 15px;
margin-bottom: -1px;
background-color: #fff;
border: 1px solid #ddd;
}
.list-group-item:first-child {
border-top-right-radius: 2px;
border-top-left-radius: 2px;
}
.list-group-item:last-child {
margin-bottom: 0;
border-bottom-right-radius: 2px;
border-bottom-left-radius: 2px;
}
a.list-group-item,
button.list-group-item {
color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
text-decoration: none;
color: #555;
background-color: #f5f5f5;
}
button.list-group-item {
width: 100%;
text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
background-color: #eeeeee;
color: #777777;
cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
color: #777777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
z-index: 2;
color: #fff;
background-color: #337ab7;
border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
color: #c7ddef;
}
.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:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
color: #3c763d;
background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
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:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
color: #31708f;
background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
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:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
color: #8a6d3b;
background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
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:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
color: #a94442;
background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
color: #fff;
background-color: #a94442;
border-color: #a94442;
}
.list-group-item-heading {
margin-top: 0;
margin-bottom: 5px;
}
.list-group-item-text {
margin-bottom: 0;
line-height: 1.3;
}
.panel {
margin-bottom: 18px;
background-color: #fff;
border: 1px solid transparent;
border-radius: 2px;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.panel-body {
padding: 15px;
}
.panel-heading {
padding: 10px 15px;
border-bottom: 1px solid transparent;
border-top-right-radius: 1px;
border-top-left-radius: 1px;
}
.panel-heading > .dropdown .dropdown-toggle {
color: inherit;
}
.panel-title {
margin-top: 0;
margin-bottom: 0;
font-size: 15px;
color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
color: inherit;
}
.panel-footer {
padding: 10px 15px;
background-color: #f5f5f5;
border-top: 1px solid #ddd;
border-bottom-right-radius: 1px;
border-bottom-left-radius: 1px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
border-width: 1px 0;
border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
border-top: 0;
border-top-right-radius: 1px;
border-top-left-radius: 1px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
border-bottom: 0;
border-bottom-right-radius: 1px;
border-bottom-left-radius: 1px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
border-top-right-radius: 0;
border-top-left-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
border-top-width: 0;
}
.list-group + .panel-footer {
border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
padding-left: 15px;
padding-right: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
border-top-right-radius: 1px;
border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
border-top-left-radius: 1px;
border-top-right-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
border-top-right-radius: 1px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
border-bottom-right-radius: 1px;
border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
border-bottom-left-radius: 1px;
border-bottom-right-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
border-bottom-right-radius: 1px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
border-bottom: 0;
}
.panel > .table-responsive {
border: 0;
margin-bottom: 0;
}
.panel-group {
margin-bottom: 18px;
}
.panel-group .panel {
margin-bottom: 0;
border-radius: 2px;
}
.panel-group .panel + .panel {
margin-top: 5px;
}
.panel-group .panel-heading {
border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
border-bottom: 1px solid #ddd;
}
.panel-default {
border-color: #ddd;
}
.panel-default > .panel-heading {
color: #333333;
background-color: #f5f5f5;
border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
color: #f5f5f5;
background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #ddd;
}
.panel-primary {
border-color: #337ab7;
}
.panel-primary > .panel-heading {
color: #fff;
background-color: #337ab7;
border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
color: #337ab7;
background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #337ab7;
}
.panel-success {
border-color: #d6e9c6;
}
.panel-success > .panel-heading {
color: #3c763d;
background-color: #dff0d8;
border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
color: #dff0d8;
background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #d6e9c6;
}
.panel-info {
border-color: #bce8f1;
}
.panel-info > .panel-heading {
color: #31708f;
background-color: #d9edf7;
border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
color: #d9edf7;
background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #bce8f1;
}
.panel-warning {
border-color: #faebcc;
}
.panel-warning > .panel-heading {
color: #8a6d3b;
background-color: #fcf8e3;
border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
color: #fcf8e3;
background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #faebcc;
}
.panel-danger {
border-color: #ebccd1;
}
.panel-danger > .panel-heading {
color: #a94442;
background-color: #f2dede;
border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
color: #f2dede;
background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
border-bottom-color: #ebccd1;
}
.embed-responsive {
position: relative;
display: block;
height: 0;
padding: 0;
overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
position: absolute;
top: 0;
left: 0;
bottom: 0;
height: 100%;
width: 100%;
border: 0;
}
.embed-responsive-16by9 {
padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
padding-bottom: 75%;
}
.well {
min-height: 20px;
padding: 19px;
margin-bottom: 20px;
background-color: #f5f5f5;
border: 1px solid #e3e3e3;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
border-color: #ddd;
border-color: rgba(0, 0, 0, 0.15);
}
.well-lg {
padding: 24px;
border-radius: 3px;
}
.well-sm {
padding: 9px;
border-radius: 1px;
}
.close {
float: right;
font-size: 19.5px;
font-weight: bold;
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
opacity: 0.2;
filter: alpha(opacity=20);
}
.close:hover,
.close:focus {
color: #000;
text-decoration: none;
cursor: pointer;
opacity: 0.5;
filter: alpha(opacity=50);
}
button.close {
padding: 0;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none;
}
.modal-open {
overflow: hidden;
}
.modal {
display: none;
overflow: hidden;
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1050;
-webkit-overflow-scrolling: touch;
outline: 0;
}
.modal.fade .modal-dialog {
-webkit-transform: translate(0, -25%);
-ms-transform: translate(0, -25%);
-o-transform: translate(0, -25%);
transform: translate(0, -25%);
-webkit-transition: -webkit-transform 0.3s ease-out;
-moz-transition: -moz-transform 0.3s ease-out;
-o-transition: -o-transform 0.3s ease-out;
transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
-webkit-transform: translate(0, 0);
-ms-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;
background-color: #fff;
border: 1px solid #999;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 3px;
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
background-clip: padding-box;
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;
filter: alpha(opacity=0);
}
.modal-backdrop.in {
opacity: 0.5;
filter: alpha(opacity=50);
}
.modal-header {
padding: 15px;
border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
margin-top: -2px;
}
.modal-title {
margin: 0;
line-height: 1.42857143;
}
.modal-body {
position: relative;
padding: 15px;
}
.modal-footer {
padding: 15px;
text-align: right;
border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
margin-left: 5px;
margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
margin-left: 0;
}
.modal-scrollbar-measure {
position: absolute;
top: -9999px;
width: 50px;
height: 50px;
overflow: scroll;
}
@media (min-width: 768px) {
.modal-dialog {
width: 600px;
margin: 30px auto;
}
.modal-content {
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}
.modal-sm {
width: 300px;
}
}
@media (min-width: 992px) {
.modal-lg {
width: 900px;
}
}
.tooltip {
position: absolute;
z-index: 1070;
display: block;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.42857143;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
word-wrap: normal;
font-size: 12px;
opacity: 0;
filter: alpha(opacity=0);
}
.tooltip.in {
opacity: 0.9;
filter: alpha(opacity=90);
}
.tooltip.top {
margin-top: -3px;
padding: 5px 0;
}
.tooltip.right {
margin-left: 3px;
padding: 0 5px;
}
.tooltip.bottom {
margin-top: 3px;
padding: 5px 0;
}
.tooltip.left {
margin-left: -3px;
padding: 0 5px;
}
.tooltip-inner {
max-width: 200px;
padding: 3px 8px;
color: #fff;
text-align: center;
background-color: #000;
border-radius: 2px;
}
.tooltip-arrow {
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.tooltip.top .tooltip-arrow {
bottom: 0;
left: 50%;
margin-left: -5px;
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
bottom: 0;
right: 5px;
margin-bottom: -5px;
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
bottom: 0;
left: 5px;
margin-bottom: -5px;
border-width: 5px 5px 0;
border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
top: 50%;
left: 0;
margin-top: -5px;
border-width: 5px 5px 5px 0;
border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
top: 50%;
right: 0;
margin-top: -5px;
border-width: 5px 0 5px 5px;
border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
top: 0;
left: 50%;
margin-left: -5px;
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
top: 0;
right: 5px;
margin-top: -5px;
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
top: 0;
left: 5px;
margin-top: -5px;
border-width: 0 5px 5px;
border-bottom-color: #000;
}
.popover {
position: absolute;
top: 0;
left: 0;
z-index: 1060;
display: none;
max-width: 276px;
padding: 1px;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-style: normal;
font-weight: normal;
letter-spacing: normal;
line-break: auto;
line-height: 1.42857143;
text-align: left;
text-align: start;
text-decoration: none;
text-shadow: none;
text-transform: none;
white-space: normal;
word-break: normal;
word-spacing: normal;
word-wrap: normal;
font-size: 13px;
background-color: #fff;
background-clip: padding-box;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 3px;
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
margin-top: -10px;
}
.popover.right {
margin-left: 10px;
}
.popover.bottom {
margin-top: 10px;
}
.popover.left {
margin-left: -10px;
}
.popover-title {
margin: 0;
padding: 8px 14px;
font-size: 13px;
background-color: #f7f7f7;
border-bottom: 1px solid #ebebeb;
border-radius: 2px 2px 0 0;
}
.popover-content {
padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
position: absolute;
display: block;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
.popover > .arrow {
border-width: 11px;
}
.popover > .arrow:after {
border-width: 10px;
content: "";
}
.popover.top > .arrow {
left: 50%;
margin-left: -11px;
border-bottom-width: 0;
border-top-color: #999999;
border-top-color: rgba(0, 0, 0, 0.25);
bottom: -11px;
}
.popover.top > .arrow:after {
content: " ";
bottom: 1px;
margin-left: -10px;
border-bottom-width: 0;
border-top-color: #fff;
}
.popover.right > .arrow {
top: 50%;
left: -11px;
margin-top: -11px;
border-left-width: 0;
border-right-color: #999999;
border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
content: " ";
left: 1px;
bottom: -10px;
border-left-width: 0;
border-right-color: #fff;
}
.popover.bottom > .arrow {
left: 50%;
margin-left: -11px;
border-top-width: 0;
border-bottom-color: #999999;
border-bottom-color: rgba(0, 0, 0, 0.25);
top: -11px;
}
.popover.bottom > .arrow:after {
content: " ";
top: 1px;
margin-left: -10px;
border-top-width: 0;
border-bottom-color: #fff;
}
.popover.left > .arrow {
top: 50%;
right: -11px;
margin-top: -11px;
border-right-width: 0;
border-left-color: #999999;
border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
content: " ";
right: 1px;
border-right-width: 0;
border-left-color: #fff;
bottom: -10px;
}
.carousel {
position: relative;
}
.carousel-inner {
position: relative;
overflow: hidden;
width: 100%;
}
.carousel-inner > .item {
display: none;
position: relative;
-webkit-transition: 0.6s ease-in-out left;
-o-transition: 0.6s ease-in-out left;
transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
.carousel-inner > .item {
-webkit-transition: -webkit-transform 0.6s ease-in-out;
-moz-transition: -moz-transform 0.6s ease-in-out;
-o-transition: -o-transform 0.6s ease-in-out;
transition: transform 0.6s ease-in-out;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
backface-visibility: hidden;
-webkit-perspective: 1000px;
-moz-perspective: 1000px;
perspective: 1000px;
}
.carousel-inner > .item.next,
.carousel-inner > .item.active.right {
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
left: 0;
}
.carousel-inner > .item.prev,
.carousel-inner > .item.active.left {
-webkit-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
left: 0;
}
.carousel-inner > .item.next.left,
.carousel-inner > .item.prev.right,
.carousel-inner > .item.active {
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
left: 0;
}
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
display: block;
}
.carousel-inner > .active {
left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
position: absolute;
top: 0;
width: 100%;
}
.carousel-inner > .next {
left: 100%;
}
.carousel-inner > .prev {
left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
left: 0;
}
.carousel-inner > .active.left {
left: -100%;
}
.carousel-inner > .active.right {
left: 100%;
}
.carousel-control {
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 15%;
opacity: 0.5;
filter: alpha(opacity=50);
font-size: 20px;
color: #fff;
text-align: center;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
background-color: rgba(0, 0, 0, 0);
}
.carousel-control.left {
background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
left: auto;
right: 0;
background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
outline: 0;
color: #fff;
text-decoration: none;
opacity: 0.9;
filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
position: absolute;
top: 50%;
margin-top: -10px;
z-index: 5;
display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
left: 50%;
margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
right: 50%;
margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
width: 20px;
height: 20px;
line-height: 1;
font-family: serif;
}
.carousel-control .icon-prev:before {
content: '\2039';
}
.carousel-control .icon-next:before {
content: '\203a';
}
.carousel-indicators {
position: absolute;
bottom: 10px;
left: 50%;
z-index: 15;
width: 60%;
margin-left: -30%;
padding-left: 0;
list-style: none;
text-align: center;
}
.carousel-indicators li {
display: inline-block;
width: 10px;
height: 10px;
margin: 1px;
text-indent: -999px;
border: 1px solid #fff;
border-radius: 10px;
cursor: pointer;
background-color: #000 \9;
background-color: rgba(0, 0, 0, 0);
}
.carousel-indicators .active {
margin: 0;
width: 12px;
height: 12px;
background-color: #fff;
}
.carousel-caption {
position: absolute;
left: 15%;
right: 15%;
bottom: 20px;
z-index: 10;
padding-top: 20px;
padding-bottom: 20px;
color: #fff;
text-align: center;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
text-shadow: none;
}
@media screen and (min-width: 768px) {
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right,
.carousel-control .icon-prev,
.carousel-control .icon-next {
width: 30px;
height: 30px;
margin-top: -10px;
font-size: 30px;
}
.carousel-control .glyphicon-chevron-left,
.carousel-control .icon-prev {
margin-left: -10px;
}
.carousel-control .glyphicon-chevron-right,
.carousel-control .icon-next {
margin-right: -10px;
}
.carousel-caption {
left: 20%;
right: 20%;
padding-bottom: 30px;
}
.carousel-indicators {
bottom: 20px;
}
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after,
.item_buttons:before,
.item_buttons:after {
content: " ";
display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after,
.item_buttons:after {
clear: both;
}
.center-block {
display: block;
margin-left: auto;
margin-right: auto;
}
.pull-right {
float: right !important;
}
.pull-left {
float: left !important;
}
.hide {
display: none !important;
}
.show {
display: block !important;
}
.invisible {
visibility: hidden;
}
.text-hide {
font: 0/0 a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
.hidden {
display: none !important;
}
.affix {
position: fixed;
}
@-ms-viewport {
width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
display: none !important;
}
@media (max-width: 767px) {
.visible-xs {
display: block !important;
}
table.visible-xs {
display: table !important;
}
tr.visible-xs {
display: table-row !important;
}
th.visible-xs,
td.visible-xs {
display: table-cell !important;
}
}
@media (max-width: 767px) {
.visible-xs-block {
display: block !important;
}
}
@media (max-width: 767px) {
.visible-xs-inline {
display: inline !important;
}
}
@media (max-width: 767px) {
.visible-xs-inline-block {
display: inline-block !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm {
display: block !important;
}
table.visible-sm {
display: table !important;
}
tr.visible-sm {
display: table-row !important;
}
th.visible-sm,
td.visible-sm {
display: table-cell !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm-block {
display: block !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm-inline {
display: inline !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.visible-sm-inline-block {
display: inline-block !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md {
display: block !important;
}
table.visible-md {
display: table !important;
}
tr.visible-md {
display: table-row !important;
}
th.visible-md,
td.visible-md {
display: table-cell !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md-block {
display: block !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md-inline {
display: inline !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.visible-md-inline-block {
display: inline-block !important;
}
}
@media (min-width: 1200px) {
.visible-lg {
display: block !important;
}
table.visible-lg {
display: table !important;
}
tr.visible-lg {
display: table-row !important;
}
th.visible-lg,
td.visible-lg {
display: table-cell !important;
}
}
@media (min-width: 1200px) {
.visible-lg-block {
display: block !important;
}
}
@media (min-width: 1200px) {
.visible-lg-inline {
display: inline !important;
}
}
@media (min-width: 1200px) {
.visible-lg-inline-block {
display: inline-block !important;
}
}
@media (max-width: 767px) {
.hidden-xs {
display: none !important;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.hidden-sm {
display: none !important;
}
}
@media (min-width: 992px) and (max-width: 1199px) {
.hidden-md {
display: none !important;
}
}
@media (min-width: 1200px) {
.hidden-lg {
display: none !important;
}
}
.visible-print {
display: none !important;
}
@media print {
.visible-print {
display: block !important;
}
table.visible-print {
display: table !important;
}
tr.visible-print {
display: table-row !important;
}
th.visible-print,
td.visible-print {
display: table-cell !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;
}
}
/*!
*
* Font Awesome
*
*/
/*!
* Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
/* FONT PATH
* -------------------------- */
@font-face {
font-family: 'FontAwesome';
src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0');
src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
.fa {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
font-size: 1.33333333em;
line-height: 0.75em;
vertical-align: -15%;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-fw {
width: 1.28571429em;
text-align: center;
}
.fa-ul {
padding-left: 0;
margin-left: 2.14285714em;
list-style-type: none;
}
.fa-ul > li {
position: relative;
}
.fa-li {
position: absolute;
left: -2.14285714em;
width: 2.14285714em;
top: 0.14285714em;
text-align: center;
}
.fa-li.fa-lg {
left: -1.85714286em;
}
.fa-border {
padding: .2em .25em .15em;
border: solid 0.08em #eee;
border-radius: .1em;
}
.pull-right {
float: right;
}
.pull-left {
float: left;
}
.fa.pull-left {
margin-right: .3em;
}
.fa.pull-right {
margin-left: .3em;
}
.fa-spin {
-webkit-animation: fa-spin 2s infinite linear;
animation: fa-spin 2s infinite linear;
}
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
.fa-rotate-90 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
-webkit-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
.fa-rotate-180 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
-webkit-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);
}
.fa-rotate-270 {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
-webkit-transform: rotate(270deg);
-ms-transform: rotate(270deg);
transform: rotate(270deg);
}
.fa-flip-horizontal {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
-webkit-transform: scale(-1, 1);
-ms-transform: scale(-1, 1);
transform: scale(-1, 1);
}
.fa-flip-vertical {
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
-webkit-transform: scale(1, -1);
-ms-transform: scale(1, -1);
transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
filter: none;
}
.fa-stack {
position: relative;
display: inline-block;
width: 2em;
height: 2em;
line-height: 2em;
vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
position: absolute;
left: 0;
width: 100%;
text-align: center;
}
.fa-stack-1x {
line-height: inherit;
}
.fa-stack-2x {
font-size: 2em;
}
.fa-inverse {
color: #fff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-glass:before {
content: "\f000";
}
.fa-music:before {
content: "\f001";
}
.fa-search:before {
content: "\f002";
}
.fa-envelope-o:before {
content: "\f003";
}
.fa-heart:before {
content: "\f004";
}
.fa-star:before {
content: "\f005";
}
.fa-star-o:before {
content: "\f006";
}
.fa-user:before {
content: "\f007";
}
.fa-film:before {
content: "\f008";
}
.fa-th-large:before {
content: "\f009";
}
.fa-th:before {
content: "\f00a";
}
.fa-th-list:before {
content: "\f00b";
}
.fa-check:before {
content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
content: "\f00d";
}
.fa-search-plus:before {
content: "\f00e";
}
.fa-search-minus:before {
content: "\f010";
}
.fa-power-off:before {
content: "\f011";
}
.fa-signal:before {
content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
content: "\f013";
}
.fa-trash-o:before {
content: "\f014";
}
.fa-home:before {
content: "\f015";
}
.fa-file-o:before {
content: "\f016";
}
.fa-clock-o:before {
content: "\f017";
}
.fa-road:before {
content: "\f018";
}
.fa-download:before {
content: "\f019";
}
.fa-arrow-circle-o-down:before {
content: "\f01a";
}
.fa-arrow-circle-o-up:before {
content: "\f01b";
}
.fa-inbox:before {
content: "\f01c";
}
.fa-play-circle-o:before {
content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
content: "\f01e";
}
.fa-refresh:before {
content: "\f021";
}
.fa-list-alt:before {
content: "\f022";
}
.fa-lock:before {
content: "\f023";
}
.fa-flag:before {
content: "\f024";
}
.fa-headphones:before {
content: "\f025";
}
.fa-volume-off:before {
content: "\f026";
}
.fa-volume-down:before {
content: "\f027";
}
.fa-volume-up:before {
content: "\f028";
}
.fa-qrcode:before {
content: "\f029";
}
.fa-barcode:before {
content: "\f02a";
}
.fa-tag:before {
content: "\f02b";
}
.fa-tags:before {
content: "\f02c";
}
.fa-book:before {
content: "\f02d";
}
.fa-bookmark:before {
content: "\f02e";
}
.fa-print:before {
content: "\f02f";
}
.fa-camera:before {
content: "\f030";
}
.fa-font:before {
content: "\f031";
}
.fa-bold:before {
content: "\f032";
}
.fa-italic:before {
content: "\f033";
}
.fa-text-height:before {
content: "\f034";
}
.fa-text-width:before {
content: "\f035";
}
.fa-align-left:before {
content: "\f036";
}
.fa-align-center:before {
content: "\f037";
}
.fa-align-right:before {
content: "\f038";
}
.fa-align-justify:before {
content: "\f039";
}
.fa-list:before {
content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
content: "\f03b";
}
.fa-indent:before {
content: "\f03c";
}
.fa-video-camera:before {
content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
content: "\f03e";
}
.fa-pencil:before {
content: "\f040";
}
.fa-map-marker:before {
content: "\f041";
}
.fa-adjust:before {
content: "\f042";
}
.fa-tint:before {
content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
content: "\f044";
}
.fa-share-square-o:before {
content: "\f045";
}
.fa-check-square-o:before {
content: "\f046";
}
.fa-arrows:before {
content: "\f047";
}
.fa-step-backward:before {
content: "\f048";
}
.fa-fast-backward:before {
content: "\f049";
}
.fa-backward:before {
content: "\f04a";
}
.fa-play:before {
content: "\f04b";
}
.fa-pause:before {
content: "\f04c";
}
.fa-stop:before {
content: "\f04d";
}
.fa-forward:before {
content: "\f04e";
}
.fa-fast-forward:before {
content: "\f050";
}
.fa-step-forward:before {
content: "\f051";
}
.fa-eject:before {
content: "\f052";
}
.fa-chevron-left:before {
content: "\f053";
}
.fa-chevron-right:before {
content: "\f054";
}
.fa-plus-circle:before {
content: "\f055";
}
.fa-minus-circle:before {
content: "\f056";
}
.fa-times-circle:before {
content: "\f057";
}
.fa-check-circle:before {
content: "\f058";
}
.fa-question-circle:before {
content: "\f059";
}
.fa-info-circle:before {
content: "\f05a";
}
.fa-crosshairs:before {
content: "\f05b";
}
.fa-times-circle-o:before {
content: "\f05c";
}
.fa-check-circle-o:before {
content: "\f05d";
}
.fa-ban:before {
content: "\f05e";
}
.fa-arrow-left:before {
content: "\f060";
}
.fa-arrow-right:before {
content: "\f061";
}
.fa-arrow-up:before {
content: "\f062";
}
.fa-arrow-down:before {
content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
content: "\f064";
}
.fa-expand:before {
content: "\f065";
}
.fa-compress:before {
content: "\f066";
}
.fa-plus:before {
content: "\f067";
}
.fa-minus:before {
content: "\f068";
}
.fa-asterisk:before {
content: "\f069";
}
.fa-exclamation-circle:before {
content: "\f06a";
}
.fa-gift:before {
content: "\f06b";
}
.fa-leaf:before {
content: "\f06c";
}
.fa-fire:before {
content: "\f06d";
}
.fa-eye:before {
content: "\f06e";
}
.fa-eye-slash:before {
content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
content: "\f071";
}
.fa-plane:before {
content: "\f072";
}
.fa-calendar:before {
content: "\f073";
}
.fa-random:before {
content: "\f074";
}
.fa-comment:before {
content: "\f075";
}
.fa-magnet:before {
content: "\f076";
}
.fa-chevron-up:before {
content: "\f077";
}
.fa-chevron-down:before {
content: "\f078";
}
.fa-retweet:before {
content: "\f079";
}
.fa-shopping-cart:before {
content: "\f07a";
}
.fa-folder:before {
content: "\f07b";
}
.fa-folder-open:before {
content: "\f07c";
}
.fa-arrows-v:before {
content: "\f07d";
}
.fa-arrows-h:before {
content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
content: "\f080";
}
.fa-twitter-square:before {
content: "\f081";
}
.fa-facebook-square:before {
content: "\f082";
}
.fa-camera-retro:before {
content: "\f083";
}
.fa-key:before {
content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
content: "\f085";
}
.fa-comments:before {
content: "\f086";
}
.fa-thumbs-o-up:before {
content: "\f087";
}
.fa-thumbs-o-down:before {
content: "\f088";
}
.fa-star-half:before {
content: "\f089";
}
.fa-heart-o:before {
content: "\f08a";
}
.fa-sign-out:before {
content: "\f08b";
}
.fa-linkedin-square:before {
content: "\f08c";
}
.fa-thumb-tack:before {
content: "\f08d";
}
.fa-external-link:before {
content: "\f08e";
}
.fa-sign-in:before {
content: "\f090";
}
.fa-trophy:before {
content: "\f091";
}
.fa-github-square:before {
content: "\f092";
}
.fa-upload:before {
content: "\f093";
}
.fa-lemon-o:before {
content: "\f094";
}
.fa-phone:before {
content: "\f095";
}
.fa-square-o:before {
content: "\f096";
}
.fa-bookmark-o:before {
content: "\f097";
}
.fa-phone-square:before {
content: "\f098";
}
.fa-twitter:before {
content: "\f099";
}
.fa-facebook:before {
content: "\f09a";
}
.fa-github:before {
content: "\f09b";
}
.fa-unlock:before {
content: "\f09c";
}
.fa-credit-card:before {
content: "\f09d";
}
.fa-rss:before {
content: "\f09e";
}
.fa-hdd-o:before {
content: "\f0a0";
}
.fa-bullhorn:before {
content: "\f0a1";
}
.fa-bell:before {
content: "\f0f3";
}
.fa-certificate:before {
content: "\f0a3";
}
.fa-hand-o-right:before {
content: "\f0a4";
}
.fa-hand-o-left:before {
content: "\f0a5";
}
.fa-hand-o-up:before {
content: "\f0a6";
}
.fa-hand-o-down:before {
content: "\f0a7";
}
.fa-arrow-circle-left:before {
content: "\f0a8";
}
.fa-arrow-circle-right:before {
content: "\f0a9";
}
.fa-arrow-circle-up:before {
content: "\f0aa";
}
.fa-arrow-circle-down:before {
content: "\f0ab";
}
.fa-globe:before {
content: "\f0ac";
}
.fa-wrench:before {
content: "\f0ad";
}
.fa-tasks:before {
content: "\f0ae";
}
.fa-filter:before {
content: "\f0b0";
}
.fa-briefcase:before {
content: "\f0b1";
}
.fa-arrows-alt:before {
content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
content: "\f0c1";
}
.fa-cloud:before {
content: "\f0c2";
}
.fa-flask:before {
content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
content: "\f0c5";
}
.fa-paperclip:before {
content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
content: "\f0c7";
}
.fa-square:before {
content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
content: "\f0c9";
}
.fa-list-ul:before {
content: "\f0ca";
}
.fa-list-ol:before {
content: "\f0cb";
}
.fa-strikethrough:before {
content: "\f0cc";
}
.fa-underline:before {
content: "\f0cd";
}
.fa-table:before {
content: "\f0ce";
}
.fa-magic:before {
content: "\f0d0";
}
.fa-truck:before {
content: "\f0d1";
}
.fa-pinterest:before {
content: "\f0d2";
}
.fa-pinterest-square:before {
content: "\f0d3";
}
.fa-google-plus-square:before {
content: "\f0d4";
}
.fa-google-plus:before {
content: "\f0d5";
}
.fa-money:before {
content: "\f0d6";
}
.fa-caret-down:before {
content: "\f0d7";
}
.fa-caret-up:before {
content: "\f0d8";
}
.fa-caret-left:before {
content: "\f0d9";
}
.fa-caret-right:before {
content: "\f0da";
}
.fa-columns:before {
content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
content: "\f0de";
}
.fa-envelope:before {
content: "\f0e0";
}
.fa-linkedin:before {
content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
content: "\f0e4";
}
.fa-comment-o:before {
content: "\f0e5";
}
.fa-comments-o:before {
content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
content: "\f0e7";
}
.fa-sitemap:before {
content: "\f0e8";
}
.fa-umbrella:before {
content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
content: "\f0ea";
}
.fa-lightbulb-o:before {
content: "\f0eb";
}
.fa-exchange:before {
content: "\f0ec";
}
.fa-cloud-download:before {
content: "\f0ed";
}
.fa-cloud-upload:before {
content: "\f0ee";
}
.fa-user-md:before {
content: "\f0f0";
}
.fa-stethoscope:before {
content: "\f0f1";
}
.fa-suitcase:before {
content: "\f0f2";
}
.fa-bell-o:before {
content: "\f0a2";
}
.fa-coffee:before {
content: "\f0f4";
}
.fa-cutlery:before {
content: "\f0f5";
}
.fa-file-text-o:before {
content: "\f0f6";
}
.fa-building-o:before {
content: "\f0f7";
}
.fa-hospital-o:before {
content: "\f0f8";
}
.fa-ambulance:before {
content: "\f0f9";
}
.fa-medkit:before {
content: "\f0fa";
}
.fa-fighter-jet:before {
content: "\f0fb";
}
.fa-beer:before {
content: "\f0fc";
}
.fa-h-square:before {
content: "\f0fd";
}
.fa-plus-square:before {
content: "\f0fe";
}
.fa-angle-double-left:before {
content: "\f100";
}
.fa-angle-double-right:before {
content: "\f101";
}
.fa-angle-double-up:before {
content: "\f102";
}
.fa-angle-double-down:before {
content: "\f103";
}
.fa-angle-left:before {
content: "\f104";
}
.fa-angle-right:before {
content: "\f105";
}
.fa-angle-up:before {
content: "\f106";
}
.fa-angle-down:before {
content: "\f107";
}
.fa-desktop:before {
content: "\f108";
}
.fa-laptop:before {
content: "\f109";
}
.fa-tablet:before {
content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
content: "\f10b";
}
.fa-circle-o:before {
content: "\f10c";
}
.fa-quote-left:before {
content: "\f10d";
}
.fa-quote-right:before {
content: "\f10e";
}
.fa-spinner:before {
content: "\f110";
}
.fa-circle:before {
content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
content: "\f112";
}
.fa-github-alt:before {
content: "\f113";
}
.fa-folder-o:before {
content: "\f114";
}
.fa-folder-open-o:before {
content: "\f115";
}
.fa-smile-o:before {
content: "\f118";
}
.fa-frown-o:before {
content: "\f119";
}
.fa-meh-o:before {
content: "\f11a";
}
.fa-gamepad:before {
content: "\f11b";
}
.fa-keyboard-o:before {
content: "\f11c";
}
.fa-flag-o:before {
content: "\f11d";
}
.fa-flag-checkered:before {
content: "\f11e";
}
.fa-terminal:before {
content: "\f120";
}
.fa-code:before {
content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
content: "\f123";
}
.fa-location-arrow:before {
content: "\f124";
}
.fa-crop:before {
content: "\f125";
}
.fa-code-fork:before {
content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
content: "\f127";
}
.fa-question:before {
content: "\f128";
}
.fa-info:before {
content: "\f129";
}
.fa-exclamation:before {
content: "\f12a";
}
.fa-superscript:before {
content: "\f12b";
}
.fa-subscript:before {
content: "\f12c";
}
.fa-eraser:before {
content: "\f12d";
}
.fa-puzzle-piece:before {
content: "\f12e";
}
.fa-microphone:before {
content: "\f130";
}
.fa-microphone-slash:before {
content: "\f131";
}
.fa-shield:before {
content: "\f132";
}
.fa-calendar-o:before {
content: "\f133";
}
.fa-fire-extinguisher:before {
content: "\f134";
}
.fa-rocket:before {
content: "\f135";
}
.fa-maxcdn:before {
content: "\f136";
}
.fa-chevron-circle-left:before {
content: "\f137";
}
.fa-chevron-circle-right:before {
content: "\f138";
}
.fa-chevron-circle-up:before {
content: "\f139";
}
.fa-chevron-circle-down:before {
content: "\f13a";
}
.fa-html5:before {
content: "\f13b";
}
.fa-css3:before {
content: "\f13c";
}
.fa-anchor:before {
content: "\f13d";
}
.fa-unlock-alt:before {
content: "\f13e";
}
.fa-bullseye:before {
content: "\f140";
}
.fa-ellipsis-h:before {
content: "\f141";
}
.fa-ellipsis-v:before {
content: "\f142";
}
.fa-rss-square:before {
content: "\f143";
}
.fa-play-circle:before {
content: "\f144";
}
.fa-ticket:before {
content: "\f145";
}
.fa-minus-square:before {
content: "\f146";
}
.fa-minus-square-o:before {
content: "\f147";
}
.fa-level-up:before {
content: "\f148";
}
.fa-level-down:before {
content: "\f149";
}
.fa-check-square:before {
content: "\f14a";
}
.fa-pencil-square:before {
content: "\f14b";
}
.fa-external-link-square:before {
content: "\f14c";
}
.fa-share-square:before {
content: "\f14d";
}
.fa-compass:before {
content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
content: "\f153";
}
.fa-gbp:before {
content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
content: "\f158";
}
.fa-won:before,
.fa-krw:before {
content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
content: "\f15a";
}
.fa-file:before {
content: "\f15b";
}
.fa-file-text:before {
content: "\f15c";
}
.fa-sort-alpha-asc:before {
content: "\f15d";
}
.fa-sort-alpha-desc:before {
content: "\f15e";
}
.fa-sort-amount-asc:before {
content: "\f160";
}
.fa-sort-amount-desc:before {
content: "\f161";
}
.fa-sort-numeric-asc:before {
content: "\f162";
}
.fa-sort-numeric-desc:before {
content: "\f163";
}
.fa-thumbs-up:before {
content: "\f164";
}
.fa-thumbs-down:before {
content: "\f165";
}
.fa-youtube-square:before {
content: "\f166";
}
.fa-youtube:before {
content: "\f167";
}
.fa-xing:before {
content: "\f168";
}
.fa-xing-square:before {
content: "\f169";
}
.fa-youtube-play:before {
content: "\f16a";
}
.fa-dropbox:before {
content: "\f16b";
}
.fa-stack-overflow:before {
content: "\f16c";
}
.fa-instagram:before {
content: "\f16d";
}
.fa-flickr:before {
content: "\f16e";
}
.fa-adn:before {
content: "\f170";
}
.fa-bitbucket:before {
content: "\f171";
}
.fa-bitbucket-square:before {
content: "\f172";
}
.fa-tumblr:before {
content: "\f173";
}
.fa-tumblr-square:before {
content: "\f174";
}
.fa-long-arrow-down:before {
content: "\f175";
}
.fa-long-arrow-up:before {
content: "\f176";
}
.fa-long-arrow-left:before {
content: "\f177";
}
.fa-long-arrow-right:before {
content: "\f178";
}
.fa-apple:before {
content: "\f179";
}
.fa-windows:before {
content: "\f17a";
}
.fa-android:before {
content: "\f17b";
}
.fa-linux:before {
content: "\f17c";
}
.fa-dribbble:before {
content: "\f17d";
}
.fa-skype:before {
content: "\f17e";
}
.fa-foursquare:before {
content: "\f180";
}
.fa-trello:before {
content: "\f181";
}
.fa-female:before {
content: "\f182";
}
.fa-male:before {
content: "\f183";
}
.fa-gittip:before {
content: "\f184";
}
.fa-sun-o:before {
content: "\f185";
}
.fa-moon-o:before {
content: "\f186";
}
.fa-archive:before {
content: "\f187";
}
.fa-bug:before {
content: "\f188";
}
.fa-vk:before {
content: "\f189";
}
.fa-weibo:before {
content: "\f18a";
}
.fa-renren:before {
content: "\f18b";
}
.fa-pagelines:before {
content: "\f18c";
}
.fa-stack-exchange:before {
content: "\f18d";
}
.fa-arrow-circle-o-right:before {
content: "\f18e";
}
.fa-arrow-circle-o-left:before {
content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
content: "\f191";
}
.fa-dot-circle-o:before {
content: "\f192";
}
.fa-wheelchair:before {
content: "\f193";
}
.fa-vimeo-square:before {
content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
content: "\f195";
}
.fa-plus-square-o:before {
content: "\f196";
}
.fa-space-shuttle:before {
content: "\f197";
}
.fa-slack:before {
content: "\f198";
}
.fa-envelope-square:before {
content: "\f199";
}
.fa-wordpress:before {
content: "\f19a";
}
.fa-openid:before {
content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
content: "\f19d";
}
.fa-yahoo:before {
content: "\f19e";
}
.fa-google:before {
content: "\f1a0";
}
.fa-reddit:before {
content: "\f1a1";
}
.fa-reddit-square:before {
content: "\f1a2";
}
.fa-stumbleupon-circle:before {
content: "\f1a3";
}
.fa-stumbleupon:before {
content: "\f1a4";
}
.fa-delicious:before {
content: "\f1a5";
}
.fa-digg:before {
content: "\f1a6";
}
.fa-pied-piper:before {
content: "\f1a7";
}
.fa-pied-piper-alt:before {
content: "\f1a8";
}
.fa-drupal:before {
content: "\f1a9";
}
.fa-joomla:before {
content: "\f1aa";
}
.fa-language:before {
content: "\f1ab";
}
.fa-fax:before {
content: "\f1ac";
}
.fa-building:before {
content: "\f1ad";
}
.fa-child:before {
content: "\f1ae";
}
.fa-paw:before {
content: "\f1b0";
}
.fa-spoon:before {
content: "\f1b1";
}
.fa-cube:before {
content: "\f1b2";
}
.fa-cubes:before {
content: "\f1b3";
}
.fa-behance:before {
content: "\f1b4";
}
.fa-behance-square:before {
content: "\f1b5";
}
.fa-steam:before {
content: "\f1b6";
}
.fa-steam-square:before {
content: "\f1b7";
}
.fa-recycle:before {
content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
content: "\f1ba";
}
.fa-tree:before {
content: "\f1bb";
}
.fa-spotify:before {
content: "\f1bc";
}
.fa-deviantart:before {
content: "\f1bd";
}
.fa-soundcloud:before {
content: "\f1be";
}
.fa-database:before {
content: "\f1c0";
}
.fa-file-pdf-o:before {
content: "\f1c1";
}
.fa-file-word-o:before {
content: "\f1c2";
}
.fa-file-excel-o:before {
content: "\f1c3";
}
.fa-file-powerpoint-o:before {
content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
content: "\f1c8";
}
.fa-file-code-o:before {
content: "\f1c9";
}
.fa-vine:before {
content: "\f1ca";
}
.fa-codepen:before {
content: "\f1cb";
}
.fa-jsfiddle:before {
content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
content: "\f1cd";
}
.fa-circle-o-notch:before {
content: "\f1ce";
}
.fa-ra:before,
.fa-rebel:before {
content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
content: "\f1d1";
}
.fa-git-square:before {
content: "\f1d2";
}
.fa-git:before {
content: "\f1d3";
}
.fa-hacker-news:before {
content: "\f1d4";
}
.fa-tencent-weibo:before {
content: "\f1d5";
}
.fa-qq:before {
content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
content: "\f1d9";
}
.fa-history:before {
content: "\f1da";
}
.fa-circle-thin:before {
content: "\f1db";
}
.fa-header:before {
content: "\f1dc";
}
.fa-paragraph:before {
content: "\f1dd";
}
.fa-sliders:before {
content: "\f1de";
}
.fa-share-alt:before {
content: "\f1e0";
}
.fa-share-alt-square:before {
content: "\f1e1";
}
.fa-bomb:before {
content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
content: "\f1e3";
}
.fa-tty:before {
content: "\f1e4";
}
.fa-binoculars:before {
content: "\f1e5";
}
.fa-plug:before {
content: "\f1e6";
}
.fa-slideshare:before {
content: "\f1e7";
}
.fa-twitch:before {
content: "\f1e8";
}
.fa-yelp:before {
content: "\f1e9";
}
.fa-newspaper-o:before {
content: "\f1ea";
}
.fa-wifi:before {
content: "\f1eb";
}
.fa-calculator:before {
content: "\f1ec";
}
.fa-paypal:before {
content: "\f1ed";
}
.fa-google-wallet:before {
content: "\f1ee";
}
.fa-cc-visa:before {
content: "\f1f0";
}
.fa-cc-mastercard:before {
content: "\f1f1";
}
.fa-cc-discover:before {
content: "\f1f2";
}
.fa-cc-amex:before {
content: "\f1f3";
}
.fa-cc-paypal:before {
content: "\f1f4";
}
.fa-cc-stripe:before {
content: "\f1f5";
}
.fa-bell-slash:before {
content: "\f1f6";
}
.fa-bell-slash-o:before {
content: "\f1f7";
}
.fa-trash:before {
content: "\f1f8";
}
.fa-copyright:before {
content: "\f1f9";
}
.fa-at:before {
content: "\f1fa";
}
.fa-eyedropper:before {
content: "\f1fb";
}
.fa-paint-brush:before {
content: "\f1fc";
}
.fa-birthday-cake:before {
content: "\f1fd";
}
.fa-area-chart:before {
content: "\f1fe";
}
.fa-pie-chart:before {
content: "\f200";
}
.fa-line-chart:before {
content: "\f201";
}
.fa-lastfm:before {
content: "\f202";
}
.fa-lastfm-square:before {
content: "\f203";
}
.fa-toggle-off:before {
content: "\f204";
}
.fa-toggle-on:before {
content: "\f205";
}
.fa-bicycle:before {
content: "\f206";
}
.fa-bus:before {
content: "\f207";
}
.fa-ioxhost:before {
content: "\f208";
}
.fa-angellist:before {
content: "\f209";
}
.fa-cc:before {
content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
content: "\f20b";
}
.fa-meanpath:before {
content: "\f20c";
}
/*!
*
* IPython base
*
*/
.modal.fade .modal-dialog {
-webkit-transform: translate(0, 0);
-ms-transform: translate(0, 0);
-o-transform: translate(0, 0);
transform: translate(0, 0);
}
code {
color: #000;
}
pre {
font-size: inherit;
line-height: inherit;
}
label {
font-weight: normal;
}
/* Make the page background atleast 100% the height of the view port */
/* Make the page itself atleast 70% the height of the view port */
.border-box-sizing {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.corner-all {
border-radius: 2px;
}
.no-padding {
padding: 0px;
}
/* Flexible box model classes */
/* Taken from Alex Russell http://infrequently.org/2009/08/css-3-progress/ */
/* This file is a compatability layer. It allows the usage of flexible box
model layouts accross multiple browsers, including older browsers. The newest,
universal implementation of the flexible box model is used when available (see
`Modern browsers` comments below). Browsers that are known to implement this
new spec completely include:
Firefox 28.0+
Chrome 29.0+
Internet Explorer 11+
Opera 17.0+
Browsers not listed, including Safari, are supported via the styling under the
`Old browsers` comments below.
*/
.hbox {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
.hbox > * {
/* Old browsers */
-webkit-box-flex: 0;
-moz-box-flex: 0;
box-flex: 0;
/* Modern browsers */
flex: none;
}
.vbox {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
.vbox > * {
/* Old browsers */
-webkit-box-flex: 0;
-moz-box-flex: 0;
box-flex: 0;
/* Modern browsers */
flex: none;
}
.hbox.reverse,
.vbox.reverse,
.reverse {
/* Old browsers */
-webkit-box-direction: reverse;
-moz-box-direction: reverse;
box-direction: reverse;
/* Modern browsers */
flex-direction: row-reverse;
}
.hbox.box-flex0,
.vbox.box-flex0,
.box-flex0 {
/* Old browsers */
-webkit-box-flex: 0;
-moz-box-flex: 0;
box-flex: 0;
/* Modern browsers */
flex: none;
width: auto;
}
.hbox.box-flex1,
.vbox.box-flex1,
.box-flex1 {
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
.hbox.box-flex,
.vbox.box-flex,
.box-flex {
/* Old browsers */
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
.hbox.box-flex2,
.vbox.box-flex2,
.box-flex2 {
/* Old browsers */
-webkit-box-flex: 2;
-moz-box-flex: 2;
box-flex: 2;
/* Modern browsers */
flex: 2;
}
.box-group1 {
/* Deprecated */
-webkit-box-flex-group: 1;
-moz-box-flex-group: 1;
box-flex-group: 1;
}
.box-group2 {
/* Deprecated */
-webkit-box-flex-group: 2;
-moz-box-flex-group: 2;
box-flex-group: 2;
}
.hbox.start,
.vbox.start,
.start {
/* Old browsers */
-webkit-box-pack: start;
-moz-box-pack: start;
box-pack: start;
/* Modern browsers */
justify-content: flex-start;
}
.hbox.end,
.vbox.end,
.end {
/* Old browsers */
-webkit-box-pack: end;
-moz-box-pack: end;
box-pack: end;
/* Modern browsers */
justify-content: flex-end;
}
.hbox.center,
.vbox.center,
.center {
/* Old browsers */
-webkit-box-pack: center;
-moz-box-pack: center;
box-pack: center;
/* Modern browsers */
justify-content: center;
}
.hbox.baseline,
.vbox.baseline,
.baseline {
/* Old browsers */
-webkit-box-pack: baseline;
-moz-box-pack: baseline;
box-pack: baseline;
/* Modern browsers */
justify-content: baseline;
}
.hbox.stretch,
.vbox.stretch,
.stretch {
/* Old browsers */
-webkit-box-pack: stretch;
-moz-box-pack: stretch;
box-pack: stretch;
/* Modern browsers */
justify-content: stretch;
}
.hbox.align-start,
.vbox.align-start,
.align-start {
/* Old browsers */
-webkit-box-align: start;
-moz-box-align: start;
box-align: start;
/* Modern browsers */
align-items: flex-start;
}
.hbox.align-end,
.vbox.align-end,
.align-end {
/* Old browsers */
-webkit-box-align: end;
-moz-box-align: end;
box-align: end;
/* Modern browsers */
align-items: flex-end;
}
.hbox.align-center,
.vbox.align-center,
.align-center {
/* Old browsers */
-webkit-box-align: center;
-moz-box-align: center;
box-align: center;
/* Modern browsers */
align-items: center;
}
.hbox.align-baseline,
.vbox.align-baseline,
.align-baseline {
/* Old browsers */
-webkit-box-align: baseline;
-moz-box-align: baseline;
box-align: baseline;
/* Modern browsers */
align-items: baseline;
}
.hbox.align-stretch,
.vbox.align-stretch,
.align-stretch {
/* Old browsers */
-webkit-box-align: stretch;
-moz-box-align: stretch;
box-align: stretch;
/* Modern browsers */
align-items: stretch;
}
div.error {
margin: 2em;
text-align: center;
}
div.error > h1 {
font-size: 500%;
line-height: normal;
}
div.error > p {
font-size: 200%;
line-height: normal;
}
div.traceback-wrapper {
text-align: left;
max-width: 800px;
margin: auto;
}
/**
* Primary styles
*
* Author: Jupyter Development Team
*/
body {
background-color: #fff;
/* This makes sure that the body covers the entire window and needs to
be in a different element than the display: box in wrapper below */
position: absolute;
left: 0px;
right: 0px;
top: 0px;
bottom: 0px;
overflow: visible;
}
body > #header {
/* Initially hidden to prevent FLOUC */
display: none;
background-color: #fff;
/* Display over codemirror */
position: relative;
z-index: 100;
}
body > #header #header-container {
padding-bottom: 5px;
padding-top: 5px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
body > #header .header-bar {
width: 100%;
height: 1px;
background: #e7e7e7;
margin-bottom: -1px;
}
@media print {
body > #header {
display: none !important;
}
}
#header-spacer {
width: 100%;
visibility: hidden;
}
@media print {
#header-spacer {
display: none;
}
}
#ipython_notebook {
padding-left: 0px;
padding-top: 1px;
padding-bottom: 1px;
}
@media (max-width: 991px) {
#ipython_notebook {
margin-left: 10px;
}
}
[dir="rtl"] #ipython_notebook {
float: right !important;
}
#noscript {
width: auto;
padding-top: 16px;
padding-bottom: 16px;
text-align: center;
font-size: 22px;
color: red;
font-weight: bold;
}
#ipython_notebook img {
height: 28px;
}
#site {
width: 100%;
display: none;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
overflow: auto;
}
@media print {
#site {
height: auto !important;
}
}
/* Smaller buttons */
.ui-button .ui-button-text {
padding: 0.2em 0.8em;
font-size: 77%;
}
input.ui-button {
padding: 0.3em 0.9em;
}
span#login_widget {
float: right;
}
span#login_widget > .button,
#logout {
color: #333;
background-color: #fff;
border-color: #ccc;
}
span#login_widget > .button:focus,
#logout:focus,
span#login_widget > .button.focus,
#logout.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
span#login_widget > .button:hover,
#logout:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
span#login_widget > .button:active:hover,
#logout:active:hover,
span#login_widget > .button.active:hover,
#logout.active:hover,
.open > .dropdown-togglespan#login_widget > .button:hover,
.open > .dropdown-toggle#logout:hover,
span#login_widget > .button:active:focus,
#logout:active:focus,
span#login_widget > .button.active:focus,
#logout.active:focus,
.open > .dropdown-togglespan#login_widget > .button:focus,
.open > .dropdown-toggle#logout:focus,
span#login_widget > .button:active.focus,
#logout:active.focus,
span#login_widget > .button.active.focus,
#logout.active.focus,
.open > .dropdown-togglespan#login_widget > .button.focus,
.open > .dropdown-toggle#logout.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
background-image: none;
}
span#login_widget > .button.disabled:hover,
#logout.disabled:hover,
span#login_widget > .button[disabled]:hover,
#logout[disabled]:hover,
fieldset[disabled] span#login_widget > .button:hover,
fieldset[disabled] #logout:hover,
span#login_widget > .button.disabled:focus,
#logout.disabled:focus,
span#login_widget > .button[disabled]:focus,
#logout[disabled]:focus,
fieldset[disabled] span#login_widget > .button:focus,
fieldset[disabled] #logout:focus,
span#login_widget > .button.disabled.focus,
#logout.disabled.focus,
span#login_widget > .button[disabled].focus,
#logout[disabled].focus,
fieldset[disabled] span#login_widget > .button.focus,
fieldset[disabled] #logout.focus {
background-color: #fff;
border-color: #ccc;
}
span#login_widget > .button .badge,
#logout .badge {
color: #fff;
background-color: #333;
}
.nav-header {
text-transform: none;
}
#header > span {
margin-top: 10px;
}
.modal_stretch .modal-dialog {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
min-height: 80vh;
}
.modal_stretch .modal-dialog .modal-body {
max-height: calc(100vh - 200px);
overflow: auto;
flex: 1;
}
@media (min-width: 768px) {
.modal .modal-dialog {
width: 700px;
}
}
@media (min-width: 768px) {
select.form-control {
margin-left: 12px;
margin-right: 12px;
}
}
/*!
*
* IPython auth
*
*/
.center-nav {
display: inline-block;
margin-bottom: -4px;
}
/*!
*
* IPython tree view
*
*/
/* We need an invisible input field on top of the sentense*/
/* "Drag file onto the list ..." */
.alternate_upload {
background-color: none;
display: inline;
}
.alternate_upload.form {
padding: 0;
margin: 0;
}
.alternate_upload input.fileinput {
text-align: center;
vertical-align: middle;
display: inline;
opacity: 0;
z-index: 2;
width: 12ex;
margin-right: -12ex;
}
.alternate_upload .btn-upload {
height: 22px;
}
/**
* Primary styles
*
* Author: Jupyter Development Team
*/
[dir="rtl"] #tabs li {
float: right;
}
ul#tabs {
margin-bottom: 4px;
}
[dir="rtl"] ul#tabs {
margin-right: 0px;
}
ul#tabs a {
padding-top: 6px;
padding-bottom: 4px;
}
ul.breadcrumb a:focus,
ul.breadcrumb a:hover {
text-decoration: none;
}
ul.breadcrumb i.icon-home {
font-size: 16px;
margin-right: 4px;
}
ul.breadcrumb span {
color: #5e5e5e;
}
.list_toolbar {
padding: 4px 0 4px 0;
vertical-align: middle;
}
.list_toolbar .tree-buttons {
padding-top: 1px;
}
[dir="rtl"] .list_toolbar .tree-buttons {
float: left !important;
}
[dir="rtl"] .list_toolbar .pull-right {
padding-top: 1px;
float: left !important;
}
[dir="rtl"] .list_toolbar .pull-left {
float: right !important;
}
.dynamic-buttons {
padding-top: 3px;
display: inline-block;
}
.list_toolbar [class*="span"] {
min-height: 24px;
}
.list_header {
font-weight: bold;
background-color: #EEE;
}
.list_placeholder {
font-weight: bold;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 7px;
}
.list_container {
margin-top: 4px;
margin-bottom: 20px;
border: 1px solid #ddd;
border-radius: 2px;
}
.list_container > div {
border-bottom: 1px solid #ddd;
}
.list_container > div:hover .list-item {
background-color: red;
}
.list_container > div:last-child {
border: none;
}
.list_item:hover .list_item {
background-color: #ddd;
}
.list_item a {
text-decoration: none;
}
.list_item:hover {
background-color: #fafafa;
}
.list_header > div,
.list_item > div {
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 7px;
line-height: 22px;
}
.list_header > div input,
.list_item > div input {
margin-right: 7px;
margin-left: 14px;
vertical-align: baseline;
line-height: 22px;
position: relative;
top: -1px;
}
.list_header > div .item_link,
.list_item > div .item_link {
margin-left: -1px;
vertical-align: baseline;
line-height: 22px;
}
.new-file input[type=checkbox] {
visibility: hidden;
}
.item_name {
line-height: 22px;
height: 24px;
}
.item_icon {
font-size: 14px;
color: #5e5e5e;
margin-right: 7px;
margin-left: 7px;
line-height: 22px;
vertical-align: baseline;
}
.item_buttons {
line-height: 1em;
margin-left: -5px;
}
.item_buttons .btn,
.item_buttons .btn-group,
.item_buttons .input-group {
float: left;
}
.item_buttons > .btn,
.item_buttons > .btn-group,
.item_buttons > .input-group {
margin-left: 5px;
}
.item_buttons .btn {
min-width: 13ex;
}
.item_buttons .running-indicator {
padding-top: 4px;
color: #5cb85c;
}
.item_buttons .kernel-name {
padding-top: 4px;
color: #5bc0de;
margin-right: 7px;
float: left;
}
.toolbar_info {
height: 24px;
line-height: 24px;
}
.list_item input:not([type=checkbox]) {
padding-top: 3px;
padding-bottom: 3px;
height: 22px;
line-height: 14px;
margin: 0px;
}
.highlight_text {
color: blue;
}
#project_name {
display: inline-block;
padding-left: 7px;
margin-left: -2px;
}
#project_name > .breadcrumb {
padding: 0px;
margin-bottom: 0px;
background-color: transparent;
font-weight: bold;
}
#tree-selector {
padding-right: 0px;
}
[dir="rtl"] #tree-selector a {
float: right;
}
#button-select-all {
min-width: 50px;
}
#select-all {
margin-left: 7px;
margin-right: 2px;
}
.menu_icon {
margin-right: 2px;
}
.tab-content .row {
margin-left: 0px;
margin-right: 0px;
}
.folder_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f114";
}
.folder_icon:before.pull-left {
margin-right: .3em;
}
.folder_icon:before.pull-right {
margin-left: .3em;
}
.notebook_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f02d";
position: relative;
top: -1px;
}
.notebook_icon:before.pull-left {
margin-right: .3em;
}
.notebook_icon:before.pull-right {
margin-left: .3em;
}
.running_notebook_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f02d";
position: relative;
top: -1px;
color: #5cb85c;
}
.running_notebook_icon:before.pull-left {
margin-right: .3em;
}
.running_notebook_icon:before.pull-right {
margin-left: .3em;
}
.file_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f016";
position: relative;
top: -2px;
}
.file_icon:before.pull-left {
margin-right: .3em;
}
.file_icon:before.pull-right {
margin-left: .3em;
}
#notebook_toolbar .pull-right {
padding-top: 0px;
margin-right: -1px;
}
ul#new-menu {
left: auto;
right: 0;
}
[dir="rtl"] #new-menu {
text-align: right;
}
.kernel-menu-icon {
padding-right: 12px;
width: 24px;
content: "\f096";
}
.kernel-menu-icon:before {
content: "\f096";
}
.kernel-menu-icon-current:before {
content: "\f00c";
}
#tab_content {
padding-top: 20px;
}
#running .panel-group .panel {
margin-top: 3px;
margin-bottom: 1em;
}
#running .panel-group .panel .panel-heading {
background-color: #EEE;
padding-top: 4px;
padding-bottom: 4px;
padding-left: 7px;
padding-right: 7px;
line-height: 22px;
}
#running .panel-group .panel .panel-heading a:focus,
#running .panel-group .panel .panel-heading a:hover {
text-decoration: none;
}
#running .panel-group .panel .panel-body {
padding: 0px;
}
#running .panel-group .panel .panel-body .list_container {
margin-top: 0px;
margin-bottom: 0px;
border: 0px;
border-radius: 0px;
}
#running .panel-group .panel .panel-body .list_container .list_item {
border-bottom: 1px solid #ddd;
}
#running .panel-group .panel .panel-body .list_container .list_item:last-child {
border-bottom: 0px;
}
[dir="rtl"] #running .col-sm-8 {
float: right !important;
}
.delete-button {
display: none;
}
.duplicate-button {
display: none;
}
.rename-button {
display: none;
}
.shutdown-button {
display: none;
}
.dynamic-instructions {
display: inline-block;
padding-top: 4px;
}
/*!
*
* IPython text editor webapp
*
*/
.selected-keymap i.fa {
padding: 0px 5px;
}
.selected-keymap i.fa:before {
content: "\f00c";
}
#mode-menu {
overflow: auto;
max-height: 20em;
}
.edit_app #header {
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.edit_app #menubar .navbar {
/* Use a negative 1 bottom margin, so the border overlaps the border of the
header */
margin-bottom: -1px;
}
.dirty-indicator {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 20px;
}
.dirty-indicator.pull-left {
margin-right: .3em;
}
.dirty-indicator.pull-right {
margin-left: .3em;
}
.dirty-indicator-dirty {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 20px;
}
.dirty-indicator-dirty.pull-left {
margin-right: .3em;
}
.dirty-indicator-dirty.pull-right {
margin-left: .3em;
}
.dirty-indicator-clean {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
width: 20px;
}
.dirty-indicator-clean.pull-left {
margin-right: .3em;
}
.dirty-indicator-clean.pull-right {
margin-left: .3em;
}
.dirty-indicator-clean:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f00c";
}
.dirty-indicator-clean:before.pull-left {
margin-right: .3em;
}
.dirty-indicator-clean:before.pull-right {
margin-left: .3em;
}
#filename {
font-size: 16pt;
display: table;
padding: 0px 5px;
}
#current-mode {
padding-left: 5px;
padding-right: 5px;
}
#texteditor-backdrop {
padding-top: 20px;
padding-bottom: 20px;
}
@media not print {
#texteditor-backdrop {
background-color: #EEE;
}
}
@media print {
#texteditor-backdrop #texteditor-container .CodeMirror-gutter,
#texteditor-backdrop #texteditor-container .CodeMirror-gutters {
background-color: #fff;
}
}
@media not print {
#texteditor-backdrop #texteditor-container .CodeMirror-gutter,
#texteditor-backdrop #texteditor-container .CodeMirror-gutters {
background-color: #fff;
}
}
@media not print {
#texteditor-backdrop #texteditor-container {
padding: 0px;
background-color: #fff;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
}
/*!
*
* IPython notebook
*
*/
/* CSS font colors for translated ANSI colors. */
.ansibold {
font-weight: bold;
}
/* use dark versions for foreground, to improve visibility */
.ansiblack {
color: black;
}
.ansired {
color: darkred;
}
.ansigreen {
color: darkgreen;
}
.ansiyellow {
color: #c4a000;
}
.ansiblue {
color: darkblue;
}
.ansipurple {
color: darkviolet;
}
.ansicyan {
color: steelblue;
}
.ansigray {
color: gray;
}
/* and light for background, for the same reason */
.ansibgblack {
background-color: black;
}
.ansibgred {
background-color: red;
}
.ansibggreen {
background-color: green;
}
.ansibgyellow {
background-color: yellow;
}
.ansibgblue {
background-color: blue;
}
.ansibgpurple {
background-color: magenta;
}
.ansibgcyan {
background-color: cyan;
}
.ansibggray {
background-color: gray;
}
div.cell {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
border-radius: 2px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
border-width: 1px;
border-style: solid;
border-color: transparent;
width: 100%;
padding: 5px;
/* This acts as a spacer between cells, that is outside the border */
margin: 0px;
outline: none;
border-left-width: 1px;
padding-left: 5px;
background: linear-gradient(to right, transparent -40px, transparent 1px, transparent 1px, transparent 100%);
}
div.cell.jupyter-soft-selected {
border-left-color: #90CAF9;
border-left-color: #E3F2FD;
border-left-width: 1px;
padding-left: 5px;
border-right-color: #E3F2FD;
border-right-width: 1px;
background: #E3F2FD;
}
@media print {
div.cell.jupyter-soft-selected {
border-color: transparent;
}
}
div.cell.selected {
border-color: #ababab;
border-left-width: 0px;
padding-left: 6px;
background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 5px, transparent 5px, transparent 100%);
}
@media print {
div.cell.selected {
border-color: transparent;
}
}
div.cell.selected.jupyter-soft-selected {
border-left-width: 0;
padding-left: 6px;
background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 7px, #E3F2FD 7px, #E3F2FD 100%);
}
.edit_mode div.cell.selected {
border-color: #66BB6A;
border-left-width: 0px;
padding-left: 6px;
background: linear-gradient(to right, #66BB6A -40px, #66BB6A 5px, transparent 5px, transparent 100%);
}
@media print {
.edit_mode div.cell.selected {
border-color: transparent;
}
}
.prompt {
/* This needs to be wide enough for 3 digit prompt numbers: In[100]: */
min-width: 14ex;
/* This padding is tuned to match the padding on the CodeMirror editor. */
padding: 0.4em;
margin: 0px;
font-family: monospace;
text-align: right;
/* This has to match that of the the CodeMirror class line-height below */
line-height: 1.21429em;
/* Don't highlight prompt number selection */
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
/* Use default cursor */
cursor: default;
}
@media (max-width: 540px) {
.prompt {
text-align: left;
}
}
div.inner_cell {
min-width: 0;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_area {
border: 1px solid #cfcfcf;
border-radius: 2px;
background: #f7f7f7;
line-height: 1.21429em;
}
/* This is needed so that empty prompt areas can collapse to zero height when there
is no content in the output_subarea and the prompt. The main purpose of this is
to make sure that empty JavaScript output_subareas have no height. */
div.prompt:empty {
padding-top: 0;
padding-bottom: 0;
}
div.unrecognized_cell {
padding: 5px 5px 5px 0px;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
div.unrecognized_cell .inner_cell {
border-radius: 2px;
padding: 5px;
font-weight: bold;
color: red;
border: 1px solid #cfcfcf;
background: #eaeaea;
}
div.unrecognized_cell .inner_cell a {
color: inherit;
text-decoration: none;
}
div.unrecognized_cell .inner_cell a:hover {
color: inherit;
text-decoration: none;
}
@media (max-width: 540px) {
div.unrecognized_cell > div.prompt {
display: none;
}
}
div.code_cell {
/* avoid page breaking on code cells when printing */
}
@media print {
div.code_cell {
page-break-inside: avoid;
}
}
/* any special styling for code cells that are currently running goes here */
div.input {
page-break-inside: avoid;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
@media (max-width: 540px) {
div.input {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_prompt {
color: #303F9F;
border-top: 1px solid transparent;
}
div.input_area > div.highlight {
margin: 0.4em;
border: none;
padding: 0px;
background-color: transparent;
}
div.input_area > div.highlight > pre {
margin: 0px;
border: none;
padding: 0px;
background-color: transparent;
}
/* The following gets added to the <head> if it is detected that the user has a
* monospace font with inconsistent normal/bold/italic height. See
* notebookmain.js. Such fonts will have keywords vertically offset with
* respect to the rest of the text. The user should select a better font.
* See: https://github.com/ipython/ipython/issues/1503
*
* .CodeMirror span {
* vertical-align: bottom;
* }
*/
.CodeMirror {
line-height: 1.21429em;
/* Changed from 1em to our global default */
font-size: 14px;
height: auto;
/* Changed to auto to autogrow */
background: none;
/* Changed from white to allow our bg to show through */
}
.CodeMirror-scroll {
/* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
/* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
overflow-y: hidden;
overflow-x: auto;
}
.CodeMirror-lines {
/* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
/* we have set a different line-height and want this to scale with that. */
padding: 0.4em;
}
.CodeMirror-linenumber {
padding: 0 8px 0 4px;
}
.CodeMirror-gutters {
border-bottom-left-radius: 2px;
border-top-left-radius: 2px;
}
.CodeMirror pre {
/* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */
/* .CodeMirror-lines */
padding: 0;
border: 0;
border-radius: 0;
}
/*
Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
Adapted from GitHub theme
*/
.highlight-base {
color: #000;
}
.highlight-variable {
color: #000;
}
.highlight-variable-2 {
color: #1a1a1a;
}
.highlight-variable-3 {
color: #333333;
}
.highlight-string {
color: #BA2121;
}
.highlight-comment {
color: #408080;
font-style: italic;
}
.highlight-number {
color: #080;
}
.highlight-atom {
color: #88F;
}
.highlight-keyword {
color: #008000;
font-weight: bold;
}
.highlight-builtin {
color: #008000;
}
.highlight-error {
color: #f00;
}
.highlight-operator {
color: #AA22FF;
font-weight: bold;
}
.highlight-meta {
color: #AA22FF;
}
/* previously not defined, copying from default codemirror */
.highlight-def {
color: #00f;
}
.highlight-string-2 {
color: #f50;
}
.highlight-qualifier {
color: #555;
}
.highlight-bracket {
color: #997;
}
.highlight-tag {
color: #170;
}
.highlight-attribute {
color: #00c;
}
.highlight-header {
color: blue;
}
.highlight-quote {
color: #090;
}
.highlight-link {
color: #00c;
}
/* apply the same style to codemirror */
.cm-s-ipython span.cm-keyword {
color: #008000;
font-weight: bold;
}
.cm-s-ipython span.cm-atom {
color: #88F;
}
.cm-s-ipython span.cm-number {
color: #080;
}
.cm-s-ipython span.cm-def {
color: #00f;
}
.cm-s-ipython span.cm-variable {
color: #000;
}
.cm-s-ipython span.cm-operator {
color: #AA22FF;
font-weight: bold;
}
.cm-s-ipython span.cm-variable-2 {
color: #1a1a1a;
}
.cm-s-ipython span.cm-variable-3 {
color: #333333;
}
.cm-s-ipython span.cm-comment {
color: #408080;
font-style: italic;
}
.cm-s-ipython span.cm-string {
color: #BA2121;
}
.cm-s-ipython span.cm-string-2 {
color: #f50;
}
.cm-s-ipython span.cm-meta {
color: #AA22FF;
}
.cm-s-ipython span.cm-qualifier {
color: #555;
}
.cm-s-ipython span.cm-builtin {
color: #008000;
}
.cm-s-ipython span.cm-bracket {
color: #997;
}
.cm-s-ipython span.cm-tag {
color: #170;
}
.cm-s-ipython span.cm-attribute {
color: #00c;
}
.cm-s-ipython span.cm-header {
color: blue;
}
.cm-s-ipython span.cm-quote {
color: #090;
}
.cm-s-ipython span.cm-link {
color: #00c;
}
.cm-s-ipython span.cm-error {
color: #f00;
}
.cm-s-ipython span.cm-tab {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);
background-position: right;
background-repeat: no-repeat;
}
div.output_wrapper {
/* this position must be relative to enable descendents to be absolute within it */
position: relative;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
z-index: 1;
}
/* class for the output area when it should be height-limited */
div.output_scroll {
/* ideally, this would be max-height, but FF barfs all over that */
height: 24em;
/* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */
width: 100%;
overflow: auto;
border-radius: 2px;
-webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
display: block;
}
/* output div while it is collapsed */
div.output_collapsed {
margin: 0px;
padding: 0px;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
div.out_prompt_overlay {
height: 100%;
padding: 0px 0.4em;
position: absolute;
border-radius: 2px;
}
div.out_prompt_overlay:hover {
/* use inner shadow to get border that is computed the same on WebKit/FF */
-webkit-box-shadow: inset 0 0 1px #000;
box-shadow: inset 0 0 1px #000;
background: rgba(240, 240, 240, 0.5);
}
div.output_prompt {
color: #D84315;
}
/* This class is the outer container of all output sections. */
div.output_area {
padding: 0px;
page-break-inside: avoid;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
div.output_area .MathJax_Display {
text-align: left !important;
}
div.output_area .rendered_html table {
margin-left: 0;
margin-right: 0;
}
div.output_area .rendered_html img {
margin-left: 0;
margin-right: 0;
}
div.output_area img,
div.output_area svg {
max-width: 100%;
height: auto;
}
div.output_area img.unconfined,
div.output_area svg.unconfined {
max-width: none;
}
/* This is needed to protect the pre formating from global settings such
as that of bootstrap */
.output {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
@media (max-width: 540px) {
div.output_area {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: vertical;
-moz-box-align: stretch;
display: box;
box-orient: vertical;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: column;
align-items: stretch;
}
}
div.output_area pre {
margin: 0;
padding: 0;
border: 0;
vertical-align: baseline;
color: black;
background-color: transparent;
border-radius: 0;
}
/* This class is for the output subarea inside the output_area and after
the prompt div. */
div.output_subarea {
overflow-x: auto;
padding: 0.4em;
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
max-width: calc(100% - 14ex);
}
div.output_scroll div.output_subarea {
overflow-x: visible;
}
/* The rest of the output_* classes are for special styling of the different
output types */
/* all text output has this class: */
div.output_text {
text-align: left;
color: #000;
/* This has to match that of the the CodeMirror class line-height below */
line-height: 1.21429em;
}
/* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */
div.output_stderr {
background: #fdd;
/* very light red background for stderr */
}
div.output_latex {
text-align: left;
}
/* Empty output_javascript divs should have no height */
div.output_javascript:empty {
padding: 0;
}
.js-error {
color: darkred;
}
/* raw_input styles */
div.raw_input_container {
line-height: 1.21429em;
padding-top: 5px;
}
pre.raw_input_prompt {
/* nothing needed here. */
}
input.raw_input {
font-family: monospace;
font-size: inherit;
color: inherit;
width: auto;
/* make sure input baseline aligns with prompt */
vertical-align: baseline;
/* padding + margin = 0.5em between prompt and cursor */
padding: 0em 0.25em;
margin: 0em 0.25em;
}
input.raw_input:focus {
box-shadow: none;
}
p.p-space {
margin-bottom: 10px;
}
div.output_unrecognized {
padding: 5px;
font-weight: bold;
color: red;
}
div.output_unrecognized a {
color: inherit;
text-decoration: none;
}
div.output_unrecognized a:hover {
color: inherit;
text-decoration: none;
}
.rendered_html {
color: #000;
/* any extras will just be numbers: */
}
.rendered_html em {
font-style: italic;
}
.rendered_html strong {
font-weight: bold;
}
.rendered_html u {
text-decoration: underline;
}
.rendered_html :link {
text-decoration: underline;
}
.rendered_html :visited {
text-decoration: underline;
}
.rendered_html h1 {
font-size: 185.7%;
margin: 1.08em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h2 {
font-size: 157.1%;
margin: 1.27em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h3 {
font-size: 128.6%;
margin: 1.55em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h4 {
font-size: 100%;
margin: 2em 0 0 0;
font-weight: bold;
line-height: 1.0;
}
.rendered_html h5 {
font-size: 100%;
margin: 2em 0 0 0;
font-weight: bold;
line-height: 1.0;
font-style: italic;
}
.rendered_html h6 {
font-size: 100%;
margin: 2em 0 0 0;
font-weight: bold;
line-height: 1.0;
font-style: italic;
}
.rendered_html h1:first-child {
margin-top: 0.538em;
}
.rendered_html h2:first-child {
margin-top: 0.636em;
}
.rendered_html h3:first-child {
margin-top: 0.777em;
}
.rendered_html h4:first-child {
margin-top: 1em;
}
.rendered_html h5:first-child {
margin-top: 1em;
}
.rendered_html h6:first-child {
margin-top: 1em;
}
.rendered_html ul {
list-style: disc;
margin: 0em 2em;
padding-left: 0px;
}
.rendered_html ul ul {
list-style: square;
margin: 0em 2em;
}
.rendered_html ul ul ul {
list-style: circle;
margin: 0em 2em;
}
.rendered_html ol {
list-style: decimal;
margin: 0em 2em;
padding-left: 0px;
}
.rendered_html ol ol {
list-style: upper-alpha;
margin: 0em 2em;
}
.rendered_html ol ol ol {
list-style: lower-alpha;
margin: 0em 2em;
}
.rendered_html ol ol ol ol {
list-style: lower-roman;
margin: 0em 2em;
}
.rendered_html ol ol ol ol ol {
list-style: decimal;
margin: 0em 2em;
}
.rendered_html * + ul {
margin-top: 1em;
}
.rendered_html * + ol {
margin-top: 1em;
}
.rendered_html hr {
color: black;
background-color: black;
}
.rendered_html pre {
margin: 1em 2em;
}
.rendered_html pre,
.rendered_html code {
border: 0;
background-color: #fff;
color: #000;
font-size: 100%;
padding: 0px;
}
.rendered_html blockquote {
margin: 1em 2em;
}
.rendered_html table {
margin-left: auto;
margin-right: auto;
border: 1px solid black;
border-collapse: collapse;
}
.rendered_html tr,
.rendered_html th,
.rendered_html td {
border: 1px solid black;
border-collapse: collapse;
margin: 1em 2em;
}
.rendered_html td,
.rendered_html th {
text-align: left;
vertical-align: middle;
padding: 4px;
}
.rendered_html th {
font-weight: bold;
}
.rendered_html * + table {
margin-top: 1em;
}
.rendered_html p {
text-align: left;
}
.rendered_html * + p {
margin-top: 1em;
}
.rendered_html img {
display: block;
margin-left: auto;
margin-right: auto;
}
.rendered_html * + img {
margin-top: 1em;
}
.rendered_html img,
.rendered_html svg {
max-width: 100%;
height: auto;
}
.rendered_html img.unconfined,
.rendered_html svg.unconfined {
max-width: none;
}
div.text_cell {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
}
@media (max-width: 540px) {
div.text_cell > div.prompt {
display: none;
}
}
div.text_cell_render {
/*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/
outline: none;
resize: none;
width: inherit;
border-style: none;
padding: 0.5em 0.5em 0.5em 0.4em;
color: #000;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
a.anchor-link:link {
text-decoration: none;
padding: 0px 20px;
visibility: hidden;
}
h1:hover .anchor-link,
h2:hover .anchor-link,
h3:hover .anchor-link,
h4:hover .anchor-link,
h5:hover .anchor-link,
h6:hover .anchor-link {
visibility: visible;
}
.text_cell.rendered .input_area {
display: none;
}
.text_cell.rendered .rendered_html {
overflow-x: auto;
overflow-y: hidden;
}
.text_cell.unrendered .text_cell_render {
display: none;
}
.cm-header-1,
.cm-header-2,
.cm-header-3,
.cm-header-4,
.cm-header-5,
.cm-header-6 {
font-weight: bold;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.cm-header-1 {
font-size: 185.7%;
}
.cm-header-2 {
font-size: 157.1%;
}
.cm-header-3 {
font-size: 128.6%;
}
.cm-header-4 {
font-size: 110%;
}
.cm-header-5 {
font-size: 100%;
font-style: italic;
}
.cm-header-6 {
font-size: 100%;
font-style: italic;
}
/*!
*
* IPython notebook webapp
*
*/
@media (max-width: 767px) {
.notebook_app {
padding-left: 0px;
padding-right: 0px;
}
}
#ipython-main-app {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
height: 100%;
}
div#notebook_panel {
margin: 0px;
padding: 0px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
height: 100%;
}
div#notebook {
font-size: 14px;
line-height: 20px;
overflow-y: hidden;
overflow-x: auto;
width: 100%;
/* This spaces the page away from the edge of the notebook area */
padding-top: 20px;
margin: 0px;
outline: none;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
min-height: 100%;
}
@media not print {
#notebook-container {
padding: 15px;
background-color: #fff;
min-height: 0;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
}
@media print {
#notebook-container {
width: 100%;
}
}
div.ui-widget-content {
border: 1px solid #ababab;
outline: none;
}
pre.dialog {
background-color: #f7f7f7;
border: 1px solid #ddd;
border-radius: 2px;
padding: 0.4em;
padding-left: 2em;
}
p.dialog {
padding: 0.2em;
}
/* Word-wrap output correctly. This is the CSS3 spelling, though Firefox seems
to not honor it correctly. Webkit browsers (Chrome, rekonq, Safari) do.
*/
pre,
code,
kbd,
samp {
white-space: pre-wrap;
}
#fonttest {
font-family: monospace;
}
p {
margin-bottom: 0;
}
.end_space {
min-height: 100px;
transition: height .2s ease;
}
.notebook_app > #header {
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
@media not print {
.notebook_app {
background-color: #EEE;
}
}
kbd {
border-style: solid;
border-width: 1px;
box-shadow: none;
margin: 2px;
padding-left: 2px;
padding-right: 2px;
padding-top: 1px;
padding-bottom: 1px;
}
/* CSS for the cell toolbar */
.celltoolbar {
border: thin solid #CFCFCF;
border-bottom: none;
background: #EEE;
border-radius: 2px 2px 0px 0px;
width: 100%;
height: 29px;
padding-right: 4px;
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
/* Old browsers */
-webkit-box-pack: end;
-moz-box-pack: end;
box-pack: end;
/* Modern browsers */
justify-content: flex-end;
display: -webkit-flex;
}
@media print {
.celltoolbar {
display: none;
}
}
.ctb_hideshow {
display: none;
vertical-align: bottom;
}
/* ctb_show is added to the ctb_hideshow div to show the cell toolbar.
Cell toolbars are only shown when the ctb_global_show class is also set.
*/
.ctb_global_show .ctb_show.ctb_hideshow {
display: block;
}
.ctb_global_show .ctb_show + .input_area,
.ctb_global_show .ctb_show + div.text_cell_input,
.ctb_global_show .ctb_show ~ div.text_cell_render {
border-top-right-radius: 0px;
border-top-left-radius: 0px;
}
.ctb_global_show .ctb_show ~ div.text_cell_render {
border: 1px solid #cfcfcf;
}
.celltoolbar {
font-size: 87%;
padding-top: 3px;
}
.celltoolbar select {
display: block;
width: 100%;
height: 32px;
padding: 6px 12px;
font-size: 13px;
line-height: 1.42857143;
color: #555555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 2px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
height: 30px;
padding: 5px 10px;
font-size: 12px;
line-height: 1.5;
border-radius: 1px;
width: inherit;
font-size: inherit;
height: 22px;
padding: 0px;
display: inline-block;
}
.celltoolbar select:focus {
border-color: #66afe9;
outline: 0;
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.celltoolbar select::-moz-placeholder {
color: #999;
opacity: 1;
}
.celltoolbar select:-ms-input-placeholder {
color: #999;
}
.celltoolbar select::-webkit-input-placeholder {
color: #999;
}
.celltoolbar select::-ms-expand {
border: 0;
background-color: transparent;
}
.celltoolbar select[disabled],
.celltoolbar select[readonly],
fieldset[disabled] .celltoolbar select {
background-color: #eeeeee;
opacity: 1;
}
.celltoolbar select[disabled],
fieldset[disabled] .celltoolbar select {
cursor: not-allowed;
}
textarea.celltoolbar select {
height: auto;
}
select.celltoolbar select {
height: 30px;
line-height: 30px;
}
textarea.celltoolbar select,
select[multiple].celltoolbar select {
height: auto;
}
.celltoolbar label {
margin-left: 5px;
margin-right: 5px;
}
.completions {
position: absolute;
z-index: 110;
overflow: hidden;
border: 1px solid #ababab;
border-radius: 2px;
-webkit-box-shadow: 0px 6px 10px -1px #adadad;
box-shadow: 0px 6px 10px -1px #adadad;
line-height: 1;
}
.completions select {
background: white;
outline: none;
border: none;
padding: 0px;
margin: 0px;
overflow: auto;
font-family: monospace;
font-size: 110%;
color: #000;
width: auto;
}
.completions select option.context {
color: #286090;
}
#kernel_logo_widget {
float: right !important;
float: right;
}
#kernel_logo_widget .current_kernel_logo {
display: none;
margin-top: -1px;
margin-bottom: -1px;
width: 32px;
height: 32px;
}
#menubar {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
margin-top: 1px;
}
#menubar .navbar {
border-top: 1px;
border-radius: 0px 0px 2px 2px;
margin-bottom: 0px;
}
#menubar .navbar-toggle {
float: left;
padding-top: 7px;
padding-bottom: 7px;
border: none;
}
#menubar .navbar-collapse {
clear: left;
}
.nav-wrapper {
border-bottom: 1px solid #e7e7e7;
}
i.menu-icon {
padding-top: 4px;
}
ul#help_menu li a {
overflow: hidden;
padding-right: 2.2em;
}
ul#help_menu li a i {
margin-right: -1.2em;
}
.dropdown-submenu {
position: relative;
}
.dropdown-submenu > .dropdown-menu {
top: 0;
left: 100%;
margin-top: -6px;
margin-left: -1px;
}
.dropdown-submenu:hover > .dropdown-menu {
display: block;
}
.dropdown-submenu > a:after {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
display: block;
content: "\f0da";
float: right;
color: #333333;
margin-top: 2px;
margin-right: -10px;
}
.dropdown-submenu > a:after.pull-left {
margin-right: .3em;
}
.dropdown-submenu > a:after.pull-right {
margin-left: .3em;
}
.dropdown-submenu:hover > a:after {
color: #262626;
}
.dropdown-submenu.pull-left {
float: none;
}
.dropdown-submenu.pull-left > .dropdown-menu {
left: -100%;
margin-left: 10px;
}
#notification_area {
float: right !important;
float: right;
z-index: 10;
}
.indicator_area {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
}
#kernel_indicator {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
border-left: 1px solid;
}
#kernel_indicator .kernel_indicator_name {
padding-left: 5px;
padding-right: 5px;
}
#modal_indicator {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
}
#readonly-indicator {
float: right !important;
float: right;
color: #777;
margin-left: 5px;
margin-right: 5px;
width: 11px;
z-index: 10;
text-align: center;
width: auto;
margin-top: 2px;
margin-bottom: 0px;
margin-left: 0px;
margin-right: 0px;
display: none;
}
.modal_indicator:before {
width: 1.28571429em;
text-align: center;
}
.edit_mode .modal_indicator:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f040";
}
.edit_mode .modal_indicator:before.pull-left {
margin-right: .3em;
}
.edit_mode .modal_indicator:before.pull-right {
margin-left: .3em;
}
.command_mode .modal_indicator:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: ' ';
}
.command_mode .modal_indicator:before.pull-left {
margin-right: .3em;
}
.command_mode .modal_indicator:before.pull-right {
margin-left: .3em;
}
.kernel_idle_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f10c";
}
.kernel_idle_icon:before.pull-left {
margin-right: .3em;
}
.kernel_idle_icon:before.pull-right {
margin-left: .3em;
}
.kernel_busy_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f111";
}
.kernel_busy_icon:before.pull-left {
margin-right: .3em;
}
.kernel_busy_icon:before.pull-right {
margin-left: .3em;
}
.kernel_dead_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f1e2";
}
.kernel_dead_icon:before.pull-left {
margin-right: .3em;
}
.kernel_dead_icon:before.pull-right {
margin-left: .3em;
}
.kernel_disconnected_icon:before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f127";
}
.kernel_disconnected_icon:before.pull-left {
margin-right: .3em;
}
.kernel_disconnected_icon:before.pull-right {
margin-left: .3em;
}
.notification_widget {
color: #777;
z-index: 10;
background: rgba(240, 240, 240, 0.5);
margin-right: 4px;
color: #333;
background-color: #fff;
border-color: #ccc;
}
.notification_widget:focus,
.notification_widget.focus {
color: #333;
background-color: #e6e6e6;
border-color: #8c8c8c;
}
.notification_widget:hover {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
color: #333;
background-color: #e6e6e6;
border-color: #adadad;
}
.notification_widget:active:hover,
.notification_widget.active:hover,
.open > .dropdown-toggle.notification_widget:hover,
.notification_widget:active:focus,
.notification_widget.active:focus,
.open > .dropdown-toggle.notification_widget:focus,
.notification_widget:active.focus,
.notification_widget.active.focus,
.open > .dropdown-toggle.notification_widget.focus {
color: #333;
background-color: #d4d4d4;
border-color: #8c8c8c;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
background-image: none;
}
.notification_widget.disabled:hover,
.notification_widget[disabled]:hover,
fieldset[disabled] .notification_widget:hover,
.notification_widget.disabled:focus,
.notification_widget[disabled]:focus,
fieldset[disabled] .notification_widget:focus,
.notification_widget.disabled.focus,
.notification_widget[disabled].focus,
fieldset[disabled] .notification_widget.focus {
background-color: #fff;
border-color: #ccc;
}
.notification_widget .badge {
color: #fff;
background-color: #333;
}
.notification_widget.warning {
color: #fff;
background-color: #f0ad4e;
border-color: #eea236;
}
.notification_widget.warning:focus,
.notification_widget.warning.focus {
color: #fff;
background-color: #ec971f;
border-color: #985f0d;
}
.notification_widget.warning:hover {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
color: #fff;
background-color: #ec971f;
border-color: #d58512;
}
.notification_widget.warning:active:hover,
.notification_widget.warning.active:hover,
.open > .dropdown-toggle.notification_widget.warning:hover,
.notification_widget.warning:active:focus,
.notification_widget.warning.active:focus,
.open > .dropdown-toggle.notification_widget.warning:focus,
.notification_widget.warning:active.focus,
.notification_widget.warning.active.focus,
.open > .dropdown-toggle.notification_widget.warning.focus {
color: #fff;
background-color: #d58512;
border-color: #985f0d;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
background-image: none;
}
.notification_widget.warning.disabled:hover,
.notification_widget.warning[disabled]:hover,
fieldset[disabled] .notification_widget.warning:hover,
.notification_widget.warning.disabled:focus,
.notification_widget.warning[disabled]:focus,
fieldset[disabled] .notification_widget.warning:focus,
.notification_widget.warning.disabled.focus,
.notification_widget.warning[disabled].focus,
fieldset[disabled] .notification_widget.warning.focus {
background-color: #f0ad4e;
border-color: #eea236;
}
.notification_widget.warning .badge {
color: #f0ad4e;
background-color: #fff;
}
.notification_widget.success {
color: #fff;
background-color: #5cb85c;
border-color: #4cae4c;
}
.notification_widget.success:focus,
.notification_widget.success.focus {
color: #fff;
background-color: #449d44;
border-color: #255625;
}
.notification_widget.success:hover {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
color: #fff;
background-color: #449d44;
border-color: #398439;
}
.notification_widget.success:active:hover,
.notification_widget.success.active:hover,
.open > .dropdown-toggle.notification_widget.success:hover,
.notification_widget.success:active:focus,
.notification_widget.success.active:focus,
.open > .dropdown-toggle.notification_widget.success:focus,
.notification_widget.success:active.focus,
.notification_widget.success.active.focus,
.open > .dropdown-toggle.notification_widget.success.focus {
color: #fff;
background-color: #398439;
border-color: #255625;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
background-image: none;
}
.notification_widget.success.disabled:hover,
.notification_widget.success[disabled]:hover,
fieldset[disabled] .notification_widget.success:hover,
.notification_widget.success.disabled:focus,
.notification_widget.success[disabled]:focus,
fieldset[disabled] .notification_widget.success:focus,
.notification_widget.success.disabled.focus,
.notification_widget.success[disabled].focus,
fieldset[disabled] .notification_widget.success.focus {
background-color: #5cb85c;
border-color: #4cae4c;
}
.notification_widget.success .badge {
color: #5cb85c;
background-color: #fff;
}
.notification_widget.info {
color: #fff;
background-color: #5bc0de;
border-color: #46b8da;
}
.notification_widget.info:focus,
.notification_widget.info.focus {
color: #fff;
background-color: #31b0d5;
border-color: #1b6d85;
}
.notification_widget.info:hover {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
color: #fff;
background-color: #31b0d5;
border-color: #269abc;
}
.notification_widget.info:active:hover,
.notification_widget.info.active:hover,
.open > .dropdown-toggle.notification_widget.info:hover,
.notification_widget.info:active:focus,
.notification_widget.info.active:focus,
.open > .dropdown-toggle.notification_widget.info:focus,
.notification_widget.info:active.focus,
.notification_widget.info.active.focus,
.open > .dropdown-toggle.notification_widget.info.focus {
color: #fff;
background-color: #269abc;
border-color: #1b6d85;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
background-image: none;
}
.notification_widget.info.disabled:hover,
.notification_widget.info[disabled]:hover,
fieldset[disabled] .notification_widget.info:hover,
.notification_widget.info.disabled:focus,
.notification_widget.info[disabled]:focus,
fieldset[disabled] .notification_widget.info:focus,
.notification_widget.info.disabled.focus,
.notification_widget.info[disabled].focus,
fieldset[disabled] .notification_widget.info.focus {
background-color: #5bc0de;
border-color: #46b8da;
}
.notification_widget.info .badge {
color: #5bc0de;
background-color: #fff;
}
.notification_widget.danger {
color: #fff;
background-color: #d9534f;
border-color: #d43f3a;
}
.notification_widget.danger:focus,
.notification_widget.danger.focus {
color: #fff;
background-color: #c9302c;
border-color: #761c19;
}
.notification_widget.danger:hover {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
color: #fff;
background-color: #c9302c;
border-color: #ac2925;
}
.notification_widget.danger:active:hover,
.notification_widget.danger.active:hover,
.open > .dropdown-toggle.notification_widget.danger:hover,
.notification_widget.danger:active:focus,
.notification_widget.danger.active:focus,
.open > .dropdown-toggle.notification_widget.danger:focus,
.notification_widget.danger:active.focus,
.notification_widget.danger.active.focus,
.open > .dropdown-toggle.notification_widget.danger.focus {
color: #fff;
background-color: #ac2925;
border-color: #761c19;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
background-image: none;
}
.notification_widget.danger.disabled:hover,
.notification_widget.danger[disabled]:hover,
fieldset[disabled] .notification_widget.danger:hover,
.notification_widget.danger.disabled:focus,
.notification_widget.danger[disabled]:focus,
fieldset[disabled] .notification_widget.danger:focus,
.notification_widget.danger.disabled.focus,
.notification_widget.danger[disabled].focus,
fieldset[disabled] .notification_widget.danger.focus {
background-color: #d9534f;
border-color: #d43f3a;
}
.notification_widget.danger .badge {
color: #d9534f;
background-color: #fff;
}
div#pager {
background-color: #fff;
font-size: 14px;
line-height: 20px;
overflow: hidden;
display: none;
position: fixed;
bottom: 0px;
width: 100%;
max-height: 50%;
padding-top: 8px;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
/* Display over codemirror */
z-index: 100;
/* Hack which prevents jquery ui resizable from changing top. */
top: auto !important;
}
div#pager pre {
line-height: 1.21429em;
color: #000;
background-color: #f7f7f7;
padding: 0.4em;
}
div#pager #pager-button-area {
position: absolute;
top: 8px;
right: 20px;
}
div#pager #pager-contents {
position: relative;
overflow: auto;
width: 100%;
height: 100%;
}
div#pager #pager-contents #pager-container {
position: relative;
padding: 15px 0px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
div#pager .ui-resizable-handle {
top: 0px;
height: 8px;
background: #f7f7f7;
border-top: 1px solid #cfcfcf;
border-bottom: 1px solid #cfcfcf;
/* This injects handle bars (a short, wide = symbol) for
the resize handle. */
}
div#pager .ui-resizable-handle::after {
content: '';
top: 2px;
left: 50%;
height: 3px;
width: 30px;
margin-left: -15px;
position: absolute;
border-top: 1px solid #cfcfcf;
}
.quickhelp {
/* Old browsers */
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-align: stretch;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-align: stretch;
display: box;
box-orient: horizontal;
box-align: stretch;
/* Modern browsers */
display: flex;
flex-direction: row;
align-items: stretch;
line-height: 1.8em;
}
.shortcut_key {
display: inline-block;
width: 21ex;
text-align: right;
font-family: monospace;
}
.shortcut_descr {
display: inline-block;
/* Old browsers */
-webkit-box-flex: 1;
-moz-box-flex: 1;
box-flex: 1;
/* Modern browsers */
flex: 1;
}
span.save_widget {
margin-top: 6px;
}
span.save_widget span.filename {
height: 1em;
line-height: 1em;
padding: 3px;
margin-left: 16px;
border: none;
font-size: 146.5%;
border-radius: 2px;
}
span.save_widget span.filename:hover {
background-color: #e6e6e6;
}
span.checkpoint_status,
span.autosave_status {
font-size: small;
}
@media (max-width: 767px) {
span.save_widget {
font-size: small;
}
span.checkpoint_status,
span.autosave_status {
display: none;
}
}
@media (min-width: 768px) and (max-width: 991px) {
span.checkpoint_status {
display: none;
}
span.autosave_status {
font-size: x-small;
}
}
.toolbar {
padding: 0px;
margin-left: -5px;
margin-top: 2px;
margin-bottom: 5px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.toolbar select,
.toolbar label {
width: auto;
vertical-align: middle;
margin-right: 2px;
margin-bottom: 0px;
display: inline;
font-size: 92%;
margin-left: 0.3em;
margin-right: 0.3em;
padding: 0px;
padding-top: 3px;
}
.toolbar .btn {
padding: 2px 8px;
}
.toolbar .btn-group {
margin-top: 0px;
margin-left: 5px;
}
#maintoolbar {
margin-bottom: -3px;
margin-top: -8px;
border: 0px;
min-height: 27px;
margin-left: 0px;
padding-top: 11px;
padding-bottom: 3px;
}
#maintoolbar .navbar-text {
float: none;
vertical-align: middle;
text-align: right;
margin-left: 5px;
margin-right: 0px;
margin-top: 0px;
}
.select-xs {
height: 24px;
}
.pulse,
.dropdown-menu > li > a.pulse,
li.pulse > a.dropdown-toggle,
li.pulse.open > a.dropdown-toggle {
background-color: #F37626;
color: white;
}
/**
* Primary styles
*
* Author: Jupyter Development Team
*/
/** WARNING IF YOU ARE EDITTING THIS FILE, if this is a .css file, It has a lot
* of chance of beeing generated from the ../less/[samename].less file, you can
* try to get back the less file by reverting somme commit in history
**/
/*
* We'll try to get something pretty, so we
* have some strange css to have the scroll bar on
* the left with fix button on the top right of the tooltip
*/
@-moz-keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@-webkit-keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@-moz-keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@-webkit-keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
/*properties of tooltip after "expand"*/
.bigtooltip {
overflow: auto;
height: 200px;
-webkit-transition-property: height;
-webkit-transition-duration: 500ms;
-moz-transition-property: height;
-moz-transition-duration: 500ms;
transition-property: height;
transition-duration: 500ms;
}
/*properties of tooltip before "expand"*/
.smalltooltip {
-webkit-transition-property: height;
-webkit-transition-duration: 500ms;
-moz-transition-property: height;
-moz-transition-duration: 500ms;
transition-property: height;
transition-duration: 500ms;
text-overflow: ellipsis;
overflow: hidden;
height: 80px;
}
.tooltipbuttons {
position: absolute;
padding-right: 15px;
top: 0px;
right: 0px;
}
.tooltiptext {
/*avoid the button to overlap on some docstring*/
padding-right: 30px;
}
.ipython_tooltip {
max-width: 700px;
/*fade-in animation when inserted*/
-webkit-animation: fadeOut 400ms;
-moz-animation: fadeOut 400ms;
animation: fadeOut 400ms;
-webkit-animation: fadeIn 400ms;
-moz-animation: fadeIn 400ms;
animation: fadeIn 400ms;
vertical-align: middle;
background-color: #f7f7f7;
overflow: visible;
border: #ababab 1px solid;
outline: none;
padding: 3px;
margin: 0px;
padding-left: 7px;
font-family: monospace;
min-height: 50px;
-moz-box-shadow: 0px 6px 10px -1px #adadad;
-webkit-box-shadow: 0px 6px 10px -1px #adadad;
box-shadow: 0px 6px 10px -1px #adadad;
border-radius: 2px;
position: absolute;
z-index: 1000;
}
.ipython_tooltip a {
float: right;
}
.ipython_tooltip .tooltiptext pre {
border: 0;
border-radius: 0;
font-size: 100%;
background-color: #f7f7f7;
}
.pretooltiparrow {
left: 0px;
margin: 0px;
top: -16px;
width: 40px;
height: 16px;
overflow: hidden;
position: absolute;
}
.pretooltiparrow:before {
background-color: #f7f7f7;
border: 1px #ababab solid;
z-index: 11;
content: "";
position: absolute;
left: 15px;
top: 10px;
width: 25px;
height: 25px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
}
ul.typeahead-list i {
margin-left: -10px;
width: 18px;
}
ul.typeahead-list {
max-height: 80vh;
overflow: auto;
}
ul.typeahead-list > li > a {
/** Firefox bug **/
/* see https://github.com/jupyter/notebook/issues/559 */
white-space: normal;
}
.cmd-palette .modal-body {
padding: 7px;
}
.cmd-palette form {
background: white;
}
.cmd-palette input {
outline: none;
}
.no-shortcut {
display: none;
}
.command-shortcut:before {
content: "(command)";
padding-right: 3px;
color: #777777;
}
.edit-shortcut:before {
content: "(edit)";
padding-right: 3px;
color: #777777;
}
#find-and-replace #replace-preview .match,
#find-and-replace #replace-preview .insert {
background-color: #BBDEFB;
border-color: #90CAF9;
border-style: solid;
border-width: 1px;
border-radius: 0px;
}
#find-and-replace #replace-preview .replace .match {
background-color: #FFCDD2;
border-color: #EF9A9A;
border-radius: 0px;
}
#find-and-replace #replace-preview .replace .insert {
background-color: #C8E6C9;
border-color: #A5D6A7;
border-radius: 0px;
}
#find-and-replace #replace-preview {
max-height: 60vh;
overflow: auto;
}
#find-and-replace #replace-preview pre {
padding: 5px 10px;
}
.terminal-app {
background: #EEE;
}
.terminal-app #header {
background: #fff;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.terminal-app .terminal {
width: 100%;
float: left;
font-family: monospace;
color: white;
background: black;
padding: 0.4em;
border-radius: 2px;
-webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
}
.terminal-app .terminal,
.terminal-app .terminal dummy-screen {
line-height: 1em;
font-size: 14px;
}
.terminal-app .terminal .xterm-rows {
padding: 10px;
}
.terminal-app .terminal-cursor {
color: black;
background: white;
}
.terminal-app #terminado-container {
margin-top: 20px;
}
/*# sourceMappingURL=style.min.css.map */
</style>
<style type="text/css">
.highlight .hll { background-color: #ffffcc }
.highlight { background: #f8f8f8; }
.highlight .c { color: #408080; font-style: italic } /* Comment */
.highlight .err { border: 1px solid #FF0000 } /* Error */
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
.highlight .o { color: #666666 } /* Operator */
.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #BC7A00 } /* Comment.Preproc */
.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */
.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */
.highlight .gd { color: #A00000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #FF0000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #00A000 } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #0044DD } /* Generic.Traceback */
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #B00040 } /* Keyword.Type */
.highlight .m { color: #666666 } /* Literal.Number */
.highlight .s { color: #BA2121 } /* Literal.String */
.highlight .na { color: #7D9029 } /* Name.Attribute */
.highlight .nb { color: #008000 } /* Name.Builtin */
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.highlight .no { color: #880000 } /* Name.Constant */
.highlight .nd { color: #AA22FF } /* Name.Decorator */
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0000FF } /* Name.Function */
.highlight .nl { color: #A0A000 } /* Name.Label */
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #19177C } /* Name.Variable */
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
.highlight .mf { color: #666666 } /* Literal.Number.Float */
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
.highlight .sa { color: #BA2121 } /* Literal.String.Affix */
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
.highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.highlight .sx { color: #008000 } /* Literal.String.Other */
.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #0000FF } /* Name.Function.Magic */
.highlight .vc { color: #19177C } /* Name.Variable.Class */
.highlight .vg { color: #19177C } /* Name.Variable.Global */
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
.highlight .vm { color: #19177C } /* Name.Variable.Magic */
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
</style>
<style type="text/css">
/* Temporary definitions which will become obsolete with Notebook release 5.0 */
.ansi-black-fg { color: #3E424D; }
.ansi-black-bg { background-color: #3E424D; }
.ansi-black-intense-fg { color: #282C36; }
.ansi-black-intense-bg { background-color: #282C36; }
.ansi-red-fg { color: #E75C58; }
.ansi-red-bg { background-color: #E75C58; }
.ansi-red-intense-fg { color: #B22B31; }
.ansi-red-intense-bg { background-color: #B22B31; }
.ansi-green-fg { color: #00A250; }
.ansi-green-bg { background-color: #00A250; }
.ansi-green-intense-fg { color: #007427; }
.ansi-green-intense-bg { background-color: #007427; }
.ansi-yellow-fg { color: #DDB62B; }
.ansi-yellow-bg { background-color: #DDB62B; }
.ansi-yellow-intense-fg { color: #B27D12; }
.ansi-yellow-intense-bg { background-color: #B27D12; }
.ansi-blue-fg { color: #208FFB; }
.ansi-blue-bg { background-color: #208FFB; }
.ansi-blue-intense-fg { color: #0065CA; }
.ansi-blue-intense-bg { background-color: #0065CA; }
.ansi-magenta-fg { color: #D160C4; }
.ansi-magenta-bg { background-color: #D160C4; }
.ansi-magenta-intense-fg { color: #A03196; }
.ansi-magenta-intense-bg { background-color: #A03196; }
.ansi-cyan-fg { color: #60C6C8; }
.ansi-cyan-bg { background-color: #60C6C8; }
.ansi-cyan-intense-fg { color: #258F8F; }
.ansi-cyan-intense-bg { background-color: #258F8F; }
.ansi-white-fg { color: #C5C1B4; }
.ansi-white-bg { background-color: #C5C1B4; }
.ansi-white-intense-fg { color: #A1A6B2; }
.ansi-white-intense-bg { background-color: #A1A6B2; }
.ansi-bold { font-weight: bold; }
</style>
<style type="text/css">
/* Overrides of notebook CSS for static HTML export */
body {
overflow: visible;
padding: 8px;
}
div#notebook {
overflow: visible;
border-top: none;
}
@media print {
div.cell {
display: block;
page-break-inside: avoid;
}
div.output_wrapper {
display: block;
page-break-inside: avoid;
}
div.output {
display: block;
page-break-inside: avoid;
}
}
</style>
<!-- Custom stylesheet, it must be in the same directory as the html file -->
<link rel="stylesheet" href="custom.css">
<!-- Loading mathjax macro -->
<!-- Load mathjax -->
<script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML"></script>
<!-- MathJax configuration -->
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [ ['$','$'], ["\\(","\\)"] ],
displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
processEscapes: true,
processEnvironments: true
},
// Center justify equations in code and markdown cells. Elsewhere
// we use CSS to left justify single line equations in code cells.
displayAlign: 'center',
"HTML-CSS": {
styles: {'.MathJax_Display': {"margin": 0}},
linebreaks: { automatic: true }
}
});
</script>
<!-- End of mathjax configuration --></head>
<body>
<div tabindex="-1" id="notebook" class="border-box-sizing">
<div class="container" id="notebook-container">
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="Shack-Hartmann-Wavefront-Sensor-Laser-Tomography">Shack-Hartmann Wavefront Sensor Laser Tomography<a class="anchor-link" href="#Shack-Hartmann-Wavefront-Sensor-Laser-Tomography">¶</a></h1>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [1]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="kn">import</span> <span class="nn">numpy</span> <span class="kn">as</span> <span class="nn">np</span>
<span class="kn">import</span> <span class="nn">ceo</span>
<span class="o">%</span><span class="k">pylab</span> inline
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Populating the interactive namespace from numpy and matplotlib
</pre>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>A $N_L\times N_L$ Shack-Hartmann wavefront sensor (WFS) on a $D$ diameter telescope is going to be modeled with $n_P\times n_P$ pixels per lenslet on the detector.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [2]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">nLenslet</span> <span class="o">=</span> <span class="mi">60</span>
<span class="n">NA</span> <span class="o">=</span> <span class="n">nLenslet</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span>
<span class="n">D</span> <span class="o">=</span> <span class="mf">25.5</span>
<span class="n">n</span> <span class="o">=</span> <span class="mi">6</span>
<span class="n">nPx</span> <span class="o">=</span> <span class="n">n</span><span class="o">*</span><span class="n">nLenslet</span> <span class="o">+</span> <span class="mi">1</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>A arbitrary number of guide stars (GS) can be used by one WFS model, the assumption beeing that all the GS uses exactly the same WFS.
Here the GS are randomly distributed in a 2arcmin diameter field of regard.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [3]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">nGS</span> <span class="o">=</span> <span class="mi">6</span>
<span class="n">gs</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Source</span><span class="p">(</span><span class="s2">"K"</span><span class="p">,</span>
<span class="n">zenith</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">ones</span><span class="p">(</span><span class="n">nGS</span><span class="p">)</span><span class="o">*</span><span class="mi">30</span><span class="o">*</span><span class="n">math</span><span class="o">.</span><span class="n">pi</span><span class="o">/</span><span class="mi">180</span><span class="o">/</span><span class="mi">3600</span><span class="p">,</span>
<span class="n">azimuth</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">linspace</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="n">nGS</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="n">nGS</span><span class="p">)</span><span class="o">*</span><span class="mi">2</span><span class="o">*</span><span class="n">math</span><span class="o">.</span><span class="n">pi</span><span class="o">/</span><span class="n">nGS</span><span class="p">,</span>
<span class="n">height</span> <span class="o">=</span> <span class="mf">90e3</span><span class="p">,</span>
<span class="n">resolution</span><span class="o">=</span><span class="p">(</span><span class="n">nPx</span><span class="p">,</span><span class="n">nPx</span><span class="p">))</span>
<span class="n">calib_src</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Source</span><span class="p">(</span><span class="s2">"K"</span><span class="p">,</span> <span class="n">resolution</span><span class="o">=</span><span class="p">(</span><span class="n">nPx</span><span class="p">,</span><span class="n">nPx</span><span class="p">))</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>Next the telescope pupil mask is defined and applied to the GSs.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [4]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">tel</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">GMT</span><span class="p">(</span><span class="n">nPx</span><span class="p">,</span><span class="n">D</span><span class="p">)</span>
<span class="n">gs</span><span class="o">.</span><span class="n">masked</span><span class="p">(</span><span class="n">tel</span><span class="p">)</span>
<span class="n">calib_src</span><span class="o">.</span><span class="n">masked</span><span class="p">(</span><span class="n">tel</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>The shack-Hartmann WFS is defined with the <code>shackHartmann</code> class.
The mandatory parameters of the class constructor are:</p>
<ul>
<li>the lenslet array size $N_L$,</li>
<li>the number of pixel per lenslet in the pupil plane $n_P$ with pixels on the lenslet edges, meaning that the wavefront of the corresponding GSs must be sampled with $(N_L n_P+1) \times (N_L n_P+1)$ pixels,</li>
<li><p>the lenslet pitch $d$.</p>
<p>By default, the WFS imagelets are Nyquist sampled meaning that the default value of the discrete Fourier transform over-sampling factor is set to 2, i.e. $\alpha\equiv$ <code>DFT_osf=2</code>.
The size of each imagelet is then $\alpha n_P \times \alpha n_P$.</p>
<p>The detector framelet sizes are <code>N_PX_IMAGE</code>$\times $ <code>N_PX_IMAGE</code> pixels each with the default value <code>N_PX_IMAGE</code> $=n_P$.
If the imagelets are larger, they are cropped to the specified size, if they are smaller, the framelets are padded with zeros.</p>
<p>Finally the framelets can be binned down by a factor $\beta\equiv$ <code>BIN_IMAGE</code> leading to a final framelet size of $${N_I\over\beta}\times{N_I\over\beta}$$ with $N_I\equiv$ <code>N_PX_IMAGE</code>.
The default value of <code>BIN_IMAGE</code> is 1.</p>
<p>The pixel scale is given by:
$${\beta\lambda \over \alpha d}$$
and the lenslet field-of-view is
$$N_I{\lambda\over \alpha d}$$
with $\lambda$ the wavelength.</p>
<p>If more than on GS is assigned to the WFS, the parameter <code>N_GS</code> needs to be set.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [5]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">d</span> <span class="o">=</span> <span class="n">D</span><span class="o">/</span><span class="n">nLenslet</span>
<span class="n">wfs</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">ShackHartmann</span><span class="p">(</span><span class="n">nLenslet</span><span class="p">,</span> <span class="n">n</span><span class="p">,</span> <span class="n">d</span><span class="p">,</span> <span class="n">N_PX_IMAGE</span><span class="o">=</span><span class="mi">2</span><span class="o">*</span><span class="p">(</span><span class="n">n</span><span class="o">+</span><span class="mi">1</span><span class="p">))</span>
<span class="n">wfs</span><span class="o">.</span><span class="n">calibrate</span><span class="p">(</span><span class="n">calib_src</span><span class="p">,</span><span class="mf">0.5</span><span class="p">)</span>
<span class="n">imshow</span><span class="p">(</span><span class="n">wfs</span><span class="o">.</span><span class="n">flux</span><span class="o">.</span><span class="n">host</span><span class="p">()</span><span class="o">.</span><span class="n">T</span><span class="p">,</span><span class="n">interpolation</span><span class="o">=</span><span class="s1">'none'</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt output_prompt">Out[5]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.image.AxesImage at 0x2b368c38ad50></pre>
</div>
</div>
<div class="output_area">
<div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
AElFTkSuQmCC
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [6]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">px_scale</span> <span class="o">=</span> <span class="mf">2.179e-6</span><span class="o">/</span><span class="n">d</span><span class="o">/</span><span class="mi">2</span>
<span class="n">coef_med</span> <span class="o">=</span> <span class="p">[]</span>
<span class="n">px</span> <span class="o">=</span> <span class="n">arange</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mf">0.05</span><span class="p">)</span>
<span class="k">for</span> <span class="n">k</span> <span class="ow">in</span> <span class="n">px</span><span class="p">:</span>
<span class="n">wfs</span><span class="o">.</span><span class="n">pointing</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="o">-</span><span class="n">px_scale</span><span class="o">*</span><span class="n">k</span><span class="p">,</span><span class="n">dtype</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">float32</span><span class="p">,</span><span class="n">ndmin</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="n">dtype</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">float32</span><span class="p">,</span><span class="n">ndmin</span><span class="o">=</span><span class="mi">1</span><span class="p">))</span>
<span class="n">wfs</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="n">wfs</span><span class="o">.</span><span class="n">analyze</span><span class="p">(</span><span class="n">calib_src</span><span class="p">)</span>
<span class="n">c</span> <span class="o">=</span> <span class="n">wfs</span><span class="o">.</span><span class="n">c</span><span class="o">.</span><span class="n">host</span><span class="p">()</span>
<span class="n">cx</span> <span class="o">=</span> <span class="n">c</span><span class="p">[</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">:</span><span class="n">c</span><span class="o">.</span><span class="n">size</span><span class="o">/</span><span class="mi">2</span><span class="p">]</span>
<span class="n">m</span> <span class="o">=</span> <span class="n">wfs</span><span class="o">.</span><span class="n">valid_lenslet</span><span class="o">.</span><span class="n">f</span><span class="o">.</span><span class="n">host</span><span class="p">()</span>
<span class="n">cx</span> <span class="o">=</span> <span class="n">cx</span><span class="p">[</span><span class="n">m</span><span class="o">.</span><span class="n">flatten</span><span class="p">()</span><span class="o">></span><span class="mi">0</span><span class="p">]</span>
<span class="c1">#print k, np.mean(cx/px_scale/k) , np.median(cx/px_scale/k)</span>
<span class="n">coef_med</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">median</span><span class="p">(</span><span class="n">cx</span><span class="o">/</span><span class="n">px_scale</span><span class="p">))</span>
<span class="n">cp</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">polyfit</span><span class="p">(</span><span class="n">px</span><span class="p">,</span> <span class="n">coef_med</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="k">print</span> <span class="n">cp</span>
<span class="n">plot</span><span class="p">(</span><span class="n">px</span><span class="p">,</span><span class="n">coef_med</span><span class="p">,</span><span class="n">px</span><span class="p">,</span><span class="n">coef_med</span><span class="o">/</span><span class="n">cp</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
<span class="n">grid</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>[ 1.00597442 -0.02863912]
</pre>
</div>
</div>
<div class="output_area">
<div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
QmCC
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [7]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">wfs</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">ShackHartmann</span><span class="p">(</span><span class="n">nLenslet</span><span class="p">,</span> <span class="n">n</span><span class="p">,</span> <span class="n">d</span><span class="p">,</span> <span class="n">N_GS</span> <span class="o">=</span> <span class="n">nGS</span><span class="p">,</span> <span class="n">N_PX_IMAGE</span><span class="o">=</span><span class="mi">2</span><span class="o">*</span><span class="p">(</span><span class="n">n</span><span class="o">+</span><span class="mi">1</span><span class="p">))</span>
<span class="c1">#wfs.slopes_gain = 1.0/cp[0]</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>The WFS reference slopes and valid lenslets are set with the <code>calibrate</code> method passing a <code>Source</code> object which wavefront sets the reference slopes and the lenslet intensity threshold used to discard the lenset with too litle illumination.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [8]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">wfs</span><span class="o">.</span><span class="n">calibrate</span><span class="p">(</span><span class="n">gs</span><span class="p">,</span><span class="mf">0.5</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [9]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="k">print</span> <span class="n">wfs</span><span class="o">.</span><span class="n">valid_actuator</span><span class="o">.</span><span class="n">f</span><span class="o">.</span><span class="n">host</span><span class="p">()</span><span class="o">.</span><span class="n">shape</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>(22326, 1)
</pre>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [10]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">validActuator</span> <span class="o">=</span> <span class="n">wfs</span><span class="o">.</span><span class="n">valid_actuator</span>
<span class="n">validActuator_f</span> <span class="o">=</span> <span class="n">validActuator</span><span class="o">.</span><span class="n">f</span>
<span class="n">imshow</span><span class="p">(</span><span class="n">validActuator_f</span><span class="o">.</span><span class="n">host</span><span class="p">(</span><span class="n">shape</span><span class="o">=</span><span class="p">((</span><span class="n">nLenslet</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span><span class="o">*</span><span class="n">nGS</span><span class="p">,(</span><span class="n">nLenslet</span><span class="o">+</span><span class="mi">1</span><span class="p">)))</span><span class="o">.</span><span class="n">T</span><span class="p">,</span><span class="n">interpolation</span><span class="o">=</span><span class="s1">'None'</span><span class="p">)</span>
<span class="n">validActuator_f</span><span class="o">.</span><span class="n">host_data</span><span class="o">.</span><span class="n">sum</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt output_prompt">Out[10]:</div>
<div class="output_text output_subarea output_execute_result">
<pre>13740.0</pre>
</div>
</div>
<div class="output_area">
<div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
gg==
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>The source wavefront can now be analyzed with respect to the former calibration.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [11]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">wfs</span><span class="o">.</span><span class="n">analyze</span><span class="p">(</span><span class="n">gs</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>The detector frame is saved in the <code>cuFloatArray</code> object <code>frame</code>.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [12]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1">#figure(figsize=(12,12))</span>
<span class="c1">#imshow(wfs.frame.host().transpose(),interpolation='none')</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>A <code>Atmosphere</code> object is defined next and the GSs are propagated through:</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [13]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">atm</span> <span class="o">=</span><span class="n">ceo</span><span class="o">.</span><span class="n">GmtAtmosphere</span><span class="p">(</span><span class="mf">20e-2</span><span class="p">,</span><span class="mi">30</span><span class="p">)</span>
<span class="n">p</span> <span class="o">=</span> <span class="n">D</span><span class="o">/</span><span class="p">(</span><span class="n">nPx</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span>
<span class="n">atm</span><span class="o">.</span><span class="n">get_phase_screen</span><span class="p">(</span><span class="n">gs</span><span class="p">,</span> <span class="n">p</span><span class="p">,</span> <span class="n">nPx</span><span class="p">,</span> <span class="n">p</span><span class="p">,</span> <span class="n">nPx</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [14]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1">#figure(figsize=(12,12))</span>
<span class="c1">#imshow(gs.phase.host().transpose(),interpolation='none')</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>The WFS detector need to be reset before proceeding with a new wavefront analysis.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [15]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">wfs</span><span class="o">.</span><span class="n">reset</span><span class="p">()</span>
<span class="n">wfs</span><span class="o">.</span><span class="n">analyze</span><span class="p">(</span><span class="n">gs</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [16]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1">#figure(figsize=(12,12))</span>
<span class="c1">#imshow(wfs.frame.host().transpose(),interpolation='none')</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>The WFS centroids are accessible through the <code>cuFloatArray</code> object <code>c</code>.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [17]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1">#figure(figsize=(12,12))</span>
<span class="c1">#imshow(wfs.c.host().reshape(2*nLenslet*nGS</span>
<span class="c1"># ,nLenslet).transpose(),interpolation='none')</span>
<span class="c1">#colorbar()</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [18]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">src</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Source</span><span class="p">(</span><span class="s2">"K"</span><span class="p">,</span><span class="n">resolution</span><span class="o">=</span><span class="p">(</span><span class="n">NA</span><span class="p">,</span><span class="n">NA</span><span class="p">))</span>
<span class="n">src</span><span class="o">.</span><span class="n">masked</span><span class="p">(</span><span class="n">validActuator</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [19]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">lmmse</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">LmmseSH</span><span class="p">(</span><span class="n">atm</span><span class="p">,</span><span class="n">gs</span><span class="p">,</span><span class="n">src</span><span class="p">,</span><span class="n">wfs</span><span class="p">,</span><span class="s2">"MINRES"</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [20]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">lmmse</span><span class="o">.</span><span class="n">estimation</span><span class="p">(</span><span class="n">wfs</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [21]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">lmmse_phase</span> <span class="o">=</span> <span class="n">lmmse</span><span class="o">.</span><span class="n">phase</span>
<span class="n">mask_actuator</span> <span class="o">=</span> <span class="n">validActuator_f</span><span class="o">.</span><span class="n">host_data</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">nLenslet</span><span class="o">+</span><span class="mi">1</span><span class="p">,:]</span>
<span class="n">imshow</span><span class="p">(</span><span class="n">lmmse_phase</span><span class="o">.</span><span class="n">host</span><span class="p">(</span><span class="n">units</span><span class="o">=</span><span class="s1">'micron'</span><span class="p">,</span><span class="n">zm</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">mask</span><span class="o">=</span><span class="n">mask_actuator</span><span class="p">),</span><span class="n">interpolation</span><span class="o">=</span><span class="s1">'none'</span><span class="p">)</span>
<span class="n">colorbar</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt output_prompt">Out[21]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2b368c695610></pre>
</div>
</div>
<div class="output_area">
<div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [22]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">atm</span><span class="o">.</span><span class="n">get_phase_screen</span><span class="p">(</span><span class="n">src</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">NA</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">NA</span><span class="p">,</span><span class="mf">0.0</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [23]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">src_phase</span> <span class="o">=</span> <span class="n">src</span><span class="o">.</span><span class="n">phase</span>
<span class="n">ps_e</span> <span class="o">=</span> <span class="n">src_phase</span><span class="o">.</span><span class="n">host</span><span class="p">(</span><span class="n">units</span><span class="o">=</span><span class="s1">'micron'</span><span class="p">,</span><span class="n">zm</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">mask</span><span class="o">=</span><span class="n">mask_actuator</span><span class="p">)</span> <span class="o">-</span> \
<span class="n">lmmse_phase</span><span class="o">.</span><span class="n">host</span><span class="p">(</span><span class="n">units</span><span class="o">=</span><span class="s1">'micron'</span><span class="p">,</span><span class="n">zm</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span><span class="n">mask</span><span class="o">=</span><span class="n">mask_actuator</span><span class="p">)</span>
<span class="n">wfe_rms</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">std</span><span class="p">(</span><span class="n">ps_e</span><span class="p">[</span><span class="n">mask_actuator</span><span class="o">!=</span><span class="mi">0</span><span class="p">])</span><span class="o">*</span><span class="mf">1e3</span>
<span class="k">print</span> <span class="s2">"wavefront error: </span><span class="si">%6.2f</span><span class="s2">nm"</span> <span class="o">%</span> <span class="n">wfe_rms</span>
<span class="n">imshow</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">concatenate</span><span class="p">((</span><span class="n">src_phase</span><span class="o">.</span><span class="n">host_data</span><span class="p">,</span><span class="n">lmmse_phase</span><span class="o">.</span><span class="n">host_data</span><span class="p">),</span><span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span><span class="n">interpolation</span><span class="o">=</span><span class="s1">'none'</span><span class="p">)</span>
<span class="n">colorbar</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>wavefront error: 134.45nm
</pre>
</div>
</div>
<div class="output_area">
<div class="prompt output_prompt">Out[23]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2b368c803e10></pre>
</div>
</div>
<div class="output_area">
<div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [24]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">imshow</span><span class="p">(</span><span class="n">ps_e</span><span class="o">*</span><span class="mf">1e3</span><span class="p">,</span><span class="n">interpolation</span><span class="o">=</span><span class="s1">'None'</span><span class="p">)</span>
<span class="n">colorbar</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt output_prompt">Out[24]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2b368c967b90></pre>
</div>
</div>
<div class="output_area">
<div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [25]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">np</span><span class="o">.</span><span class="n">exp</span><span class="p">(</span><span class="o">-</span><span class="p">(</span><span class="mi">2</span><span class="o">*</span><span class="n">math</span><span class="o">.</span><span class="n">pi</span><span class="o">*</span><span class="n">wfe_rms</span><span class="o">/</span><span class="mf">2.2e3</span><span class="p">)</span><span class="o">**</span><span class="mi">2</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area">
<div class="prompt output_prompt">Out[25]:</div>
<div class="output_text output_subarea output_execute_result">
<pre>0.86291018127947128</pre>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In [26]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span>
</pre></div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>