14196 lines
415 KiB
HTML
14196 lines
415 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
|
|
<meta charset="utf-8" />
|
|
<title>7 Linear Equation Systems</title>
|
|
|
|
<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;
|
|
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.7.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.7.0');
|
|
src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.7.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;
|
|
}
|
|
.fa-pull-left {
|
|
float: left;
|
|
}
|
|
.fa-pull-right {
|
|
float: right;
|
|
}
|
|
.fa.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.fa.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
/* Deprecated as of 4.4.0 */
|
|
.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;
|
|
}
|
|
.fa-pulse {
|
|
-webkit-animation: fa-spin 1s infinite steps(8);
|
|
animation: fa-spin 1s infinite steps(8);
|
|
}
|
|
@-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 {
|
|
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
|
|
-webkit-transform: rotate(90deg);
|
|
-ms-transform: rotate(90deg);
|
|
transform: rotate(90deg);
|
|
}
|
|
.fa-rotate-180 {
|
|
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
|
|
-webkit-transform: rotate(180deg);
|
|
-ms-transform: rotate(180deg);
|
|
transform: rotate(180deg);
|
|
}
|
|
.fa-rotate-270 {
|
|
-ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
|
|
-webkit-transform: rotate(270deg);
|
|
-ms-transform: rotate(270deg);
|
|
transform: rotate(270deg);
|
|
}
|
|
.fa-flip-horizontal {
|
|
-ms-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 {
|
|
-ms-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-f:before,
|
|
.fa-facebook:before {
|
|
content: "\f09a";
|
|
}
|
|
.fa-github:before {
|
|
content: "\f09b";
|
|
}
|
|
.fa-unlock:before {
|
|
content: "\f09c";
|
|
}
|
|
.fa-credit-card:before {
|
|
content: "\f09d";
|
|
}
|
|
.fa-feed:before,
|
|
.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,
|
|
.fa-gratipay: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-pp: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-resistance: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-y-combinator-square:before,
|
|
.fa-yc-square:before,
|
|
.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";
|
|
}
|
|
.fa-buysellads:before {
|
|
content: "\f20d";
|
|
}
|
|
.fa-connectdevelop:before {
|
|
content: "\f20e";
|
|
}
|
|
.fa-dashcube:before {
|
|
content: "\f210";
|
|
}
|
|
.fa-forumbee:before {
|
|
content: "\f211";
|
|
}
|
|
.fa-leanpub:before {
|
|
content: "\f212";
|
|
}
|
|
.fa-sellsy:before {
|
|
content: "\f213";
|
|
}
|
|
.fa-shirtsinbulk:before {
|
|
content: "\f214";
|
|
}
|
|
.fa-simplybuilt:before {
|
|
content: "\f215";
|
|
}
|
|
.fa-skyatlas:before {
|
|
content: "\f216";
|
|
}
|
|
.fa-cart-plus:before {
|
|
content: "\f217";
|
|
}
|
|
.fa-cart-arrow-down:before {
|
|
content: "\f218";
|
|
}
|
|
.fa-diamond:before {
|
|
content: "\f219";
|
|
}
|
|
.fa-ship:before {
|
|
content: "\f21a";
|
|
}
|
|
.fa-user-secret:before {
|
|
content: "\f21b";
|
|
}
|
|
.fa-motorcycle:before {
|
|
content: "\f21c";
|
|
}
|
|
.fa-street-view:before {
|
|
content: "\f21d";
|
|
}
|
|
.fa-heartbeat:before {
|
|
content: "\f21e";
|
|
}
|
|
.fa-venus:before {
|
|
content: "\f221";
|
|
}
|
|
.fa-mars:before {
|
|
content: "\f222";
|
|
}
|
|
.fa-mercury:before {
|
|
content: "\f223";
|
|
}
|
|
.fa-intersex:before,
|
|
.fa-transgender:before {
|
|
content: "\f224";
|
|
}
|
|
.fa-transgender-alt:before {
|
|
content: "\f225";
|
|
}
|
|
.fa-venus-double:before {
|
|
content: "\f226";
|
|
}
|
|
.fa-mars-double:before {
|
|
content: "\f227";
|
|
}
|
|
.fa-venus-mars:before {
|
|
content: "\f228";
|
|
}
|
|
.fa-mars-stroke:before {
|
|
content: "\f229";
|
|
}
|
|
.fa-mars-stroke-v:before {
|
|
content: "\f22a";
|
|
}
|
|
.fa-mars-stroke-h:before {
|
|
content: "\f22b";
|
|
}
|
|
.fa-neuter:before {
|
|
content: "\f22c";
|
|
}
|
|
.fa-genderless:before {
|
|
content: "\f22d";
|
|
}
|
|
.fa-facebook-official:before {
|
|
content: "\f230";
|
|
}
|
|
.fa-pinterest-p:before {
|
|
content: "\f231";
|
|
}
|
|
.fa-whatsapp:before {
|
|
content: "\f232";
|
|
}
|
|
.fa-server:before {
|
|
content: "\f233";
|
|
}
|
|
.fa-user-plus:before {
|
|
content: "\f234";
|
|
}
|
|
.fa-user-times:before {
|
|
content: "\f235";
|
|
}
|
|
.fa-hotel:before,
|
|
.fa-bed:before {
|
|
content: "\f236";
|
|
}
|
|
.fa-viacoin:before {
|
|
content: "\f237";
|
|
}
|
|
.fa-train:before {
|
|
content: "\f238";
|
|
}
|
|
.fa-subway:before {
|
|
content: "\f239";
|
|
}
|
|
.fa-medium:before {
|
|
content: "\f23a";
|
|
}
|
|
.fa-yc:before,
|
|
.fa-y-combinator:before {
|
|
content: "\f23b";
|
|
}
|
|
.fa-optin-monster:before {
|
|
content: "\f23c";
|
|
}
|
|
.fa-opencart:before {
|
|
content: "\f23d";
|
|
}
|
|
.fa-expeditedssl:before {
|
|
content: "\f23e";
|
|
}
|
|
.fa-battery-4:before,
|
|
.fa-battery:before,
|
|
.fa-battery-full:before {
|
|
content: "\f240";
|
|
}
|
|
.fa-battery-3:before,
|
|
.fa-battery-three-quarters:before {
|
|
content: "\f241";
|
|
}
|
|
.fa-battery-2:before,
|
|
.fa-battery-half:before {
|
|
content: "\f242";
|
|
}
|
|
.fa-battery-1:before,
|
|
.fa-battery-quarter:before {
|
|
content: "\f243";
|
|
}
|
|
.fa-battery-0:before,
|
|
.fa-battery-empty:before {
|
|
content: "\f244";
|
|
}
|
|
.fa-mouse-pointer:before {
|
|
content: "\f245";
|
|
}
|
|
.fa-i-cursor:before {
|
|
content: "\f246";
|
|
}
|
|
.fa-object-group:before {
|
|
content: "\f247";
|
|
}
|
|
.fa-object-ungroup:before {
|
|
content: "\f248";
|
|
}
|
|
.fa-sticky-note:before {
|
|
content: "\f249";
|
|
}
|
|
.fa-sticky-note-o:before {
|
|
content: "\f24a";
|
|
}
|
|
.fa-cc-jcb:before {
|
|
content: "\f24b";
|
|
}
|
|
.fa-cc-diners-club:before {
|
|
content: "\f24c";
|
|
}
|
|
.fa-clone:before {
|
|
content: "\f24d";
|
|
}
|
|
.fa-balance-scale:before {
|
|
content: "\f24e";
|
|
}
|
|
.fa-hourglass-o:before {
|
|
content: "\f250";
|
|
}
|
|
.fa-hourglass-1:before,
|
|
.fa-hourglass-start:before {
|
|
content: "\f251";
|
|
}
|
|
.fa-hourglass-2:before,
|
|
.fa-hourglass-half:before {
|
|
content: "\f252";
|
|
}
|
|
.fa-hourglass-3:before,
|
|
.fa-hourglass-end:before {
|
|
content: "\f253";
|
|
}
|
|
.fa-hourglass:before {
|
|
content: "\f254";
|
|
}
|
|
.fa-hand-grab-o:before,
|
|
.fa-hand-rock-o:before {
|
|
content: "\f255";
|
|
}
|
|
.fa-hand-stop-o:before,
|
|
.fa-hand-paper-o:before {
|
|
content: "\f256";
|
|
}
|
|
.fa-hand-scissors-o:before {
|
|
content: "\f257";
|
|
}
|
|
.fa-hand-lizard-o:before {
|
|
content: "\f258";
|
|
}
|
|
.fa-hand-spock-o:before {
|
|
content: "\f259";
|
|
}
|
|
.fa-hand-pointer-o:before {
|
|
content: "\f25a";
|
|
}
|
|
.fa-hand-peace-o:before {
|
|
content: "\f25b";
|
|
}
|
|
.fa-trademark:before {
|
|
content: "\f25c";
|
|
}
|
|
.fa-registered:before {
|
|
content: "\f25d";
|
|
}
|
|
.fa-creative-commons:before {
|
|
content: "\f25e";
|
|
}
|
|
.fa-gg:before {
|
|
content: "\f260";
|
|
}
|
|
.fa-gg-circle:before {
|
|
content: "\f261";
|
|
}
|
|
.fa-tripadvisor:before {
|
|
content: "\f262";
|
|
}
|
|
.fa-odnoklassniki:before {
|
|
content: "\f263";
|
|
}
|
|
.fa-odnoklassniki-square:before {
|
|
content: "\f264";
|
|
}
|
|
.fa-get-pocket:before {
|
|
content: "\f265";
|
|
}
|
|
.fa-wikipedia-w:before {
|
|
content: "\f266";
|
|
}
|
|
.fa-safari:before {
|
|
content: "\f267";
|
|
}
|
|
.fa-chrome:before {
|
|
content: "\f268";
|
|
}
|
|
.fa-firefox:before {
|
|
content: "\f269";
|
|
}
|
|
.fa-opera:before {
|
|
content: "\f26a";
|
|
}
|
|
.fa-internet-explorer:before {
|
|
content: "\f26b";
|
|
}
|
|
.fa-tv:before,
|
|
.fa-television:before {
|
|
content: "\f26c";
|
|
}
|
|
.fa-contao:before {
|
|
content: "\f26d";
|
|
}
|
|
.fa-500px:before {
|
|
content: "\f26e";
|
|
}
|
|
.fa-amazon:before {
|
|
content: "\f270";
|
|
}
|
|
.fa-calendar-plus-o:before {
|
|
content: "\f271";
|
|
}
|
|
.fa-calendar-minus-o:before {
|
|
content: "\f272";
|
|
}
|
|
.fa-calendar-times-o:before {
|
|
content: "\f273";
|
|
}
|
|
.fa-calendar-check-o:before {
|
|
content: "\f274";
|
|
}
|
|
.fa-industry:before {
|
|
content: "\f275";
|
|
}
|
|
.fa-map-pin:before {
|
|
content: "\f276";
|
|
}
|
|
.fa-map-signs:before {
|
|
content: "\f277";
|
|
}
|
|
.fa-map-o:before {
|
|
content: "\f278";
|
|
}
|
|
.fa-map:before {
|
|
content: "\f279";
|
|
}
|
|
.fa-commenting:before {
|
|
content: "\f27a";
|
|
}
|
|
.fa-commenting-o:before {
|
|
content: "\f27b";
|
|
}
|
|
.fa-houzz:before {
|
|
content: "\f27c";
|
|
}
|
|
.fa-vimeo:before {
|
|
content: "\f27d";
|
|
}
|
|
.fa-black-tie:before {
|
|
content: "\f27e";
|
|
}
|
|
.fa-fonticons:before {
|
|
content: "\f280";
|
|
}
|
|
.fa-reddit-alien:before {
|
|
content: "\f281";
|
|
}
|
|
.fa-edge:before {
|
|
content: "\f282";
|
|
}
|
|
.fa-credit-card-alt:before {
|
|
content: "\f283";
|
|
}
|
|
.fa-codiepie:before {
|
|
content: "\f284";
|
|
}
|
|
.fa-modx:before {
|
|
content: "\f285";
|
|
}
|
|
.fa-fort-awesome:before {
|
|
content: "\f286";
|
|
}
|
|
.fa-usb:before {
|
|
content: "\f287";
|
|
}
|
|
.fa-product-hunt:before {
|
|
content: "\f288";
|
|
}
|
|
.fa-mixcloud:before {
|
|
content: "\f289";
|
|
}
|
|
.fa-scribd:before {
|
|
content: "\f28a";
|
|
}
|
|
.fa-pause-circle:before {
|
|
content: "\f28b";
|
|
}
|
|
.fa-pause-circle-o:before {
|
|
content: "\f28c";
|
|
}
|
|
.fa-stop-circle:before {
|
|
content: "\f28d";
|
|
}
|
|
.fa-stop-circle-o:before {
|
|
content: "\f28e";
|
|
}
|
|
.fa-shopping-bag:before {
|
|
content: "\f290";
|
|
}
|
|
.fa-shopping-basket:before {
|
|
content: "\f291";
|
|
}
|
|
.fa-hashtag:before {
|
|
content: "\f292";
|
|
}
|
|
.fa-bluetooth:before {
|
|
content: "\f293";
|
|
}
|
|
.fa-bluetooth-b:before {
|
|
content: "\f294";
|
|
}
|
|
.fa-percent:before {
|
|
content: "\f295";
|
|
}
|
|
.fa-gitlab:before {
|
|
content: "\f296";
|
|
}
|
|
.fa-wpbeginner:before {
|
|
content: "\f297";
|
|
}
|
|
.fa-wpforms:before {
|
|
content: "\f298";
|
|
}
|
|
.fa-envira:before {
|
|
content: "\f299";
|
|
}
|
|
.fa-universal-access:before {
|
|
content: "\f29a";
|
|
}
|
|
.fa-wheelchair-alt:before {
|
|
content: "\f29b";
|
|
}
|
|
.fa-question-circle-o:before {
|
|
content: "\f29c";
|
|
}
|
|
.fa-blind:before {
|
|
content: "\f29d";
|
|
}
|
|
.fa-audio-description:before {
|
|
content: "\f29e";
|
|
}
|
|
.fa-volume-control-phone:before {
|
|
content: "\f2a0";
|
|
}
|
|
.fa-braille:before {
|
|
content: "\f2a1";
|
|
}
|
|
.fa-assistive-listening-systems:before {
|
|
content: "\f2a2";
|
|
}
|
|
.fa-asl-interpreting:before,
|
|
.fa-american-sign-language-interpreting:before {
|
|
content: "\f2a3";
|
|
}
|
|
.fa-deafness:before,
|
|
.fa-hard-of-hearing:before,
|
|
.fa-deaf:before {
|
|
content: "\f2a4";
|
|
}
|
|
.fa-glide:before {
|
|
content: "\f2a5";
|
|
}
|
|
.fa-glide-g:before {
|
|
content: "\f2a6";
|
|
}
|
|
.fa-signing:before,
|
|
.fa-sign-language:before {
|
|
content: "\f2a7";
|
|
}
|
|
.fa-low-vision:before {
|
|
content: "\f2a8";
|
|
}
|
|
.fa-viadeo:before {
|
|
content: "\f2a9";
|
|
}
|
|
.fa-viadeo-square:before {
|
|
content: "\f2aa";
|
|
}
|
|
.fa-snapchat:before {
|
|
content: "\f2ab";
|
|
}
|
|
.fa-snapchat-ghost:before {
|
|
content: "\f2ac";
|
|
}
|
|
.fa-snapchat-square:before {
|
|
content: "\f2ad";
|
|
}
|
|
.fa-pied-piper:before {
|
|
content: "\f2ae";
|
|
}
|
|
.fa-first-order:before {
|
|
content: "\f2b0";
|
|
}
|
|
.fa-yoast:before {
|
|
content: "\f2b1";
|
|
}
|
|
.fa-themeisle:before {
|
|
content: "\f2b2";
|
|
}
|
|
.fa-google-plus-circle:before,
|
|
.fa-google-plus-official:before {
|
|
content: "\f2b3";
|
|
}
|
|
.fa-fa:before,
|
|
.fa-font-awesome:before {
|
|
content: "\f2b4";
|
|
}
|
|
.fa-handshake-o:before {
|
|
content: "\f2b5";
|
|
}
|
|
.fa-envelope-open:before {
|
|
content: "\f2b6";
|
|
}
|
|
.fa-envelope-open-o:before {
|
|
content: "\f2b7";
|
|
}
|
|
.fa-linode:before {
|
|
content: "\f2b8";
|
|
}
|
|
.fa-address-book:before {
|
|
content: "\f2b9";
|
|
}
|
|
.fa-address-book-o:before {
|
|
content: "\f2ba";
|
|
}
|
|
.fa-vcard:before,
|
|
.fa-address-card:before {
|
|
content: "\f2bb";
|
|
}
|
|
.fa-vcard-o:before,
|
|
.fa-address-card-o:before {
|
|
content: "\f2bc";
|
|
}
|
|
.fa-user-circle:before {
|
|
content: "\f2bd";
|
|
}
|
|
.fa-user-circle-o:before {
|
|
content: "\f2be";
|
|
}
|
|
.fa-user-o:before {
|
|
content: "\f2c0";
|
|
}
|
|
.fa-id-badge:before {
|
|
content: "\f2c1";
|
|
}
|
|
.fa-drivers-license:before,
|
|
.fa-id-card:before {
|
|
content: "\f2c2";
|
|
}
|
|
.fa-drivers-license-o:before,
|
|
.fa-id-card-o:before {
|
|
content: "\f2c3";
|
|
}
|
|
.fa-quora:before {
|
|
content: "\f2c4";
|
|
}
|
|
.fa-free-code-camp:before {
|
|
content: "\f2c5";
|
|
}
|
|
.fa-telegram:before {
|
|
content: "\f2c6";
|
|
}
|
|
.fa-thermometer-4:before,
|
|
.fa-thermometer:before,
|
|
.fa-thermometer-full:before {
|
|
content: "\f2c7";
|
|
}
|
|
.fa-thermometer-3:before,
|
|
.fa-thermometer-three-quarters:before {
|
|
content: "\f2c8";
|
|
}
|
|
.fa-thermometer-2:before,
|
|
.fa-thermometer-half:before {
|
|
content: "\f2c9";
|
|
}
|
|
.fa-thermometer-1:before,
|
|
.fa-thermometer-quarter:before {
|
|
content: "\f2ca";
|
|
}
|
|
.fa-thermometer-0:before,
|
|
.fa-thermometer-empty:before {
|
|
content: "\f2cb";
|
|
}
|
|
.fa-shower:before {
|
|
content: "\f2cc";
|
|
}
|
|
.fa-bathtub:before,
|
|
.fa-s15:before,
|
|
.fa-bath:before {
|
|
content: "\f2cd";
|
|
}
|
|
.fa-podcast:before {
|
|
content: "\f2ce";
|
|
}
|
|
.fa-window-maximize:before {
|
|
content: "\f2d0";
|
|
}
|
|
.fa-window-minimize:before {
|
|
content: "\f2d1";
|
|
}
|
|
.fa-window-restore:before {
|
|
content: "\f2d2";
|
|
}
|
|
.fa-times-rectangle:before,
|
|
.fa-window-close:before {
|
|
content: "\f2d3";
|
|
}
|
|
.fa-times-rectangle-o:before,
|
|
.fa-window-close-o:before {
|
|
content: "\f2d4";
|
|
}
|
|
.fa-bandcamp:before {
|
|
content: "\f2d5";
|
|
}
|
|
.fa-grav:before {
|
|
content: "\f2d6";
|
|
}
|
|
.fa-etsy:before {
|
|
content: "\f2d7";
|
|
}
|
|
.fa-imdb:before {
|
|
content: "\f2d8";
|
|
}
|
|
.fa-ravelry:before {
|
|
content: "\f2d9";
|
|
}
|
|
.fa-eercast:before {
|
|
content: "\f2da";
|
|
}
|
|
.fa-microchip:before {
|
|
content: "\f2db";
|
|
}
|
|
.fa-snowflake-o:before {
|
|
content: "\f2dc";
|
|
}
|
|
.fa-superpowers:before {
|
|
content: "\f2dd";
|
|
}
|
|
.fa-wpexplorer:before {
|
|
content: "\f2de";
|
|
}
|
|
.fa-meetup:before {
|
|
content: "\f2e0";
|
|
}
|
|
.sr-only {
|
|
position: absolute;
|
|
width: 1px;
|
|
height: 1px;
|
|
padding: 0;
|
|
margin: -1px;
|
|
overflow: hidden;
|
|
clip: rect(0, 0, 0, 0);
|
|
border: 0;
|
|
}
|
|
.sr-only-focusable:active,
|
|
.sr-only-focusable:focus {
|
|
position: static;
|
|
width: auto;
|
|
height: auto;
|
|
margin: 0;
|
|
overflow: visible;
|
|
clip: auto;
|
|
}
|
|
.sr-only-focusable:active,
|
|
.sr-only-focusable:focus {
|
|
position: static;
|
|
width: auto;
|
|
height: auto;
|
|
margin: 0;
|
|
overflow: visible;
|
|
clip: auto;
|
|
}
|
|
/*!
|
|
*
|
|
* 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;
|
|
}
|
|
div.traceback-wrapper pre.traceback {
|
|
max-height: 600px;
|
|
overflow: 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 {
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: space-between;
|
|
padding: 5px;
|
|
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;
|
|
}
|
|
[dir="rtl"] #ipython_notebook {
|
|
margin-right: 10px;
|
|
margin-left: 0;
|
|
}
|
|
[dir="rtl"] #ipython_notebook.pull-left {
|
|
float: right !important;
|
|
float: right;
|
|
}
|
|
.flex-spacer {
|
|
flex: 1;
|
|
}
|
|
#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#kernel_logo_widget {
|
|
margin: 0 10px;
|
|
}
|
|
span#login_widget {
|
|
float: right;
|
|
}
|
|
[dir="rtl"] span#login_widget {
|
|
float: left;
|
|
}
|
|
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;
|
|
}
|
|
.modal-header {
|
|
cursor: move;
|
|
}
|
|
@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;
|
|
}
|
|
[dir="rtl"] .center-nav form.pull-left {
|
|
float: right !important;
|
|
float: right;
|
|
}
|
|
[dir="rtl"] .center-nav .navbar-text {
|
|
float: right;
|
|
}
|
|
[dir="rtl"] .navbar-inner {
|
|
text-align: right;
|
|
}
|
|
[dir="rtl"] div.text-left {
|
|
text-align: right;
|
|
}
|
|
/*!
|
|
*
|
|
* 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 {
|
|
position: absolute;
|
|
display: block;
|
|
width: 100%;
|
|
height: 100%;
|
|
overflow: hidden;
|
|
cursor: pointer;
|
|
opacity: 0;
|
|
z-index: 2;
|
|
}
|
|
.alternate_upload .btn-xs > input.fileinput {
|
|
margin: -1px -5px;
|
|
}
|
|
.alternate_upload .btn-upload {
|
|
position: relative;
|
|
height: 22px;
|
|
}
|
|
::-webkit-file-upload-button {
|
|
cursor: pointer;
|
|
}
|
|
/**
|
|
* Primary styles
|
|
*
|
|
* Author: Jupyter Development Team
|
|
*/
|
|
ul#tabs {
|
|
margin-bottom: 4px;
|
|
}
|
|
ul#tabs a {
|
|
padding-top: 6px;
|
|
padding-bottom: 4px;
|
|
}
|
|
[dir="rtl"] ul#tabs.nav-tabs > li {
|
|
float: right;
|
|
}
|
|
[dir="rtl"] ul#tabs.nav.nav-tabs {
|
|
padding-right: 0;
|
|
}
|
|
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 .pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
[dir="rtl"] .list_toolbar .col-sm-4,
|
|
[dir="rtl"] .list_toolbar .col-sm-8 {
|
|
float: right;
|
|
}
|
|
.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: text-bottom;
|
|
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;
|
|
}
|
|
[dir="rtl"] .list_item > div input {
|
|
margin-right: 0;
|
|
}
|
|
.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_modified {
|
|
margin-right: 7px;
|
|
margin-left: 7px;
|
|
}
|
|
[dir="rtl"] .item_modified.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
.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;
|
|
}
|
|
[dir="rtl"] .item_buttons.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
[dir="rtl"] .item_buttons .kernel-name {
|
|
margin-left: 7px;
|
|
float: right;
|
|
}
|
|
.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;
|
|
}
|
|
.sort_button {
|
|
display: inline-block;
|
|
padding-left: 7px;
|
|
}
|
|
[dir="rtl"] .sort_button.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
#tree-selector {
|
|
padding-right: 0px;
|
|
}
|
|
#button-select-all {
|
|
min-width: 50px;
|
|
}
|
|
[dir="rtl"] #button-select-all.btn {
|
|
float: right ;
|
|
}
|
|
#select-all {
|
|
margin-left: 7px;
|
|
margin-right: 2px;
|
|
margin-top: 2px;
|
|
height: 16px;
|
|
}
|
|
[dir="rtl"] #select-all.pull-left {
|
|
float: right !important;
|
|
float: right;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.folder_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.notebook_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.running_notebook_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.file_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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;
|
|
}
|
|
#new-menu .dropdown-header {
|
|
font-size: 10px;
|
|
border-bottom: 1px solid #e5e5e5;
|
|
padding: 0 0 3px;
|
|
margin: -3px 20px 0;
|
|
}
|
|
.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;
|
|
}
|
|
.delete-button {
|
|
display: none;
|
|
}
|
|
.duplicate-button {
|
|
display: none;
|
|
}
|
|
.rename-button {
|
|
display: none;
|
|
}
|
|
.move-button {
|
|
display: none;
|
|
}
|
|
.download-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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.dirty-indicator.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.dirty-indicator-dirty.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.dirty-indicator-clean.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.dirty-indicator-clean:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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);
|
|
}
|
|
}
|
|
.CodeMirror-dialog {
|
|
background-color: #fff;
|
|
}
|
|
/*!
|
|
*
|
|
* IPython notebook
|
|
*
|
|
*/
|
|
/* CSS font colors for translated ANSI escape sequences */
|
|
/* The color values are a mix of
|
|
http://www.xcolors.net/dl/baskerville-ivorylight and
|
|
http://www.xcolors.net/dl/euphrasia */
|
|
.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-default-inverse-fg {
|
|
color: #FFFFFF;
|
|
}
|
|
.ansi-default-inverse-bg {
|
|
background-color: #000000;
|
|
}
|
|
.ansi-bold {
|
|
font-weight: bold;
|
|
}
|
|
.ansi-underline {
|
|
text-decoration: underline;
|
|
}
|
|
/* The following styles are deprecated an will be removed in a future version */
|
|
.ansibold {
|
|
font-weight: bold;
|
|
}
|
|
.ansi-inverse {
|
|
outline: 0.5px dotted;
|
|
}
|
|
/* 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;
|
|
position: relative;
|
|
overflow: visible;
|
|
}
|
|
div.cell:before {
|
|
position: absolute;
|
|
display: block;
|
|
top: -1px;
|
|
left: -1px;
|
|
width: 5px;
|
|
height: calc(100% + 2px);
|
|
content: '';
|
|
background: transparent;
|
|
}
|
|
div.cell.jupyter-soft-selected {
|
|
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,
|
|
div.cell.selected.jupyter-soft-selected {
|
|
border-color: #ababab;
|
|
}
|
|
div.cell.selected:before,
|
|
div.cell.selected.jupyter-soft-selected:before {
|
|
position: absolute;
|
|
display: block;
|
|
top: -1px;
|
|
left: -1px;
|
|
width: 5px;
|
|
height: calc(100% + 2px);
|
|
content: '';
|
|
background: #42A5F5;
|
|
}
|
|
@media print {
|
|
div.cell.selected,
|
|
div.cell.selected.jupyter-soft-selected {
|
|
border-color: transparent;
|
|
}
|
|
}
|
|
.edit_mode div.cell.selected {
|
|
border-color: #66BB6A;
|
|
}
|
|
.edit_mode div.cell.selected:before {
|
|
position: absolute;
|
|
display: block;
|
|
top: -1px;
|
|
left: -1px;
|
|
width: 5px;
|
|
height: calc(100% + 2px);
|
|
content: '';
|
|
background: #66BB6A;
|
|
}
|
|
@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. */
|
|
/* Note that this should set vertical padding only, since CodeMirror assumes
|
|
that horizontal padding will be set on CodeMirror pre */
|
|
padding: 0.4em 0;
|
|
}
|
|
.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. This sets horizontal padding only,
|
|
use .CodeMirror-lines for vertical */
|
|
padding: 0 0.4em;
|
|
border: 0;
|
|
border-radius: 0;
|
|
}
|
|
.CodeMirror-cursor {
|
|
border-left: 1.4px solid black;
|
|
}
|
|
@media screen and (min-width: 2138px) and (max-width: 4319px) {
|
|
.CodeMirror-cursor {
|
|
border-left: 2px solid black;
|
|
}
|
|
}
|
|
@media screen and (min-width: 4320px) {
|
|
.CodeMirror-cursor {
|
|
border-left: 4px solid black;
|
|
}
|
|
}
|
|
/*
|
|
|
|
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;
|
|
}
|
|
div.output_area .mglyph > img {
|
|
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: 1px 0 1px 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:not(.list-inline),
|
|
.rendered_html ol:not(.list-inline) {
|
|
padding-left: 2em;
|
|
}
|
|
.rendered_html ul {
|
|
list-style: disc;
|
|
}
|
|
.rendered_html ul ul {
|
|
list-style: square;
|
|
margin-top: 0;
|
|
}
|
|
.rendered_html ul ul ul {
|
|
list-style: circle;
|
|
}
|
|
.rendered_html ol {
|
|
list-style: decimal;
|
|
}
|
|
.rendered_html ol ol {
|
|
list-style: upper-alpha;
|
|
margin-top: 0;
|
|
}
|
|
.rendered_html ol ol ol {
|
|
list-style: lower-alpha;
|
|
}
|
|
.rendered_html ol ol ol ol {
|
|
list-style: lower-roman;
|
|
}
|
|
.rendered_html ol ol ol ol ol {
|
|
list-style: decimal;
|
|
}
|
|
.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;
|
|
padding: 0px;
|
|
background-color: #fff;
|
|
}
|
|
.rendered_html code {
|
|
background-color: #eff0f1;
|
|
}
|
|
.rendered_html p code {
|
|
padding: 1px 5px;
|
|
}
|
|
.rendered_html pre code {
|
|
background-color: #fff;
|
|
}
|
|
.rendered_html pre,
|
|
.rendered_html code {
|
|
border: 0;
|
|
color: #000;
|
|
font-size: 100%;
|
|
}
|
|
.rendered_html blockquote {
|
|
margin: 1em 2em;
|
|
}
|
|
.rendered_html table {
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
border: none;
|
|
border-collapse: collapse;
|
|
border-spacing: 0;
|
|
color: black;
|
|
font-size: 12px;
|
|
table-layout: fixed;
|
|
}
|
|
.rendered_html thead {
|
|
border-bottom: 1px solid black;
|
|
vertical-align: bottom;
|
|
}
|
|
.rendered_html tr,
|
|
.rendered_html th,
|
|
.rendered_html td {
|
|
text-align: right;
|
|
vertical-align: middle;
|
|
padding: 0.5em 0.5em;
|
|
line-height: normal;
|
|
white-space: normal;
|
|
max-width: none;
|
|
border: none;
|
|
}
|
|
.rendered_html th {
|
|
font-weight: bold;
|
|
}
|
|
.rendered_html tbody tr:nth-child(odd) {
|
|
background: #f5f5f5;
|
|
}
|
|
.rendered_html tbody tr:hover {
|
|
background: rgba(66, 165, 245, 0.2);
|
|
}
|
|
.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;
|
|
}
|
|
.rendered_html .alert {
|
|
margin-bottom: initial;
|
|
}
|
|
.rendered_html * + .alert {
|
|
margin-top: 1em;
|
|
}
|
|
[dir="rtl"] .rendered_html p {
|
|
text-align: right;
|
|
}
|
|
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.rendered .rendered_html tr,
|
|
.text_cell.rendered .rendered_html th,
|
|
.text_cell.rendered .rendered_html td {
|
|
max-width: none;
|
|
}
|
|
.text_cell.unrendered .text_cell_render {
|
|
display: none;
|
|
}
|
|
.text_cell .dropzone .input_area {
|
|
border: 2px dashed #bababa;
|
|
margin: -1px;
|
|
}
|
|
.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;
|
|
}
|
|
.jupyter-keybindings {
|
|
padding: 1px;
|
|
line-height: 24px;
|
|
border-bottom: 1px solid gray;
|
|
}
|
|
.jupyter-keybindings input {
|
|
margin: 0;
|
|
padding: 0;
|
|
border: none;
|
|
}
|
|
.jupyter-keybindings i {
|
|
padding: 6px;
|
|
}
|
|
.well code {
|
|
background-color: #ffffff;
|
|
border-color: #ababab;
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
padding: 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;
|
|
}
|
|
.tags_button_container {
|
|
width: 100%;
|
|
display: flex;
|
|
}
|
|
.tag-container {
|
|
display: flex;
|
|
flex-direction: row;
|
|
flex-grow: 1;
|
|
overflow: hidden;
|
|
position: relative;
|
|
}
|
|
.tag-container > * {
|
|
margin: 0 4px;
|
|
}
|
|
.remove-tag-btn {
|
|
margin-left: 4px;
|
|
}
|
|
.tags-input {
|
|
display: flex;
|
|
}
|
|
.cell-tag:last-child:after {
|
|
content: "";
|
|
position: absolute;
|
|
right: 0;
|
|
width: 40px;
|
|
height: 100%;
|
|
/* Fade to background color of cell toolbar */
|
|
background: linear-gradient(to right, rgba(0, 0, 0, 0), #EEE);
|
|
}
|
|
.tags-input > * {
|
|
margin-left: 4px;
|
|
}
|
|
.cell-tag,
|
|
.tags-input input,
|
|
.tags-input button {
|
|
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;
|
|
box-shadow: none;
|
|
width: inherit;
|
|
font-size: inherit;
|
|
height: 22px;
|
|
line-height: 22px;
|
|
padding: 0px 4px;
|
|
display: inline-block;
|
|
}
|
|
.cell-tag:focus,
|
|
.tags-input input:focus,
|
|
.tags-input button: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);
|
|
}
|
|
.cell-tag::-moz-placeholder,
|
|
.tags-input input::-moz-placeholder,
|
|
.tags-input button::-moz-placeholder {
|
|
color: #999;
|
|
opacity: 1;
|
|
}
|
|
.cell-tag:-ms-input-placeholder,
|
|
.tags-input input:-ms-input-placeholder,
|
|
.tags-input button:-ms-input-placeholder {
|
|
color: #999;
|
|
}
|
|
.cell-tag::-webkit-input-placeholder,
|
|
.tags-input input::-webkit-input-placeholder,
|
|
.tags-input button::-webkit-input-placeholder {
|
|
color: #999;
|
|
}
|
|
.cell-tag::-ms-expand,
|
|
.tags-input input::-ms-expand,
|
|
.tags-input button::-ms-expand {
|
|
border: 0;
|
|
background-color: transparent;
|
|
}
|
|
.cell-tag[disabled],
|
|
.tags-input input[disabled],
|
|
.tags-input button[disabled],
|
|
.cell-tag[readonly],
|
|
.tags-input input[readonly],
|
|
.tags-input button[readonly],
|
|
fieldset[disabled] .cell-tag,
|
|
fieldset[disabled] .tags-input input,
|
|
fieldset[disabled] .tags-input button {
|
|
background-color: #eeeeee;
|
|
opacity: 1;
|
|
}
|
|
.cell-tag[disabled],
|
|
.tags-input input[disabled],
|
|
.tags-input button[disabled],
|
|
fieldset[disabled] .cell-tag,
|
|
fieldset[disabled] .tags-input input,
|
|
fieldset[disabled] .tags-input button {
|
|
cursor: not-allowed;
|
|
}
|
|
textarea.cell-tag,
|
|
textarea.tags-input input,
|
|
textarea.tags-input button {
|
|
height: auto;
|
|
}
|
|
select.cell-tag,
|
|
select.tags-input input,
|
|
select.tags-input button {
|
|
height: 30px;
|
|
line-height: 30px;
|
|
}
|
|
textarea.cell-tag,
|
|
textarea.tags-input input,
|
|
textarea.tags-input button,
|
|
select[multiple].cell-tag,
|
|
select[multiple].tags-input input,
|
|
select[multiple].tags-input button {
|
|
height: auto;
|
|
}
|
|
.cell-tag,
|
|
.tags-input button {
|
|
padding: 0px 4px;
|
|
}
|
|
.cell-tag {
|
|
background-color: #fff;
|
|
white-space: nowrap;
|
|
}
|
|
.tags-input input[type=text]:focus {
|
|
outline: none;
|
|
box-shadow: none;
|
|
border-color: #ccc;
|
|
}
|
|
.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 .current_kernel_logo {
|
|
display: none;
|
|
margin-top: -1px;
|
|
margin-bottom: -1px;
|
|
width: 32px;
|
|
height: 32px;
|
|
}
|
|
[dir="rtl"] #kernel_logo_widget {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
.modal .modal-body .move-path {
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: space;
|
|
align-items: center;
|
|
}
|
|
.modal .modal-body .move-path .server-root {
|
|
padding-right: 20px;
|
|
}
|
|
.modal .modal-body .move-path .path-input {
|
|
flex: 1;
|
|
}
|
|
#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;
|
|
}
|
|
[dir="rtl"] #menubar .navbar-toggle {
|
|
float: right;
|
|
}
|
|
[dir="rtl"] #menubar .navbar-collapse {
|
|
clear: right;
|
|
}
|
|
[dir="rtl"] #menubar .navbar-nav {
|
|
float: right;
|
|
}
|
|
[dir="rtl"] #menubar .nav {
|
|
padding-right: 0px;
|
|
}
|
|
[dir="rtl"] #menubar .navbar-nav > li {
|
|
float: right;
|
|
}
|
|
[dir="rtl"] #menubar .navbar-right {
|
|
float: left !important;
|
|
}
|
|
[dir="rtl"] ul.dropdown-menu {
|
|
text-align: right;
|
|
left: auto;
|
|
}
|
|
[dir="rtl"] ul#new-menu.dropdown-menu {
|
|
right: auto;
|
|
left: 0;
|
|
}
|
|
.nav-wrapper {
|
|
border-bottom: 1px solid #e7e7e7;
|
|
}
|
|
i.menu-icon {
|
|
padding-top: 4px;
|
|
}
|
|
[dir="rtl"] i.menu-icon.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
ul#help_menu li a {
|
|
overflow: hidden;
|
|
padding-right: 2.2em;
|
|
}
|
|
ul#help_menu li a i {
|
|
margin-right: -1.2em;
|
|
}
|
|
[dir="rtl"] ul#help_menu li a {
|
|
padding-left: 2.2em;
|
|
}
|
|
[dir="rtl"] ul#help_menu li a i {
|
|
margin-right: 0;
|
|
margin-left: -1.2em;
|
|
}
|
|
[dir="rtl"] ul#help_menu li a i.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
.dropdown-submenu {
|
|
position: relative;
|
|
}
|
|
.dropdown-submenu > .dropdown-menu {
|
|
top: 0;
|
|
left: 100%;
|
|
margin-top: -6px;
|
|
margin-left: -1px;
|
|
}
|
|
[dir="rtl"] .dropdown-submenu > .dropdown-menu {
|
|
right: 100%;
|
|
margin-right: -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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.dropdown-submenu > a:after.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.dropdown-submenu > a:after.pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.dropdown-submenu > a:after.pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
[dir="rtl"] .dropdown-submenu > a:after {
|
|
float: left;
|
|
content: "\f0d9";
|
|
margin-right: 0;
|
|
margin-left: -10px;
|
|
}
|
|
.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;
|
|
}
|
|
[dir="rtl"] #notification_area {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
.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;
|
|
}
|
|
[dir="rtl"] .indicator_area {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
#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;
|
|
}
|
|
[dir="rtl"] #kernel_indicator {
|
|
float: left !important;
|
|
float: left;
|
|
border-left: 0;
|
|
border-right: 1px solid;
|
|
}
|
|
#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;
|
|
}
|
|
[dir="rtl"] #modal_indicator {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
#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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.edit_mode .modal_indicator:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.command_mode .modal_indicator:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.kernel_idle_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.kernel_busy_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.kernel_dead_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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.fa-pull-left {
|
|
margin-right: .3em;
|
|
}
|
|
.kernel_disconnected_icon:before.fa-pull-right {
|
|
margin-left: .3em;
|
|
}
|
|
.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 {
|
|
height: 30px;
|
|
margin-top: 4px;
|
|
display: flex;
|
|
justify-content: flex-start;
|
|
align-items: baseline;
|
|
width: 50%;
|
|
flex: 1;
|
|
}
|
|
span.save_widget span.filename {
|
|
height: 100%;
|
|
line-height: 1em;
|
|
margin-left: 16px;
|
|
border: none;
|
|
font-size: 146.5%;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
border-radius: 2px;
|
|
}
|
|
span.save_widget span.filename:hover {
|
|
background-color: #e6e6e6;
|
|
}
|
|
[dir="rtl"] span.save_widget.pull-left {
|
|
float: right !important;
|
|
float: right;
|
|
}
|
|
[dir="rtl"] span.save_widget span.filename {
|
|
margin-left: 0;
|
|
margin-right: 16px;
|
|
}
|
|
span.checkpoint_status,
|
|
span.autosave_status {
|
|
font-size: small;
|
|
white-space: nowrap;
|
|
padding: 0 5px;
|
|
}
|
|
@media (max-width: 767px) {
|
|
span.save_widget {
|
|
font-size: small;
|
|
padding: 0 0 0 5px;
|
|
}
|
|
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;
|
|
}
|
|
.toolbar-btn-label {
|
|
margin-left: 6px;
|
|
}
|
|
#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;
|
|
}
|
|
[dir="rtl"] .btn-group > .btn,
|
|
.btn-group-vertical > .btn {
|
|
float: right;
|
|
}
|
|
.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;
|
|
}
|
|
[dir="rtl"] ul.typeahead-list i {
|
|
margin-left: 0;
|
|
margin-right: -10px;
|
|
}
|
|
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;
|
|
}
|
|
ul.typeahead-list > li > a.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
[dir="rtl"] .typeahead-list {
|
|
text-align: right;
|
|
}
|
|
.cmd-palette .modal-body {
|
|
padding: 7px;
|
|
}
|
|
.cmd-palette form {
|
|
background: white;
|
|
}
|
|
.cmd-palette input {
|
|
outline: none;
|
|
}
|
|
.no-shortcut {
|
|
min-width: 20px;
|
|
color: transparent;
|
|
}
|
|
[dir="rtl"] .no-shortcut.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
[dir="rtl"] .command-shortcut.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
.command-shortcut:before {
|
|
content: "(command mode)";
|
|
padding-right: 3px;
|
|
color: #777777;
|
|
}
|
|
.edit-shortcut:before {
|
|
content: "(edit)";
|
|
padding-right: 3px;
|
|
color: #777777;
|
|
}
|
|
[dir="rtl"] .edit-shortcut.pull-right {
|
|
float: left !important;
|
|
float: left;
|
|
}
|
|
#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;
|
|
}
|
|
[dir="ltr"] #find-and-replace .input-group-btn + .form-control {
|
|
border-left: none;
|
|
}
|
|
[dir="rtl"] #find-and-replace .input-group-btn + .form-control {
|
|
border-right: none;
|
|
}
|
|
#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">
|
|
pre { line-height: 125%; }
|
|
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
|
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
|
|
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
|
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
|
|
.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>
|
|
|
|
|
|
<!-- Loading mathjax macro -->
|
|
<!-- Load mathjax -->
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.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 -->
|
|
|
|
<style>
|
|
td.center, th.center {
|
|
text-align: center;
|
|
}
|
|
|
|
body {
|
|
overflow: visible;
|
|
font-size: 14px;
|
|
padding-top: 1em;
|
|
}
|
|
|
|
div#notebook {
|
|
overflow: visible;
|
|
border-top: none;
|
|
}
|
|
|
|
div#notebook-container {
|
|
width: 100%;
|
|
}
|
|
|
|
@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;
|
|
}
|
|
}
|
|
|
|
div.prompt {
|
|
min-width: 21ex;
|
|
}
|
|
|
|
div.nbgrader_cell {
|
|
width: 100%;
|
|
}
|
|
|
|
div.nbgrader_cell .panel-heading {
|
|
padding: 0.4em 0.6em;
|
|
height: 37px;
|
|
}
|
|
|
|
div.nbgrader_cell .panel-heading a {
|
|
color: #BBBBBB;
|
|
}
|
|
|
|
div.nbgrader_cell .panel-footer {
|
|
padding: 0.4em 0.6em;
|
|
}
|
|
|
|
div.nbgrader_cell .panel-body {
|
|
padding: 0.4em;
|
|
}
|
|
|
|
.comment {
|
|
width: 100%;
|
|
margin-top: 0.5em;
|
|
}
|
|
|
|
div.nbgrader_cell .input_area {
|
|
background: white;
|
|
border: none;
|
|
}
|
|
|
|
.score {
|
|
color: black;
|
|
}
|
|
|
|
li.late-penalty {
|
|
color: #d2413a;
|
|
}
|
|
|
|
span.nbgrader-label {
|
|
line-height: 25px;
|
|
}
|
|
|
|
.save-icon {
|
|
margin-left: 1em;
|
|
top: 4px;
|
|
}
|
|
</style>
|
|
|
|
</head>
|
|
<body>
|
|
<a name="top"></a>
|
|
<div class="container">
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
<h4>7 Linear Equation Systems (Score: 28.0 / 31.0)</h4>
|
|
<div id="toc">
|
|
<ol>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-bcf2dd8f9a194be8">Coding free-response</a> (Score: 0.0 / 0.0)</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-bcd26d8a9f0e6447">Coding free-response</a> (Score: 2.0 / 3.0)</li>
|
|
|
|
|
|
<li><a href="#comment-cell-bcd26d8a9f0e6447">Comment</a></li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-3a8403fee85d9582">Written response</a> (Score: 2.0 / 2.0)</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-ec2390c3cafa2f8e">Coding free-response</a> (Score: 3.0 / 3.0)</li>
|
|
|
|
|
|
<li><a href="#comment-cell-ec2390c3cafa2f8e">Comment</a></li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-0585da22f1d304ab">Coding free-response</a> (Score: 4.0 / 4.0)</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-6524fb6d322a6ea0">Coding free-response</a> (Score: 0.0 / 0.0)</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-a105ce7e1a34ce3c">Coding free-response</a> (Score: 3.0 / 3.0)</li>
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-62100bf55800145b">Coding free-response</a> (Score: 3.0 / 3.0)</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-8ac3d07c9d237e47">Coding free-response</a> (Score: 3.0 / 3.0)</li>
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-4f5bc81f40ddb3fa">Coding free-response</a> (Score: 3.0 / 3.0)</li>
|
|
|
|
|
|
<li><a href="#comment-cell-4f5bc81f40ddb3fa">Comment</a></li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-490cd96dc58cbff8">Coding free-response</a> (Score: 3.0 / 4.0)</li>
|
|
|
|
|
|
<li><a href="#comment-cell-490cd96dc58cbff8">Comment</a></li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li><a href="#cell-de3d1bd5ccfa8dfb">Coding free-response</a> (Score: 2.0 / 3.0)</li>
|
|
|
|
|
|
<li><a href="#comment-cell-de3d1bd5ccfa8dfb">Comment</a></li>
|
|
|
|
|
|
|
|
</ol>
|
|
</div>
|
|
</div>
|
|
<div class="panel-body">
|
|
<div 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="CDS:-Numerical-Methods-Assignments">CDS: Numerical Methods Assignments<a class="anchor-link" href="#CDS:-Numerical-Methods-Assignments">¶</a></h1><ul>
|
|
<li><p>See lecture notes and documentation on Brightspace for Python and Jupyter basics. If you are stuck, try to google or get in touch via Discord.</p>
|
|
</li>
|
|
<li><p>Solutions must be submitted via the Jupyter Hub.</p>
|
|
</li>
|
|
<li><p>Make sure you fill in any place that says <code>YOUR CODE HERE</code> or "YOUR ANSWER HERE".</p>
|
|
</li>
|
|
</ul>
|
|
<h2 id="Submission">Submission<a class="anchor-link" href="#Submission">¶</a></h2><ol>
|
|
<li>Name all team members in the the cell below</li>
|
|
<li>make sure everything runs as expected</li>
|
|
<li><strong>restart the kernel</strong> (in the menubar, select Kernel$\rightarrow$Restart)</li>
|
|
<li><strong>run all cells</strong> (in the menubar, select Cell$\rightarrow$Run All)</li>
|
|
<li>Check all outputs (Out[*]) for errors and <strong>resolve them if necessary</strong></li>
|
|
<li>submit your solutions <strong>in time (before the deadline)</strong></li>
|
|
</ol>
|
|
|
|
</div>
|
|
</div></div>
|
|
team_members = "Koen Vendrig, Kees van Kempen"
|
|
<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">
|
|
<h2 id="Linear-Equation-Systems">Linear Equation Systems<a class="anchor-link" href="#Linear-Equation-Systems">¶</a></h2><p>In the following you will implement the Gauss-Seidel (GS), Steepest Descent (SD) and the Conjugate Gradient (CG) algorithms to solve linear equation systems of the form</p>
|
|
$$A \mathbf{x} = \mathbf{b},$$<p></p>
|
|
<p>with $A$ being an $n \times n$ matrix.</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-bcf2dd8f9a194be8"></a><a name="cell-bcf2dd8f9a194be8"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 0.0 / 0.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
|
|
<span class="kn">import</span> <span class="nn">numpy.linalg</span> <span class="k">as</span> <span class="nn">linalg</span>
|
|
<span class="kn">from</span> <span class="nn">matplotlib</span> <span class="kn">import</span> <span class="n">pyplot</span> <span class="k">as</span> <span class="n">plt</span>
|
|
<span class="kn">import</span> <span class="nn">time</span>
|
|
</pre></div>
|
|
|
|
</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">
|
|
<h3 id="Task-1">Task 1<a class="anchor-link" href="#Task-1">¶</a></h3><p>First, you need to implement a Python function $\text{diff(a,b)}$, which returns the difference $\text{d}$ between two $n$-dimensional vectors $\text{a}$ and $\text{b}$ according to</p>
|
|
$$ d = || \mathbf{a} - \mathbf{b}||_\infty = \underset{i=1,2,\dots,n}{\operatorname{max}} |a_i - b_i|. $$
|
|
</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-bcd26d8a9f0e6447"></a><a name="cell-bcd26d8a9f0e6447"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 2.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">diff</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">):</span>
|
|
<span class="k">return</span> <span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">abs</span><span class="p">(</span><span class="n">a</span> <span class="o">-</span> <span class="n">b</span><span class="p">))</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="panel-footer">
|
|
<div>
|
|
<b>Comments:</b> <p>The docstring is missing! (-1 pt)</p>
|
|
|
|
</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">
|
|
<h3 id="Task-2">Task 2<a class="anchor-link" href="#Task-2">¶</a></h3><p>The Gauss-Seidel iteration scheme to solve the linear equation system</p>
|
|
$$A \mathbf{x} = \mathbf{b}$$<p>is defined by</p>
|
|
$$x_i^{(k)} = \frac{1}{a_{ii}} \left[ -\sum_{j=0}^{i-1} a_{ij} x_j^{(k)} -\sum_{j=i+1}^{n-1} a_{ij} x_j^{(k-1)} + b_i \right].$$<p>Note especially the difference in the sums: the first one involves $x_j^{(k)}$ and the second one $x_j^{(k-1)}$.</p>
|
|
<p>Give the outline of the derivation in LaTeX math notation in the markdown cell below. (Double click on "YOUR ANSWER HERE" to open the cell, and ctrl+enter to compile.)</p>
|
|
<p>Hint: Similar to the Jacobi scheme, start by seperating the matrix $A$ into its diagonal ($D$), lower triangular ($L$) and upper triangular ($U$) forms, such that $A = D - L - U$.</p>
|
|
|
|
</div>
|
|
</div></div>
|
|
|
|
<div class="cell border-box-sizing text_cell rendered">
|
|
<div class="prompt input_prompt">
|
|
</div><div class="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-3a8403fee85d9582"></a><a name="cell-3a8403fee85d9582"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 2.0 / 2.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="text_cell_render border-box-sizing rendered_html">
|
|
<hr>
|
|
<p>We start from our linear equations:</p>
|
|
$$Ax = b$$<p>We separate A into different components (diagonal, strictly lower triangular and strictly upper triangular):</p>
|
|
$$A = D - L - U$$<p>We write $D - L$ as $L'$ to get:</p>
|
|
$$(L' - U)x = b$$<p>We take the iterative process of the Gauss-Seidel method to write:</p>
|
|
$$
|
|
L'x^k = b + Ux^{k-1}\\
|
|
x^k = L'^{-1}(b + Ux^{k-1})\\
|
|
$$<p>If we write every component of the matrix $A$ as $a_{ij}$, we can use forward substitution to rewrite our previous equation to:</p>
|
|
$$x^k _i = \frac{1}{a_{ii}}\left[-\sum_{j=0}^{i-1}a_{ij}x_{j}^{k} -\sum_{j=i+1}^{n-1}a_{ij}x_{j}^{k-1} + b_i\right].$$
|
|
</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">
|
|
<h3 id="Task-3">Task 3<a class="anchor-link" href="#Task-3">¶</a></h3><p>Implement the Gauss-Seidel iteration scheme derived above</p>
|
|
$$x_i^{(k)} = \frac{1}{a_{ii}} \left[ -\sum_{j=0}^{i-1} a_{ij} x_j^{(k)} -\sum_{j=i+1}^{n-1} a_{ij} x_j^{(k-1)} + b_i \right],$$<p>where $a_{ij}$ are the elements of the matrix $A$, and $x_i$ and $b_i$ the elements of vectors $\mathbf{x}$ and $\mathbf{b}$, respectively.</p>
|
|
<p>Write a Python function $\text{GS(A, b, eps)}$, where $\text{A}$ represents the $n \times n$ $A$ matrix, $\text{b}$ represents the $n$-dimensional solution vector $\mathbf{b}$, and $\text{eps}$ is a scalar $\varepsilon$ defining the accuracy up to which the iteration is performed. Your function should return both the solution vector $\mathbf{x}^{(k)}$ from the last iteration step and the corresponding iteration index $k$.</p>
|
|
<p>Use an assertion to make sure the diagonal elements of $A$ are all non-zero. Initialize your iteration with $\mathbf{x}^{(0)} = \mathbf{0}$ (or with $\mathbf{x}^{(1)} = D^{-1}\mathbf{b}$, with $D$ the diagonal of $A$) and increase $k$ until $|| \mathbf{x}^{(k)} - \mathbf{x}^{(k-1)}||_\infty < \varepsilon$.</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-ec2390c3cafa2f8e"></a><a name="cell-ec2390c3cafa2f8e"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 3.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">GS</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">,</span> <span class="n">k_max</span> <span class="o">=</span> <span class="mi">1000000</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Return the Gauss-Seidel algorithm estimate solution x to the problem</span>
|
|
<span class="sd"> Ax = b and the number of iterations k it took to decrease maximum</span>
|
|
<span class="sd"> norm error below eps or to exceed iteration maximum k_max.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="c1"># Assert n by n matrix.</span>
|
|
<span class="k">assert</span> <span class="nb">len</span><span class="p">(</span><span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">)</span> <span class="o">==</span> <span class="mi">2</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">==</span> <span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
|
|
<span class="n">n</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">A</span><span class="p">)</span>
|
|
|
|
<span class="c1"># First we decompose A = D - L - U.</span>
|
|
<span class="n">D</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">diag</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">diag</span><span class="p">(</span><span class="n">A</span><span class="p">))</span>
|
|
<span class="n">U</span> <span class="o">=</span> <span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">triu</span><span class="p">(</span><span class="n">A</span><span class="p">)</span> <span class="o">+</span> <span class="n">D</span>
|
|
<span class="n">L</span> <span class="o">=</span> <span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">tril</span><span class="p">(</span><span class="n">A</span><span class="p">)</span> <span class="o">+</span> <span class="n">D</span>
|
|
|
|
<span class="c1"># We need non-zero diagonals elements.</span>
|
|
<span class="k">assert</span> <span class="n">np</span><span class="o">.</span><span class="n">all</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">diag</span><span class="p">(</span><span class="n">D</span><span class="p">)</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">)</span>
|
|
|
|
<span class="n">x_prev</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">n</span><span class="p">)</span>
|
|
<span class="n">x_cur</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">linalg</span><span class="o">.</span><span class="n">inv</span><span class="p">(</span><span class="n">D</span><span class="p">),</span> <span class="n">b</span><span class="p">)</span>
|
|
|
|
<span class="n">k</span> <span class="o">=</span> <span class="mi">1</span>
|
|
<span class="k">while</span> <span class="n">diff</span><span class="p">(</span><span class="n">x_cur</span><span class="p">,</span> <span class="n">x_prev</span><span class="p">)</span> <span class="o">></span> <span class="n">eps</span> <span class="ow">and</span> <span class="n">k</span> <span class="o"><</span> <span class="n">k_max</span><span class="p">:</span>
|
|
<span class="n">k</span> <span class="o">+=</span> <span class="mi">1</span>
|
|
<span class="c1"># We will have to copy, as the array elements will point to the same</span>
|
|
<span class="c1"># memory otherwise, and changes to one array will change the other aswell.</span>
|
|
<span class="n">x_prev</span> <span class="o">=</span> <span class="n">x_cur</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
|
|
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">n</span><span class="p">):</span>
|
|
<span class="n">x_cur</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="mi">1</span><span class="o">/</span><span class="n">A</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="n">i</span><span class="p">]</span><span class="o">*</span><span class="p">(</span><span class="o">-</span><span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">A</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="p">:</span><span class="n">i</span><span class="p">],</span> <span class="n">x_cur</span><span class="p">[:</span><span class="n">i</span><span class="p">])</span> <span class="o">-</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">A</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">:],</span> <span class="n">x_prev</span><span class="p">[</span><span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">:])</span> <span class="o">+</span> <span class="n">b</span><span class="p">[</span><span class="n">i</span><span class="p">])</span>
|
|
<span class="k">return</span> <span class="n">x_cur</span><span class="p">,</span> <span class="n">k</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="panel-footer">
|
|
<div>
|
|
<b>Comments:</b> <p>Good! also k_max is good as overflow protection!</p>
|
|
|
|
</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">
|
|
<h3 id="Task-4">Task 4<a class="anchor-link" href="#Task-4">¶</a></h3><p>Verify your implementation by comparing your approximate result to an exact solution. Use $\text{numpy.linalg.solve()}$ to obtain the exact solution of the system</p>
|
|
$$
|
|
\begin{align*}
|
|
\begin{pmatrix}
|
|
10 & -1 & 2 & 0 \\
|
|
-1 & 11 &-1 & 3 \\
|
|
2 & -1 & 10&-1 \\
|
|
0 & 3 & -1& 8
|
|
\end{pmatrix} \mathbf{x}^*
|
|
=
|
|
\begin{pmatrix}
|
|
6 \\
|
|
25 \\
|
|
-11\\
|
|
15
|
|
\end{pmatrix}
|
|
\end{align*}
|
|
$$<p>Then compare you approximate result $\mathbf{\tilde{x}}$ to the exact result $\mathbf{x^*}$ by plotting $|| \mathbf{x}^* - \mathbf{\tilde{x}}||_\infty$ for different accuracies $\varepsilon = 10^{-1}, 10^{-2}, 10^{-3}, 10^{-4}$.</p>
|
|
<p>Implement a unit test for your function using this system.</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-0585da22f1d304ab"></a><a name="cell-0585da22f1d304ab"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 4.0 / 4.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">A</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([[</span> <span class="mi">10</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">11</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">3</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mi">2</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">8</span><span class="p">]])</span>
|
|
<span class="n">b</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span> <span class="p">[</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">25</span><span class="p">,</span> <span class="o">-</span><span class="mi">11</span><span class="p">,</span> <span class="mi">15</span><span class="p">]</span> <span class="p">)</span>
|
|
<span class="n">x_exact</span> <span class="o">=</span> <span class="n">linalg</span><span class="o">.</span><span class="n">solve</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span>
|
|
|
|
<span class="n">eps_list</span> <span class="o">=</span> <span class="p">[</span><span class="mf">1e-1</span><span class="p">,</span> <span class="mf">1e-2</span><span class="p">,</span> <span class="mf">1e-3</span><span class="p">,</span> <span class="mf">1e-4</span><span class="p">]</span>
|
|
<span class="n">diff_list</span> <span class="o">=</span> <span class="p">[]</span>
|
|
<span class="k">for</span> <span class="n">eps</span> <span class="ow">in</span> <span class="n">eps_list</span><span class="p">:</span>
|
|
<span class="n">x</span><span class="p">,</span> <span class="n">k</span> <span class="o">=</span> <span class="n">GS</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">)</span>
|
|
<span class="n">diff_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">diff</span><span class="p">(</span><span class="n">x_exact</span><span class="p">,</span> <span class="n">x</span><span class="p">))</span>
|
|
|
|
<span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">subplots</span><span class="p">()</span>
|
|
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">scatter</span><span class="p">(</span><span class="n">eps_list</span><span class="p">,</span> <span class="n">diff_list</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_xscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_yscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s2">"$\epsilon$"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s2">"$||</span><span class="se">\\</span><span class="s2">vec</span><span class="si">{x}</span><span class="s2">^* - </span><span class="se">\\</span><span class="s2">vec{</span><span class="se">\\</span><span class="s2">tilde</span><span class="si">{x}</span><span class="s2">}||_\infty$"</span><span class="p">)</span>
|
|
|
|
<span class="n">fig</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<div class="output_wrapper">
|
|
<div class="output">
|
|
|
|
|
|
<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 [5]:</div><div class="inner_cell">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># As the three algorithm functions will have the same signature,</span>
|
|
<span class="c1"># it makes sense to only write the test function once.</span>
|
|
|
|
<span class="k">def</span> <span class="nf">test_alg</span><span class="p">(</span><span class="n">alg</span><span class="p">,</span> <span class="n">alg_name</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Check that function alg returns solutions for the example system Ax = b</span>
|
|
<span class="sd"> within the error defined by the same eps as used for the iteration.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="n">A</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([[</span> <span class="mi">10</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">0</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">11</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">3</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mi">2</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="o">-</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">8</span><span class="p">]])</span>
|
|
<span class="n">b</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span> <span class="p">[</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">25</span><span class="p">,</span> <span class="o">-</span><span class="mi">11</span><span class="p">,</span> <span class="mi">15</span><span class="p">]</span> <span class="p">)</span>
|
|
<span class="n">x_exact</span> <span class="o">=</span> <span class="n">linalg</span><span class="o">.</span><span class="n">solve</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span>
|
|
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"Starting with A ="</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="n">A</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"and b ="</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"We apply the </span><span class="si">{}</span><span class="s2"> algorithm to solve Ax = b."</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">alg_name</span><span class="p">))</span>
|
|
<span class="nb">print</span><span class="p">()</span>
|
|
|
|
<span class="n">eps_list</span> <span class="o">=</span> <span class="p">[</span><span class="mf">1e-1</span><span class="p">,</span> <span class="mf">1e-2</span><span class="p">,</span> <span class="mf">1e-3</span><span class="p">,</span> <span class="mf">1e-4</span><span class="p">]</span>
|
|
<span class="k">for</span> <span class="n">eps</span> <span class="ow">in</span> <span class="n">eps_list</span><span class="p">:</span>
|
|
<span class="n">x</span><span class="p">,</span> <span class="n">k</span> <span class="o">=</span> <span class="n">alg</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"For eps = </span><span class="si">{:.0e}</span><span class="se">\t</span><span class="s2">after k = </span><span class="si">{:d}</span><span class="se">\t</span><span class="s2"> iterations:"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">eps</span><span class="p">,</span> <span class="n">k</span><span class="p">))</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"x =</span><span class="se">\t\t\t</span><span class="s2">"</span><span class="p">,</span> <span class="n">x</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"Ax =</span><span class="se">\t\t\t</span><span class="s2">"</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">x</span><span class="p">))</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"diff(Ax, b) =</span><span class="se">\t\t</span><span class="s2">"</span><span class="p">,</span> <span class="n">diff</span><span class="p">(</span><span class="n">A</span> <span class="o">@</span> <span class="n">x</span><span class="p">,</span> <span class="n">b</span><span class="p">))</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"diff(x, x_exact) =</span><span class="se">\t</span><span class="s2">"</span><span class="p">,</span> <span class="n">diff</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">x_exact</span><span class="p">))</span>
|
|
<span class="nb">print</span><span class="p">()</span>
|
|
|
|
<span class="k">assert</span> <span class="n">diff</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">x_exact</span><span class="p">)</span> <span class="o"><</span> <span class="n">eps</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 [6]:</div><div class="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-6524fb6d322a6ea0"></a><a name="cell-6524fb6d322a6ea0"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 0.0 / 0.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">test_GS</span><span class="p">():</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Check that GS returns solutions for the example system Ax = b</span>
|
|
<span class="sd"> within the error defined by the same eps as used for the iteration.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="k">return</span> <span class="n">test_alg</span><span class="p">(</span><span class="n">GS</span><span class="p">,</span> <span class="s2">"Gauss-Seidel"</span><span class="p">)</span>
|
|
|
|
<span class="n">test_GS</span><span class="p">()</span>
|
|
</pre></div>
|
|
|
|
</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>Starting with A =
|
|
[[10 -1 2 0]
|
|
[-1 11 -1 3]
|
|
[ 2 -1 10 -1]
|
|
[ 0 3 -1 8]]
|
|
and b = [ 6 25 -11 15]
|
|
We apply the Gauss-Seidel algorithm to solve Ax = b.
|
|
|
|
For eps = 1e-01 after k = 4 iterations:
|
|
x = [ 0.99463393 1.99776509 -0.99803257 1.00108402]
|
|
Ax = [ 5.95250909 24.98206671 -10.98990699 15. ]
|
|
diff(Ax, b) = 0.04749090616931895
|
|
diff(x, x_exact) = 0.005366066491359844
|
|
|
|
For eps = 1e-02 after k = 5 iterations:
|
|
x = [ 0.99938302 1.99982713 -0.99978549 1.00009164]
|
|
Ax = [ 5.99443213 24.99877578 -10.99900762 15. ]
|
|
diff(Ax, b) = 0.005567865937722516
|
|
diff(x, x_exact) = 0.000616975874427883
|
|
|
|
For eps = 1e-03 after k = 6 iterations:
|
|
x = [ 0.99993981 1.99998904 -0.99997989 1.00000662]
|
|
Ax = [ 5.99944928 24.99993935 -10.99991498 15. ]
|
|
diff(Ax, b) = 0.000550717702960668
|
|
diff(x, x_exact) = 6.018928065554263e-05
|
|
|
|
For eps = 1e-04 after k = 7 iterations:
|
|
x = [ 0.99999488 1.99999956 -0.99999836 1.00000037]
|
|
Ax = [ 5.99995255 24.99999971 -10.99999375 15. ]
|
|
diff(Ax, b) = 4.744782363452771e-05
|
|
diff(x, x_exact) = 5.11751035947583e-06
|
|
|
|
</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">
|
|
<h3 id="Task-5">Task 5<a class="anchor-link" href="#Task-5">¶</a></h3><p>Next, implement the Steepest Descent algorithm in a similar Python function $\text{SD(A, b, eps)}$, which calculates</p>
|
|
\begin{align*}
|
|
\mathbf{v}^{(k)} &= \mathbf{b} - A \mathbf{x}^{(k-1)} \\
|
|
t_k &= \frac{ \langle \mathbf{v}^{(k)}, \mathbf{v}^{(k)} \rangle }{ \langle \mathbf{v}^{(k)}, A \mathbf{v}^{(k)}\rangle } \\
|
|
\mathbf{x}^{(k)} &= \mathbf{x}^{(k-1)} + t_k \mathbf{v}^{(k)} .
|
|
\end{align*}<p>Initialize your iteration again with $\mathbf{x}^{(0)} = \mathbf{0}$ and increase $k$ until $|| \mathbf{x}^{(k)} - \mathbf{x}^{(k-1)}||_\infty < \varepsilon$. Return the solution vector $\mathbf{x}^{(k)}$ from the last iteration step and the corresponding iteration index $k$. Implement a unit test for your implementation by comparing your result to the exact solution of the system in task 4.
|
|
Use $\text{numpy.dot()}$ for all needed vector/vector and matrix/vector products.</p>
|
|
|
|
</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-a105ce7e1a34ce3c"></a><a name="cell-a105ce7e1a34ce3c"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 3.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">SD</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">,</span> <span class="n">k_max</span> <span class="o">=</span> <span class="mi">1000000</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Return the Steepest Descent algorithm estimate solution x to the problem</span>
|
|
<span class="sd"> Ax = b and the number of iterations k it took to decrease maximum</span>
|
|
<span class="sd"> norm error below eps or to exceed iteration maximum k_max.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="c1"># Assert n by n matrix.</span>
|
|
<span class="k">assert</span> <span class="nb">len</span><span class="p">(</span><span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">)</span> <span class="o">==</span> <span class="mi">2</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">==</span> <span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
|
|
|
|
<span class="n">n</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">A</span><span class="p">)</span>
|
|
|
|
<span class="n">x_cur</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">n</span><span class="p">)</span>
|
|
<span class="n">x_prev</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">n</span><span class="p">)</span>
|
|
|
|
<span class="n">k</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="k">while</span> <span class="n">diff</span><span class="p">(</span><span class="n">x_cur</span><span class="p">,</span> <span class="n">x_prev</span><span class="p">)</span> <span class="o">></span> <span class="n">eps</span> <span class="ow">and</span> <span class="n">k</span> <span class="o"><</span> <span class="n">k_max</span> <span class="ow">or</span> <span class="n">k</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
|
|
<span class="n">k</span> <span class="o">+=</span> <span class="mi">1</span>
|
|
<span class="n">x_prev</span> <span class="o">=</span> <span class="n">x_cur</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
|
|
|
|
<span class="n">v</span> <span class="o">=</span> <span class="n">b</span> <span class="o">-</span> <span class="n">A</span> <span class="o">@</span> <span class="n">x_prev</span>
|
|
<span class="n">t</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">v</span><span class="p">)</span><span class="o">/</span><span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">A</span> <span class="o">@</span> <span class="n">v</span><span class="p">)</span>
|
|
<span class="n">x_cur</span> <span class="o">=</span> <span class="n">x_prev</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span> <span class="o">+</span> <span class="n">t</span><span class="o">*</span><span class="n">v</span>
|
|
|
|
<span class="k">return</span> <span class="n">x_cur</span><span class="p">,</span> <span class="n">k</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-62100bf55800145b"></a><a name="cell-62100bf55800145b"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 3.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">test_SD</span><span class="p">():</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Check that SD returns solutions for the example system Ax = b</span>
|
|
<span class="sd"> within the error defined by the same eps as used for the iteration.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="k">return</span> <span class="n">test_alg</span><span class="p">(</span><span class="n">SD</span><span class="p">,</span> <span class="s2">"Steepest Descent"</span><span class="p">)</span>
|
|
|
|
<span class="n">test_SD</span><span class="p">()</span>
|
|
</pre></div>
|
|
|
|
</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>Starting with A =
|
|
[[10 -1 2 0]
|
|
[-1 11 -1 3]
|
|
[ 2 -1 10 -1]
|
|
[ 0 3 -1 8]]
|
|
and b = [ 6 25 -11 15]
|
|
We apply the Steepest Descent algorithm to solve Ax = b.
|
|
|
|
For eps = 1e-01 after k = 4 iterations:
|
|
x = [ 0.99748613 1.98300329 -0.98904751 1.01283183]
|
|
Ax = [ 6.01376302 24.84309304 -10.89133793 15.04071202]
|
|
diff(Ax, b) = 0.15690696195356324
|
|
diff(x, x_exact) = 0.016996711694861055
|
|
|
|
For eps = 1e-02 after k = 6 iterations:
|
|
x = [ 0.99983175 1.99716093 -0.99850509 1.00217552]
|
|
Ax = [ 6.00414638 24.97397012 -10.98472385 15.00739201]
|
|
diff(Ax, b) = 0.02602988052923294
|
|
diff(x, x_exact) = 0.002839069878101119
|
|
|
|
For eps = 1e-03 after k = 9 iterations:
|
|
x = [ 0.99991029 1.99994247 -0.99999645 1.00023877]
|
|
Ax = [ 5.99916754 25.00016961 -11.00032515 15.00173404]
|
|
diff(Ax, b) = 0.0017340408511579142
|
|
diff(x, x_exact) = 0.00023877424067331177
|
|
|
|
For eps = 1e-04 after k = 11 iterations:
|
|
x = [ 0.99998551 1.99999065 -0.99999949 1.00003874]
|
|
Ax = [ 5.9998655 25.00002733 -11.00005329 15.00028137]
|
|
diff(Ax, b) = 0.0002813662634846281
|
|
diff(x, x_exact) = 3.874139053650083e-05
|
|
|
|
</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">
|
|
<h3 id="Task-6">Task 6<a class="anchor-link" href="#Task-6">¶</a></h3><p>Finally, based on your steepest decent implementation from task 5, implement the Conjugate Gradient algorithm in a Python function $\text{CG(A, b, eps)}$ in the following way:</p>
|
|
<p>Initialize your procedure with:</p>
|
|
\begin{align*}
|
|
\mathbf{x}^{(0)} &= \mathbf{0} \\
|
|
\mathbf{r}^{(0)} &= \mathbf{b} - A \mathbf{x}^{(0)} \\
|
|
\mathbf{v}^{(0)} &= \mathbf{r}^{(0)}
|
|
\end{align*}<p>Then increase $k$ and repeat the following until $|| \mathbf{x}^{(k)} - \mathbf{x}^{(k-1)}||_\infty < \varepsilon$.</p>
|
|
\begin{align*}
|
|
t_k &= \frac{ \langle \mathbf{r}^{(k)}, \mathbf{r}^{(k)} \rangle }{ \langle \mathbf{v}^{(k)}, A \mathbf{v}^{(k)} \rangle } \\
|
|
\mathbf{x}^{(k+1)} &= \mathbf{x}^{(k)} + t_k \mathbf{v}^{(k)} \\
|
|
\mathbf{r}^{(k+1)} &= \mathbf{r}^{(k)} - t_k A \mathbf{v}^{(k)} \\
|
|
s_k &= \frac{ \langle \mathbf{r}^{(k+1)}, \mathbf{r}^{(k+1)} \rangle }{ \langle \mathbf{r}^{(k)}, \mathbf{r}^{(k)} \rangle } \\
|
|
\mathbf{v}^{(k+1)} &= \mathbf{r}^{(k+1)} + s_k \mathbf{v}^{(k)}
|
|
\end{align*}<p>Return the solution vector $\mathbf{x}^{(k)}$ from the last iteration step and the corresponding iteration index $k$. Implement a unit test for your implementation by comparing your result to the exact solution of the system in task 4.
|
|
Use $\text{numpy.dot()}$ for all needed vector/vector and matrix/vector products.</p>
|
|
<p>How do you expect the number of needed iteration steps to behave when changing the accuracy $\epsilon$? What do you see?</p>
|
|
|
|
</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="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-8ac3d07c9d237e47"></a><a name="cell-8ac3d07c9d237e47"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 3.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">CG</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">,</span> <span class="n">k_max</span> <span class="o">=</span> <span class="mi">1000000</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Return the Conjugate Gradient algorithm estimate solution x to the problem</span>
|
|
<span class="sd"> Ax = b and the number of iterations k it took to decrease maximum</span>
|
|
<span class="sd"> norm error below eps or to exceed iteration maximum k_max.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="c1"># Assert n by n matrix.</span>
|
|
<span class="k">assert</span> <span class="nb">len</span><span class="p">(</span><span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">)</span> <span class="o">==</span> <span class="mi">2</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">==</span> <span class="n">A</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
|
|
|
|
<span class="n">n</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">A</span><span class="p">)</span>
|
|
|
|
<span class="n">x_cur</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">zeros</span><span class="p">(</span><span class="n">n</span><span class="p">)</span>
|
|
<span class="n">x_prev</span> <span class="o">=</span> <span class="n">x_cur</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
|
|
<span class="n">r_cur</span> <span class="o">=</span> <span class="n">b</span> <span class="o">-</span> <span class="n">A</span> <span class="o">@</span> <span class="n">x_cur</span>
|
|
<span class="n">v</span> <span class="o">=</span> <span class="n">r_cur</span>
|
|
|
|
<span class="n">k</span> <span class="o">=</span> <span class="mi">0</span>
|
|
<span class="k">while</span> <span class="n">diff</span><span class="p">(</span><span class="n">x_cur</span><span class="p">,</span> <span class="n">x_prev</span><span class="p">)</span> <span class="o">></span> <span class="n">eps</span> <span class="ow">and</span> <span class="n">k</span> <span class="o"><</span> <span class="n">k_max</span> <span class="ow">or</span> <span class="n">k</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
|
|
<span class="n">k</span> <span class="o">+=</span> <span class="mi">1</span>
|
|
<span class="n">x_prev</span> <span class="o">=</span> <span class="n">x_cur</span><span class="o">.</span><span class="n">copy</span><span class="p">()</span>
|
|
<span class="n">r_prev</span> <span class="o">=</span> <span class="n">r_cur</span>
|
|
|
|
<span class="n">t</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">r_prev</span><span class="p">,</span> <span class="n">r_prev</span><span class="p">)</span><span class="o">/</span><span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">v</span><span class="p">,</span> <span class="n">A</span> <span class="o">@</span> <span class="n">v</span><span class="p">)</span>
|
|
<span class="n">x_cur</span> <span class="o">=</span> <span class="n">x_prev</span> <span class="o">+</span> <span class="n">t</span><span class="o">*</span><span class="n">v</span>
|
|
<span class="n">r_cur</span> <span class="o">=</span> <span class="n">r_prev</span> <span class="o">-</span> <span class="n">t</span><span class="o">*</span><span class="n">A</span> <span class="o">@</span> <span class="n">v</span>
|
|
<span class="n">s</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">r_cur</span><span class="p">,</span> <span class="n">r_cur</span><span class="p">)</span><span class="o">/</span><span class="n">np</span><span class="o">.</span><span class="n">dot</span><span class="p">(</span><span class="n">r_prev</span><span class="p">,</span> <span class="n">r_prev</span><span class="p">)</span>
|
|
<span class="n">v</span> <span class="o">=</span> <span class="n">r_cur</span> <span class="o">+</span> <span class="n">s</span><span class="o">*</span><span class="n">v</span>
|
|
|
|
<span class="k">return</span> <span class="n">x_cur</span><span class="p">,</span> <span class="n">k</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<div class="cell border-box-sizing code_cell rendered">
|
|
<div class="input">
|
|
<div class="prompt input_prompt">In [10]:</div><div class="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-4f5bc81f40ddb3fa"></a><a name="cell-4f5bc81f40ddb3fa"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 3.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">test_CG</span><span class="p">():</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Check that CG returns solutions for the example system Ax = b</span>
|
|
<span class="sd"> within the error defined by the same eps as used for the iteration.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="k">return</span> <span class="n">test_alg</span><span class="p">(</span><span class="n">CG</span><span class="p">,</span> <span class="s2">"Conjugate Gradient"</span><span class="p">)</span>
|
|
|
|
<span class="n">test_CG</span><span class="p">()</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="panel-footer">
|
|
<div>
|
|
<b>Comments:</b> <p>How do you expect the number of needed iteration steps to behave when changing the accuracy ϵ? What do you see?</p>
|
|
|
|
</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>Starting with A =
|
|
[[10 -1 2 0]
|
|
[-1 11 -1 3]
|
|
[ 2 -1 10 -1]
|
|
[ 0 3 -1 8]]
|
|
and b = [ 6 25 -11 15]
|
|
We apply the Conjugate Gradient algorithm to solve Ax = b.
|
|
|
|
For eps = 1e-01 after k = 4 iterations:
|
|
x = [ 1. 2. -1. 1.]
|
|
Ax = [ 6. 25. -11. 15.]
|
|
diff(Ax, b) = 1.7763568394002505e-15
|
|
diff(x, x_exact) = 2.220446049250313e-16
|
|
|
|
For eps = 1e-02 after k = 5 iterations:
|
|
x = [ 1. 2. -1. 1.]
|
|
Ax = [ 6. 25. -11. 15.]
|
|
diff(Ax, b) = 1.7763568394002505e-15
|
|
diff(x, x_exact) = 2.220446049250313e-16
|
|
|
|
For eps = 1e-03 after k = 5 iterations:
|
|
x = [ 1. 2. -1. 1.]
|
|
Ax = [ 6. 25. -11. 15.]
|
|
diff(Ax, b) = 1.7763568394002505e-15
|
|
diff(x, x_exact) = 2.220446049250313e-16
|
|
|
|
For eps = 1e-04 after k = 5 iterations:
|
|
x = [ 1. 2. -1. 1.]
|
|
Ax = [ 6. 25. -11. 15.]
|
|
diff(Ax, b) = 1.7763568394002505e-15
|
|
diff(x, x_exact) = 2.220446049250313e-16
|
|
|
|
</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">
|
|
<h3 id="Task-7">Task 7<a class="anchor-link" href="#Task-7">¶</a></h3><p>Apply all three methods to the following system</p>
|
|
\begin{align*}
|
|
\begin{pmatrix}
|
|
0.2& 0.1& 1.0& 1.0& 0.0 \\
|
|
0.1& 4.0& -1.0& 1.0& -1.0 \\
|
|
1.0& -1.0& 60.0& 0.0& -2.0 \\
|
|
1.0& 1.0& 0.0& 8.0& 4.0 \\
|
|
0.0& -1.0& -2.0& 4.0& 700.0
|
|
\end{pmatrix} \mathbf{x}^*
|
|
=
|
|
\begin{pmatrix}
|
|
1 \\
|
|
2 \\
|
|
3 \\
|
|
4 \\
|
|
5
|
|
\end{pmatrix}.
|
|
\end{align*}<p>Plot the number of needed iterations for each method as a function of $\varepsilon$, using $\varepsilon = 10^{-1}, 10^{-2}, ..., 10^{-8}$.</p>
|
|
<p>Explain the observed behavior with the help of the condition number (which you can calculate using $\text{numpy.linalg.cond()}$).</p>
|
|
|
|
</div>
|
|
</div></div>
|
|
|
|
<div class="cell border-box-sizing code_cell rendered">
|
|
<div class="input">
|
|
<div class="prompt input_prompt">In [11]:</div><div class="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-490cd96dc58cbff8"></a><a name="cell-490cd96dc58cbff8"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 3.0 / 4.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">A</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([[</span> <span class="mf">.2</span><span class="p">,</span> <span class="mf">.1</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mf">.1</span><span class="p">,</span> <span class="mf">4.0</span><span class="p">,</span> <span class="o">-</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="o">-</span> <span class="mf">1.0</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mf">1.0</span><span class="p">,</span> <span class="o">-</span><span class="mf">1.0</span><span class="p">,</span> <span class="mf">60.0</span><span class="p">,</span> <span class="mf">.0</span><span class="p">,</span> <span class="mf">.0</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mf">.0</span><span class="p">,</span> <span class="mf">8.0</span><span class="p">,</span> <span class="mf">4.0</span><span class="p">],</span>
|
|
<span class="p">[</span> <span class="mf">.0</span><span class="p">,</span> <span class="o">-</span><span class="mf">1.0</span><span class="p">,</span> <span class="o">-</span> <span class="mf">2.0</span><span class="p">,</span> <span class="mf">4.0</span><span class="p">,</span> <span class="mf">700.0</span><span class="p">]])</span>
|
|
<span class="n">b</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span> <span class="p">[</span> <span class="mi">1</span> <span class="p">,</span> <span class="mi">2</span> <span class="p">,</span> <span class="mi">3</span> <span class="p">,</span> <span class="mi">4</span> <span class="p">,</span> <span class="mi">5</span> <span class="p">]</span> <span class="p">)</span>
|
|
<span class="n">x_exact</span> <span class="o">=</span> <span class="n">linalg</span><span class="o">.</span><span class="n">solve</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">)</span>
|
|
|
|
<span class="n">eps_list</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">logspace</span><span class="p">(</span><span class="o">-</span><span class="mi">8</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span>
|
|
|
|
<span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">subplots</span><span class="p">()</span>
|
|
|
|
<span class="k">for</span> <span class="n">alg</span><span class="p">,</span> <span class="n">alg_name</span> <span class="ow">in</span> <span class="p">[(</span><span class="n">GS</span><span class="p">,</span> <span class="s2">"Gauss-Seidel"</span><span class="p">),</span> <span class="p">(</span><span class="n">SD</span><span class="p">,</span> <span class="s2">"Steepest Descent"</span><span class="p">),</span> <span class="p">(</span><span class="n">CG</span><span class="p">,</span> <span class="s2">"Conjugate Gradient"</span><span class="p">)]:</span>
|
|
<span class="n">k_list</span> <span class="o">=</span> <span class="p">[]</span>
|
|
<span class="k">for</span> <span class="n">eps</span> <span class="ow">in</span> <span class="n">eps_list</span><span class="p">:</span>
|
|
<span class="n">x</span><span class="p">,</span> <span class="n">k</span> <span class="o">=</span> <span class="n">alg</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">)</span>
|
|
<span class="n">k_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">k</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">eps_list</span><span class="p">,</span> <span class="n">k_list</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="n">alg_name</span><span class="p">)</span>
|
|
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_xscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">invert_xaxis</span><span class="p">()</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_yscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s2">"$\epsilon$"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s2">"$k$"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="o">.</span><span class="n">legend</span><span class="p">()</span>
|
|
|
|
<span class="n">fig</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="panel-footer">
|
|
<div>
|
|
<b>Comments:</b> <p>The implemented A matrix has errors: The element A(2,4) is written with a typo it is -2, not 0. So, the entire matrix has changed as well as the solutions! (-1 pt)</p>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="output_wrapper">
|
|
<div class="output">
|
|
|
|
|
|
<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 [12]:</div><div class="inner_cell">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s2">"The condition number for A is K(A) ="</span><span class="p">,</span> <span class="n">linalg</span><span class="o">.</span><span class="n">cond</span><span class="p">(</span><span class="n">A</span><span class="p">),</span> <span class="s2">">> 1,"</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"so A is ill-conditioned, so the Conjugate Gradient method is highly susceptible to rounding errors."</span><span class="p">)</span>
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"This explains the great difference in order of required iterations k as observed above."</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>The condition number for A is K(A) = 12269.877667702964 >> 1,
|
|
so A is ill-conditioned, so the Conjugate Gradient method is highly susceptible to rounding errors.
|
|
This explains the great difference in order of required iterations k as observed above.
|
|
</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">
|
|
<h3 id="Task-8">Task 8<a class="anchor-link" href="#Task-8">¶</a></h3><p>Try to get a better convergence behavior by pre-conditioning your matrix $A$. Instead of $A$ use</p>
|
|
$$ \tilde{A} = C A C,$$<p>where $C = \sqrt{D^{-1}}$. If you do so, you will need to replace $\mathbf{b}$ by</p>
|
|
$$\mathbf{\tilde{b}} = C \mathbf{b}$$<p>and the vector $\mathbf{\tilde{x}}$ returned by your function will have to be transformed back via</p>
|
|
$$\mathbf{x} = C \mathbf{\tilde{x}}.$$<p></p>
|
|
<p>What is the effect of $C$ on the condition number and why?</p>
|
|
|
|
</div>
|
|
</div></div>
|
|
|
|
<div class="cell border-box-sizing code_cell rendered">
|
|
<div class="input">
|
|
<div class="prompt input_prompt">In [13]:</div><div class="panel panel-primary nbgrader_cell">
|
|
<a name="comment-cell-de3d1bd5ccfa8dfb"></a><a name="cell-de3d1bd5ccfa8dfb"></a><div class="panel-heading"><span class="nbgrader-label">Student's answer</span><span class="pull-right">
|
|
Score: 2.0 / 3.0 <a href="#top">(Top)</a>
|
|
</span></div>
|
|
<div class="panel-body">
|
|
<div class="input_area">
|
|
<div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">CG_cond</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">,</span> <span class="n">k_max</span> <span class="o">=</span> <span class="mi">1000000</span><span class="p">):</span>
|
|
<span class="sd">"""</span>
|
|
<span class="sd"> Return the Conjugate Gradient algorithm estimate solution x to the problem</span>
|
|
<span class="sd"> Ax = b, after diagonal conditioning A, and the number of iterations k it</span>
|
|
<span class="sd"> took to decrease maximum norm error below eps or to exceed iteration maximum</span>
|
|
<span class="sd"> k_max.</span>
|
|
<span class="sd"> """</span>
|
|
|
|
<span class="n">D</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">diag</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">diag</span><span class="p">(</span><span class="n">A</span><span class="p">))</span>
|
|
<span class="n">C</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="n">linalg</span><span class="o">.</span><span class="n">inv</span><span class="p">(</span><span class="n">D</span><span class="p">))</span>
|
|
<span class="n">A_tilde</span> <span class="o">=</span> <span class="n">C</span> <span class="o">@</span> <span class="n">A</span> <span class="o">@</span> <span class="n">C</span>
|
|
<span class="n">b_tilde</span> <span class="o">=</span> <span class="n">C</span> <span class="o">@</span> <span class="n">b</span>
|
|
|
|
<span class="n">x_tilde</span><span class="p">,</span> <span class="n">k</span> <span class="o">=</span> <span class="n">CG</span><span class="p">(</span><span class="n">A_tilde</span><span class="p">,</span> <span class="n">b_tilde</span><span class="p">,</span> <span class="n">eps</span><span class="p">,</span> <span class="n">k_max</span><span class="p">)</span>
|
|
<span class="n">x</span> <span class="o">=</span> <span class="n">C</span> <span class="o">@</span> <span class="n">x_tilde</span>
|
|
<span class="k">return</span> <span class="n">x</span><span class="p">,</span> <span class="n">k</span>
|
|
|
|
<span class="c1"># Sorry for copying.</span>
|
|
|
|
<span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">subplots</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="n">sharex</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span> <span class="n">figsize</span> <span class="o">=</span> <span class="p">(</span><span class="mi">16</span><span class="p">,</span><span class="mi">6</span><span class="p">))</span>
|
|
|
|
<span class="k">for</span> <span class="n">alg</span><span class="p">,</span> <span class="n">alg_name</span> <span class="ow">in</span> <span class="p">[(</span><span class="n">GS</span><span class="p">,</span> <span class="s2">"Gauss-Seidel"</span><span class="p">),</span> <span class="p">(</span><span class="n">SD</span><span class="p">,</span> <span class="s2">"Steepest Descent"</span><span class="p">),</span> <span class="p">(</span><span class="n">CG</span><span class="p">,</span> <span class="s2">"Conjugate Gradient"</span><span class="p">),</span> <span class="p">(</span><span class="n">CG_cond</span><span class="p">,</span> <span class="s2">"Conjugate Gradient (conditioned)"</span><span class="p">)]:</span>
|
|
<span class="n">k_list</span> <span class="o">=</span> <span class="p">[]</span>
|
|
<span class="n">t_list</span> <span class="o">=</span> <span class="p">[]</span>
|
|
<span class="k">for</span> <span class="n">eps</span> <span class="ow">in</span> <span class="n">eps_list</span><span class="p">:</span>
|
|
<span class="n">t_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
|
|
<span class="n">x</span><span class="p">,</span> <span class="n">k</span> <span class="o">=</span> <span class="n">alg</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="n">b</span><span class="p">,</span> <span class="n">eps</span><span class="p">)</span>
|
|
<span class="n">t_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span> <span class="o">-</span> <span class="n">t_start</span><span class="p">)</span>
|
|
<span class="n">k_list</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">k</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">eps_list</span><span class="p">,</span> <span class="n">k_list</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="n">alg_name</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">eps_list</span><span class="p">,</span> <span class="n">t_list</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="n">alg_name</span><span class="p">)</span>
|
|
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_xscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">invert_xaxis</span><span class="p">()</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_yscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s2">"$\epsilon$"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s2">"$k$"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">legend</span><span class="p">()</span>
|
|
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_yscale</span><span class="p">(</span><span class="s2">"log"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_xlabel</span><span class="p">(</span><span class="s2">"$\epsilon$"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="s2">"runtime (seconds)"</span><span class="p">)</span>
|
|
<span class="n">ax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">legend</span><span class="p">()</span>
|
|
|
|
<span class="n">fig</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
|
|
|
|
<span class="nb">print</span><span class="p">(</span><span class="s2">"The number of iterations is brought down by a lot due to the conditioning, bringing down the runtime."</span><span class="p">)</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="panel-footer">
|
|
<div>
|
|
<b>Comments:</b> <p>The difference between the steepest descent and the rest of the algorithms is quite large. Perhaps you should review the implementation of the A matrix and redo that part again (-1 pt)</p>
|
|
|
|
</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>The number of iterations is brought down by a lot due to the conditioning, bringing down the runtime.
|
|
</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>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|