<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<title>AtmospherePhaseScreenGradient</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="Atmosphere-Phase-Screen-Gradient">Atmosphere Phase Screen Gradient<a class="anchor-link" href="#Atmosphere-Phase-Screen-Gradient">¶</a></h1>
</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>Phase screens are computed with an <code>Atmosphere</code> and a <code>Source</code> object.
Lets import the <code>ceo</code> module first.</p>
</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">math</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>The atmosphere is defined with</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="c1">#atm = ceo.Atmosphere(0.15,30,altitude=10e3,wind_speed=10)</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">0.15</span><span class="p">,</span><span class="mi">30</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>A V band on-axis source is defined first,</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">NL</span> <span class="o">=</span> <span class="mi">20</span>
<span class="n">NA</span> <span class="o">=</span> <span class="n">NL</span><span class="o">+</span><span class="mi">1</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">"V"</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>
</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 telescope pupil is defined as the Giant Magellan Telescope and mask for the deformable mirror actuators is also set.</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">D</span> <span class="o">=</span> <span class="mf">8.0</span>
<span class="c1">#tel = ceo.Telescope(NL*16)</span>
<span class="n">tel</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Telescope</span><span class="p">(</span><span class="n">NL</span><span class="o">*</span><span class="mi">16</span><span class="p">,</span><span class="n">D</span><span class="p">)</span>
<span class="n">dm</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Mask</span><span class="p">(</span><span class="n">NA</span><span class="p">,</span><span class="n">D</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 [5]:</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">tel</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">shape</span><span class="o">=</span><span class="p">(</span><span class="n">NL</span><span class="o">*</span><span class="mi">16</span><span class="p">,</span><span class="n">NL</span><span class="o">*</span><span class="mi">16</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 0x2ab46139b910></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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
GQ4FM8v4f8N4fVXs1/4MAAAAAElFTkSuQmCC
"
>
</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>Centroiding</code> object is defined, it will contains the phase screen gradient.
The <code>fried_geometry</code> method computes the DM valid actuator mask according to the telescope pupil shape and the given intensity <code>threshlod</code>.
The <code>Source</code> object is masked with the dm mask.</p>
</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">d</span> <span class="o">=</span> <span class="n">D</span><span class="o">/</span><span class="n">NL</span>
<span class="n">cog</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Centroiding</span><span class="p">(</span><span class="n">NL</span><span class="p">)</span>
<span class="n">cog</span><span class="o">.</span><span class="n">fried_geometry</span><span class="p">(</span><span class="n">dm</span><span class="p">,</span> <span class="n">tel</span><span class="p">,</span> <span class="mi">16</span><span class="p">,</span> <span class="mf">0.5</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">dm</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 [7]:</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">dm</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">shape</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">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[7]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.image.AxesImage at 0x2ab46149fa10></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 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 $n \times n$ phase screen of $D$ width is computed next</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">p</span> <span class="o">=</span> <span class="n">D</span><span class="o">/</span><span class="p">(</span><span class="n">NA</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">src</span><span class="p">,</span><span class="n">p</span><span class="p">,</span><span class="n">NA</span><span class="p">,</span><span class="n">p</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 [9]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">dm_mask</span> <span class="o">=</span> <span class="n">dm</span><span class="o">.</span><span class="n">f</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">imshow</span><span class="p">(</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">dm_mask</span><span class="o">.</span><span class="n">host</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[9]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2ab4615f0b10></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 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 phase screen gradient is computed with the <code>Atmosphere</code> method <code>get_phase_screen_gradient</code>.
The gradient is computed over a square lenslet array of size $N_L \times N_L$ with $d$ the pitch in meter.
The phase screen gradient is computed for a given <code>Source</code> object that contains one or more guide stars.
The phase screen gradient can be computed for a given time delay.
The $c_x$ and $c_y$ centroids are saved in a <code>Centroiding</code> object.</p>
</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">atm</span><span class="o">.</span><span class="n">get_phase_screen_gradient</span><span class="p">(</span><span class="n">cog</span><span class="p">,</span><span class="n">NL</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">src</span><span class="p">,</span><span class="mf">0.0</span><span class="p">)</span>
<span class="n">c</span> <span class="o">=</span> <span class="n">cog</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">units</span><span class="o">=</span><span class="s1">'arcsec'</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 [11]:</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">c</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="n">NL</span><span class="o">*</span><span class="mi">2</span><span class="p">,</span><span class="n">NL</span><span class="p">)</span><span class="o">.</span><span class="n">transpose</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[11]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2ab4617549d0></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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
55bGoEVEcqje46ArmZNQRCTf3Mt7VMjMlprZd83s6eK/L5qn1cw2mdmPzGx3cT7Xf1lqu+qgRaSh
1WjS2A8D33f3jcD3i6+nOgO8x92vALYA/8vMlmRtVB20iDS22kx5dRPwheLzLwC/8qJquD/l7k8X
nx8AeoHMUX2NQYtIQyvzDLnLzHZNer3N3bdNYzfL3f0ggLsfNLM4QQpgZtcAbcAzWe875zroo1fE
H7l5KF7v5MULw7JD3en5D7tWxPsaWRJfWj5yfzpa48zGdNIjgM6nMiZbnPspBHPPM34JQ+fHDTi/
N/5P6Ml16Y1mdRhDXXFhNC/mmWVx1MponDeKI1dnHDONwoHxsnroPnffnPUGM/sesCJR9JHpVKk4
6fZfAre6e2aMyTnXQYvIuaVaURzu/uZwH2aHzWxl8ex5JYXhi9T7FgF/B/w3d3+w1D41Bi0ija0G
URzAduDW4vNbgb+d+gYzawO+DvyFu/9NORtVBy0iDa1GURy3AzeY2dPADcXXmNlmM7uz+J53A28A
3mtmDxcfm7I2qiEOEWlcNUo36u5HgTcllu8C3l98/lfAX01nu+qgRaRhGWDlXSTMJXXQItLQTMmS
yjN0qKfv8T/+4NlZzbqAvlruP1B5Pb6YXvx8LetQHXmoRx7qAPmoRx7qAHNXj7UVb0EzqpTP3f//
XTNmtqtU3GEt5KEeeahDXuqRhzrkpR55qEOe6jEzVYvSmBMa4hCRhlbP2ezUQYtIY9MZ9IxM5z73
2ZSHeuShDpCPeuShDpCPeuShDpCfekyf13cUh3kd/3UREcmyaMEqf/XL/13J933vR//9oTyOs2uI
Q0QaWj2H2c3Jrd5mtsXMnjSzvWaWSmxdizp0m9mjxdstd5Veo2r7vcvMes3ssUnLSs7GUIM6fNzM
Xph0C+o/n806FPe5xszuM7PHi7NM/Ifi8pq1R0YdatoeZjbPzP7JzB4p1uN/FJevN7MfF9viy8V8
DrWuw91m9my5tyfnTm1yccyKmnfQZtYM3AG8FbgcuMXMLq91PYqud/dNNf6vzd0UZlOYrJzZGGa7
DgCfLrbHJnffMct1ABgD/pO7Xwa8Bvjt4rFQy/aI6gC1bY9h4I3ufhWwCdhiZq8B/qRYj43AceB9
c1AHgA9NaouHZ7EO1eXARBmPnJqLM+hrgL3uvs/dR4B7KMxGcE5w9weAY1MWl5yNoQZ1qDl3P+ju
Pyk+Pw08Dqyihu2RUYea8oL+4svW4sOBNwJfLS6f7baI6lC3DMe89COv5qKDXgXsn/S6hzn4QVA4
8L5jZg+Z2dY52P9kvzAbA5A5G8Msuq04meVdsz3MMpWZrQOuBn7MHLXHlDpAjdvDzJrN7GEKuYS/
S2G2jRPuPlZ8y6z/VqbWwd3PtsUfFtvi02bWPpt1qLqJidKPnJqLDjo1LcRc/Am71t1fQWGo5bfN
7A1zUIc8+SywgcJ/bQ8Cn6rVjs1sAfA14D+6+6la7bdEHWreHu4+7u6bgNUU/qd5WepttayDmV0J
/C5wKfAqYCnwX2ezDlWlIY5p6wHWTHq9GjhQ60oUJ23E3XspJNG+ptZ1mORwcRaGs9PhJGdjmE3u
frj445wA/pwatYeZtVLoGP/a3f9PcXFN2yNVh7lqj+K+TwD3UxgTX2JmZ6OtavZbmVSHLcVhIHf3
YeB/M7e/lWnTEMf07AQ2Fq9OtwE3U5iNoGbMrNPMFp59DtwIPJa91qwqORvDbDvbIRa9gxq0h5kZ
8HngcXf/n5OKatYeUR1q3R5mtszMlhSfdwBvpjAefh/wzuLbZrstUnV4YtIfS6MwBj6Xv5Xpq+Mo
jprHQbv7mJndBtwLNAN3ufvuGldjOfD1wvFGC/BFd/92LXZsZl8CrqMwi3AP8DEKsy98xczeRyEJ
3rvmoA7XFcOnHOgGfnM261B0LfBvgEeL454Av0dt2yOqwy01bo+VwBeKUU5NwFfc/Ztmtge4x8z+
APgphT8mta7DD8xsGYXhyYeB35rFOlRZvjvgUnQnoYg0rMUdK/21L/n1ku+7d88f6U5CEZFay/MY
cynqoEWksamDFhHJIQcm1EGLiORQfV8kVActIo1NHbSISA45MJ7jWwVLUActIg3MwdVBi4jkk4Y4
RERySFEcIiI5pjNoEZGcquMOek7mJBQRqQl3GB8v/ajQdObRNLNFxfkuP1Nqu+qgRaSx1Sbd6HTm
0fx94IflbFQdtIg0ttp00GXNo2lmr6SQ7vg75WxUHbSINDAvRHGUehRyo++a9JjuPKUl59E0syYK
U6d9qNyN6iKhiDQuBy/vRpW+Uvmgzex7wIpE0UfKrM0HgB3uvr84WUhJ6qBFpLFV6VZvd39zVGZm
h81spbsfzJhH87XA683sA8ACoM3M+t09HK9WBy0ijcsdJmpyq/fZeTRvJ5g70t3/1dnnZvZeYHNW
5wwagxaRRlebi4S3AzeY2dPADcXXmNlmM7tzphvVGbSINDSvwRm0ux8F3pRYvgt4f2L53cDdpbar
DlpEGpgnvB5NAAAAeElEQVQS9ouI5JOSJYmI5JMDXoVbueeKOmgRaVyuhP0iIrnldTzEYV7HA+gi
IlnM7NtAVxlv7XP3LbNdn+lSBy0iklO6UUVEJKfUQYuI5JQ6aBGRnFIHLSKSU+qgRURySh20iEhO
qYMWEckpddAiIjmlDlpEJKf+H1JOkIHcyb4OAAAAAElFTkSuQmCC
"
>
</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>From the phase gradient, the phase screen can be reconstructed with a linear minimim mean square error reconstructor (LMMSE).
A <code>Lmmse</code> object is used to perform the phase estimation.
The parameters are:</p>
<ul>
<li>an <code>Atmosphere</code> object,</li>
<li>a <code>Source</code> object representing the guide star(s),</li>
<li>the number of guide stars,</li>
<li>a <code>Source</code> object representing the star(s) in the estimation direction(s),</li>
<li>the number of star(s) in the estimation direction(s),</li>
<li>the wavefront sampling step in meter,</li>
<li>the number of sample across the wavefront,</li>
<li>a <code>Mask</code> object representing the pupil,</li>
<li>the iterative solver.</li>
</ul>
</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="n">src_lmmse</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Lmmse</span><span class="p">(</span><span class="n">atm</span><span class="p">,</span><span class="n">src</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">NL</span><span class="p">,</span><span class="n">dm</span><span class="p">,</span><span class="s2">"MINRES"</span><span class="p">)</span>
<span class="n">src_lmmse</span><span class="o">.</span><span class="n">estimation</span><span class="p">(</span><span class="n">cog</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 [13]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">src_lmmse_phase</span> <span class="o">=</span> <span class="n">src_lmmse</span><span class="o">.</span><span class="n">phase</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">src_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">dm_mask</span><span class="o">.</span><span class="n">host</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 output_prompt">Out[13]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2ab4618b0650></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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
YvD/vbb0p2xxV94AAAAASUVORK5CYII=
"
>
</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="n">ps_e</span> <span class="o">=</span> <span class="n">src_lmmse_phase</span><span class="o">.</span><span class="n">host_data</span> <span class="o">-</span> <span class="n">src_phase</span><span class="o">.</span><span class="n">host_data</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[14]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2ab4619f9190></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 [15]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="k">print</span> <span class="s2">"wavefront error: </span><span class="si">%5.2f</span><span class="s2">nm"</span> <span class="o">%</span> <span class="p">(</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">dm_mask</span><span class="o">.</span><span class="n">host_data</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="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: 81.47nm
</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="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">NL</span><span class="o">+</span><span class="mi">1</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 [17]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></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">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">tel_osf</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Telescope</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_osf</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 [18]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">gs_lmmse</span> <span class="o">=</span> <span class="n">ceo</span><span class="o">.</span><span class="n">Lmmse</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">gs</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">NL</span><span class="p">,</span><span class="n">tel_osf</span><span class="p">,</span><span class="s2">"MINRES"</span><span class="p">,</span><span class="n">osf</span><span class="o">=</span><span class="n">n</span><span class="p">)</span>
<span class="n">gs_lmmse</span><span class="o">.</span><span class="n">estimation</span><span class="p">(</span><span class="n">cog</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">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 [20]:</div>
<div class="inner_cell">
<div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">tel_osf_mask</span> <span class="o">=</span> <span class="n">tel_osf</span><span class="o">.</span><span class="n">f</span>
<span class="n">gs_phase</span> <span class="o">=</span> <span class="n">gs</span><span class="o">.</span><span class="n">phase</span>
<span class="n">gs_lmmse_phase</span> <span class="o">=</span> <span class="n">gs_lmmse</span><span class="o">.</span><span class="n">phase</span>
<span class="n">fig</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span><span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">5</span><span class="p">))</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">gs_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">tel_osf_mask</span><span class="o">.</span><span class="n">host</span><span class="p">()),</span>
<span class="n">gs_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">tel_osf_mask</span><span class="o">.</span><span class="n">host</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 output_prompt">Out[20]:</div>
<div class="output_text output_subarea output_execute_result">
<pre><matplotlib.colorbar.Colorbar at 0x2ab461b344d0></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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
BLN02hbolRlRBoyMSU6lUmaG/gqrJrfFuWOOz2nW67BApS+wRlatYSZUAzRK9Hzmr9z72PbiM8M9
v3v5RttcZIIVzB0AixjF2c43TZ+zcBybaSwFD75rczZMUQxzCn3BcGwdQ7Lt6ABbsx/A2UGjrUMt
UC/ji0MwgKdeYqjYVi/iNRqnaE1G9vVss+1HbEVzMebzbAxlrUu5W4xcnm1Kds59nptXwvuZNPm+
Z8acUDO2YHkHZRar7czc02Zjn2wdf5uOJEvUtqTinvDHzG34c1Adi9uTLvyp1/vKp3uA6JgEAoFA
IBDYFwRjcp+xeMEQsS20PDozVTbqjjpENcOyrS6TmCevLEvPscsiemudu+RKB3DpZ3K01oixqn8z
ZCzYuHY33YsXSVhrxo6NoStjYsJtbctu11ikRmaH7Ac1MTnqHNq43SzQdzORnO/Edzk6mNN12Kp0
8myRx/nZXmo2nCNsFVCS5XBursaqMJDoJJdU1+/olJo9Peq6HJIyK9E8e6zbYVqRNmJ5KzfFt9Nl
ufisASwX5o0gO9raKtOzU3aEJda3O3OelPWuai+9VUxHwvo9xfXKPiB1G3KNkpQzgTSabE/Uibhw
hwUyc4I0Zp3uBxbKQvbLfnxvOeakcZRA06QxU6JT/+x0kow9afR5mBux5za6vjGmpKPewjEx9myd
cmrGPibQdbNPisFuq1rXASkYk6lnY27fXMYoynq+6aq63L4+1c+O1dnp6zalNn+QuZD5PLdMkYVz
Jjzz4Lw+qv+NJSJzUru6Dl86LY+1KdfQGv7R5wzNSH9lhfr0JOd18jn03jzi218eoncWvw6Ijsn9
BSsOHx4opczCeW02HeM8dlooGuVLcbOpD3e3a21oZanb4XANbeH5vQiwZoqvG7JZK43PtnD+Zrsw
OnjuWbaXTNfmF6GaonFIqtHtcvtbNV5LyLS5bc/M02qhHU3VkHJHwWqIdfXUC++AbF7nxWEmvmXn
I6F4edQvo+6WXh9Li0Uuj0wBqJqDLfQH2Kf19osGrQpKjfLV9N7EF1lxss2WfeW5cX7PYy8M0dhR
eEwt6I+GUtal+RoApM0mp87yZarCWFlph0XH6uz3JuX3WH/ICnzDhKJgFk1Dl3Jb9Dww1ZrI9uCc
gQfy8lkdqNC7b2bvZf+bUQpdvejVOg76ud/lZ2qnv8JzQlm/jXSKJX3uXJzdMfHbPQ1SP15uWGt6
fW97XnU6nF269f3ccDQSciViHiMTA2pPv+oH0+z8faV1222anH8qih9rG8pynRerUNzU7wRJE/sy
40G9Vny+UxpfuLkOij0HqXjo+I7S+4rDoFw3CVq+p50R3ByqobZRR3R/OyrXhTHZnwTrQCAQCAQC
Dz2uDWOy/ePHAAAHf/6LAHI0VRbS8ym5ZBg8mF7XA7hzfFAty8iqc0LZlHIhLA4Ndbva9roje1Ok
FnLoqfepvgpuo2kKi+bbu2o7nUaTnQ0D5WMeRXddHUV55iS1KacXMhpTsStFk5yWwz42vENh7FqX
dbRxtxKLbvpCXFbtrxjiocW69ZBZg1DZhOWu9lNPreSUQx7bbR26sSERpvV2wIFG4kwPdsX7ODRi
218tbP1GU37T4XCPmOGaDh1JMewzYkyON9oGDeF2VtnODNs4JEdhbLvNhQSBIfLi0BNN4xptf+dM
zqyI30Lw9Lfef9Hd5skXAABuf+2XCi3kDDNwDsYhp9+Olz1vwJkzU8dDLeV35WdMLHsWM1Mtw+3N
Nmqi8a6omw0pkGVoJJdR6OpF3agZUlM8T77Q34i+KdZ2Q0LGtNnI6RlDPUBOC+czxHuwZE7IpJp1
e6r3VzA/fpiWsO0vCma4q9/lI8t5YzwLhsaLgUkR673XsK1tLvgnXtzPd4qz1q++4zp6PT71hj2N
96dYqj3FtemYBAKBQCAQuAdEx+TBgGPI7JMyHXfR9mYVT/MyilNPNK3XsugstQ8mkO07MiXKguwK
23ddt13U7AeX5cXudX/luDBZEEZc4oqYlW3xyiuyONYmsiGMNpMUaXp+cFo/aiG1TqmP9qjJGocl
9Rt1j78pA/eZ0M0LNXM6cbFqrUcbI2URrVmrs8hXX69kBQBbQX9rqcvoZiiGVYajeX4QxabbB2hW
ZJlI+dQ6F4ptsxBOAKYmW0hKOkh3SEv67S4LDR3bIbS4P1Z9yqGyOo2YAVwef3fRHoWyt7JhX3dL
1ylqAQ7npY7o+vtPllQ4WO4K8eUwb6roHYCKWfHMhS3rxKrlMiOMWJFindll/AIF+D5w6bWe85hk
VEYVDMudTuwLBWPIHVjdxzTejp9Su9GMj2mu4F8+wKxVsnuOzxnq5xdSsgVuSpgBntSfJyC+8F9h
npdZm3qaV87akJHdu4c3diu35e3saXnP9/UiIZFdp75lxJA09edGRmZ4fetP1H5BcH00JteuYxII
BAKBQOACiI7Jg8HRHz4OYBjrBoBVoSOhxoSmacyeYUeZrIgURfEYse3W1AjUKStJM3nkoMNGLeeZ
CZNcqm7yttW7JqvgaTZ1qIZuLgAQgaX+ikut9J/NRE0SYP+jmopT34uxIil/pyBz0ur8vrgrzP7a
6UTMKp0MBP3vjpJFcLSp94UAyzFZCwhdWi91Lv2KepEiU8Uax2MjdcKoLGtMyIj0jM5YOG9Tr0ML
eab5Du3T68FbjFk/TCNuGqSls9PmdzrAnbh9FgZMKQeYNlZPYymXcdP1SE1NgVBzYkxJUzMlD7pg
2Bc/8lK8/C9/GsDYuj1burvPxf+eKTHGZKJgnt1zU6wEULEjpYakXmbiIOxZqVlLS8lt6u8ndSOz
bZqY555Ne4YqrUjxIgCy1sQXxOwxy1Cw4F/O+skspJVi4JQMZ6a1qv3V7c/MxTCtn2tJaWQWOIIv
ndCn/Nz29XSUjtwIRrSN07BY+zu3zWo7vMdq3QtSW7A/dTvJrhhDTP2cSKGVG6affv2eaksKnCvV
ew9w7TomgUAgEAgE7hIhfn3weOHhMHZPAyVBjtxo/+5BPxBau2+3bWZP2JtmT5kZH1oYMG1ai6DS
8Yzd+8TnnBWj219rlMmCg4zaln3hBaAsjhcM+PHmZcqF05wjEEvPm6Zizd59saFdHWGZ5oRRTRqP
i1sEx4CEySa63PZRsUJzSffJzJtu6RgmyXqWXr+jlwcjMPM12WYFv+k6OFZsjIa2sYjauJ1G12dW
Dn1RyMAkiwYBMFuA9QJ4uXcuzFy0tp4V6TuqI1+2JdHGvtkBq2W9jH6XeAC06O4SRE94Qw2Ju7V5
3ryF+YNE6/RSvC27vqYcOrvFS2bDMyZjU8GsodKV/OdTmBO/jHjNSelvweeNz1BbP2A5Q2P+bZ7Z
nKKNc3oRoqmf2R4FKTHKw9FPnjmpjknXdcxMb89B2QA3jyQjGS3JbfGlEiwbju8HFAyE6TfIhjpN
hmdSUsoaND5vZEOnPEtGJjnUkji2tJzOVG4cnZUdIJn+0S/5OTM81TqFkd5lPnv3isvWmIjIDwH4
BwD+AoDXp5Q+eJ71rtEpDQQCgUAgcGGkC/zdGz4C4D8H8Ft3s9K1ZUye+dCfAwA88Y1PAwAWTW+M
yVoZE9rNkyGx7BZziE3ZIt5ZYwvHvtdZwyEa3TUn2ot2niFUZ9N9MC2KZXNXGwBgruGmNZEcmTHI
MEfHWnsiq94+JyaDkJlxDpK5iJyyIVsxLxL6KORorI4lmq14IsbWJbIts+5uO84S6FY8X7pMUbDP
6r9taqYEW7ZB278qXSB1/Q03VOsUhC61KVnkRqbBojI/nk2WYttlRopOr2RTehedoc06l5M6K8fA
iIssSd/n7XC7roy8sVE7AVTD0qhWJjW1Wyzx2W+YGdt/AOCz98pveAZALtfA5y0jR9S9D9UYofM5
s2w4KdyAGa3OMBB8XIpyFKaR8JoTMomN5Ht2wedLp3binRZhQuLg21BlyqFol5tXfeTzV7iH2H1q
hfocc9Lltvggn7sTN0WS7C/iiYXePeDl7rgfy1JDjabYmCvIZ8+xz27hbrqpxjgWxAQxRVaOywiy
5p6mnXCszSSL4/aZHWT1M/VfxW54/q+DtoS4bMYkpfQHQM1inwfXtmNCPPW7XwkAeO0bPmZVfvmC
pFjVI5uzNehZhXfnThyfq2PS6pJ/sNw0c6k6n0MkTbKXU6O/cTQzS0LbZf3h7VqkFTesy6T6s9AE
rrCkh3uxsPPE7fq2pRa5s6KpxLKVcpFciTXl7bbHHAKpdmciPaMzm4KB58uJp5YjGMd6/kXsx9jS
hlmLx4Z9mmp+Gv1C5M4FBbJ9kcpMsSgN22ioluto6Gd2FkQgPO8LP5Tmhl42Wwh7QVYfSE/ELZ1P
4yamADcCHOh3TDF2VvpMf05tY0NQfNFTzNtph/mZb7m8DonHJ//DKwDkDordN/r88XOZbmunnR0T
du75/O0ae37Edbbzc+d+5NLUMtwhn0X92A4BA1DoI/lMug6JDe00afaNPh52ym2p2jf1mbObYijE
j3iMOlp5+35Iwj77UYm2GNUoO3Pcd7FOavL/9kzy0FgqgNfHhpFz+00Q6sTZPsBJywaJQziNazDR
FyfM/7BZP6Gp2pLgLy4wEu+2Ex0J37HJtQyGTfiU5pTwzBuv4c/nJXdMLopreGYDgUAgEAjcFeb7
12fhpSJSakPenlJ6Oz+IyG8A+HMT6/39lNKvXmSHN6ZjsrC8VuCRVV1sjQX5Vjqkc6wViXfbnCYm
m1pIyaiAotFmV0RwZeoexhebNGC7LodN9Eum1SoD0R3o/JSHIvKyGm0sNQLduAi+ywIso6Up3KNB
3MZFlz3gwzJPOWeztHxgPurzYVquwlkKWocpL434SsKbNIqk7LvjrprP6K1fNoWFtQ4hcJhjWUdC
SQTbR4ZbnMXvWEjw4POk6ZWJuLO29tv6bX2+jY6kkLVPFl0b3a3F+zrazOt2U7Fd0tuijx8ZEovO
VHQr286+M6EhmbE9iny8XbtxXWxrxZhMD+GA9+tWMoO3q+9HY0EccyJ9wZS49PasZeRQQx7W5LPv
2QS7Vnz+mpSHLXywbfd9foZMcMt5cwzrFKSe5uHWglFxJI2nTuxjMeKYHENCXT3b1Bfn0o5fN9S5
tHlZevZg3H5vUDaq1pvy8EjiMAqvt7ebL+HHqWyITg+oLYZ8uau2XsdKVhSsyKzw1q5Z/f3IDO66
4GLN/lxK6ZtmN5nSd1+4PTO4MR2TQCAQCAQC0xDsV0BzGm5Mx+T/+fevwV9+4x8BAJYaoi90rPv2
wcCg0HCNdvBp1yAd0c5co7RtHaWR2ZBMyBj8eLYVvyuitlbJG7IHFLeRKVkcaS++BXaHuh6jshOy
BDp9hFTGhM5iXYdyFnWu8/atjayLl+rvLLrUNjZrGXtM+bFiNzzcdBgPesOtQy+722Lnp9U27ViP
r6+PZ3dIEavY+V4c11bupkOx1FopIjfdrp5CMiiNaVvUPO94i15ZD2MuvCgPPI4mMyVqzEaRrmlb
2uGAWopjC7MrE+lyrJ0bNiYuQbbDCSIT0+jJe+o79+fRpc5rpDUpMLKkN5t/Pl863QraDTUmwyKe
ORnpSdKYMfEi2FQwBDmFWKNfPfOmbTab/5TXbdyN75mTcn8zepeRiLeEF4zMfS8F+8Dv/DPqDNyQ
8vGTDUkjpkSZlFQK3r2WxzFjdq7T+Jk3AsmLZsgwSk73N+0HGyXVshApTO94bdyOHFKx7HgdhQnh
JV8kaknSzHVWfOJvrKa/2HdcssGaiPwggP8NwMsA/BsR+VBK6XvPWm9/3m6BQCAQCAQeGK4gK+fd
AN59t+vdqI7J89uBhrDoTOdvNCWYxmvVODfV3UynPXbjwqYXQREF6HcuSlucpGo++iJSMQOiYUId
hgUlizzPGm5sBHv6jMYnevNMseSYNKNMl8EpfcEe+LFvH9y0Kbu8u8iHzI/XzvRtPsYxGAnnwfDu
YILRQaEJWWVtwLB9QdPVkVu/GL5cHNW0VpkaSpM3SxVl5g4zeZT5aA5y403fsd7qZ20Ey7EvGovG
+iU1IGynbk/D8O4Rpcy6bBDH7KFWGRMWJ2SbZLODz0YYlXvfI/jifURpM08dFTxjQoZvI5bBZuyl
ywQba03GTIm/75P7rEtpu+v7KZGY5LPbij1zPj3+PMX8xGtN3PeTLfP6tWI3ZZHQye3wWIvn0DNV
+Zi5H2pBEoSaEs/EoJ6f33+paO+E7qREl/dj714jNqY1IElkVFzPPhtLJHlZNtUZxPlnycw1i0z/
nLGZqnVmjeKuExIuqjG5dFyfBOxAIBAIBAI3HjeKMfnjD3wVAODx134eALBTxX+jPWMarHX0Lil6
j947YXlH53fF1A0zzzENFuFVCvdaXU89SSkuF2pJeFUsyqOGYvi+s0guh4FjfULdxjKC9FkzPgK1
SHEBLJ/XNvkhVaersdLfRWN47mzI2Ma+8wkzRkPZpsayb+poh5qcfpUj6tH4tTFZOfunWdchQqk/
AYD2mMeR2RYq7s2Se1GPhdN/oT9cmr7FLLh1u2R8PDvV9D26W6pr6mo2JWcm9bZfK3SmbfnY334U
+woar73kL34WQLao7/omW887/xJ77siYbAu9F5+jzk2LDDAAdVZOPxex635kJD3IJmamR9FragUG
JzJ3jLWciKBHlFHd7pEJ3MQ6lnHktyWYT+rxOo/imfftNwt6ZQZ49zdN1nAl/9w6ZKPEfG2aGY3P
qcXjHNthjBDyhfJMSW/P5Awr0jj2pIQ1pTgwM3Ors2+yL8uw7J/+zVvzx3ENMFmkcQ9xozomgUAg
EAgEZnBNhnJuZMfkSx99CQBg9TXPAgCSppnslCnZqR+InLQWqY2cTZ2jaZPKiF8nzF7Zuvlllotj
DxKZB3NXzOtaFoJlB+h3DGdoV12O/arHSbLIs2aDGudo261SbhP3p9Fr32amAcCQHVG7dGcGQKfd
oRuIXuYGMvJl5o1X7EuXy6VTa2LeJ1tGLNwv2wikWzV1RQZlZH0vQEs9irsO2cmxDiGkSxYt2Rj3
sqSDABwOjUxtkyMs1O3MTrvU+qiuZNXYvndkTszfhcc83CTNegccKlPyg4/guuDzH34ZAOD2134J
wMBckqXseT9uaxdRPnfNVvI1svtTN+yi/kqH4b/z+ohi/ohF5H7mdBjIrArZv6yPqK+/LxpYYa79
haX+WVk5gzNrfU/bIsZ8ZqYH0HNLjZZvi26ExQN7Kb5zz7w/tGS6MkG7rTUZvJdH165c3zQgug4z
6FB7kaR2SmPitB/uPXGaFstYtdI91vxQnLZEN/On33+Im4BIFw4EAoFAILAfSMBlpwtfFDe6Y7J5
8gUAgO4V6r5JbYm6vDYbQbuuo2zTRbisk9QWOgHTONRTX1yrXxYOi45N8VGIlIzMxHbK+T1r6iz7
XK9i0VfrpGOnWi8dQ00fwmh++Nya06WukwpGhLN8FEUXSGWNmq4ck67HaW0uz0k3Hs9u11VzMwtV
bMIKnZEl0vH+3UHN0DS7zMj4bApjam6pZ4lpE1IOi513AkNq2+ZCsqLfMgh4bLBlAEC0SGFz0pke
JdcFqut9ZBfK9lpHakd/+DgAQL7qaHBZBpDIVjptSanLuutx8PIWreUi44ha8jL2TPrtGKNR6zAm
9zmlJ6HPx9xvgNs+ymN2OpHR87ZIRaaf255tt2Y+e2QWyh7tWkphGVUNUn5GHAvhGRoWZhwej7ox
ZJiS9z6xxko+Rj5PukPRF1SlMbF37TQT4tmXKeJqXEeSL52CibGFh8mfvekANwnBmOwR0vN1Rdbm
RK3MT4oHdut+lBUmFG2Rh1/YUXAXOVfVRbW/clH/UiHVmaT48bRl6x87s6cuBIT2AHbGSw5t0QJ9
ViSzpL15jExZdqm6ubJmYQxn4lNPeeqEbd/kzkanOjEKUDlkZCZqXe5E+KGzfBLqNqLJ/+cOm9Ls
LIhoKcaC1fOaEuh+XLzx2u72UtvYWrquFdDj+dd0YXtR96iEqpPwIsBd/tW1e4udl13dxu72zXg8
d5vWOiRgR8QJXHlvoBj+tI64s08fdSiK7/KPmX7hftgHUaTOm2P7XWf+NMGpNyE7tR6JD2Cmf+/r
mRYY6b3dIqcuO3NDq0LOIMv6ZCkPTfgAyRvRlcNivmF+KKeoRj5n2JarCrNTrx87WJHPJjXlIhl9
MeNBpMmXnR13TUYdlZuCa9IxOTNdWETeISKfEZGPFPNeLCLvE5E/0umLdL6IyD8VkSdF5PdE5Bsf
ZOMDgUAgEAicDYFqrO7y7ypwnpDsnQB+DsAvFvN+CsBvppR+VkR+Sj//JIA3A3iN/n0zgJ/X6ZVi
8dzQTe9uKeMwZT7mohkiU6gwhsFcqXf1sj7CQ5P/N4EsF3WpuV3JGOoObDipraeGXgDad29d+MUI
i8dcRqSOhqYF+E6HbUwwW7A4LHzGyI2wtEnud1PQrmzDsj7fdooL9oNDODa84e7McuiL59LM2JjB
x4J8J/q5T7bvLK50TxrFcjwZhUcb7eUtJdgTYn0yBsSKAZ5oQcFFvZ9mo/PbxooN9m5IR1yK4ie+
a4mbgPZTB+gepWmcXg9X+qEqnmj3MGfoVOplpZw/w0aUTAmgjIMfTi2Gayc/89Png3MAABqpSURB
VI1etoHww06lkJXwDI0bT5E0XseGccma8l2wSPl/Di2aRfw01ZFajJhHIyMsjZ3blKJIpsMMkzIw
DjWL46cja4WmHMJBdRyFs6ROpobSatoss2hF4zzL4mwAyuviiw5+8jtuBltZIaUJWmo/cSZjklL6
LQBfcLPfAuBd+v+7APxAMf8X04D3A3hcRF5xvxobCAQCgUDgYrhJjMkUviKl9AwApJSeEZGX6/xX
AvhEsdxTOu+Zizfx/qE9qceDkwAttSUamTCS86LLZjsV8QyTsXVzAbIoLvi1cuPFfBs7nmFvbPi8
GKe3yNzKous2WNqd2yRLtGmyloQkwSrVnw9ICeXv+lt9te98HFlvYW03xoQHptugyJYHWLBIxhzR
Kt6JYuudct81w2O29ZqS3WyHQoEAsDyqt9eua3aCrMXuVksdcaUHKffH42l2/ciAaa6NdpyrZiQG
9st8/HuuaYGwU9A+X5+fLDb3NFTBcjhmb84oS/qJ+8Q9q2Qu0+I8TEkd/aOZ33f+rPdtGs0y0TSL
BY6kFEjGuOXimI4pKdpq+i62z9Jfpf5sduq5DeN0dp2Wxf3sWByTN1MwT1Ia6WWySLV+p+V0Xhgj
lgW4dRkH20I/0ZazrOEbGd8TM7qR1Iid309++w1kSkpcD8Lkvotfp6785KkQkbcBeBsALB5/0X1u
RiAQCAQCgRI3PSvn0yLyCmVLXgHgMzr/KQCvKpZ7AsDTUxtIKb0dwNsB4OCJV13u6WLUXBiIWdRN
m3Zn7lSmMZppkOuGMeo2ucJBzlAxzYQbb+b+UmHU1R/U25FdHY5wnXYtkDXZAhcRuf0Ys4GcWWPt
3taRnLU5+w5BNp4RcNtYN7YuWRxxWT+M/jrdUwvJkZobi7aUYDc2ndpiu7SVX9faIV6Hdg0zfrLt
Sb2MsLgfS9032f5afPl10xb1eT5Lt9PaWzNpyjRwABBdrjto7FiaDVO8h+9uiqbkPGicXouosrKc
DsK0Je7cTsFrTEpWxGu2jJ2YY1BkgpFxM3x6+zDTHZOJ0/RzVzyr1DGhXsezOJWeZsTaYB6uLeLP
TzGdtMzH6czJ3LUYMyk6bfMH0+FZeYf6uZvkOUbaEjYk72f0LpzR/kCAT37bDWdKgOEkzemH9gxn
akxm8B4Ab9X/3wrgV4v5f1ezc94A4Msc8gkEAoFAIHCFSBf4uwKc2U0UkV8C8B0AXioiTwH4GQA/
C+BXROTHAHwcwA/p4u8F8H0AngRwBOBHH0Cb7xt2h8mK1BnYuyaTUYxjj6IOp4OwIWV6cnS54J7X
lIzGsxcYKfwt0ioMyQCAtfvKrCKyBWkqC6dsXPH/iB1y7IXpVEo4/5LmiJkledvMvLDz4rKXmAUk
u/oYhkbVzfWFz9qTZPb13qRuwUKAW37ubf3e+ZbQvp5MWbbhL3Ujer6P9EsyJYWehGPd/YFmfq28
loJan2G57qDJHg/tsM7T3+rTrW4+mIW20GKZU2Gx3bpz+o5iOtJ5OcawZATy/7wObhmv8WrSqH0j
hmCKKXE3cfI6FM7vZcxS+DaWbevrxli2m7G77tmf+nHx57T0eWncQsZO1BsSxySeipHmRCxzMJtP
6nPns/dKMOJ3epGRsZpIYarnXtBcR79/5o0Pz/N3Y4ZyUko/MvPVd00smwD8+L02KhAIBAKBwH3G
NUkXfggG1k7H9tHhQpE5oV8HC9BVrIRla+iUwfCJixw4lLxJuaAWM0aoszhw0RowYkasg+99G8gC
lFoRusG6onI5rahcVme57BzT2xShqrnCOo8NRiPZU0T336as12FE1JOd0GXNMt6NOaM432b/X2tA
ultZbc99J8vkGZZdmNNswW65c2dsF7Ny1OVVupSdWE9UA9LW94K1ebXI2hR3HLZd3W3FtmkE98wb
LzqSenOwe0Sv2Z0J3YJjAhpXNsI7wZ6GSovgGY3Rwmd8f9Y6Xkti2yFD4laSgpEZiZOqVYdjdvew
ZdH48zFR5HB0rqaYJUcg2LlzJ4RaE0GRlePZJrf90fenoRQTGZPkdCMjdis/j8aiuGeSy37qmx++
5++6MCYP35UJBAKBQCCwt3joGRPCmJPnas0Bo3sIMtNgZdlrpsTrJZrNWFNiDIOyCh39U3YFa8Dt
UTfifBXIlPSrlDN2UEdYtu5i3EVmBk1mMGq2xViGLreXDqrGVpA16ly01uf6QwunNRmh0AaIY2+4
DepJsr9DPk+U0dA11rwqylPCIWnLgPEDze5jK3lf6tDa3Nm6ZXKBxKwxaWx9INe/8VkP/ULwudfd
TSj+cIDMyfJZGemKfIHNZld/X15Du/RzWRsT7MFsEEkNyDkuV+VZ4vQhI9bDFbiTXNpu2uW0aOtQ
8E/s/+o7z4pULIvTnYx2wDZPLOPrPflnBlL4pGByOqnH8+fVp1uZT8uEJ4kte46L41iVh5EpAVDd
+/uO6Jg4bB8brtzhZ+oOCqQY+jBjL1RTG2LhsM3B+AE12A9mfrCSp645VKE/drtH64ef7SqnvqMw
tlEv/ucL3wSi3F9uo8wsm4dC6uEa6cvidPWxjoqwLbJ9vC+sRvFx3o9rW9mmXX09yiqr/tqkVb0f
MZtqbfNBY/MWdwp/egBo2KHTTk6X39miKmdfvMwKGqrY9vN/KTolp2H7goRbn6+fvdlp8SPuBY55
+EE/l6nGbhjvXsbdvYnaUPDPdUjmUNzzlr7rF7EOSb6ffOd91EFxjauGcmZSgcuhltG7im2xQolV
8+sPZQcH+RxbJ41Dzinl/+3S1Y1KRUdFfIVyO+9u2VPw0HZIFMMo4/XomUTHJBAIBAKBhwE+C3JP
ER2TGRy/fOhZvuBjOiPV7AkwjuC8FXvfyiiC652wjGJb9INhWrU97roUyCKzLH03plCNGTAaVKeF
EC+n5w3Tzg8VaZskAbAhofpY+Zk2/yVDw6J6fnjGjrlkPZynGNNIyXQYo1JYi1tBxFQv2yjT0dHR
vQhFR4XJeNpX/F7P6VKs0N/u9tA4FuBr155BEWNXKJ7tl61+rs9pMCXnx8lLhnP3yFNumLBL1WfD
EAoCyILMXBJgmBob2RT/OzbuXAZloyEFx45I8f8c3FBLtb5fZmLdEXPk04MntjEygJvZfmqKpjhq
xOtyq/3UhMiIOWG6vonoUy4WOLLFb90z2wpS53Y6x5DoOtJk/uWZb3l40oHPQjAmgUAgEAgE9gOh
Mbk5eParh+mLP4qZwdXcC7X0OUYyTcJuVUd9eZ1h2qyzSHUklDxwDADZkdJgyY03M3oywSyDBYtg
UmZKyE5Y2q1Ol4xqgMaZOY2Eg9omHocU27GIlHeZs5eviq95cyuusqznNwVpUQpigazj8KnA5U4Z
hWXr+2F+u8lKSJ6f3W1lP5a10K5ZU0STbFw8R/OqTzkapjeyfPol4c4Twzl84ZM6Y46GFhT5hbxB
p5kT9EWw7TVPcw2ZCs5P05HMMBfiBagThf9mCxWWuzO9yIwIdq4dE9sbfV0yPu45HomS+3ziZtOQ
Z5jclMrvpP7O6VOQAOF7zDHAp2lLnv5rwZTUSPekp7pMxFszEAgEAoGHANfFxyQ6JufEF16b//+K
D2hWhnbWt7c1VdQZKqWFoGW68UykYuyIiKX2ZkbDjcGykFdTRCpdHTVxRzmzRr8vMlbsu+ykNnXI
QAv0h8OGjRFhoTzVuZRW9MDAvviChVZ0z6cQdoV2xYop1s3ulS1aHBffG0vkNAcz57aE1xX4IoHt
cT/OMFjU5yeP1+cIpD0aaKc/e/PBeKeBe8KXv6b+/KLf1398VF6hvrdLYy/hfVikuAMl8zmxNVv/
7De7MSP+vjyFKRllz7n5le7DbW+ygKDH3fwgzbwOvNancVlB59mmZemkNMqKmtOaDMXndDueBHFt
/cTfWCFwCoIxCQQCgUAgsBdIE8LxPUV0TC6AT/9nQ8hF5iRH1sPUNBubNPKxMG2DM1NLfRExuOwe
b5pmaDKLQtMmW4ZtOKjb2Lcpjx3TRt57hJRj8DMdbOpffHTYL+bH7P381BRxrRuLHjEoRZZRu032
P5Ajt3Zdj/v3Cxln43A3NEbT82dkVJcsIuxpsEa7er+tYnz7Y3/70cn9BO4/vvh1w/TFH9EZp7AI
vc5o9KboC8ZE6oB9ltlASsW9O5eaMt+WSS1JsfmpL7Pd+32CUTD1vnNBwfr76n/PlDALznydxvuZ
820qM3zmWEvPrgzMbs1q2Wb1In78e4MpOReCMQkEAoFAILA3uB79kuiY3AvInLzkw9Q61JkfzQ7o
NKODhf58QamukCRwfdOlKLpbPsOmHJweJtR8WHTT1PNLx1Q/JtzfIvVQzzf9CnK1cds+GRIWPWRU
uBmr+H0WkLlANpLbwqwiOPgoswWaI119W0dwZFJ2B9S/jM9TLhaoTIlz8+2XgsYyd4Zpt2qqz2XU
8Sdvue1bHLgkfOHrh+lLPpwsU83rmHirGXMikiP1QusE5MyPKc+P5CL+EaaYhhmmZIQmjbfbn7VD
VOzDGUvOwvYy0UZxjKQ9ZyzCyeevyJQz92ifWXNaG+w46mtoJ72V/G5yVkIf/55gSu4G4WPyEOHz
f7F++F7ye8O0W8mYrlTwR5MPbr8qHlCKYGfWtfTbJPbm7XUddiaS1eCpOdvUy/glZGLAeigEPUad
FbatOdaX7oTJHF9OXsiaqwIXaYDe6p7bsaEVnerLcHknYampuHwx+oeNL85+IRhVLeYh75xwtqCy
OYRDWKdFxXh/Fp2RvUL5/DFIYCVc/x7uJVe/HndQ9J52NW6SlNVsdF5T3DAevkMyMYxRL3B/cJ6a
PpWIFuM2Sho/01bywSqJa6d+w45Jsk6FGTCyZpQzb7R2TB26Gwaq0v71GfxEdETuDdExCQQCgUAg
sBcos5v2HNExeQAo7cctgiMzwi8cbdxskIcbnBGTZR0y6lDGoV+mXNyLyx5Sbcv9OWYARVTjgj4T
snbFNhk1bev9zNlhl5FRN1PEz9rRw6KkZiatWqxQYo7S+P/imCEVh7o0Ej4QW5apyxahOSrYhp12
5cz6u6f+uvPND+wtPHtJgazdllIwd5xJxtCMEWuWUTAWvZ5bDMsNnBf2rMywLmliV377pwXFM0Lf
0jzNV3Fu3DM4NfWC/eyDVjNXFaszIwY2UbJeh6e/LYzS7gcEKYZyAoFAIBAI7BGiYxIAcgT30g/5
PD39yPHURcEoMHr3hfO4UTcmXi5j0caiEJiiKBYoQOpciEWGxMaWx1GgbY+aFWNv2IA8TY5xgGM/
jN1ZZOO0dq3zfMqywgr3AWg4tu3SePvSkAlAdyvTNz490oR92yx6HdqRbP2nvjMej+uOUiALDHqR
Rupnw57BtppNMnJ4pnwqKz+SbbmXxN5UbNCl30vJXmLMOk5igkEZaUn66WmzK1hKilu3+bt6Sl1b
0UDdOc9xbu5YoTtviz8s9My3TjrnBR4CxJs3EAgEAoGHAcGYBEp87nV1GENbbUYdfS/zdukunbHX
rAHZ5TQ6br090TTkQ91Wm+oFOsnBS5FJA0xkxqBY1lnPm/5lSb1HkWnjjp2F+DyDUrIgnMe0arIf
VP5zWhUZc+uahXUBn7rMon3UnvAzzaM++e3xSNxElNqTx/9wmFoBSjInTh9BrYlIeVPXD4DxBI5R
OQ3i2ZFiQ+KZEvucv/e6Lr+Nyf3NMCRTepIxU0JmhHo1E9hM7It0Jc+da9xUmQj96tOvD4bkgSLE
r4FAIBAIBPYJIX4NnAraahO3nymYCr0qZDt6n92iOg8BZnvAFesBIJUDuhzGXikbcex9O/LUWBxG
Pt7zwavtm6KdM+PiZISWz+Xt+YhxoVEbGZTsWVKYNxlNVLMeRHvSo9dSAN1BbZJGRuazf+UuQt3A
jcCXvrb+/OjHh6kvSJnIIkAsuy2/Mb3YxDGTmPcVGWkrUl54TvtRZcE5FnCEie2fhykBANmlsaak
c+v65/mUR0d8Ok7hG0SDysAlIjomgUAgEAgE9gMpOiaBu8PRK8Y3zMgVlUX36KbYYqwBUbRrZuPo
jNL7hNunV4LTmtCZtdnmcXc/xG5ZLs4XZNju9HGQ6aAzqySgUUakPdF9W5RWa0vMAn8h6FZs50zE
VWhOOD7+zBuDGQlM4/mvmn5ZH3whew9lP47i2UPJ3k1knZx1q014k9izY+zEBJPivUi4vxnNiRRZ
P8aUnOLu6p/BrC1x2z/t+FwbP/XNwY5cORIuvWMiIv8IwPcD2AD4YwA/mlL60lnrxd0SCAQCgcDD
gP4Cf/eG9wH4+pTSXwLw/wH46fOsFIzJHsOiMv0sbhy72UguiMdlyBawiJn6g1gXtBfzJPHukn64
HAmjqGjOobUvatKMxsXdMHNZLt0zLjlKc/spCiPy2HaHjc6r1+HnT/61cIwMXBzrF+dna/VlZU+c
FoTPXyoJOccqzmWRlc+ZOIZkpCMpGZXTsm/O3L5OvZtrwaSIewbP8hvxdYQA4Ol49vYSly1+TSn9
evHx/QD+znnWi47JNUJyz3p3K+U0XQ51rPhScZbWRtkCckJjqXrZ5ISoQO7Y9FoZOBuT1W1i/yi1
RadIX36Lo7rn0x24/RXt5DyKUy01sRyqcs/WM2+Ml2DgwWLzwukX+vI5Z5goyBb3ZwzlTHUc5jok
1Tq+4wG37GkdEz+EMzHNnZh6CGfuR+2T3xY/I9cGV6sx+S8B/MvzLHjmUI6IvENEPiMiHynm/SMR
+X9F5PdE5N0i8njx3U+LyJMi8oci8r0Xan4gEAgEAoH7h4ShSvPd/gEvFZEPFn9vKzcrIr8hIh+Z
+HtLsczfxxBe/vPzNPU8Xd13Avg5AL9YzHsfgJ9OKe1E5H/GMG70kyLydQB+GMBrAXwlgN8Qkf80
pTQhkQzcD+wOZ3rAKnJlRFeZmzklqxm6Ocv41BTfbetlvM08ixI2BbNRGagVKAWt3t6ahbv4mQrC
Z94YcqjA/mH72HwEunx2LIitMCVOnWM9ynXOWnZqvhO/jtiQghURt70Qrt4UpIsyJp9LKX3T7FZT
+u7TVhaRtwL4mwC+K6XzNeDMOy6l9FsAvuDm/XpKzPLH+wE8of+/BcAvp5TWKaU/AfAkgNefpyGB
QCAQCAQeIFK6+797gIi8CcBPAvhbKaWj8653PwYHy3GjV2LoqBBP6bzAFeG0iM5j9aU6tEttFruS
/WCxPaJdk+kYPvcrMTM0WsSTBfFph89+dbklH1ZGWm/gemP7gvM/e7c+7wzb5liQqXnnYFC8jfxz
r55ricz8H7gRuHyNyc8BOADwPhnY7/enlP7rs1a6p47JxLjR1J08eSZ0nOptALB4/EX30oxAIBAI
BAKngRqTy9xlSl9zkfUu3DGZGTd6CsCrisWeAPD01PoppbcDeLtu67Mf+x/+3h0An7toewJ3jZci
zvdlI8755SLO9+Uizvfd4z+6vF0lIF2PKn4X6pgU40bf7saN3gPgX4jIP8Ygfn0NgP/7rO2llF4m
Ih88TWATuL+I8335iHN+uYjzfbmI830NcFMs6UXklwB8B4aUoacA/AyGLJzRuFFK6aMi8isAfh/D
EM+PR0ZOIBAIBAKB8+LMjklK6UcmZv/CKcv/QwD/8F4aFQgEAoFA4D7iCjQmF8U+Wfa9/aob8JAh
zvflI8755SLO9+Uizve+46YM5VwWVAwbuCTE+b58xDm/XMT5vlzE+b4GiI5JIBAIBAKB/cC9G6Zd
FvbCa1hE3qS1dZ4UkZ+66vbcRIjIn4rIh0XkQyLyQZ33YhF5n4j8kU7DUOaCmKkpNXl+ZcA/1fv9
90TkG6+u5dcTM+f7H4jIJ/Ue/5CIfF/xXdTwugeIyKtE5N+JyB+IyEdF5L/V+XGPXxckAH1/939X
gCvvmIhIC+B/B/BmAF8H4Ee05k7g/uM7U0qvK1L6fgrAb6aUXgPgN/Vz4GJ4J4A3uXlz5/fNGFLp
X4PBZPDnL6mNNwnvxPh8A8A/0Xv8dSml9wKAq+H1JgD/h753AufHDsDfSyn9BQBvAPDjel7jHr9O
uGRL+oviyjsmGGrpPJlS+lhKaQPglzHU3Ak8eLwFwLv0/3cB+IErbMu1xlRNKcyf37cA+MU04P0A
HheRV1xOS28GZs73HKKG1z0ipfRMSul39f/nAPwBhnIjcY9fJ0TH5Nx4JYBPFJ+jvs6DQQLw6yLy
O0XZ6q9IKT0DDC8eAC+/stbdTMyd37jnHxx+QocO3lEMTcb5vo8Qkf8YwDcA+G3EPX6NkIZ04bv9
uwLsQ8fk3PV1AveEv5pS+kYMFOuPi8i3XXWDHmLEPf9g8PMA/hMArwPwDID/VefH+b5PEJFHAfxf
AP67lNKzpy06MS/O+VUiASn1d/13FdiHjsm56+sELo6U0tM6/QyAd2Ogsj9NelWnn7m6Ft5IzJ3f
uOcfAFJKn04pdWl4m/4z5OGaON/3ASKyxNAp+ecppX+ts+Mev04IxuTc+ACA14jIq0VkhUGk9p4r
btONgog8IiKP8X8A3wPgIxjO81t1sbcC+NWraeGNxdz5fQ+Av6uZC28A8GXS4YGLw2kYfhDDPQ4M
5/uHReRARF6Nc9bwCmTIUHvkFwD8QUrpHxdfxT1+nXBNNCZX7mOSUtqJyE8A+DUALYB3pJQ+esXN
umn4CgDv1rpGCwD/IqX0b0XkAwB+RUR+DMDHAfzQFbbxWmOmptTPYvr8vhfA92EQYR4B+NFLb/A1
x8z5/g4ReR2GIYM/BfBfAUDU8Lov+KsA/gsAHxaRD+m8/xFxj18fpHRl6b93C0nXxHAlEAgEAoHA
xfDC9qXpWx75/rte79eee+fvXHbV6CtnTAKBQCAQCDx4pGvCmETHJBAIBAKBG4/rY0kfHZNAIBAI
BG46Eq4sy+ZuER2TQCAQCAQeBlyRL8ndYh/ShQOBQCAQCAQABGMSCAQCgcCNRwKQYignEAgEAoHA
XiClazOUEx2TQCAQCAQeAlwXxiQM1gKBQCAQuOEQkX8L4KUXWPVzKaU33e/2nIbomAQCgUAgENgb
RFZOIBAIBAKBvUF0TAKBQCAQCOwNomMSCAQCgUBgbxAdk0AgEAgEAnuD6JgEAoFAIBDYG0THJBAI
BAKBwN4gOiaBQCAQCAT2BtExCQQCgUAgsDeIjkkgEAgEAoG9wf8Pbk5g91R+Ib8AAAAASUVORK5C
YII=
"
>
</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">gs_ps_e</span> <span class="o">=</span> <span class="n">gs_lmmse_phase</span><span class="o">.</span><span class="n">host_data</span> <span class="o">-</span> <span class="n">gs_phase</span><span class="o">.</span><span class="n">host_data</span>
<span class="n">imshow</span><span class="p">(</span><span class="n">gs_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>
<span class="k">print</span> <span class="s2">"wavefront error: </span><span class="si">%5.2f</span><span class="s2">nm"</span> <span class="o">%</span> <span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">std</span><span class="p">(</span><span class="n">gs_ps_e</span><span class="o">.</span><span class="n">ravel</span><span class="p">()[</span><span class="n">tel_osf_mask</span><span class="o">.</span><span class="n">host_data</span><span class="o">.</span><span class="n">ravel</span><span class="p">()</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="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: 99.24nm
</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>
</pre></div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>